Deutsch English Français Italiano |
<62cf1ed0$0$9166$426a34cc@news.free.fr> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!newsreader4.netcologne.de!news.netcologne.de!news.uzoreto.com!2.eu.feeder.erje.net!feeder.erje.net!fdn.fr!proxad.net!feeder1-2.proxad.net!cleanfeed3-a.proxad.net!nnrp1-1.free.fr!not-for-mail From: Thomas <fantome.forums.tDeContes@free.fr.invalid> Newsgroups: fr.comp.os.unix Mail-Copies-To: nobody Subject: Re: =?ISO-8859-15?Q?r=E8gle_pour_=E9crire?= les "usage: ..." References: <62c8c4eb$0$24781$426a74cc@news.free.fr> <tahkuf$6ob$1@cabale.usenet-fr.net> <875yk3xsbg.fsf@universite-de-strasbourg.fr.invalid> <62ce256c$0$22264$426a34cc@news.free.fr> <871qupxml4.fsf@universite-de-strasbourg.fr.invalid> <62ceda82$0$24807$426a34cc@news.free.fr> <62cee3c1$0$22053$426a74cc@news.free.fr> <62cef1d6$0$24817$426a34cc@news.free.fr> <tamt6m$2338$1@cabale.usenet-fr.net> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 8bit User-Agent: MT-NewsWatcher/3.5.3b3 (Intel Mac OS X) Date: Wed, 13 Jul 2022 21:36:48 +0200 Lines: 146 Message-ID: <62cf1ed0$0$9166$426a34cc@news.free.fr> Organization: Guest of ProXad - France NNTP-Posting-Date: 13 Jul 2022 21:36:49 CEST NNTP-Posting-Host: 91.175.52.121 X-Trace: 1657741009 news-4.free.fr 9166 91.175.52.121:8075 X-Complaints-To: abuse@proxad.net Bytes: 6678 In article <tamt6m$2338$1@cabale.usenet-fr.net>, Olivier Miakinen <om+news@miakinen.net> wrote: > Le 13/07/2022 18:24, Thomas a écrit : > > > > mais surtout, Est-ce que, à ton avis en tant qu'usager, ceci est > > acceptable (c'est ça qu'Olivier avait soulevé) ? > > > > $ ./rapid gui_file -v > > Unexpected switch -v > > Usage: ./rapid [-v] [gui_file] > > ./rapid [-v] -ni [-od output_directory] gui_file ... > > Pour moi, il est tout à fait normal de refuser une option -v après > le premier argument qui n'est pas une option (gui_file). je disais à Alain qu'amha il faut le faire si on veut "rester dans l'esprit" de getopt(), mais si je te comprend bien, ça n'a tellement pas d'importance qu'il ne faut pas que je m'embête avec ça ? :-) > > Cela dit, le message « Unexpected switch -v » est inapproprié. Selon > que ta syntaxe accepte ou non plus d'un fichier, ce sera soit : > File not found '-v' (sauf bien sûr si le fichier -v existe) > soit : > No more than one file! (gui_file -v) j'ai tendance à penser qu'en l'absence de "--", tout argument commençant par "-" est une option, et que, sorties de la zone prévue pour elles, elles sont mal positionnées. ça me parait un peu cafouilleux de dire : les noms de fichier commençant par "-" sont autorisés, à condition d'en trouver un qui ne commence pas par "-" à mettre en 1er. en gros, mon éducation Ada c'est : "avertir l'usager qu'il a peut-être fait une erreur, et le laisser corriger - plutôt que de choisir une interprétation, et de prendre l'initiative de faire qqch que peut-être il ne voulait pas". je sais que les dev C ont une toute autre approche ... typiquement, si je passe à getopt() plus tard, la même ligne de commande changera de signification, sans qu'aucune des 2 ne fasse une erreur ... ce qui me parait dangereux. > > > $ ./rapid -ni -od p -v u > > Unexpected switch -v > > Usage: ./rapid [-v] [gui_file] > > ./rapid [-v] -ni [-od output_directory] gui_file ... > > Là ça me semble brutal pour l'utilisateur. Tant que tu en es à parser > des options et pas des fichiers, il n'y a à mon avis aucune raison > de refuser une option -v j'ai oublié de demander en passant : je peux garder le même "Usage:" même s'il laisse penser que l'ordre est important ? l'important c'est qu'en réalité ça ne soit pas le cas ? > > > $ ./rapid -od p -ni -v u > > Unexpected switch -od > > Usage: ./rapid [-v] [gui_file] > > ./rapid [-v] -ni [-od output_directory] gui_file ... > > Là aussi, encore que ta syntaxe est assez particulière. Comme Nicolas > je ne sais pas ce que fait ton logiciel et je ne l'utiliserai sans > doute jamais, et je vous remercie tous de prendre du temps pour moi malgré ça :-)) (ce que j'espère au fond, c'est qu'un jour vous trouviez mon logiciel utile et que vous constatiez le résultat de vos "contributions") > seulement je crois comprendre que l'option -od ne peut > exister que dans le cas où tu as déjà l'option -ni, oui. rappelles-toi, tu m'avais suggéré : usage: rapid [-v] [ gui_file | -ni [-od dir] gui_file... ] > ce qui me semble > peu habituel. ah ! .... > > Te serait-il possible d'accepter l'option -od dans tous les cas lors du > parsing, en disant juste 'attention cette option ne fait rien dans cette > version de la syntaxe' ? Bon, je ne suis pas sûr que ce soit une bonne > idée non plus. tu veux dire, faire un avertissement au lieu d'une erreur ? actuellement il fait un avertissement pour les options inconnues, ce que j'ai transformé en erreur parce que ça me parait bcp plus sur (voir plus haut). > > Ou alors tu changes la syntaxe pour qu'il y ait *une* sous-commande > obligatoire, plus les paramètres optionnels, et enfin les paramètres > positionnels. Par exemple : > > Usage: ./rapid i [-v] gui_file > ./rapid ni [-v] [-od output_directory] gui_file... oui, comme dans svn :-) intéressant :-) dans le fil "Gérer soi-même ses numéros de version" j'ai indiqué que je voulais faire un "split" (ou un "fork", je ne sais pas comment tu appelles ça), ce qui réglerais ce pb, mais : - j'essaye de faire en sorte que chaque commit soit du bon code en fonction de mes connaissances du moment (et si possible même si je sais que ça ne va pas durer, si ça ne demande pas trop de travail), - il se peut que j'en ai besoin de toutes façons, si je demande à mon "rapid-ni" de savoir faire d'autres choses, pour éviter de multiplier les exécutables. du coup, si je comprend bien : - l'usage est que la sous-commande est sans "-", obligatoire, et tjr au début, - ensuite, les paramètres optionnels, tous avec "-" et tous interchangeables, - enfin les paramètres positionnels -> ça peut être autre chose qu'une liste de fichiers ? pourquoi "positionnels" ? (et d'après toi ils peuvent commencer par "-" sauf le 1er ?) > > usage: rm [-f | -i] [-dPRrvW] file ... > > > > qu'est-ce que ça signifie ? > Les options -i et -f sont contradictoires : l'une demande confirmation > à chaque fichier alors que l'autre dit au contraire d'y aller par force > sans aucune demande de confirmation. Elles sont donc exclusives. merci :-) -- RAPID maintainer http://savannah.nongnu.org/projects/rapid/