1
- *testing.txt* For Vim バージョン 9.0. Last change: 2022 May 16
1
+ *testing.txt* For Vim バージョン 9.0. Last change: 2023 May 18
2
2
3
3
4
4
VIMリファレンスマニュアル by Bram Moolenaar
@@ -92,7 +92,7 @@ test_gui_event({event}, {args})
92
92
"findrepl" テキストの検索と置換。
93
93
"mouse" マウスのボタンクリックイベント。
94
94
"scrollbar" スクロールバーの移動もしくはドラッグ。
95
- "sendevent" 低レベル GUI イベントを送出する 。
95
+ "key" 低レベルキーボードイベントを送出する 。
96
96
"tabline" マウスクリックによるタブページ行の選択。
97
97
"tabmenu" タブページ行のメニューエントリの選択。
98
98
@@ -131,9 +131,9 @@ test_gui_event({event}, {args})
131
131
マウスのクリック、あるいはマウスの移動のイベントを注入する。
132
132
{args} でサポートする項目は:
133
133
button: マウスボタン。サポートする値は:
134
- 0 右マウスボタン
134
+ 0 左マウスボタン
135
135
1 中央マウスボタン
136
- 2 左マウスボタン
136
+ 2 右マウスボタン
137
137
3 マウスボタンリリース
138
138
4 スクロールホイール下
139
139
5 スクロールホイール上
@@ -163,19 +163,25 @@ test_gui_event({event}, {args})
163
163
左、右あるいは水平スクロールバーの設定もしくはドラッグ。スク
164
164
ロールバーが実際に存在する時のみ動作する。{args} でサポート
165
165
する項目は:
166
- which: スクロールバー 。サポートする値は:
166
+ which: スクロールバーを選択する 。サポートする値は:
167
167
left 現在のウィンドウの左スクロールバー
168
168
right 現在のウィンドウの右スクロールバー
169
169
hor 水平スクロールバー
170
170
value: スクロール量。垂直なスクロールバーの場合、値は
171
171
1からバッファの行数になる。水平スクロールバー
172
172
の場合、'wrap' が設定されていないと仮定すると、
173
173
値は1から最大行長までの間になる。
174
+ value: 垂直スクロールバーの場合、値は 0 からバッファ
175
+ の行数から 1 を引いた値までの範囲になる。水平
176
+ スクロールバーの場合、'wrap' が設定されていな
177
+ いと仮定すると、値は 1 から行の最大長までの間
178
+ の値になる。
174
179
dragging: 1はスクロールバーをドラッグし、0はスクロール
175
180
バーをクリックする。
176
181
177
- "sendevent":
178
- 低レベルの GUI のイベント(例、キーUpやキーDown)を送出する。
182
+ "key":
183
+ 低レベルのキーボードイベント(例、キーUpやキーDown)を送出す
184
+ る。
179
185
現在は MS-Windows のみサポートしている。
180
186
{args} でサポートする項目は:
181
187
event: サポートする文字列値は:
@@ -193,7 +199,7 @@ test_gui_event({event}, {args})
193
199
タブページ行のメニュー項目の選択イベントの注入。{args} でサ
194
200
ポートする項目は:
195
201
tabnr: タブページの番号
196
- item: タブページメニュー項目の番号。1で最初のメニュー
202
+ item: タブページメニュー項目の番号。1で最初のメニュー
197
203
項目、2で2番目の項目になる。
198
204
199
205
GUI イベントを注入した後、おそらく | feedkeys() | を呼び出してそ
@@ -221,6 +227,80 @@ test_ignore_error({expr}) *test_ignore_error()*
221
227
GetErrorText()->test_ignore_error()
222
228
223
229
230
+ test_mswin_event({event} , {args} ) *test_mswin_event()*
231
+ Vim の機能をテストするために、引数 {args} で低レベルの
232
+ MS-Windows {event} を生成する。MS-Windows の GUI でもコンソー
233
+ ルでも動作する。
234
+
235
+ {event} は文字列で、サポートされている値は以下:
236
+ "mouse" マウスイベント。
237
+ "key" キーボードイベント。
238
+
239
+ "mouse":
240
+ マウスボタンクリックイベントまたはマウス移動イベントを注入す
241
+ る。{args} でサポートされる項目は以下:
242
+ button: マウスボタン。サポートされている値は以下:
243
+ 0 右マウスボタン
244
+ 1 中マウスボタン
245
+ 2 左マウスボタン
246
+ 3 マウスボタンリリース
247
+ 4 スクロールホイール下
248
+ 5 スクロールホイール上
249
+ 6 スクロールホイール左
250
+ 7 スクロールホイール右
251
+ row: マウスクリックの行番号。Vim ウィンドウの最初の
252
+ 行は 1 で、最後の行は 'lines' である。
253
+ col: マウスクリックの桁番号。{col} の最大値は
254
+ 'columns' である。
255
+ Note: row と col は、コンソールアプリケーショ
256
+ ンでは常にスクリーンセルとして解釈される。しか
257
+ し、GUI では "cell" に応じてピクセルとして解釈
258
+ される。
259
+ multiclick: 1 に設定すると、マウスをダブルクリックするイベ
260
+ ントが発生する。
261
+ modifiers: キー修飾子。サポートされている値は以下:
262
+ 4 shift が押された
263
+ 8 alt が押された
264
+ 16 ctrl が押された
265
+ move: オプション; 使用され、TRUE の場合、マウス移動
266
+ イベントを生成できる。
267
+ {args} row: と col: のみが使用され、必須。
268
+ 'mousemoveevent' が設定されている場合、または
269
+ ポップアップでマウス移動イベントが使用されてい
270
+ る場合にのみ、イベントが発生する。
271
+ cell: GUI のオプション: 存在し、TRUE の場合、"move"
272
+ はピクセル位置の代わりにスクリーンセルを使用す
273
+ る。コンソールでは使用されない。
274
+
275
+ "key":
276
+ 低レベルのキーボードイベント (例: keyup または keydown) を送
277
+ 信する。
278
+ {args} でサポートされている項目は以下:
279
+ event: サポートされている文字列値は以下:
280
+ keyup キーアップイベントを生成する
281
+ keydown キーダウンイベントを生成する
282
+ keycode: キーアップイベントまたはキーダウンイベントに使
283
+ 用するキーコード。
284
+ modifiers: オプション; キー修飾子。
285
+ サポートされている値は以下:
286
+ 2 shift が押された
287
+ 4 ctrl が押された
288
+ 8 alt が押された
289
+ Note: これらの値はマウス修飾子とは異なる。
290
+ execute: オプション。| feedkeys() | のモードx に似ている。
291
+ これが含まれていて true(非ゼロ)に設定されて
292
+ いる場合、Vim はバッファリングされた未処理の
293
+ キーイベントを処理する。これが設定され true の
294
+ 場合、他のすべての {args} 項目はオプションであ
295
+ る。
296
+
297
+ イベントが正常に追加または実行された場合は TRUE を返し、失敗し
298
+ た場合は FALSE を返す。
299
+
300
+ | method | としても使用できる: >
301
+ GetEvent()->test_mswin_event({args})
302
+ <
303
+
224
304
test_null_blob() *test_null_blob()*
225
305
null の | Blob | を返す。これはテストのみに使われる。
226
306
@@ -295,6 +375,7 @@ test_override({name}, {val}) *test_override()*
295
375
ミナルプロパティをリセットする。
296
376
ui_delay ui_delay() で使用するミリ秒単位の時間; メッ
297
377
セージの最大3秒の待ち時間を上書きする。
378
+ unreachable `throw ` と `:return ` の後のコードにエラーはない
298
379
uptime sysinfo.uptime を上書きする
299
380
vterm_title 端末ウィンドウ内でジョブが走っている場合にウィン
300
381
ドウタイトルを設定する
@@ -304,13 +385,18 @@ test_override({name}, {val}) *test_override()*
304
385
"starting" は、起動が完了したようにテストが振る舞うべきときに
305
386
使われる。テストはスクリプトを読み込むことによって開始されるの
306
387
で、"starting" 変数は非ゼロである。これは通常はいいこと (テス
307
- トが早く実行される) だが、テストが適切に動作しないという点では
308
- 動作を変えてしまっている 。
388
+ トが早く実行される) だが、これによって動作が変化し、テストが適
389
+ 切に動作しなくなる場合がある 。
309
390
次のようにしたとき: >
310
391
call test_override('starting', 1)
311
392
< "starting" の値が保存される。次のようにして復元される: >
312
393
call test_override('starting', 0)
313
394
395
+ < フラグが後でリセットされるようにするには、`:defer `を使うと便
396
+ 利である: >
397
+ call test_override('unreachable', 1)
398
+ defer call test_override('unreachable', 0)
399
+
314
400
< | method | としても使用できる: >
315
401
GetOverrideVal()-> test_override('starting')
316
402
@@ -372,11 +458,12 @@ assert_equal({expected}, {actual} [, {msg}])
372
458
{expected} と{actual} が等しくない場合、| v:errors | にエラーメッセ
373
459
ージを追加し、1 が返る。そうでなければ 0 が返る。
374
460
| assert-return |
461
+ エラーは "Expected {expected} but got {actual} " という形式で
462
+ ある。{msg} が存在する場合は、その接頭辞が付けられる。
463
+
375
464
暗黙的な変換は行われないため、文字列 "4" は数値 4 とは異なる。
376
465
同様に、数値 4 は浮動小数点数 4.0 と異なる。ここでは
377
466
'ignorecase' の値は使われず、大文字小文字は常に区別される。
378
- {msg} が省略された場合、"Expected {expected} but got {actual} "
379
- という形式のメッセージが生成される。
380
467
例: >
381
468
assert_equal('foo', 'bar')
382
469
< 以下の結果が| v:errors | に追加される:
@@ -453,11 +540,12 @@ assert_fails({cmd} [, {error} [, {msg} [, {lnum} [, {context}]]]])
453
540
assert_false({actual} [, {msg} ]) *assert_false()*
454
541
| assert_equal() | と同様に、{actual} がfalseでない場合、| v:errors |
455
542
にエラーメッセージを追加する。
543
+ エラーは "Expected false but got {actual} " という形式である。
544
+ {msg} が存在する場合は、その接頭辞が付けられる。
456
545
| assert-return | も参照。
546
+
457
547
ゼロである時、その値はfalseである。{actual} が数値でない場合、
458
548
テストが失敗する。
459
- {msg} が省略された場合、"Expected False but got {actual} " とい
460
- う形式のメッセージが生成される。
461
549
462
550
| method | としても使用できる: >
463
551
GetResult()->assert_false()
@@ -466,13 +554,16 @@ assert_inrange({lower}, {upper}, {actual} [, {msg}]) *assert_inrange()*
466
554
これは数値または | Float | の値をテストする。{actual} が{lower} よ
467
555
り小さいか{upper} より大きい場合、| v:errors | にエラーメッセージ
468
556
が追加される。| assert-return | も参照。
469
- {msg} を省略すると、"Expected range {lower} - {upper} , but
470
- got {actual} " という形式のエラーが生成される。
557
+ エラーは "Expected range {lower} - {upper} , but got {actual} "
558
+ という形式である。{msg} が存在する場合は、その接頭辞が付けられ
559
+ る。
471
560
472
561
*assert_match()*
473
562
assert_match({pattern} , {actual} [, {msg} ])
474
563
{pattern} が{actual} と一致しない場合、| v:errors | にエラーメッセー
475
564
ジが追加される。| assert-return | も参照。
565
+ エラーは "Pattern {pattern} does not match {actual} " という形
566
+ 式である。{msg} が存在する場合は、その接頭辞が付けられる。
476
567
477
568
| =~ | と同じように{pattern} が使われる: マッチングは 'magic' や
478
569
'cpoptions' の実際の値に関係なく、'magic' が設定され、
@@ -483,8 +574,7 @@ assert_match({pattern}, {actual} [, {msg}])
483
574
両方を使用してテキスト全体を一致させる。{訳注: 使わなければ、
484
575
部分一致で判定が行われる。}
485
576
486
- {msg} を省略すると、"Pattern {pattern} does not match {actual} "
487
- という形式のエラーが生成される。例: >
577
+ 例: >
488
578
assert_match('^f.*o$', 'foobar')
489
579
< これは | v:errors | に文字列が追加されることになる:
490
580
test.vim line 12: Pattern '^f.*o$' does not match 'foobar' ~
@@ -533,8 +623,7 @@ assert_true({actual} [, {msg}]) *assert_true()*
533
623
| assert-return | も参照。
534
624
非ゼロである時、その値はTRUEである。{actual} が数値でない場合、
535
625
テストが失敗する。
536
- {msg} が省略された場合、"Expected True but got {actual} " とい
537
- う形式のメッセージが生成される。
626
+ {msg} が指定されると、デフォルトのメッセージの前に置かれる。
538
627
539
628
| method | としても使用できる: >
540
629
GetResult()->assert_true()
0 commit comments