Donc soit il y a un problème dans la page de manuel, soit je n'ai pas compris ce que sont le goal et le maximum.
Je ne me suis pas attardé sur cet aspect parce-que la syntaxe varie d'une implémentation à une autre et que pour des raisons de portabilité il vaut mieux rester au dénominateur commun : -w Mais s'il y a beaucoup de demandes de précisions (auxquelles je tenterai de répondre sans prétendre avoir la maîtrise ultime vu que je n'utilise pas toutes les options) je compulserai dans un épisode (journal) complémentaire.
Pour en revenir à la question, le maximum est le mur infranchissable... (dans le contexte des quotas c'est l'équivalent du « hard limit » je dirai.) D'après les manpages, quand on indique max seul, le programme doit en déduire le goal (semble que BSD utilise la même valeur, tandis que GNU calcule que ça fait 93%.)
Par contre, le goal est la limite désirée, désirable mais légèrement déspassable... (donc l'équivalent du « soft limit » quand on fait l'analogie avec la gestion des quotas.) De même, quand on indique goal seul, le programme doit en déduire le max (BSD fait plus dix et GNU fait plus sept pour cent.)
Quand on spécifie les deux, le programme va essayer de couper un peu après (ou juste à) goal et toujours avant max !
Test avec une forme commune du Lorem (il faudra tester plusieurs valeurs pour trouver celles qui sont les plus parlantes)
$ fmt -v
fmt: illegal option -- vusage: fmt [-cmps] [-d chars] [-l num] [-t num] [-w width | -width | goal [maximum]] [file ...]Options: -c center each line instead of formatting -d <chars> double-space after <chars> at line end -l <n> turn each <n> spaces at start of line into a tab -m try to make sure mail header lines stay separate -n format lines beginning with a dot -p allow indented paragraphs -s coalesce whitespace inside lines -t <n> have tabs every <n> columns -w <n> set maximum width to <n> goal set target width to goal# mon fichier de test$ wc lorem
1 69 446 lorem## soft 52 (soit max vers 62?)# BSD: fmt 52 lorem
# GNU: fmt -g 52 lorem
#12345 G 6 m
#23456789012345678901234567890123456789012345678901234567890123456789$ fmt 52 lorem
Lorem ipsum dolor sit amet, consectetur adipiscingelit, sed do eiusmod tempor incididunt ut labore etdolore magna aliqua. Ut enim ad minim veniam, quisnostrud exercitation ullamco laboris nisi ut aliquipex ea commodo consequat. Duis aute irure dolor inreprehenderit in voluptate velit esse cillum doloreeu fugiat nulla pariatur. Excepteur sint occaecatcupidatat non proident, sunt in culpa qui officiadeserunt mollit anim id est laborum.## soft 47 (soit max vers 57?)#1234 G 5 m 6#23456789012345678901234567890123456789012345678901234567890123456789$ fmt 47 lorem
Lorem ipsum dolor sit amet, consectetur adipiscingelit, sed do eiusmod tempor incididunt ut laboreet dolore magna aliqua. Ut enim ad minim veniam,quis nostrud exercitation ullamco laboris nisiut aliquip ex ea commodo consequat. Duis auteirure dolor in reprehenderit in voluptate velitesse cillum dolore eu fugiat nulla pariatur.Excepteur sint occaecat cupidatat non proident,sunt in culpa qui officia deserunt mollit animid est laborum.## hard 65 (soit but vers 55?)# BSD: fmt -w 65 lorem
# GNU: fmt -w 65 lorem
#12345 g 6 M
#23456789012345678901234567890123456789012345678901234567890123456789$ fmt -w 65 lorem
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed doeiusmod tempor incididunt ut labore et dolore magna aliqua. Utenim ad minim veniam, quis nostrud exercitation ullamco laborisnisi ut aliquip ex ea commodo consequat. Duis aute irure dolor inreprehenderit in voluptate velit esse cillum dolore eu fugiatnulla pariatur. Excepteur sint occaecat cupidatat non proident,sunt in culpa qui officia deserunt mollit anim id est laborum.## hard 57 (soit but vers 47?)#1234 g 5 M 6#23456789012345678901234567890123456789012345678901234567890123456789$ fmt -w 57 lorem
Lorem ipsum dolor sit amet, consectetur adipiscing elit,sed do eiusmod tempor incididunt ut labore et doloremagna aliqua. Ut enim ad minim veniam, quis nostrudexercitation ullamco laboris nisi ut aliquip ex eacommodo consequat. Duis aute irure dolor in reprehenderitin voluptate velit esse cillum dolore eu fugiat nullapariatur. Excepteur sint occaecat cupidatat non proident,sunt in culpa qui officia deserunt mollit anim id estlaborum.## intervalle 48--52# BSD: fmt 4852 lorem
# GNU: fmt -w 52 -g 48 lorem
# GNU: fmt -g 48 -w 52 lorem
#1234 G 5 M 6#23456789012345678901234567890123456789012345678901234567890123456789$ fmt 4852 lorem
Lorem ipsum dolor sit amet, consectetur adipiscingelit, sed do eiusmod tempor incididunt ut laboreet dolore magna aliqua. Ut enim ad minim veniam,quis nostrud exercitation ullamco laboris nisi utaliquip ex ea commodo consequat. Duis aute iruredolor in reprehenderit in voluptate velit essecillum dolore eu fugiat nulla pariatur. Excepteursint occaecat cupidatat non proident, sunt in culpaqui officia deserunt mollit anim id est laborum.## intervalle 47--54#1234 G 5 M 6#23456789012345678901234567890123456789012345678901234567890123456789$ fmt 4754 lorem
Lorem ipsum dolor sit amet, consectetur adipiscingelit, sed do eiusmod tempor incididunt ut laboreet dolore magna aliqua. Ut enim ad minim veniam,quis nostrud exercitation ullamco laboris nisiut aliquip ex ea commodo consequat. Duis auteirure dolor in reprehenderit in voluptate velitesse cillum dolore eu fugiat nulla pariatur.Excepteur sint occaecat cupidatat non proident,sunt in culpa qui officia deserunt mollit animid est laborum.
Bon, il y a quand même des lignes où il se permet de descendre un ou deux caractères en dessous de goal ici.
"It is seldom that liberty of any kind is lost all at once." ― David Hume
[^] # Re: Super journal... que je lirai plus tard
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 4.
Je ne me suis pas attardé sur cet aspect parce-que la syntaxe varie d'une implémentation à une autre et que pour des raisons de portabilité il vaut mieux rester au dénominateur commun :
-wMais s'il y a beaucoup de demandes de précisions (auxquelles je tenterai de répondre sans prétendre avoir la maîtrise ultime vu que je n'utilise pas toutes les options) je compulserai dans un épisode (journal) complémentaire.Pour en revenir à la question, le maximum est le mur infranchissable... (dans le contexte des quotas c'est l'équivalent du « hard limit » je dirai.) D'après les manpages, quand on indique max seul, le programme doit en déduire le goal (semble que BSD utilise la même valeur, tandis que GNU calcule que ça fait 93%.)
Par contre, le goal est la limite désirée, désirable mais légèrement déspassable... (donc l'équivalent du « soft limit » quand on fait l'analogie avec la gestion des quotas.) De même, quand on indique goal seul, le programme doit en déduire le max (BSD fait plus dix et GNU fait plus sept pour cent.)
Quand on spécifie les deux, le programme va essayer de couper un peu après (ou juste à) goal et toujours avant max !
Test avec une forme commune du Lorem (il faudra tester plusieurs valeurs pour trouver celles qui sont les plus parlantes)
Bon, il y a quand même des lignes où il se permet de descendre un ou deux caractères en dessous de goal ici.
"It is seldom that liberty of any kind is lost all at once." ― David Hume