如何在 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
目的。但我不知道如何从那里获取选定的文本。
此插件必须按以下方式工作: 当我在 View 中调用它时...
... 它应该设置文本 "dow = self.w"
到变量 sel
当我做 str(sel)
它返回 <sublime.Selection object at 0x1047fd8d0>
Docs对我来说不是很清楚。
最佳答案
我对文档的理解是这样的:
听起来像 sublime.View
对象的 sel()
方法返回一个 sublime.Selection
对象,它是一个容器区域——因此您应该能够遍历其内容(它包含的区域)或使用 []
操作对其进行索引。
通过调用 的
对象。这是有道理的,因为这个编辑器允许同时进行多个选择——恕我直言,这是它的一个更酷的功能。substr(region)
方法,您可以在 Selection
中获取与每个 sublime.Region
关联的文本>sublime.View
希望这对您有所帮助。
关于python - api : how to get selected text from object sublime. 选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19707727/