J'essaie de développer une interface de ligne de commande pour un outil que je suis en train d'écrire. J'hésite entre une interface similaire à celle de Fabric et une autre qui serait plus simple à utiliser. fab
et un autre comme l'outil de ligne de commande de svn.
fab
Le message d'utilisation de l'entreprise :
Usage: fab [options] <command>[:arg1,arg2=val2,host=foo,hosts='h1;h2',...] ...
svn
Le message d'usage de l'entreprise :
usage: svn <subcommand> [options] [args]
Notez que svn
prend également en charge deux options --version
y --quiet
(du moins celui que j'utilise).
Mes questions sont les suivantes :
- La conception du cli de fab (avec plusieurs commandes, chacune pouvant avoir des arguments) est-elle commune aux outils de ligne de commande ? Pour moi, le cli de l'outil svn semble plus communément utilisé (mais je n'en suis pas sûr).
- Serait-il simple de mettre en œuvre la clique de fab en utilisant plac (ou argparse) ?
- Si je décide d'utiliser la clique de svn, est-ce que cela peut être implémenté en utilisant plac ? J'aime bien Plac, mais je n'ai pas réussi à trouver comment ajouter des options à l'outil directement, au lieu des sous-commandes. Il peut certainement être mis en œuvre en utilisant argparse .
P.S. : La seule raison pour laquelle la clique de Fab m'intéresse est qu'elle permet d'accomplir plusieurs tâches en une seule étape, mais la facilité de mise en œuvre est ma principale préoccupation.