Füttert man xelatex
oder lualatex
mit
\documentclass{article}\pagestyle{empty}\usepackage{unicode-math}%%% siehe http://texwelt.de/fragen/26664/breiter-gravis-fur-pdflatex/26908\usepackage{graphicx}\makeatletter\newcommand\widegrave[1]{%\mathpalette\@wideaccent{{#1}{\mathchar"7012}}%}\newcommand*\@wideaccent[2]{%\@@wideaccent{#1}#2%}\newcommand\@@wideaccent[3]{%\setbox\@tempboxa\hbox{$\m@th#1#2$}%\@tempdima=\ht\@tempboxa \@tempdimb=\wd\@tempboxa \ooalign{%\box\@tempboxa\cr\hidewidth\raise\dimexpr\@tempdima-1ex\relax\hbox{\resizebox{\@tempdimb}{\height}{$\m@th#1#3$}}\hidewidth}%}\makeatother\begin{document} Gut: \(\grave{a}\)\ldots\ \(\grave{z}\)\(\grave{A}\)\ldots\ \(\grave{Z}\)\(\grave{\alpha}\)\ldots\ \(\grave{\omega}\)\(\grave{\Gamma}\)\ldots\ \(\grave{\Omega}\)\(\grave{\aleph}\)\\ Beschissen: \(\grave{lang}\)\\ Kompiliert nicht: \(\widegrave{x}\ \widegrave{lang}\)\end{document}
so entsteht
! Package graphics Error: Division by 0. See the graphics package documentation for explanation. Type H <return> for immediate help. ... l.26 Kompiliert nicht: \(\widegrave{x}\ \widegrave{lang}\) ? Q
in der Standardausgabe und
in der PDF.
Wie man sieht, ist der Gravis über „lang“ in der zweiten Zeile zu kurz.
Wir hätten gerne ein Macro \widegrave, das bei Kompilierung mit xelatex
mit unicode-math
über seinem Parameter
einen normalen Gravis liefert, wenn der Parameter einen kurzen Text (etwa einen Buchstaben) erzeugt, und
einen langen Gravis, wenn der Parameter einen langen Text (etwa mehrere Buchstaben) erzeugt, also einen langen Rückstrich \ über einem Wort, der mit der Länge des Arguments wächst und höchstens so lang ist wie das Wort selbst.
Ideen?