Skip to content

Commit fe2ed21

Browse files
committed
Update builtin.{txt,jax}
1 parent 4e99cd2 commit fe2ed21

File tree

2 files changed

+279
-11
lines changed

2 files changed

+279
-11
lines changed

doc/builtin.jax

Lines changed: 139 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*builtin.txt* For Vim バージョン 9.1. Last change: 2023 Nov 20
1+
*builtin.txt* For Vim バージョン 9.1. Last change: 2024 Jan 25
22

33

44
VIMリファレンスマニュアル by Bram Moolenaar
@@ -215,6 +215,9 @@ foldclosedend({lnum}) 数値 {lnum}の折り畳みの最後の行(閉じてい
215215
foldlevel({lnum}) 数値 {lnum}の折り畳みレベル
216216
foldtext() 文字列 閉じた折り畳みに表示されている行
217217
foldtextresult({lnum}) 文字列 {lnum}で閉じている折り畳みのテキスト
218+
foreach({expr1}, {expr2}) リスト/辞書/Blob/文字列
219+
{expr1} の各項目に対して {expr2} を呼
220+
び出す
218221
foreground() 数値 Vimウィンドウを前面に移動する
219222
fullcommand({name} [, {vim9}]) 文字列 {name} から完全なコマンドを取得
220223
funcref({name} [, {arglist}] [, {dict}])
@@ -392,6 +395,9 @@ matchadd({group}, {pattern} [, {priority} [, {id} [, {dict}]]])
392395
matchaddpos({group}, {pos} [, {priority} [, {id} [, {dict}]]])
393396
数値 位置を {group} で強調表示する
394397
matcharg({nr}) リスト |:match|の引数
398+
matchbufline({buf}, {pat}, {lnum}, {end}, [, {dict})
399+
リスト バッファ {buf} 内のすべての {pat} の
400+
マッチ
395401
matchdelete({id} [, {win}]) 数値 {id} で指定されるマッチを削除する
396402
matchend({expr}, {pat} [, {start} [, {count}]])
397403
数値 {expr}内で{pat}が終了する位置
@@ -405,6 +411,8 @@ matchlist({expr}, {pat} [, {start} [, {count}]])
405411
リスト {expr}内の{pat}のマッチと部分マッチ
406412
matchstr({expr}, {pat} [, {start} [, {count}]])
407413
文字列 {expr}内の{count}番目の{pat}のマッチ
414+
matchstrlist({list}, {pat} [, {dict})
415+
リスト {list} 内のすべての {pat} にマッチ
408416
matchstrpos({expr}, {pat} [, {start} [, {count}]])
409417
リスト {expr}内の{count}番目の{pat}のマッチ
410418
max({expr}) 数値 {expr}内の要素の最大値
@@ -2995,6 +3003,47 @@ foldtextresult({lnum}) *foldtextresult()*
29953003

29963004
|method| としても使用できる: >
29973005
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)
29983047
<
29993048
*foreground()*
30003049
foreground() Vimのウィンドウを前面に移動する。この関数はクライアントからVim
@@ -3198,6 +3247,8 @@ getbufinfo([{dict}])
31983247
bufnr バッファ番号。
31993248
changed バッファが変更されている場合はTRUE。
32003249
changedtick バッファに加えられた変更の数。
3250+
command バッファがコマンドラインウィンドウ
3251+
|cmdwin| に属する場合は TRUE。
32013252
hidden バッファが隠されている場合はTRUE。
32023253
lastused バッファが最後に使用されたときの
32033254
|localtime()| のような秒単位のタイムス
@@ -3414,7 +3465,7 @@ getcharmod() *getcharmod()*
34143465
32 マウスのダブルクリック
34153466
64 マウスのトリプルクリック
34163467
96 マウスのクアドラプルクリック (== 32 + 64)
3417-
128 command (Macintosh のみ)
3468+
128 command (Mac) または super (GTK)
34183469
文字自身に含まれていない修飾キーのみ取得できる。つまり、
34193470
Shift-aは修飾キーなしの "A" となる。修飾なしの場合は 0 を返す。
34203471

@@ -3547,6 +3598,7 @@ getcompletion({pat}, {type} [, {filtered}]) *getcompletion()*
35473598
help ヘルプ項目
35483599
highlight ハイライトグループ
35493600
history |:history| サブオプション
3601+
keymap キーボードマッピング
35503602
locale ロケール名 (locale -aの出力)
35513603
mapclear バッファ引数
35523604
mapping マッピング名
@@ -5091,8 +5143,12 @@ items({dict}) *items()*
50915143
for [key, value] in items(mydict)
50925144
echo key .. ': ' .. value
50935145
endfor
5146+
<
5147+
リストまたは文字列引数もサポートされている。このようなケースで
5148+
は、items() はインデックスとインデックスの値を含むリストを返
5149+
す。
50945150

5095-
< |method| としても使用できる: >
5151+
|method| としても使用できる: >
50965152
mydict->items()
50975153

50985154
job_ 関数群はここに文書化されている: |job-functions-details|
@@ -5948,6 +6004,51 @@ matcharg({nr}) *matcharg()*
59486004

59496005
|method| としても使用できる: >
59506006
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, '$')
59516052

59526053
matchdelete({id}, [, {win}]) *matchdelete()* *E802* *E803*
59536054
|matchadd()| または |:match| で定義したマッチの中で ID が {id}
@@ -6075,6 +6176,40 @@ matchlist({expr}, {pat} [, {start} [, {count}]]) *matchlist()*
60756176

60766177
|method| としても使用できる: >
60776178
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')
60786213

60796214
matchstr({expr}, {pat} [, {start} [, {count}]]) *matchstr()*
60806215
|match()| と同じだが、マッチした文字列を返す。例: >
@@ -9929,6 +10064,7 @@ type({expr}) {expr}の型を示す数値を返す。
992910064
Blob: 10 |v:t_blob|
993010065
クラス: 12 |v:t_class|
993110066
オブジェクト: 13 |v:t_object|
10067+
型エイリアス: 14 |v:t_typealias|
993210068
後方互換性のためには、次のような使い方ができる: >
993310069
:if type(myvar) == type(0)
993410070
:if type(myvar) == type("")

0 commit comments

Comments
 (0)