@ -74,7 +74,7 @@ pub enum SubCommand {
destination_path : Option < PathBuf > ,
} ,
#[ structopt(display_order = 5) ]
/// p rint compile time feature flags of this binary
/// P rint compile time feature flags of this binary
CompiledWith ,
/// Print log file location.
PrintLogPath ,
@ -87,12 +87,16 @@ pub enum SubCommand {
#[ derive(Debug, StructOpt) ]
pub struct ManOpt {
#[ structopt(default_value = " meli " , possible_values=& [ " meli " , " conf " , " themes " , " meli.7 " , " guide " ] , value_name= " PAGE " , parse(try_from_str = manpages::parse_manpage)) ]
#[ cfg(feature = " cli-docs " ) ]
#[ cfg_attr(feature = " cli-docs " , structopt(default_value = " meli " , possible_values=manpages::POSSIBLE_VALUES, value_name= " PAGE " , parse(try_from_str = manpages::parse_manpage))) ]
/// Name of manual page.
pub page : manpages ::ManPages ,
/// If true, output text in stdout instead of spawning $PAGER.
#[ structopt(long = " no-raw " , alias = " no-raw " , value_name = " bool " ) ]
#[ cfg(feature = " cli-docs " ) ]
#[ cfg_attr(
feature = "cli-docs" ,
structopt ( long = "no-raw" , alias = "no-raw" , value_name = "bool" )
) ]
pub no_raw : Option < Option < bool > > ,
}
@ -108,6 +112,19 @@ pub mod manpages {
use crate ::{ Error , Result } ;
pub const POSSIBLE_VALUES : & [ & str ] = & [
"meli" ,
"meli.1" ,
"conf" ,
"meli.conf" ,
"meli.conf.5" ,
"themes" ,
"meli-themes" ,
"meli-themes.5" ,
"guide" ,
"meli.7" ,
] ;
pub fn parse_manpage ( src : & str ) -> Result < ManPages > {
match src {
"" | "meli" | "meli.1" | "main" = > Ok ( ManPages ::Main ) ,