Provided by: manpages-pt_20040726-5_all bug

NOME

       man - macros de formatação de páginas de manual

SINOPSE

       groff -Tascii -man arquivo ...

       groff -Tps -man arquivo ...

       man [seção] título

DESCRIÇÃO

       Esta  página descreve o pacote de macros groff tmac.an (freqüentemende chamado man )  e outras convenções
       para a criação de páginas de manual.  Este pacote deve ser usado por programadores ao escrever ou  portar
       manuais  para  o linux. É razoavelmente compatível com outras versões do mesmo pacote, de modo que portar
       as páginas não deve ser difícil. Há exceções como o NET-2 BSD, que usa um  pacote  de  macros  totalmente
       diferente chamado mdoc. Veja mdoc(7).

       Observe  que  as páginas mdoc do NET-2 BSD podem ser usadas com o groff simplesmente substituindo a opção
       -man pela opção -mdoc -mandoc , que detectará automaticamente o pacote a ser utilizado.

PREÂMBULO

       O primeiro comando de uma página de man (após os comentários) deve ser

              .TH título seção data origem manual,

       onde:

              título    o título da página (ex., MAN).

              seção     O número da seção na qual a página deve ser colocada (ex.  7).

              data      A data da última revisão (emlembre-se de alterar isto toda vez que uma alteração é feita
                        na página de manual, visto que isto é a forma mais geral de fazer um controle de versão.

              origem    A origem do comando.

                        Para binários, use alguma coisa como GNU, NET-2, SLS Distribution, MCC Distribution.

                        Para chamadas de sistema, coloque a  versão  do  kernel  que  você  está  usando:  Linux
                        0.99.11.

                        Para chamadas de biblioteca, use a fonte da função: GNU, BSD 4.3, Linux DLL 4.4.1.

              manual    O título do manual (e.g., Manual do Programador Linux).

       Observe que as páginas mdoc do BSD começam com o comando Dd , e não com TH

       As seções do manual são tradicionalmetne definidas assim:

              1 Comandos
                        Comandos que podem ser executados pelo usuário a partir de um interpretador de comandos.

              2 Chamadas de sistema
                        Funções que têm que ser executadas pelo kernel.

              3 Chamadas de biblioteca
                        A maioria das funções libc como qsort(3))

              4 Arquivos especiais
                        Arquivos encontrados em /dev)

              5 Formatos de arquivo e convenções
                        O formato de arquivos como /etc/passwd e outros arquivos legíveis.

              6 Jogos

              7 Pacotes de macro e convenções
                        Uma descrição de sistemas de arquivos, protocolos de rede, códigos de caracteres ASCII e
                        outros, esta e outros.

              8 Comandos de administração de sistema.
                        Comandos como mount(8), que muitas vezes apenas o root pode executar.

              9 Rotinas do kernel
                        Esta  é uma seção obsoleta do manual.  Tentou-se documentar o kernel linux aqui, mas, de
                        fato, muito pouco foi documentado, e a documetnação existente já está desatualizada.  Há
                        fontes melhores de informação para programadores do kernel.

SEÇÕES

       Seções começam com .SH seguido do nome da seção. Se o nome contiver espaços ou estiver na mesma linha que
       o  .SH, coloque-o entre aspas. Cabeçalhos comuns e recomendados incluem: NOME, SINOPSE, DESCRIÇÃO, VALORE
       RETORNADO (ou VALORES RETORNADOS), STATUS  DE  SAÍDA,  MANUSEIO  DE  ERROS,  ERROS,  OPÇÕES,  UTILIZAÇÃO,
       ARQUIVOS,  AMBIENTE,  DIAGNÓSTICO,  SEGURANÇA  DE ACORDO COM, NOTAS, PROBLEMAS, AUTOR e VEJA TAMBÉM.  Use
       cabeçalhos corriqueiros se possível, isto torna a compreensão mais fácil.  No entanto, crie seus próprios
       cabeçalhos se eles contribuirem para a clareza.  O único cabeçalho indispensável é NOME, que deve  ser  a
       primeira seção e ser segiudo por uma descrição do programa na linha seguinte:

              .SH NOME
              chess \- jogo de xadrez

       É indispensável seguir este formato. Tem que haver uma barra invertida antes do traço que segue o nome do
       comando.  Esta  sintaxe  é  usada pelo makewhatis(8) para criar um banco de dados de descrições breves de
       comandos para o whatis(1) e o apropos(1)

       Algumas outras seções comuns têm os seguintes conteúdos:

       SINOPSE       descreve sucintamente a interface do comando ou função.  Para comandos, mostra a sintaxe do
                     comando e seus argumentos, incluindo as opções; Usa-se texto  em  negrito  para  as  opções
                     fixas,  e  itálico  para indicar argumentos substituíveis. Colchetes ([]) cercam argumentos
                     opcionais, barras verticais (||) separam opções,  e  elipses  (...)  indicam  ser  possível
                     repetição.   Para  funções,  inclui ainda declarações de dados necessárias ou cabeçalhos ou
                     diretivas #include ; que são seguidas pela declaração da função.

       DESCRIÇÃO     descreve o que a função, comando ou formato fazem.  Discute sua interação  com  arquivos  e
                     com  o stdin, e o que é enviado para o stdout ou stderr.  Detalhes do funcionamento interno
                     ou implementação são omitidos a não ser que sejam vitais  para  se  entender  a  interface.
                     Procure  descrever  utilizações comuns. Para informação sobre as opções, use a seção OPÇÕES
                     Se houver algum tipo formato específico ou conjunto de subcomandos,  talvez  valha  a  pena
                     descrevê-los numa seção UTILIZAÇÃO separada e colocar uma visão geral na seção DESCRIÇÃO

       VALORES RETORNADOS
                     dá  uma  lista de valores que um programa ou rotina podem retornar e as condições que estes
                     valores indicam.

       STATUS DE SAÍDA
                     lista os valores de status de saída ou um  programa  e  as  condições  que  levam  a  estes
                     valores.   Algumas  páginas  usam VALORES RETORNADOS ao invés de STATUS DE SAÍDA, o que não
                     faz diferença.

       OPÇÕES        descreve as opções que o programa aceita e como elas afetam seu comportamento.

       UTILIZAÇÃO    descreve a gramática de qualquer sublinguagem que ele implementar.

       ARQUIVOS      lista os arquivos usados pelo programa ou  função,  tais  como  arquivos  de  configuração,
                     arquivos  de  inicialização  e arquivos com os quais o programa trabalhe diretamente.  Dê o
                     caminho completo destes arquivos, e use o processo de instalação para modificar o diretório
                     conforme seja conveniente.  Para muitos programas, a instalação padrão é em  /usr/local,  e
                     sua página de manual deverá usar /usr/local como base.

       AMBIENTE      lista todas as variáveis de ambiente que afetam seu programa ou função e o modo como elas o
                     fazem.

       DIAGNÓSTICO   dá  uma  visão das mensagens de erro mais comuns e de como lidar com elas. Você não precisa
                     explicar erros do sistema ou sinais fatais que podem aparecer durante a  execução  a  menos
                     que elas afetem seu programa de um modo especial.

       SEGURANÇA     discute  assuntos  e  implicaçÕes de segurança.  Avise sobre configurações ou ambientes que
                     devam ser evitados, comandos que possam ter implicações de segurança e  assim  por  diante,
                     especialmente  se não forem óbvias.  Uma seção de seguraça não é necessária se a informação
                     for fácil de entender e puder ser colocada em outras seções como  DESCRIÇÃO  ou  UTILIZAÇÃO
                     Mas não deixe de inlcuir a informação de segurança!

       DE ACORDO COM descreve normas ou convenções implementadas.

       OBSERVAÇÕES   contém outras observações

       PROBLEMAS     lista limitações, defeitos, inconveniência e outros comportamentos indesejáveis.

       AUTOR         lista  os  autores  da documentação ou do programa para que você possa enviar relatórios de
                     bugs.

       VEJA TAMBÉM   lista as páginas de manual relacionadas em ordem alfabética, podendo ser seguida por outras
                     páginas ou documentos.  Normalmente é a última seção.

FONTES

       Embora haja muitas convenções arbitrárias para as páginas de man  em  UNIX,  os  padrões  de  fontes  são
       definidos pelas várias centenas de páginas específicas para linux:

              Para  funções,  os  argumentos  ficam  sempre em itálico, mesmo na seção SINOPSE, sendo o resto da
              função colocado em negrito:
              int myfunction(int argc, char **argv);

              Nomes de arquivo vão sempre em itálico (ex.  /usr/include/stdio.h), exceto na seção SINOPSE,  onde
              os arquivos include vão em negrito (ex., #include <stdio.h>).

              Macros especiais - normalmente em caixa alta - vão em negrito (ex., MAXINT).

              Ao enumerar códigos de erro, estes devem ficar em negrito (geralmente se usa a macro .TP

              Qualquer  referência a outra página de manual ou ao assunto da página atual vai em negrito. Se for
              dado um número de seção, ele vai em fonte Roman (normal) sem espaços (ex.  man(7)).

       Os comandos de seleção de tipo são:

       .B  Negrito

       .BI Negrito alternando com itálico (usado em especificação de funções)

       .BR Negrito alternando com Roman (usado para referência a outras páginas de manual)

       .I  Itálico

       .IB Itálico alternando com negrito

       .IR Itálico alternando com Roman

       .RB Roman alternando com negrito

       .RI Roman alternando com itálico

       .SB Pequeno alternnado com negrito

       .SM Pequeno (usado para siglas)

       Tradicionalmente, cada comando tem  até  seis  argumentos,  mas  as  implementações  GNU  removeram  esta
       limitação  (você  pode  mantê-la  se for necessário para portabilidade).  Os argumentos são separados por
       espaços. Aspas duplas podem ser usadas para especificar um  argumento  que  contenha  espaços.  Todos  os
       argumentos  serão  impresoss  lado  a  lado  sem  espaços, de modo que o comando .BR possa ser usado para
       especificar uma palavra em negrito seguida por pontuação em romano.  Se não houver argumentos, o  comando
       se aplica à linha seguinte do texto.

OUTRAS MACROS E CADEIAS DE CARACTERES

       Seguem  outras macros e cadeia de caracteres relevantes.  Todas as macros introduzem uma quebra (terminam
       a linha atual do texto) Muitas destas macros usam ou definem o valor da indentação O "valor da identação"
       é definido por qualquer macro que tenha o parâmetro i As macros podem omitir i e  o  valor  pré-existente
       será  usado.   Conseqüentemente, vários parágrafos podem usar a mesma indentação sem que este valor tenha
       que ser especificado a cada vez.  Um parágrafo normal - sem indentação - usa o valor padrão de indentação
       de 0.5 polegada.  A indentação é medida em ens. Use ens ou ems como unidade, porque  elas  são  ajustadas
       automaticamente quando se muda o tamanho da fonte.  As outras macros principais são:

   Parágrados normais
       .LP      Assim como .PP (começar novo parágrafo).

       .P       Assim como .PP (começar novo parágrafo).

       .PP      Começar novo parágrafo e reinicializar a indentação.

   Indentação relativa à margem
       .RS i    Iniciar  indentação  relativa  à  margem:  move  a margem esquerda i para a direita. (Se o i for
                omitido, é usado o valor atual de indentação.  Uma indentação é inicializada  em  0.5  polegada.
                Conseqüentemente, todos os parágrafos seguintes serão indentados até o correspondente .RE.

       .RE      Termina a indentação de margem relativa e restaura os valores anteriores de indentação.

   Indented Paragraph Macros
       .HP i    Begin  paragraph with a hanging indent (the first line of the paragraph is at the left margin of
                normal paragraphs, and the rest of the paragraph's lines are indented).

       .IP x i  Indented paragraph with optional hanging tag.  Se o tag x  for  omitido,  o  parágrafo  seguinte
                inteiro  é  indentado  com  i.   Se  houver o tag x , ele é colocado na margem esquerda antes do
                parágrafo indentado seguinte, da mesma forma que o .TP, exceto  que  o  tag  é  incluído  com  o
                comando  ao  invés  de  na  linha  seguinte.  Se o tag for muito longo, o texto que o segue será
                colocado na linha seguinte, não havendo perdas ou distorção.  Para listas  de  itens,  usa  esta
                macro  com  \(bu (de 'bullet' - bolinha)  ou \(em (traço) como tag. Para listas numeradas, use o
                número ou letra seguido por um ponto como tag.  Isto facilita a tradução para outros formatos.

       .TP i    Inicia um parágrafo com um tag pendente. O tag é dado na linha seguinte, mas  o  resultado  é  o
                mesmo do comando .IP

   Macros de hyperlink
       .UR u    inicia  um  hyperlinx  para  uma  URI (URL) u; e termina com o comando UE correspondente.  Ao se
                gerar HTML, deve se tornar o comando <A HREF="u">.  Há uma exceção: se u tiver o valor ":",  não
                será  gerado  nenhum  link  de hipertexto até o UE final. Isto permite desabilitar hyperlinks em
                frases como LALR(1) onde os links não são apropriados.  Estas "macros" de hipertexto são  novas,
                e  muitos  programas  não  farão  nada com elas. Mas como muitos programas - inclusive o troff -
                simplesmente ignoram macros não definidas (ou na pior das hipóteses  inclui  estas  macros  como
                texto), é seguro utilizá-las.

       .UE      finaliza o comando UR correspondente.  Ao gerar HTML, isto deve ser traduzido como </A>.

       .UN u    Cria  um local de hipertexto chamado u; não é necessário incluir um UE correspondente.  Ao gerar
                HTML, isto deve ser traduzido como <A NAME="u" id="u">&nbsp;</A> (O &nbsp; é opcional se não for
                necessário suporte ao Mosaic).

   Outras macros
       .DT      Reinicializa a indentação com os valroes padrão (a cada 0.5 polegada) sem introduzir uma quebra.

       .IX ...  Introduz um índice (para um sistema de busca ou índice impresso).  Esta  informação  normalmente
                não  é  exibida  na  página.  É seguida por um único parâmetro, que é acrescentado como um único
                termo apontando para uma dada localização na página.  Se houverem dois  parâmetros,  normalmente
                está  no  formato  Perl  manpage:  o  primeiro  designa  o  tipo do nome (pode ser Nome, Titilo,
                Cabeçalho, Subseção ou Ítem) e  o  segundo  parâmetro  indica  o  nome  a  ser  indexado.   Caso
                contrário,  está  no  formato  de  índice  longo: cada parâmetro dá um termo de índice, termo de
                índice subordinado, termo de índice subsubordinado e assim por diante até  que  se  encontre  um
                parâmetro vazio, um parâmetro com o nome do programa (\em) e uma descrição breve.  Isto pode ser
                seguido  por  outro  parâmetro  vazio  e  talvez  por mensagens de controle de página como 'PAGE
                START'.  Um exemplo seria: "programming tools" "make" "" "\fLmake\fP \(em build programs".

       .PD d    Ajusta a distância entre parágrafos para d (se omitido, d=0.4v).  Não introduz quebra.

       .SS t    Subcabeçalho t (mesmo que .SH, mas usado para subseções dentro de uma seção.

   Strings pré-definidas
       O pacote man tem as seguintes strings pré-definidas:

       \*R    Marca registrada: ®

       \*S    Mudar para tamanho de fonte padrão

       \*(Tm  Marca: ™

       \*(lq  Aspas anguladas (esquerda): “

       \*(rq  Aspas anguladas (direita): ”

SUBCONJUNTO SEGURO

       Embora o man seja tecnicamente um pacote de macros troff,  muitos  programas  que  processam  páginas  de
       manual  não  implementam todos os recursos do troff.  Portanto, é melhor evitar os recursos mais exóticos
       para que eles funcionem corretamente.  Evite os preprocessadores troff.  Se isto for  inevitável,  use  o
       tbl(1),  mas  com  os  comandos IP e TP para tabelas de duas colunas.  Evite usar cálculos: a maioria dos
       programas não  os  entende.   Use  comandos  simples,  fáceis  de  traduzir.   As  seguintes  macros  são
       consideradas  seguras,  embora  muitas vezes sejam ignoradas pelos tradutores: \", ., ad, bp, br, ce, de,
       ds, el, ie, if, fi, ft, hy, ig, in, na, ne, nf, nh, ps, so, sp, ti, tr.

       Pode-se também usar as seqüências de escape troff (que começam com \).  Para incluir uma barra  invertida
       como  texto, use \e.  Outras seqüências (x ou xx são caracteres e N é um dígito): \', \`, \-, \., \", \%,
       \*x, \*(xx, \(xx, \$N, \nx, \n(xx, \fx, e \f(xx.  Evite desenhar com as seqüências de escape.

       Não use o parâmetro opcional de bp ('break page' - quebra de página).  Use apenas valores positivos  para
       sp  (espaço  vertical).   Não defina uma macro (de) com o mesmo nome de uma macro deste pacote ou do mdoc
       que tenha um significado diferente: é provável que estas redefinições sejam ignoradas.   Toda  indentação
       positiva  (in) deve ter uma indentação negativa correspondente.  (É melhor, no entanto, usar as macros RS
       e RE ).  O teste condicional (if,ie) deve ter apenas 't' ou 'n' como condição.  Apenas  as  traduções  do
       tipo  (tr)  que  puderem ser ignoradas devem ser usadas.  Mudanças de fonte com (ft ou com a seqüência \f
       devem usar apenas os valores 1, 2, 3, 4, R, I, B, P ou CW  (o  comando  ft  também  pode  ser  usado  sem
       parâmetros).

       Se  você usar recursos que não sejam estes, confira cuidadosamente os resultados em vários programas.  Se
       a seqüência for segura, favor informar ao mantenedor deste documento para que ele o adicione.

OBSERVAÇÕES

       Procure incluir as URL ou URIs integrais no próprio texto, porque alguns programas como man2html(1) podem
       transformá-las automaticamente em links.  Você também pode usar a  macro  UR  para  identificar  links  a
       informações    relacionadas.     Se    você    usar    URLs,    coloque    o    endereço   inteiro   (ex.
       <http://www.kernelnotes.org>) para que os programas as encontrem automaticamente.

       Programas que processem estes arquivos devem abrir o arquivo e examinar o primeiro caracter que não  seja
       um  espaço.  Um  ponto (.) ou aspa única (') no começo da linha indica um arquivo tipo troff (como man ou
       mdoc).  Um sinal de menor (<) indica um arquivo tipo SGML/XML (como  HTML  ou  Docbook).  Qualquer  outra
       coisa indica ASCII simples (ex. saída de "catman").

       Muitas  páginas  começam  com  '\"  seguido  de  espaço  e  uma  lista  de  caracteres  que prescrevem um
       preprocessamento para a página.  Para portabilidade com tradutores não troff, recomendamos que não se use
       nada além do tbl(1), que o linux detecta automaticamente.  No entanto, você  pode  desejar  incluir  esta
       informação  para  que  sua  página  seja  manuseada  por  outros  sistemas  menos capazes.  Aqui estão as
       definições dos preprocessadores indicados pelos seguites caracteres:

       e  eqn(1)

       g  grap(1)

       p  pic(1)

       r  refer(1)

       t  tbl(1)

       v  vgrind(1)

ARQUIVOS

       /usr/local/lib/groff/tmac/tmac.an
       /usr/man/whatis

PROBLEMAS

       A maioria das macros descreve formatação (fontes, espaçamentos...) ao  invés  de  semântica  (como:  este
       texto  é  uma referência a outra página), comparado com formatos como mdoc e DocBook (então HTML tem mais
       marcas de semântica).  Isto torna mais difícil traduzir ou tornar consistente o formato man  para  outros
       meios,  dificulta  ainda a inserção de referências cruzadas.  Ao se limitar ao subconjuto padrão acima, a
       automatização da transição para outro formato de manual no futuro ficará facilitada.

       A macro TX da Sun não está implementada.

AUTORES

       —  James Clark (jjc@jclark.com) escreveu a implementação do pacote de macros.

       —  Rickard E. Faith (faith@cs.unc.edu) escreveu a versão inicial desta página.

       —  Jens Schweikhardt (schweikh@noc.fdn.de) escreveu o Linux Man-Page  Mini-HOWTO  (que  influenciou  esta
          página de manual).

       —  David  A.  Wheeler (dwheeler@ida.org) modificou consideravelmente esta página, adicionando informações
          detalhadas sobre seções e macros.

VEJA TAMBÉM

       apropos(1), groff(1), man(1), man2html(1), mdoc(7), mdoc.samples(7), whatis(1).

TRADUZIDO POR LDP-BR em 21/08/2000.

       Paulo César Mendes <drps@ism.com.br> (tradução) André L. Fassone Canova <lonelywolf@blv.com.br> (revisão)

Linux                                              16/06/1999                                             MAN(7)