Estoy escribiendo un documento en el que estoy usando una fuente diferente a la predeterminada de LaTeX. Estoy usando EB Garamond, entre cuyas características se encuentran los números en minúsculas de estilo antiguo. Estoy de acuerdo con esta característica y me gustaría que casi todos los números presentes en el documento estuvieran en este formato.
Sin embargo, no todos los números. Estoy numerando algunos párrafos precediéndolos así:§ [número].---[texto] (p. ej.§ 1.---[texto].). Preferiría que el número estuviera en "mayúsculas", lo que EB Garamond permite a través de las funciones de fuente tnum
y lnum
.
Dado que utilizaré con frecuencia la notación de numeración antes mencionada, pensé que definir un nuevo comando sería lo más eficiente; un nuevo comando que aplicaría la característica de fuente anterior al número. Llamé al comando \num
:
\newcommand{\num}[1]{
{\addfontfeatures{RawFeature={+tnum, +lnum}}#1}.
}
Soy un completo novato cuando se trata de crear nuevos comandos; Este tuvo éxito, sin embargo, aunque no del todo como yo quería. El nuevo comando \num
cambió efectivamente el número a mayúsculas (vea la segunda línea del texto en la imagen adjunta), introdujo espacios vacíos a la izquierda y a la derecha del número (use las líneas rojas agregadas para comparar el espaciado con las otras líneas).
Quizás no sea la mejor idea, pero pensé en agregar \(
y \)
a ambos lados; y eliminó el espaciado como deseaba, pero cambió la fuente del número a la predeterminada (ver línea tres en la imagen adjunta).
Mi pregunta:¿Qué debo agregar o cambiar en la definición del nuevo comando, o en cualquier parte del documento, para eliminar el espacio extraño alrededor del número?y¿Conservar la fuente del número, EB Garamond?
El MWE:
\documentclass[10pt]{memoir}
\usepackage[T1]{fontenc}
\usepackage{fontspec}
\setmainfont{EB Garamond}
\newcommand{\num}[1]{
{\addfontfeatures{RawFeature={+tnum, +lnum}}#1}.
}
\begin{document}
§ 5.---To the left is a lowercase, oldstyle Garamond 5.
§ \num{5}---To the left is an "uppercase" Garamond 5. NB the spacing with the command.
§ \(\num{5}\)---As before, but the attempt to remove the spacing changed the font of the 5.
The above are some visual examples. Oldstyle lowercase numerals: 1234567890.
\end{document}
Y la imagen, con líneas rojas añadidas para resaltar el extraño espaciado que eliminaría:
Respuesta1
Como señaló en un comentario de David Carlisle, el error fue simple. Se agregaron espacios antes y después porque el nuevo comando se definió así:
\newcommand{\num}[1]{
{\addfontfeatures{RawFeature={+tnum, +lnum}}#1}.
}
Cuando debería haber sido:
\newcommand{\num}[1]{{\addfontfeatures{RawFeature={+tnum, +lnum}}#1}.}
La forma en que escribí el comando por primera vez agregó el espacio antes y después. Esta última forma no añade espacios no deseados. ¡Gracias nuevamente al Sr. Carlisle por su respuesta!