Beralih fokus antara editor dan terminal terintegrasi dalam Visual Studio Code


516

Adakah yang tahu pintasan keyboard (Mac dan Linux) untuk mengalihkan fokus antara editor dan terminal terintegrasi dalam Visual Studio Code?


26
ctrl + '`' akan menjadi yang terbaik#-> Linux
muthukumar helius

14
ctrl + '`' juga berfungsi pada OS X tanpa ikatan kunci tambahan.
nataliastanko

2
ctrl+ '' 'bekerja dengan Windows dengan sempurna juga!
Ehtesham Z

Jawaban:


987

Walaupun ada banyak toggle modal dan pintasan navigasi untuk VS Code, tidak ada satu khusus untuk "pindah dari editor ke terminal, dan kembali lagi". Namun Anda dapat membuat dua langkah dengan membebani berlebih keydan menggunakan when klausa .

Buka keybindings.json dari editor: CMD-SHIFT-P -> Preferensi: Buka File Pintasan Keyboard dan tambahkan entri ini:

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

Dengan pintasan ini saya akan fokus antara editor dan Terminal Terpadu menggunakan keystroke yang sama.


21
Sejauh ini, ini adalah jawaban terbaik sebagai solusi paling ergonomis yang dibenarkan: memperluas pengikatan kunci yang ada. Pujian!
mloskot

7
Terima kasih, ini bekerja dengan baik dan menghemat banyak waktu. Untuk pengguna keyboard internasional: "ctrl+`"dapat ditentukan sebagai "ctrl+oem_3".
esel

7
Perilaku @Roman 1.18.0 tentu saja merupakan peningkatan sejak ketika saya menulis jawaban saya, tetapi saya pikir hal di atas masih lebih baik. Perbedaannya adalah terminal tidak akan hilang saat menggunakan keystroke, hanya fokus yang akan berubah. Saya kebetulan suka menjaga terminal saya tetap ditampilkan :)
wgj

38
Perhatikan bahwa pintasan ini harus ditempelkan ke keybindings.jsonfile.
pseudomarvin

42
Buka keybindings.json dari editor: CMD-SHIFT-P-> Preferences: Open Keyboard Shortcuts File. Juga sumber yang bagus: code.visualstudio.com/docs/getstarted/keybindings
derFunk

174

ctrl+` : Untuk Fokus pada Terminal Terpadu

ctrl+1 : Untuk Fokus pada Editor (Jika perintah editor-2 adalah ctrl+ 2)

masukkan deskripsi gambar di sini

Info Lebih Lanjut: http://www.rscoder.com/2020/04/how-to-switch-focus-between-editor-and.html


5
di mana sih `pada keyboard apa saja 🙄
Ewoks

7
tepat di bawah tombol esc :)
Rahul Shukla

6
Terima kasih. Ctrl + 1 adalah yang saya butuhkan, seperti dalam beberapa kasus, ctrl + `akan membuka terminal eksternal dan tidak dapat menggunakannya lagi untuk kembali ke editor VSCode
Thang Nguyen

2
imho jawaban yang paling sederhana dan paling akurat.
Tomas

3
Kontrol + '~' akan berfungsi untuk beralih di antara keduanya. Saya menggunakan dari beberapa waktu.
surender pal


55

Sedikit terlambat ke permainan tetapi saya mengkonfigurasi milik saya sebagai berikut di 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"
}

Saya ingin kunci terpisah untuk membuka / menutup terminal dan mengalihkan fokus bolak-balik antara jendela.


4

2
Saya menemukan altlebih mudah untuk menekan daripada ctrl, jadi dalam konfigurasi saya itu sebaliknya.
xji

Ini adalah proposal yang bagus, meskipun saya memilih untuk menjaga binding asli dan menggunakan altuntuk beralih fokus.
Tn. Duhart

@ BenCreasy Itu hanya untuk macOS, pada Windows ini berfungsi dengan baik.
Kotauskas

24

Pada versi: 1.26.1 (linux), pintasan tidak diatur secara default. Untuk mengatur pintasan

  1. buka panel pintasan keyboard [ctrl + k, ctrl + s]
  2. Cari Terminal Fokus

masukkan deskripsi gambar di sini

  1. Atur pintasan Anda

Untuk fokus editor sudah diatur secara default.

masukkan deskripsi gambar di sini


Karena mereka menyediakan pemetaan keyboard tambahan, jawaban ini lebih sederhana dan lebih cepat
LookAheadAtYourTypes

Ini memfokuskan grup editor pertama - mungkin bukan yang diinginkan OP. Mungkin menginginkan grup editor saat ini / aktif.
Tandai

1
Ini adalah jawaban untuk tahun 2020 dan apa> = 1.45.0
chrismarx

Bagus. Terima kasih atas kejelasannya di sini.
Fiddy Bux

18

Saya mengkonfigurasi milik saya sebagai berikut karena saya menemukan ctrl+ `agak sulit untuk ditekan.

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

Saya juga mengkonfigurasi yang berikut untuk berpindah di antara grup editor.

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

By the way, saya dikonfigurasi Caps Lockuntuk ctrldi Mac dari System Preferences => keyboard =>Modifier Keys.


8

Pengikat tombol default untuk beralih ke terminal terintegrasi adalah "Ctrl +` "menurut halaman dokumentasi pintasan keyboard vscode . Jika Anda tidak menyukai pintasan itu, Anda dapat mengubahnya di file keybindings Anda dengan menambahkan sesuatu yang mirip dengan:

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

Tampaknya tidak ada pengikatan kunci default untuk hanya memfokuskan panel bawah. Jadi, jika Anda tidak ingin beralih panel bawah, Anda perlu menambahkan sesuatu yang mirip dengan berikut ini ke file keybindings Anda:

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

Sempurna, terima kasih! Saya mencari jawaban kedua yang Anda sebutkan. Jika ada yang bertanya-tanya tentang pintasan keyboard untuk mengembalikan fokus ke editor maka itu adalah: Command + 1 (di Mac)
Abhijeet

Saya pikir focusPanelini untuk wilayah umum (termasuk hal-hal seperti "Masalah", "Keluaran" dan "Konsol Debug". Ada juga tindakan khusus untuk Terminal Terpadu workbench.action.terminal.focus.
wgj

8

Coba gunakan ctrl + ` untuk mengubah visibilitas terminal dan sebagai hasilnya beralih fokus.


3

Tidak persis apa yang diminta, tetapi saya merasa sangat bermanfaat dan terkait.

Jika seseorang ingin mengubah dari satu terminal ke terminal lain juga terbuka di panel terminal terintegrasi Visual Studio, Anda dapat mencari:

Terminal: Focus Next Terminal

Atau tambahkan pintasan tombol berikut dan lakukan lebih cepat dengan kombinasi keyboard.

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

Saya harap ini membantu orang lain.


3

Jawaban oleh Shubham Jain adalah pilihan terbaik sekarang menggunakan pintasan keyboard bawaan.

Saya memetakan masukkan deskripsi gambar di sini

ke Ctrl+;

dan dipetakan kembali masukkan deskripsi gambar di sini

ke Ctrl+L

Dengan cara ini Anda dapat memindahkan fokus antara terminal dan editor, dan beralih terminal semua dalam jarak dekat.


Ini menyelesaikannya untuk saya! Pintasan keyboard -> Terminal: Terminal Fokus ( workbench.action.terminal.focus ) -> mengubah Keybinding ke kombinasi yang saya inginkan. Berjalan di vscode Insiders 1.43.0
jeppoo1

2

Secara umum, kode vs digunakan ctrl+juntuk membuka Terminal jadi saya membuat keybinding untuk beralih dengan ctrl+kkombinasi, seperti di bawah ini di keybindings.json:

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

0

SOLUSI WINDOWS SEDERHANA UNTUK SETIAP LAYOUT KEYBOARD (dapat bekerja untuk OS lain tetapi tidak diuji)

Saya menggunakan keyboard Finlandia sehingga tidak ada yang di atas berfungsi tetapi ini harus bekerja untuk semua keyboard.

  • Terminal fokus: Arahkan mouse Anda di atas teks terminal di terminal terintegrasi . Jalan pintas untuk fokus pada terminal akan muncul - milik saya misalnya kata CTRL + ö.
  • Fokus editor: seperti yang disebutkan di atas, gunakan CTRL + 1.

-1

Saya melakukan ini dengan pergi ke pengaturan> Keyboard Shortcuts kemudian di bagian mana ia memberikan terminal fokus jenis bar pencarian dan pilih opsi. Ini akan meminta untuk mengetik kombinasi yang ingin Anda atur untuk tindakan ini. Lakukan. Adapun fokus editor, ketik "fokus editor" di bilah pencarian dan ketik kunci yang Anda inginkan. JIKA Anda menambahkan kunci dengan sangat baik. itu dapat dihapus dengan pergi mengedit jason seperti disebutkan dalam komentar di atas


-1

control + '~' akan bekerja untuk beralih di antara keduanya. dan ' ` ' tepat di atas tombol tab.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.