在 Sublime Text 3 中自动将 - -(双破折号)转换为 ->

Convert - -(double dash) to -> automatically in SublimeText 3

在我的工作中,我多次使用 -> 并且在匈牙利语键盘上没有专门的 > 按钮,所以我必须使用 3 个键来输入它,有时我也会打错。 有没有办法自动将 --(双破折号)转换为 ->? Snippet 不太好,因为它需要 TAB 才能转换。 谢谢

可以使用如下简单的键绑定来完成此操作:

{
    "keys": ["-", "-"],
    "command": "insert", "args": {
        "characters": "->"
    },
},

现在,当您输入 -- 并输入第二个 - 时,它会触发并根据需要将文本替换为 ->

但是请注意,这将适用于每个文件中对文本 -- 的每次使用。这可以在某种程度上通过在键绑定中使用 context 来限制,使其仅适用于某些文件,例如确保绑定仅在纯文本文件中有效的文件:

{
    "keys": ["-", "-"],
    "command": "insert", "args": {
        "characters": "->"
    },
    "context": [
        { 
            "key": "selector", 
            "operator": "equal", 
            "operand": "text.plain", 
            "match_all": true 
        },

    ],
},

这可以应用于您想要的任何范围;在编辑文件时使用菜单中的 Tools > Developer > Show Scope Name... 来确定您需要的范围(通常您可能只需要第一个范围项)。

无论哪种方式,如果不在两个 - 字符之间包含有意的长时间停顿或进行退格,就不可能直接键入 --。这可能是也可能不是问题。