python - api : how to get selected text from object sublime. 选择

标签 python plugins sublimetext2 sublimetext sublimetext3

如何在 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 中调用它时...

sublime text selection

... 它应该设置文本 "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/

相关文章:

即使在 Excel 中禁用了自动更正,Python 代码也会自动将 Excel 工作表中的 "..."转换为 "…"

plugins - Intellij IDEA 看不到插件模块

linux - 为什么sublime建好后显示 "Unable to find target command: exec"?

javascript - 从插件的辅助功能访问 jQuery 对象

javascript - Lightgallery:使图像适合浏览器窗口

ruby-on-rails - Mavericks 安装后 Sublime Text 2 命令行不工作

c# - 如何在 Sublime Text 2 中检查 C#

python - 用给定列表的元素替换出现的子字符串

python - 从 PID 设置事件/前景窗口

python - 根据文件夹更改的数量触发多个 Jenkins 作业