Кто-нибудь знает сочетание клавиш (Mac и Linux) для переключения фокуса между редактором и встроенным терминалом в Visual Studio Code?
Переключение фокуса между редактором и встроенным терминалом в Visual Studio Code
Ответы (19)
Несмотря на то, что для VS Code существует множество модальных переключателей и ярлыков навигации, нет ни одного, специально предназначенного для «перехода от редактора к терминалу и обратно». Однако вы можете составить два шага, перегрузив key
и используя предложение when
< / а>.
Откройте файл keybindings.json в редакторе: CMD-SHIFT-P -> Настройки: откройте файл сочетаний клавиш и добавьте следующие записи:
// Toggle between terminal and editor focus
{ "key": "ctrl+`", "command": "workbench.action.terminal.focus"},
{ "key": "ctrl+`", "command": "workbench.action.focusActiveEditorGroup", "when": "terminalFocus"}
С помощью этих ярлыков я буду переключаться между редактором и интегрированным терминалом, используя одно и то же нажатие клавиши.
"ctrl+`"
можно указать как "ctrl+oem_3"
.
- person esel; 09.10.2017
exit
, тогда вам даже не нужно все время прикасаться к мыши :)
- person konekoya; 12.12.2017
keybindings.json
.
- person pseudomarvin; 23.03.2018
CMD-SHIFT-P
- ›Preferences: Open Keyboard Shortcuts File
. Также хороший ресурс: code.visualstudio.com/docs/getstarted/keybindings
- person derFunk; 23.04.2018
"ctrl+shift+oem_3"
вместо "ctrl+`"
. "ctrl+shift+oem_3"
означает "ctrl+shift+@"
, что эквивалентно "ctrl+`"
на японской клавиатуре.
- person nekketsuuu; 23.08.2018
ctrl+oem_3
- person uzay95; 25.10.2018
{ "key": "ctrl+$", "command": "workbench.action.terminal.focus", "when": "!terminalFocus"}, { "key": "ctrl+$", "command": "workbench.action.focusActiveEditorGroup", "when": "terminalFocus"}
- person MonsieurDart; 18.09.2019
ctrl+`
возвращает фокус редактору, но закрывает терминал. Есть ли способ оставить терминал открытым?
- person chizou; 19.04.2020
Open Keyboard Shortcuts (JSON)
. Щелкните по нему, и вы сможете добавить новые ярлыки или переопределить ярлыки, подобные тем, что были представлены здесь. В macOS этот файл находится по адресу /Users/{user}/Library/Application Support/Code/User/keybindings.json
. Не уверен ни в какой другой ОС
- person mkturner; 04.08.2020
when
должна идти после без.
- person Denis Howe; 13.10.2020
" instead of "ctrl+
, это не работает. Кто угодно?
- person Claud H; 21.04.2021
ctrl + `: сосредоточиться на интегрированном терминале
ctrl + 1: чтобы сфокусироваться на редакторе (если команда editor-2 будет ctrl + 2 )
Дополнительная информация: https://www.rscoder.com/2020/11/14/how-to-switch-focus-between-editor-and-integrated-terminal-in-visual-studio-code/ < / а>
Ctrl + J работает; но также показывает / скрывает консоль.
{ "key": "cmd+j", "command": "workbench.action.terminal.focus"}, { "key": "cmd+j", "command": "workbench.action.focusActiveEditorGroup", "when": "terminalFocus"}
. Таким образом, мне не нужно отрывать руки от домашнего ряда.
- person Clintm; 15.02.2021
Немного поздно в игре, но я настроил свой в keybindings.json
следующим образом:
{
"key": "ctrl+`",
"command": "workbench.action.terminal.focus",
"when": "editorTextFocus"
},
{
"key": "ctrl+`",
"command": "workbench.action.focusActiveEditorGroup",
"when": "terminalFocus"
},
{
"key": "alt+`",
"command": "workbench.action.terminal.toggleTerminal"
}
Мне нужны отдельные клавиши для открытия / закрытия терминала и переключения фокуса между окнами.
alt+`
кажется ошибочным - отслеживается на github.com/Microsoft/vscode/issues / 41024 # issuecomment-363096692
- person Ben Creasy; 10.03.2018
alt
легче, чем ctrl
, поэтому в моей конфигурации все наоборот.
- person xji; 09.10.2018
alt
для переключения фокуса.
- person Mr. Duhart; 03.01.2019
Начиная с версии: 1.26.1 (linux), ярлык не установлен по умолчанию. Чтобы установить ярлык
- открыть панель быстрых клавиш [ctrl + k, ctrl + s]
- Найдите Focus Terminal
- Установите свой ярлык
Для редактора фокус уже установлен по умолчанию.
Я настроил свой следующим образом, так как обнаружил, что ctrl + ` немного сложно нажимать.
{
"key": "ctrl+k",
"command": "workbench.action.focusActiveEditorGroup",
"when": "terminalFocus"
},
{
"key": "ctrl+j",
"command": "workbench.action.terminal.focus",
"when": "!terminalFocus"
}
Я также настроил следующее, чтобы перемещаться между группами редакторов.
{
"key": "ctrl+h",
"command": "workbench.action.focusPreviousGroup",
"when": "!terminalFocus"
},
{
"key": "ctrl+l",
"command": "workbench.action.focusNextGroup",
"when": "!terminalFocus"
}
Кстати, я настроил Caps Lock на ctrl на Mac из System Preferences => keyboard =>Modifier Keys
.
Привязка клавиш по умолчанию для переключения встроенного терминала - Ctrl + `в соответствии с сочетаниями клавиш VS Code документация страница. Если вам не нравится этот ярлык, вы можете изменить его в файле привязки клавиш, добавив что-то похожее на:
{ "key": "ctrl+l", "command": "workbench.action.terminal.toggleTerminal" }
Кажется, что нет привязки клавиш по умолчанию для простого фокусирования нижней панели. Итак, если вы не хотите переключать нижнюю панель, вам нужно будет добавить что-то подобное следующему в свой файл привязки клавиш:
{ "key": "ctrl+t", "command": "workbench.action.focusPanel" }
focusPanel
предназначен для общей области (включая такие вещи, как Проблемы, Вывод и Консоль отладки. Также есть действие, специально предназначенное для Интегрированного Терминала workbench.action.terminal.focus
.
- person wgj; 25.03.2017
Как правило, VS Code использует ctrl+j
для открытия терминала, поэтому я создал привязку клавиш для переключения с комбинацией ctrl+k
, как показано ниже в keybindings.json
:
[
{
"key": "ctrl+k",
"command": "workbench.action.terminal.focus"
},
{
"key": "ctrl+k",
"command": "workbench.action.focusActiveEditorGroup",
"when": "terminalFocus"
}
]
Попробуйте использовать ctrl + ` для переключения видимости терминала и, как следствие, переключения фокуса.
Привет, мои шаги по выполнению этой работы были:
ctrl + shift+ p
и ищитеpreferences: keyboard shortcuts
или вы можете использовать ctrl k + ctrl s
, чтобы открыть его напрямую
Поищите в поле поиска
Terminal: Focus Terminal
, я для себя настроилalt + T alt + T
, но вы можете выбрать нужную вам комбинациюПоищите в поле поиска
View: Focus Active Editor Group
, настройте для себяalt + E alt + E
, но опять же вы можете выбрать нужную вам комбинацию
Вот и все, я надеюсь, что это поможет
Ответ Шубхама Джайна - лучший вариант, теперь использующий встроенные сочетания клавиш.
на Ctrl + ;
на Ctrl + L
Таким образом, вы можете перемещать фокус между терминалом и редактором и переключать терминал в непосредственной близости.
Это не совсем то, о чем спрашивают, но я нашел это очень полезным и связанным.
Если кто-то хочет перейти с одного терминала на другой терминал, также открытый на интегрированной панели терминала Visual Studio, вы можете выполнить поиск:
Terminal: Focus Next Terminal
Или добавьте следующее сочетание клавиш и сделайте это быстрее с помощью комбинации клавиш.
{
"key": "alt+cmd+right",
"command": "workbench.action.terminal.focusNext",
"when": "terminalFocus"
},
{
"key": "alt+cmd+left",
"command": "workbench.action.terminal.focusPrevious",
"when": "terminalFocus"
},
Вот способ добавить собственную привязку клавиш для переключения фокуса.
- Откройте свой VSCode
- Нажмите
Ctrl+Shift+P
, найдите сочетания клавиш и нажмите это (Настройки: Открыть сочетания клавиш). - Найдите «фокус терминала» на панели поиска и найдите эту опцию (Терминал: сфокусировать на представлении терминала) и щелкните значок плюса.
- Введите ярлык, который вам нравится, который не используется, и нажмите Enter.
- Перейдите в режим редактора и попробуйте использовать ярлык.
- Теперь нажмите
Alt+Shift+T
, чтобы перейти к терминалу. - Хотите вернуться в редактор? Просто ударь
Ctrl+tab
Протестировано на компьютере с Windows 10 с VSCode (1.52.1)
ПРОСТОЕ РЕШЕНИЕ ДЛЯ WINDOWS ДЛЯ ЛЮБОЙ РАСПОЛОЖЕНИЯ КЛАВИАТУРЫ (может работать для других ОС, но не тестировалось)
Я использую финскую клавиатуру, поэтому ничего из вышеперечисленного не помогло, но это должно работать для всех клавиатур.
- Фокус терминала: Наведите указатель мыши на текст терминала во встроенном терминале. Появится ярлык для фокусировки на терминале - например, мой сказал CTRL + ö.
- Фокус редактора: как упоминалось выше, используйте CTRL + 1.
Собственно, в VS Code 1.48.1 есть команда toggleTerminal
; Не знаю, был ли он доступен в предыдущих версиях;) Вы можете использовать его в файле keybindings.json
.
Это сработало для меня в Windows, а также должно работать в Linux.
{
"key": "ctrl+alt+right",
"command": "workbench.action.terminal.toggleTerminal",
"when": "editorTextFocus || terminalFocus"
}
Вот мой подход, который обеспечивает последовательный способ навигации между активными терминалами, а также переключение между панелями терминала и редактора без закрытия окна терминала. Вы можете попробовать добавить это в свой keybindings.json
напрямую, но я бы порекомендовал вам пройти через интерфейс привязки клавиш (cmd+K cmd+S
на Mac), чтобы вы могли просматривать / управлять конфликтами и т. Д.
Благодаря этому я могу использовать ctrl+x <arrow direction>
для перехода к любому видимому редактору или терминалу. Как только курсор окажется в секции терминала, вы можете использовать ctrl+x ctrl+up
или ctrl+x ctrl+down
для циклического перехода по активным терминалам.
cmd-J
по-прежнему используется для скрытия / отображения панели терминала.
{
"key": "ctrl+x right",
"command": "workbench.action.terminal.focusNextPane",
"when": "terminalFocus"
},
{
"key": "ctrl+x left",
"command": "workbench.action.terminal.focusPreviousPane",
"when": "terminalFocus"
},
{
"key": "ctrl+x ctrl+down",
"command": "workbench.action.terminal.focusNext",
"when": "terminalFocus"
},
{
"key": "ctrl+x ctrl+up",
"command": "workbench.action.terminal.focusPrevious",
"when": "terminalFocus"
},
{
"key": "ctrl+x up",
"command": "workbench.action.navigateUp"
},
{
"key": "ctrl+x down",
"command": "workbench.action.navigateDown"
},
{
"key": "ctrl+x left",
"command": "workbench.action.navigateLeft",
"when": "!terminalFocus"
},
{
"key": "ctrl+x right",
"command": "workbench.action.navigateRight",
"when": "!terminalFocus"
},
Я сделал это, перейдя в настройку> Сочетания клавиш, затем в разделе, где он дает терминал фокуса типа панели поиска, и выбираю опцию. Он попросит ввести комбинацию, которую вы хотите установить для этого действия. Сделай это. Что касается фокуса редактора, введите «фокус редактора» в строке поиска и введите желаемый ключ. ЕСЛИ вы отлично добавите ключ. его можно удалить, отредактировав Джейсона, как указано в комментариях выше
control + '~' будет работать для переключения между ними. а '`' находится прямо над кнопкой табуляции. Этот ярлык работает только на Mac.
100% рабочие настройки ...
[
{ "key": "alt+right", "command": "workbench.action.terminal.focus"},
{ "key": "alt+left", "command": "workbench.action.focusActiveEditorGroup", "when": "terminalFocus"}
]
workbench.action.terminal.focus: Для переключения из редактора в терминал. workbench.action.focusActiveEditorGroup: Для переключения с терминала на редактор.
ctrl
+ '' '' будет лучшим#-> Linux
- person muthukumar selvaraj   schedule 24.01.2018ctrl
+ '`' тоже безупречно работает с Windows! - person Ehtesham Z   schedule 14.01.2020alt
+up/down left/right arrows
для переключения между разделенными терминалами - person Gabriel Petersson   schedule 16.07.2020CTRL
+'
. работает у меня на окнах - person Pere   schedule 21.07.2021