Textmate の優れた点の 1 つは、次のようにスコープ全体の内容をコマンドにパイプできることです。
meta.class.python
次に、または何でも使用するスコープを指定できます。
現在のスコープ全体をプラグインの入力としてパイプする小さなプラグインを作成しようとしています (たとえば、(私がやろうとしていることとは異なりますが、閉じます)、全体をコメントアウトできる関数)すべてを選択せずにPythonクラス)
現在の選択を入力として使用するのは非常に簡単です。
import sublime, sublime_plugin
import re
class DoStuffWithSelection(sublime_plugin.TextCommand):
def run(self, edit):
for region in self.view.sel():
if not region.empty():
changed = region # Do something to the selection
self.view.replace(edit, region, changed) # Replace the selection
Sublime Text プラグイン API を調べて、 のようなことをする方法を探しましたfor region in self.view.scope()
が、成功しませんでした。
では、カーソルの下にある現在のスコープの内容をプラグイン関数の入力として使用する方法はありますか? または、さらに良いことに、選択がない場合はスコープ全体を使用する方法ですが、選択がある場合は選択を使用します。
ありがとう!