xelatex の lualatex における否定のバイナリまたは関係記号

xelatex の lualatex における否定のバイナリまたは関係記号

この回答によるとhttps://tex.stackexchange.com/a/82121/16895 \notは、次の csname を検索し、またはunicode-mathで始まる csname があるかどうかを確認するために( で ) 定義されています。nnot

しかし、次のMWEを使用すると

\documentclass{article}

\usepackage{fontspec}
\usepackage{unicode-math}

\begin{document}
$a\not= b$  $a\neq b$

$\not\vdash$  $\nvdash$

$\not\vDash$ $\nvDash$

$\not\equiv$ $\nequiv$
\end{document}

私は

ここに画像の説明を入力してください

明らかに、 の組み合わせでは\not\...同等のグリフと同じ結果は生成されません。

上記の回答を誤解していますか? または、シンボルを否定する適切な方法は何ですか (ほとんどの場合、\not移植性の理由から を使用することを好みます。たとえば、\nequivはほとんどのフォントでは使用できませんが、包括的なシンボル ガイドによると、いくつかのパッケージで使用できますが、たとえば では使用できませんamssymb)。

答え1

バージョン0.7eから0.7fへのunicode-math変更点と定義

\cs_set_eq:NN \not \not_newnot:N

は、現在、unicode-math-table.tex

\UnicodeMathSymbol{"00338}{\not}{\mathaccent}{combining long solidus overlay}

読み込み順序が変わったようです。

回避策:

\documentclass{article}

\usepackage{fontspec}
\usepackage{unicode-math}
\ExplSyntaxOn
\AtBeginDocument{\cs_set_eq:NN \not \not_newnot:N}
\ExplSyntaxOff

\begin{document}

$a\not= b$  $a\neq b$

$\not\vdash$  $\nvdash$

$\not\vDash$ $\nvDash$

$\not\equiv$ $\nequiv$
\end{document}

ここに画像の説明を入力してください

関連情報