これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなど、複数の無料オンライン ワークステーションのいずれかを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド docbook2x-man です。
プログラム:
NAME
docbook2x-man - DocBook を man ページに変換する
SYNOPSIS
docbook2x-man [オプション] xml-ドキュメント
DESCRIPTION
docbook2x-man 指定された DocBook XML ドキュメントを man ページに変換します。 デフォルトでは、男
ページは現在のディレクトリに出力されます。
DocBook ドキュメント内の refentry コンテンツのみが変換されます。 (コンテンツを変換するには
refentry 以外では、スタイルシートのカスタマイズが必要です。 docbook2X パッケージを参照してください
詳細。)
この docbook2x-man コマンドは、XNUMX 段階の変換プロセスのラッパー スクリプトです。 を参照してください
詳細については、以下の「変換プロセス」セクションを参照してください。
OPTIONS
利用可能なオプションは、本質的に からのオプションの結合です。 db2x_xsltproc(1)と
db2x_manxmlとします。
一般的に使用されるオプションの一部を以下に示します。
--encoding =エンコーディング
出力の文字エンコードを設定します。
--文字列パラメータ パラメーター=値
スタイルシート パラメータ (出力の外観に影響するオプション) を設定します。 見る
設定できるパラメータは後述の「スタイルシートのパラメータ」。
--sgml XML の代わりに SGML ソース ドキュメントを入力として受け入れます。
--ソリンクス
出力マニュアル ページの代替名のスタブ ページを作成します。
スタイルシート パラメーター
大文字の見出し
手紙. 見出しを大文字にしますか?
デフォルト 設定. 1 (ブール真)
man ページのコンテンツの見出しは、大文字にする必要があります。
manvolnum-引用-数字のみ
手紙. マニュアルページのセクションの引用では、番号のみを使用する必要があります
デフォルト 設定. 1 (ブール真)
他のマニュアルページを引用する場合、マニュアルページのセクションはそのままか、
セクションの番号のみを引用して、そこから削除された文字 (例: セクション 3x
3)になります。 このオプションは、どのスタイルを指定するかを指定します。
リテラルの引用符
手紙. リテラル要素に引用符を表示しますか?
デフォルト 設定. 0 (ブール偽)
true の場合、リテラル要素を引用符で囲んでレンダリングします。
コメントを表示
手紙. コメント要素を表示しますか?
デフォルト 設定. 1 (ブール真)
true の場合、コメントが表示されます。それ以外の場合は表示されません。 コメントはこちら
DocBook V4.0 で名前が remark に変更される comment 要素を指します。
利用できない XML コメント (<-- こんな感じ -->)。
関数括弧
手紙. 関数の後に括弧を生成しますか?
デフォルト 設定. 0 (ブール偽)
true の場合、 要素には、生成された括弧が含まれます。
リンク上の外部参照
手紙. リンクは相互参照を生成する必要がありますか?
デフォルト 設定. 1 (ブール真)
man ページは、link によって作成されたハイパーテキスト リンクを表示できません。 このオプションが設定されている場合、
次に、スタイルシートはリンクのターゲットへの相互参照をレンダリングします。 (これは
混乱を減らします)。 それ以外の場合は、リンクのコンテンツのみがレンダリングされ、実際の
リンク自体は無視されます。
ヘッダー - 3
手紙. XNUMX 番目のヘッダー テキスト
デフォルト 設定. (空欄)
man ページの XNUMX 番目のヘッダーのテキストを指定します。通常は、
マンページ。 空の場合、refentry の日付コンテンツが使用されます。
ヘッダー - 4
手紙. XNUMX 番目のヘッダー テキスト
デフォルト 設定. (空欄)
man ページの XNUMX 番目のヘッダーのテキストを指定します。 空の場合、refmiscinfo
リエントリー用のコンテンツが使用されます。
ヘッダー - 5
手紙. XNUMX 番目のヘッダー テキスト
デフォルト 設定. (空欄)
man ページの XNUMX 番目のヘッダーのテキストを指定します。 空の場合、「マニュアル名」、
つまり、本のタイトルまたは参照コンテナーが使用されます。
デフォルトマンページセクション
手紙. デフォルトの man ページ セクション
デフォルト 設定。 1
ソース ドキュメントは通常、各マニュアル ページが属するセクションを示します。
に (refmeta の manvolnum を使用)。 ソースドキュメントにman-が表示されていない場合
ページ セクションの場合、このオプションはデフォルトを指定します。
カスタム ローカリゼーション ファイル
手紙. カスタム ローカリゼーション データを含む XML ドキュメントの URI
デフォルト 設定. (空欄)
このパラメータは、テキスト翻訳を記述する XML ドキュメントの URI を指定します
スタイルシートが処理するために必要な (およびその他のロケール固有の情報)
DocBook ドキュメント。
このパラメータが指すテキスト翻訳は、常にデフォルトのテキストを上書きします
翻訳 (内部パラメーター localization-file から)。 特定の場合
翻訳がここに存在しない場合、対応するデフォルトの翻訳が
後退する。
このパラメータは主に、特定の句読点文字を変更するためのものです
ソース ドキュメントをフォーマットします。 多くの場合、句読点の設定は
ソース ドキュメントに固有ですが、ロケールに依存する場合もあります。
カスタム テキスト翻訳を使用しない場合は、このパラメーターを空の文字列のままにしておきます。
カスタム l10n データ
手紙. カスタム ローカリゼーション データを含む XML ドキュメント
デフォルト 設定. ドキュメント($custom-localization-file)
このパラメーターは、テキストの翻訳を記述する XML ドキュメントを指定します (および
を処理するためにスタイルシートが必要とするその他のロケール固有の情報)
DocBook ドキュメント。
このパラメーターは、スタイルシートの内部です。 外部 XML ドキュメントを参照するには
URI またはファイル名を使用する場合は、custom-localization-file パラメーターを使用する必要があります
を代わりにお使いください。
ただし、カスタム スタイルシート内 ( on コマンドライン) このパラメータは
XPath 式 document('') に設定します。これにより、カスタム翻訳が行われます。
読み取るカスタム スタイルシート内に直接埋め込まれます。
著者-別の中間名
手紙. 著者の他の名前はミドルネームですか?
デフォルト 設定。 1
true の場合、著者の別名が名と姓の間に表示されます。
それ以外の場合、othername は抑制されます。
例
$ docbook2x-man --solinks manpages.xml
$ docbook2x-man --solinks --encoding=utf-8 //TRANSLIT manpages.xml
$ docbook2x-man --string-param header-4="Free Recode 3.6" document.xml
.fi
変換 プロセス
加工 〜へ man ページ
DocBook ドキュメントは、次の XNUMX つの手順で man ページに変換されます。
1. DocBook ソースは、XSLT スタイルシートによって中間 XML 形式に変換されます。
男-XML。
Man-XML は DocBook より単純で、man ページの形式に近いです。 それは意図されています
スタイルシートの作業を簡単にします。
この目的のためのスタイルシートは xslt/人/docbook.xsl. 携帯性のために、
常に次の URI で参照する必要があります。
http://docbook2x.sourceforge.net/latest/xslt/man/docbook.xsl
このスタイルシートを実行します db2x_xsltprocとします。
カスタマイズ. 独自の XSLT スタイルシートを作成して、出力をカスタマイズすることもできます —
パラメータの変更または新しいテンプレートの追加 - およびインポート xslt/人/docbook.xsl.
2. Man-XML は、実際の man ページに変換されます。 db2x_manxmlとします。
この docbook2x-man コマンドは両方の手順を自動的に実行しますが、問題が発生した場合は、
各ステップを個別に実行すると、エラーをより明確に確認できます。
$ db2x_xsltproc -s 男 マイドキュメント.xml -o マイドキュメント.mxml
$ db2x_manxml マイドキュメント.mxml
.fi
変換スタイルシートのオプションについては、
マンページのスタイルシート
参照。
清(ピュア) XSLT 変換.
に代わるもの db2x_manxml Perl スクリプトは XSLT
のスタイルシート
xslt/バックエンド/db2x_manxml.xsl.
このスタイルシートは同様の機能を実行します
Man-XML を実際の man ページに変換する方法。
純粋な XSLT が必要な場合に便利です
マンページ変換のソリューション。
もちろん、このスタイルシートを使った変換の質は
Perlほど良くなることはありません db2x_manxml,
そして、それはより遅く実行されます。
特に、純粋な XSLT バージョン
は現在、man ページのテーブルをサポートしていません。
しかし、その Perl 版はそうします。
文字 セッションに 変換
XML を、Unicode のサポートが不十分な従来の ASCII ベースの形式に変換する場合。
man ページと Texinfo では、ソースに Unicode 文字が含まれているという問題が常にあります。
ドキュメントも何らかの方法で翻訳する必要があります。
Unicode からの単純な文字セット変換では十分ではありません。
ターゲット文字セット (通常は US-ASCII または ISO Latin-1) には一般的な文字が含まれていません
XML ドキュメントで広く使用されているダッシュや方向引用符など。 しかし
ドキュメント フォーマッタ (man および Texinfo) を使用すると、そのような文字をマークアップで入力できます。
エスケープ: たとえば、\(lq は左方向の引用符 " を表します。マークアップ レベルのエスケープの場合
が利用できない場合は、ASCII 文字変換が使用される場合があります。たとえば、ASCII
角引用符⟨の小なり記号 <。
したがって、Unicode 文字の問題は次の XNUMX つの手順で解決できます。
1. utf8trans(1) docbook2X に含まれるプログラムは、Unicode 文字をマークアップ レベルにマップします。
エスケープまたは音訳。
Unicode 文字の固定された公式のマッピングは必ずしも存在しないため、
utf8trans テキストファイルで表現されたユーザーが変更可能な文字マッピングを読み取ることができ、
それらを適用します。 (ほとんどの文字セット コンバーターとは異なります。)
In chammaps/man/roff.charmap と chammaps/man/texi.charmap 可能性のある文字マップです
man ページと Texinfo の変換に使用されます。 プログラム db2x_manxml(1)と
db2x_texixm(1) これらの文字マップ、またはによって指定された別の文字マップを適用します。
ユーザー、自動的に。
2. 残りの Unicode テキストは、他の文字セット (エンコーディング) に変換されます。 為に
たとえば、アクセント付き文字 (é など) を含むフランス語の文書は、次のように変換される場合があります。
ISO ラテン 1。
このステップは後に適用されます utf8trans 文字マッピング、使用 iconv(1) エンコーディング
変換ツール。 両方 db2x_manxml(1)と db2x_texixm(1) 通話可能 iconv(1)
出力を生成するときに自動的に。
onworks.net サービスを使用してオンラインで docbook2x-man を使用する