Перейти через конечную скобку / скобку / цитату в Редакторе atom с вкладкой
в Редакторе atom, когда я набираю console.log(
например, он становится console.log()
и курсор остается между двумя скобками. Поэтому я должен использовать конец кнопка или Стрелка вправо, чтобы выпрыгнуть оттуда.
Есть ли способ использовать Tab вместо этого (выпрыгнуть из конечных скобок/скобок/цитаты)?
2 ответов
Если вы просто продолжаете печатать, то закрытие ) будет "проглочен" кронштейном Atom, поэтому вам не нужно нажимать конец или →.
однако, есть некоторые ситуации, когда кронштейн matcher 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, чтобы перезагрузить init скрипт.
Далее перейдите в меню Файл, выберите "открыть клавиатуру" и введите привязку клавиш для новой команды. Вы можете использовать TAB ключ, но это будет конфликтовать с клавиатурой Atom по умолчанию для фрагментов, поэтому здесь я использовал Alt+) вместо:
'atom-text-editor:not([mini])':
'alt-)': 'custom:jump-over-symbol'
другой вариант-просто отключить автоматическую вставку закрывающих скобок Atom. Я думаю, вы можете сделать это, перейдя в Настройки → пакеты → bracket-matcher → Настройки и очистка опции "автозаполнение скобок".
Я тоже хотел это в атоме, поэтому я пошел вперед и сделал пакет для него. https://atom.io/packages/tab-through
добавленная стоимость над решением crumbletown заключается в том, что вы можете изменить привязку клавиш (я лично предпочитаю вкладку, следовательно, имя пакета) и символы, которые вы хотите с помощью настроек пакета, а не вносить изменения в сценарий init.