人体の下線付き部分のレンダリング

人体の下線付き部分のレンダリング

を使用するためのドキュメントソースをman(1)(おそらくから)見ると、次のような行が見つかります。/usr/share/man/man1/man.1.gz

.IR page [.\| section \|]\ \|.\|.\|.\|]\ \.\|.\|.\&

これは man 2.8.3 によって次のようにレンダリングされます。

page[.section] ...] ... 
----  -------

-下線を示します。私が理解する方法は、エスケープされていないスペースを削除しIR(イタリック体を使用できないため、下線を引くことができる)と(これは通常のローマフォントです)の間で交互に使用することです。レンダリングは次のとおりです -IR\|

page[.section] ...] ... 
----  -------  - -  ?-

しかし、なぜそうではありませんか?

答え1

問題は、文字コードが実際に何をしているのかを誤解することです。 OssannaとKernighanのTroffユーザーマニュアルを見ると、次のことがわかります。

\|     1/6 em narrow space character (zero width in nroff)

したがって、実際にはフォント自体を変更するのではなく、スペースが不足しているだけです。フォント交換が発生する理由はスペース本文から(参照男(7))--

.IR page [.\| section \|]\ \|.\|.\|.\|]\ \.\|.\|.\&

このように4つに分かれています。

page
[.\|
section
\|]\ \|.\|.\|.\|]\ \.\|.\|.\&

フォントがその間を交互にして表示されるレンダリングを提供します。ページとセクションにはアンダースコアがあり、他のブロックにはアンダースコアはありません。

関連情報