3

I am writing a linguistics text with lots of macrons on vowels (\=a etc.), using a garamond font. The macrons come out positioned much higher compared to the normal usage in linguistics books and papers. Is there a way to lower all macrons?

I am using pdflatex and URW Garamond No.8 font.

\documentclass[12pt,a4paper]{article}  
\usepackage[T1]{fontenc}
\usepackage{garamond}

\begin{document}\garamond
\textrm{\=a \=e \=\i\ \=o \=u \=y}

\textrm{\=A \=E \=I \=O \=U \=Y}

\textit{\=a \=e \=\i\ \=o \=u \=y}

\textit{\=A \=E \=I \=O \=U \=Y}

\end{document}

enter image description here

  • 5
    What Garamond font? The placement of the macron depends on information in the particular font. Besides, are you using pdflatex, XeLaTeX or LuaLaTeX? – egreg Oct 6 '16 at 10:55
  • 3
    egreg's comment highlights the importance of providing a minimum working example (code that compiles) to assist your readers in helping you. – Steven B. Segletes Oct 6 '16 at 11:19
  • Thanks to egreg for a solution which is a big improvement! I find that ebgaramond places macrons well on roman, but very badly on italic (which I use a lot), so some solution like this is still needed. – KeithB Oct 6 '16 at 12:04
  • @KeithB I added a fix for italics – egreg Oct 6 '16 at 15:56
  • Worth just mentioning that macron positioning is purely a design choice, with no more significance than, say, the presence or absence of swashes. Of course, this is a perfectly legitimate request and macron positioning can be significant to how easy the font is to read, or how much you like the look, and there's nothing wrong with wanting to adjust it. But the fact that they are much higher compared to the normal usage in linguistics books and papers doesn't change the meaning or anything. Although it may of course fail to please you or your audience – Au101 Oct 6 '16 at 17:25
2

Here's a possibility, assuming you're using the font as installed through getnonfreefonts on TeX Live.

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{garamondx}

\UndeclareTextCommand{\=}{T1}
\makeatletter
\DeclareTextCommand{\=}{T1}[1]{%
  \leavevmode\vbox{%
    \sbox\z@{#1}%
    \dimen@=\ht\z@ \advance\dimen@-1ex
    \dimen@=\strip@pt\fontdimen1\font\dimen@
    \ialign{\hfil##\hfil\cr
      \hidewidth\kern.5\dimen@\char9\hidewidth\cr
      \noalign{\nointerlineskip}
      \noalign{\kern-1.25ex}
      #1\cr
    }%
  }%
}
\makeatother



\begin{document}

\=a\=e\=o\={\i}\=u \=A\=E\=I\=O\=U

{\itshape\=a\=e\=o\={\i}\=u \=A\=E\=I\=O\=U}

\LARGE
\=a\=e\=o\={\i}\=u \=A\=E\=I\=O\=U

\footnotesize
\=a\=e\=o\={\i}\=u \=A\=E\=I\=O\=U

\end{document}

enter image description here

For comparison, here's the output without the redefinition of \=, which indeed shows quite high macrons.

enter image description here

Just for information, here's the output with \usepackage{ebgaramond} and no redefinition of \=.

enter image description here

  • looks like \usepackage{ebgaramond} could use some polishing. it does do better kerning on the "i" than the redefinition. or maybe the redefinition could ignore the width of the macron. – barbara beeton Oct 6 '16 at 13:00
  • @barbarabeeton That's a good idea – egreg Oct 6 '16 at 13:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.