An older font with upright Greek letters is AMS Euler. Loading eulervm
or eulerpx
will also set your Latin letters upright, but some packages have an option like eulergreek
to set only the Greek letters to Euler. The stix
and stix2
packages support Greek letters in \mathrm
. There is also an upright Greek font in fourier
. None of these are compatible with isomath
or listed in its manual because they use an encoding other than OML.
The lucidamatx
package supports math-style=upright
. The mathdesign
package supports greeklowercase=upright
.
The kpfonts
and mathdesign
packages support the commands \alphaup
–\Omegaup
. The upgreek
package supports \upalpha
–\upOmega
. Both newtxmath
and newpxmath
support \upGamma
as well as \Gammaup
, etc. The fourier
package supports \otheralpha
–\otherOmega
.
If using isomath
, you can either load mathdesign
and then \usepackage[OMLmathrm]{isomath}
, or get the math design fonts with, for example, \usepackage[OMLmathrm, rmdefault=mdput]{isomath}
for Math Design Utopia, or load an upright OML math font with \SetMathAlphabet
. See table 3 in the isomath
manual for the upright families that come in OML. (If you load mathdesign
, I would recommend you load erewhon
, garamondx
or XCharter
afterward to fix some bugs with its text fonts.)
I would recommend you use unicode-math
in LuaTeX when you can, and legacy math fonts when you have to. All OpenType math fonts contain upright Greek letters that you can use with, for example, \symup{\pi}
, \muppi
or \uppi
. You can also give unicode-math
the package option mathrm=sym
to make \mathrm{\pi}
an alias for \symup{\pi}
. If you do so, you should \setoperatorfont
and make sure to write \textnormal{iff}
, not \mathrm{iff}
, for words in math mode. Finally, you can give unicode-math
the option math-style=upright
.
\usepackage{upgreek}
, then you can write\upPsi
for example