1
- *builtin.txt* For Vim バージョン 9.1. Last change: 2023 Nov 20
1
+ *builtin.txt* For Vim バージョン 9.1. Last change: 2024 Jan 25
2
2
3
3
4
4
VIMリファレンスマニュアル by Bram Moolenaar
@@ -215,6 +215,9 @@ foldclosedend({lnum}) 数値 {lnum}の折り畳みの最後の行(閉じてい
215
215
foldlevel({lnum}) 数値 {lnum}の折り畳みレベル
216
216
foldtext() 文字列 閉じた折り畳みに表示されている行
217
217
foldtextresult({lnum}) 文字列 {lnum}で閉じている折り畳みのテキスト
218
+ foreach({expr1}, {expr2}) リスト/辞書/Blob/文字列
219
+ {expr1} の各項目に対して {expr2} を呼
220
+ び出す
218
221
foreground() 数値 Vimウィンドウを前面に移動する
219
222
fullcommand({name} [, {vim9}]) 文字列 {name} から完全なコマンドを取得
220
223
funcref({name} [, {arglist}] [, {dict}])
@@ -392,6 +395,9 @@ matchadd({group}, {pattern} [, {priority} [, {id} [, {dict}]]])
392
395
matchaddpos({group}, {pos} [, {priority} [, {id} [, {dict}]]])
393
396
数値 位置を {group} で強調表示する
394
397
matcharg({nr}) リスト |:match|の引数
398
+ matchbufline({buf}, {pat}, {lnum}, {end}, [, {dict})
399
+ リスト バッファ {buf} 内のすべての {pat} の
400
+ マッチ
395
401
matchdelete({id} [, {win}]) 数値 {id} で指定されるマッチを削除する
396
402
matchend({expr}, {pat} [, {start} [, {count}]])
397
403
数値 {expr}内で{pat}が終了する位置
@@ -405,6 +411,8 @@ matchlist({expr}, {pat} [, {start} [, {count}]])
405
411
リスト {expr}内の{pat}のマッチと部分マッチ
406
412
matchstr({expr}, {pat} [, {start} [, {count}]])
407
413
文字列 {expr}内の{count}番目の{pat}のマッチ
414
+ matchstrlist({list}, {pat} [, {dict})
415
+ リスト {list} 内のすべての {pat} にマッチ
408
416
matchstrpos({expr}, {pat} [, {start} [, {count}]])
409
417
リスト {expr}内の{count}番目の{pat}のマッチ
410
418
max({expr}) 数値 {expr}内の要素の最大値
@@ -2995,6 +3003,47 @@ foldtextresult({lnum}) *foldtextresult()*
2995
3003
2996
3004
|method| としても使用できる: >
2997
3005
GetLnum()->foldtextresult()
3006
+
3007
+ foreach({expr1}, {expr2}) *foreach()*
3008
+ {expr1} は |List|, |String|, |Blob| または |Dyowictionary| で
3009
+ なければならない。
3010
+ {expr1} の各項目に対して {expr2} を実行する。{expr1} は変更さ
3011
+ れない。その値は |:lockvar| 1 と同様に変更されるかもしれない。
3012
+ |E741|
3013
+ {expr1} を変更するには |map()| および |filter()| を参照。
3014
+
3015
+ {expr2} は |string| か |Funcref| でなければならない。
3016
+
3017
+ {expr2}が |string| の場合、{expr2} 内では |v:val| は現在の項目
3018
+ の値を持つ。|Dictionary| の場合、|v:key| は現在の項目のキーを
3019
+ 持ち、|List| の場合、|v:key| は現在の項目のインデックスを持つ。
3020
+ |Blob| の場合、|v:key| は現在のバイトインデックスを持つ。
3021
+ |String| の場合、|v:key| は現在の文字インデックスを持つ。
3022
+
3023
+ 例: >
3024
+ call foreach(mylist, 'used[v:val] = true')
3025
+ < これは {expr1} リスト内の項目を記録する。
3026
+
3027
+ Note {expr2} は式の結果であり、コマンドとして使用されることに
3028
+ 注意。多くの場合、|literal-string| を使用するのが良い。バック
3029
+ スラッシュを 2 重にする必要がないようにするためでである。
3030
+
3031
+ {expr2} が |Funcref| の場合 2 つの引数を取る必要がある:
3032
+ 1. 現在の項目のキーまたはインデックス。
3033
+ 2. 現在の項目の値。
3034
+ 旧来のスクリプトの lambda では引数を 1 つだけ受け入れてもエラー
3035
+ は発生しないが、Vim9 の lambda では "E1106: One argument too
3036
+ many" になり、引数の数は一致する必要がある。
3037
+ 関数が値を返した場合、その値は無視される。
3038
+
3039
+ すべてのケースで {expr1} を返す。
3040
+ {expr2} の実行中にエラーが発生した場合、{expr1} 内の項目はそれ
3041
+ 以上処理されない。
3042
+ {expr2} が Funcref の場合、"abort" フラグを使用して定義されて
3043
+ いない限り、関数内のエラーは無視される。
3044
+
3045
+ |method| としても使用できる: >
3046
+ mylist->foreach(expr2)
2998
3047
<
2999
3048
*foreground()*
3000
3049
foreground() Vimのウィンドウを前面に移動する。この関数はクライアントからVim
@@ -3198,6 +3247,8 @@ getbufinfo([{dict}])
3198
3247
bufnr バッファ番号。
3199
3248
changed バッファが変更されている場合はTRUE。
3200
3249
changedtick バッファに加えられた変更の数。
3250
+ command バッファがコマンドラインウィンドウ
3251
+ |cmdwin| に属する場合は TRUE。
3201
3252
hidden バッファが隠されている場合はTRUE。
3202
3253
lastused バッファが最後に使用されたときの
3203
3254
|localtime()| のような秒単位のタイムス
@@ -3414,7 +3465,7 @@ getcharmod() *getcharmod()*
3414
3465
32 マウスのダブルクリック
3415
3466
64 マウスのトリプルクリック
3416
3467
96 マウスのクアドラプルクリック (== 32 + 64)
3417
- 128 command (Macintosh のみ )
3468
+ 128 command (Mac) または super (GTK )
3418
3469
文字自身に含まれていない修飾キーのみ取得できる。つまり、
3419
3470
Shift-aは修飾キーなしの "A" となる。修飾なしの場合は 0 を返す。
3420
3471
@@ -3547,6 +3598,7 @@ getcompletion({pat}, {type} [, {filtered}]) *getcompletion()*
3547
3598
help ヘルプ項目
3548
3599
highlight ハイライトグループ
3549
3600
history |:history| サブオプション
3601
+ keymap キーボードマッピング
3550
3602
locale ロケール名 (locale -aの出力)
3551
3603
mapclear バッファ引数
3552
3604
mapping マッピング名
@@ -5091,8 +5143,12 @@ items({dict}) *items()*
5091
5143
for [key, value] in items(mydict)
5092
5144
echo key .. ': ' .. value
5093
5145
endfor
5146
+ <
5147
+ リストまたは文字列引数もサポートされている。このようなケースで
5148
+ は、items() はインデックスとインデックスの値を含むリストを返
5149
+ す。
5094
5150
5095
- < |method| としても使用できる: >
5151
+ |method| としても使用できる: >
5096
5152
mydict->items()
5097
5153
5098
5154
job_ 関数群はここに文書化されている: |job-functions-details|
@@ -5948,6 +6004,51 @@ matcharg({nr}) *matcharg()*
5948
6004
5949
6005
|method| としても使用できる: >
5950
6006
GetMatch()->matcharg()
6007
+ <
6008
+ *matchbufline()*
6009
+ matchbufline({buf}, {pat}, {lnum}, {end}, [, {dict}])
6010
+ バッファ {buf} 内の {lnum} から {end} までの行で、{pat} がマッ
6011
+ チした行の |List| を返す。
6012
+
6013
+ {lnum} と {end} には、行番号または {buf} の最後の行を参照する
6014
+ 文字列 "$" を指定できる。
6015
+
6016
+ {dict} 引数は次の項目をサポートする:
6017
+ submatches サブマッチ情報を含める (|/\(|)
6018
+
6019
+ マッチごとに、次の項目を含む |Dict| が返される:
6020
+ byteidx マッチの開始バイトインデックス
6021
+ lnum マッチする行番号
6022
+ text マッチした文字列
6023
+ Note 単一行に複数のマッチが存在する可能性があることに注意。
6024
+
6025
+ この関数はロードされたバッファに対してのみ機能する。必要であれ
6026
+ ば、最初に |bufload()| を呼び出す。
6027
+
6028
+ {buf} が有効なバッファでない場合、バッファがロードされていない
6029
+ 場合、{lnum} または {end} が有効でない場合は、エラー発生し、空
6030
+ の |List| が返される。
6031
+
6032
+ 例: >
6033
+ " バッファ 5 の 3 行目に "a" が含まれていると仮定
6034
+ :echo matchbufline(5, '\<\k\+\>', 3, 3)
6035
+ [{'lnum': 3, 'byteidx': 0, 'text': 'a'}]
6036
+ " バッファ 10 の 4 行目に "tik tok" が含まれていると仮定
6037
+ :echo matchbufline(10, '\<\k\+\>', 1, 4)
6038
+ [{'lnum': 4, 'byteidx': 0, 'text': 'tik'}, {'lnum': 4, 'byteidx': 4, 'text': 'tok'}]
6039
+ <
6040
+ {submatch} が存在し、v:true の場合、"\1"、"\2" 等のサブマッチ
6041
+ も返される。例: >
6042
+ " バッファ 2 の 2 行目に "acd" が含まれていると仮定
6043
+ :echo matchbufline(2, '\(a\)\?\(b\)\?\(c\)\?\(.*\)', 2, 2
6044
+ \ {'submatches': v:true})
6045
+ [{'lnum': 2, 'byteidx': 0, 'text': 'acd', 'submatches': ['a', '', 'c', 'd', '', '', '', '', '']}]
6046
+ < "submatches" リストには常に 9 個のアイテムが含まれる。サブマッ
6047
+ チが見つからない場合、そのサブマッチに対しては空文字列が返され
6048
+ る。
6049
+
6050
+ |method| としても使用できる: >
6051
+ GetBuffer()->matchbufline('mypat', 1, '$')
5951
6052
5952
6053
matchdelete({id}, [, {win}]) *matchdelete()* *E802* *E803*
5953
6054
|matchadd()| または |:match| で定義したマッチの中で ID が {id}
@@ -6075,6 +6176,40 @@ matchlist({expr}, {pat} [, {start} [, {count}]]) *matchlist()*
6075
6176
6076
6177
|method| としても使用できる: >
6077
6178
GetText()->matchlist('word')
6179
+ <
6180
+ *matchstrlist()*
6181
+ matchstrlist({list}, {pat} [, {dict}])
6182
+ {pat} がマッチする {list} 内のマッチの |List| を返す。
6183
+ {list} は文字列の |List| である。{list} 内の各文字列に対して
6184
+ {pat} がマッチする。
6185
+
6186
+ {dict} 引数は次の項目をサポートする:
6187
+ submatches サブマッチ情報を含める (|/\(|)
6188
+
6189
+ マッチごとに、次の項目を含む |Dict| が返される:
6190
+ byteidx マッチの開始バイトインデックス。
6191
+ idx {list} 内のマッチのインデックス。
6192
+ text マッチした文字列
6193
+ submatches サブマッチのリスト。{dict} で "submatches" が
6194
+ v:true に設定されている場合にのみ存在する。
6195
+
6196
+ 例: >
6197
+ :echo matchstrlist(['tik tok'], '\<\k\+\>')
6198
+ [{'idx': 0, 'byteidx': 0, 'text': 'tik'}, {'idx': 0, 'byteidx': 4, 'text': 'tok'}]
6199
+ :echo matchstrlist(['a', 'b'], '\<\k\+\>')
6200
+ [{'idx': 0, 'byteidx': 0, 'text': 'a'}, {'idx': 1, 'byteidx': 0, 'text': 'b'}]
6201
+ <
6202
+ "submatch" が存在し、v:true の場合、"\1"、"\2" 等のサブマッチ
6203
+ も返される。例: >
6204
+ :echo matchstrlist(['acd'], '\(a\)\?\(b\)\?\(c\)\?\(.*\)',
6205
+ \ #{submatches: v:true})
6206
+ [{'idx': 0, 'byteidx': 0, 'text': 'acd', 'submatches': ['a', '', 'c', 'd', '', '', '', '', '']}]
6207
+ < "submatches" リストには常に 9 個のアイテムが含まれる。サブマッ
6208
+ チが見つからない場合、そのサブマッチに対しては空文字列が返され
6209
+ る。
6210
+
6211
+ |method| としても使用できる: >
6212
+ GetListOfStrings()->matchstrlist('mypat')
6078
6213
6079
6214
matchstr({expr}, {pat} [, {start} [, {count}]]) *matchstr()*
6080
6215
|match()| と同じだが、マッチした文字列を返す。例: >
@@ -9929,6 +10064,7 @@ type({expr}) {expr}の型を示す数値を返す。
9929
10064
Blob: 10 |v:t_blob|
9930
10065
クラス: 12 |v:t_class|
9931
10066
オブジェクト: 13 |v:t_object|
10067
+ 型エイリアス: 14 |v:t_typealias|
9932
10068
後方互換性のためには、次のような使い方ができる: >
9933
10069
:if type(myvar) == type(0)
9934
10070
:if type(myvar) == type("")
0 commit comments