アウトライン解析の表示No.37980
YK さん 20/02/09 18:00
 
いつも、たいへんお世話になっています。
アウトライン解析について、教えて下さい。

アウトライン枠をツリー表示にしたとき、表示される関数について、
@ #ifdef等の無効な関数は表示しない
A lv2をswitch文の代りに、関数内で使用されている関数を表示させる
方法は有りますでしょうか。
片方だけでも、またマクロで行う方法でも良いです。よろしくお願いします。

既出でしたら、すみません。よろしくお願いします。

[ ]
RE:37980 アウトライン解析の表示No.37982
秀丸担当 さん 20/02/10 10:24
 

>@ #ifdef等の無効な関数は表示しない

コメントを対象にしない設定があって、#ifdef等の無効行もコメントと同等と扱いと
して表示させないようにすることができます。
[その他]→[ファイルタイプ別の設定]→[アウトライン]→[解析]のツリー表示の定義
で、関数の定義になっているところでプロパティを出します。
「オプション(O)>>」を押して、右側の「コメントを無視」をONにすると、#ifdef等
の無効行の色付けになっている部分は対象にならなくなります。

#ifdef等の無効行の色付けは、[その他]→[ファイルタイプ別の設定]→[デザイン]→
[複数行コメント]で、「C言語/Java/JavaScript」が選ばれているとき、「#ifdef等
のカラー表示」がONになっていると無効行の色付けがされます。

>A lv2をswitch文の代りに、関数内で使用されている関数を表示させる
>方法は有りますでしょうか。

ツリー表示の定義で、LV2のところを正規表現で書くと、正規表現に一致する行を表
示できます。
何をもって関数とするのかは、正規表現の書き方によります。
例えばLV2の項目のプロパティで、見出しの定義の種類を「文字列」にして、文字列
は「[a-z_][a-z_0-9]\(」にして、正規表現をONにします。
一行内だけが対象なので、プログラミング言語の解釈を確実に判断させることはでき
ないですが、一定のルールに従った書き方であれば、こういった方法で対応できます。


[ ]
RE:37982 アウトライン解析の表示No.37984
YK さん 20/02/11 09:22
 
いつも、たいへんお世話になっています。
早速、回答頂き有難うございました。
@、Aとも、うまくいきました。

>一行内だけが対象なので、プログラミング言語の解釈を確実に判断させることはで
>きないですが、一定のルールに従った書き方であれば、こういった方法で対応でき
>ます。

完全に関数だけを取り出すことは難しいことは理解できました。
でもやりたかったことは出来ました。ありがとうございました。

[ ]