Интерфейс командной строки, который мне нужен, выглядит примерно так:
my-executable command REQUIRED_ARG
# or
my-executable command subcommand [--foo] [--bar]
Итак, я не хочу, чтобы REQUIRED_ARG
требовался (и анализировался), когда subcommand
существует.
Взаимоисключающая группа близка к тому, что я хочу, но я не могу добавить к ней подпарсеры. Другой подход был описан здесь, но это не мой случай : Я хочу, чтобы REQUIRED_ARG
вообще не анализировалось в случае подкоманды (и это тоже похоже на хак).