Avec l'exemple de commande
man apropos > outputfile
un fichier texte est généré qui contient la man
page formatée de apropos
(avec quelques petites différences par rapport à l' man apropos
impression directe à l'écran, comme les caractères gras).
Mais je voudrais définir manuellement la largeur de ligne maximale du fichier de sortie généré, afin que tous les paragraphes soient justifiés à cette largeur.
man
les pages sont créées via groff
: par exemple, j'ai essayé de mettre .ll 50
avant un paragraphe du .gz
man
fichier texte source d' origine , mais c'est trivial si j'ai besoin de travailler sur plusieurs man
pages. De plus tous les personnages ne sont pas reconnus:
apropos.1:45: warning: can't find character with input code 195
apropos.1:45: warning: can't find character with input code 168
apropos.1:47: warning: can't find character with input code 178
apropos.1:131: warning: can't find character with input code 169
Je me demande donc s'il existe une méthode plus simple. Comment modifier la largeur maximale de ligne, lors de la création d'un outputfile
? Existe-t-il une commande spécifique?
Modifier :
(Toutes les considérations suivantes concernent Ubuntu 18.04: je ne peux plus les tester dans les versions précédentes, y compris le 14.04 de la question ci-dessus.)
En ce qui concerne une solution temporaire d'une ligne, si elle MANWIDTH
n'a pas déjà été exportée avec une valeur personnalisée, il n'y a pas de différence entre
$ MANWIDTH=60 man apropos > outputfile
et
$ COLUMNS=60 man apropos > outputfile
La première, en utilisant MANWIDTH
, est cependant meilleure en principe.
Edit 2 (pas strictement lié à la question):
Pour définir à la place un paramètre de largeur permanent à appliquer à toute impression de page de manuel, il est nécessaire d' exporter la valeur souhaitée de la variable. Avec:
$ export MANWIDTH=60
# zero or more additional lines
$ man apropos > outputfile
man apropos
sera imprimé avec la même largeur quel que soit le redimensionnement de la fenêtre du terminal. Au lieu,
$ export COLUMNS=60
# zero or more additional lines
$ man apropos > outputfile
fournira le même résultat qu'auparavant uniquement si la fenêtre du terminal n'est pas redimensionnée entre export
et man <page> > outputfile
.
man man
est 2.6.7.1). La page de manuel est en italien et elle est UTF-8. Qu'entendez-vous par locale?
locale
? et locale charmap
?
locale
sortie: LANG=it_IT.UTF-8 LANGUAGE= LC_CTYPE="it_IT.UTF-8" LC_NUMERIC="it_IT.UTF-8"
locale charmap
sortie:UTF-8
less
car TERM
n'est pas paramétré. Je voulais dire env -i LANG=it_IT.UTF-8 man apropos > output
(ou | head
).
input code
erreurs195 168
pourraient être è en UTF-8. La page de manuel est-elle en anglais? Quelle est votre implémentation homme? Quelle est votre localisation?