Usar comandos Plain ou primitivos no LaTeX

É sabido que os comandos LaTeX tendem a ser mais complexos e mais lentos do que qualquer comando Plain TeX (ou primitivo) que eles substituam. Existe, portanto, uma grande tentação de não usar comandos LaTeX na programação de macros. No entanto, a regra geral é que você deve usar comandos LaTeX, se houver equivalentes aparentes. A exceção é quando você tem certeza de que sabe as diferenças entre os dois comandos e sabe que precisa da versão Plain TeX. Então, por exemplo, use \mbox no lugar de \hbox, a menos que você saiba que os extras que o LaTeX fornece no \mbox causariam problemas na sua aplicação. Da mesma forma, use \newcommand (ou um de seus parentes), a menos que você precise de um dos construtos que não podem ser alcançados sem o uso do \def (ou amigos).

Como regra geral, qualquer comando LaTeX de texto inicia um novo parágrafo, se necessário; este não é o caso dos comandos Plain TeX, fato que tem potencial para confundir.

Os comandos \smallskip, \medskip e \bigskip existem tanto no Plain TeX quanto no LaTeX, mas se comportam de maneira ligeiramente diferente: no Plain TeX, eles terminam o parágrafo corrente, o que não acontece no LaTeX. O comando \line faz parte do modo de imagem no LaTeX, enquanto, no Plain TeX, ele está definido como “\hbox to \hsize” in Plain TeX. (Não há equivalente para usuários do comando do Plain TeX no LaTeX: um equivalente aparece como o comando interno \@@line).

A composição de matemática mostra um caso em que a versão LaTeX é essencialmente equivalente aos comandos primitivos do TeX: o \( ... \) do LaTeX não difere essencialmente do primitivo $ ... $, exceto por verificar se você está tentando abrir um ambiente de matemática já estando em um ou tentando fechar um ambiente de matemática quando não está em um. No entanto, \[ ... \] difere mais significativamente de $$ ... $$: a versão primitiva, usado no LaTeX, pode perder o efeito da opção de classe fleqn.

A maneira de lidar com fontes é, obviamente, muito diferente em Plain TeX e LaTeX. O comando de carregamento de fonte do Plain TeX (\font\foo=fontname›) e seu equivalente no LaTeX (\newfont) devem ser evitados sempre que possível. Eles são seguros apenas nos contextos mais triviais, e são fontes potenciais de grande confusão em muitas circunstâncias. Discussão adicional sobre esse problema pode ser encontrada em “O que está errado com o \newfont?”.

This answer last edited: 2013-09-27


Do you have any question? Ask on: latex.net.br - we love qood questions!