[アウトライン] [折りたたみ用の余白]へ[No.41904
ANACOSTIA さん 25/05/03 08:47
 
 [アウトライン] [折りたたみ用の余白]へ[大きい[+]/[-]マーク]を表示させた時、
各LVの行の下に空行が来る場合、直下の空行1行だけ折りたたまれてしまいます(あた
かも空行が直上行より1段階下のLVの時のように、空行直上行に大きい[+]/[-]マーク
が付く)。
 直下の空行1行も、それ以降の空行のような振る舞いにならないでしょうか?

[ ]
RE:41904 [アウトライン] [折りたたみ用のNo.41917
ANACOSTIA さん 25/05/08 17:01
 
 こちらにもご返答戴けないでしょうか。

[ ]
RE:41917 [アウトライン] [折りたたみ用のNo.41918
秀丸担当 さん 25/05/09 08:29
 
見逃していました。大変失礼しました。
大きい[+]/[-]と空行について、わからなかったのですが、以前のやりとりを踏まえ
ると、以下のような定義なのかなと思います。

LV1:^[^\t]
LV2:^\t{1}[^\t]

そして具体的なテキストは、以下のようなものなのかなと思います。(空白4つはタ
ブとして)

aaa
    bbb
    ccc

ddd

問題はcccの行に[+]が付くということかと思います。
折りたたみ用の余白は、折りたたみ対象が連続していて折りたたもうとしても何も折
りたたまれないような場合は表示されないようになっていました。
例の場合、LV2が連続していて、bbb行は折りたたまれる行が無いので表示されないで
す。
大きい[+]/[-]だけでなく、小さい+/-の行の強調表示でも同様です。

これを回避するには、ツリー表示の定義のプロパティで、LV2のほうの[自動的な選択
/部分編集の対象]をOFFにするといいです。
このオプションは大きい[+]/[-]にも効果がありました。

もしかしたら、[ファイルタイプ別の設定]→[アウトライン]→[折りたたみ]→[折り
たたみ可能な条件の設定]→[終端の空行とコメントは除外する]をONにされているか
もしれません。
そうだとして、空行が連続している場合は全て除外されるべきという話になるかもし
れません。
1行の見出しと、それに続く複数行という使い方を想定しているので、それはしてい
ないです。
仮にそうだとして、ご要望という話になると思うので、そういうことで参考にさせて
いただきます。
ヘルプの不足点なども書き足しておきます。

[ ]
RE:41918 [アウトライン] [折りたたみ用のNo.41919
ANACOSTIA さん 25/05/09 13:54
 
 説明不足で申し訳ありません。
 今回の問題は、例テキストの場合、ccc行とddd行の両方に大きい[+]/[-](以下、+-
と略記)が付くというものです。
 (ddd行に+-を表示させない為に)LV1の[自動的な選択/部分編集の対象(T)]をOFFに
したところ、ddd行だけではなくaaa行も+-が消えてしまいました。
 また、(ccc行に+-を表示させない為に)LV2をOFFにすると、bbb行の下にLV3行があ
る場合でもbbb行の+-が消えてしまいます。

 尚、[終端の空行とコメントは除外する(N)]はONです。
 OFFにすると、ccc行とddd行の間に空行複数行がある場合、aaa行の[+]をクリック
すると全ての空行までが折りたたまれてしまい(aaa行の下がddd行になる)、これを避
けたい為です(折りたたんだ状態でも、ccc行とddd行の間の空行は表示させたい)。

 希望する動作は、
 
・aaa行には+-が付く(LV1行が次に来るまでの間にLV2行が存在する為)
・ccc行には+-が付かない(ccc行とddd行の間にLV3行が存在しない為)
・ddd行には+-が付かない(ddd行の下にLV2行が存在しない為)
・aaa行とbbb行の間に空行が存在する場合、aaa行には+-が付く(aaa行と次のLV1行で
あるddd行の間にLV2行が存在する為)
・aaa行の[+]をクリックした時、bbb行とccc行が折りたたまれるが、ccc行とddd行の
間の空行は折りたたまれない
・aaa行とbbb行の間やbbb行とccc行の間に空行が存在する場合も同様に、aaa行の[+]
をクリックすると、bbb行とccc行、及びこれらの行に挟まれる空行が折りたたまれる
が、ccc行とddd行の間の空行は折りたたまれない

というものです。

[ ]
RE:41919 [アウトライン] [折りたたみ用のNo.41920
秀丸担当 さん 25/05/09 16:33
 
詳しい説明ありがとうございます。
全て希望通りにするような設定の組み合わせは無いと思います。
繰り返しになりますが、見出しが連続していて折りたたまれるものが無い場合、[+]
が表示されないのは意図的なものになっています。
見出しだけのような使われ方にするかどうかによって、[自動的な選択/部分編集の対
象]をON/OFFで使い分けることができます。
または、アウトライン解析との対応はOFFにして、インデントの深さのみにしておく
といいかもしれません。これらの方法で使い分けるなどをしてほしいです。
できたらいいという意見もあるということで参考にさせていただきます。

[ ]
RE:41920 [アウトライン] [折りたたみ用のNo.41921
ANACOSTIA さん 25/05/09 17:09
 
 話が噛み合っていないような。


>見出しが連続していて折りたたまれるものが無い場合、[+]が表示されないのは意図
>的なものになっています。

 今回の件は、折りたたまれるものが無い場合でも[+]が表示されることです。


>見出しだけのような使われ方にするかどうかによって、[自動的な選択/部分編集の
>対象]をON/OFFで使い分けることができます。

 [自動的な選択/部分編集の対象(T)]をOFFにすると、下に下位レベルの行があって
も[+]が表示されなくなってしまいます。

 下に下位レベルの行があれば[+]を表示して欲しいし、無ければ[+]を表示しないで
欲しいのです。


>または、アウトライン解析との対応はOFFにして、インデントの深さのみにしておく
>といいかもしれません。

 この方法だと、希望する動作にならないので......。

[ ]
RE:41921 [アウトライン] [折りたたみ用のNo.41922
秀丸担当 さん 25/05/09 17:25
 
ここでいう折りたたみとは、折りたたみ用の余白のことで、アウトラインのツリーの
項目が折りたたみ可能かどうかではなく、本文が折りたたみ可能かどうかという意味
です。

[ ]
RE:41920 [アウトライン] [折りたたみ用のNo.41923
western さん 25/05/09 17:39
 
便乗します

アウトライン枠について試行錯誤しても微妙に思い通りに
動いてくれない悩みは昔から感じてまして

マクロでアウトラインする行とその階層と表示テキスト
を指定できるような機能が欲しいです。

1. インデントを付ける行番号を指定して
2. 親子兄弟関係(あるいはシンプルにインデントの深さ指定)と、
3. アウトライン枠に表示するテキスト
を指定できると、シンプルに任意の見出しが作れる感じでしょうか

今はJSモードでバックグラウンドで処理できますし
colormarker と同じように設定できれば、
Language Service に独自の検索機能(既に類似はありますが)や
独自の他の行の参照機能として(テキストを指定できれば)活用できます
(複数行やヒント用の表示で見せられる)

ANACOSTIA が希望するような細かいコダワリのあるアウトライン表示も
本人の努力やコミュニティの善意で実現できるようになります

[ ]
RE:41922 [アウトライン] [折りたたみ用のNo.41924
ANACOSTIA さん 25/05/10 06:36
 
> 折りたたみ対象が連続していて折りたたもうとしても何も折りたたまれないような
>場合は表示されない
> 見出しが連続していて折りたたまれるものが無い場合、[+]が表示されない

 この文章の意味がやっと理解できたような気がします。
 要は、[+]が表示されないのは、下に同LV行及び上位LV行が来る時のみ。
 そして空行は同LV行でも上位LV行でもない。
 なので、下が空行だと[+]が表示されてしまう。
 そしてその空行が1行だけ折りたたまれてしまう。

 当方の希望は、空行は下位LV行ではないのだから、[+]が表示されず、折りたたま
れないようにできれば...... というもの。
 これが、細かいコダワリのあるアウトライン表示になるのか......。

[ ]
RE:41924 [アウトライン] [折りたたみ用のNo.41925
秀丸担当 さん 25/05/12 11:06
 
そういうことになります。
おそらくLV2(とLV3も?)は見出しだけのような使われ方と思うので、[自動的な選
択/部分編集の対象]はOFFして、あとはインデントの深さなどの小さな+/-でするのが
いいと思います。
ご希望もあるということで参考にさせていただきます。

[ ]
RE:41923 [アウトライン] [折りたたみ用のNo.41926
秀丸担当 さん 25/05/12 11:06
 
アウトライン解析に表示させるテキストは、現状では、ツリー表示項目のプロパティ
で、[オプション(O)>>]を押して、[表示範囲]のところの指定があります。
それ以外の任意はできないです。
ご意見参考にさせていただきます。
もちろんjsモードやブラウザ枠等で自作などもできると思います。(大変ですが)

[ ]
RE:41925 [アウトライン] [折りたたみ用のNo.41927
ANACOSTIA さん 25/05/12 12:23
 
 アウトラインの機能を使う理由は、見出し云々の為ではなく、折りたたみ機能で見
易くする(構文の見通しを立て易くする)為です。
 なのでアウトライン解析の枠も出しません。
 また、特定のLVを折りたたみの対象から外すこともありません。
 そして残念ながら、インデントの深さによる自動判定だと希望する動作にならない
のです。

[ ]