diff --git a/proxmox-api/src/cli/format.rs b/proxmox-api/src/cli/format.rs index 95ce68d3..36f4c19d 100644 --- a/proxmox-api/src/cli/format.rs +++ b/proxmox-api/src/cli/format.rs @@ -94,21 +94,18 @@ pub fn generate_usage_str( let type_text = get_schema_type_text(param_schema, ParameterDisplayStyle::Arg); + let prop_descr = + get_property_description(prop, param_schema, ParameterDisplayStyle::Arg, format); + if *optional { - if !options.is_empty() { - options.push('\n'); - } - options.push_str(&get_property_description( - prop, - param_schema, - ParameterDisplayStyle::Arg, - format, - )); + options.push_str(&prop_descr); } else { args.push_str(" --"); args.push_str(prop); args.push(' '); args.push_str(&type_text); + + arg_descr.push_str(&prop_descr); } done_hash.insert(prop); @@ -139,9 +136,10 @@ pub fn generate_usage_str( if !arg_descr.is_empty() { text.push_str(&arg_descr); - text.push('\n'); } + if !options.is_empty() { + text.push_str("Optional parameters:\n\n"); text.push_str(&options); text.push('\n'); } diff --git a/proxmox-api/src/format.rs b/proxmox-api/src/format.rs index d012e408..28d63c2a 100644 --- a/proxmox-api/src/format.rs +++ b/proxmox-api/src/format.rs @@ -137,7 +137,6 @@ pub fn get_property_description( text.push_str(&wrap_text("", " ", descr, 80)); text.push('\n'); - text.push('\n'); text } else { @@ -152,7 +151,6 @@ pub fn get_property_description( text.push('\n'); text.push_str(&wrap_text(indent, indent, descr, 80)); text.push('\n'); - text.push('\n'); text }