
Estou escrevendo um documento em hebraico (RTL) com equações e compilo com xelatex. Os números das equações estão errados e descobri que colocar \LTR
a etiqueta antes da equação corrige isso. Eu criei um ambiente que com isso, mas algo está errado. Quando tento compilar isso, por exemplo:
\documentclass[11pt]{article}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{hyperref}
\usepackage{xltxtra}
\usepackage{bidi}
\setmainfont{Arial}
\tolerance=1000
\providecommand{\alert}[1]{\textbf{#1}}
\newenvironment{ltreq}[1]{
\LTR
\begin{equation}
{1}}
{\end{equation}
\RTL}
\begin{document}
\RTL
\begin{ltreq}
\left . \frac{\partial f}{\partial y} \eta \right |_{x_1}^{x_2} -\int_{x_1}^{x_2} \frac{\partial f}{\partial y'} \eta dx
\end{ltreq}
\RTL
\end{document}
Eu recebo este erro:
l.22 ...frac{\partial f}{\partial y} \eta \right |
_{x_1}^{x_2} -\int_{x_1}^{...
Acho que minha abordagem foi muito ingênua. Como posso conseguir isso?
Responder1
Você especificou que o ltreq
ambiente tem um argumento, então ele está engolindo o \left
no início da equação. Se você remover o [1]
da definição, funciona:
\documentclass[11pt]{article}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{hyperref}
\usepackage{xltxtra}
\usepackage{bidi}
\setmainfont{Arial}
\tolerance=1000
\providecommand{\alert}[1]{\textbf{#1}}
\newenvironment{ltreq}{
\LTR
\begin{equation}}
{\end{equation}
\RTL}
\begin{document}
\RTL
\begin{ltreq}
\left . \frac{\partial f}{\partial y} \eta \right |_{x_1}^{x_2} -\int_{x_1}^{x_2} \frac{\partial f}{\partial y'} \eta dx
\end{ltreq}
\RTL
\end{document}