Création de la bibliothèque Go nzargv qui organise bien les arguments de ligne de commande

zakuro9715/nzargv PkgGoDevGitHubRepostars

Aperçu

-ab=0 --value1=0 --value2 1 Ce genre de chose -a -b=0 --value=0 --value2=1 Fera ça

Que faire

(Le nombre de valeurs doit être spécifié à l'avance avec FlagN --Drapeaux comme -a

Comportement légèrement subtil

--FlagN spécifie le nombre de valeurs, qui est actuellement ignoré pour les valeurs séparées par des virgules.

Comment utiliser

Créez une application avec Nouveau, appelez la méthode de paramétrage, puis appelez la méthode normaliser.

ToStrings est attaché à la méthode dont la valeur de retour est tranche de chaîne. S'il n'est pas attaché, «[] nzargv.Value» est renvoyé. Puisque la valeur a un nom et une valeur, il est possible de récupérer la valeur de l'indicateur.

Voir GitHub ou go.dev pour plus de détails.

Motif de développement

Bibliothèques utiles pour créer des applications en ligne de commande, telles que spf13 / cobra et urafave / cli Il y a beaucoup de.

Cependant, ces bibliothèques ne servent qu'à créer des applications CLI et elles se sentent souvent trop fonctionnelles, ce qui les rend difficiles à utiliser lorsque vous souhaitez créer une application légèrement spéciale.

Cependant, la gestion des arguments de ligne de commande est plus lourde que vous ne le pensez, et il est improductif d'écrire cela à chaque fois.

Ainsi, lors du traitement des arguments de ligne de commande, j'ai créé une bibliothèque qui se normalise sous une forme facile à gérer à l'avance.

Recommended Posts

Création de la bibliothèque Go nzargv qui organise bien les arguments de ligne de commande
J'ai créé une bibliothèque Python pour appeler l'API de LINE WORKS
J'ai fait une bibliothèque pour bien séparer les phrases japonaises
Création d'une bibliothèque Python DateTimeRange qui gère les plages horaires
[Python] J'ai essayé de créer un programme simple qui fonctionne sur la ligne de commande en utilisant argparse
Création d'une bibliothèque pour python capable de gérer facilement la division morphologique
J'ai fait une commande lo qui est plus utile que ls