Fonte para o sinal de menos criado por $-6$ (hífen no modo matemático)

Fonte para o sinal de menos criado por $-6$ (hífen no modo matemático)

Quero especificar a fonte (no exemplo abaixo: Times New Roman) para todos os sinais de menos, independentemente de terem sido criados com o caractere Unicode "2212 ou com um hífen no modo matemático.

Se eu adicionar "2212 à opção de intervalo de \setmathfont, ele funcionará quando escrevo meu texto usando o caractere Unicode adequado "sinal de menos". Veja os dois primeiros 6 em meu exemplo.

Mas quando escrevo $-6$ (aqui - é um hífen comum), a saída é um sinal de menos correto, mas não em Times New Roman. Veja os últimos 6 no meu exemplo.

\documentclass{article}
\RequirePackage[silent]{fontspec}
\setmainfont{Times New Roman}
\RequirePackage{unicode-math}
\setmathfont{STIXTwoMath}[]
\setmathfont{Times New Roman}[ range = { up/{num,latin,Latin}, "2212 } ]

\begin{document}

%% Minus ("2212) in source code:
−6 and $−6$

%% Hyphen ("002D) in source code:
-6 and $-6$ 

\end{document}

Saída:

insira a descrição da imagem aqui

Alguém sabe como posso ter "acesso" ao hífen em ambientes $?

Responder1

Não sei por que isso acontece, mas se você disser range = { "2212, \minus }, funciona, mas você realmente precisa declarar ambos "2212e \minus:

\documentclass{article}
\RequirePackage[silent]{fontspec}
\setmainfont{Times New Roman}
\RequirePackage{unicode-math}
\setmathfont{STIX Two Math}
\setmathfont{Times New Roman}[ 
    range = { "2212, \minus } 
]

\begin{document}

%% Minus ("2212) in source code:
−6 and $−6$

%% Hyphen ("002D) in source code:
-6 and $-6$ 

\end{document}

insira a descrição da imagem aqui

Então, você pode querer fazer algo assim para selecionar a mesma fonte para os sinais de mais e menos:

\documentclass{article}
\RequirePackage[silent]{fontspec}
\setmainfont{Times New Roman}
\RequirePackage{unicode-math}
\setmathfont{STIX Two Math}
\setmathfont{Times New Roman}[ 
    range = { "2212, \minus, "002B } 
]

\begin{document}

-6 and $-6$ 

+6 and $+6$ 

\end{document}

insira a descrição da imagem aqui

Responder2

Eu sugiro que você escreva \textnormal{-}.

insira a descrição da imagem aqui

\documentclass{article}
\RequirePackage{unicode-math}
\setmainfont{Times New Roman}
\setmathfont{STIXTwoMath}[]
\setmathfont{Times New Roman}[ range = { up/{num,latin,Latin}, "2212 } ]

\begin{document}

%% Minus ("2212) in source code:
−6 and $−6$

%% Hyphen ("002D) in source code:
-6 and $\textnormal{-}6$ 

\end{document}

informação relacionada