我为Sublime Text 2编写了一个插件,它与我写的二进制文件进行了对话。我通过settings file将标志暴露给二进制文件,但我无法弄清楚如何将设置文件放入菜单栏。
到目前为止,{p> Here是我最好的尝试。
Here是关于设置的文档(不确定菜单上的文件在哪里)。
答案 0 :(得分:1)
据我所知,为了将自己的项添加到菜单中,其原始声明必须具有预先存在的id
值,然后必须将其包含在任何特定于包的菜单扩展中。例如,考虑Preferences
的默认定义:
{
"caption": "Preferences",
"mnemonic": "n",
"id": "preferences",
"children": [ ... ]
},
值得注意的是,Settings – More
中的Packages/Default/Main.sublime-menu
对象不有id
。
{
"caption": "Settings – More",
"children": [ ... ]
},
您可以通过在默认id
中向Settings – More
添加Main.sublime-menu
值并在您的包id
中添加Main.sublime-menu
来自行证明此要求,同样如何引用Preferences
'id
。然后,您的自定义菜单会显示在Settings – More
下。
基于id
Settings – More
的排除,我认为Sublime Text 2的创建者并不打算让第三方软件包能够编辑相关菜单。另请注意,–
中的Settings – More
不是连字符(-
);这不是你问题的原因,但我最初怀疑它可能是。
向Preferences
添加自己的软件包设置的标准做法似乎是在Preferences -> Package Settings
中插入一个新项目,可以使用Main.sublime-menu
这样的文件来完成:
[
{
"caption": "Preferences",
"mnemonic": "n", // The mnemonics are for quick keyboard access
"id": "preferences",
"children": [
{
"caption": "Package Settings",
"mnemonic": "P", // On windows, Alt+N (above) followed by Alt+P would open this menu
"id": "package-settings",
"children": [
{
"caption": "Seeing Is Believing",
"children": [
{
"command": "open_file",
"args": {"file": "${packages}/Seeing Is Believing/Seeing Is Believing.sublime-settings"},
"caption": "Settings – Default"
}
]
}
]
}
]
}
]
我强烈建议您引用一个菜单丰富的插件Main.sublime-menu
,以确定您应该包含哪些内容以及应该如何执行此操作。在我的研究中,我检查了Sublime Text 2的Main.sublime-menu
和AdvancedNewFile's。