
Es hora de la incompatibilidad de la semana entre babel y hebreo (o de derecha a izquierda) de Eyal; y esta vez, es hiperref nuevamente.
Si usted tiene:
\documentclass{article}
\usepackage[hebrew,english]{babel}
\usepackage{hyperref}
\begin{document}
\selectlanguage{hebrew}
מלל בעברית, \L{Some English within the Hebrew} ועוד עברית לאחר מכן.
\end{document}
Obtienes lo siguiente:
si usa solo babel sin hyperref, obtendrá el efecto esperado de \L
:
Esto es bastante fácil de solucionar, pero lo acabo de notar, pensé que era una parte extraña de mi otro problema de compatibilidad con babel+hyperref. ¿Por qué hyperref haría esto?
Para aquellos interesados, aquí estáalguna información sobre el carácter Ł.
Respuesta1
Aquí está la solución obvia:
\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 es la definición de \L
levantado de rlbabel.def
. Alternativamente, si recuerdas no usarlo \L
, no lo redefinas, solo usa algo como \def\babelL{\protect\pL}
.
Respuesta2
Aparentemente previeron que eso \L
sería polémico, por lo que rlbabel proporciona una macro para restablecer su definición.
\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}
PD: Un problema molesto que encontré mientras depuraba esto fue que tan pronto como restablecí el significado de izquierda a derecha, comencé a recibir Command \hebalef unavailable in encoding T1.
errores. Me tomó mucho tiempo darme cuenta de que tenía un no terminado \L{...
(anteriormente generaba Ł pero permanecía en modo hebreo, donde funcionaban los caracteres).