[英]api: how to get selected text from object sublime.Selection
如何在sublime text 3
插件中獲取所選文本:
import sublime, sublime_plugin
class plugin_window__go_to_relative_plugin__Command(sublime_plugin.WindowCommand):
def run(self):
window = self.window
view = window.active_view()
sel = view.sel()
sublime.status_message("selection: "+sel)
我的代碼拋出錯誤:
sublime.status_message("selection: "+sel)
TypeError: Can't convert 'Selection' object to str implicitly
view.sel()
返回sublime.Selection
對象。 但我不知道如何從那里獲取選定的文本。
這個插件必須如下工作:當我在視圖上調用它時...
...它應該將文本"dow = self.w"
為變量sel
當我執行str(sel)
它返回<sublime.Selection object at 0x1047fd8d0>
對我來說, 文檔不是很清楚。
如果是單一選擇:
import sublime, sublime_plugin
class selection_plugin__Command(sublime_plugin.WindowCommand):
def run(self):
print('selection_plugin__ called')
window = self.window
view = window.active_view()
sel = view.sel()
region1 = sel[0]
selectionText = view.substr(region1)
print(selectionText)
我對文檔意味着什么的理解是這樣的:
聽起來像sublime.View
對象的sel()
方法返回一個sublime.Selection
對象,它是一個區域的容器 - 所以你應該能夠迭代它的內容(它包含的區域)或使用它來索引它們。 []
操作。
您可以通過調用sublime.View
對象的substr(region)
方法獲取與Selection
每個sublime.Region
關聯的文本。 這是有道理的,因為這個編輯器允許多個同時選擇 - 其中一個較酷的功能,恕我直言。
希望這可以幫助。
在控制台中使用它,然后追加到python view.substr((view.sel())[0])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.