これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド cxref です。
プログラム:
NAME
cxref - C 相互参照および文書作成ツール。
SYNOPSIS
CXref ファイル名 [ ... ファイル名] [-Oディレクトリ名] [-NSベース名] [-NSベース名] [-すべて-コメント]
[-コメントはありません] [-逐語的-コメント] [-ブロックコメント]
[-xref [-all] [-file] [-func] [-var] [-type]] [-warn[-all][-comment][-xref]]
[-index[-all][-file][-func][-var][-type]] [-生] [-ラテックス] [-html[-src]] [-rtf] [-sgml]
[-私ディレクトリ名] [-NS定義します] [-U定義します] [-CPP cpp_プログラム] [- cpp_args ... cpp_args]
CXref ファイル名 [ ... ファイル名] -削除 [-Oディレクトリ名] [-NSベース名] [-NSベース名]
DESCRIPTION
C のドキュメントと相互参照を自動的に生成できるプログラム
プログラム。
入力は適切なコメントを含む任意の C プログラムで、出力は LaTeX、HTML、RTF、または
SGML ファイル。
OPTIONS
ファイル名
文書化するファイルの名前。一度に任意の数のファイルを文書化できます。
-削除
指定されたファイルは、出力ディレクトリとそのエントリから削除されます。
相互参照データベースとメイン出力ファイルは削除されます。
-お名前
出力ラテックス ファイルに使用するディレクトリの名前と、
作成される相互参照ファイル。
-Nbasename
代わりに出力ファイルと相互参照ファイルの最初の部分に使用する名前
cxref の場合、ファイル拡張子は同じままです。
-R ディレクトリ名
ソース ファイルが複数のディレクトリにある場合は、dirname を次のディレクトリの名前に設定します。
ソース ツリーのルート ディレクトリ (簡単な場合は相対パスを使用します。例: `-R..)/ ..')。
これにより、そのルート ディレクトリから cxref が実行されます。また、`-Odirname' は
そのディレクトリからの相対パス。
-すべてのコメント
既存のコメントが機能する可能性があると思われる場合は、(説明については上記を参照してください)
特別なコメントの)。 [危険! このオプションを使用すると、奇妙な結果が生じる可能性があります。]
-コメントはありません
すべてのコメントを無視します。相互参照だけが必要な場合に役立ちます。
のドキュメントで詳しく説明されています)。
-逐語的なコメント
コード内のコメントが所定のスタイルでフォーマットされている場合
出力上に保存したい場合、このオプションはそれらを強制的に保存しないようにします。
再フォーマットされた。 [これはファイルと関数のコメントのみを対象としていることに注意してください。]
-ブロックコメント
プログラム内のコメントが「ブロック」スタイルでフォーマットされている場合(先頭に
すべての行に '*' 文字がある場合)、このオプションはその文字を
出力。 [単一の `*'、`+'、`|' に対して機能します各行に「:」または「:」を付けます。]
-外部参照 相互参照情報を作成します(以下を参照)。
-すべてすべての相互参照。
-fileファイルの相互参照。
-関数のfunc相互参照。
-var変数の相互参照。
-type型の相互参照。
-警告 警告を生成するには、オプションを連結する必要があります。
-all すべての警告。
-com コメントが欠落していることを警告します。
-xref 相互参照が欠落していることを警告します。
-インデックス 相互参照インデックスを作成するには、オプションを連結する必要があります。
-all すべてのインデックス。
-file ファイルのインデックス。
-func 関数のインデックス。
-var 変数のインデックス。
-type タイプのインデックス。
-生 生の形式の出力を生成しますが、-warn を使用する場合を除いてあまり役に立ちません。
-ラテックス 各ソース ファイルと追加ファイルを文書化する LaTeX ファイルを生成します。
これには、これらの各ファイルが含まれます。
-html 各ソース ファイルとメイン ファイルを文書化する HTML 4.01 ファイルを生成します。
これらの各ファイルを参照してください。
-html-src
HTML 出力と、リンクを含むソース ファイルの HTML バージョンを生成します。
-RTF ソース ファイルを文書化するリッチ テキスト形式 (RTF) ファイルを作成します。
-sgml ソース ファイルを文書化する SGML ファイルを作成します。 (LinuxDoc DTD を使用)。
-IDirname
インクルード ファイルのパスを指定する GCC オプション。
-Ddefine
プリプロセッサ シンボルを定義する GCC オプション。
-Udefine
プリプロセッサ シンボルの定義を解除する GCC オプション。
-CPP プログラム
コンパイル時のデフォルトの代わりに使用するプログラムの名前。 プログラム
`gcc -E -C -dD' が機能するには、すべてのアクションを実行できなければなりません。 もしも
プログラムが引数を取る場合は、全体を引用符で囲む必要があります。
cxref への単一の引数として解釈されます。
--argは ... argは
プリプロセッサに渡す追加の引数は、「--」の後に置くことができます。
セパレータ。
C コンパイラ 交換 cxref-cc
既存のソース コードでの cxref の使用を簡素化するために、次のようなシェル スクリプトが追加されました。
C コンパイラを呼び出してから、cxref を呼び出してソース ファイルを処理します。 これはつまり、
Makefile などで CC のドロップイン代替品として使用できます。
使用法: cxref-cc [通常の cc オプション]
ソース ファイルの名前はオプションのリストと `-D*' から抽出されます。
`-I*'、`-U*' フラグを設定し、C コンパイラが正常に終了すると cxref が呼び出されます。 の
使用する C コンパイラの名前は CXREFCC 環境変数によって制御されるか、
これが CC 環境変数に設定されていない場合は、gcc だけで失敗します。
このスクリプトを使用するには、オプションを含む `.cxref' 設定ファイルを使用する必要があります。
C コンパイラのコマンドラインにはオプションを置く場所がないからです。
これは、C ソース ファイルのみが相互参照され、文書化されます。
コンパイルされたものですが、それらが相互参照されていることを確認します。
正しいオプションなど
外部参照 File
これらのコマンドライン引数は、
コマンドライン。 cxref が実行されると、プログラムの引数は次のように解釈されます。
次の順序。
(1) コマンドライン上のもの。 (2) カレントディレクトリの `.cxref' ファイルにあるもの。
(3) `-R' で指定されたソースツリールートにある `.cxref' ファイル内のファイル。
これは、マルチディレクトリのソース ツリーでは、各サブディレクトリに `.cxref' を含めることができることを意味します。
`-R..' 行だけを含むファイル、または適切なファイル。 メインディレクトリには、
残りのオプションを含む `.cxref' ファイル。 これにより、その必要性が完全に排除されます
コマンドラインにソースファイル名以外のオプションを指定するには。
`.cxref' ファイルの形式は任意の数の行であり、各行には単一の行が含まれます。
コマンドライン引数 (argv の XNUMX つに相当)。 唯一できないオプションは、
使用されるのは、ソース ファイル自体の名前と `-delete' オプションです。 空白行は、
無視され、「#」で始まる行はコメントになります。
演奏曲目 ドキュメンテーション コメント
プログラムのドキュメントは、コード内のコメントから作成されます。
適切にフォーマットされています。 相互参照はコード自体から行われ、何も必要ありません。
残業。
特別なコメントは、`/**** ****/' (ファイルの場合) および `/*++++ ++++*/' (データの場合) です。
オブジェクト) 標準の `/*' および `*/' コメント内で任意の数の `*' または `+' を使用できます。
コメント内の区切り文字は無視されます。
コメント行が空白で始まり、その後に「+html+」が続く場合、残りの部分は
この行は HTML 出力にのみ含まれており、HTML を含めることができるように処理されません。
マークアップ、`-html-' は、行の残りの部分が HTML 以外のすべてに含まれることを意味します
出力。 他の出力形式にも同じことが当てはまります。行には `+none+' を使用できます。
どの出力にも表示されません。 例外は、生の出力では何も行われないことです。
チェックするとすべての行が出力されます。
コメントが `,'、`;' に続く場合または `)' はスペースのみで区切られ、
タブでは、コメントが句読点の前にプッシュされ、そこでオブジェクトに適用されます。
このプログラムは、いくつかの GCC 拡張機能を備えた完全な ANSI C 文法パーサーを使用して実装されています。
これは、コードのスタイルは重要ではなく、コンテンツとコメントのみが重要であることを意味します。
Cross 参照
相互参照は以下の項目に対して実行されます。
現在のファイルが含まれるファイル
(他のファイルを介してインクルードされている場合でも)。
#含む
現在のファイルに含まれるファイル。
これらのファイルに含まれるファイルなど
Variables
外部変数の定義の場所。
グローバル変数の可視性を持つファイル。
変数を使用するファイル/関数。
機能
関数のプロトタイプが作成されるファイル。
関数が呼び出す関数。
関数を呼び出す関数。
関数を参照するファイルと関数。
関数で使用される変数。
これらの各項目は出力内で相互参照されます。
相互参照では、ファイル `cxref.variable'、`cxref.function'、`cxref.include'、および
出力ディレクトリ内の「cxref.typedef」。 これらは関数の完全なリストです。
プログラム内での変数の使用法、および関数呼び出し階層の生成に使用できます。
たとえば、変数の使用図。 各ファイルに XNUMX つの cxref パスが必要です。最初のパスは
相互参照ファイルを構築し、次にそれらを使用します。
(「-N」オプションを使用した場合、ファイル名は異なります。)
ラテックス 出力
デフォルトの LaTeX 出力は、ソース ファイルごとに XNUMX つの追加ファイルを含むファイルです。
他の各ファイルを含む `cxref.tex'。 これは、メイクファイルにのみ許可するためです。
変更されたファイルを更新します (ただし、参照ではすべてのファイルを更新する必要がある場合があります)。
再度確認しました)。 cxref.tex ファイルが作成されると、ユーザーはこのファイルを変更できます。
追加された新しいファイルはすべてソース コード セクションの最後に追加され、残りのファイルはソース コード セクションの最後に追加されます。
ファイルは変更されていません。
インデックスは「cxref.apdx.tex」というファイルに書き込まれ、cxref.tex は参照するように更新されます。
それに。
また、XNUMX つの LaTeX スタイル ファイル `page.sty'、`fonts.sty'、および `cxref.sty' も書き出されます。
これらは、より多くの文字を表示できるように、より小さな余白と小さなフォントを使用するようにページを設定します。
ページを作成し、cxref 出力を植字するための新しいコマンドも定義します。
(「-N」オプションが指定されている場合、ファイル名「cxref.tex」と「cxref.apdx.tex」は異なります)
中古。)
HTML 出力
デフォルトの HTML 出力は、ソース ファイルごとに XNUMX つの追加ファイルを含むファイルです。
他の各ファイルを含む `cxref.html'。 これは、メイクファイルにのみ許可するためです。
変更されたファイルを更新します (ただし、参照ではすべてのファイルを更新する必要がある場合があります)。
再度確認しました)。 cxref.html ファイルが作成されると、ユーザーはこのファイルを変更できます。
追加された新しいファイルは最後に目次の前に追加され、残りは
ファイルは変更されていません。
インデックスは「cxref.apdx.html」というファイルに書き込まれ、cxref.html は参照するように更新されます。
それに。
(「-N」オプションが指定されている場合、ファイル名「cxref.html」と「cxref.apdx.html」は異なります)
中古。)
HTML 出力は HTML 4.01 標準を使用し、すべてのページが正しく検証されます。
RTF 出力
リッチ テキスト形式は、Microsoft によって考案されたかなり低レベルのページ記述形式です。 それ
他の形式のように、明確に定義されていて理解しやすい標準ではありませんが、
書類交換に人気です。
ソース ファイルとインデックス ファイルごとに XNUMX つの出力ファイルがあります。
SGML 出力
SGML はメタ言語であるため、レイアウト要素と同様に定義する必要があります。
情報を提供します。 cxref 出力は LinuxDoc ドキュメント形式を使用しており、
SGMLtools プログラム (http://www.sgmltools.org/).
ソース ファイルとインデックス ファイルごとに XNUMX つの出力ファイルがあります。
onworks.net サービスを使用してオンラインで cxref を使用する