|
3 | 3 | helpname: 'if_pyth' |
4 | 4 | --- |
5 | 5 | <div id='vimCodeElement'> |
6 | | -<a class="Constant" href="if_pyth.html" name="if_pyth.txt">if_pyth.txt</a> For <span class="Identifier">Vim バージョン 9.1.</span> Last change: 2024 Nov 09<br> |
| 6 | +<a class="Constant" href="if_pyth.html" name="if_pyth.txt">if_pyth.txt</a> For <span class="Identifier">Vim バージョン 9.1.</span> Last change: 2025 Mar 26<br> |
7 | 7 | <br> |
8 | 8 | <br> |
9 | 9 | <span class="Identifier">VIMリファレンスマニュアル by Paul Moore</span><br> |
|
179 | 179 | <div class="helpExample"> :py vim.command("python print 'Hello again Python'")</div> |
180 | 180 | <br> |
181 | 181 | vim.eval(str) <a class="Constant" href="if_pyth.html#python-eval" name="python-eval">python-eval</a><br> |
182 | | - vim内の式評価を使って、式を評価します(<a class="Identifier" href="eval.html#expression">expression</a>を参照)。戻り値は、<br> |
| 182 | + vim 内の式評価を使って、式を評価します (<a class="Identifier" href="eval.html#expression">expression</a>を参照)。戻り値は、<br> |
183 | 183 | 次の通り:<br> |
184 | | - - Vimの式を評価した結果が文字列か数値ならば文字列<br> |
185 | | - - Vimの式を評価した結果がリストならばリスト<br> |
186 | | - - Vimの式を評価した結果がVimの辞書ならば辞書<br> |
187 | | - 辞書とリストは再帰的に展開されます。<br> |
| 184 | + - Vim の式を評価した結果が文字列か数値ならば文字列<br> |
| 185 | + - Vim の式を評価した結果がリストならばリスト<br> |
| 186 | + - Vim の式を評価した結果が Vim の tuple ならば tuple<br> |
| 187 | + - Vim の式を評価した結果が Vim の辞書ならば辞書<br> |
| 188 | + 辞書、リストおよび tuple は再帰的に展開されます。<br> |
188 | 189 | 例:<br> |
189 | 190 | <div class="helpExample"> :" 'textwidth' オプションの値<br> |
190 | 191 | :py text_width = vim.eval("&tw")<br> |
|
194 | 195 | :<br> |
195 | 196 | :" 結果は文字列であることに注意!数値に変換するには、string.atoi()<br> |
196 | 197 | :" を使うこと。<br> |
197 | | - :py str = vim.eval("12+12")</div> |
198 | | -<br> |
199 | | -<div class="helpExample"> :py tagList = vim.eval('taglist("eval_expr")')</div> |
| 198 | + :py str = vim.eval("12+12")<br> |
| 199 | + :<br> |
| 200 | + :py tuple = vim.eval('(1, 2, 3)')<br> |
| 201 | + :<br> |
| 202 | + :py tagList = vim.eval('taglist("eval_expr")')</div> |
200 | 203 | 最後のコマンドはPython辞書のPythonリストを返します。例:<br> |
201 | 204 | <span class="PreProc">[{'cmd': '/^eval_expr(arg, nextcmd)$/', 'static': 0, 'name':</span><br> |
202 | 205 | <span class="PreProc">'eval_expr', 'kind': 'f', 'filename': './src/eval.c'}]</span><br> |
|
206 | 209 | 出すときに <span class="Special">{locals}</span> 辞書を使用します。<br> |
207 | 210 | <br> |
208 | 211 | vim.bindeval(str) <a class="Constant" href="if_pyth.html#python-bindeval" name="python-bindeval">python-bindeval</a><br> |
209 | | - <a class="Identifier" href="if_pyth.html#python-eval">python-eval</a> と似ていますが、特殊なオブジェクトを返します<br> |
210 | | - (<a class="Identifier" href="if_pyth.html#python-bindeval-objects">python-bindeval-objects</a> 参照)。これを使うと Vim のリスト (<a class="Identifier" href="eval.html#List">List</a>)<br> |
211 | | - や辞書 (<a class="Identifier" href="eval.html#Dictionary">Dictionary</a>) を変更したり、Vim の関数 (<a class="Identifier" href="eval.html#Funcref">Funcref</a>) を呼び出し<br> |
212 | | - たりできます。<br> |
| 212 | + <a class="Identifier" href="if_pyth.html#python-eval">python-eval</a> と似ていますが、<a class="Identifier" href="if_pyth.html#python-bindeval-objects">python-bindeval-objects</a> で説明されてい<br> |
| 213 | + る特別なオブジェクトを返します。これらの Python オブジェクトを使用する<br> |
| 214 | + と、vim オブジェクトを変更 (<a class="Identifier" href="eval.html#List">List</a>、<span class="MissingTag">Tuple</span> または <a class="Identifier" href="eval.html#Dictionary">Dictionary</a>) した<br> |
| 215 | + り、呼び出し (<a class="Identifier" href="eval.html#Funcref">Funcref</a>) たりできます。<br> |
213 | 216 | <br> |
214 | 217 | vim.strwidth(str) <a class="Constant" href="if_pyth.html#python-strwidth" name="python-strwidth">python-strwidth</a><br> |
215 | 218 | <a class="Identifier" href="builtin.html#strwidth()">strwidth()</a> と同じ。str の画面上の幅を数値で返す。タブ文字は 1 幅とし<br> |
|
681 | 684 | print isinstance(l, vim.List) # True<br> |
682 | 685 | class List(vim.List): # サブクラス化</div> |
683 | 686 | <br> |
| 687 | +vim.Tuple オブジェクト <a class="Constant" href="if_pyth.html#python-Tuple" name="python-Tuple">python-Tuple</a><br> |
| 688 | + vim <span class="MissingTag">Tuple</span> 型へのアクセスを提供するシーケンスのようなオブジェクト。<br> |
| 689 | + <span class="Comment">.locked</span> 属性をサポートします。<a class="Identifier" href="if_pyth.html#python-.locked">python-.locked</a> を参照。次のメソッドもサ<br> |
| 690 | + ポートします:<br> |
| 691 | + <span class="PreProc">メソッド 説明</span><br> |
| 692 | + __new__(), __new__(iterable)<br> |
| 693 | + <span class="Comment">vim.Tuple()</span> を使用して新しい vim tuple を作成できま<br> |
| 694 | + す。引数がない場合、空のリストが構築されます。<br> |
| 695 | +<br> |
| 696 | + 例:<br> |
| 697 | +<div class="helpExample"> t = vim.Tuple("abc") # コンストラクタ。結果: ('a', 'b', 'c')<br> |
| 698 | + print t[1:] # スライス<br> |
| 699 | + print t[0] # アイテム取得<br> |
| 700 | + for i in t: # イテレーション<br> |
| 701 | + print isinstance(t, vim.Tuple) # True<br> |
| 702 | + class Tuple(vim.Tuple): # サブクラス化</div> |
| 703 | +<br> |
684 | 704 | vim.Function オブジェクト <a class="Constant" href="if_pyth.html#python-Function" name="python-Function">python-Function</a><br> |
685 | 705 | Vim の関数参照 (<a class="Identifier" href="eval.html#Funcref">Funcref</a>) と似た動作をする関数系オブジェクト。<br> |
686 | 706 | 特別な引数として <a class="Comment" href="eval.html#self">self</a> を指定できる (<a class="Identifier" href="eval.html#Dictionary-function">Dictionary-function</a> 参照)。<br> |
|
0 commit comments