Sublime Text(3)插件定义新面板

时间:2013-11-27 01:06:32

标签: sublimetext2 sublimetext sublimetext3 sublime-text-plugin

我看到很多调用此show_panel函数并使用args这样的对象:

{
    "keys": ["ctrl+shift+f"],
    "command": "show_panel",
    "args": {"panel": "find_in_files"}
}

我找不到定义show_panel函数的位置,并开始认为它没有暴露。是否可以定义新的面板?

1 个答案:

答案 0 :(得分:6)

是。这是可能的。
在Sublime Text 2中,基本上你需要的是:

  1. 创建一个输出面板:window.get_output_panel(“paneltest”),返回< sublime.View对象>
  2. 启用版本:< sublime.View对象> .set_read_only(False)
  3. 打开缓冲区编辑器:< sublime.View对象> .begin_edit(),返回< sublime.Edit对象>
  4. 写入您要查看的内容:< sublime.View object> .insert(edit,pt.size(),“Writing ...”)
  5. 关闭缓冲区编辑器:< sublime.View object> .end_edit()
  6. 禁用版本:< sublime.View对象> .set_read_only(True)
  7. 显示您的面板:window.run_command(“show_panel”,{“panel”:“output.paneltest”})
  8. 要进行测试,请在Sublime中的控制台视图上逐一输入上述行:

    pt = window.get_output_panel("paneltest")
    pt.set_read_only(False)
    edit = pt.begin_edit()
    pt.insert(edit, pt.size(), "Writing...")
    pt.end_edit(edit)
    window.run_command("show_panel", {"panel": "output.paneltest"})
    

    在Sublime Text 3中,不要执行第3步和第5步。