19

I would like to avoid the use of eqnarray. I would like to use the align environment instead.

However, I have an equation that I specify currently the following way:

\begin{eqnarray}
\lefteqn{f(a,b,c,d,e,...)} \\
& = & A
\end{eqnarray}

as you can see, I am using \lefteqn, and that cannot be used in the align environment (the reason for using \lefteqn is because f(a,b,c,...) is a very long term).

Any ideas how to do that with the align environment (something corresponding to the align environment)?

EDIT:

\lefteqn helps better alignment for long equations in a certain line. Whenever you have a long term appearing in a certain line, you can use lefteqn so that the line below is not put vertically right after the long line. It is hard to perhaps explain, but the idea is that you would get something like:

 very long text =
   continue here

instead of

  very long text =
                   continue here
5
  • I should mention that I learned using eqnarray is a bad idea here: tex.ac.uk/cgi-bin/texfaq2html?label=eqnarray following an advice I got here.
    – kloop
    Commented Nov 18, 2010 at 16:04
  • This question might benefit from an explanation of what \lefteqn is doing for you. I don't know, but I expect I might eventually want to use something like it at some stage...
    – Seamus
    Commented Nov 18, 2010 at 18:02
  • I hope I explain it now better above.
    – kloop
    Commented Nov 18, 2010 at 18:34
  • 1
    Now, \lefteqn as been integrated in align environment. No more need for \MoveEqLeft ;-)
    – user15934
    Commented Jun 25, 2012 at 14:04
  • Really? I don't think I've missed any update of amsmath and the documentation shows no trace of \lefteqn.
    – egreg
    Commented Jun 25, 2012 at 15:57

2 Answers 2

18

Use \MoveEqLeft from the mathtools package, like this:

\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{align}
\MoveEqLeft \text{very very long} \\
 &= \text{shorter}
\end{align}
\end{document}

Edit: If you feel that this doesn't move the first line far enough to the left, then use, e.g., \MoveEqLeft[4] instead of \MoveEqLeft. This moves the first line 4em to the left; the default is 2em. See also page 17 of the mathtools documentation.

1
  • I didn't know you could do that! Most useful. Commented Nov 18, 2010 at 16:43
2

I prefer combining multline with aligned:

\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{multline}
x=\\
\begin{aligned*}
 &= y\\
 &= z
\end{aligned*}
\end{multline}
\end{document}

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .