Basculer le focus entre l'éditeur et le terminal intégré dans Visual Studio Code


516

Quelqu'un connaît-il le raccourci clavier (Mac et Linux) pour basculer le focus entre l'éditeur et le terminal intégré dans Visual Studio Code?


26
ctrl + '' 'sera le meilleur#-> Linux
muthukumar helius

14
ctrl + '' 'fonctionne également sur OS X sans aucune liaison de clé supplémentaire.
nataliastanko

2
ctrl+ '' 'fonctionne aussi parfaitement avec Windows!
Ehtesham Z

Réponses:


987

Bien qu'il y ait beaucoup de bascules modales et de raccourcis de navigation pour VS Code, il n'y en a pas spécifiquement pour "passer de l'éditeur au terminal, et inversement". Cependant, vous pouvez composer les deux étapes en surchargeant la keyet en utilisant la when clause .

Ouvrez le fichier keybindings.json à partir de l'éditeur: CMD-SHIFT-P -> Préférences: ouvrir le fichier de raccourcis clavier et ajoutez ces entrées:

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

Avec ces raccourcis, je vais me concentrer entre l'éditeur et le terminal intégré en utilisant la même touche.


21
De loin, c'est la meilleure réponse car c'est la solution la plus ergonomiquement justifiée: étendre le raccourci clavier existant. Gloire!
mloskot

7
Merci, cela a bien fonctionné et fait gagner beaucoup de temps. Pour les utilisateurs de claviers internationaux: "ctrl+`"peut être spécifié comme "ctrl+oem_3".
esel

7
Le comportement de @Roman 1.18.0 est certainement une amélioration depuis que j'ai écrit ma réponse, mais je pense que ce qui précède est encore meilleur. La différence est que le terminal ne disparaîtra pas lors de l'utilisation de la touche, seule la mise au point se déplacera. Il se trouve que j'aime garder mon terminal affiché :)
wgj

38
Notez que ces raccourcis doivent être collés dans le keybindings.jsonfichier.
pseudomarvin

42
Ouvrez le fichier keybindings.json depuis l'éditeur: CMD-SHIFT-P-> Preferences: Open Keyboard Shortcuts File. Aussi une bonne ressource: code.visualstudio.com/docs/getstarted/keybindings
derFunk

174

ctrl+` : Pour se concentrer sur le terminal intégré

ctrl+1 : Pour se concentrer sur l'éditeur (si la commande editor-2 serait ctrl+ 2)

entrez la description de l'image ici

Plus d'informations: http://www.rscoder.com/2020/04/how-to-switch-focus-between-editor-and.html


5
où l'enfer est `sur n'importe quel clavier 🙄
Ewoks

7
juste en dessous de la touche esc :)
Rahul Shukla

6
Je vous remercie. Ctrl + 1 est ce dont j'ai besoin, car dans certains cas, ctrl + `ouvrira un terminal externe et ne pourra plus l'utiliser pour revenir à l'éditeur VSCode
Thang Nguyen

2
réponse la plus simple et la plus précise à mon humble avis.
Tomas

3
Control + '~' fonctionnera pour le basculement entre les deux. J'utilise depuis un certain temps.
surender pal

75

Ctrl+ Jtravaux; mais affiche / masque également la console.


8
Cmd + J sur MacOS.
Miscreant

2
La réponse la plus simple mais qui fonctionne - devrait être acceptée à mon humble avis.
Karol Selak

Ne fonctionne pas sous Ubuntu Linux 16.04 (Xenial) + VSC 1.45.0
Aldo Bassanini

55

Un peu tard pour le jeu mais j'ai configuré le mien comme suit dans le 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"
}

Je voulais des clés séparées pour ouvrir / fermer le terminal et basculer le focus entre les fenêtres.


4
Le mappage alt+`semble être bogué
Ben Creasy

2
J'ai trouvé altplus facile d'appuyer que ctrl, donc dans ma configuration, c'est l'inverse.
xji

C'est une excellente proposition, même si j'ai opté pour conserver les liaisons d'origine et altpour changer de focus.
M. Duhart

@BenCreasy Ce n'est que pour macOS, sur Windows, cela fonctionne très bien.
Kotauskas

24

Depuis la version: 1.26.1 (linux), le raccourci n'est pas défini par défaut. Pour définir le raccourci

  1. ouvrir le panneau des raccourcis clavier [ctrl + k, ctrl + s]
  2. Rechercher le terminal Focus

entrez la description de l'image ici

  1. Définissez votre raccourci

Pour l'éditeur, le focus est déjà défini par défaut.

entrez la description de l'image ici


Comme ils fournissent des mappages de clavier supplémentaires, cette réponse est plus simple et plus rapide
LookAheadAtYourTypes

Cela concentre le premier groupe d'éditeurs - ce n'est peut-être pas ce que souhaite l'OP. Veut probablement le groupe d'éditeur actuel / actif.
Mark

1
C'est la réponse pour 2020 et n'importe quoi> = 1.45.0
chrismarx

Génial. Merci pour la clarté ici.
Fiddy Bux

18

J'ai configuré le mien comme suit depuis que j'ai trouvé ctrl+ `est un peu difficile à appuyer.

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

J'ai également configuré ce qui suit pour passer d'un groupe d'éditeurs à un autre.

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

Soit dit en passant, je configuré Caps Lockpour ctrlMac du System Preferences => keyboard =>Modifier Keys.


8

La liaison de touches par défaut pour basculer le terminal intégré est "Ctrl +` "selon la page de documentation des raccourcis clavier vscode . Si vous n'aimez pas ce raccourci, vous pouvez le modifier dans votre fichier de raccourcis clavier en ajoutant quelque chose de similaire à:

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

Il ne semble pas y avoir de raccourci clavier par défaut pour simplement focaliser le panneau inférieur. Donc, si vous ne souhaitez pas basculer le panneau inférieur, vous devrez ajouter quelque chose de similaire à ce qui suit dans votre fichier de raccourcis clavier:

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

Parfait merci! Je cherche la deuxième réponse que vous avez mentionnée. Si quelqu'un s'interroge sur le raccourci clavier pour remettre le focus sur l'éditeur, c'est: Commande + 1 (sur Mac)
Abhijeet

Je pense que focusPanelc'est pour la région générale (inclure des choses comme "Problèmes", "Sortie" et "Debug Console". Il y a aussi une action spécifique pour le Terminal Intégré workbench.action.terminal.focus.
wgj

8

Essayez d'utiliser ctrl + ` pour basculer la visibilité du terminal et par conséquent basculer le focus.


3

N'est pas exactement ce qui est demandé, mais je l'ai trouvé très utile et connexe.

Si quelqu'un souhaite passer d'un terminal à un autre terminal également ouvert dans le panneau de terminal d'intégration de Visual Studio, vous pouvez rechercher:

Terminal: Focus Next Terminal

Ou ajoutez le raccourci clavier suivant et accélérez-le avec la combinaison de touches.

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

J'espère que cela aide quelqu'un d'autre.


3

La réponse de Shubham Jain est la meilleure option maintenant en utilisant les raccourcis clavier intégrés.

J'ai cartographié entrez la description de l'image ici

à Ctrl+;

et remappé entrez la description de l'image ici

à Ctrl+L

De cette façon, vous pouvez déplacer le focus entre le terminal et l'éditeur, et basculer le terminal à proximité.


Cela l'a résolu pour moi! Raccourcis clavier -> Terminal: Focus Terminal ( workbench.action.terminal.focus ) -> a modifié le raccourci clavier selon la combinaison souhaitée. Fonctionnant sur vscode Insiders 1.43.0
jeppoo1

2

Généralement, le code vs utilise ctrl+jpour ouvrir Terminal, j'ai donc créé une liaison de touches pour basculer avec une ctrl+kcombinaison, comme ci-dessous à keybindings.json:

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

0

SOLUTION SIMPLE WINDOWS POUR TOUTE DISPOSITION DE CLAVIER (peut fonctionner pour d'autres OS mais non testé)

J'utilise un clavier finlandais donc rien de ce qui précède ne fonctionnait mais cela devrait fonctionner pour tous les claviers.

  • Focus du terminal: passez votre souris sur le texte du terminal dans le terminal intégré . Le raccourci pour se concentrer sur le terminal apparaîtra - le mien, par exemple, dit CTRL + ö.
  • Focus éditeur: comme mentionné ci-dessus, utilisez CTRL + 1.

-1

Je l'ai fait en allant dans la configuration> Raccourcis clavier, puis dans la section où il donne un terminal de focus de type barre de recherche et sélectionnez l'option. Il vous demandera de taper la combinaison que vous souhaitez définir pour cette action. Fais le. En ce qui concerne l'éditeur focus tapez "éditeur focus" dans la barre de recherche et tapez la touche souhaitée. SI vous ajoutez très bien une clé. il peut être supprimé en modifiant jason comme mentionné dans les commentaires ci-dessus


-1

control + '~' fonctionnera pour basculer entre les deux. et ' ' 'est juste au-dessus du bouton de tabulation.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.