Skip to content

Commit 067f14e

Browse files
committed
Update if_pyth.{txt,jax}
1 parent f922757 commit 067f14e

File tree

2 files changed

+54
-15
lines changed

2 files changed

+54
-15
lines changed

doc/if_pyth.jax

Lines changed: 31 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*if_pyth.txt* For Vim バージョン 9.1. Last change: 2024 Nov 09
1+
*if_pyth.txt* For Vim バージョン 9.1. Last change: 2025 Mar 26
22

33

44
VIMリファレンスマニュアル by Paul Moore
@@ -174,12 +174,13 @@ vim.command(str) *python-command*
174174
:py vim.command("python print 'Hello again Python'")
175175
176176
vim.eval(str) *python-eval*
177-
vim内の式評価を使って、式を評価します(|expression|を参照)。戻り値は、
177+
vim 内の式評価を使って、式を評価します (|expression|を参照)。戻り値は、
178178
次の通り:
179-
- Vimの式を評価した結果が文字列か数値ならば文字列
180-
- Vimの式を評価した結果がリストならばリスト
181-
- Vimの式を評価した結果がVimの辞書ならば辞書
182-
辞書とリストは再帰的に展開されます。
179+
- Vim の式を評価した結果が文字列か数値ならば文字列
180+
- Vim の式を評価した結果がリストならばリスト
181+
- Vim の式を評価した結果が Vim の tuple ならば tuple
182+
- Vim の式を評価した結果が Vim の辞書ならば辞書
183+
辞書、リストおよび tuple は再帰的に展開されます。
183184
例: >
184185
:" 'textwidth' オプションの値
185186
:py text_width = vim.eval("&tw")
@@ -190,7 +191,9 @@ vim.eval(str) *python-eval*
190191
:" 結果は文字列であることに注意!数値に変換するには、string.atoi()
191192
:" を使うこと。
192193
:py str = vim.eval("12+12")
193-
194+
:
195+
:py tuple = vim.eval('(1, 2, 3)')
196+
:
194197
:py tagList = vim.eval('taglist("eval_expr")')
195198
< 最後のコマンドはPython辞書のPythonリストを返します。例:
196199
[{'cmd': '/^eval_expr(arg, nextcmd)$/', 'static': 0, 'name': ~
@@ -201,10 +204,10 @@ vim.eval(str) *python-eval*
201204
出すときに {locals} 辞書を使用します。
202205

203206
vim.bindeval(str) *python-bindeval*
204-
|python-eval| と似ていますが、特殊なオブジェクトを返します
205-
(|python-bindeval-objects| 参照)。これを使うと Vim のリスト (|List|)
206-
や辞書 (|Dictionary|) を変更したり、Vim の関数 (|Funcref|) を呼び出し
207-
たりできます。
207+
|python-eval| と似ていますが、|python-bindeval-objects| で説明されてい
208+
る特別なオブジェクトを返します。これらの Python オブジェクトを使用する
209+
と、vim オブジェクトを変更 (|List||Tuple| または |Dictionary|) した
210+
り、呼び出し (|Funcref|) たりできます。
208211

209212
vim.strwidth(str) *python-strwidth*
210213
|strwidth()| と同じ。str の画面上の幅を数値で返す。タブ文字は 1 幅とし
@@ -676,6 +679,23 @@ vim.List オブジェクト *python-List*
676679
print isinstance(l, vim.List) # True
677680
class List(vim.List): # サブクラス化
678681
682+
vim.Tuple オブジェクト *python-Tuple*
683+
vim |Tuple| 型へのアクセスを提供するシーケンスのようなオブジェクト。
684+
`.locked` 属性をサポートします。|python-.locked| を参照。次のメソッドもサ
685+
ポートします:
686+
メソッド 説明 ~
687+
__new__(), __new__(iterable)
688+
`vim.Tuple()` を使用して新しい vim tuple を作成できま
689+
す。引数がない場合、空のリストが構築されます。
690+
691+
例: >
692+
t = vim.Tuple("abc") # コンストラクタ。結果: ('a', 'b', 'c')
693+
print t[1:] # スライス
694+
print t[0] # アイテム取得
695+
for i in t: # イテレーション
696+
print isinstance(t, vim.Tuple) # True
697+
class Tuple(vim.Tuple): # サブクラス化
698+
679699
vim.Function オブジェクト *python-Function*
680700
Vim の関数参照 (|Funcref|) と似た動作をする関数系オブジェクト。
681701
特別な引数として `self` を指定できる (|Dictionary-function| 参照)。

en/if_pyth.txt

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*if_pyth.txt* For Vim version 9.1. Last change: 2024 Nov 09
1+
*if_pyth.txt* For Vim version 9.1. Last change: 2025 Mar 26
22

33

44
VIM REFERENCE MANUAL by Paul Moore
@@ -184,8 +184,9 @@ vim.eval(str) *python-eval*
184184
evaluator (see |expression|). Returns the expression result as:
185185
- a string if the Vim expression evaluates to a string or number
186186
- a list if the Vim expression evaluates to a Vim list
187+
- a tuple if the Vim expression evaluates to a Vim tuple
187188
- a dictionary if the Vim expression evaluates to a Vim dictionary
188-
Dictionaries and lists are recursively expanded.
189+
Dictionaries, lists and tuples are recursively expanded.
189190
Examples: >
190191
:" value of the 'textwidth' option
191192
:py text_width = vim.eval("&tw")
@@ -196,6 +197,8 @@ vim.eval(str) *python-eval*
196197
:" Result is a string! Use string.atoi() to convert to a number.
197198
:py str = vim.eval("12+12")
198199
:
200+
:py tuple = vim.eval('(1, 2, 3)')
201+
:
199202
:py tagList = vim.eval('taglist("eval_expr")')
200203
< The latter will return a python list of python dicts, for instance:
201204
[{'cmd': '/^eval_expr(arg, nextcmd)$/', 'static': 0, 'name': ~
@@ -207,8 +210,8 @@ vim.eval(str) *python-eval*
207210

208211
vim.bindeval(str) *python-bindeval*
209212
Like |python-eval|, but returns special objects described in
210-
|python-bindeval-objects|. These python objects let you modify (|List|
211-
or |Dictionary|) or call (|Funcref|) vim objects.
213+
|python-bindeval-objects|. These python objects let you modify
214+
(|List|, |Tuple| or |Dictionary|) or call (|Funcref|) vim objects.
212215

213216
vim.strwidth(str) *python-strwidth*
214217
Like |strwidth()|: returns number of display cells str occupies, tab
@@ -688,6 +691,22 @@ vim.List object *python-List*
688691
print isinstance(l, vim.List) # True
689692
class List(vim.List): # Subclassing
690693
694+
vim.Tuple object *python-Tuple*
695+
Sequence-like object providing access to vim |Tuple| type.
696+
Supports `.locked` attribute, see |python-.locked|. Also supports the
697+
following methods:
698+
Method Description ~
699+
__new__(), __new__(iterable)
700+
You can use `vim.Tuple()` to create new vim tuples.
701+
Without arguments constructs empty list.
702+
Examples: >
703+
t = vim.Tuple("abc") # Constructor, result: ('a', 'b', 'c')
704+
print t[1:] # slicing
705+
print t[0] # getting item
706+
for i in t: # iteration
707+
print isinstance(t, vim.Tuple) # True
708+
class Tuple(vim.Tuple): # Subclassing
709+
691710
vim.Function object *python-Function*
692711
Function-like object, acting like vim |Funcref| object. Accepts special
693712
keyword argument `self`, see |Dictionary-function|. You can also use

0 commit comments

Comments
 (0)