Como eu exibo diretamente uma página de manual?

16

Estou escrevendo uma página de manual para um programa que estou empacotando. Como posso exibir o arquivo de página de manual que eu criei, para verificar se está tudo bem? Existe uma maneira de passar meu arquivo diretamente para o mancomando, em vez de procurar nas páginas de manual instaladas pelo nome?

Tentei fazer coisas como essas man myprog.1e, man < myprog.1em ambos os casos, recebi um erro dizendo que a página de manual não pôde ser encontrada.

hugomg
fonte

Respostas:

24

man tem uma opção para ler um arquivo local: -l

-l, --local-file

Ativa o modo `local '. Formate e exiba arquivos manuais locais em vez de pesquisar na coleção de manuais do sistema. Cada argumento da página manual será interpretado como um arquivo de origem nroff no formato correto. Nenhum arquivo cat é produzido.

Se '-' estiver listado como um dos argumentos, a entrada será obtida do stdin. Quando essa opção não é usada e o homem falha em encontrar a página necessária, antes de exibir a mensagem de erro, ele tenta agir como se essa opção tivesse sido fornecida, usando o nome como um nome de arquivo e procurando uma correspondência exata.

Para que você possa visualizar seu trabalho em andamento com:

man -l /path/to/manfile.1

jasonwryan
fonte
2
Isso é essencialmente específico do Linux. Você pode limitar sua resposta adequadamente.
Thomas Dickey
5
@ThomasDickey Eu uso apenas Linux; você pode editar ou adicionar uma resposta ...
jasonwryan
15

A maneira 'old school', para sistemas que antecedem a -lopção, é

nroff -man filename | more -s
Flup
fonte
10

Eu usei simplesmente

man ./path/to/man.1

Você precisa incluir uma barra no caminho, caso contrário, ela pesquisa os diretórios do sistema. Funciona nos sistemas Linux e OS X que tenho (o último não possui -l).

$ cd /tmp
$ cp /usr/share/man/man1/ls.1 .
$ man ls.1
No manual entry for ls.1
$ man ./ls.1     # works
ilkkachu
fonte
1

No Solaris, a -Mopção para mansubstituirá o caminho de pesquisa das páginas de manual: -

man -M path/to/man myprog

Seu arquivo de páginas de manual deve residir em um subdiretório apropriado, correspondente à seção e ao idioma de marcação, por exemplo: path/to/man/man1/myprog.1para uma página de manual nroff na seção 1.

crw
fonte