feat(command): implement help page navigation
Implement help page navigation with `help-page-next` and `help-page-prev` commands. - Added `HelpPageNextCmd` and `HelpPagePrevCmd` to `src/command/cmd.rs` . - Registered help navigation commands in `CmdRegistry` . - Updated `HelpCmd` to initialize the help page. - Added unit tests for help navigation in `src/ui/app.rs` . Co-Authored-By: fiddlerwoaroof/git-smart-commit (unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q5_K_XL)
This commit is contained in:
@ -2228,7 +2228,28 @@ effect_cmd!(
|
||||
"help",
|
||||
|_args: &[String]| -> Result<(), String> { Ok(()) },
|
||||
|_args: &Vec<String>, _ctx: &CmdContext| -> Vec<Box<dyn Effect>> {
|
||||
vec![effect::change_mode(AppMode::Help)]
|
||||
vec![
|
||||
effect::help_page_set(0),
|
||||
effect::change_mode(AppMode::Help),
|
||||
]
|
||||
}
|
||||
);
|
||||
|
||||
effect_cmd!(
|
||||
HelpPageNextCmd,
|
||||
"help-page-next",
|
||||
|_args: &[String]| -> Result<(), String> { Ok(()) },
|
||||
|_args: &Vec<String>, _ctx: &CmdContext| -> Vec<Box<dyn Effect>> {
|
||||
vec![effect::help_page_next()]
|
||||
}
|
||||
);
|
||||
|
||||
effect_cmd!(
|
||||
HelpPagePrevCmd,
|
||||
"help-page-prev",
|
||||
|_args: &[String]| -> Result<(), String> { Ok(()) },
|
||||
|_args: &Vec<String>, _ctx: &CmdContext| -> Vec<Box<dyn Effect>> {
|
||||
vec![effect::help_page_prev()]
|
||||
}
|
||||
);
|
||||
|
||||
@ -2320,6 +2341,16 @@ pub fn default_registry() -> CmdRegistry {
|
||||
r.register_pure(&ExportCmd(vec![]), ExportCmd::parse);
|
||||
r.register_pure(&WriteCmd(vec![]), WriteCmd::parse);
|
||||
r.register_pure(&HelpCmd(vec![]), HelpCmd::parse);
|
||||
r.register(
|
||||
&HelpPageNextCmd(vec![]),
|
||||
HelpPageNextCmd::parse,
|
||||
|_args, _ctx| Ok(Box::new(HelpPageNextCmd(vec![]))),
|
||||
);
|
||||
r.register(
|
||||
&HelpPagePrevCmd(vec![]),
|
||||
HelpPagePrevCmd::parse,
|
||||
|_args, _ctx| Ok(Box::new(HelpPagePrevCmd(vec![]))),
|
||||
);
|
||||
|
||||
// ── Navigation (unified Move) ──────────────────────────────────────
|
||||
r.register(
|
||||
|
||||
Reference in New Issue
Block a user