
Eu tenho um teorema parecido com este:
Agora eu gostaria de quebrar a expressão matemática (A....D). O problema é que nada do que fiz a partir da solução deesseresposta ajudou (já que provavelmente as pessoas me direcionarão para essa resposta), ou seja:
- quebrar a expressão matemática em duas expressões matemáticas diferentes separadas por uma vírgula não adiantou nada e se eu adicionei uma
\\
ela quebrou a expressão, mas ficou feia já que a parte da segunda linha não estava alinhada corretamente à direita \allowbreak
Não fez nadaadicionando
\makeatletter \def\old@comma{,} \catcode`\,=13 \def,{% \ifmmode% \old@comma\discretionary{}{}{}% \else% \old@comma% \fi% } \makeatother
causou um erro, pois estou usando o TikZ onde alguns parâmetros são separados por vírgula.
Alguém conhece alguma outra solução, por favor?
Responder1
Como parece que a solução dePermitindo quebra de linha em ',' no modo matemático embutido?funciona para você, exceto que causa problemas em outros lugares, você pode restringir a redefinição do caractere de vírgula para ser local no parágrafo onde você está tendo esse problema, colocando-o em um grupo de chaves. Aqui apliquei esta redefinição apenas ao segundo parágrafo, e você pode ver que esta redefinição é local.
Notas:
- O
showframe
pacotefoi usado apenas para exibir as margens.
Código:
\documentclass{article}
\usepackage{showframe}
\begin{document}
Here is some very long text followed by a very long equation like $a,b,c,d,e,f,g,h,i,j,k,l$ etc
{
\def\OldComma{,}
\catcode`\,=13
\def,{%
\ifmmode%
\OldComma\discretionary{}{}{}%
\else%
\OldComma%
\fi%
}%
Here is some very long text followed by a very long equation like $a,b,c,d,e,f,g,h,i,j,k,l$ etc.%
}
Here is some very long text followed by a very long equation like $a,b,c,d,e,f,g,h,i,j,k,l$ etc
\end{document}
Responder2
Sem um exemplo mínimo (que na verdade roda sozinho), só podemos adivinhar, mas minha suspeita é que você use \left( A ... \right)
. Se for esse o caso, nada irá quebrar o que você tentar, porque a construção \left
/ \right
produzirá uma subfórmula que é inquebrável.
A única solução nesse caso seria não usar \left
/ \right
mas \bigl
e \bigr
(ou \biggl
qualquer tamanho que você precise para os parênteses). Então \allowbreak
por dentro deve funcionar.
Responder3
Adicione \penalty 0
(deixe um espaço após o zero) após a vírgula onde deseja que fique a quebra. Isso adicionará um ponto de interrupção adequado.
No entanto, este deveria ser realmente o último recurso. Experimente modificar o parágrafo para se adequar melhor à fórmula.