2013-05-13 95 views
1

可以说我有一个快捷方式来触发一个宏来在函数后添加大括号。但我的花括号是PHP比JavaScript的不同:崇高的文本2每个语法不断变化的宏

PHP:

function() 
{ 
..... 
} 

的javascript:

function(){ 
..... 
} 

有没有办法有相同的密钥,其行为不同的宏绑定取决于我写的语法?

回答

6

您可以将多个命令(或本例中的宏)绑定到同一个键并将其与上下文条目区分开来。

你可能要定义的上下文

{ "key": "selector", "operator": "equal", "operand": "source.js", "match_all": true } 

{ "key": "selector", "operator": "equal", "operand": "source.php", "match_all": true } 
+0

Wondefull!谢谢。 – driechel 2013-05-14 06:31:45

+0

尽管我将答案评为接受,因为这是正确的答案。不知何故,这在osx上不适用于我。这个线程http://sublimetext.userecho.com/topic/21146-key-binding-context-to-only-react-on-eg-python-code/(2岁)提到了我经历的同样的错误。有一个解决方案提到使用操作数not_equal。 – driechel 2013-05-14 12:03:23

+1

对于我的情况,我通过使用'source.js'而不是'source.javascript'来解决。你可以检查这个[post](http://kleineblase.wordpress.com/2013/05/26/syntax-specific-key-binding-in-sublime-text-2-eg-fix-javascript-reindent-with- jsformat-and-ctrlshiftf /)更多 – vincentlcy 2013-05-26 12:09:28