これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなど、複数の無料オンライン ワークステーションのいずれかを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド doclifter です。
プログラム:
NAME
doclifter - troff リクエストを DocBook に変換する
SYNOPSIS
ドクリフター [-e エンコーディング] [-h ヒントファイル] [-q] [-x] [-v] [-w] [-V] [-D トークン=タイプ] [-私 path]
[-私 path] file...
DESCRIPTION
ドクリフター troff マクロで書かれたドキュメントを DocBook に変換します。 の構造サブセット
のリクエスト man(7) mdoc(7) ms(7) me(7) mm(7)と、 troff(1) がサポートされています。
翻訳は、元のドキュメントのすべての構造をセクションに持ち込んで、
サブセクション、および段落レベル。 コマンドおよび C 関数の概要は、
単なる逐語表示ではなく、DocBook マークアップ。 テーブル (TBL マークアップ) は
DocBook テーブルのマークアップ。 PIC ダイアグラムは SVG に変換されます。 troff レベルの情報
XML コメントに保持される構造的な意味を持つ可能性があります。
可能な場合、フォント変更マクロは構造的マークアップに変換されます。 ドクリフター
マークアップとコンテンツの型にはまったパターンを認識します (イタリック体の使用など)。
ファイル名をマークするための FILES セクション)、それらを持ち上げます。 セマンティックを編集、追加、および保存する手段
強調表示に関するヒントがサポートされています。
一部の決まり文句は認識され、強調表示しなくても構造的なマークアップに持ち上げられます。
認識されるパターンには、URL、電子メール アドレス、man ページの参照、および
C プログラムのリスト。
タグ .IN .ti 要求は苦情とともに渡されます。 彼らは示す
プレゼンテーション レベルのマークアップ ドクリフター 構造に変換できません。 出力は
手で固定する必要があります。
タグ あたり テキストがすぐに続く場合を除き、苦情とともに通過します
行にタブが含まれている場合、タブを含む行の次のスパンが持ち上げられます
テーブルへ。
状況によっては、 ドクリフター フォーマットされたマニュアルページとテキストを持ち上げることさえできます
によって生成される出力 オオヤマネコ(1) HTML から。 入力にマクロが見つからないが、マクロが見つかった場合
NAME セクション ヘッダー、プレーン テキストをマニュアル ページとして解釈しようとします (スキップ
によって生成されるボイラープレートのヘッダーとフッター オオヤマネコ(1))。 このようにして作成された翻訳
構造的な特徴を見逃す傾向がありますが、このフォールバックは単純な人には十分です
ページ
ドクリフター 完璧な仕事をするわけではなく、驚くほど良い仕事をするだけです。 最終的な磨きはすべきです
コンピューターには微妙すぎるパターンを認識できる人間によって適用されます。 しかし
ドクリフター ほとんどの場合、以前に使用できるほど十分に優れた翻訳が生成されます
ハンドハッキング。
ドキュメント変換を解決する方法については、トラブルシューティングのセクションを参照してください。
問題は。
OPTIONS
引数なしで呼び出された場合 ドクリフター フィルターとして機能し、troff ソース入力を変換します。
標準出力の DocBook マークアップへの標準入力。 引数付きで呼び出された場合、それぞれ
引数ファイルは個別に変換されます (ただし、ヒントは保持されます。以下を参照してください)。 サフィックス
.xml は、翻訳された出力に与えられます。
-h
分析中に収集されたセマンティック ヒントに関する情報を格納するファイルに名前を付ける
書かれた。
-D
当学校区の -D ヒントを投稿できます。 これは、たとえば次のような場合に役立ちます。 ドクリフター is
トークンをコマンドとして認識しないため、概要を誤って解析します。 このヒントは
入力ソースのヒントが読み取られた後にマージされます。
-I
当学校区の -I オプションは、docfilter が検索するときに使用されるインクルード パスにその引数を追加します。
含有物。 インクルード パスは、最初は現在のディレクトリです。
-e
当学校区の -e 出力 XML で出力されるエンコーディング フィールドを設定できます。 これ
デフォルトは ISO-8859-1 (Latin-1) です。
-q
通常は、 ドクリフター 解釈できませんでした(通常、それらは
プレゼンテーション レベル) は、出力の XML コメントに渡されます。 -q オプション
これを抑制します。 また、マクロのリストも抑制します。 リクエストに関するメッセージ
認識されていないか、翻訳できない状態に関係なく、標準エラーに移動します
このオプション。 このオプションは、あなたが持っていると思われるときに混乱を減らすことを目的としています
ドキュメントをきれいに持ち上げて、troff のレガシーを失いたいと考えています。
-x
-x オプションは、 ドクリフター 生成された DocBook バージョン 5 互換の xml
デフォルトの DocBook バージョン 4.4 出力ではなく、内容です。 含有物と実体
このスイッチを有効にすると、正しく処理されない場合があります。
-v
-v オプションにより、 ドクリフター それが何をしているのかについてうるさい。 これは主に次の場合に役立ちます
デバッグ。
-w
厳密な移植性チェックを有効にします。 -w を複数回使用すると、厳密さが増します。
「移植性チェック」と呼ばれるセクションを参照してください。
-V
このオプションを指定すると、プログラムはバージョン メッセージを出力して終了します。
翻訳 RULES
全体として、フォントの変更は Remap を使用して Emphasis マクロに変換されることが期待できます。
troff フォント名から取得した属性。 基本的なフォント名は、R、I、B、U、CW、および SM です。
troff およびマクロ パッケージの特殊文字エスケープは、ISO 文字エンティティにマップされます。
日時 ドクリフター 遭遇する 。そう ディレクティブ、ファイルを検索します。 読み込めるなら
ファイルにアクセスして開くと、ファイルは完全にコマンドラインと
コメント、それが含まれます。 これらの条件のいずれかが失敗した場合、エンティティ参照
生成されます。
ドクリフター によって生成されるような表示を認識すると、特別な解析を実行します。
.DS/.DE. 最初に関数の概要を解析し、次にプレーンテキストを解析しようと繰り返し試みます。
ディスプレイに残っているもの。 したがって、ほとんどのインライン C 関数プロトタイプは、
構造化マークアップ。
特定の翻訳に関する注意事項:
男性 インタビュー
ドクリフター ほとんどのマニュアルページでうまく機能し、拡張について知っています UR/UE/UN URL
Linux でサポートされているリクエスト。 もしあれば 。あなたは リクエストが存在する場合、これらは翻訳されますが、
それらの外側の URL を Ulink タグでラップしないでください。 また、拡張についても知っています。 .L (リテラル)
Bell Labs バージョン 8 とその仲間からのフォント マークアップ。
当学校区の .TH マクロを使用して RefMeta セクションを生成します。 存在する場合は、日付/ソース/マニュアル
引数 (「 man(7)) これらのクラス属性を持つ RefMiscInfo タグ ペアでラップされます。
注意してください ドクリフター 日付を変更しません。
ドクリフター は、概要セクションを認識するときに特別な解析を実行します。 繰り返し
最初に関数の概要、次にコマンドの概要、そしてプレーンテキストの解析を試みます
セクションに残っているもの。
次の man マクロは、remap 属性を持つ強調タグに変換されます。 .B, .I,
.L, .BI, .BR, .BL, .IB, .IR, .IL, .RB, .RI, .RL, 。ポンド, .LI, .LR, .SB, .SM. いくつかのステレオタイプ
これらのマクロを含むパターンが認識され、セマンティック マークアップに変換されます。
次のマクロは段落区切りに変換されます。 .LP, .PP, .P, .HP、 そしてその
の単一引数形式 .IP.
の XNUMX 引数形式 .IP VariableList (通常) または
ItemizedList (タグが troff の黒丸または角文字の場合)。
次のマクロは、意味的に変換されます。 。NS,.SS, .TP, 。あなたは, .UE, 。国連, .IXに直接影響を与えます。健全とされるのは 。国連
直前に電話する 。NS or .SS 新しいセクションの ID を設定します。
当学校区の \*R, \*(Tm, \*(lq, \*(rq 記号が変換されます。
次の (純粋にプレゼンテーション レベルの) マクロは無視されます。 .PD,.DT.
当学校区の .RS/.RE マクロは、先行するかどうかに応じて異なる方法で変換されます
リストのマークアップ。 いつ .RS 直前に発生 .TP or .IP 結果はネストされたリストです。 さもないと、
.RS/.RE ペアは、Blockquote タグ ペアに変換されます。
.DS/。の 文書化された man マクロ セットの一部ではありませんが、表示されるため認識されます
古い Unix のレガシーな man ページで、ある程度の頻度で。
Ultrix で最初に定義された特定の拡張マクロは、構造的に変換されます。
Linuxやその他のマニュアルページに時折現れるものを含む
オープンソースの Unix。 。元/.ee (そして同義語 。元/.ええ), .Ds/.デ,
.NT/.NE, .PN, 。MS 構造的に変換されます。
X ディストリビューションで使用される次の拡張マクロも認識され、
構造的に翻訳: .FD, .FN, 。の, .ZN, .hN, .C{/.C} 当学校区の .TA 。の リクエストは
無視されます。
man マクロがアクティブな場合、 .Pp リクエストを含むマクロ定義 .PP 意志
無視されます。 およびすべてのインスタンス .Pp 交換された .PP。 同様に、 .Tp 交換されます
.TP. これは、頻繁に遭遇する問題に対処するための最も苦痛の少ない方法です。
そうでなければ深刻な解釈の問題を引き起こすステレオタイプのラッパー定義
人間の翻訳に関する既知の問題領域:
・変な使い方 .TP. これらは、無効な XML を生成する場合があり、場合によっては
生成された XML 内の FIXME コメント (警告メッセージも標準エラーに送られます)。
・男がどのようにマクロ化するかは議論の余地がある .HP .IP タグのないものは翻訳する必要があります。 私達
それらを通常の段落区切りとして扱います。 ぶら下がりを視覚的にシミュレートできます
リストマークアップを含む段落ですが、これは構造的な翻訳ではありません。
ポッド2マン インタビュー
ドクリフター によって生成された拡張マクロを認識します ポッド2マン (.Sh, .Sp, .IP, .Vb, .Ve)
それらを構造的に変換します。
によって生成されたページを持ち上げた結果 ポッド2マン 眼球で注意深くチェックする必要があります。
特に、コマンドと機能の概要のレンダリング。 ポッド2マン むしろ生成する
ひねくれたマークアップ; ドクリフターもつれを解くのに苦労することは、時には無駄です。
可能であれば、POD ソースから DocBook を生成してください。 pod2docbook モジュールがあります
これを行うCPAN。
タックマン インタビュー
ドクリフター Tcl/Tk ドキュメンテーション システムで使用される拡張マクロを認識します。 .AP,
。なので, .BS, 。なれ, .CS, .CE, .DS, 。の, 。それで, .SE, .UL, .VS, 。行くを選択します。 .AP, .CS, .CE, 。それで, .SE,
.UL, .QW .PQ マクロは構造的に変換されます。
マンドック インタビュー
ドクリフター ほとんどの場合、優れた仕事をすることができるはずです mdoc(7)ページは、このマクロなので
パッケージは多くの意味構造を表現しています。
mandoc 変換に関する既知の問題: すべて .Bd/.エド 表示ブロックは次のように変換されます
LiteralLayout タグのペア。
Ms インタビュー
ドクリフター ほとんどのミリ秒ページでうまく機能します。 注意すべき弱点は、
著者タグと所属タグの生成。 この情報をマイニングするために使用されるヒューリスティック
から .AU 通常の方法で名前をフォーマットする著者のためのセクションワーク
英語 (例: "ME Lesk"、"Eric S. Raymond") ですが、非常に脆弱です。
ドキュメントが ms マークアップを含むと認識されるには、拡張子 .ms が必要です。
これにより、誤検知の問題が回避されます。
当学校区の .TL, .AU, 。持ってる, .AE マクロは期待どおりに記事のメタ情報に変わります。
当学校区の .PP, .LP, 。NS, .NH マクロは段落とセクションの構造に変わります。 タグ付けされた
の形 .IP VariableList (通常) または ItemizedList (タグの場合) として変換されます。
troff の黒丸または四角形の文字); タグなしバージョンは通常のバージョンとして扱われます
段落区切り。
当学校区の .DS/。の ペアは LiteralLayout タグのペアに変換されます。 の .FS/.FE ペアは
脚注タグのペアに変換されます。 の .QP/.QS/.QE リクエストは BlockQuotes を定義します。
当学校区の .UL フォントの変更は U にマップされます。 .SM .LG 数値のプラスまたはマイナスのサイズのステップになる
Remap アトリビュートにサフィックスが付きます。
当学校区の .B1 .B2 ボックス マクロはサイドバー タグ ペアに変換されます。
ページ フッター、複数列モード、保持に関連するすべてのマクロは無視されます (.ND, .DA,
1℃, 2℃, .MC, .BX, .KS, .KE, .KF)。 ザ .R, .RS, .RE マクロも無視されます。
Me インタビュー
私の文書の翻訳は、多くの作業を必要とする大まかな結果を生成する傾向があります。
ハンドハッキング。 この形式は使用可能な構造がほとんどなく、その形式で書かれたドキュメントは、
多くの低レベルの troff マクロを使用します。 これらのプロパティは両方とも混乱する傾向があります ドクリフター.
ドキュメントに me マークアップが含まれていると認識されるには、拡張子 .me が必要です。
これにより、誤検知の問題が回避されます。
次のマクロは段落区切りに変換されます。 .lp, .ppを選択します。 .ip マクロは
VariableList に変換されます。 の .bp マクロは ItemizedList に変換されます。 の .np
マクロは OrderedList に変換されます。
b、i、および r フォントは、B、I、および R 再マップ属性を持つ強調タグにマップされます。 の
.rb ("本当の太字") フォントは、 .b.
.q(/.q) 構造的に変換されます。
他のほとんどの要求は無視されます。
Mm インタビュー
Memorandum Macros ドキュメントは、これらのマクロが多くの構造的な情報を保持しているため、適切に翻訳されます。
情報。 翻訳ルールはメモランダムまたはリリース済みペーパーのスタイルに合わせて調整されています。
外部レター スタイルに関連付けられた情報は、コメントに保持されます。
ドキュメントが mm マークアップを含むと認識されるには、拡張子 .mm が必要です。
これにより、誤検知の問題が回避されます。
次のハイライト マクロは、int Emphasis タグに変換されます。 .B, .I, .R, .BI, .BR,
.IB, .IR, .RB, .RI.
次のマクロは、構造的に変換されます。 .AE, .AF, .AL, .RL, 。アプリ, .APPSK, 。なので,
。で, .AU, .B1, .B2, 。なれ, .BL, .ML, .BS, .BVL, .VL, 。の, .DL .DS, .FE, .FS, .H, .HU, .IA,
.IE, .IND, 。ポンド, .LC, .LE, .LI, .P, .RF, .SM, .TL, .VERBOFF, .バーボン, .WA, 。私たち.
次のマクロは無視されます。
.)E, 1℃, 2℃, .AST, .AV, .AVL, 。カバー, .Covend, .EF, .EH, .EDP, 。大作, .FC, .FD, .HC,
.HM, .GETR, .GETST, .HM, .INITI, .INITR, .INDP, .ISODATE, .MT, .NS, .ND, 。の, 。おー, .OP,
.PGFORM, .PGNH, .PE, .PF, .PH, .RP, .S, .SA, .SP, .SG, .SK, 。タブ, .TB, .TC, .VM, 。トイレ.
次のマクロは警告を生成します。 .EC, 。元, .FG, .GETHN, .GETPN, .GETR, .GETST, .LT,
.LD, .LO, 。動く, .MULB, .MULN, .MULE, .NCOL, .nP, .PIC, .RD, .RS, .RE, .SETR
.BS/。なれ .IA/.IE ペアが通過します。 それらの中のテキストを削除する必要があるかもしれません
または移動しました。
のマーク引数 .ML 無視されます。 通常の形式の次のリスト ID
アイテム化されたリスト。
の内容 .DS/。の or .DF/。の 画面表示になります。 引数
プレゼンテーション レベルの書式設定の制御は無視されます。
むぅ インタビュー
mwww マクロは、 でサポートされている man マクロの拡張です。 グロフ(1) ウェブ制作用
ページ
当学校区の URL, FTP, 床, FTP, IMAGE, TAG タグは構造的に変換されます。 の HTMLインデックス,
ボディカラー, 背景, HTML, LINE タグは無視されます。
TBL インタビュー
水平方向と水平方向の両方を含む、TBL テーブルのすべての構造機能が変換されます。
's' と '^' による垂直スパン。 「l」、「r」、および「c」形式がサポートされています。 それから'
列形式は「r」としてレンダリングされます。 T{ および T} による行継続は正しく処理されます。
そうです .TH.
当学校区の 拡張, ボックス, ダブルボックス, オールボックス, センター, 左, 右 オプションがサポートされています。 GNU
同義語 フレーム ダブルフレーム も認められています。 しかし、シングルとの違いは
二重のルールとボックスが失われます。
テーブル継続 (.T&) はサポートされていません。
表の直前のテキストの最初の空でない行が太字になっている場合、それは
テーブルのタイトルとして解釈され、テーブルはテーブルとタイトルを使用して生成されます。
それ以外の場合、テーブルは informaltable で変換されます。
その他のほとんどのプレゼンテーション レベルの TBL コマンドは無視されます。 'b' フォーマット修飾子は
処理されますが、ポイント サイズと幅の修飾子は処理されません。
ピック インタビュー
PIC セクションは SVG に変換されます。 ドックリフターが呼びかける pic2plot(1) 成し遂げる
これ; PIC 変換を機能させるには、そのユーティリティをインストールする必要があります。
方程式 インタビュー
EQN セクションは、埋め込まれた MathML にフィルターされます。 式 -TMathML 可能であれば、そうでなければ
LiteralLayout タグで囲まれて渡されます。 delimステートメントが表示された後、
インライン eqn 区切り文字は、XML 処理命令に変換されます。 例外: インライン
単一の文字で構成される eqn 方程式は、役割を持つエンファシスに変換されます
式の属性。
トロフ インタビュー
troff の変換は、マクロ セットの解釈をサポートすることだけを目的としています。 そうではない
便利なスタンドアロン。
当学校区の .nf .fi マクロはリテラル レイアウトの境界として解釈されます。 への呼び出し 。そう
マクロは、包含を引き起こすか、XML エンティティの包含に変換されます (上記を参照)。
への通話 .ul .cu マクロにより、次の行が Emphasis タグでラップされます
「U」のリマップ属性を持つ。 への呼び出し .ft 対応する開始または終了の強調を生成する
タグ。 への呼び出し .tr 出力時に文字変換を行います。 への呼び出し .bp 生成する
BeginPage タグ (段落テキストのみ)。 への呼び出し .sp 段落区切りを生成します (
段落テキストのみ)。 への呼び出し .ti 次の行を BlockQuote でラップします。
DocBook に変換する troff リクエストのみ。 残りの troff エミュレーションが存在します
マクロパッケージは、マクロを要素に展開するために内部的に使用するためです。
構造。
マクロ定義と文字列に関する要求 (.ds, 。として, 。デ, .am, .rm, .rn, .em)は
加工して拡大。 の .ig マクロも処理されます。
条件付きマクロ (。もしも, 。, .el)を扱っています。 組み込み条件 o、n、t、e、および c
ドキュメントの XNUMX ページ目の nroff の場合と同様に評価されます。 m、d、および r troff
条件も解釈されます。 文字列比較はそのままのテキストで評価されます
比較。 すべての数値式は true と評価されます。
拡張 groff リクエスト cc, c2, ab, として, do, NOP, return シフト
解釈した。 これは .PSPIC 拡張子は MediaObject に変換されます。
当学校区の .tm マクロはその引数を標準エラーに書き込みます ( -t)。 ザ .pm マクロ レポート
定義済みのマクロと文字列。 これらの機能は、翻訳のデバッグに役立つ場合があります。
一部の troff エスケープ シーケンスが解除されました。
1. \e および \\ エスケープはそのままのバックスラッシュ \ になります。 ピリオド、および \- 裸のダッシュ。
2. troff は、\^、\`、\' \&、\0、および \| をエスケープします。 同等のISOスペシャルに引き上げられます
文字の間隔。
3. スペースが続く \ は、ISO 非改行スペース エンティティに変換されます。
4. \~ も、ISO 改行なしのスペース エンティティに変換されます。 正しくは、これは
改行には使用できませんが、実行中に通常の空白のように伸びるスペース
行調整ですが、そのための ISO または Unicode エンティティはありません。
5. \u と \d の半直線運動の垂直運動エスケープは、ペアになると、
上付き文字 or 添字 タグ。
6. \c エスケープは行継続として扱われます。 それが重要な状況で
(例: トークンの貼り付け)。
7. フォント変更の \f エスケープは、さまざまなコンテキスト依存の方法で変換されます。 初め、
ドクリフター セマンティックな意味を持つフォントの変更を伴う決まり文句を探し、
構造タグに持ち上げます。 それができない場合は、Emphasis タグを生成します。
8. \m[] 拡張子は、remap 属性を持つフレーズ スパンに変換されます。
色。 注: 通常、スタイルシートはこれをレンダリングしません!
9. \o リクエストのいくつかの使用法は翻訳されています。
文字 ` ' : ^ o ~ は、分音記号を鋭角に組み合わせた形に変換されます。
対応する Latin-1 が
または Latin-2 文字が ISO リテラルとして存在します。
これら以外のエスケープでは、警告またはエラーが発生します。
他のすべての troff 要求は無視されますが、XML コメントに渡されます。 いくつか(など
.ce) また、警告メッセージをトリガーします。
移植性 チェック中
移植性チェックが有効になっている場合、 ドクリフター マークアップに関する移植性の警告を発します
それは処理できますが、他のさまざまなビューアーやインタープリターを壊します。
1. レベル 1 では、壊れそうな構造について警告します man2html(1)、(C
Linux で配布されるプログラム man(1)、古くて機能の劣る Perl ではありません
脚本)。 このコードの派生物が GNOME yelp で使用されています。 これは
あなたが目指している最低限の携帯性レベルであり、上で推奨されているものに対応しています
グロフマン(7)マニュアルページ。
2. レベル 2 では、移植性を壊す構造について警告します。
Unix のクラシック ツール (長いマクロ名と \[] によるグリフ参照を含む)。
セマンティック 分析
ドクリフター ソースの分析から取得するセマンティック ヒントの XNUMX つのリストを保持します。
ドキュメント (特に、コマンドと関数の概要の解析から)。 ローカルリスト
含まれています:
・関数の仮引数の名前
・コマンドオプションの名称
ローカル ヒントは、収集元の個々のページをマークアップするために使用されます。 の
グローバル リストには以下が含まれます。
・機能の名称
・コマンド名
· 関数の戻り型の名前
If ドクリフター 複数のファイルに適用される場合、グローバル リストはメモリに保持されます。 あなたはできる
実行の最後にグローバル ヒントのレポートをダンプします。 -h オプション。 のフォーマット
ヒントは次のとおりです。
.\" | マークなので
コラボレー はテキストのアイテムであり、 DocBook マークアップ テキストです。
強調表示されるか、空白で囲まれた単語として表示されるたびにラップされます
ソーステキストで。
以前のファイルから派生したヒントは、後のファイルにも適用されます。 この動作は
関数またはコマンド ライブラリに適用されるドキュメントのコレクションを持ち上げる場合に役立ちます。
もっと便利なのは、ヒントファイルがダンプされたという事実です -h のいずれかになります
へのファイル引数 ドクリフター; コードはこの特殊なケースを検出し、XML を書き込みません。
そのようなファイルの出力。 したがって、大規模なライブラリを持ち上げるための適切な手順は、
最初の実行でヒント ファイルを作成し、それを検査して誤検出を削除し、それを
XNUMX 回目の実行への最初の入力。
ヒント ファイルを直接 troff ソース ファイルに含めることもできます。 これは
XML に変換する前に段階的にファイルを充実させたい場合に便利です。
トラブルシューティング
ドクリフター 診断はできるが、それ自体では修正できない問題について警告を試みます。
「FIXME を探してください」と表示されたら、生成された XML でそれを行います。 そのトークンのマークアップ
間違っている可能性があります。
ときどき(全体の 2% 未満) ドクリフター 無効な DocBook マークアップを生成します
正しい troff マークアップから。 通常、これはソース内の奇妙な構造が原因です
ページ、または能力を超えたマクロ呼び出し ドクリフターの取得するマクロ プロセッサ
右。 注意すべき点とその修正方法は次のとおりです。
不正な形式 command あらすじ。
「command synopsis parse failed」というメッセージが表示された場合は、概要を書き直してみてください。
あなたのマニュアルページのソースで。 失敗の最も一般的な原因は、バランスの取れていない [] グループ化です。
肉眼では気づきにくいバグ。 これを支援するために、エラー
メッセージには、解析に失敗したトークンを示す括弧内のトークン番号が含まれています。
詳細については、-v オプションを使用してください。 これにより、ダンプがトリガーされ、
コマンドの概要は前処理後に次のようになり、解析がどのトークンで行われたかを示します
失敗しました (概要のダンプにトークン番号とキャレット記号が挿入されています)
トークン)。 マニュアルページのソースの概要を書き直してみてください。 最も一般的な原因は
失敗は不均衡な [] グループ化であり、肉眼では非常に気づきにくいバグです。
これを支援するために、エラー トークン ダンプは最後のポイントに「$」を挿入しようとします。
ネストの深さは増加しますが、これを行うコードは失敗しやすいです。
紛らわしい マクロ 呼び出します。
一部のマニュアル ページの作成者は、標準の要求を置き換えます ( .PP, 。NS .TP) バージョンあり
でさまざまなことを行います ンロフ troff 環境。 その間 ドクリフター 対処しようとする
[nt]roff のクセは大量で混乱を招くマクロ呼び出しです。
不適切な XML が生成されることがあります。 このような問題の一般的な症状は、閉じられていません
強調タグ。
不正な形式 リスト 構文。
マニュアルページのパーサーは混乱する可能性があります .TP ヘッダータグはあるが、ない構造
続く機体。 生成された XML が検証されず、問題が
listitem タグが間違っている場合は、冗長 (-v) オプションを使用してみてください。 これにより、行番号付きが有効になります
問題を特定するのに役立つ警告。
セクション ネスティング 問題 SS。
「possible section nesting error」というメッセージは、プログラムが XNUMX つの隣接するセクションを見たことを意味します。
サブセクションのヘッダー。 man ページでは、サブセクションには深さの引数がないため、 ドクリフター
サブセクションをどのように入れ子にするかを特定することはできません。 間のサブセクションの見出し
示された行と次のトップレベル セクションの開始が間違っている可能性があり、
手で修正。
悪い 出力 いいえ ドクリフター エラー メッセージ
ユーザー定義マクロを使用するページを翻訳していて、doclifter が失敗した場合
それについて文句を言うが、悪い出力が得られる場合、最初にすべきことは単純化または排除することです
ユーザー定義のマクロ。 可能であれば在庫リクエストに置き換えてください。
改善する 翻訳 品質
ページを持ち上げた後に手で確認することをお勧めする構造がいくつかあります。
BlockQuote タグの近くを見てください。 troff 一時インデント要求 (.ti) に変換されます
次の行を囲む BlockQuote ラッパー。 時々 LiteralLayout または ProgramListing
より良い訳になりますが、 ドクリフター これは知る由もありません。
DocBook オプション タグでラップする候補を明確に検出することはできません
実行中のテキストで。 気になる場合は、これらを確認して手動で修正する必要があります。
onworks.net サービスを使用してオンラインで doclifter を使用する
