
Suponha que eu queira escrever uma palavra com sinais diacríticos, digamosfïbęj,e não posso usar Unicode ou similar, mas tenho que manter a compatibilidade máxima para todos os tipos de situações. Se não me engano muito, tenho que recorrer a um dos seguintes:
f\"ib\k{e}j
f\"{i}b\k{e}j
f{\"i}b{\k{e}}j
f{\"{i}}b{\k{e}}j
Lembro-me vagamente de ter lido uma vez que uma dessas alternativas é preferível porque permite um melhor kerning ou algo semelhante. No entanto, testando isso, obtenho o mesmo kerning ruim em todos os casos: O ascendente do fe o ponto esquerdo do eucolidem, e o mesmo acontece com o ogonek e o descendente do j.
Agora, este foi um exemplo deliberadamente patológico e as respectivas colisões podem não ser relevantes para qualquer linguagem existente e, portanto, pode haver outros casos em que uma das formas acima de codificar marcas diacríticas produza um kerning melhor. Além disso, não testei todos os ambientes possíveis e posso ter perdido alguma coisa.
Finalmente, pode haver outras razões (exceto a estética do código-fonte) que tornam uma das variantes acima preferível para hifenização e outros aspectos.
Minha pergunta é assim:Existe alguma razão técnica para preferir algumas das variantes acima a outras?
Responder1
Use 1 ou 2. Você não deseja adicionar grupos ao redor da letra, a menos que possa evitá-lo (este é um grande problema com o uso de grupos pelo bibtex para controlar maiúsculas e minúsculas). fine
normalmente usará uma fi
ligadura na maioria das fontes, mas f{i}ne
quebrará a ligadura (normalmente). O mesmo acontece com letras com diacríticos.
Se \"{i}
estiver resolvendo o uso do \accent
primitivo para colocar a, \"
então não haverá kerns ou ligaduras especificadas pela fonte, então todas as suas possibilidades são equivalentes. (Isso acontece com a codificação OT1 padrão).
Se \"{i}
estiver resolvendo o uso de um único glifo na fonte com um caractere composto, se houver kerns ou ligaduras especificados pela fonte, eles serão evitados se você tiver um {}
grupo em torno da construção.
Responder2
A compatibilidade máxima é impossível porque \k
não é fornecida no TeX clássico no Computer Modern. Portanto, \k
a sequência de controle é indefinida no TeX simples. O \k
é definido dependendo do pacote de macros usado e da codificação de fonte usada. LaTeX com codificação de fonte padrão não conhece o arquivo \k
.
Segundo problema: \"i
fornece i pontilhado e o próximo par de pontos acima (ou seja, três i pontilhados) no TeX clássico. O uso de \"\i
é necessário. Mas a sintaxe \"i
pode fornecer o resultado desejado dependendo do pacote de macros usado e da codificação de fonte interna usada.