@version 1 !I_USAGE :E USAGE : proto [-option] fichiers ... [-option] fichiers ...\n + : Génère le prototype des fonctions C et C++\n + pour une liste de fichiers\n +\n + -aX : Accès par défaut pour fonctions membres C++\n + -a0 --> private\n + -a1 --> protected\n + -a2 --> public\n + Défaut: -a0\n +\n + -b : Met à jour un fichier d'inclusion à partir d'un autre\n + -bX.h -> X.h += X.pm\n + -bX.h+A.pm -> X.h += A.pm\n + -bX.h+A.pm=R.h -> R.h = A.pm+X.h\n + -b seul équivalent à -bX.h[pp] où X est le nom du\n + répertoire courant\n +\n + -ceoprsu+di: Sélection des résultats générés\n + + --> Sélection des fonctions membres C++\n + Equivalent à la combinaison pru\n + d --> documentation des fonctions\n + e --> Sélection des fonctions \"export\"\n + i --> index référence fonctions -> fichiers source\n + o --> Sélection des fonctions ordinaires\n + p --> Sélection des fonction membres \"private\" C++\n + r --> Sélection des fonction membres \"protected\" C++\n + s --> Sélection des fonctions \"static\"\n + u --> Sélection des fonction membres \"public\" C++\n + Défaut : -co\n +\n + -C : Ne traite pas les commentaires imbriqués\n + Défaut : Supporte les commentaires imbriqués\n +\n + -Dx : définie le symbole \"x\"\n + -Dx=y : définie le symbole \"x\" avec la valeur \"y\"\n +\n + -exxx : Termine la sortie dans le fichier xxx\n +\n + -fxxx : sortie dans fichier \"xxx\"\n + +fxxx : sortie ajoutée au fichier \"xxx\"\n + On peut générer plusieurs fichiers parallèlement\n + avec un sélecteur différent pour chacun\n + ex: proto -ceo -fprj.h -ced -f../h/prj.h *.c\n +\n + -hXXX : Décompose le fichier de prototypes C++ XXX\n + en un fichiers par classes.\n + Les fichiers auront le nom des classes (tronqués)\n + avec l'extension .pp.\n + -h seul: traite le fichier X.pm.\n + (X est le nom du répertoire courant)\n +\n + -i : Traitement incrémental, seul les fichiers modifiés\n + depuis le dernier traitement sont relus\n + Première option sur la ligne\n +\n + -I : Enregistre une série de répertoire à consulter\n + pour localiser les fichiers d'inclusions\n +\n + -k : Désactive les mots clés C++.\n + -kx : Désactive un mot clé.\n + -kexport élimine le mot-clé \"export\".\n + -kx=y : Redéfinit un mot clé\n + -kexport=EXPORT remplace \"export\" par \"EXPORT\".\n +\n + -lX=Y : Spécifie un nom alternatif(Y) pour une classe X\n + lors de la décomposition (option -h)\n +\n + -m0 : Génération pour projet à un seul répertoire\n + Equivalent à \"-co -fX.p -coi -fX.nar -cod -fX.nap\"\n + -m1 : Génération pour projet à plusieurs répertoires\n + Equivalent à \"-ceo -fX.p -ceoi -fX.nar -ceod -fX.nap\"\n + et \"-ce -f../include/X.p -cei -f../doc/X.nar -ced\n + -f../doc/X.nap\"\n + -m2 : Génération pour projet à plusieurs répertoires\n + Equivalent à \"-ceo -fX.p -ceoi -fX.nar -ceod -fX.nap\"\n + et \"-ce -f../../include/X.p -cei -f../doc/X.nar -ced\n + -f../../doc/X.nap\"\n +\n + -m0+ : Génération pour projet à un seul répertoire C++\n + Equivalent à \"-co -fX.p -c+ -fX.pm -co+i -fX.nar\n + -co+d -fX.nap\"\n + -m1+ : Génération pour projet à plusieurs répertoires C++\n + Equivalent à \"-ceo -fX.p -c+ -fX.pm -ceo+i -fX.nar\n + -ceo+d -fX.nap\"\n + et \"-ce -f../include/X.p -cerui -f../doc/X.nar -cerud\n + -f../doc/X.nap\"\n + -m2+ : Génération pour projet à plusieurs répertoires C++\n + Equivalent à \"-ceo -fX.p -c+ -fX.pm -ceo+i -fX.nar\n + -ceo+d -fX.nap\"\n + et \"-ce -f../../include/X.p -cerui -f../doc/X.nar -cerud\n + -f../../doc/X.nap\"\n + (X est le nom du répertoire courant)\n +\n + -nXXX : Enregistre le préfixe XXX à insérer dans les fichiers\n + index références fonctions.\n + Par défaut: Chaine vide.\n +\n + -oxxx : Spécifie un nom alternatif pour option -m\n +\n + -p : Prototypes pour arguments suivants (inverse -x)\n + (défaut)\n +\n + -P : Active préprocesseur C : Traitement des #include,...\n + -qxxx : Extraction de la composition des classes pour\n + le programme clsform.\n + Le fichier xxx sera produit.\n + +qxxx : Comme -q, ajoute au fichier xxx.\n +\n + -s : Opération sans messages\n + -S : Tri les fonctions membres C++ par visibilité\n + -t : Lit le source du terminal\n + -v : Opération avec maximum d'information\n + -x : Exclu les arguments suivants (inverse -p)\n +\n + @xxx : Lit les arguments du fichier \"xxx\"\n + dans le répertoire courant ou ses ancêtres\n + @ seul -> proto.cfg par défaut\n :F USAGE : proto [-option] files ... [-option] files ...\n + : Extract prototypes for C and C++ functions\n + from a list of files\n +\n + -a : Default access control for C++ member functions\n + -a0 --> private\n + -a1 --> protected\n + -a2 --> public\n + Default: -a0\n +\n + -b : Update a header using an other one\n + -bX.h -> X.h += X.pm\n + -bX.h+A.pm -> X.h += A.pm\n + -bX.h+A.pm=R.h -> R.h = A.pm+X.h\n + -b alone is like -bX.h[pp] where X is the name of the\n + current directory\n +\n + -ceoprsu+di: Output selector\n + + --> Select C++ class member functions\n + Same as pru\n + d --> function documentation\n + e --> Select \"export\" functions\n + i --> cross reference functions -> source files\n + o --> Select ordinary functions\n + p --> Select C++ class member \"private\" functions\n + r --> Select C++ class member \"protected\" functions\n + s --> Select \"static\" functions\n + u --> Select C++ class member \"public\" functions\n + Default : -co\n +\n + -C : Disallow nested comments\n + Default: Allow nested comments\n +\n + -Dx : define \"x\" symbol\n + -Dx=y : défine symbol \"x\" with value \"y\"\n +\n + -exxx : Terminate output to file xxx\n +\n + -fxxx : Output in file \"xxx\"\n + +fxxx : Output appended to file \"xxx\"\n + Several output files may be generated at once\n + each one with a different output selector\n + ex: proto -ceo -fprj.h -ced -f../h/prj.h *.c\n +\n + -i : Incremental processing: Only the files modified\n + since the last processing are scanned\n + Must be the first option on the command line\n +\n + -I : directories for include files lookup\n +\n + -k : Desactivate all C++ keyword.\n + -kx : Desactivate one keyword.\n + -kexport kills the keyword \"export\".\n + -kx=y : Reassign a keyword\n + -kexport=EXPORT reassigns \"export\" to \"EXPORT\".\n +\n + -m0 : Processing for single directory projects\n + Equivalent to \"-co -fX.p -coi -fX.nar -cod -fX.nap\"\n + -m1 : Processing for multiple directories projects\n + Equivalent to \"-ceo -fX.p -ceoi -fX.nar -ceod -fX.nap\"\n + and \"-ce -f../include/X.p -cei -f../doc/X.nar -ced\n + -f../doc/X.nap\"\n + -m2 : Processing for multiple directories projects\n + Equivalent to \"-ceo -fX.p -ceoi -fX.nar -ceod -fX.nap\"\n + and \"-ce -f../../include/X.p -cei -f../doc/X.nar -ced\n + -f../../doc/X.nap\"\n +\n + -m0+ : Processing for single directory projects C++\n + Equivalent to \"-co -fX.p -c+ -fX.pm -co+i -fX.nar\n + -co+d -fX.nap\"\n + -m1+ : Processing for multiple directories projects C++\n + Equivalent to \"-ceo -fX.p -c+ -fX.pm -ceo+i -fX.nar\n + -ceo+d -fX.nap\"\n + and \"-ce -f../include/X.p -cerui -f../doc/X.nar -cerud\n + -f../doc/X.nap\"\n + -m2+ : Processing for multiple directories projects C++\n + Equivalent to \"-ceo -fX.p -c+ -fX.pm -ceo+i -fX.nar\n + -ceo+d -fX.nap\"\n + and \"-ce -f../../include/X.p -cerui -f../doc/X.nar -cerud\n + -f../../doc/X.nap\"\n + (X is the name of the current directory)\n +\n + -nXXX : Record prefix XXX to insert in cross reference files\n + Default: nothing.\n +\n + -oxxx : Specify an alternative name for option -m\n +\n + -p : Enable processing for next arguments (reverse -x)\n + (default)\n +\n + -P : Enable ANSI C preprocessor: processing of #include,...\n + -qxxx : Extract class's composition for programm clsform.\n + File xxx will be created.\n + +qxxx : Like -q, but append to file xxx.\n +\n + -s : Silent operation\n + -S : Sort C++ member function according to their visibility\n + -t : Read source file from console\n + -v : Verbose operation\n + -x : Disable processing for next arguments (reverse -p)\n +\n + @xxx : Read arguments from file \"xxx\"\n + xxx is located is the current directory or its ancestor\n + @ alone -> proto.cfg is searched\n !E_SYNTAX :E Syntaxe invalide pour option -k\n\t%s\n :F Invalid syntax for -k option\n\t%s\n !E_IVLDFILE :E fichier %s invalide: décomposition annulé\n :F Invalid file %s: Can't be splitted\n !E_IVLDSPEC :E Spécification invalide (-lclasse=fichier)\n-l%s\n :F Invalid spécification (-lclass=fname)\n-l%s\n !E_CLSCONFLICT :E Conflit entre classes %s et %s\n%s == %s\n :F Conflicting class %s and %s\n%s == %s\n !E_ERROR :E Erreur :F Error !E_WARNING :E Attention :F Warning !E_INTERNAL :E interne (assert) ligne %d\n :F Internal (assert) line %d\n !E_FILELINE :E %s : fichier %s ligne %d\n :F %s : file %s line %d\n !E_NOMATCH :E Pas de correspondance pour ( ligne %d\n :F No match for ( in line %d\n !E_IVLDFORMAT :E Format invalide, fichier %s\n\t%60.60s\n :F Invalid format, file %s\n\t%60.60s\n !E_TOOMANYSRC :E Trop de fichier source dans %s\n :F Too many source file in %s\n !E_IVLFORMAT :E Fichier %s: format invalide\n :F File %s: invalid format\n !E_FILENOTOPEN :E Le fichier %s n'est pas ouvert\n :F File %s is not open\n !E_MISSPROTOEND :E Fichier %s classe %s: }; rencontré avant /*~PROTOEND~\nAbandonne révision\n :F File %s class %s: }; met before /*~PROTOEND~\nAbort revision\n !E_NOPROTOEND :E Marqueur /*~PROTOBEG~ %s */ sans marqueur /*~PROTOEND~ */ correspondant\n :F /*~PROTOBEG~ %s */ marker without corresponding /*~PROTOEND~ */\n !E_WRITING :E Erreur d'écriture du fichier %s\nRétablit l'état initial\n :F write error on file %s\nrestoring state\n !E_NOFILE :E Fichier %s n'existe pas\ntraitement -b%s+%s=%s annulé\n :F File %s does not exist\n-b%s+%s=%s aborted !E_CANTMODIFY :E Ne peut pas modifier le fichier %s: Problème de permission ?\n +traitement -b%s+%s=%s annulé\n :F Can't update File %s: Possible permission problem\n-b%s+%s=%s aborted !E_CANTPRESERVE :E Ne peut pas préserver une version .old du fichier %s\n +traitement -b%s+%s=%s annulé\n :F Can't preserve a .old version of file %s\n-b%s+%s=%s aborted !E_FINDFILE :E Ne trouve pas le fichier à composer %s\n :F Can't locate file to compose %s\n !I_EXPNARUSAGE :E expnar [-s] fichier_destination fichier_nar [ fichier_nar ]\n +expnar @fichier_arguments\n +\n + Concatène plusieurs fichiers nar dans un seul\n + en insèrant le nom du fichier dans chacune des\n + définition qu'il fournit.\n +\n + Ne traite pas deux arguments possédant le même\n + nom de base.\n + Ex: expnar resultat xx/ff.nar yy/ff.nar\n + Seul le premier ff.nar sera traité.\n +\n + -s : Pas de messages si un fichier_nar est manquant.\n !E_IVLDFORM :E Format invalide:\n%s\n :F Invalid format:\n%s\n !E_CSYNTAX :E Syntaxe ligne %d:%d : %s invalide, ignore\n :F Syntax line %d.%d : %s invalid, ignored\n !E_BADSELECT :E sélecteur -c%s probablement erroné : Sans effet\n :F Incomplete selector spécification : Ignored\n !E_IVLDOPT :E Option %s invalide\n :F Invalid option %s\n !E_IVLDOPT_C :E Option -c%c invalide\n :F Invalid option -c%c\n !E_CORRESP :E Pas de correspondance pour { ligne %d\n :F No match for { in line %d\n !E_IVLDDECL :E Declaration invalide ligne %d '%s'\n :F Invalid declaration on line %d '%s'\n