Skip to content

Commit

Permalink
Merge pull request #5301 from Will-Shanks/master
Browse files Browse the repository at this point in the history
Correct title,name and synopsis in generated man pages for subcommands
  • Loading branch information
epage committed Jan 29, 2024
2 parents 99470c4 + eaf0b5e commit 040ff6a
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 7 deletions.
5 changes: 4 additions & 1 deletion clap_mangen/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,10 @@ impl Man {
/// Create a new manual page.
pub fn new(mut cmd: clap::Command) -> Self {
cmd.build();
let title = cmd.get_name().to_owned();
let title = cmd
.get_display_name()
.unwrap_or_else(|| cmd.get_name())
.to_owned();
let section = "1".to_owned();
let date = "".to_owned();
let source = format!(
Expand Down
8 changes: 5 additions & 3 deletions clap_mangen/src/render.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,10 @@ pub(crate) fn subcommand_heading(cmd: &clap::Command) -> &str {
}

pub(crate) fn about(roff: &mut Roff, cmd: &clap::Command) {
let name = cmd.get_display_name().unwrap_or_else(|| cmd.get_name());
let s = match cmd.get_about().or_else(|| cmd.get_long_about()) {
Some(about) => format!("{} - {}", cmd.get_name(), about),
None => cmd.get_name().to_string(),
Some(about) => format!("{} - {}", name, about),
None => name.to_owned(),
};
roff.text([roman(s)]);
}
Expand All @@ -29,7 +30,8 @@ pub(crate) fn description(roff: &mut Roff, cmd: &clap::Command) {
}

pub(crate) fn synopsis(roff: &mut Roff, cmd: &clap::Command) {
let mut line = vec![bold(cmd.get_name()), roman(" ")];
let name = cmd.get_bin_name().unwrap_or_else(|| cmd.get_name());
let mut line = vec![bold(name), roman(" ")];

for opt in cmd.get_arguments().filter(|i| !i.is_hide_set()) {
let (lhs, rhs) = option_markers(opt);
Expand Down
6 changes: 3 additions & 3 deletions clap_mangen/tests/snapshots/sub_subcommand_help.roff
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
.ie /n(.g .ds Aq /(aq
.el .ds Aq '
.TH help 1 "help "
.TH my-app-help 1 "help "
.SH NAME
help /- Print this message or the help of the given subcommand(s)
my/-app/-help /- Print this message or the help of the given subcommand(s)
.SH SYNOPSIS
/fBhelp/fR [/fIsubcommands/fR]
/fBmy/-app help/fR [/fIsubcommands/fR]
.SH DESCRIPTION
Print this message or the help of the given subcommand(s)
.SH SUBCOMMANDS
Expand Down

0 comments on commit 040ff6a

Please sign in to comment.