Como controlar o conteúdo do cabeçalho nas macros groff man

Como controlar o conteúdo do cabeçalho nas macros groff man

Estou usando as macros groff man para produzir documentação de uso geral (na verdade, não páginas de manual) porque elas são fáceis de aprender e usar. Gostaria de controlar o cabeçalho da página postscript como texto livre.

Omanual do groffdiz:

Use o arquivo man.local para extensões locais para as macros man ou para alterações de estilo.

Macro:.PT

Controle o conteúdo dos cabeçalhos. Normalmente, o cabeçalho imprime o nome do comando e o número da seção em ambos os lados, e o quinto argumento opcional para TH no centro.

Como faço isso na prática?

Responder1

O texto é obscuro, mas o conselho é modificar o man.localpróprio arquivo em vez de substituir as macros encontradas nesse arquivo.

Um bom lugar para começar é com a documentação:5.21 Escrevendo Macros(O Manual GNU Troff). Isso mostra comodefinirmacros.

As macros reais a serem estudadas dependem fortemente da versão. No Debian, encontro a PTmacro no groff-basepacote, em

/usr/share/groff/1.21/tmac/an-old.tmac

como

.\" Redefine these to customize the header & footer
.
.de1 PT
.  tl '\\*[an-title](\\*[an-section])'\\*[an-extra3]'\\*[an-title](\\*[an-section])'
..

Ele passa variáveis ​​nomeadas como o primeiro parâmetro para .tl. Para ver o que .tlé (grep é seu amigo) e o que ele faz é preciso algum trabalho (mencionadoaqui):

Você está ciente de que .tl(título) tem três partes: esquerda, centro e direita?

Por outro lado, a documentação do groff melhorou ao longo dos anos: você pode encontrar ".tl" noíndice.

Via de regra, você descobrirá que:

  • a maioria das macros (que você encontra ao ler esses arquivos) não está documentada
  • grep'ing sobre a lista de macros (grep -wajuda) é a única maneira de encontrar uma macro específica
  • existem versões específicas de dispositivos de algumas macros que substituem versões genéricas

Responder2

Se você quiser ter uma idéia de como usar macros modificadas destinadas a imprimir páginas de manual como um livro, você pode verificar as macros usadas para imprimir os manuais do Solaris:

https://sourceforge.net/p/schillix-on/schillix-on/ci/default/tree/usr/src/cmd/troff/troff.d/tmac.d/

Compare o arquivo “an” com o arquivo de macro “ansun”. Este último é usado para imprimir livros.

Observe que estes são conjuntos de macros para o troff original e não para o clone do troff "groff", mas desde que o groff seja compatível, ele deve funcionar.

informação relacionada