1
0
mirror of https://github.com/rust-lang/rustlings.git synced 2026-04-26 20:42:25 +02:00

Show file link on reset command

This commit is contained in:
mo8it
2026-04-06 23:26:36 +02:00
parent f403d9e1b6
commit 695f927893
3 changed files with 10 additions and 7 deletions
+1 -1
View File
@@ -4,7 +4,7 @@
### Added
- Show the file link of the current exercise when running `rustlings hint`
- Show the file link of the current exercise when running `rustlings hint` and `rustlings reset`
### Fixed
+2 -4
View File
@@ -334,12 +334,10 @@ impl AppState {
Ok(())
}
pub fn reset_current_exercise(&mut self) -> Result<&str> {
pub fn reset_current_exercise(&mut self) -> Result<()> {
self.set_pending(self.current_exercise_ind)?;
let exercise = self.current_exercise();
self.reset(self.current_exercise_ind, exercise.path)?;
Ok(exercise.path)
self.reset(self.current_exercise_ind, exercise.path)
}
// Reset the exercise by index and return its name.
+7 -2
View File
@@ -149,8 +149,13 @@ fn main() -> Result<ExitCode> {
}
Some(Command::Reset { name }) => {
app_state.set_current_exercise_by_name(&name)?;
let exercise_path = app_state.reset_current_exercise()?;
println!("The exercise {exercise_path} has been reset");
app_state.reset_current_exercise()?;
let current_exercise = app_state.current_exercise();
let mut stdout = io::stdout().lock();
stdout.write_all(b"The exercise ")?;
current_exercise.terminal_file_link(&mut stdout, app_state.emit_file_links())?;
stdout.write_all(b" has been reset\n")?;
}
Some(Command::Hint { name }) => {
if let Some(name) = name {