
É hora da incompatibilidade da semana entre babel e hebraico (ou da direita para a esquerda) de Eyal; e desta vez é hiperref novamente.
Se você tem:
\documentclass{article}
\usepackage[hebrew,english]{babel}
\usepackage{hyperref}
\begin{document}
\selectlanguage{hebrew}
מלל בעברית, \L{Some English within the Hebrew} ועוד עברית לאחר מכן.
\end{document}
Você obtém o seguinte:
se você usar apenas babel sem hiperref, obterá o efeito esperado de \L
:
Isso é muito fácil de contornar - mas acabei de perceber, pensei que era uma parte estranha do meu outro problema de compatibilidade do babel + hyperref. Por que o hiperref faria isso?
Para os interessados, aqui estáalgumas informações sobre o caractere Ł.
Responder1
Aqui está a solução óbvia:
\documentclass{article}
\usepackage[hebrew,english]{babel}
\usepackage{hyperref}
\def\L{\protect\pL}
\begin{document}
\selectlanguage{hebrew}
מלל בעברית, \L{Some English within the Hebrew} ועוד עברית לאחר מכן.
\end{document}
Esta é a definição de \L
retirado de rlbabel.def
. Alternativamente, se você se lembrar de não usá \L
-lo, não o redefina, apenas use algo como \def\babelL{\protect\pL}
.
Responder2
Aparentemente eles previram que isso \L
seria controverso, então rlbabel fornece uma macro para restabelecer sua definição.
\documentclass{article}
\usepackage[hebrew,english]{babel}
\usepackage{hyperref}
\HeblatexRedefineL % this stands for \def\L{\protect\pL}
\begin{document}
\selectlanguage{hebrew}
מלל בעברית, \L{Some English within the Hebrew} ועוד עברית לאחר מכן.
\end{document}
PS Um problema irritante que encontrei durante a depuração foi que, assim que restaurei o significado da esquerda para a direita, comecei a receber Command \hebalef unavailable in encoding T1.
erros. Levei muito tempo para perceber que tinha um unterminated \L{...
(anteriormente ele estava gerando Ł, mas permanecendo no modo hebraico, onde os caracteres funcionavam).