С помощью команды примера
man apropos > outputfile
генерируется текстовый файл, который содержит отформатированную man
страницу apropos
(с некоторыми небольшими отличиями по сравнению с man apropos
непосредственно напечатанными на экране, такими как жирные символы).
Но я бы хотел вручную установить максимальную ширину строки сгенерированного выходного файла, чтобы все абзацы были выровнены по этой ширине.
man
страницы создаются с помощью groff
: например, я пытался поставить .ll 50
перед абзацем исходного .gz
man
исходного текстового файла, но это тривиально, если мне нужно работать на нескольких man
страницах. Причем не все персонажи распознаются:
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
Итак, мне интересно, существует ли более простой метод. Как изменить максимальную ширину линии при создании outputfile
? Есть ли какая-то конкретная команда?
Редактировать :
(Все следующие соображения касаются Ubuntu 18.04: я больше не могу тестировать их в предыдущих версиях, включая 14.04 из приведенного выше вопроса.)
Что касается временного решения, состоящего из одной строки, если оно MANWIDTH
еще не было экспортировано с пользовательским значением, разницы между
$ MANWIDTH=60 man apropos > outputfile
и
$ COLUMNS=60 man apropos > outputfile
Первый, использующий MANWIDTH
, однако лучше в принципе.
Изменить 2 (не строго связано с вопросом):
Чтобы вместо этого установить постоянную ширину для любой печати man-страницы, необходимо экспортировать требуемое значение переменной. С:
$ export MANWIDTH=60
# zero or more additional lines
$ man apropos > outputfile
man apropos
будет напечатан с одинаковой шириной независимо от изменения размера окна терминала. Вместо,
$ export COLUMNS=60
# zero or more additional lines
$ man apropos > outputfile
будет обеспечивать тот же результат, что и раньше, только если размер окна терминала не изменяется между export
и man <page> > outputfile
.
man man
2.6.7.1). Страница руководства на итальянском языке, и это UTF-8. Что вы подразумеваете под языком?
locale
? а locale charmap
?
locale
выходные данные: LANG=it_IT.UTF-8 LANGUAGE= LC_CTYPE="it_IT.UTF-8" LC_NUMERIC="it_IT.UTF-8"
locale charmap
выходные данные:UTF-8
less
потому что TERM
не установлен. Я имел ввиду env -i LANG=it_IT.UTF-8 man apropos > output
(или | head
).
input code
ошибки,195 168
может быть, в UTF-8. Справочная страница на английском? Какая у тебя мужская реализация? Какой у тебя язык?