Regras de boas práticas para escrever LaTeX limpo?

Regras de boas práticas para escrever LaTeX limpo?

Existem regras de boas práticas para escrever LaTeX limpo? Algo como PEP8 para Python. Exemplos:

  • espaços ou tabulações (não é um troll);
  • quantas colunas antes de agrupar (80 para Python compatível com PEP8);
  • algo sobre comentários;
  • etc.

Responder1

A resposta curta aqui é simples: “Não, não existem regras semelhantes ao PEP8 ou similares”.

Para uma resposta mais longa, talvez valha a pena dividir as fontes LaTeX em dois tipos:

  • Documentos (a maior parte do trabalho para a maioria das pessoas)
  • Pacotes e outros ‘códigos’

É claro que há alguma sobreposição, pois pode ser necessário 'fazer alguma codificação rapidamente' em um preâmbulo, mas a 'natureza' de um arquivo de origem geralmente é um ou outro caso.

Para documentos, o número de autores que irãosempreveja que a fonte é pequena: o alvo principal é a saída composta. Portanto, cabe realmente ao(s) indivíduo(s) envolvido(s) a forma como expõem as suas contribuições.

Para o 'código', pode-se argumentar que há resultados ligeiramente diferentes, pois há pelo menos o potencial para uma leitura/reutilização mais ampla das fontes. Entretanto, a experiência prática sugere que a maioria dos pacotes tem apenas uma pessoa escrevendo o código, mesmo para material amplamente utilizado. Onde há exceções, mais obviamente o kernel, mas também coisas como beamerou biblatex, o 'tamanho da equipe' tende a ser pequeno e normalmente é possível um acordo informal. (Normalmente, uma pessoa iniciou as coisas para que alguma posição possa ser acordada com base no cumprimento do que quer que tenha feito.) Aqui, é claro, poderíamos usar o .dtxformato do código, o que levaria a resultados de 'comentários' muito diferentes para os casos em que a fonteéo pacote (compare o kernel com etoolbox, por exemplo).

O único lugar onde existe um guia de estilo para código é paraexpl3: a equipe temescrito com base na maneira como o código tendeu. Mesmo aí, porém, não há sentido de que o código que não segue essas regras seja “ruim”: é muito mais sobre ocontente.

É importante lembrar que TeX é uma linguagem de expansão macro, e isso torna a implementação de 'verificadores' automáticos difícil ou impossível: veja Guia de estilo automático para LaTeX?.

informação relacionada