Com o comando de exemplo
man apropos > outputfile
é gerado um arquivo de texto que contém a man
página formatada de apropos
(com algumas pequenas diferenças em relação a man apropos
impressos diretamente na tela, como caracteres em negrito).
Mas eu gostaria de definir manualmente a largura máxima da linha do arquivo de saída gerado, para que todos os parágrafos sejam justificados para essa largura.
man
as páginas são criadas através de groff
: por exemplo, tentei colocar .ll 50
antes de um parágrafo do .gz
man
arquivo de texto original , mas é trivial se eu precisar trabalhar em várias man
páginas. Além disso, nem todos os personagens são reconhecidos:
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
Então, eu me pergunto se existe um método mais direto. Como modificar a largura máxima da linha, durante a criação de um outputfile
? Existe algum comando específico?
Editar :
(Todas as considerações a seguir são sobre o Ubuntu 18.04: Não posso mais testá-las nas versões anteriores, incluindo a 14.04 da pergunta acima.)
No que diz respeito a uma solução temporária de uma linha, se MANWIDTH
ainda não tiver sido exportada com um valor personalizado, não há diferença entre
$ MANWIDTH=60 man apropos > outputfile
e
$ COLUMNS=60 man apropos > outputfile
O primeiro, usando MANWIDTH
, é no entanto melhor em princípio.
Editar 2 (não estritamente relacionado à pergunta):
Para criar uma configuração de largura permanente a ser aplicada a qualquer impressão de página de manual, é necessário exportar o valor desejado da variável. Com:
$ export MANWIDTH=60
# zero or more additional lines
$ man apropos > outputfile
man apropos
será impresso com a mesma largura, independentemente de qualquer redimensionamento da janela do terminal. Em vez de,
$ export COLUMNS=60
# zero or more additional lines
$ man apropos > outputfile
fornecerá o mesmo resultado de antes apenas se a janela do terminal não for redimensionada entre export
e man <page> > outputfile
.
man man
é 2.6.7.1). A página do manual está em italiano e é UTF-8. O que você quer dizer com localidade?
locale
? e locale charmap
?
locale
saída: LANG=it_IT.UTF-8 LANGUAGE= LC_CTYPE="it_IT.UTF-8" LC_NUMERIC="it_IT.UTF-8"
locale charmap
saída:UTF-8
less
porque TERM
não está definido. Eu quis dizer env -i LANG=it_IT.UTF-8 man apropos > output
(ou | head
).
input code
erros195 168
podem estar em UTF-8. A página do manual está em inglês? Qual é a sua implementação man? Qual é a sua localidade?