Apakah ada fungsi tab perubahan cepat dalam Visual Studio Code?

325

Fungsi saat ini memberi saya opsi dropdown tab mana yang harus dipilih sangat menjengkelkan. Apakah ada kemungkinan untuk menghapusnya sehingga tab akan berfungsi seperti pada beberapa browser web modern.

yodalr
sumber
8
Saya tidak bisa cukup menekankan betapa menjengkelkannya ini. Dengan VSCode dan juga editor lainnya.
Kai Noack

Jawaban:

588

Secara default, Ctrl+ Tabdalam Visual Studio Code menggilir melalui tab dalam urutan yang paling baru digunakan. Ini membingungkan karena tergantung pada keadaan tersembunyi.

Peramban web menggilir tab dalam urutan yang terlihat. Ini jauh lebih intuitif.

Untuk mencapai ini dalam Visual Studio Code, Anda harus mengedit keybindings.json. Gunakan Command Palette dengan CTRL+SHIFT+P, masukkan "Preferences: Open Keyboard Shortcuts (JSON)", dan tekan Enter.

Kemudian tambahkan ke akhir file:

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

Atau, untuk hanya menggilir tab pada jendela saat ini / tampilan split, Anda dapat menggunakan:

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

Atau, Anda dapat menggunakan Ctrl+ PageDown(Windows) atau Cmd+ Option+ Right(Mac).

SC_Chupacabra
sumber
3
Sebenarnya itu tidak meniru perilaku drop-down. Dengan ikatan kunci ini, Anda cukup menavigasi tab ke kanan ( ctrl+tab) atau ke kiri ( ctrl+shift+tab). Untuk tab navigasi berdasarkan riwayat menggunakan ini: { "key": "ctrl+tab", "command": "workbench.action.openPreviousRecentlyUsedEditor" }, { "key": "ctrl+shift+tab", "command": "workbench.action.openNextRecentlyUsedEditor" }.
evenfrost
1
@GabrielZiegler saya tahu, benar. Firefox juga menggunakan mode tab ini.
Permana
1
@ bahkan membekukan OP tidak ingin menavigasi berdasarkan sejarah sehingga jawaban ini adalah jawaban yang bagus.
Stephen Mariano Cabrera
4
Dan siapa yang tidak memberikan opsi untuk mengubah perilaku tab ini, alih-alih harus mengedit file keybindings ?!
Kai Noack
2
Orang yang ingin melihat kita menderita, itu siapa.
Frans
193

@Combii Saya menemukan cara untuk bertukar

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

Di macOS, buka:

Kode> Preferensi> Pintasan Keyboard

Pada halaman itu, klik tombol di kanan atas halaman ...

edit tombol keybindings.json

dan tambahkan konfigurasi di bawah, lalu simpan.

[
    {
        "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"
    }
]

Anda sekarang dapat menggunakan CMD + [1-9] untuk beralih di antara tab dan CTRL + [1-3] untuk memfokuskan grup editor! Semoga jawaban ini bermanfaat.

Yiyuan lv
sumber
4
alt + n sudah melakukan ini di windows, saya yakin ada setara mac
Dominic
12
pada Mac yang setara adalah kontrol + n. Saya menemukan ini tidak intuitif karena kebanyakan program standar untuk cmd + n untuk navigasi tab. Beralih dua perilaku di sekitar berarti Anda dapat mengandalkan memori otot ketika mencoba menavigasi melalui tab Anda.
Langlois.dev
Saya pikir pada mac mereka hanya port pengaturan windows dengan mengubah perintah untuk mengontrol beberapa fungsi (misalnya, beralih tab) dan tidak port yang lain (misalnya membuka dan menutup tab terminal). Ini sangat merepotkan.
alanwsx
6
Juga, untuk versi terbaru (Apr2019) Anda bisa mencari item-item itu ( workbench.action.openEditorAtIndex1) dan mengubahnya. Tidak perlu ke keybindings.json.
alanwsx
3
Pada v. 1.38.1 (untuk OSX), ini sudah usang. Menurut dokumentasi pergi ke Preferences > Keyboard Shortcutsdan kemudian klik pada ikon di sebelah kanan bilah judul editor. Ini akan terbuka keybindings.json.
Adam_G
51

Windows

Saat menggunakan Visual Studio Code pada Windows, Anda dapat menggunakan CTRL + PAGE_UPuntuk beralih ke tab sebelumnya, dan CTRL + PAGE_DNuntuk beralih ke tab berikutnya.

Anda juga memiliki kemampuan untuk beralih ke tab berdasarkan indeks (bukan nol relatif) mereka. Anda dapat melakukannya, dengan menekan dan menahan ALT, diikuti oleh angka (1 hingga 9).

macOS

Untuk menavigasi antar tab dengan cepat, tekan dan tahan CMDtombol, diikuti dengan nomor (1 hingga 9) dari tab yang ingin Anda alihkan.

Anda juga memiliki kemampuan untuk beralih di antara tab sebelumnya / berikutnya melalui CMD + ALT + LEFT/RIGHTpintasan keyboard.

Harap perhatikan bahwa untuk beralih ke tab yang ada di grup editor yang berbeda, Anda harus terlebih dahulu beralih ke grup editor yang diinginkan.

Kiat Pro : Jika Anda merasa tidak nyaman dengan ikatan kunci apa pun, Anda dapat mengubahnya ke apa pun yang Anda rasa lebih nyaman!

Brynden Bielefeld
sumber
2
CTRL + ALT + KIRI / KANAN dan CTRL + hanya menyalin tab ke grup tab baru
yodalr
Instruksi sudah jelas sebelumnya, itu tidak berfungsi pada WINDOWS. Ketika saya menekan ctrl + alt + kiri - tidak ada yang terjadi dan ketika saya menekan ctrl + alt + kanan itu memindahkan tab ke bagian tab sekunder di sebelah kanan.
yodalr
2
@yodalr, pada Windows, untuk menggilir antar tab, Anda menekan salah satu CTRL + PAGE_UPatau CTRL + PAGE_DN, tergantung pada cara mana Anda ingin siklus. CTRL + ALT + LEFTdan CTRL + ALT + RIGHTyang tidak cara pintas keyboard saya terdaftar untuk Windows.
Brynden Bielefeld
6
Hmm, sepertinya tidak berfungsi seperti yang dijelaskan. Pada Mac, Cmd + Num beralih di antara grup tab (jendela terpisah). Saya ingin melakukannya untuk tab dalam grup yang sama. Apakah saya bisa melakukan itu?
Huggie
@ Huggie Saya melihat perilaku yang sama di OSX. Apakah Anda menemukan cara untuk memetakan kembali ini?
Awalan
35

Jika Anda menggunakan VSCodeVimekstensi, Anda dapat menggunakan pintasan tombol Vim :

Tab selanjutnya: gt

Tab sebelumnya: gT

Tab bernomor: nnngt

gabra
sumber
31

Ini juga berfungsi pada MAC OS :

Tab Sebelumnya: Shift+ Cmd+[

Tab Berikutnya: Shift+ Cmd+]

yestema
sumber
24

macOS - revisi 2017

PADA 2017, pintasan keyboard VS CODE telah berubah menjadi CTRL+ 1, CTRL+ 2, CTRL+ 3dll. Untuk beralih antar tab.

CMD+1, CMD+2, and CMD+3 beralih di antara dan buat tab groups

Alex Smith
sumber
11
Apakah mungkin mengubahnya menjadi CMD+1, CMD+2, and CMD+3bukan CTRL+1, CTRL+2, CTRL+3?
David
Dan juga CMD + ALT + LEFT/RIGHTuntuk hanya siklus semua tab di semua grup.
Davos
10

Windows

sebelumnya

Ctrl+ Shift+Tab

Lanjut

Ctrl + Tab

OS Mac

sebelumnya

Shift+ Cmd+[

Lanjut

Shift + Cmd +]

ABlue
sumber
jawaban Anda harus di atas
orang luar
5

Approch yang lebih baik adalah gunakan alt + kanan dan alt + kiri tombol untuk navigasi seperti JetBrains IDE Webstorm tidak

Ini konfigurasi saya. itu juga termasuk membuat file dan folder baru

    {
        "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" 
    }
Piyush Patel
sumber
1
Mengganti alt + kanan / kiri mencegah default, perilaku editor yang berguna untuk melompat kursor ke kata sebelumnya / berikutnya
karni
3

untuk linux ... Saya menggunakan ctrl + pageUp atau pageDown

jmsalcido
sumber
3

Visual Studio Code v1.35.0 mari kita atur ( Ctrl+ Tab) / ( Shift+ Ctrl+Tab urutan kunci ) untuk berganti secara berurutan antara editor dengan mengikat urutan kunci tersebut ke perintah "Lihat: Buka Editor Selanjutnya" dan "Lihat: Buka Editor Sebelumnya", masing-masing .

Di MacOS:

  1. Arahkan ke: Kode> Preferensi> Pintasan Keyboard
  2. Cari atau navigasikan ke dua opsi berikut:
    • Lihat: Buka Editor Selanjutnya
    • Lihat: Buka Editor Sebelumnya
  3. Ubah kedua ikatan kunci menjadi urutan kunci yang diinginkan.
    • Lihat: Buka Editor Selanjutnya -> ( Ctrl+ Tab)
    • Lihat: Buka Editor Sebelumnya -> ( Shift+ Ctrl+ Tab)
  4. Anda kemungkinan akan mengalami ikatan yang saling bertentangan. Jika demikian, perhatikan perintah tersebut dan tetapkan kembali atau hapus ikatan yang ada.

Jika Anda mengacaukan, Anda selalu dapat kembali ke keadaan default untuk pengikatan yang diberikan dengan mengklik kanan pada pengikat tombol apa saja dan memilih "Reset Pengikat Tombol".

mungkin
sumber
1
Terima kasih kawan saya sedang melakukan perulangan di seluruh internet untuk ini!
Pall Arpad
2

Ini juga berfungsi pada MAC OS :

Tekan untuk Tab tertentu: Control+ 1 atau Control2, Control3, dll.

Tekan untuk menunjukkan / memilih semua Tab yang memungkinkan: Control+ Tab.

mdiiorio
sumber
2

Linux key-map agar sesuai dengan 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"
    }
]
hugomosh
sumber
1

Cara lain untuk mengubah tab dengan cepat adalah di VSCode 1.45 (April 2020)

Ganti tab menggunakan roda mouse

Saat Anda menggunakan roda mouse untuk menggulir tab editor, saat ini Anda tidak dapat beralih ke tab, hanya mengungkapkan tab yang tidak terlihat.

Sekarang dengan pengaturan baru workbench.editor.scrollToSwitchTabsperilaku ini dapat diubah jika Anda mengubahnya true.

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

Catatan: Anda juga dapat menekan dan menahan Shifttombol sambil menggulir untuk mendapatkan perilaku yang berlawanan (yaitu Anda dapat beralih ke tab bahkan dengan pengaturan ini dimatikan).

VONC
sumber
0

Saat menggunakan Visual Studio Code di Linux / Windows, Anda dapat menggunakan CTRL + PAGE_UP untuk beralih ke tab sebelumnya, dan CTRL + PAGE_DN untuk beralih ke tab berikutnya. Anda juga memiliki kemampuan untuk beralih ke tab berdasarkan indeks (bukan nol relatif) mereka. Anda dapat melakukannya, dengan menekan dan menahan ALT, diikuti oleh angka (1 hingga 9).

Untuk lebih jelasnya: cek di sini

Shiv Kumar Singh
sumber
0

Gunakan Sublime Text Keymaps. Jauh lebih intuitif.

km

Impor keymaps Teks Luhur:

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
relik
sumber
0

@SC_Chupacabra memiliki jawaban yang benar untuk memodifikasi perilaku.

Saya biasanya lebih suka CTRL+ PAGE UP / DOWNuntuk navigasi saya, daripada menggunakan kunci TAB.

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

Saya tidak dapat menemukan pos untuk Komunitas VS, jadi saya akan memposting solusi saya di sini.


Pertama, Anda harus pergi ke Tools -> Options -> Environment -> Keyboard, lalu cari perintahnya Window.NextTab. Di dekat bagian bawah seharusnya tertulis "Gunakan pintasan baru di:". Setel ke Global (harus default), lalu pilih kotak teks di sebelah kanan dan tekan Ctrl+ Tab. Hapus semua pintasan saat ini untuk perintah yang dipilih, dan tekan Pilih. Untuk Ctrl+ Shift+ Tab, perintahnya seharusnya Window.PreviousTab.

Semoga ini bisa membantu :) Jika ada posting terpisah untuk Komunitas VS, saya dengan senang hati akan memindahkan posting ini.

supsm
sumber