ハイフン文字が目に見えるのはなぜですか?

ハイフン文字が目に見えるのはなぜですか?

次の小さなサンプル ドキュメントの PDF 出力は、lualatex(バージョン beta-0.80.0) でコンパイルすると間違っています。

\documentclass{article}
\usepackage{fontspec}% {2016/02/01}{2.5a} 
\begin{document}
lm – Latin mod­ern fonts in out­line for­mats
\end{document}

隠されたハイフン文字(Unicodeソフトハイフン、HTMLエンティティ­)は表示されますが、表示されるべきではありません。出力は次のようになります。

lm – Latin mod-ern fonts in out-line for-­mats

テキストはCTAN Webサイトからコピーされました:

http://www.ctan.org/tex-archive/fonts/lm

同じ例を でコンパイルするとxelatex正しい出力が得られます。私は Linux で最新の TeXLive を使用しています。

答え1

ソフトハイフン文字が XeTeX/LuaTeX にとって何か意味があると思っているなら、残念ながらそれは間違いです。

XeTeX では表示されないのは事実ですが、それが機能することを意味するわけではありません。

ただし、 を表す文字を定義することはできます\-

\documentclass{article}
\usepackage{fontspec}                    

\usepackage{newunicodechar}
\newunicodechar{­}{\-}

\begin{document}

lm – Latin mod­ern fonts in out­line for­mats

\parbox[t]{0pt}{
lm – Latin mod­ern fonts in out­line for­mats
}

\end{document}

\parboxできるだけ多くのハイフネーションポイントを表示することが目的です。

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

行をコメントアウトしてみる\newunicodecharと、いいえ単語はハイフンで区切られます。

関連情報