Skip to content

Commit 88b963f

Browse files
authored
Merge pull request #1423 from vim-jp/hh-update-builtin
Update builtin.{txt,jax}
2 parents ac03a7f + be56d6e commit 88b963f

File tree

2 files changed

+280
-11
lines changed

2 files changed

+280
-11
lines changed

doc/builtin.jax

Lines changed: 140 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,48 @@ foldtextresult({lnum}) *foldtextresult()*
29953003

29963004
|method| としても使用できる: >
29973005
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)
29983048
<
29993049
*foreground()*
30003050
foreground() Vimのウィンドウを前面に移動する。この関数はクライアントからVim
@@ -3198,6 +3248,8 @@ getbufinfo([{dict}])
31983248
bufnr バッファ番号。
31993249
changed バッファが変更されている場合はTRUE。
32003250
changedtick バッファに加えられた変更の数。
3251+
command バッファがコマンドラインウィンドウ
3252+
|cmdwin| に属する場合は TRUE。
32013253
hidden バッファが隠されている場合はTRUE。
32023254
lastused バッファが最後に使用されたときの
32033255
|localtime()| のような秒単位のタイムス
@@ -3414,7 +3466,7 @@ getcharmod() *getcharmod()*
34143466
32 マウスのダブルクリック
34153467
64 マウスのトリプルクリック
34163468
96 マウスのクアドラプルクリック (== 32 + 64)
3417-
128 command (Macintosh のみ)
3469+
128 command (Mac) または super (GTK)
34183470
文字自身に含まれていない修飾キーのみ取得できる。つまり、
34193471
Shift-aは修飾キーなしの "A" となる。修飾なしの場合は 0 を返す。
34203472

@@ -3547,6 +3599,7 @@ getcompletion({pat}, {type} [, {filtered}]) *getcompletion()*
35473599
help ヘルプ項目
35483600
highlight ハイライトグループ
35493601
history |:history| サブオプション
3602+
keymap キーボードマッピング
35503603
locale ロケール名 (locale -aの出力)
35513604
mapclear バッファ引数
35523605
mapping マッピング名
@@ -5091,8 +5144,12 @@ items({dict}) *items()*
50915144
for [key, value] in items(mydict)
50925145
echo key .. ': ' .. value
50935146
endfor
5147+
<
5148+
リストまたは文字列引数もサポートされている。このようなケースで
5149+
は、items() はインデックスとインデックスの値を含むリストを返
5150+
す。
50945151

5095-
< |method| としても使用できる: >
5152+
|method| としても使用できる: >
50965153
mydict->items()
50975154

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

59496006
|method| としても使用できる: >
59506007
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, '$')
59516053

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

60766178
|method| としても使用できる: >
60776179
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')
60786214

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

0 commit comments

Comments
 (0)