1

我希望能够让光标移过自动配对结束字符,这样我就可以继续输入我的代码。

我是 Sublime Text 的菜鸟。我在 SO 上浏览了一下,发现这篇文章使用了这种类型的代码(片段):

//Tab skips to end of autopaired characters
{ "keys": ["tab"], "command": "move", "args": {"by": "characters", "forward": true},

然后我Default(Windows)sublime-keymap -- User像这样添加到我的文件中:

//Tab skips to end of autopaired characters
    { "keys": ["tab"], "command": "move", "args": {"by": "characters", "forward": true},
      "context":[

       ]
    }

当我按“制表符”键使光标移过关闭的自动配对时,光标会移动到制表位(默认添加 4 个空格),它不会像按箭头键那样“向前”移动。

如何使用 tab 键或其他键使光标向前移动?我在这里错过了什么/做错了什么?我不想使用箭头键,因为这样做不是主键的自然击键(尤其取决于用户键盘)。谢谢!

4

1 回答 1

2

你链接的问题实际上是正确的——你只是删除了context键数组,它有效地告诉 Sublime Text 你不想Tab光标向前移动一个字符。使用询问者的完整键绑定:

{ "keys": ["tab"], "command": "move", "args": {"by": "characters", "forward": true}, "context":
    [ 
        { "key": "selection_empty", "operator": "equal", "operand": true },
        { "key": "preceding_text", "operator": "not_regex_match", "operand": "[[:space:]]*", "match_all": true },
        { "key": "following_text", "operator": "regex_contains", "operand": "^[\"'\\)\\}\\]\\_]", "match_all": true },
        { "key": "auto_complete_visible", "operator": "equal", "operand": false },
        { "key": "has_next_field", "operator": "equal", "operand": false } 
    ] 
},

您可以在Unofficial Docs Key Bindings 页面上阅读有关键绑定和上下文的更多信息。

于 2013-05-24T18:10:04.533 回答