Affichage comme la commande man avec printf en C
Bonjour,
je voudrait faire 2 affichages pour mon programme, lorsque j’exécute mon programme en ligne de commande, l'un qui saura du style la commande 'man' comme par exemple ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
PRINTF(1) User Commands PRINTF(1)
NAME
printf - format and print data
SYNOPSIS
printf FORMAT [ARGUMENT]...
printf OPTION
DESCRIPTION
Print ARGUMENT(s) according to FORMAT, or execute according to OPTION:
--help display this help and exit
--version
output version information and exit
FORMAT controls the output as in C printf. Interpreted sequences are:
\" double quote
\\ backslash |
et l'autre comme ceci :
Code:
1 2 3 4 5 6 7 8 9
|
-t, --option l'explication de l'option qui peut
parfois être sur plusieurs ligne,
mais qui reste aligné.
--help Display this help and exit.
--man Display this help following man-style
and exit. |
J'ai essayé de le faire avec un printf pour la 2e (je n'ai pas encore réfléchit pour la première mais comme je suis là... :D) mais je galère pour afficher une option qui aurait une explication trop longue! Voici que j'ai fait :
Code:
1 2 3 4 5 6 7 8
|
// ficher test d'affichage
int main(void) {
char *s = "l'explication de l'option qui peut parfois être sur plusieurs lignes"
" mais qui reste aligné.";
printf("%-20s\t%s\n", " -t, --option", s);
return EXIT_SUCCESS;
} |
Voici le résultat qui n'est pas aligné :
Code:
1 2 3
|
-t, --option l'explication de l'option qui peut parfois être sur plus
ieurs lignes mais qui reste aligné. |
Quelqu'un aurait-il une idée?