Hi. The new interface is nice! A couple of minor comments:

When you have sub-commands, I think it's best to make the options come after the last sub-command. The synopsis for opam switch suggests you can put options before the second sub-command. This might be okay if the option really relates to the first sub-command, but I don't see that in this case.

I'm not a fan of having too many names for the same thing. For example, in opam switch, there is "add = install, rm = remove, and show = current". Better to just pick one. The single letter -o and longer --option is okay, especially for highly used options.

Thanks.

On Fri, Dec 14, 2012 at 1:09 PM, Thomas Gazagnaire <thomas@ocamlpro.com> wrote:
Hi,

In order to prepare the beta release of OPAM (which should hopefully be announced at the end of next week if everything goes well), I've been working on improving its command-line interface (which is currently a bit had-hoc). Thanks to the great Daniel Bunzli's cmdliner[1] library, I now have a nice -- but incompatible -- command-line interface in the 'cmdliner' branch[2].

The main changes are:
* an uniform help interface, where all flags and parameters are correctly documents
* no more -long-option, only -s or --long
* 'opam remote' is still there for convenience but will be deprecated; use 'opam repository' instead
* use of sub-sub-commands when necessary (ie. 'opam repository add')
* use non-ambiguous prefix of sub-command instead of the subcommand (ie. 'opam repo' or 'opam rem')
* AND: a nice 'opam --help' and 'opam <subcommand> --help' output

I'm quite keen to get community feedback on this new command-line. Feel free to comment here, or to to use the issue tracker[3].

Cheers,
Thomas

[1] http://erratique.ch/software/cmdliner
[2] git clone -b cmdliner git://github.com/OCamlPro/opam.git
[3] https://github.com/OCamlPro/opam/issues/157




--
Caml-list mailing list.  Subscription management and archives:
https://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs