
Considerando o modo matemático embutido, existe uma razão conceitual ou tipográfica, pela qual o TeX coloca automaticamente uma penalidade após átomos do tipo Rel e Bin, mas não após o tipo Punct?
Um motivo que me vem à mente é que isso pode permitir que você controle de alguma forma convenientemente as quebras de linha permitidas. Então, talvez você deva escrever Let $a$, $b$ be numbers
em vez de, Let $a,b$ be numbers
já que não há razão para evitar a quebra de linha entre as variáveis. Por outro lado, você pode querer escrever Let $a,b\in Z
em vez de, Let $a$, $b\in Z$
pois pode querer proibir a quebra de linha entre as variáveis aqui.
Mas, na minha opinião, mesmo no segundo caso, a quebra de linha entre $a$
e $b$
ainda seria melhor do que a quebra de linha depois de \in
, então faria mais sentido, acho, incluir alguma penalidade positiva menor do que \relpenalty
depois da vírgula.
Outro exemplo: tendo a definir mapas em matemática como $f\colon A\to B$
(acho mais apropriado usar os dois pontos como sinal de pontuação em vez de relação neste contexto, ou seja, ter espaço apenas depois dos dois pontos, mas não antes). Neste exemplo, o TeX permite quebra de linha após \to
, mas não depois de \colon
, onde é definitivamente mais apropriado.
A solução mais fácil para ambos os problemas é provavelmente usar os sinais de pontuação apenas fora do modo matemático e talvez redefinir a macro \colon
para incluir alguma penalidade. (Possibilidades adicionais foram consideradas em outro tópicoPermitindo quebra de linha em ',' no modo matemático embutido?) No entanto, estou bastante interessado em saber a razão pela qual o TeX se comporta assim, já que talvez eu esteja supervisionando algo importante.
EDIT: @egreg nos comentários teve um ponto interessante sobre pares ordenados, que, no entanto, ilustra ainda melhor o quão absurdo é o comportamento na minha opinião.
Então, se tivermos um par ordenado (a,b), certamente não queremos quebrá-lo. Isso pode ser visto como um argumento para proibir quebras após a vírgula. Mas agora considere ter um par (a+b,c). Aqui, o TeX permite a quebra após o sinal de mais, mas não após a vírgula. Mas quebrar depois do sinal de mais faz ainda menos sentido do que depois da vírgula. Por outro lado, tendo uma tupla mais complicada, como (a+b,a2 +b2 ,a3+b3 ), acho que não seria nada ruim quebrá-lo depois da vírgula, mas definitivamente ruim quebrá-lo depois do sinal de mais.
Por fim, observe que se a pontuação permitia a quebra de linha, então uma maneira interessante de proibir a quebra de linha no par simples (a,b), seria escrevê-lo em um grupo ${(a,b)}$
, o que de alguma forma respeita a lógica interna da fórmula.
Responder1
Uma resposta, como é esse comportamentosignificoué aparentemente fornecido no TeXbook (p. 173)
Por exemplo, se você digitarno meio do parágrafo, há uma chance de o TEX quebrar após qualquer um dos sinais = (ele prefere isso) ou após - ou + ou - (em uma emergência). Mas, de qualquer forma, não haverá um intervalo após a vírgula - vírgulas após as quais os intervalos são desejáveis não devem aparecer entre $'s.$f(x,y) = x^2-y^2 = (x+y)(x-y)$
Se você quiser permitir uma quebra em algum ponto do nível externo de uma fórmula, você pode dizer \allowbreak. Por exemplo, se a fórmulaaparece no texto de um parágrafo, o TEX permitirá que ele seja dividido em duas partes '(x1 , ...,xm ,' e 'sim1 , ...,simn )'.$(x_1,\ldots,x_m,\allowbreak y_1,\ldots,y_n)$
Não acho isso muita sorte, mas acho que terei que lidar com isso.
EDITAR: Para concluir o tópico de alguma forma e tornar esta uma resposta exaustiva à minha própria pergunta, deixe-me compartilhar minha solução para isso.
Em relação à quebra de linha após vírgula, eu defino
\def\ppen{\penalty300 } %punctuation penalty
\let\col=\colon
\def\colon{\col\ppen}
Ou seja, após cada \colon
, há uma penalidade \ppen
de magnitude 300. Agora pode-se usar \ppen
também em outros lugares, como (a,\ppen b+c)
na composição de pares ordenados.