C言語の編集に関する機能要望(2点)No.05590
YoungMoon さん 04/06/17 23:01
 
YoungMoon(若月)です。

「C言語の関数内検索機能」って、できませんか?
ローカル変数がどこで使用されているか、を簡単に検索したいのです。
検索ダイアログボックスに「関数内を選択範囲にする」という
チェックを用意しておいて、そこを設定するような感じで。
いまは、関数全体を選択しておいて、
「選択した範囲内でのみ検索」を使用しています。
ただ、少しとはいえ手間がかかるので(--;

あと、これに付随して、「コメント行を検索対象から除外する」
というのもできませんか?

最近C使いになってきたので、ちょっと感じた要望です。
よろしくお願いします。

[ ]
RE:05590 C言語の編集に関する機能要望(No.05593
秀丸担当 さん 04/06/18 17:31
 

>「C言語の関数内検索機能」って、できませんか?
>ローカル変数がどこで使用されているか、を簡単に検索したいのです。
>検索ダイアログボックスに「関数内を選択範囲にする」という
>チェックを用意しておいて、そこを設定するような感じで。
>いまは、関数全体を選択しておいて、
>「選択した範囲内でのみ検索」を使用しています。
>ただ、少しとはいえ手間がかかるので(--;
>
>あと、これに付随して、「コメント行を検索対象から除外する」
>というのもできませんか?

現状では、関数を範囲選択してからやるしか方法はありません。
将来的なネタとして検討させていただきます。
V4.10ではやらないことにします。

[ ]
RE:05590 C言語の編集に関する機能要望(No.05595
Iranoan さん 04/06/18 19:38
 
 YoungMoon さん今日は、Iranoan です。
> 「C言語の関数内検索機能」って、できませんか?
<中略>
> あと、これに付随して、「コメント行を検索対象から除外する」
 β版の Ver.4.10 だけが対象なら、末尾のマクロで如何でしょう? モードが
「C 言語/Java」でなければ、通常の検索です。
 C 言語が解るということなので、後は適当にカスタマイズしてください(^^)。
//--------------------------------------------------------------------
##ColorComment = getconfig( "ColorComment" );
if( ##ColorComment == 5 || ##ColorComment == 21 ){
  selectcfunc;
  forceinselect 1;//←効いていない???
  main:
  #xx=x;
  #yy=y;
  find;
  if( !result )endmacro;
  if( (#yy == y && #xx >= x) || #yy > y ){
    disablebreak;
    goto SearchUp;
  }
  title "●検索マクロ [Shift+F3]:上候補 [F3]:" +
    "下候補 [Ctrl+F]:検索ウィンドー表示 [Shift+Ctrl+F]:検索開始位置へ";
  disablebreak;
  while(1){
    #k=keypressed;
    if(#k==70){
      if(iskeydown(0x11)){//Ctrl+Shift+F
        moveto #xx,#yy;
        if(!iskeydown(0x10)){//Ctrl+F
          goto main;
        }
      }
    }else if(#k==114){//F3
      if(iskeydown(0x10)==1){//Sift+F3
        SearchUp:
        findup;
        while( result ){
          if( colorcode&0x1F == 3 )findup;
          else break;
        }
      }
      else{//F3のみ
        finddown;
        while( result ){
          if( colorcode&0x1F == 3 )finddown;
          else break;
        }
      }
    }
    else if(#k!=0&&#k!=16&&#k!=17)break;
  }

}
else find;

[ ]