コメント付きの方程式の自動配置

コメント付きの方程式の自動配置

この質問から新しいパッケージが生まれました:
conteq

私は複数の方程式や不等式の連鎖とオプションの説明を含む論文を書いています。方程式の大きさに応じて、次のいずれかを使用します。

\documentclass{article}
\usepackage{amsmath}
\begin{document}
Short style:
\begin{align*}
lhs1 &= rhs1 && \text{expl1} \\
     &\le rhs2 \\
     &= rhs3 && \text{expl3}
\end{align*}

Medium style:
\begin{align*}
lhs1 &= rhs1 \\
     &\phantom{{}={}} \text{expl1} \\
     &\le rhs2 \\
     &= rhs3 \\
     &\phantom{{}={}} \text{expl3}
\end{align*}

Large style:
\begin{align*}
     &\phantom{{}={}} lhs1\\
     &= rhs1 \\
     &\phantom{{}={}} \text{expl1} \\
     &\le rhs2 \\
     &= rhs3 \\
     &\phantom{{}={}} \text{expl3}
\end{align*}
\end{document}

これは見た目は良いですが、切り替えが不便です。そこで、次の形式の入力に対して適切な出力を生成する3eqchainsつの環境を用意したいと思います。eqchainmeqchainl

\begin{eqchain?}
lhs1 &= rhs1 & expl1 \\
     \le rhs2 \\
     = rhs3 & expl3 
\end{eqchain?}

(もちろん、 は他の記号でも構いません) 。&説明のスタイルをマクロを再定義して変更できる場合は、ボーナスポイントが付きます。例:\newcommand{\eqchainexpl}[1]{\text{\{ \textit{#1} \}}

eqchainそして、もしそれが可能であれば、次のヒューリスティックを使用して適切な環境を自動的に選択する環境が欲しいです: lhs1 と最大の rhs を合わせた値が の ⅔ より小さい場合は、\linewithを使用します。lhs1eqchainsと最大の rhs が より小さい場合は、\linewidthを使用しますeqchainm。それ以外の場合は を使用しますeqchainl。最後に、説明が に設定され、\parbox長い説明が折り返されて数式コンテンツの水平方向の配置に影響を与えない場合は、ボーナスポイントになります。

答え1

既存のパッケージではこの機能を提供できなかったようなので、自分で作ってみました。conteqパッケージレイアウトの自動選択は(まだ)行われませんが、いくつかのレイアウトが提供されており、新しいレイアウトを簡単に追加できます。

関連情報