Alterne o foco entre o editor e o terminal integrado no Visual Studio Code


515

Alguém conhece o atalho de teclado (Mac e Linux) para alternar o foco entre o editor e o terminal integrado no Visual Studio Code?


26
ctrl + '' será o melhor#-> Linux
muthukumar helius

14
ctrl + '' 'também funciona no OS X sem nenhuma ligação adicional de teclas.
Nataliastanko

2
ctrl+ '' 'também funciona com o Windows na perfeição!
Ehtesham Z 13/01

Respostas:


986

Embora existam muitas alternâncias modais e atalhos de navegação para o VS Code, não há uma especificamente para "mover do editor para o terminal e vice-versa". No entanto, você pode compor as duas etapas sobrecarregando o keye usando a when cláusula .

Abra o keybindings.json no editor: CMD-SHIFT-P -> Preferências: Abra o arquivo de atalhos de teclado e adicione estas entradas:

// Toggle between terminal and editor focus
{ "key": "ctrl+`", "command": "workbench.action.terminal.focus"},
{ "key": "ctrl+`", "command": "workbench.action.focusActiveEditorGroup", "when": "terminalFocus"}

Com esses atalhos, focalizarei o editor e o Terminal Integrado usando a mesma tecla.


21
De longe, esta é a melhor resposta como a solução mais ergonomicamente justificada: estendendo a ligação de chave existente. Parabéns!
mloskot

7
Obrigado, isso funcionou bem e economiza muito tempo. Para usuários de teclados internacionais: "ctrl+`"pode ser especificado como "ctrl+oem_3".
esel

7
O comportamento do @Roman 1.18.0 é certamente uma melhoria desde que escrevi minha resposta, mas acho que o exposto ainda é melhor. A diferença é que o terminal não desaparecerá ao usar o pressionamento de tecla, apenas o foco mudará. Acontece que eu como manter meu terminal exibida :)
wgj

38
Observe que esses atalhos devem ser colados no keybindings.jsonarquivo.
Pseudomarvin

42
Abra o keybindings.json no editor: CMD-SHIFT-P-> Preferences: Open Keyboard Shortcuts File. Também um bom recurso: code.visualstudio.com/docs/getstarted/keybindings
derFunk

174

ctrl+` : Foco no Terminal Integrado

ctrl+1 : Para se concentrar no editor (se o comando editor-2 fosse ctrl+ 2)

insira a descrição da imagem aqui

Mais informações: http://www.rscoder.com/2020/04/how-to-switch-focus-between-editor-and.html


5
onde o inferno é `em qualquer teclado 🙄
Ewoks

7
logo abaixo tecla esc :)
Rahul Shukla

6
Obrigado. Ctrl + 1 é o que eu preciso, como em alguns casos, ctrl + `abrirá terminal externo e não pode usar isso de novo para retorno ao editor VSCode
Thang Nguyen

2
resposta mais simples e precisa imho.
Tomas

3
Control + '~' funcionará para alternar entre os dois. Estou usando há algum tempo.
31519 surender pal


55

Um pouco tarde para o jogo, mas eu configurei o meu da seguinte forma 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"
}

Eu queria teclas separadas para abrir / fechar o terminal e alternar o foco entre as janelas.


4
Mapeamento alt+`parece ser buggy - rastreado no github.com/Microsoft/vscode/issues/41024#issuecomment-363096692
Ben Creasy

2
Eu achei altmais fácil pressionar do que ctrl, então, na minha configuração, é o contrário.
Xj # 9/18

Esta é uma ótima proposta, embora tenha optado por manter as ligações originais e usar altpara mudar o foco.
Sr. Duhart

@BenCreasy Isso é apenas para o macOS, no Windows isso funciona muito bem.
Kotauskas

24

A partir da versão: 1.26.1 (linux), o atalho não é definido por padrão. Para definir o atalho

  1. abra o painel de atalhos de teclado [ctrl + k, ctrl + s]
  2. Procure o Terminal Focus

insira a descrição da imagem aqui

  1. Defina seu atalho

Para o editor, o foco já está definido por padrão.

insira a descrição da imagem aqui


Como eles fornecem mapeamentos de teclado adicionais, esta resposta é mais simples e mais rápido
LookAheadAtYourTypes

Isso enfoca o primeiro grupo de editores - pode não ser o que o OP deseja. Provavelmente deseja o grupo de editores atual / ativo.
Mark

1
Esta é a resposta para 2020 e qualquer coisa> = 1.45.0
chrismarx

Ótimo. Obrigado pela clareza aqui.
Fiddy Bux

18

Eu configurei o meu da seguinte forma, pois achei o ctrl+ `difícil de pressionar.

{
  "key": "ctrl+k",
  "command": "workbench.action.focusActiveEditorGroup",
  "when": "terminalFocus"
},
{
  "key": "ctrl+j",
  "command": "workbench.action.terminal.focus",
  "when": "!terminalFocus"
}

Também configurei o seguinte para alternar entre o grupo de editores.

{
  "key": "ctrl+h",
  "command": "workbench.action.focusPreviousGroup",
  "when": "!terminalFocus"
},
{
  "key": "ctrl+l",
  "command": "workbench.action.focusNextGroup",
  "when": "!terminalFocus"
}

By the way, eu configurei Caps Lockpara ctrlno Mac a partir do System Preferences => keyboard =>Modifier Keys.


8

A combinação de teclas padrão para alternar o terminal integrado é "Ctrl +` ", de acordo com a página de documentação dos atalhos do teclado vscode . Se você não gostar desse atalho, poderá alterá-lo no arquivo de combinações de teclas adicionando algo semelhante a:

{ "key": "ctrl+l", "command": "workbench.action.terminal.toggleTerminal" }

Não parece haver uma combinação de teclas padrão para focar simplesmente o painel inferior. Portanto, se você não deseja alternar o painel inferior, precisará adicionar algo semelhante ao seguinte ao seu arquivo de combinações de teclas:

{ "key": "ctrl+t", "command": "workbench.action.focusPanel" }

Perfeito, obrigado! Estou procurando a segunda resposta que você mencionou. Se alguém perguntando sobre o atalho de teclado para colocar a parte de trás foco para editor então é: Command + 1 (no Mac)
Abhijeet

Eu acho que focusPanelé para a região geral (incluir coisas como "Problemas", "Saída" e "Console de Depuração" Há também uma ação especificamente para o Terminal Integrado. workbench.action.terminal.focus.
wgj

8

Tente usar ctrl + ` para alternar a visibilidade do terminal e, como resultado, alternar o foco.


3

Não é exatamente o que é pedido, mas achei muito útil e relacionado.

Se alguém quiser mudar de um terminal para outro, também aberto no painel de integração do Visual Studio, você pode procurar:

Terminal: Focus Next Terminal

Ou adicione o seguinte atalho de tecla e faça-o mais rapidamente com a combinação do teclado.

  {
    "key": "alt+cmd+right",
    "command": "workbench.action.terminal.focusNext",
    "when": "terminalFocus"
  },
  {
    "key": "alt+cmd+left",
    "command": "workbench.action.terminal.focusPrevious",
    "when": "terminalFocus"
  },

Espero que ajude outra pessoa.


3

A resposta de Shubham Jain é a melhor opção agora usando os atalhos de teclado embutidos.

Eu mapei insira a descrição da imagem aqui

para Ctrl+;

e remapeado insira a descrição da imagem aqui

para Ctrl+L

Dessa forma, você pode mover o foco entre o terminal e o editor e alternar o terminal próximo.


Isso resolveu para mim! Atalhos do teclado -> Terminal: Terminal de Foco ( workbench.action.terminal.focus ) -> alterei o Keybinding para a minha combinação desejada. Correndo em Insiders vscode 1.43.0
jeppoo1

2

Geralmente, o código vs usa ctrl+jpara abrir o Terminal, então criei uma combinação de teclas para alternar com a ctrl+kcombinação, como abaixo em keybindings.json:

[    
    {
        "key": "ctrl+k",
        "command": "workbench.action.terminal.focus"
    },
    {
        "key": "ctrl+k",
        "command": "workbench.action.focusActiveEditorGroup",
        "when": "terminalFocus"
    }
]

0

SOLUÇÃO SIMPLES DO WINDOWS PARA QUALQUER LAYOUT DE TECLADO (pode funcionar para outro SO, mas não testado)

Eu uso um teclado finlandês para que nenhuma das opções acima funcione, mas isso deve funcionar para todos os teclados.

  • Foco no terminal: passe o mouse sobre o texto do terminal no terminal integrado . O atalho para focar no terminal será exibido - o meu, por exemplo, disse CTRL + ö.
  • Foco do editor: como mencionado acima, use CTRL + 1.

-1

Eu fiz isso indo para a configuração> Atalhos do teclado e, em seguida, na seção em que ele fornece um tipo de barra de pesquisa, terminal de foco e selecione a opção. Ele solicitará que digite a combinação que você deseja definir para esta ação. Faça. Quanto ao foco do editor, digite "editor focus" na barra de pesquisa e digite a chave desejada. Se você adicionar excelentemente uma chave. ele pode ser removido, indo para editar jason como mencionado nos comentários acima


-1

control + '~' funcionará para alternar entre os dois. e ' ' 'está logo acima do botão Tab.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.