如果你只是继续输入,那么结束的 ) 将被 Atom 的括号匹配器“吞噬”,所以你不需要按 End 或 →.
但是,在某些情况下,Atom 的括号匹配器不会吞噬按键,您不能只继续输入。例如,当您输入以下代码时,在按下 ; 后,您可能需要将光标移过右大括号(Atom 自动插入):
if (someCondition) {
doSomething();
}
在这种情况下,您可以使用自定义命令和自定义键盘映射来向前跳转光标。方法如下...
转到文件菜单并选择“打开您的初始化脚本”,然后将以下代码粘贴到文件中。这定义了一个可以向前移动光标、跳过单个括号、大括号或引号的命令。
SymbolRegex = /\s*[(){}<>[\]/'"]/
atom.commands.add 'atom-text-editor', 'custom:jump-over-symbol': (event) ->
editor = atom.workspace.getActiveTextEditor()
cursorMoved = false
for cursor in editor.getCursors()
range = cursor.getCurrentWordBufferRange(wordRegex: SymbolRegex)
unless range.isEmpty()
cursor.setBufferPosition(range.end)
cursorMoved = true
event.abortKeyBinding() unless cursorMoved
您必须关闭并重新打开 Atom 才能重新加载初始化脚本。
接下来,转到文件菜单,选择“打开您的键盘映射”,然后输入新命令的键绑定。您可以使用 TAB 键,但这会与 Atom 的 sn-ps 的默认键映射冲突,所以这里我使用 Alt+) 代替:
'atom-text-editor:not([mini])':
'alt-)': 'custom:jump-over-symbol'
另一个选项是禁用 Atom 自动插入右括号。我认为您可以通过转到“设置”→“包”→“括号匹配器”→“设置”并清除“自动完成括号”选项来做到这一点。