Skip to content

Commit 5a9397b

Browse files
committedApr 2, 2019
if_lua.txt: Vim 8.1.1099 まで追従
1 parent 928f13d commit 5a9397b

File tree

1 file changed

+44
-14
lines changed

1 file changed

+44
-14
lines changed
 

‎doc/if_lua.jax

+44-14
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,12 @@ Vim の Lua インターフェイス *lua* *Lua*
1010
2. vim モジュール |lua-vim|
1111
3. List ユーザーデータ |lua-list|
1212
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|
1819

1920
{Vi にはこれらのコマンドはありません}
2021

@@ -251,7 +252,36 @@ list ユーザーデータと同様、dict ユーザーデータは vim の辞
251252
<
252253

253254
==============================================================================
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*
255285

256286
Funcref ユーザーデータは Vim における関数参照変数を表します。"dict" 属性付きで
257287
定義された Vim の関数参照 はその呼び出し時に "self" に適切に辞書が代入できるよ
@@ -284,7 +314,7 @@ Funcref ユーザーデータは Vim における関数参照変数を表しま
284314
<
285315

286316
==============================================================================
287-
6. バッファユーザーデータ *lua-buffer*
317+
7. バッファユーザーデータ *lua-buffer*
288318

289319
バッファユーザーデータは Vim のバッファを表します。バッファユーザーデータ "b"
290320
は以下のプロパティとメソッドを持っています:
@@ -341,7 +371,7 @@ Funcref ユーザーデータは Vim における関数参照変数を表しま
341371
<
342372

343373
==============================================================================
344-
7. ウィンドウユーザーデータ *lua-window*
374+
8. ウィンドウユーザーデータ *lua-window*
345375

346376
ウィンドウオブジェクトは Vim のウィンドウを表します。ウィンドウユーザーデータ
347377
"w" は以下のプロパティとメソッドを持っています:
@@ -373,7 +403,7 @@ Funcref ユーザーデータは Vim における関数参照変数を表しま
373403
<
374404

375405
==============================================================================
376-
8. luaeval 関数 *lua-luaeval* *lua-eval*
406+
9. luaeval() Vim 関数 *lua-luaeval* *lua-eval*
377407

378408
"luaeval" は "vim.eval" と対となる関数で Lua の値を Vim に渡すことができます。
379409
"luaeval" は式文字列と任意の引数を受け取り、式の結果を返します。意味的には次の
@@ -385,10 +415,10 @@ Lua コードと同じです:
385415
return chunk(arg) -- return typval
386416
end
387417
<
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 の型を変換しようとするとエラーが返されます。
392422

393423
例: >
394424
@@ -403,7 +433,7 @@ Note "_A" には "luaeval" の引数が渡されます。Lua の数値、文字
403433
404434
405435
==============================================================================
406-
9. 動的ローディング *lua-dynamic*
436+
10. 動的ローディング *lua-dynamic*
407437

408438
MS-Windows と Unix では Lua ライブラリを動的にロードすることができます。
409439
|+lua/dyn||:version| の出力に含まれている時に利用できます。

0 commit comments

Comments
 (0)
Please sign in to comment.