mo8it
eff2ce8a23
Ignore input while checking all exercises in watch mode
2024-11-11 14:55:58 +01:00
mo8it
f49164e69b
Fix typo
2024-11-11 14:43:38 +01:00
mo8it
46ad25f925
Fix contrast in terminals with a light theme
2024-11-11 14:34:33 +01:00
mo8it
e8c2a79516
Deduplicate code for printing keys
2024-10-26 16:55:15 +02:00
mo8it
930a0ea73b
list: Highlight search match in exercise names
2024-10-17 16:00:10 +02:00
mo8it
7e2f56f41a
Use the default hasher
2024-10-17 15:03:43 +02:00
mo8it
99496706c5
Apply new Clippy lints
2024-10-17 14:49:07 +02:00
Nahor
f33ba139b4
Fix typos
2024-10-14 10:17:17 -07:00
mo8it
990a722852
Limit the maximum number of exercises to 999
2024-10-14 15:57:44 +02:00
mo8it
a675cb5754
Replace ahash with foldhash
2024-10-14 15:24:42 +02:00
mo8it
932bc25d88
Remove unneeded line
2024-10-14 01:28:34 +02:00
mo8it
bdc6dad8de
Update names
2024-10-14 01:28:12 +02:00
mo8it
ea73af9ba3
Separate initialization with a struct
2024-10-14 01:06:11 +02:00
mo8it
fc5fc0920f
Remove outdated comments
2024-10-14 00:48:12 +02:00
mo8it
9705c161b4
Remove the tracking of done and pending
2024-10-14 00:45:41 +02:00
mo8it
8cac21511c
Small improvements to showing progress
2024-10-14 00:42:49 +02:00
mo8it
396ee4d618
Show progress with exercise numbers
2024-10-13 23:28:17 +02:00
mo8it
326169a7fa
Improve check-all command
2024-10-13 22:02:41 +02:00
mo8it
685e069c58
First PR review changes
2024-10-10 19:43:35 +02:00
Nahor
d3f819f86f
Add command line command to check all exercises
2024-10-04 14:36:36 -07:00
Nahor
aa83fd6bc4
Show a progress bar when running check_all
...
Replace the "Progress: xxx/yyy" with a progress bar when checking all
the exercises
2024-10-02 15:28:42 -07:00
Nahor
e2f7734f37
Limit the amount of parallelism in check_all
...
Don't create more threads than there are CPU cores.
2024-10-02 14:42:50 -07:00
Nahor
5c17abd1bf
Use a channel to update the check_all progress
...
The previous code was checking the threads in the order they were
created. So the progress update would be blocked on an earlier thread
even if later thread were already done.
Add to that that multiple instances of `cargo build` cannot run in
parallel, they will be serialized instead. So if the exercises needs to
be recompiled, depending on the order those `cargo build` are run,
the first update can be a long time coming.
So instead of relying on the thread terminating, use a channel to get
notified when an exercise check is done, regardless of the order they
finish in.
2024-10-02 14:10:26 -07:00
Nahor
c52867eb8b
Add command to check all the exercises
...
This allows for skipping repeating "next" when multiple exercises
are done at once, or when earlier exercises have been updated/changed
(and thus must be redone) while still working of the whole set (i.e.
the final check_all is not yet available to flag those undone exercises)
2024-10-02 13:40:32 -07:00
Nahor
26fd97a209
Update all exercises during the final check
...
The previous code run the check on all exercises but only updates one
exercise (the first that failed) even if multiple failed. The user won't
be able to see all the failed exercises when viewing the list, and will
have to run check_all after each fixed exercise.
This change will update all the exercises so the user can see all that
failed, fix them all, and only then need run check_all again.
2024-10-02 11:45:55 -07:00
mo8it
0c79f2ea3e
Reset in prompt with confirmation
2024-09-26 18:15:45 +02:00
mo8it
d4fa61e435
Debounce file change events
2024-09-26 12:26:24 +02:00
mo8it
554301b8e9
Clear terminal before final check in watch mode
2024-09-24 16:12:44 +02:00
mo8it
4e4b65711a
Only handle file changes for the current exercise, no jumping back
2024-09-18 01:44:13 +02:00
mo8it
89c40ba256
Optimize the file watcher
2024-09-18 01:43:48 +02:00
mo8it
47f8a0cbe5
Add rust-analyzer.toml on dev new
2024-09-13 16:39:28 +02:00
mo8it
9459eef032
Use Clippy with Rust-Analyzer
2024-09-13 16:38:53 +02:00
mo8it
3947c4de28
Pause input while running an exercise
2024-09-12 17:46:06 +02:00
mo8it
664228ef8b
Improve quit message
2024-09-12 17:46:06 +02:00
mo8it
83d1275d72
Add missing # in comment
2024-09-12 17:46:06 +02:00
Ali Bektas
88e10a9e54
hardcode ratoml in init.rs
2024-09-12 15:46:09 +02:00
Ali Bektas
1f624d4c2a
Add rust-analyzer.toml file
2024-09-12 15:26:40 +02:00
mo8it
2b7caf6fcb
Too polite :P
2024-09-06 16:36:36 +02:00
mo8it
2d26358602
Use the thread builder and handle the spawn error
2024-09-06 15:40:25 +02:00
mo8it
9faa5d3aa4
Avoid asking for terminal size on each rendering
2024-09-05 17:45:27 +02:00
mo8it
bcc2a136c8
Add error message when unable to get terminal size
2024-09-05 17:37:34 +02:00
mo8it
dcad002057
Only render when needed
2024-09-05 17:32:59 +02:00
mo8it
51b8d2ab25
Remove unused import
2024-09-05 17:23:56 +02:00
mo8it
aa3eda70e5
Simplify handling terminal events for unbuffered stdin
2024-09-05 17:12:26 +02:00
mo8it
2d0860fe1b
Hide input and disable its line buffering
2024-09-05 02:11:19 +02:00
mo8it
5eb3dee59c
Create solution even if the solution's directory is missing
2024-09-05 00:21:24 +02:00
mo8it
247bd19f93
Canonicalize exercise paths only once
2024-09-04 02:19:45 +02:00
mo8it
e5ed115288
Match filter once
2024-09-04 01:20:48 +02:00
mo8it
03baa471d9
Simplify handling p
in list
2024-09-04 01:07:08 +02:00
mo8it
da8b3d143a
Final touches to searching
2024-09-04 01:05:30 +02:00