
数式を含むヘブライ語 (RTL) 文書を書いていて、xelatex でコンパイルしています。数式の番号が間違っており、\LTR
数式の前にタグを配置すると修正できることが分かりました。それに対応した環境を作成しましたが、何かがおかしいです。たとえば、これをコンパイルしようとすると、次のようになります。
\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}
次のエラーが発生します:
l.22 ...frac{\partial f}{\partial y} \eta \right |
_{x_1}^{x_2} -\int_{x_1}^{...
私のアプローチはナイーブだったと思います。どうすればこれを達成できるでしょうか?
答え1
環境には引数が 1 つあると指定したため、式の先頭でltreq
が取り込まれています。定義から を削除すると、次のように動作します。\left
[1]
\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}