Esiste una funzione di modifica rapida delle schede in Visual Studio Code?


325

La funzione attuale di darmi un'opzione a discesa di quale scheda scegliere è così fastidiosa. C'è la possibilità di rimuoverlo in modo che le schede funzionino come in un browser Web moderno.


8
Non posso sottolineare abbastanza quanto sia fastidioso. Con VSCode e anche altri editor.
Kai Noack,

Risposte:


588

Per impostazione predefinita, Ctrl+ Tabnel codice di Visual Studio scorre ciclicamente le schede nell'ordine dell'ultimo utilizzo. Questo è confuso perché dipende dallo stato nascosto.

I browser Web scorrono le schede in ordine visibile. Questo è molto più intuitivo.

Per raggiungere questo obiettivo in Visual Studio Code, è necessario modificare keybindings.json. Usa la Tavolozza comandi con CTRL+SHIFT+P, inserisci "Preferenze: Apri scorciatoie da tastiera (JSON)" e premi Enter.

Quindi aggiungi alla fine del file:

[
    // ...
    {
        "key": "ctrl+tab",
        "command": "workbench.action.nextEditor"
    },
    {
        "key": "ctrl+shift+tab",
        "command": "workbench.action.previousEditor"
    }
]

In alternativa, per scorrere solo le schede della finestra corrente / vista divisa, è possibile utilizzare:

[
    {
        "key": "ctrl+tab",
        "command": "workbench.action.nextEditorInGroup"
    },
    {
        "key": "ctrl+shift+tab",
        "command": "workbench.action.previousEditorInGroup"
    }
]

In alternativa, puoi usare Ctrl+ PageDown(Windows) o Cmd+ Option+ Right(Mac).


3
In realtà non imita il comportamento a discesa. Con queste combinazioni di tasti è sufficiente spostarsi tra le schede verso destra ( ctrl+tab) o verso sinistra ( ctrl+shift+tab). Per le schede navigate in base alla cronologia utilizzare questi: { "key": "ctrl+tab", "command": "workbench.action.openPreviousRecentlyUsedEditor" }, { "key": "ctrl+shift+tab", "command": "workbench.action.openNextRecentlyUsedEditor" }.
Evenfrost,

1
@GabrielZiegler Lo so, giusto. Firefox utilizza anche questa modalità scheda.
Permana,

1
@evenfrost l'OP non vuole navigare in base alla cronologia, quindi questa risposta è buona.
Stephen Mariano Cabrera,

4
E chi non fornisce un'opzione per modificare questo comportamento della scheda, invece la necessità di modificare un file di combinazioni di tasti ?!
Kai Noack,

2
Le persone che vogliono vederci soffrire, ecco chi.
Frans,

193

@Combii Ho trovato il modo di scambiare

CMD + 1 , CMD + 2 , CMD + 3 con CTRL + 1 , CTRL + 2 , CTRL + 3 , ...

In macOS, vai a:

Codice> Preferenze> Tasti di scelta rapida

In quella pagina, fai clic sul pulsante in alto a destra nella pagina ...

pulsante modifica keybindings.json

e aggiungi la configurazione di seguito, quindi salva.

[
    {
        "key": "cmd+0",
        "command": "workbench.action.openLastEditorInGroup"
    },
    {
        "key": "cmd+1",
        "command": "workbench.action.openEditorAtIndex1"
    },
    {
        "key": "cmd+2",
        "command": "workbench.action.openEditorAtIndex2"
    },
    {
        "key": "cmd+3",
        "command": "workbench.action.openEditorAtIndex3"
    },
    {
        "key": "cmd+4",
        "command": "workbench.action.openEditorAtIndex4"
    },
    {
        "key": "cmd+5",
        "command": "workbench.action.openEditorAtIndex5"
    },
    {
        "key": "cmd+6",
        "command": "workbench.action.openEditorAtIndex6"
    },
    {
        "key": "cmd+7",
        "command": "workbench.action.openEditorAtIndex7"
    },
    {
        "key": "cmd+8",
        "command": "workbench.action.openEditorAtIndex8"
    },
    {
        "key": "cmd+9",
        "command": "workbench.action.openEditorAtIndex9"
    },
    {
        "key": "ctrl+1",
        "command": "workbench.action.focusFirstEditorGroup"
    },
    {
        "key": "ctrl+2",
        "command": "workbench.action.focusSecondEditorGroup"
    },
    {
        "key": "ctrl+3",
        "command": "workbench.action.focusThirdEditorGroup"
    }
]

Ora puoi usare CMD + [1-9] per passare da una scheda all'altra e CTRL + [1-3] per focalizzare i gruppi di editor! Spero che questa risposta sia utile.


4
alt + n lo fa già su Windows, sono sicuro che ci sia un equivalente per Mac
Dominic,

12
su Mac l'equivalente è control + n. Trovo che questo non sia intuitivo in quanto la maggior parte dei programmi imposta automaticamente cmd + n per la navigazione delle schede. Cambiare i due comportamenti significa che puoi fare affidamento sulla memoria muscolare quando cerchi di navigare tra le tue schede.
Langlois.dev,

Penso che su Mac portino solo le impostazioni di Windows cambiando il comando per controllare alcune funzioni (ad esempio la scheda switch) e non portino l'altra (ad esempio la scheda di apertura e chiusura del terminale). Questo è molto scomodo.
alanwsx,

6
Inoltre, per la versione più recente (Apr2019) puoi semplicemente cercare quegli elementi ( workbench.action.openEditorAtIndex1) e cambiarlo. Non c'è bisogno di andare a keybindings.json.
alanwsx,

3
A partire dalla v. 1.38.1 (per OSX), questo è obsoleto. Secondo la documentazione, vai a, Preferences > Keyboard Shortcutsquindi fai clic sull'icona a destra della barra del titolo dell'editor. Questo si aprirà keybindings.json.
Adam_G

51

finestre

Quando si utilizza Visual Studio Code su Windows, è possibile utilizzare CTRL + PAGE_UPper passare alla scheda precedente e CTRL + PAGE_DNpassare alla scheda successiva.

Hai anche la possibilità di passare alle schede in base al loro indice (diverso da zero). Puoi farlo tenendo premuto ALT, seguito da un numero (da 1 a 9).

Mac OS

Per spostarsi rapidamente tra le schede, tenere premuto il CMDtasto, seguito dal numero (da 1 a 9) della scheda in cui si desidera passare.

Hai anche la possibilità di passare dalla scheda precedente / successiva tramite la CMD + ALT + LEFT/RIGHTscorciatoia da tastiera.

Per passare a una scheda che si trova in un diverso gruppo di editor, è necessario innanzitutto passare al gruppo di editor desiderato.

Suggerimento pro : se non ti senti a tuo agio con una qualsiasi delle combinazioni di tasti, puoi cambiarle in qualsiasi cosa ti senta più a tuo agio!


2
CTRL + ALT + SINISTRA / DESTRA e CTRL + numero copiano solo le schede nel nuovo gruppo di schede
yodalr

Le istruzioni erano chiare prima, semplicemente non funziona su WINDOWS. Quando premo ctrl + alt + sinistra - non succede nulla e quando premo ctrl + alt + destra sposta la scheda nelle sezioni delle schede secondarie sulla destra.
yodalr,

2
@yodalr, su Windows, per scorrere tra le schede, si preme uno CTRL + PAGE_UPo CTRL + PAGE_DN, a seconda del modo in cui si desidera scorrere. CTRL + ALT + LEFTe nonCTRL + ALT + RIGHT sono le scorciatoie da tastiera che ho elencato per Windows.
Brynden Bielefeld,

6
Hmm, non sembra funzionare come descritto. Su Mac, Cmd + Num passa da un gruppo di schede (finestre divise). Voglio farlo per le schede all'interno dello stesso gruppo. Sarei in grado di farlo?
Huggie,

@Huggie Sto vedendo lo stesso comportamento su OSX. Hai trovato un modo per rimappare questo?
Prefisso


31

Questo funziona anche su MAC OS :

Scheda precedente: Shift+ Cmd+[

Scheda successiva: Shift+ Cmd+]


24

macOS - revisionato 2017

Nel 2017, le scorciatoie da tastiera VS CODE sono cambiate in CTRL+ 1, CTRL+ 2, CTRL+ 3ecc. Per passare da una scheda all'altra.

CMD+1, CMD+2, and CMD+3 passare da e creare tab groups


11
È possibile cambiarlo in CMD+1, CMD+2, and CMD+3invece di CTRL+1, CTRL+2, CTRL+3?
David,

E anche CMD + ALT + LEFT/RIGHTsemplicemente scorrere tutte le schede in tutti i gruppi.
Davos,

10

finestre

precedente

Ctrl+ Shift+Tab

Il prossimo

Ctrl + Tab

Mac OS

precedente

Shift+ Cmd+[

Il prossimo

Shift + Cmd +]


la tua risposta dovrebbe essere in cima
outsider il

5

Meglio approch è l'uso Alt + Destra e Alt + Sinistra tasti per navigare come JetBrains IDE WebStorm fa

Ecco la mia configurazione. include anche la creazione di nuovi file e cartelle

    {
        "key": "ctrl+n",
        "command": "explorer.newFile"
    },
    {
        "key": "ctrl+shift+n",
        "command": "explorer.newFolder"
    },
    { 
        "key": "alt+left",
        "command": "workbench.action.previousEditor" 
    },
    { 
        "key": "alt+right",
        "command": "workbench.action.nextEditor" 
    }

1
La sostituzione di alt + destra / sinistra impedisce al comportamento dell'editor utile e predefinito di saltare il cursore alla parola precedente / successiva.
karni,


3

Visual Studio Code v1.35.0 consente di impostare ( Ctrl+ Tab) / ( Shift+ Ctrl+Tab sequenze di tasti ) per passare in sequenza tra gli editor associando quelle sequenze di tasti ai comandi "Visualizza: Apri editor successivo" e "Visualizza: apri editor precedente", rispettivamente .

Su macOS:

  1. Passare a: Codice> Preferenze> Tasti di scelta rapida
  2. Cerca o scorri verso il basso fino alle seguenti due opzioni:
    • Visualizza: Apri il prossimo editor
    • Visualizza: apri l'editor precedente
  3. Cambia entrambe le combinazioni di tasti nella sequenza di tasti desiderata.
    • Visualizza: Apri editor successivo -> ( Ctrl+ Tab)
    • Visualizza: Apri editor precedente -> ( Shift+ Ctrl+ Tab)
  4. Probabilmente incontrerai un'associazione in conflitto. In tal caso, prendere nota del comando e riassegnare o rimuovere l'associazione chiave esistente.

Se sbagli, puoi sempre tornare allo stato predefinito per un dato bind facendo clic con il tasto destro del mouse su un qualsiasi tasto e selezionando "Ripristina tasto".


1
Grazie amico stavo facendo un giro su Internet per questo!
Pall Arpad,

2

Questo funziona anche su MAC OS :

Premere per selezionare la scheda specifica: Control+ 1 o Control2, Control3, ecc.

Premere per mostrare / selezionare tutte le schede possibili: Control+ Tab.


2

Key map di Linux per abbinare il browser:

[
    {
        "key": "ctrl+0",
        "command": "workbench.action.lastEditorInGroup"
    },
    {
        "key": "ctrl+1",
        "command": "workbench.action.openEditorAtIndex1"
    },
    {
        "key": "ctrl+2",
        "command": "workbench.action.openEditorAtIndex2"
    },
    {
        "key": "ctrl+3",
        "command": "workbench.action.openEditorAtIndex3"
    },
    {
        "key": "ctrl+4",
        "command": "workbench.action.openEditorAtIndex4"
    },
    {
        "key": "ctrl+5",
        "command": "workbench.action.openEditorAtIndex5"
    },
    {
        "key": "ctrl+6",
        "command": "workbench.action.openEditorAtIndex6"
    },
    {
        "key": "ctrl+7",
        "command": "workbench.action.openEditorAtIndex7"
    },
    {
        "key": "ctrl+8",
        "command": "workbench.action.openEditorAtIndex8"
    },
    {
        "key": "ctrl+9",
        "command": "workbench.action.openEditorAtIndex9"
    },
    {
        "key": "alt+1",
        "command": "workbench.action.focusFirstEditorGroup"
    },
    {
        "key": "alt+2",
        "command": "workbench.action.focusSecondEditorGroup"
    },
    {
        "key": "alt+3",
        "command": "workbench.action.focusThirdEditorGroup"
    }
]

1

Un altro modo per cambiare rapidamente le schede sarebbe nel VSCode 1.45 (aprile 2020)

Cambia scheda usando la rotellina del mouse

Quando si utilizza la rotellina del mouse per scorrere le schede dell'editor, al momento non è possibile passare alla scheda, ma visualizzare solo le schede che non sono visibili.

Ora con una nuova impostazione workbench.editor.scrollToSwitchTabsquesto comportamento può essere modificato se lo si cambia in true.

https://media.githubusercontent.com/media/microsoft/vscode-docs/vnext/release-notes/images/1_45/scroll-tabs.gif

Nota: è anche possibile tenere premuto il Shifttasto durante lo scorrimento per ottenere il comportamento opposto (ovvero è possibile passare alle schede anche con questa impostazione disattivata).


0

Quando si utilizza il codice di Visual Studio su Linux / Windows, è possibile utilizzare CTRL + PAGE_UP per passare alla scheda precedente e CTRL + PAGE_DN per passare alla scheda successiva. Hai anche la possibilità di passare alle schede in base al loro indice (diverso da zero). Puoi farlo tenendo premuto ALT, seguito da un numero (da 1 a 9).

Per maggiori dettagli: controlla qui


0

Usa mappe di tasti di testo sublimi. Molto più intuitivo.

km

Importa keymap di testo sublime:

Name: Sublime Text Keymap and Settings Importer
Id: ms-vscode.sublime-keybindings
Description: Import Sublime Text settings and keybindings into VS Code.
Version: 4.0.3
Publisher: Microsoft
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=ms-vscode.sublime-keybindings

0

@SC_Chupacabra ha la risposta corretta per la modifica del comportamento.

In genere preferisco CTRL+ PAGE UP / DOWNper la mia navigazione, piuttosto che usare il tasto TAB.

    {
        "key": "ctrl+pageUp",
        "command": "workbench.action.nextEditor"
    },
    {
        "key": "ctrl+pageDown",
        "command": "workbench.action.previousEditor"
    }

0

Non sono riuscito a trovare un post per VS Community, quindi pubblicherò la mia soluzione qui.


Innanzitutto, devi andare su Strumenti -> Opzioni -> Ambiente -> Tastiera, quindi trova il comando Window.NextTab. Nella parte inferiore dovrebbe essere indicato "Usa nuovo collegamento in:". Impostalo su Globale (dovrebbe essere predefinito), quindi seleziona la casella di testo a destra e premi Ctrl+ Tab. Rimuovi tutte le scorciatoie correnti per il comando selezionato e premi Assegna. Per Ctrl+ Shift+ Tab, il comando dovrebbe essere Window.PreviousTab.

Spero che questo aiuti :) Se c'è un post separato per VS Community, sarei felice di spostare questo post.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.