アウトライン解析との対応で折りたたみNo.05269
夜食奉行 さん 06/10/22 01:40
 
こんばんは,夜食奉行です。

アウトライン解析と折りたたみを使いまくっています。

ところで,
 表示→折りたたみ→すべて折りたたみ
でダイアログボックスが出たとき,
 アウトライン解析との対応
のみをチェックするという手順は,マクロでは

foldall 0x0020;

に対応してますよね。実際に上記の記述のみのマクロを作って実行すると,同じ結果
が得られます。

ところが,好みのファイルを選んでファイルを開き,すべてアウトライン解析との対
応で折りたたむ,という趣旨で

(前略)
if($condition){
  openfile $file;
  foldall 0x0020;
  endmacro;
}

というようなマクロでは,まったくなにも折りたたまれません。
マクロの書き方が間違っているのでしょうか。
それともバグか何かでしょうか。

[ ]
RE:05269 アウトライン解析との対応で折りNo.05270
h-tom さん 06/10/22 07:30
 

h-tom です。

>こんばんは,夜食奉行です。
>
>アウトライン解析と折りたたみを使いまくっています。
>
<省 略>
>というようなマクロでは,まったくなにも折りたたまれません。
>マクロの書き方が間違っているのでしょうか。
>それともバグか何かでしょうか。

ファイルタイプ別の設定で、
「アウトライン」->「折りたたみ」->「折りたたみの表示」->「折りたたみの用の余
白」
にチェックがあるとダメですね。

チェック有りでも、

openfile "*.*";
message "ok";
foldall 0x0020;
endmacro;

こんな感じで、foldallの前に、message文を入れてやると、うまくいきます。

この動作が、バグなのか、仕様なのかは、秀丸担当さんに問い合わせないと、
わからないので、秀丸エディタのサポート会議室で聞いてみては?

[ ]
RE:05270 アウトライン解析との対応で折りNo.05271
夜食奉行 さん 06/10/22 10:25
 
昼間ですが夜食奉行です。

h-tomさん,実験していただきありがとうございます。

>ファイルタイプ別の設定で、
>「アウトライン」->「折りたたみ」->「折りたたみの表示」->「折りたたみの用の
>余白」
>にチェックがあるとダメですね。

そうなんですか。折りたたみ用の余白があると折りたたまれないというのは,やや理
解に苦しみます。

実験された内容を踏まえて,openfileとfoldall 0x0020の間に無意味な処理(left;r
ight;とか)を入れてみましたが。ファイルによって。まったく折りたたまなかった
り,期待とは異なる折りたたみが生じたりして,やはり妙です。

しかし,無駄な処理を挿入するしないに関わらず,すでに該当ファイルを開いた状態
でopenfileを含む例のマクロを実行すると,期待通りに動きます。

週明けの秀丸担当さんの登場を待つことといたします。

[ ]
RE:05271 アウトライン解析との対応で折りNo.05272
h-tom さん 06/10/22 11:22
 

h-tom です。

>そうなんですか。折りたたみ用の余白があると折りたたまれないというのは,やや理
>解に苦しみます。
余白がある場合、アウトライン解析済みと判断しているのかな?
アウトラインや折りたたみの解析が終了する前に、マクロが実行されているような
感じをうけます。

余白がない場合、
「アウトライン解析」 -> 「折りたたみ」
と、やっているようです。(単なる予想ですが)
#余白の有り無しで、マクロの実行時間を比較すると、有りは一瞬で終わりますが、
#無しだと時間がかかっている。

>しかし,無駄な処理を挿入するしないに関わらず,すでに該当ファイルを開いた状態
>でopenfileを含む例のマクロを実行すると,期待通りに動きます。
解析が終了しているからかな?

[ ]