groff "me"マクロを使用しますが、タイトルなどにはサンセリフフォントを使用します。

groff "me"マクロを使用しますが、タイトルなどにはサンセリフフォントを使用します。

ドキュメントの書式を設定するtroffを学んでいます。私はこのmeマクロが非常に役に立つと思い、使用を避けたいと思いますmommeすべての項目はデフォルトでセリフフォントであり、カバーやタイトルなどの大きなテキストには適していません。この段落のフォントをサンセリフにどのように変更できますか?

.ft H他のコマンドを試しましたが、.ft何もしないようです(ms/で動作しますmom)。

答え1

マクロは、さまざまな種類のテキストに次のフォント位置をme使用します。groff

  1. プレーンテキストフォント
  2. (使用していませんか?)
  3. タイトルフォントそして一部のフォント

セクションタイトルなどのテキストを設定すると、マクロはその場所に読み込まれたフォントを使用するように切り替えられるため、.ftマクロは効果がありません。たとえば、引き続き使用できます。

.sh 1 "\f(HBSection title"

セクションタイトルを太字のサンセリフフォントに切り替えますが、セクション番号はまだセリフフォントを使用します。

マクロファイルはmeフォントやポイントサイズなどに多くのパラメータを設定するため、数値レジスタなどを変更することで多くの興味深い内容を簡単に修正できますが、残念ながらこれはマニュアルでは扱いませんgroff_me(7)。また、マクロファイルにもよく隠されていますe.tmac(ファイルにコメントが削除されたため)。それを理解するために、ソースディストリビューションe.tmac-uから元の(削除されていない)ファイルを読み取る必要がありました。groff

.\"             *** PARAMETRIC INITIALIZATIONS ***
.
.
.rr x
.nr $v \n(.v00+\n(.sp-1/\n(.sp  \" vs as % of ps for .sz request
.nr $V \n($v                    \" same for displays & footnotes
.nr hm 4v                       \" header margin
.nr tm 7v                       \" top margin
.nr bm 6v                       \" bottom margin
.nr fm 3v                       \" footer margin
.nr tf 3                        \" title font: (real) Times Bold
.nr tp 10                       \" title point size
.hy 6
.nr bi 4m                       \" indent for blocks
.nr pi 5n                       \" indent for paragraphs
.nr pf 1                        \" normal text font
.nr pp 10                       \" normal text point size
.nr qi 4n                       \" indent for quotes
.nr qp -1                       \" down one point
.nr ii 5n                       \" indent for .ip's and .np's
.nr $m 1                        \" max number of columns
.nr $s 4n                       \" column separation
.nr sf 3                        \" section font -- Times Bold
.nr sp 10                       \" section title pointsize
.nr ss 12p                      \" section prespacing
.nr si 0                        \" section indent

セクションとタイトルフォントを太いサンセリフフォントに変更するには、次のようにします。

.fp 3 HB

フォントをHB場所3に読み込みます。これにより、マクロやその他のプログラムがフォントを選択します.sh

例:

.fp 3 HB
.bp
.sh 1 "Heading 1"
.lp
Text text.
.sh 2 "Heading 2"
.lp
Text text.

これは生成されます

groffのレンダリングされたPDF出力

関連情報