Có chức năng thay đổi tab nhanh trong Visual Studio Code không?


325

Chức năng hiện tại cung cấp cho tôi tùy chọn thả xuống để chọn tab nào thật khó chịu. Có khả năng loại bỏ nó để các tab sẽ hoạt động như trong một số trình duyệt web hiện đại.


8
Tôi không thể nhấn mạnh đủ mức độ khó chịu này. Với VSCode và các biên tập viên khác.
Kai Noack

Câu trả lời:


588

Theo mặc định, Ctrl+ Tabtrong Visual Studio Code quay vòng qua các tab theo thứ tự được sử dụng gần đây nhất. Điều này là khó hiểu bởi vì nó phụ thuộc vào trạng thái ẩn.

Trình duyệt web quay vòng qua các tab theo thứ tự hiển thị. Điều này trực quan hơn nhiều.

Để đạt được điều này trong Visual Studio Code, bạn phải chỉnh sửa keybindings.json. Sử dụng Bảng lệnh với CTRL+SHIFT+P, nhập "Tùy chọn: Mở Phím tắt (JSON)" và nhấn Enter.

Sau đó thêm vào cuối tập tin:

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

Ngoài ra, để chỉ quay vòng qua các tab của chế độ xem / chia cửa sổ hiện tại, bạn có thể sử dụng:

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

Ngoài ra, bạn có thể sử dụng Ctrl+ PageDown(Windows) hoặc Cmd+ Option+ Right(Mac).


3
Trên thực tế, nó không bắt chước hành vi thả xuống. Với các phím bấm này, bạn chỉ cần điều hướng các tab sang phải ( ctrl+tab) hoặc sang trái ( ctrl+shift+tab). Để điều hướng các tab dựa trên lịch sử, hãy sử dụng : { "key": "ctrl+tab", "command": "workbench.action.openPreviousRecentlyUsedEditor" }, { "key": "ctrl+shift+tab", "command": "workbench.action.openNextRecentlyUsedEditor" }.
thậm chí

1
@GabrielZiegler Tôi biết, đúng rồi. Firefox cũng sử dụng chế độ tab này.
Permana

1
@evenfrost OP không muốn điều hướng dựa trên lịch sử vì vậy câu trả lời này là một câu hỏi hay.
Stephen Mariano Cabrera

4
Và ai không cung cấp tùy chọn để thay đổi hành vi tab này, thay vào đó cần phải chỉnh sửa tệp keybindings?!
Kai Noack

2
Những người muốn nhìn thấy chúng ta đau khổ, đó là những người.
Frans

193

@Combii Tôi tìm được cách hoán đổi

CMD + 1 , CMD + 2 , CMD + 3 với CTRL + 1 , CTRL + 2 , CTRL + 3 , ...

Trong macOS, đi đến:

Mã> Tùy chọn> Phím tắt

Trên trang đó, nhấp vào nút ở trên cùng bên phải của trang ...

chỉnh sửa nút keybindings.json

và nối cấu hình bên dưới, sau đó lưu lại.

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

Bây giờ bạn có thể sử dụng CMD + [1-9] để chuyển giữa các tab và CTRL + [1-3] để tập trung các nhóm biên tập! Hy vọng câu trả lời này là hữu ích.


4
alt + n đã làm điều này trên các cửa sổ, tôi chắc chắn có một máy mac tương đương
Dominic

12
trên Mac tương đương là control + n. Tôi thấy điều này là không trực quan vì hầu hết các chương trình mặc định là cmd + n để điều hướng tab. Chuyển đổi hai hành vi xung quanh có nghĩa là bạn có thể dựa vào bộ nhớ cơ khi cố gắng điều hướng qua các tab của mình.
Langlois.dev

Tôi nghĩ trên mac họ chỉ cài đặt các cửa sổ bằng cách thay đổi lệnh để điều khiển một số chức năng (ví dụ: tab chuyển đổi) và không chuyển cổng khác (ví dụ: mở và đóng tab thiết bị đầu cuối). Điều này rất bất tiện.
alanwsx

6
Ngoài ra, đối với phiên bản mới nhất (tháng 4 năm 2014), bạn có thể chỉ cần tìm kiếm các mục đó ( workbench.action.openEditorAtIndex1) và thay đổi nó. Không cần phải đi đến keybindings.json.
alanwsx

3
Kể từ câu 1.38.1 (đối với OSX), điều này đã lỗi thời. Theo tài liệu đi đến Preferences > Keyboard Shortcutsvà sau đó nhấp vào biểu tượng bên phải của thanh tiêu đề biên tập. Điều này sẽ mở ra keybindings.json.
Adam_G

51

các cửa sổ

Khi sử dụng Visual Studio Code trên Windows, bạn có thể sử dụng CTRL + PAGE_UPđể chuyển sang tab trước đó và CTRL + PAGE_DNđể chuyển sang tab tiếp theo.

Bạn cũng có khả năng chuyển sang các tab dựa trên chỉ mục (không tương đối khác) của chúng. Bạn có thể làm như vậy, bằng cách nhấn và giữ ALT, theo sau là một số (1 đến 9).

hệ điều hành Mac

Để nhanh chóng điều hướng giữa các tab, hãy bấm và giữ CMDphím, theo sau là số (1 đến 9) của tab bạn muốn chuyển sang.

Bạn cũng có khả năng chuyển đổi giữa tab trước / tiếp theo thông qua CMD + ALT + LEFT/RIGHTphím tắt.

Xin lưu ý rằng để chuyển sang một tab trong một nhóm biên tập khác, trước tiên bạn phải chuyển sang nhóm biên tập viên mong muốn.

Mẹo chuyên nghiệp : Nếu bạn không thoải mái với bất kỳ ràng buộc chính nào, bạn có thể thay đổi chúng thành bất cứ điều gì bạn cảm thấy thoải mái hơn!


2
CTRL + ALT + TRÁI / PHẢI và CTRL + chỉ sao chép các tab vào nhóm tab mới
yodalr

Các hướng dẫn đã rõ ràng trước đây, đơn giản là nó không hoạt động trên WINDOWS. Khi tôi nhấn ctrl + alt + trái - không có gì xảy ra và khi tôi nhấn ctrl + alt + phải, nó sẽ di chuyển tab vào các phần tab phụ ở bên phải.
yodalr

2
@yodalr, trên Windows, để chu kỳ giữa các tab, bạn nhấn một trong hai CTRL + PAGE_UPhoặc CTRL + PAGE_DN, tùy thuộc vào cách bạn muốn chu kỳ. CTRL + ALT + LEFTCTRL + ALT + RIGHTđang không các phím tắt tôi liệt kê cho Windows.
Brynden Bielefeld

6
Hmm, nó dường như không hoạt động như mô tả. Trên Mac, Cmd + Num chuyển đổi giữa nhóm tab (cửa sổ tách). Tôi muốn làm điều đó cho các tab trong cùng một nhóm. Tôi sẽ có thể làm điều đó?
huggie

@huggie Tôi đang thấy hành vi tương tự trên OSX. Bạn đã tìm thấy một cách để ánh xạ lại này?
Tiền tố

35

Nếu bạn đang sử dụng VSCodeVimtiện ích mở rộng, bạn có thể sử dụng phím tắt Vim :

Tab tiếp theo: gt

Tab trước: gT

Tab đánh số: nnngt


31

Điều này cũng hoạt động trên MAC OS :

Tab trước: Shift+ Cmd+[

Tab tiếp theo: Shift+ Cmd+]


24

macOS - sửa đổi 2017

Vào năm 2017, các phím tắt VS CODE đã thay đổi thành CTRL+ 1, CTRL+ 2, CTRL+ 3vv..để chuyển đổi giữa các tab.

CMD+1, CMD+2, and CMD+3 chuyển đổi giữa và tạo tab groups


11
Có thể thay đổi nó để CMD+1, CMD+2, and CMD+3thay vì CTRL+1, CTRL+2, CTRL+3?
David

Và cũng CMD + ALT + LEFT/RIGHTđể chỉ chu kỳ tất cả các tab trong tất cả các nhóm.
Davos

10

các cửa sổ

Trước

Ctrl+ Shift+Tab

Kế tiếp

Ctrl + Tab

hệ điều hành Mac

Trước

Shift+ Cmd+[

Kế tiếp

Shift + Cmd +]


câu trả lời của bạn nên được đặt lên hàng đầu
người ngoài cuộc

5

Better approch là sử dụng alt + right và alt + trái phím điều hướng như Jetbrains IDE Webstorm làm

Đây là cấu hình của tôi. nó cũng bao gồm tạo tập tin và thư mục mới

    {
        "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
Ghi đè alt + phải / trái ngăn chặn mặc định, hành vi soạn thảo hữu ích để chuyển con trỏ sang từ trước đó / tiếp theo.
karni


3

Visual Studio Code v1.35.0 cho phép bạn đặt các chuỗi khóa ( Ctrl+ Tab) / ( Shift+ Ctrl+ Tab) để chuyển đổi tuần tự giữa các biên tập viên bằng cách ràng buộc các chuỗi phím đó với các lệnh "Xem: Mở Trình soạn thảo tiếp theo" và "Xem: Mở Trình chỉnh sửa trước", tương ứng .

Trên macOS:

  1. Điều hướng đến: Mã> Tùy chọn> Phím tắt
  2. Tìm kiếm hoặc điều hướng xuống hai tùy chọn sau:
    • Xem: Mở Trình chỉnh sửa tiếp theo
    • Xem: Mở Trình chỉnh sửa trước
  3. Thay đổi cả hai phím bấm thành chuỗi khóa mong muốn.
    • Xem: Mở Trình chỉnh sửa tiếp theo -> ( Ctrl+ Tab)
    • Xem: Mở Trình chỉnh sửa trước -> ( Shift+ Ctrl+ Tab)
  4. Bạn có thể sẽ gặp phải một ràng buộc mâu thuẫn. Nếu vậy, hãy lưu ý lệnh và gán lại hoặc loại bỏ ràng buộc khóa hiện có.

Nếu bạn làm phiền, bạn luôn có thể trở lại trạng thái mặc định cho một ràng buộc nhất định bằng cách nhấp chuột phải vào bất kỳ thao tác bấm phím nào và chọn "Đặt lại liên kết phím".


1
Cảm ơn anh bạn tôi đã lặp qua toàn bộ internet cho việc này!
Pall Arpad

2

Điều này cũng hoạt động trên MAC OS :

Nhấn để chọn Tab cụ thể: Control + 1 hoặc Control2, Control3, v.v.

Nhấn để hiển thị / chọn tất cả các Tab rõ ràng: Control+ Tab.


2

Bản đồ khóa Linux để phù hợp với trình duyệt:

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

Một cách khác để nhanh chóng thay đổi các tab sẽ có trong VSCode 1.45 (tháng 4 năm 2020)

Chuyển tab bằng bánh xe chuột

Khi bạn sử dụng bánh xe chuột để cuộn qua các tab của trình soạn thảo, hiện tại bạn không thể chuyển sang tab, chỉ hiển thị các tab nằm ngoài tầm nhìn.

Bây giờ với cài đặt mới workbench.editor.scrollToSwitchTabs, hành vi này có thể được thay đổi nếu bạn thay đổi thành true.

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

Lưu ý: bạn cũng có thể nhấn và giữ Shiftphím trong khi cuộn để có hành vi ngược lại (tức là bạn có thể chuyển sang các tab ngay cả khi cài đặt này bị tắt).


0

Khi sử dụng Visual Studio Code trên Linux / Windows, bạn có thể sử dụng CTRL + PAGE_UP để chuyển sang tab trước đó và CTRL + PAGE_DN để chuyển sang tab tiếp theo. Bạn cũng có khả năng chuyển sang các tab dựa trên chỉ mục (không tương đối khác) của chúng. Bạn có thể làm như vậy, bằng cách nhấn và giữ ALT, theo sau là một số (1 đến 9).

Để biết thêm chi tiết: kiểm tra tại đây


0

Sử dụng Keymap văn bản tuyệt vời. Vì vậy, trực quan hơn nhiều.

km

Nhập Keymap văn bản tuyệt vời:

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 có câu trả lời đúng cho việc sửa đổi hành vi.

Tôi thường thích CTRL+ PAGE UP / DOWNcho điều hướng của mình hơn là sử dụng phím TAB.

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

0

Tôi không thể tìm thấy một bài đăng cho Cộng đồng VS, vì vậy tôi sẽ đăng giải pháp của mình tại đây.


Trước tiên, bạn cần vào Công cụ -> Tùy chọn -> Môi trường -> Bàn phím, sau đó tìm lệnh Window.NextTab. Gần phía dưới nó sẽ hiện "Sử dụng phím tắt mới trong:". Đặt nó thành Toàn cầu (nên được mặc định), sau đó chọn hộp văn bản ở bên phải và nhấn Ctrl+ Tab. Xóa tất cả các phím tắt hiện tại cho lệnh đã chọn và nhấn Assign. Đối với Ctrl+ Shift+ Tab, lệnh nên là Window.PreviousTab.

Hy vọng điều này sẽ giúp :) Nếu có một bài đăng riêng cho Cộng đồng VS, tôi sẵn sàng chuyển bài đăng này qua.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.