1
- *fold.txt* For Vim バージョン 9.0. Last change: 2022 Jan 22
1
+ *fold.txt* For Vim バージョン 9.0. Last change: 2022 Oct 01
2
2
3
3
4
4
VIMリファレンスマニュアル by Bram Moolenaar
72
72
クリプトとして実行される。例:
73
73
タブで始まる一連の行範囲を1つの折り畳みにまとめる: >
74
74
:set foldexpr=getline(v:lnum)[0]==\"\\t\"
75
- 折り畳みレベルを計算するのに Vim script の関数を呼び出す: >
76
- :set foldexpr=MyFoldLevel(v:lnum)
77
75
空行で仕切られた「段落」を折り畳みとする: >
78
76
:set foldexpr=getline(v:lnum)=~'^\\s*$'&&getline(v:lnum+1)=~'\\S'?'<1':1
79
77
同じ事(「段落」を折り畳みに)をする別の表現: >
80
78
:set foldexpr=getline(v:lnum-1)=~'^\\s*$'&&getline(v:lnum)=~'\\S'?'>1':1
81
79
80
+ 最も効果的なのはコンパイル済み関数を引数なしで呼ぶ: >
81
+ :set foldexpr=MyFoldLevel()
82
+ 関数は v:lnum を使用しなくてはいけない。| expr-option-function | を参照。
83
+
82
84
バックスラッシュ(日本では \ 記号)が ":set" の流儀で、通常とは異なるキャラクタ
83
85
(空白文字、バックスラッシュ、ダブルクォート、その他、詳細は| option-backslash |
84
86
参照)をエスケープしていることに注意。
@@ -499,7 +501,7 @@ zk カーソルより上方の折り畳みへ移動する。閉じられた折
499
501
500
502
これは折り畳みの最初の1行を、"/*" と "*/" を追加し "{{{" を削除して表示する。
501
503
多めのバックスラッシュ(\ 記号)はある文字が ":set" コマンドに解釈されてしまうの
502
- を避けるために使用されている。これは以下のように関数を定義するとより簡単になる :
504
+ を避けるために使用されている。これは以下のように関数を定義すると最も簡単になる :
503
505
>
504
506
505
507
:set foldtext=MyFoldText()
@@ -509,6 +511,9 @@ zk カーソルより上方の折り畳みへ移動する。閉じられた折
509
511
: return v:folddashes .. sub
510
512
:endfunction
511
513
514
+ 引数なしでの関数呼び出しを使用する利点は高速なことである、
515
+ | expr-option-function | を参照のこと。
516
+
512
517
'foldtext' は| sandbox | 環境下で実行評価される。現在のウィンドウはそのラインの属
513
518
するウィンドウへ設定される。コンテキストはオプションを最後に設定したスクリプト
514
519
のものが設定される。
0 commit comments