
Estoy usando unicode-math
(con XeLaTeX) para configurar mis fuentes de texto y matemáticas. Sin embargo, al usarlo Garamond-math
como fuente matemática, veo que el \prime
símbolo está demasiado cerca de la letra:
Estoy intentando redefinir el \prime
comando y, si es posible, me gustaría reasignarlo '
en modo matemático para que proporcione el espaciado correcto. Sin embargo, la solución "habitual" para redefinir \prime
, es decir (MWE)
\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Garamond-Math.otf}[StylisticSet={5,7,9}]
\let\originalprime\prime
\def\prime{\mkern3mu\originalprime\mkern-3}
\begin{document}
$f'(x)$
\end{document}
pero esta solución no parece funcionar en este contexto. yo también lo intenté
\usepackage{newunicodechar}
\AtBeginDocument{\newunicodechar{′}{\mkern3mu\prime\mkern-3u}}
pero nuevamente no tuvo ningún efecto.
Respuesta1
En unicode-math
el comando \prime
se define en términos de una función interna, que se utiliza cuando f'(x)
se procesa. Así que redefinir \prime
no sirve de nada, a menos quehacerusarlo explícitamente.
Desafortunadamente, no existe una interfaz para modificar el comportamiento. Pero lo siguiente funciona con la versión actual de unicode-math
. Sin embargo, debido al acceso a funciones privadas, no se garantiza que esto se mantenga estable en futuras versiones.
\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Garamond-Math.otf}[StylisticSet={5,7,9}]
\ExplSyntaxOn
\cs_set:Npn \__um_prime_single_mchar { \mkern2mu\Umathchar"0"0"2032\mkern-2mu~}
\cs_set:Npn \__um_prime_double_mchar { \mkern2mu\Umathchar"0"0"2033\mkern-2mu~}
\cs_set:Npn \__um_prime_triple_mchar { \mkern2mu\Umathchar"0"0"2034\mkern-2mu~}
\ExplSyntaxOff
\begin{document}
$f'(x)+f''(x)+f'''(x)$
$g'(x)+g''(x)+g'''(x)$
$h'(x)+h''(x)+h'''(x)$
\end{document}