[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 23/23] qemu-img: inline list of supported commands, remove qe
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH 23/23] qemu-img: inline list of supported commands, remove qemu-img-cmds.h include |
Date: |
Tue, 20 Feb 2024 18:48:35 +0000 |
User-agent: |
Mutt/2.2.12 (2023-09-09) |
On Sat, Feb 10, 2024 at 12:22:44AM +0300, Michael Tokarev wrote:
> also add short description to each command and use it in --help
>
> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
> ---
> qemu-img.c | 42 +++++++++++++++++++++++++++++++++++-------
> 1 file changed, 35 insertions(+), 7 deletions(-)
>
> diff --git a/qemu-img.c b/qemu-img.c
> index d9c5c6078b..e57076738e 100644
> --- a/qemu-img.c
> +++ b/qemu-img.c
> @@ -61,6 +61,7 @@
> typedef struct img_cmd_t {
> const char *name;
> int (*handler)(const struct img_cmd_t *ccmd, int argc, char **argv);
> + const char *description;
> } img_cmd_t;
>
> enum {
> @@ -130,11 +131,12 @@ static G_NORETURN
> void cmd_help(const img_cmd_t *ccmd,
> const char *syntax, const char *arguments)
> {
> - printf("qemu-img %s %s"
> + printf("qemu-img %s: %s. Usage:\n"
> + "qemu-img %s %s"
This ends up looking a bit muddled together. I don't think we
need repeat 'qemu-img <cmd>' twice, and could add a little
more whitespace
eg instead of:
$ ./build/qemu-img check --help
qemu-img check: Check basic image integrity. Usage:
qemu-img check [-f FMT | --image-opts] [-T CACHE_MODE] [-r] [-u]
[--output human|json] [--object OBJDEF] FILENAME
Arguments:
...snip...
have it look like
$ ./build/qemu-img check --help
Check basic image integrity.
Usage:
qemu-img check [-f FMT | --image-opts] [-T CACHE_MODE] [-r] [-u]
[--output human|json] [--object OBJDEF] FILENAME
Arguments:
...snip...
> "Arguments:\n"
> " -h|--help - print this help and exit\n"
> "%s",
> - ccmd->name, syntax, arguments);
> + ccmd->name, ccmd->description, ccmd->name, syntax, arguments);
> exit(EXIT_SUCCESS);
> }
>
> @@ -5746,10 +5748,36 @@ out:
> }
>
> static const img_cmd_t img_cmds[] = {
> -#define DEF(option, callback, arg_string) \
> - { option, callback },
> -#include "qemu-img-cmds.h"
> -#undef DEF
> + { "amend", img_amend,
> + "Update format-specific options of the image" },
> + { "bench", img_bench,
> + "Run simple image benchmark" },
> + { "bitmap", img_bitmap,
> + "Perform modifications of the persistent bitmap in the image" },
> + { "check", img_check,
> + "Check basic image integrity" },
> + { "commit", img_commit,
> + "Commit image to its backing file" },
> + { "compare", img_compare,
> + "Check if two images have the same contents" },
> + { "convert", img_convert,
> + "Copy one image to another with optional format conversion" },
> + { "create", img_create,
> + "Create and format new image file" },
> + { "dd", img_dd,
> + "Copy input to output with optional format conversion" },
> + { "info", img_info,
> + "Display information about image" },
> + { "map", img_map,
> + "Dump image metadata" },
> + { "measure", img_measure,
> + "Calculate file size requred for a new image" },
> + { "rebase", img_rebase,
> + "Change backing file of the image" },
> + { "resize", img_resize,
> + "Resize the image to the new size" },
> + { "snapshot", img_snapshot,
> + "List or manipulate snapshots within image" },
> { NULL, NULL, },
> };
>
> @@ -5813,7 +5841,7 @@ QEMU_IMG_VERSION
> " [[enable=]<pattern>][,events=<file>][,file=<file>]\n"
> "Recognized commands (run qemu-img command --help for command-specific
> help):\n");
> for (cmd = img_cmds; cmd->name != NULL; cmd++) {
> - printf(" %s\n", cmd->name);
> + printf(" %s - %s\n", cmd->name, cmd->description);
> }
> c = printf("Supported image formats:");
> bdrv_iterate_format(format_print, &c, false);
> --
> 2.39.2
>
>
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
- Re: [PATCH 12/23] qemu-img: make -l (list) the default for "snapshot" subcommand, (continued)
[PATCH 17/23] qemu-img: refresh options/--help for "amend" command, Michael Tokarev, 2024/02/09
[PATCH 19/23] qemu-img: refresh options/--help for "bitmap" command, Michael Tokarev, 2024/02/09
[PATCH 18/23] qemu-img: refresh options/--help for "bench" command, Michael Tokarev, 2024/02/09
[PATCH 20/23] qemu-img: refresh options/--help for "dd" command, Michael Tokarev, 2024/02/09
[PATCH 21/23] qemu-img: refresh options/--help for "measure" command, Michael Tokarev, 2024/02/09
[PATCH 22/23] qemu-img: implement short --help, remove global help() function, Michael Tokarev, 2024/02/09
[PATCH 23/23] qemu-img: inline list of supported commands, remove qemu-img-cmds.h include, Michael Tokarev, 2024/02/09
Re: [PATCH 00/23] qemu-img: refersh options and --help handling, Michael Tokarev, 2024/02/09
Re: [PATCH 00/23] qemu-img: refersh options and --help handling, Daniel P . Berrangé, 2024/02/20