As others have said in their answers there are a number of packages that provide upright Greek letters, e.g., upgreek
, textgreek
, kpfonts
, fourier
, newtxmath
, ... which one to choose is in my eyes mainly a design question: which one fits best to the document's main font?
Since in chemistry upright Greek letters are used in a number of different places (particle symbols such as in your question, IUPAC names, ...) the chemgreek
package defines a number of mappings for those different packages to macros \chemalpha
, \chembeta
, etc. (48 in total) and also allows to define own mappings. It does not load any of those packages so the choice is still up to the user. The advantage is that chemmacros
(or other chemistry packages like mhchem
) can simply use the \chem<letter>
commands internally and the corresponding output will match the choice made by the user.
This can be used to define particle macros yourself:
\documentclass{article}
\usepackage[T1]{fontenc}
% three different packages for demonstration purposes:
\usepackage{upgreek}
\usepackage{textgreek}
\usepackage{kpfonts}
\usepackage{chemmacros}[2014/01/24]% loads `chemgreek'
% just to overwrite kpfonts as default font:
\usepackage{lmodern}
% define the particles; the second argument is placed in`chemformula's \chcpd
% command
% the negative space before the `e' should be chosen depending on the actual
% choice:
\NewChemParticle{\eneutrino}{\chemnu_{$\!\!e$}}
\NewChemParticle{\belectron}{\chembeta-}
\NewChemParticle{\bpositron}{\chembeta+}
\newcommand*\pkg[1]{\textsf{#1}}
\begin{document}
\selectchemgreekmapping{upgreek}
\pkg{upgreek}: \eneutrino\ \belectron\ \bpositron
\selectchemgreekmapping{textgreek}
\pkg{textgreek}: \eneutrino\ \belectron\ \bpositron
\selectchemgreekmapping{kpfonts}
\pkg{kpfonts}: \eneutrino\ \belectron\ \bpositron
\end{document}
There's a technical and an aesthetical side to most of the questions you're asking:
1.1) For your purposes, a tech report with maths etc.: none of them. You'll have trouble finding math supplements that go well with any of these fonts. Yes, there are packages that set out to provide math symbols supposed to look good with »Garamond«, but the huge number fonts with »Garamond« in their names vary considerably in terms of their look.
A package providing TeX support for a Garamond will most likely be geared towards one of the free Garamond versions, such as URW's (an early digitization of the Stempel version from the 1920s). It may be, but IMHO will rather not be suitable for AGPPro ...which is a highly idiosyncratic rendition of C. Garamond's typefaces.
What I suggest, from a technical/practical perspective is: choose a font that comes with sufficient math support out of the box, or one where you're certain that suitable high-quality math support is available (such as MinionPro).
1.2) The three fonts you list are designed as rather faithful renditions of faces created 500 years ago (unlike e.g. TNR, which doesn't have one specific model). They're explicitly citing the aesthetics of that time -- this is the case with the two (very different) Bembo renditions, and it is even more the case with AGPPro. Both AGPPro and BBook are, in addition, designed to reproduce the look of letterpress printing to some degree.
None of this is a problem per se, but typography is not art for art's sake, but rather halfway between an art and a craft IMHO. So you have to make sure your typeface choice is appropriate within the context of your product. Questions like: »what's the message brought across by a document that tries to look like it's been printed in 1540?«, or »what kind of aesthetics is my audience used to?« are the ones you should consider here.
2) The old (1990s) digital renditions of Bembo were infamous for their thin and anemic look in print. They were horrible digitizations of horrible photo-type-izations of a typeface that was, and remains, sublime in hot metal. These digitizations were shunned by most decent typographers, which I understand perfectly well, having compared books set in Bembo from the three typographic eras side by side.
Now all this was supposed to change with Bembo Book. It was advertised as a font that would bring back the look of that hot metal legend. It didn't. It's about eight (?) years ago IIRC, that MT released BBook, but it still hasn't caught on. Yes, the strokes are sturdier, the thinness is gone, but like its predecessors it lacks any sparkle, and, unsuprisingly, comes nowhere near the original that it's (and has to be) measured by. So that's a strict NO for your Bembo Std, and an if-need-be for Bembo Book, in terms of aesthetics and reading comfort.
AGPPro... one guideline (I'm not saying ›rule‹) is that typography is best when it's invisible. Reading comfort is reduced the more the typography (e.g., the typeface) is making the reader aware of its presence. The more you deviate from what readers are used to, or what just »works«, the more this will be the case. Try setting your text ragged-left (!), for example. For typefaces, the equivalent of a left rag would be choosing a particularly idiosyncratic typeface, i.e. one that draws attention to itself (which is what it all boils down to). Within the range of text faces currently on the market, AGPPro is clearly on the idiosyncratic side of the spectrum (which is why it's hardly being used for serious book production).
The other side of that spectrum we might call »inconspicuous« ones and put, say, TNR or Minion there. The degree of perceived idiosyncracy will of course be dependent on what your readers are used to. Computer Modern will look odd to people from the humanities, but will make maths people feel at home. In Germany, Stempel Garamond (unlike AGPPro) is one of the most inconspicuous choices simply because literally generations have been socialized with it in school, while, conversely, New Century Schoolbook (and classicist or »didone« or »modern« faces in general) look weird to most people over here.
I see I need to keep it more concise:
3) what features do you need? I suggest you consider that question first, and then see what fonts might offer it. At the moment, I'm having trouble understanding the role you have in mind for, say, swashes in a tech report ;)
4) as you're already using LuaLaTeX, you already got the most appropriate tool available in the TeX world. ConTeXt might be another good choice. But choose wisely, as jumping ships between the two might be difficult once your project has taken up speed.
Swashes -- I'm afraid you're trying to do something that, by its very nature, won't work. A swash is usually defined as a calligraphy-style embellishment, mainly for capital letters. The »calligraphy« part is important here, as it's the italic cuts of a typeface that make reference to handwriting. And it is, traditionally, only here that you'll find swashes. So unless AGPPro's specimen sheet says otherwise, there'll be no upright swashes in AGPPro. This, on the other hand, works fine (in LuaLaTeX):
\documentclass{article}
\usepackage{fontspec}
\setmainfont[Contextuals=Swash]{Minion Pro}
\begin{document}
\itshape
Quad Qed Jawohl
\end{document}
Best Answer
Update
The simplest solution is now to use ebgaramond-maths, a new package available from CTAN.
ebgaramond-maths
is now included in TeX Live. If you have TeX Live 2014 installed, you should get the package when you update. (For example, runningtlmgr update --all
at the command line or using your GUI wrapper of choice.)The answer below is now likely to be useful only if you want to tweak the results or apply the method to a different font.
Original Answer
Setting up the \mathcal stuff is relatively straightforward. Setting up the OML support is less so.
Provide OML support for EBGaramond
Several approaches are possible. I've taken what seemed to me to be the simplest given the way the existing ebgaramond package works. I would probably do this differently if I was generating support for both text and mathematics from scratch but in this case I'm trying to avoid duplication of effort as much as possible.
Variables
Make a working directory somewhere which I'll call
${work}
. Doesn't matter where so long as you have permission to write there. (Don't do this as root, obviously.)I'll call
${texmain}
your main, current texmf directory. On my system, that's/usr/local/texlive/current
or/usr/local/texlive/2013
.Working environment
Change to
${work}
. From now on, I assume that all commands are executed in this directory and that all created files are saved here.Copy needed files to your working directory or make symbolic links if preferred:
or
Create a preliminary encoding file
This is not the encoding file you'll finally tell TeX about but it will form the basis for that file.
First, run fontinst in interactive mode. (That is, just type 'fontinst' as the command.) At the prompt:
This will produce oml-ebgaramond.enc which you can lightly modify before feeding to otftotfm.
Generate the TeX font
ebgaramond already provides the type1 files you need so there is no need to regenerate those. All that is required is to generate a suitable .tfm.
This will create both the .tfm file and the .map file fragment TeX needs to use the font. Essentially, the .tfm just is a font as far as TeX is concerned. (pdfTeX sees things slightly differently - it wants the type1 bit as well.)
It will also create a new encoding file with what will almost certainly be a very weird name. This is the encoding file TeX will use, as specified in the .map file fragment. oml-ebgaramond.enc can now be deleted if you wish as it is no longer required.
Create the font definition for LaTeX
otftotfm does not generate font definition files for LaTeX as far as I can tell but the file is pretty simple in this case. Create a file with the following content:
and save it as
OMLEBGaramond-Maths.fd
. This tells LaTeX what the font family EBGaramond-Maths consists of in the OML encoding. Specifically, it tells it which TeX fonts belong to this family in this encoding and the characteristics of each one. (In this case, there's only one such font which is then substituted for other weights as there is no bold in EBGaramond and OML only cares about the italic shape.)Create a package file for LaTeX (optional)
It is generally easier to load a package than repeat the font set up each time you wish to use a particular configuration, so I would create a LaTeX package. To do so, create another file with the following content:
and save it as
ebgaramond-maths.sty
.Then, from ${work} the result can be tested prior to installation of the fonts:
produces: