@@ -10,11 +10,12 @@ Vim の Lua インターフェイス *lua* *Lua*
10
10
2. vim モジュール | lua-vim |
11
11
3. List ユーザーデータ | lua-list |
12
12
4. Dict ユーザーデータ | lua-dict |
13
- 5. Funcref ユーザーデータ | lua-funcref |
14
- 6. バッファユーザーデータ | lua-buffer |
15
- 7. ウィンドウユーザーデータ | lua-window |
16
- 8. luaeval 関数 | lua-luaeval |
17
- 9. 動的ローディング | lua-dynamic |
13
+ 5. Blob ユーザーデータ | lua-blob |
14
+ 6. Funcref ユーザーデータ | lua-funcref |
15
+ 7. バッファユーザーデータ | lua-buffer |
16
+ 8. ウィンドウユーザーデータ | lua-window |
17
+ 9. luaeval() Vim 関数 | lua-luaeval |
18
+ 10. 動的ローディング | lua-dynamic |
18
19
19
20
{Vi にはこれらのコマンドはありません}
20
21
@@ -251,7 +252,36 @@ list ユーザーデータと同様、dict ユーザーデータは vim の辞
251
252
<
252
253
253
254
==============================================================================
254
- 5. Funcref ユーザーデータ *lua-funcref*
255
+ 5. Blob ユーザーデータ *lua-blob*
256
+
257
+ Blob ユーザーデータは vim の Blob を表します。Blob "b" は以下のプロパティを持
258
+ っています。
259
+
260
+ プロパティ
261
+ ----------
262
+ o "#b" は Blob "b" の要素数。Vim の"len(b)" と同じ。
263
+ o "b[k]" は "b" の k 個目の要素を返す。"b" のインデックスは Vim と同じ
264
+ で、0 を基準とする。
265
+ k 個目の要素を変更するには、単に "b[k] = number" とする。特に、
266
+ "b[#b] = number" で末尾にバイトを追加できる。
267
+
268
+ メソッド
269
+ --------
270
+ o "b:add(bytes)" は "bytes" を "b" の末尾に追加する。
271
+
272
+ 例:
273
+ >
274
+ :let b = 0z001122
275
+ :lua b = vim.eval('b') -- same 'b'
276
+ :lua print(b, b[0], #b)
277
+ :lua b[1] = 32
278
+ :lua b[#b] = 0x33 -- append a byte to tail
279
+ :lua b:add("\x80\x81\xfe\xff")
280
+ :echo b
281
+ <
282
+
283
+ ==============================================================================
284
+ 6. Funcref ユーザーデータ *lua-funcref*
255
285
256
286
Funcref ユーザーデータは Vim における関数参照変数を表します。"dict" 属性付きで
257
287
定義された Vim の関数参照 はその呼び出し時に "self" に適切に辞書が代入できるよ
@@ -284,7 +314,7 @@ Funcref ユーザーデータは Vim における関数参照変数を表しま
284
314
<
285
315
286
316
==============================================================================
287
- 6 . バッファユーザーデータ *lua-buffer*
317
+ 7 . バッファユーザーデータ *lua-buffer*
288
318
289
319
バッファユーザーデータは Vim のバッファを表します。バッファユーザーデータ "b"
290
320
は以下のプロパティとメソッドを持っています:
@@ -341,7 +371,7 @@ Funcref ユーザーデータは Vim における関数参照変数を表しま
341
371
<
342
372
343
373
==============================================================================
344
- 7 . ウィンドウユーザーデータ *lua-window*
374
+ 8 . ウィンドウユーザーデータ *lua-window*
345
375
346
376
ウィンドウオブジェクトは Vim のウィンドウを表します。ウィンドウユーザーデータ
347
377
"w" は以下のプロパティとメソッドを持っています:
@@ -373,7 +403,7 @@ Funcref ユーザーデータは Vim における関数参照変数を表しま
373
403
<
374
404
375
405
==============================================================================
376
- 8 . luaeval 関数 *lua-luaeval* *lua-eval*
406
+ 9 . luaeval() Vim 関数 *lua-luaeval* *lua-eval*
377
407
378
408
"luaeval" は "vim.eval" と対となる関数で Lua の値を Vim に渡すことができます。
379
409
"luaeval" は式文字列と任意の引数を受け取り、式の結果を返します。意味的には次の
@@ -385,10 +415,10 @@ Lua コードと同じです:
385
415
return chunk(arg) -- return typval
386
416
end
387
417
<
388
- Note "_A" には "luaeval" の引数が渡されます。Lua の数値、文字列、リスト、辞書
389
- そして Funcref ユーザーデータはそれぞれの Vim の型に変換されます。ただし、Lua
390
- のブール値は数値に変換されます。リスト、辞書および関数参照以外のユーザーデータ
391
- を含む 、それ以外の Lua の型を変換しようとするとエラーが返されます。
418
+ Note "_A" には "luaeval" の引数が渡されます。Lua の数値、文字列、リスト、Blob、
419
+ 辞書そして Funcref ユーザーデータはそれぞれの Vim の型に変換されます。ただし、
420
+ Lua のブール値は数値に変換されます。リスト、辞書および関数参照以外のユーザーデ
421
+ ータを含む 、それ以外の Lua の型を変換しようとするとエラーが返されます。
392
422
393
423
例: >
394
424
@@ -403,7 +433,7 @@ Note "_A" には "luaeval" の引数が渡されます。Lua の数値、文字
403
433
404
434
405
435
==============================================================================
406
- 9 . 動的ローディング *lua-dynamic*
436
+ 10 . 動的ローディング *lua-dynamic*
407
437
408
438
MS-Windows と Unix では Lua ライブラリを動的にロードすることができます。
409
439
| +lua/dyn | が | :version | の出力に含まれている時に利用できます。
0 commit comments