Як редагувати темну тему за замовчуванням для коду Visual Studio?


88

Я використовую Windows 7 64-bit.

Чи є спосіб редагувати темну тему за замовчуванням у коді Visual Studio? У %USERPROFILE%\.vscodeпапці є лише теми з розширень, тоді як у шляху встановлення (я використовував за замовчуванням C:\Program Files (x86)\Microsoft VS Code) є файли деяких стандартних тем у\resources\app\extensions , таких як Kimbie Dark, Solarized Dark / Light або варіанти Monokai, але темної теми за замовчуванням немає.

Але якщо все-таки є можливість його редагувати, то які блоки коду відповідають за колір члена об'єкта, члена вказівника та ім'я класу та структури на мові С ++?


4
Для тих, хто приходить сюди: вам не потрібно шукати, модифікувати або створювати будь-які файли тем. Все можна змінити за допомогою workbench.colorCustomizationsі editor.tokenColorCustomizationsв налаштуваннях користувача: code.visualstudio.com/docs/getstarted/… .
chipit24

Можна також протриматися за несвіжий, але працюючи над функцією, яка дозволила б нам додати власний глобальний CSS, наприклад, Atoms Edit -> Stylesheet...Останньою зміною проблеми було березневе github.com/Microsoft/vscode/issues/459 . Розчаровує те, що він закритий для коментарів. Поточний API не дозволяє розширення модифікувати глобальний CSS ... тому нам доведеться почекати або вручну вставити CSS в Інструменти розробника, як печерна людина.
Рей Фосс,

Відповіді:


47

Файл, який ви шукаєте, знаходиться в

Код Microsoft VS \ resources \ app \ extensions \ theme-за замовчуванням \ themes

у Windows та шукайте ім'я файлу, dark_vs.jsonщоб знайти його в будь-якій іншій системі.


Оновлення:

У нових версіях VSCode вам не потрібно шукати файл налаштувань, щоб налаштувати тему. Тепер ви можете налаштувати кольорову тему за допомогою налаштувань користувача workbench.colorCustomizationsта editor.tokenColorCustomizationsкористувача. Документацію з цього питання можна знайти тут .


11
У Linux це все/usr/share/code/resources/app/extensions/theme-defaults/themes
sigalor

1
На Arch Linux це (випуск з відкритим вихідним кодом) у/usr/lib/code/extensions/theme-defaults/themes
hendalst

3
За замовчуванням код VS встановлюється в C: \ users \ {ім'я користувача} \ AppData \ Local \ Programs \ Microsoft VS Code
Toivo Säwén

2
Оновлення цієї відповіді є слушною рекомендацією. Я виявив, що якщо ви редагуєте файли тем безпосередньо, вони можуть / будуть перезаписані під час оновлення VS Code.
cniggeler

73

У коді VS "Налаштування користувача" ви можете редагувати видимі кольори, використовуючи такі теги (це зразок, і тегів набагато більше),

"workbench.colorCustomizations": {
    "list.inactiveSelectionBackground": "#C5DEF0",
    "sideBar.background": "#F8F6F6",
    "sideBar.foreground": "#000000",
    "editor.background": "#FFFFFF",
    "editor.foreground": "#000000",
    "sideBarSectionHeader.background": "#CAC9C9",
    "sideBarSectionHeader.foreground": "#000000",
    "activityBar.border": "#FFFFFF",
    "statusBar.background": "#102F97",
    "scrollbarSlider.activeBackground": "#77D4CB",
    "scrollbarSlider.hoverBackground": "#8CE6DA",
    "badge.background": "#81CA91"}

Якщо ви хочете редагувати деякі маркери кольорів C ++, використовуйте такий тег,

"editor.tokenColorCustomizations": {
    "numbers": "#2247EB",
    "comments": "#6D929C",
    "functions": "#0D7C28"
}

1
Але якщо це за межами tokenColorCustomizations, що мені робити?
Олексій

Де можна знайти список усіх доступних опцій у "editor.tokenColorCustomizations"?
ololobus


Мою редакцію було відхилено з якихось причин, але, щоб зробити цю відповідь конкретно розглянутою бажанням ОП змінити конкретну тему, ви можете вказати тему та змінити кольори, не змінюючи файли теми: "workbench.colorCustomizations": {"[Kimbie Dark]" : {"activityBar.foreground": "# 472c0c"}}
aamarks

У налаштуваннях це називається «Workbench: Налаштування кольору»
Зак Сосьє

29

Що стосується тем, то VS Code можна так само редагувати, як Sublime. Ви можете редагувати будь-яку із стандартних тем, які постачаються з кодом VS. Вам просто потрібно знати, де знайти файли тем.

Примітка: Я люблю тему Monokai. Однак все, що я хотів змінити з цього приводу, - це передісторія. Мені не подобається темно-сіруватий фон. Натомість, я думаю, що контраст НАБАГАТО кращий із суцільним чорним фоном. Код вискакує набагато більше.

У будь-якому випадку, я полював на файл теми і знайшов його (у вікнах) за адресою:

c: \ Program Files (x86) \ Microsoft VS Code \ resources \ app \ extensions \ theme-monokai \ themes \

У цій папці я знайшов файл Monokai.tmTheme і змінив перший фоновий ключ наступним чином:

<key>background</key>
<string>#000000</string>

У файлі теми є кілька «фонових» клавіш, переконайтесь, що ви відредагували правильний. Той, який я відредагував, був на самому верху. Рядок 12, думаю.


5
Місця встановлення Ubuntu такі:/usr/share/code/resources/app/extensions/theme-defaults/themes/dark_vs.json
Макс.

5
І для mac я знайшов, що оновлення файлів у цих шляхах працювало: /Users/user-name/.vscode/extensions/azemoh.one-monokai-0.3.3/themes/OneMonokai-color-theme.jsoncmd + shift + p і введіть reload windowcmd, щоб негайно спробувати зміни :)
balajikris

1
Змінити фон теми також можна "workbench.colorCustomizations": { "[Theme You Want to Update]": { "editor.background": "#000000" }в налаштуваннях користувача.
Більбо

1
Для 64-розрядного коду VS у Windows основний шлях C:\Program Files\Microsoft VS Code\resources\app\extensions\ , як правило, дотримуєтьсяtheme-....
Peter B,

Змініть тему в налаштуваннях користувача за допомогою "workbench.colorCustomizations": { "editor.background": "#000" },. Ось усі різні налаштування, які ви можете зробити: code.visualstudio.com/api/references/theme-color
Джеремі Моріц

17

Ви не можете "редагувати" тему за замовчуванням, вони "заблоковані"

Тим не менш, ви можете скопіювати його у свою власну тему з точними змінами, які хочете.

Для отримання додаткової інформації див. Ці статті: https://code.visualstudio.com/Docs/customization/themes https://code.visualstudio.com/docs/extensions/install-extension#_your-extensions-folder

Якщо все, що ви хочете змінити, - це кольори коду на C ++, вам слід поглянути на перезапис кольорової підтримки підтримки c ++. Щоб отримати інформацію про це, перейдіть сюди: https://code.visualstudio.com/docs/customization/colorizer

EDIT: Темну тему можна знайти тут: https://github.com/Microsoft/vscode/tree/80f8000c10b4234c7b027dccfd627442623902d2/extensions/theme-colorful-defaults

EDIT2: Для уточнення:


1
І звідки я можу його скопіювати? У статтях, які ви мені надіслали, про це нічого немає І я не хочу встановлювати нічого для такої тривіальної речі, як трохи підсвічування синтаксису - особливо, коли я міг просто відкрити потрібний файл і змінити кілька рядків коду, якщо тема за замовчуванням не була заблокована. Крім того, для створення нової теми за допомогою Yeoman Generator потрібен файл .tmTheme іншої теми - на веб-сайті ColorSublime немає темної теми Visual Studio, і я не маю доступу до "заблокованої" від VSC.
Toreno96

Можливо, я міг би відредагувати файл c ++. Plist з "C: \ Program Files (x86) \ Microsoft VS Code \ resources \ app \ extension \ cpp"? Але які блоки коду слід змінити? А може, десь є вихідний файл темної теми VSC за замовчуванням, який я міг би використати для створення власної власної теми?
Toreno96

Ви не можете редагувати його, оскільки я вважаю, що він збережений у вихідному коді. Однак ви можете скопіювати / вставити його та змінити кілька рядків. Він розташований на GitHub. Я знайшов його для вас: github.com/Microsoft/vscode/tree/... Відредагована відповідь із посиланням
Tobiah Zarlez

Можна редагувати файл clist. Plist, про який я згадую, я це перевірив. І я зрозумів із статті про колоризатори, що це стандартний файл колоризатора для мови С ++. Виправте мене, якщо я помиляюся. Але якщо ви все ще говорите про редагування теми за замовчуванням - так, я знаю, що не можу цього зробити, я зрозумів пропозицію про це з вашої першої відповіді. Дякую за інформацію про вихідний код на GitHub та посилання - але я перевірив, і теми звідти не є типовими, а модифікованими, більш барвистими їх варіаціями. На жаль, не так, як би я хотів.
Toreno96

1
Але випадково я виявив, що тема "Xcodedefault" із галереї розширень має такий самий синтаксис, що виділяє темний за замовчуванням. Оскільки він зараз знаходиться в папці розширення на моєму диску, після встановлення я можу його змінити, як і я хотів змінити темну тему за замовчуванням. Отже, моя проблема вирішена.
Toreno96

15

Найпростіший спосіб - це редагування налаштувань користувача та налаштування workbench.colorCustomizations

Редагування налаштувань кольорів

Якщо ви хочете зробити свою тему

Існує також можливість змінити поточну тему, яка скопіює поточні налаштування теми та дозволить зберегти її як *.color-theme.jsonфайл JSON5

Створити кольорову тему з поточних налаштувань


1
Хочете змінити порядок своєї відповіді, щоб найкраща та простіша відповідь була першою? =]
Попередній випуск

14

Будь-яку кольорову тему можна змінити в цьому розділі налаштувань VS Code версії 1.12 або новішої:

 // Overrides colors from the currently selected color theme.
  "workbench.colorCustomizations": {}

Див. Https://code.visualstudio.com/docs/getstarted/themes#_customize-a-color-theme

Доступні значення для редагування: https://code.visualstudio.com/docs/getstarted/theme-color-reference

EDIT: Щоб змінити кольори синтаксису, див. Тут: https://code.visualstudio.com/docs/extensions/themes-snippets-colorizers#_syntax-highlighting-colors і тут: https://www.sublimetext.com/docs/ 3 / scope_naming.html


Завдяки цьому ви можете замінити кольори самого редактора, але не кольори деяких ключових слів (наприклад: колір рядків).
Jhegs

6

Як зазначали інші, вам потрібно буде замінити параметр editor.tokenColorCustomizationsабо workbench.colorCustomizationsпараметр у файлі settings.json. Тут ви можете вибрати базову тему, наприклад, «Безодня», і замінити лише те, що ви хочете змінити. Ви можете дуже легко замінити дуже мало таких речей, як функція, кольори рядків тощо.

Наприклад, для workbench.colorCustomizations

"workbench.colorCustomizations": {
    "[Default Dark+]": {
        "editor.background": "#130e293f",
    }
}

Наприклад, для editor.tokenColorCustomizations:

"editor.tokenColorCustomizations": {
    "[Abyss]": {
        "functions": "#FF0000",
        "strings": "#FF0000"
    }
}
// Don't do this, looks horrible.

Однак для глибоких налаштувань, таких як зміна кольору varключового слова, потрібно буде вказати значення заміщення під textMateRulesключем.

Наприклад, нижче:

"editor.tokenColorCustomizations": {
    "[Abyss]": {
        "textMateRules": [
            {
                "scope": "keyword.operator",
                "settings": {
                    "foreground": "#FFFFFF"
                }
            },
            {
                "scope": "keyword.var",
                "settings": {
                    "foreground": "#2871bb",
                    "fontStyle": "bold"
                }
            }
        ]
    }
}

Ви також можете замінити глобально різні теми:

"editor.tokenColorCustomizations": {
    "textMateRules": [
        {
            "scope": [
                //following will be in italics (=Pacifico)
                "comment",
                "entity.name.type.class", //class names
                "keyword", //import, export, return…
                //"support.class.builtin.js", //String, Number, Boolean…, this, super
                "storage.modifier", //static keyword
                "storage.type.class.js", //class keyword
                "storage.type.function.js", // function keyword
                "storage.type.js", // Variable declarations
                "keyword.control.import.js", // Imports
                "keyword.control.from.js", // From-Keyword
                //"entity.name.type.js", // new … Expression
                "keyword.control.flow.js", // await
                "keyword.control.conditional.js", // if
                "keyword.control.loop.js", // for
                "keyword.operator.new.js", // new
            ],
            "settings": {
                "fontStyle": "italic"
            }
        }
    ]
}

Детальніше тут: https://code.visualstudio.com/api/language-extensions/syntax-highlight-guide


5

Рішення для ОС MAC

Я не впевнений, що ця відповідь тут підходить, але я хотів би поділитися рішенням для користувачів MAC, і це виглядає незручно, якщо я почну нове питання і відповім там.


шукайте шлях до теми VSCode приблизно так, як показано нижче:

..your_install_location / Visual Studio Code.app/Contents/Resources/app/extensions/theme-name/themes/theme_file.json

відкрийте файл .json і знайдіть цільові стилі, які потрібно змінити.
Для мого випадку я хочу змінити колір візуалізації пробілів,
і я знайшов це
"editorWhitespace.foreground"
так, як зазначено settings.jsonв Visual Studio Code,
я додав наступні рядки (я це роблю в налаштуваннях робочої області),

"workbench.colorCustomizations": {
    "editorWhitespace.foreground": "#93A1A130" // stand as #RRGGBBAA
}

Рішення, керовані з: https://code.visualstudio.com/docs/getstarted/themes#_customize-a-color-theme


Не забудьте ⌘ Command+ Sзберегти налаштування, щоб набути чинності.


2

У Docs тепер є цілий розділ про це.

По суті, використовуйте npmдля встановлення yoта запустіть команду, yo codeі ви отримаєте невеликий майстер на основі тексту - одним із варіантів буде створення та редагування копії темної схеми за замовчуванням.


1

Я прийшов сюди, щоб знайти спосіб редагування теми, але не зміг знайти його на своєму Mac. Після глибокого занурення, нарешті, я знайшов місце встановлення:

~/.vscode/extensions

Всі розширення там!


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