
Eu tenho dois requisitos. Posso atingir cada um desses dois requisitos separadamente, mas não consegui combiná-los.
Primeiramente preciso permitir a hifenização de palavras tracejadas (ex: "entendendo-se"), o que por padrão não é possível. Exemplo:
enten-
dendo-se
ou
en-
tendendo-se
Então, quando uma palavra é hifenizada, se a quebra de linha ocorrer no travessão, deverá adicionar outro travessão na linha seguinte (esta é uma regra da língua portuguesa). Exemplo:
entendendo-
-se
Eu sei que posso conseguir o primeiro usando o extdash
pacote with \-/
e posso conseguir o segundo definindo uma macro que substituirá os travessões por \discretionary{-}{-}{-}
.
Mas como posso combinar os dois requisitos em uma solução?
E por fim, mas não obrigatório, seria possível aplicar a solução a todos os travessões em alguma parte do texto (para que eu não precise substituir cada travessão por um comando [ou o que quer que seja usado])?
PS: Atualmente estou usando o compilador XeLaTeX.
EDITAR com mais informações
Exemplo de trabalho mínimo
\documentclass{report}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[portuguese]{babel}
\usepackage{hyphenat}
\begin{document}
\chapter{Exemplo}
Texto completamente aleatório, foi feito para demonstrar o porquê de entendendo-se não ser hifenizado corretamente.
\end{document}
Neste exemplo, a palavra entendendo-se
quebra no travessão, mas poderia ter sido quebrada antes.
- A solução para o meu primeiro requisito seria adicionar
\usepackage[shortcuts]{extdash}
e substituirentendendo-se
porentendendo\-/se
. Isso é necessário porque o LaTeX não quebra palavras tracejadas por padrão. Você verá que a palavra quebra mais cedo (porque o LaTeX acredita que isso deixa a primeira linha mais bonita) e essa é uma das coisas que quero alcançar. A palavra aparece assim:enten- dendo-se
- A solução para o meu segundo requisito seria substituir
entendendo-se
porentendendo\discretionary{-}{-}{-}se
. Você verá que, quando a palavra quebra no travessão, outro travessão é adicionado na próxima linha (que é uma regra portuguesa) e este é o meu segundo requisito. A palavra aparece assim:entendendo- -se
. Por favorobservaçãoque se a palavra não quebrar no travessão, nenhum travessão adicional deverá ser adicionado!
Porém, não consegui combinar os dois...
Responder1
Após algumas tentativas e erros, encontrei uma maneira de atender a ambos os requisitos:
\documentclass{report}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[portuguese]{babel}
\usepackage{hyphenat}
\begin{document}
\chapter{Exemplo}
Texto completamente aleatório, foi feito para demonstrar o porquê de entendendo\babelhyphen{repeat}se não ser hifenizado corretamente.
\end{document}
Para maior conveniência, poderíamos adicionar \defineshorthand{"-}{\babelhyphen{repeat}}
ao preâmbulo e substituir entendendo-se
porentendendo"-se