我在Sublime Text 3中使用CodeFormatter和SassBeautify插件,以便为.scss文件以及.js / .html文件提供语法高亮和格式化。我已经能够为这两个插件设置快捷键,但不能同时为两者设置,具体取决于我所处的文件类型。
[{
"keys": ["ctrl+alt+f"],
"command": "sass_beautify"
}, {
"keys": ["ctrl+alt+f"],
"command": "code_formatter"
}]
有人可以建议怎么做?我试图理解"背景"但这还不够好。
我这样做是错的吗?我还有另一种方法可以实现这个目标吗?
更正了键盘映射文件:
[{
"keys": ["ctrl+alt+f"],
"command": "sass_beautify",
"context": [{
"key": "selector",
"operator": "equal",
"operand": "source.scss"
}]
}, {
"keys": ["ctrl+alt+f"],
"command": "code_formatter",
"context": [{
"key": "selector",
"operator": "not_equal",
"operand": "source.scss"
}]
}]
答案 0 :(得分:1)
添加类似于以下内容的内容作为上下文条目
{ "key": "selector", "operator": "equal", "operand": "source.scss", "match_all": true }
{ "key": "selector", "operator": "equal", "operand": "(text.html, source.js)", "match_all": true }
操作数值是范围条目。有一个特定于平台的键绑定到状态栏中显示范围,但我不记得它们是什么。我个人使用https://github.com/facelessuser/ScopeHunter来检查范围。