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