The command line parameter list of Inkscape is quite long - 44 parameters to be precise. It splits similar functionality into multiple parameters while it doesn't offer all possible options. On the other side it offers some functions, which may be unnecessary or just too complex.

So I suggest to restructure the command line functionality to separate the actual commands from their parameters. A good example for how that works is the git command line tool.

So the commands would be

  open
  convert

  query
  version
  help

The syntax for 'open' would be

  open <file path>

The syntax for 'convert' would be

  convert -in=<input file name> -out=<output file name>
    [-out-type=<outupt file type>]
[-edit=<edit function>]

    [-area=drawing|page|<object id>|<x0>
:<y0>:<x1>:<y1>] [-id-only]
    [-width=<width>] [-height=<height>] [-dpi=<dpi>]
    [-vacuum-defs] [-background=<color>]
[-text-to-path] [-margin]
    [-ignore-filters] [-version=<file type version>]


covering all --export-* parameters and the -vacuum-defs parameter and where the different --export-<file type> parameters are combined in the optional -out-type parameter. -edit replaces --verb by allowing to apply different transformations and filters. (Are there other use cases for --verb than that?) If -out-type is not defined, the type will be inferred from the extension of the file name given in -out.

Syntax for 'query' would be

  query x|y|width|height|all -in=<input file name> [-id=<object id>]

covering all --query-* parameters.

'version' and 'help' wouldn't have any parameters and do what --version and --help  currently do.

--with-gui, --without-gui, --select, --export-use-hints (rather confusing than helping) and --verb-list (needs a different implementation, probably via 'help') and --usage (should be shown in the output of 'help') are removed as they are not needed anymore.
--print, --export-area-snap, --export-latex and --shell are not listed, because I'm not sure about their usage.

Usage examples:

  inkscape version

  inkscape open "/path/to/file"

  inkscape help

  inkscape query width -in="/path/to/input file" -id=path1234

  inkscape convert -in="/path/to/input file"
    -out="/path/to/output file" -edit=grayscale,move(1.0 1.0)
    -vacuum-defs

Sebastian