RE 18268 C言語のタグジャンプの仕方は?No.18273
KojiMatsui さん 04/11/04 23:56
 
Matsuiと申します。どうも有り難うございます。

> ここに複数のファイルを指定する場合、""でくくって、;で区切ってください。
> "C:\cygwin\usr\include\tags";"C:\cygwin\home\root\hoge\srccygwin\src\src
> \tags"
> となります。
有難うございます。

> ヘッダファイルに対してtagsファイルを作成する場合、ルールがC言語の関数一
> 覧ではダメです。
> ヘッダファイルの関数のプロトタイプ宣言を行の強調表示するhilightファイル
> を指定する必要があります。
> そういったhilightファイルは無いので、自分で作成する必要があります。
> 付属のC-header.hilightは、構造体の宣言を強調しているだけで、対応していま
> せん。
すいません。具体的にどうするのでしょうか?
(秀丸ハンドブックを調べているのですが、、、、)

> あるいは、grepの出力もtagsファイルとして使うことができるはずです。
> grepで、関数のプロトタイプ宣言がひっかかるようにして、その出力をC:
> \cygwin\usr\include\tagsとして保存しておくと、同様のことになります。
これは何か新規に調べたい関数とか型がある場合、毎回作成しないといけないんで
しょうか?

[ ]
RE:18273 RE 18268 C言語のタグジャンプのNo.18275
ENCODINGSHIFTJIS さん 04/11/05 09:34
 
>すいません。具体的にどうするのでしょうか?
>(秀丸ハンドブックを調べているのですが、、、、)

秀丸ディレクトリ中の C-function.hilightを 開きます。
次に、 何かの .h ヘッダーファイルを開きます

秀丸メニュー
その他
ファイルタイプ別の設定
設定のリスト(T)
新規(N) Cヘッダーファイル を作り
HILIGHTの設定(S) (Cヘッダーファイルを選択)
表示とカラー
強調表示
強調表示(Y)
追加(I)
強調表示文字列の追加
正規表現(R) 行の強調1 文字列(S) ####
OK 保存しないで更新

#### の部分は .hilight の 21 の行を参考に
幾つか試してみる。

>> あるいは、grepの出力もtagsファイルとして使うことができるはずです。
>> grepで、関数のプロトタイプ宣言がひっかかるようにして、その出力をC:
>> \cygwin\usr\include\tagsとして保存しておくと、同様のことになります。


>これは何か新規に調べたい関数とか型がある場合、毎回作成しないといけないんで
>しょうか?
行のパターンが強調に掛かるようなら、不要ですが。

[ ]
RE:18275 RE 18268 C言語のタグジャンプのNo.18277
秀丸担当 さん 04/11/05 12:02
 

ENCODINGSHIFTJISさんの言われている手順でできますが、補足させていただきま
す。

強調表示文字列の追加では、例えば「.+\(.*\).*;」としてみてください。
完全ではありませんが、ヘッダファイル内のプロトタイプ宣言が行の強調表示さ
れていることを確認します。

行の強調表示がされていれば、tagsファイルの作成をするときは、ルールは(自
動)にすればいいです。

[ファイルタイプ別の設定]→[表示とカラー]→[強調表示]で、[保存(V)]として、
適当なhilightファイルに保存しておけば、ルールにそのhilightファイルを指定
できます。

強調表示文字列の追加で、完全でないというのは、関数のプロトタイプ宣言であ
るかどうかは、正規表現では対応しきれないからです。
関数のプロトタイプ宣言が複数行にまたがっている場合や、ヘッダファイルにあ
るインライン関数への配慮などを考えると、限界があります。

[ ]