18

タグファイルを使用して、コード補完と、パラメーター、オーバーロード、ファイル(宣言されている場合)などのインラインビューをすばやく表示します。C99、C ++ 03、およびC++0x標準ライブラリで無料で利用できるタグはどこにありますか。 ?(C89は何もないよりはましですが、私はむしろC99が欲しいです。)

私はがらくたのないタグを好みます。たとえば、実装ではパラメータに予約済みの名前を使用するため、「std :: min(_M_a、_M_b)」の代わりに「std :: min(a、b)」と表示したいと思います。この問題やその他の問題は、実際の実装からの生成を除外します。後処理によってはそれらをクリーンアップする可能性があると思いますが(特に識別子の問題)、最初から作成する方が簡単なようです。

4

5 に答える 5

5

libc関数宣言は複雑なマクロとしてヘッダーに実装される可能性が高いため、通常、タグを抽出することは困難です。ライブラリによってエクスポートされたシンボルのリストを見つけるために使用できますnmが、それはパラメータリストに対応していません。

ここでの最善の解決策は、ドキュメントを解析することだと思います。

libc簡単に解析できる形式でエクスポートされたすべての関数とマクロのリストを次に示します。

http://www.gnu.org/s/libc/manual/html_node/Function-Index.html#Function-Index

各関数は、その関数のパラメーターを予測可能な形式でリストしたページにリンクしています。

http://www.gnu.org/s/libc/manual/html_node/Block-Input_002fOutput.html#index-fread-1010

BeautifulSoupPythonモジュールを使用すると、ページの解析は非常に簡単です。

于 2010-10-15T20:52:22.310 に答える
2

質問にリンクする投稿ブログに書かれているように、ヘッダーディレクトリのctagsを使用してタグライブラリを生成します

于 2010-10-13T11:28:00.207 に答える
2

それらの正確な要件については、おそらく自分で作成する必要があります:(

于 2010-10-16T08:25:16.500 に答える
0

これは完全な答えではありません。誰かがSGIのSTLドキュメントからタグを抽出するためのperlスクリプトを公開しました。関数パラメーター名は含まれていません。それはドキュメンテーションで機能するので、くだらないことはありません。これが少し役立つことを願っています。

于 2010-10-15T16:23:35.560 に答える
0

標準ライブラリの完成を得ることが主な問題である場合、clangvimプラグインはタグをまったく使用せずにこれを非常にうまく実行します。ただし、ヘッダーで使用される記号を使用するため、補完にはまだいくつかのパラメーター「cruft」があります。

主に〜/ .vim / pluginに1つのファイルをドロップし、clangをインストールするだけで、機能します。完全なルートよりもはるかに簡単です。私がこれまで限られた使用で抱えていた唯一の問題は、完成を思い付くのが遅い場合があるということです。

于 2010-11-26T00:35:34.897 に答える