From 2aaba3827028a9faa34a0e2bef3df0b76f20893f Mon Sep 17 00:00:00 2001 From: h-east Date: Fri, 3 Jan 2025 08:19:13 +0900 Subject: [PATCH 1/2] Update builtin.{txt,jax} --- doc/builtin.jax | 65 ++++++++++++++++++++++++++++++++++++++++++++++-- en/builtin.txt | 66 ++++++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 126 insertions(+), 5 deletions(-) diff --git a/doc/builtin.jax b/doc/builtin.jax index d64edb9eb..057d7f17d 100644 --- a/doc/builtin.jax +++ b/doc/builtin.jax @@ -1,4 +1,4 @@ -*builtin.txt* For Vim バージョン 9.1. Last change: 2024 Dec 03 +*builtin.txt* For Vim バージョン 9.1. Last change: 2025 Jan 02 VIMリファレンスマニュアル by Bram Moolenaar @@ -73,6 +73,8 @@ balloon_gettext() 文字列 バルーン内のカレントテキストを得る balloon_show({expr}) なし {expr} をバルーン内に表示 balloon_split({msg}) リスト {msg} をバルーンで使われるように分割す る +base64_decode({string}) Blob {string} 文字列を base64 デコードする +base64_encode({blob}) 文字列 {blob} のバイトを base64 エンコードする bindtextdomain({package}, {path}) なし 指定されたパスにテキストドメインをバイ ンドする @@ -294,6 +296,8 @@ getregionpos({pos1}, {pos2} [, {opts}]) リスト 領域の位置のリストを取得 getregtype([{regname}]) 文字列 レジスタの種類を取得 getscriptinfo([{opts}]) リスト 読み込まれたスクリプトの一覧 +getstacktrace() リスト Vim script の現在のスタックトレースを + 取得する gettabinfo([{expr}]) リスト タブページのリスト gettabvar({nr}, {varname} [, {def}]) 任意 タブ{nr}の変数{varname}または{def} @@ -1294,6 +1298,43 @@ balloon_split({msg}) *balloon_split()* 戻り値の型: list または list +base64_decode({string}) *base64_decode()* + {string} の base64 でエンコードされた文字列からデコードされた + バイトを含む Blob を返す。 + + {string} 引数は base64 でエンコードされた文字のみを含み、長さ + は 4 の倍数にする必要がある。 + + エラーの場合は空の blob を返す。 + + 例: > + " デコードされた内容をバイナリファイルに書き込む + call writefile(base64_decode(s), 'tools.bmp') + " Base64でエンコードされた文字列をデコードする + echo list2str(blob2list(base64_decode(encodedstr))) +< + |method| としても使用できる: > + GetEncodedString()->base64_decode() +< + 戻り値の型: |Blob| + + +base64_encode({blob}) *base64_encode()* + {blob} 内のバイトを表す base64 エンコードされた文字列を返す。 + RFC 4648 で定義されている base64 アルファベットが使用される。 + + 例: > + " バイナリファイルの内容をエンコードする + echo base64_encode(readblob('somefile.bin')) + " 文字列をエンコードする + echo base64_encode(list2blob(str2list(somestr))) +< + |method| としても使用できる: > + GetBinaryData()->base64_encode() +< + 戻り値の型: |String| + + bindtextdomain({package}, {path}) *bindtextdomain()* 特定の {package} を {path} にバインドし、|gettext()| 関数を使っ てパッケージの言語固有の翻訳を取得できるようにする。{path} は @@ -1900,9 +1941,14 @@ complete_info([{what}]) *complete_info()* 値は |complete_info_mode| を参照。 pum_visible ポップアップメニューが表示されているなら |TRUE| |pumvisible()| を参照。 - items 補完マッチのリスト。各要素は "word", "abbr", + items 全補完マッチのリスト。各要素は "word", "abbr", "menu", "kind", "info", "user_data" を含む辞書。 |complete-items| を参照。 + matches "items" と同じだが、現在のクエリにマッチするア + イテムのみを返す。"matches" と "items" の両方 + が "what" に含まれている場合、返されるリストの + 名前は "items" のままだが、各アイテムには追加 + の "match" フィールドがある。 selected 選択された補完候補のインデックス。最初のイン デックスが 0。どの補完候補も選択されていなけれ ば -1 (入力したテキストのみ表示、もしくは @@ -4913,6 +4959,21 @@ getscriptinfo([{opts}]) *getscriptinfo()* 戻り値の型: list> +getstacktrace() *getstacktrace()* + Vim script の現在のスタックトレースを返す。 + スタックトレースは |List| で、各項目は次の項目を含む + |Dictionary| である。 + funcref スタックが関数にある場合は funcref、そうでない + 場合はこの項目は存在しない。 + event スタックが autocmd イベントの場合、イベント説 + 明の文字列。それ以外の場合、この項目は存在しな + い。 + lnum スタック上のスクリプトの行番号。 + filepath スタック上のスクリプトのファイルパス。 + + 戻り値の型: list> + + gettabinfo([{tabnr}]) *gettabinfo()* {tabnr}を指定しないと、すべてのタブページに関する情報がリスト |List| として返される。各リスト項目は辞書 |Dictionary| である。 diff --git a/en/builtin.txt b/en/builtin.txt index ac10590b1..d7ed7320f 100644 --- a/en/builtin.txt +++ b/en/builtin.txt @@ -1,4 +1,4 @@ -*builtin.txt* For Vim version 9.1. Last change: 2024 Dec 03 +*builtin.txt* For Vim version 9.1. Last change: 2025 Jan 02 VIM REFERENCE MANUAL by Bram Moolenaar @@ -67,6 +67,8 @@ autocmd_get([{opts}]) List return a list of autocmds balloon_gettext() String current text in the balloon balloon_show({expr}) none show {expr} inside the balloon balloon_split({msg}) List split {msg} as used for a balloon +base64_decode({string}) Blob base64 decode {string} characters +base64_encode({blob}) String base64 encode the bytes in {blob} bindtextdomain({package}, {path}) Bool bind text domain to specified path blob2list({blob}) List convert {blob} into a list of numbers @@ -277,6 +279,7 @@ getregionpos({pos1}, {pos2} [, {opts}]) List get a list of positions for a region getregtype([{regname}]) String type of a register getscriptinfo([{opts}]) List list of sourced scripts +getstacktrace() List get current stack trace of Vim scripts gettabinfo([{expr}]) List list of tab pages gettabvar({nr}, {varname} [, {def}]) any variable {varname} in tab {nr} or {def} @@ -1225,6 +1228,43 @@ balloon_split({msg}) *balloon_split()* Return type: list or list +base64_decode({string}) *base64_decode()* + Return a Blob containing the bytes decoded from the base64 + encoded characters in {string}. + + The {string} argument should contain only base64-encoded + characters and should have a length that is a multiple of 4. + + Returns an empty blob on error. + + Examples: > + " Write the decoded contents to a binary file + call writefile(base64_decode(s), 'tools.bmp') + " Decode a base64-encoded string + echo list2str(blob2list(base64_decode(encodedstr))) +< + Can also be used as a |method|: > + GetEncodedString()->base64_decode() +< + Return type: |Blob| + + +base64_encode({blob}) *base64_encode()* + Return a base64-encoded String representing the bytes in + {blob}. The base64 alphabet defined in RFC 4648 is used. + + Examples: > + " Encode the contents of a binary file + echo base64_encode(readblob('somefile.bin')) + " Encode a string + echo base64_encode(list2blob(str2list(somestr))) +< + Can also be used as a |method|: > + GetBinaryData()->base64_encode() +< + Return type: |String| + + bindtextdomain({package}, {path}) *bindtextdomain()* Bind a specific {package} to a {path} so that the |gettext()| function can be used to get language-specific @@ -1857,10 +1897,15 @@ complete_info([{what}]) *complete_info()* See |complete_info_mode| for the values. pum_visible |TRUE| if popup menu is visible. See |pumvisible()|. - items List of completion matches. Each item is a - dictionary containing the entries "word", + items List of all completion candidates. Each item + is a dictionary containing the entries "word", "abbr", "menu", "kind", "info" and "user_data". See |complete-items|. + matches Same as "items", but only returns items that + are matching current query. If both "matches" + and "items" are in "what", the returned list + will still be named "items", but each item + will have an additional "match" field. selected Selected item index. First index is zero. Index is -1 if no item is selected (showing typed text only, or the last completion after @@ -4953,6 +4998,21 @@ getscriptinfo([{opts}]) *getscriptinfo()* Return type: list> +getstacktrace() *getstacktrace()* + Returns the current stack trace of Vim scripts. + Stack trace is a |List|, of which each item is a |Dictionary| + with the following items: + funcref The funcref if the stack is at the function, + otherwise this item is not exist. + event The string of the event description if the + stack is at autocmd event, otherwise this item + is not exist. + lnum The line number of the script on the stack. + filepath The file path of the script on the stack. + + Return type: list> + + gettabinfo([{tabnr}]) *gettabinfo()* If {tabnr} is not specified, then information about all the tab pages is returned as a |List|. Each List item is a From 182cd00f15ac285fdc39094a2731aef92b9837ea Mon Sep 17 00:00:00 2001 From: h-east Date: Fri, 3 Jan 2025 23:14:57 +0900 Subject: [PATCH 2/2] Fix by review --- doc/builtin.jax | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/builtin.jax b/doc/builtin.jax index 057d7f17d..5664eccba 100644 --- a/doc/builtin.jax +++ b/doc/builtin.jax @@ -1300,7 +1300,7 @@ balloon_split({msg}) *balloon_split()* base64_decode({string}) *base64_decode()* {string} の base64 でエンコードされた文字列からデコードされた - バイトを含む Blob を返す。 + バイト列を含む Blob を返す。 {string} 引数は base64 でエンコードされた文字のみを含み、長さ は 4 の倍数にする必要がある。 @@ -1320,7 +1320,7 @@ base64_decode({string}) *base64_decode()* base64_encode({blob}) *base64_encode()* - {blob} 内のバイトを表す base64 エンコードされた文字列を返す。 + {blob} 内のバイト列を表す base64 エンコードされた文字列を返す。 RFC 4648 で定義されている base64 アルファベットが使用される。 例: >