\mathellipsis en XeLaTeX con mathspec

\mathellipsis en XeLaTeX con mathspec

Siguiendo las solucionesSignos de puntuación en modo matemático en xetex/mathspecyProblema de puntuación de XeTeX/mathspec, Estoy haciendo ajustes a mathspec para obligar a XeTeX a usar signos de puntuación de la fuente apropiada. Sin embargo, el espaciado de los puntos suspensivos no se puede hacer correctamente cuando va seguido de una coma. LaTeX, por supuesto, no tiene ningún problema. MWE (pdftex da un error en ^^^^ caracteres, pero no importa; Old Standard es una fuente gratuita):

\documentclass{article}
\usepackage{amsmath}
\usepackage{iftex}
\ifXeTeX
\usepackage{mathspec}
\defaultfontfeatures{Mapping=tex-text}
\setallmainfonts{Old Standard}
\makeatletter
\def\eu@MathPunctuation@symfont{Latin:m:n}
\DeclareMathSymbol{,}{\mathpunct}{\eu@MathPunctuation@symfont}{`,}
\DeclareMathSymbol{.}{\mathord}{\eu@MathPunctuation@symfont}{`.}
\XeTeXDeclareMathSymbol{^^^^2026}{\mathinner}%
        {\eu@MathPunctuation@symfont}{"2026}[\mathellipsis]
\makeatother
\fi
\begin{document}
$\left<i_1, i_2,\ldots,i_n\right>$
\end{document}

¿Alguien tiene alguna sugerencia sobre qué hacer?

Respuesta1

Quizás esto sea lo que estás buscando:

\documentclass{article}
\usepackage{amsmath}
\usepackage{mathspec}
\usepackage{newunicodechar}

\defaultfontfeatures{Ligatures=TeX}% not needed with last version of fontspec
\setallmainfonts{Old Standard}

\makeatletter
\def\eu@MathPunctuation@symfont{Latin:m:n}
\DeclareMathSymbol{,}{\mathpunct}{\eu@MathPunctuation@symfont}{`,}
\DeclareMathSymbol{.}{\mathord}{\eu@MathPunctuation@symfont}{`.}
\XeTeXDeclareMathSymbol{^^^^2026}{\mathinner}%
        {\eu@MathPunctuation@symfont}{"2026}[\mathellipsis]
\AtBeginDocument{\renewcommand{\mathellipsis}{\mathinner…}}
\newunicodechar{…}{\ifmmode\mathinner…\else…\fi}
\makeatother

\begin{document}
Here… again

Here\ldots{} again

$\langle i_1, i_2,\ldots,i_n\rangle$

$\langle i_1, i_2,\dots,i_n\rangle$ % better!

$\langle i_1, i_2,…,i_n\rangle$

\end{document}

Tenga en cuenta que no está definido como \mathinner, mientras que \mathellipsissimplemente lo hace (de forma predeterminada). Entonces redefino \mathellipsisy también la acción de , por lo que debería ser correcta en todos los casos.

ingrese la descripción de la imagen aquí

información relacionada