Tenho visto muitas postagens sobre diferentes pacotes para unidades de composição tipográfica e seus pontos fortes e fracos. A maioria dos posts parece concordar que o siunitx
pacote é o pacote mais atualizado, mas eu ainda não descobri as vantagens de usar um pacote. Qual é a vantagem de escrever algo como:
\SI{10}{\kilo\gram\meter\per\second\squared}
quando você poderia simplesmente escrever:
kg m s$^-2$
Ou para números, qual é a diferença entre
\num{10}
e
10
Responder1
Cheguei a esta questão pensando "sim! Por quê?" mas ao ler os comentários e respostas atualmente existentes, já mudei de opinião e agora estou tendendo para o outro lado. O que percebi, pensando nisso e nas minhas pequenas interações com este pacote, é que ele oferece praticamente o mesmo serviçodentro deLaTeX como LaTeX (ou mesmo apenas o próprio TeX) fornece a escrita como um todo. Para entender esse ponto, considere as alternativas para comunicar um pouco de matemática por escrito através de um computador:
Escreva foneticamente, por assim dizer. Palavras são palavras, é claro, mas as letras gregas são escritas por extenso, ou talvez desenhadas em alguma arte ASCII ad-hoc, e fórmulas mais complicadas são agrupadas de uma maneira não especificada que pode ou não ficar clara no contexto.
Escreva em TeX, no qual as letras gregas são escritas em macros, fórmulas mais complicadas são hackeadas de uma maneira possivelmente horrível... e então o resultado é "compilado" em um documento fazendo com que tudo pareça que você tinha em mente, portanto, nenhum dano seria causado se sua fonte fosse um pouco mais esquemática do que você gostaria.
O siunitx
pacote faz exatamente isso, mas em vez de fórmulas matemáticas, ele faz unidades no estilo SI. Claro, pode-se escrever os mesmos símbolos que normalmente aparecem em unidades como kg
ou s$^{-1}$
, mas isso pode dar errado visualmente com muita facilidade, dependendo se a unidade aparece no modo matemático ou não (imagine como isso afeta o último!), ou se vários as unidades ficam amontoadas ou (observação bastante válida de egreg) quebradas em uma linha. Então você pode decidir que, em vez de s$^{-1}$
realmente querer /s
a unidade hertz, será necessária uma mudança global de notação.
Esses são todos os tipos de problemas que são tratados no TeX definindo macros contendo seus estilos preferidos \kilogram
e \hertz
assim por diante. O siunitx
just organiza todo o projeto de definição dessas macros e suas relações entre si, além de dar muitas opções estéticas em cima disso.
Basicamente, tudo se resume a "Por que alguém iria querer programar seu documento?", para o qual a resposta é "É mais fácil escrever documentos bem estruturados dessa maneira".
Responder2
Permita-me dar uma resposta na forma de uma anedota prática:
Quando escrevi minha dissertação de doutorado em química, cada capítulo já havia sido publicado ou seria submetido em breve a um periódico revisado por pares. Cada capítulo foi escrito em um momento diferente ao longo de vários anos e, claro, cada revista tinha seus próprios padrões sobre se deveria haver um espaço entre o número e a unidade, se as unidades inversas deveriam ser dadas como frações ou expoentes, Além disso, quando eu apenas digitava as unidades, às vezes eu adicionava um espaço e às vezes não, e então acabei fazendo muitas revisões para entender isso até acertar siunit
, e depois siunitx
.
Ao transformar as unidades em macros, tive um problema de formatação a menos com o qual precisava me preocupar, e quando peguei o corpo do capítulo, só tive que escrever um novo cabeçalho usando o pacote de estilos da revista e os siunitx
parâmetros corretos (ou, se o diário não suportar, codifique as macros no preâmbulo) e todas as unidades e números serão formatados automaticamente de forma correta. Quando precisei colocá-los em minha tese, bastava inserir \input{}
o corpo do texto após uma \chapter{}
etiqueta, e todos os meus capítulos foram formatados de acordo com os padrões de minha tese universitária, sem complicações. Enquanto isso, meus amigos que trabalhavam com o Word passavam semanas e às vezesmesesnão fazendo nada além de reformatar e revisar para deixar tudo consistente (a maior parte disso gasto em equações, figuras e numeração de referência nas quais nunca pensei duas vezes).
Na verdade, o arquivo que continha minhas definições de macro acabou sendo quase tão longo quanto meus capítulos, pois toda vez que eu tinha um símbolo matemático (sobrescritos, subscritos, negrito, etc.), criava uma macro com um nome descritivo para que não só que era mais fácil de revisar, mas se por algum motivo eu tivesse que alterar um símbolo ou variável, só teria que alterá-lo uma vez. A mesma ideia com unidades. Se tudo for uma macro, se precisar alterar alguma coisa, basta alterar uma vez e isso se propaga por todo o documento sem se preocupar.
Responder3
Tal como acontece com todos os outros componentes de TeX
, LaTeX
e amigos, a ideia é separar o conteúdo da forma
Desejamos especificar as alterações globalmente no preâmbulo e não nos preocupar com os detalhes do documento.
Perguntas semelhantes:
- Por que não escrevemos
\textbf{1. Introduction}
em vez de\section{Introduction}
? - Por que usamos o
enumerate
ambiente quando poderíamos apenas escrever(a)
,(b)
,(c)
etc ? - Por que escolhemos fazer nossos gráficos
LaTeX
(usandotikz
epstricks
por exemplo) quando poderíamos fazê-los externamente e apenas incluí-los? - Por que usamos
biblatex
(e outros pacotes bibliográficos) para organizar nossas referências - não poderíamos simplesmente digitá-las na ordem correta?
Responder4
A vantagem de usar um pacote é que você define os números e as unidades de uma forma tipográfica consistente. Às vezes você tem que usar um spatium ( \,
) entre o número e a unidade, às vezes não. Pacotesiunitx
sabe disso e faz isso automaticamente para você.