触发 SublimeText 自定义片段时如何省略(或删除)自动匹配括号?
How can I omit (or delete) auto matching parenthesis when triggering a SublimeText custom snippet?
我正在尝试在 SublimeText 中创建一个 JavaScript 箭头函数片段。当我输入一个开放的括号时它应该可用:(
。我希望能够通过 tab 来创建这个:
() => {}
启用自动匹配(我通常喜欢的功能)后,我不知道如何避免这种情况:
() => {})
这是我目前的代码,除了自动匹配问题外效果很好:
<snippet>
<content><![CDATA[
() => {}
]]></content>
<tabTrigger>(</tabTrigger>
<scope>source.js</scope>
</snippet>
片段只能插入文本或替换所选文本 - 它们不能修改文档中其他位置的文本,即使是文本插入符号旁边的文本。我认为实现你想要的最好方法是使用键绑定,当 ( 是按下,然后获取键绑定以插入代码段,避免需要单独的 .sublime-snippet
文件。
{
"keys": ["(", "tab"], "command": "insert_snippet", "args": { "contents": "() => {}" }, "context":
[
{ "key": "selector", "operator": "equal", "operand": "source.js" }
]
},
请注意,如果您希望代码片段仍显示在命令面板 Snippet:
选项中,您可以保留 .sublime-snippet
文件而不会产生任何负面影响 - 键绑定将优先于片段中定义的选项卡触发器。
我正在尝试在 SublimeText 中创建一个 JavaScript 箭头函数片段。当我输入一个开放的括号时它应该可用:(
。我希望能够通过 tab 来创建这个:
() => {}
启用自动匹配(我通常喜欢的功能)后,我不知道如何避免这种情况:
() => {})
这是我目前的代码,除了自动匹配问题外效果很好:
<snippet>
<content><![CDATA[
() => {}
]]></content>
<tabTrigger>(</tabTrigger>
<scope>source.js</scope>
</snippet>
片段只能插入文本或替换所选文本 - 它们不能修改文档中其他位置的文本,即使是文本插入符号旁边的文本。我认为实现你想要的最好方法是使用键绑定,当 ( 是按下,然后获取键绑定以插入代码段,避免需要单独的 .sublime-snippet
文件。
{
"keys": ["(", "tab"], "command": "insert_snippet", "args": { "contents": "() => {}" }, "context":
[
{ "key": "selector", "operator": "equal", "operand": "source.js" }
]
},
请注意,如果您希望代码片段仍显示在命令面板 Snippet:
选项中,您可以保留 .sublime-snippet
文件而不会产生任何负面影响 - 键绑定将优先于片段中定义的选项卡触发器。