Thay đổi màu văn bản đánh dấu trong Visual Studio Code


114

Bây giờ, nó là một lớp phủ màu xám mờ, rất khó nhìn thấy. Có cách nào để thay đổi màu mặc định không?

nhập mô tả hình ảnh ở đây


Tools -> Options, nói chung: Phông chữ và màu sắc
Austin T Pháp

10
Visual Studio Code, không phải VS 2013, 2015, v.v.
duyn9uyen

Câu trả lời:


14

Cập nhật Xem câu trả lời của @Jakub Zawiślak cho VScode 1.12+


Câu trả lời cũ

Visual Studio Code gọi đây là phần đánh dấu lựa chọn và rất tiếc, tôi không nghĩ rằng màu sắc hiện có thể tùy chỉnh được. Chủ đề có thể kiểm soát màu 'lựa chọn', nhưng màu 'đánh dấu vùng chọn' được mã hóa cứng.

Xem sự cố này theo dõi một giải pháp khả thi: https://github.com/Microsoft/vscode/issues/1636

(Một lưu ý nhỏ là bạn có thể bật / tắt tính năng này với editor.selectionHighlightcài đặt.)


4
Đã lỗi thời .
Alex,

4
Cập nhật để tham khảo câu trả lời Jakub Zawiślak cho phiên bản hiện đại của VSCode
Matt Bierner

@ duyn9uyen, tốt hơn hết bạn nên thay đổi câu trả lời được chấp nhận.
kmchmk

266

Thêm các dòng sau vào cài đặt "Editor: Token Color Customizations", bên trong tệp settings.json.

"workbench.colorCustomizations": {
    "editor.selectionBackground": "#135564",
    "editor.selectionHighlightBackground": "#135564"
},

Xem Tham khảo màu chủ đề để có thêm tùy chọn


5
Có cách nào để thay đổi màu văn bản không? Nếu không, bạn phải tìm màu nền duy trì khả năng đọc khi được ghép với mọi màu đơn trong bảng màu của bạn. Đây là một trong hai vấn đề mà không may giữ cho tôi từ việc sử dụng VS Mã ...
Bruno Ely

3
@BrunoBEly Nếu bạn mở "workbench.colorCustomizations": {}rồi bắt đầu nhập "editor.selection, menu tự động hoàn thành sẽ đề xuất tất cả các phím có thể có và giải thích về chúng, bao gồm cả nền trước của lựa chọn.
Tobia

2
@Tobia cảm ơn vì mẹo! Tôi đã tìm thấy nó, nhưng có lẽ tôi đang làm gì đó sai. Tôi đặt cả background và foreground sang màu đỏ, nhưng chỉ nền dường như công việc (Tôi đang sử dụng VS Mã 1.18.0)
Bruno Ely

1
cho nhà ga: "terminal.selectionBackground": "#f1eeb3a9",
JinSnow

1
Điều này dường như không hoạt động đối với Python, cài đặt selectionHighlightBackgrounddường như không ảnh hưởng đến màu vscode sử dụng khi làm nổi bật việc sử dụng một biến hoặc hàm (ví dụ:)
jrh

48

Các câu trả lời trên bao gồm Selected textareas with same content as selection, nhưng chúng bỏ sót Current Search MatchOther Search Matches- có cùng một vấn đề .

"workbench.colorCustomizations": {
    "editor.findMatchBackground": "#00cc44a8", //Current SEARCH MATCH
    "editor.findMatchHighlightBackground": "#ff7b00a1" //Other SEARCH MATCHES
}

Lưu ý rằng các cài đặt trên cũng sẽ ảnh hưởng đến màu sắc khi sử dụng Change All Occurrences CtrlF2 (một lệnh siêu hữu ích chọn thông minh tất cả các lần xuất hiện của một chuỗi, đặt con trỏ tại mỗi vị trí để chỉnh sửa nhiều trường hợp) .

CẬP NHẬT:

Đối với những người đang sử dụng tiện ích mở rộng phổ biến là Dấu trang được Đánh số - giờ đây bạn có thể thay đổi màu nền của các dòng được đánh dấu - giúp bạn dễ dàng nhận thấy chúng. Thêm dòng này vào settings.json của bạn (cũng trong workbench.colorCustomizations ):

        "numberedBookmarks.lineBackground": "#007700"

Và đừng bỏ lỡ mẹo hữu ích của Henry Zhu trong câu trả lời của anh ấy bên dưới (hãy nhớ ủng hộ câu trả lời của anh ấy nếu bạn thấy nó hữu ích) . Tôi đã thêm mẹo của Henry vào cài đặt ở trên và thấy hiệu quả tổng thể được cải thiện.


Ví dụ về tệp cài đặt điển hình, đăng mod:

    {
        "git.enableSmartCommit": true,
        "git.autofetch": true,
        "breadcrumbs.enabled": true,
        "git.confirmSync": sai,
        "explorer.confirmDelete": sai,
        "code-runner.saveFileBeforeRun": true,
        "code-runner.saveAllFilesBeforeRun": true,
        "workbench.activityBar.vosystem": true,
        "files.trimTrailingWhitespace": true,
        "telemetry.enableTelemetry": false,
        "scm.providers.vosystem": 0, // 0 cho phép thay đổi kích thước thủ công của Bảng điều khiển nguồn
        "workbench.colorCustomizations": {
            "editor.selectionBackground": "# e788ff7c", // Văn bản hiện được CHỌN
            "editor.selectionHighlightBackground": "# ff00005b", // Nội dung giống như lựa chọn
            "editor.findMatchBackground": "# 00cc44a8", // TRẬN ĐẤU TÌM KIẾM Hiện tại
            "editor.findMatchHighlightBackground": "# ff7b00a1", // CÁC TRẬN ĐẤU TÌM KIẾM Khác
            "numbereredBookmarks.lineBackground": "# 007700"
            // Mẹo của Henry ở đây ... (đừng quên thêm dấu phẩy vào dòng trên)
        }
    }


Nơi để tìm tệp settings.json:

Depending on your platform, the user settings file is located here:

Windows %APPDATA%\Code\User\settings.json
macOS $HOME/Library/Application Support/Code/User/settings.json
Linux $HOME/.config/Code/User/settings.json

Phương thức ALTERNATE để mở tệp settings.json:

  1. Ctrl +, (dấu phẩy) để mở Cài đặt

  2. Bàn làm việc

  3. Trình chỉnh sửa cài đặt

  4. Trong hộp tìm kiếm ở trên cùng, hãy dán workbench.colorCustomizations

  5. Ở bên trái, nhấp Workbenchvà sau đóAppearance

  6. Nhấp vào liên kết bên phải: Edit in settings.json

Người giới thiệu:

https://code.visualstudio.com/api/references/theme-color#editor-colors

https://code.visualstudio.com/docs/getstarted/themes#_customize-a-color-theme

https://code.visualstudio.com/docs/getstarted/settings


1
Tôi thấy những điều này cũng hữu ích khi kết hợp với câu trả lời này để tìm các kết quả phù hợp trong nháy mắt. Lưu ý sự hỗ trợ cho RGBA (trong sử dụng của tôi, các thiết lập 75 alpha ở phần cuối của các giá trị màu:"editor.wordHighlightBorder": "#00ff0075", "editor.findMatchHighlightBorder": "#00ff0075"
Neil Guy Lindberg

Cảm ơn vì mẹo đó, Neil. Tôi sẽ thử nó.
cssyphus

Bất cứ ai biết làm thế nào điều này là có thể cho các trận đấu trong tìm kiếm đầu cuối?
holzkohlengrill

20

Nếu bất kỳ ai tìm thấy điều này và, giống như tôi, không thể làm cho cấu hình trên hoạt động, hãy thử làm điều này.

  1. đi tới tệp> Tùy chọn> cài đặt
  2. nhập các tùy chỉnh màu mã thông báo của Trình chỉnh sửa tìm kiếm
  3. trong tiêu đề tùy chỉnh màu mã thông báo Editor
  4. nhấp vào chỉnh sửa trong settings.json
  5. ở cột bên phải chọn cài đặt người dùng
  6. dán cái này vào đối tượng json

Đảm bảo thay thế chữ # bằng màu bạn muốn xem.

"workbench.colorCustomizations": {
    "editor.lineHighlightBackground": "#<color1>",
    "editor.selectionBackground": "#<color2>",
    "editor.wordHighlightBackground": "#<color3>",
    "editorCursor.foreground": "#<color4>"
},

Sự hiểu biết của tôi về cấu hình trên.

editor.lineHighlightBackground - khi bạn nhấp vào một dòng, đây là màu nền của dòng sẽ có.

"editor.selectionBackground" - Đây là nền của các lựa chọn phù hợp ở những nơi khác trong bộ đệm. Hãy nghĩ về một biến có tên foo và nó được sử dụng trên một tệp. Sau đó, bạn đánh dấu văn bản đó và tất cả các foos khác trên trang sẽ có màu này.

"editor.wordHighlightBackground" - Đây là màu của văn bản đã chọn nếu từ đánh dấu mặc định khi nhấp chuột không có hiệu lực. Tôi chỉ thấy giá trị này tạo ra sự khác biệt nếu bạn nhấp vào một từ không tự động chọn.

editorCursor.foreground - đây là màu con trỏ của bạn.


2
Đây nên là câu trả lời. Đây là những cài đặt được sử dụng trong phiên bản VSCode 1.3+
MaylorTaylor

editor.lineHighlightBackground dường như không có mặt ở đó nữa, và tôi nghĩ rằng họ đang nói nó đã cố tình loại bỏ: github.com/dracula/visual-studio-code/issues/68
havlock

điều đó rất tốt có thể được.
FujiRoyale

1
Cảm ơn, đã cố gắng tìm kiếm điều này trong nhiều ngày, không ai đề cập đến từHighlightBackground!
Ryan Weiss

Đây nên được đánh dấu là câu trả lời. 10 giây sửa chữa!
Nico Butler

17

Như tôi đã thử nghiệm, thiết lập màu đường viền giúp dễ đọc hơn so với thiết lập màu nền, đó là những gì Sublime Text thực hiện.

Ví dụ: thêm các dòng này vào settings.json:

"workbench.colorCustomizations": {
    "editor.selectionHighlightBorder": "#FFFA",
},

Các từ đã chọn sẽ được hiển thị như sau:

nhập mô tả hình ảnh ở đây


6

bạn có thể thay đổi nó bằng màu yêu thích của bạn bằng cách:

Các bước

  1. Mở mã trực quan
  2. Goto menu tệp
  3. Tùy chọn -> Cài đặt

sau khi mở cài đặt, bạn sẽ cập nhật cài đặt của mình trên cột bên phải, sao chép và dán mã này vào bên trong dấu ngoặc chính { ... }

"workbench.colorCustomizations": {
    "editor.selectionBackground": "#f00", // red color hexadecimal code
    "editor.selectionHighlightBackground": "#fff" // white hex code
},

Không thể đặt redhoặc whitedưới dạng giá trị.
giovannipds

1
giovannipds, chỉ cần tên của nó để hiển thị, bạn có thể thêm bất kỳ Tên màu sắc, nó không có giá trị
Rizo

1
Đó là mã, vì vậy nó sai. redwhitelà màu sắc trang web, do đó có thể lẫn lộn người ..
giovannipds

3

Nếu ai đó thấy mình đang đọc câu trả lời của @ FujiRoyale mà không ai trong số những người khác hoạt động và tự hỏi tại sao câu trả lời của anh ấy / cô ấy cũng không hoạt động, nhưng vì gần đây hơn tự hỏi tại sao, tôi đã làm theo câu trả lời của họ và đã (với v1.18 của vscode ) đây là một user settingsthiết lập:

{
    // Is git enabled
    "git.enabled": true,
    // Path to the git executable
    "git.path": "C:\\Users\\t606964\\AppData\\Local\\Programs\\Git\\mingw64\\bin\\git.exe",
    "workbench.startupEditor": "newUntitledFile",
    // other settings
    //
    "editor.fontSize": 12,
    "editor.tabSize": 2,
    "git.confirmSync": false,
    "workbench.colorTheme": "Monokai",
    "editor.fontWeight": "bold",
    "editor.formatOnSave": true,
    "editor.formatOnPaste": true,
    "workbench.iconTheme": "vscode-icons",
    "explorer.confirmDelete": false,
    "files.autoSave": "off",
    "workbench.colorCustomizations": {
        "editor.lineHighlightBackground": "#f00",
        "editor.selectionBackground": "#0f0",
        "editor.wordHighlightBackground": "#00f",
        "editorCursor.foreground": "#ff0"
    }
}

Lưu ý thụt lề và dấu phẩy và loại bỏ dấu ngoặc kép khỏi câu trả lời của họ (mà tôi phải thử để làm đúng, điều này không rõ ràng trong câu trả lời). Không cần phải khởi động lại vscode, nhưng có thể đáng để truy cập File > Autosavevà xem liệu bạn có bắt đầu nhận được các điểm nổi bật màu chính hay không. Và sau đó chọn màu sắc tốt hơn cho điểm nổi bật của bạn.

Bạn cũng có thể làm cho nó hoạt động workspace settingsbằng cách dán

"workbench.colorCustomizations": {
    "editor.lineHighlightBackground": "#f00",
    "editor.selectionBackground": "#0f0",
    "editor.wordHighlightBackground": "#00f",
    "editorCursor.foreground": "#ff0"
}

ở giữa hiện có {}trong ngăn cài đặt bên phải đó.

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.