「.RB」と「.IR」を使用してオプションとパラメータの間の改行を防ぐ方法は?

「.RB」と「.IR」を使用してオプションとパラメータの間の改行を防ぐ方法は?

コマンドのマニュアルページを作成する場合、要約には以下が含まれます。

.RB [ \-v
.IR version ]

残念ながら、要約書式を指定する場合、「[-v」と「バージョン]」の間に改行があります。

これをどのように避けることができますか?

明白なものを追加

想像力が不足しており、何度も要求したように問題を示すスクリーンショットと一緒に長い入力例があります。 書式設定の例のスクリーンショット(問題領域が強調表示されています)

ソースは次のとおりです。

.TH FOOBAR-DEMO 8 2022-03-16 "Charlie Brown" "System Administration"
.\"
.SH NAME
foobar-demo \- demonstration of manual formatting
.\"
.SH SYNOPSIS
.na
.nr hy-mode-save \n[.hy]
.hy 0
.B foobar-demo123
.RB [ \-a
.IR match_spec ]
.RB [ \-\-resource-agent
.IR match_spec ]
.RB [ \-v
.IR version ]
.RB [ \-\-version
.IR version ]
.hy \n[hy-mode-save]
.ad b
.\"
.SH DESCRIPTION
The purpose of this page is none...

答え1

Thomas Dickeyは正しい(そして移植可能な)解決策を持っていますが、あなたのようにフォント選択エスケープシーケンスのために少し目立たないと思います。私は好む男性(7) のフォントスタイルマクロです。

また、\(バックスラッシュスペース)エスケープシーケンスは次のようになります。返品割れない空間が調整される線の幅が固定されているため、目立って不快になることがあります。

したがって、私は\c壊れやすいスペースを挿入せずに入力ラインが終了するように出力ライン連続エスケープシーケンスを使用し、壊れないが調整可能なスペースを挿入する\~ためにエスケープシーケンスを使用することをお勧めします。

この例では調整をオフにしましたが、これから説明するようにこれは必須ではありません。これにより、\~問題なく輪郭線の線間を均一に調整できます。このエスケープシーケンスは、現在維持されているすべての項目に移植可能です。トロフィーIllumosのプロジェクトは除外されます。 小さな森(少なくとも)1991年から利用可能で、Heirloom Doctoolsは2005年9月から利用可能です。万毒(これはトロフィーしかし、マニュアルページは解析します)2009年9月からニトロフ2016年9月現在、ユーザースペースの計画9トロフィー2022年8月現在。

あなたの例では小さな森登録し.hy小さな森これを実装するための拡張補間構文です。使用する場合小さな森SY、あなたは/YS拡張を検討したいかもしれません男性(7) コマンド概要設定用のマクロパッケージです。2 (このマクロはハイフンパターンを保存して復元することもできます。)

.TH FOOBAR-DEMO 8 2022-03-16 "Charlie Brown" "System Administration"
.\"
.SH NAME
foobar-demo \- demonstration of manual formatting
.\"
.SH SYNOPSIS
.B foobar\-demo123 \" I escaped this hyphen as well.
.RB [ \-a\~\c
.IR match_spec ]
.RB [ \-\-resource-agent\~\c
.IR match_spec ]
.RB [ \-v\~\c
.IR version ]
.RB [ \-\-version\~\c
.IR version ]
.\"
.SH DESCRIPTION

答え2

マクロが邪魔になります。次のようにスペース(行が分割されていない)をエスケープして問題を解決できます。

.TH FOOBAR-DEMO 8 2022-03-16 "Charlie Brown" "System Administration"
.\"
.SH NAME
foobar-demo \- demonstration of manual formatting
.\"
.SH SYNOPSIS
.na
.nr hy-mode-save \n[.hy]
.hy 0
.B foobar-demo123
\fB[\-a\ \fImatch_spec\fR]
\fB[\-\-resource-agent\ \fImatch_spec\fR]
\fB[\-v\ \fIversion\fR]
\fB[\-\-version\ \fIversion\fR]
.hy \n[hy-mode-save]
.ad b
.\"
.SH DESCRIPTION
The purpose of this page is none...

答え3

おそらく、この行にはLFではなくCRLFが含まれています。

関連情報