C# #region〜#endregion が入れ子の場合のNo.23488
さつなを さん 07/09/05 14:52
 
長年愛用させていただいております。

アウトラインの折りたたみ機能にて、C# の #region〜#endregion が、
下記例のとおり入れ子になっている場合、外側の #region からは直近
の #endregion を対象として折りたたんでしまいます。

例)
-   #region A
        :
        #region B
            :
        #endregion (B)
    #endregion (A)

        ↓“#region A”で折りたたむ

+   #region A
        :
        #endregion (B)
    #endregion (A)

これを if ブロックの {} 同様に、入れ子になっていても対になる
#region〜#endregion で折りたたむようにはできないでしょうか?

設定で対応可能であればご回答を、機能としての実装が必要であれば、
要望の採用ご検討を、よろしくお願いいたします。

[ ]
RE:23488 C# #region〜#endregion が入れNo.23489
秀丸担当 さん 07/09/05 16:06
 

>アウトラインの折りたたみ機能にて、C# の #region〜#endregion が、
>下記例のとおり入れ子になっている場合、外側の #region からは直近
>の #endregion を対象として折りたたんでしまいます。

#ifと#ifdefの入れ子は対応していたのですが、#regionの入れ子には対応してい
なかったです。すみません。

もしソースが綺麗にインデントされているのであれば、[その他]→[ファイルタ
イプ別の設定]→[アウトライン]→[折りたたみ]→[折りたたみ可能な条件の設
定]で、「#ifdef等の対応」をOFFにしておけば、インデントだけを判断するよう
になりますが、あまりいい解決方法ではないかもしれません。

V7.00はもう正式版にしてしまったのですが、今後のバージョンで検討したいと
思います。

[ ]