Чи є функція вкладки швидкої зміни у Visual Studio Code?


325

Поточна функція надання мені випадаючої опції, яку вкладку вибрати, настільки дратує. Чи є можливість її видалити, щоб вкладки працювали, як у деяких сучасних веб-браузерах.


8
Я не можу достатньо підкреслити, наскільки це дратує. З VSCode та іншими редакторами.
Кай Ноак

Відповіді:


587

За замовчуванням Ctrl+ Tabу коді Visual Studio переглядає вкладки в порядку останнього використання. Це заплутано, оскільки це залежить від прихованого стану.

Веб-браузери переглядають вкладки у видимому порядку. Це набагато інтуїтивніше.

Щоб досягти цього в коді Visual Studio, вам потрібно відредагувати keybindings.json. Використовуйте Палітру команд за допомогою CTRL+SHIFT+P, введіть "Налаштування: Відкрийте комбінації клавіш (JSON)" і натисніть Enter.

Потім додайте в кінець файлу:

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

Крім того, щоб перейти лише через вкладки поточного вікна / розділеного перегляду, ви можете використовувати:

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

Крім того, ви можете використовувати Ctrl+ PageDown(Windows) або Cmd+ Option+ Right(Mac).


3
Насправді це не імітує поведінку, що випадає. За допомогою цих вкладок ви просто переміщаєтеся вкладками праворуч ( ctrl+tab) або ліворуч ( ctrl+shift+tab). Для переміщення вкладок на основі історії використання їх: { "key": "ctrl+tab", "command": "workbench.action.openPreviousRecentlyUsedEditor" }, { "key": "ctrl+shift+tab", "command": "workbench.action.openNextRecentlyUsedEditor" }.
навітьмороз

1
@GabrielZiegler Я знаю, правда. Firefox також використовує цей режим вкладки.
Пермана

1
@evenfrost ОП не хоче орієнтуватися на основі історії, тому ця відповідь є хорошою.
Стівен Маріано Кабрера

4
А хто не пропонує можливості змінити цю поведінку вкладки, замість цього потрібно редагувати файл клавіш ?!
Кай Ноак

2
Люди, які хочуть бачити нас страждаючими, ось хто.
Франс

193

@Combii Я знайшов спосіб змінити обмін

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

У macOS перейдіть до:

Код> Налаштування> Комбінації клавіш

На цій сторінці натисніть кнопку у верхньому правому куті сторінки ...

редагувати кнопку keybindings.json

і додайте конфігурацію нижче, а потім збережіть.

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

Тепер ви можете використовувати CMD + [1-9] для переключення між вкладками та CTRL + [1-3] для фокусування груп редакторів! Сподіваюся, що ця відповідь корисна.


4
alt + n робить це вже на windows, я впевнений, що існує mac еквівалент
Домінік

12
на Mac еквівалент - контроль + n. Я вважаю це неінтуїтивним, оскільки для більшості програм за замовчуванням до cmd + n для навігації по вкладках. Переключення двох форм поведінки означає, що ви можете розраховувати на м'язову пам’ять, намагаючись орієнтуватися по вкладках.
Langlois.dev

Я думаю, що на mac вони просто переносять налаштування windows із зміною команди для управління деякими функціями (наприклад, вкладка перемикання), а інші не портують (наприклад, відкриваємо та закриваємо вкладку терміналу). Це дуже незручно.
alanwsx

6
Крім того, для новітньої версії (Apr2019) ви можете просто шукати ці елементи ( workbench.action.openEditorAtIndex1) та змінювати її. Не потрібно їхати keybindings.json.
alanwsx

3
Згідно з v. 1.38.1 (для OSX), це застаріло. Згідно з документацією, перейдіть до, Preferences > Keyboard Shortcutsа потім натисніть на значок праворуч від рядка заголовка редактора. Це відкриється keybindings.json.
Adam_G

51

Windows

Під час використання коду Visual Studio у Windows ви можете CTRL + PAGE_UPперейти на попередню вкладку та CTRL + PAGE_DNперейти на наступну вкладку.

Ви також маєте можливість переходити на вкладки на основі їх (ненульового відносного) індексу. Це можна зробити, натиснувши і утримуючи ALT, а потім цифру (1 - 9).

macOS

Щоб швидко перейти між вкладками, натисніть і потримайте CMDклавішу, а потім номер (1 - 9) вкладки, на яку потрібно перейти.

Ви також маєте можливість перемикатися між попередньою / наступною вкладкою за допомогою CMD + ALT + LEFT/RIGHTкомбінації клавіш.

Зауважте, що для переходу на вкладку, що знаходиться в іншій редакторській групі, спочатку потрібно перейти до потрібної групи редакторів.

Порада : якщо вам не подобається жодна з ключових прив’язок, ви можете змінити їх на те, що вам подобається комфортніше!


2
CTRL + ALT + Вліво / Вправо та CTRL + номер лише копіюють вкладки в нову групу вкладок
yodalr

Інструкції були зрозумілі раніше, він просто не працює на WINDOWS. Коли я натискаю ctrl + alt + зліва - нічого не відбувається, а коли я натискаю ctrl + alt + праворуч, він переміщує вкладку у розділи вторинних вкладок праворуч.
yodalr

2
@yodalr, в Windows для переміщення між вкладками ви натискаєте або, CTRL + PAGE_UPабо CTRL + PAGE_DNзалежно від того, яким способом ви хочете перейти до циклу. CTRL + ALT + LEFTі CTRL + ALT + RIGHTце не комбінації клавіш, які я вказав для Windows.
Брінден Білефельд

6
Хм, це, здається, не працює, як описано. На Mac, Cmd + Num перемикається між групами вкладок (розділені вікна). Я хочу зробити це для вкладок в одній групі. Чи зміг би я це зробити?
huggie

@huggie Я бачу таку саму поведінку на OSX. Ви знайшли спосіб змінити це?
Префікс


31

Це також працює в ОС MAC :

Попередня вкладка: Shift+ Cmd+[

Наступна вкладка: Shift+ Cmd+]


24

macOS - переглянутий 2017 рік

У 2017 році комбінації клавіш VS CODE були змінені на CTRL+ 1, CTRL+ 2, CTRL+ 3тощо. Для переключення між вкладками.

CMD+1, CMD+2, and CMD+3 перемикатися між і створювати tab groups


11
Чи можна змінити його CMD+1, CMD+2, and CMD+3замість CTRL+1, CTRL+2, CTRL+3?
Девід

А також CMD + ALT + LEFT/RIGHTпросто прокручувати всі вкладки у всіх групах.
Давос

10

Windows

Попередній

Ctrl+ Shift+Tab

Далі

Ctrl + Tab

Mac OS

Попередній

Shift+ Cmd+[

Далі

Shift + Cmd +]


Ваша відповідь повинна бути на вершині
аутсайдер

5

Краще схвалення - використання клавіш alt + праворуч та alt + ліворуч для навігації, як це робить веб- шторм Jetbrains IDE

Ось моя конфігурація. він також включає створення нового файлу та папки

    {
        "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
Перевищення клавіш alt + справа / зліва запобігає корисній поведінці редактора за замовчуванням для переходу курсору до попереднього / наступного слова.
karni


3

Visual Studio Code v1.35.0 давайте встановимо послідовності ( Ctrl+ Tab) / ( Shift+ Ctrl+ Tab) клавіш для послідовного перемикання між редакторами, прив’язуючи послідовності цих клавіш до команд "Переглянути: Відкрити наступний редактор" та "Переглянути: відкрити попередній редактор" відповідно .

На macOS:

  1. Перейдіть до: Код> Налаштування> Комбінації клавіш
  2. Пошук або перехід до наступних двох варіантів:
    • Вид: Відкрийте наступний редактор
    • Вид: Відкрити попередній редактор
  3. Змініть обидві зв'язки клавіш на потрібну послідовність клавіш.
    • Перегляд: відкрити наступний редактор -> ( Ctrl+ Tab)
    • Перегляд: відкрити попередній редактор -> ( Shift+ Ctrl+ Tab)
  4. Ви, ймовірно, натрапите на суперечливу прив'язку. Якщо це так, візьміть на замітку команду та перевстановіть або видаліть наявну прив'язку ключа.

Якщо ви заплуталися, ви завжди можете повернутись до стану за замовчуванням для заданої прив'язки, клацнувши правою кнопкою миші на будь-якій клавіатурі та вибравши «Скинути введення ключів».


1
Дякую чувак, я за це переглядав весь Інтернет!
Pall Arpad

2

Це також працює в ОС MAC :

Натисніть для вибору конкретної вкладки: Control+ 1 або Control2, Control3 і т.д.

Натисніть для показу / вибору всіх можливих вкладок: Control+ Tab.


2

Ключ-карта Linux для відповідності веб-переглядачу:

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

Ще один спосіб швидкої зміни вкладок - це VSCode 1,45 (квітень 2020)

Перемикайте вкладки за допомогою колеса миші

Коли ви використовуєте колесо миші для прокрутки по вкладках редактора, наразі ви не можете переключитися на вкладку, лише виявити вкладки, які не видно.

Тепер з новим налаштуванням workbench.editor.scrollToSwitchTabsцю поведінку можна змінити, якщо змінити її true.

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

Примітка. Ви також можете натискати і утримувати Shiftклавішу під час прокрутки, щоб отримати протилежну поведінку (тобто ви можете переходити на вкладки, навіть якщо цей параметр вимкнено).


0

Під час використання коду Visual Studio на Linux / Windows, ви можете використовувати CTRL + PAGE_UP для переходу на попередню вкладку, а CTRL + PAGE_DN для переходу на наступну вкладку. Ви також маєте можливість переходити на вкладки на основі їх (ненульового відносного) індексу. Це можна зробити, натиснувши і утримуючи ALT, а потім цифру (1 - 9).

Для отримання більш детальної інформації: перевірте тут


0

Використовуйте піднесені текстові клавіші. Так набагато інтуїтивніше.

km

Імпорт піднесених текстових ключових карт:

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 має правильну відповідь для зміни поведінки.

Я, як правило, віддаю перевагу CTRL+ PAGE UP / DOWNдля своєї навігації, ніж використання клавіші TAB.

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

0

Я не зміг знайти пост для спільноти VS, тому я опублікую своє рішення тут.


Спочатку потрібно перейти до Інструменти -> Параметри -> Навколишнє середовище -> Клавіатура, після чого знайти команду Window.NextTab. Унизу слід сказати "Використовувати новий ярлик у:". Встановіть це на Global (має бути за замовчуванням), а потім виберіть текстове поле праворуч та натисніть Ctrl+ Tab. Видаліть усі поточні ярлики для вибраної команди та натисніть Призначити. Для Ctrl+ Shift+ Tabкоманда повинна бути Window.PreviousTab.

Сподіваюсь, це допомагає :) Якщо для спільноти VS є окремий пост, я з радістю переміщу це повідомлення.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.