Как изменить цвет шрифта? - PullRequest
0 голосов
/ 03 мая 2019

Как изменить цвет метки определенного типа синтаксиса?

Я знаю, что существует файл цветовой схемы, но какая строка этого файла связана с цветами определенной метки (например, класса или функции).

Например, в Sublime Text 3 есть фрагмент кода:

Sample Code

Я не хочу видеть метку 'Node' (то есть метку класса) желтой, но хочу видеть ее синей. Как я могу это сделать?

1 Ответ

0 голосов
/ 03 мая 2019

Для этого вам нужно внести изменения в цветовую схему, которую вы используете, чтобы сказать ей, чтобы раскрасить вещи в другом формате.В частности, вам нужно знать две вещи:

  1. Цветовая схема, которую вы используете в настоящее время.

  2. scope извещь, цвет которой вы хотите изменить.

Чтобы определить цветовую схему, найдите в настройках значение color_scheme.Здесь я собираюсь предположить, что это выглядит так:

    "color_scheme": "Mariana.sublime-color-scheme",

В зависимости от того, как вы настроили цветовую схему, у этого также может быть часть пути, например Packages/Color Scheme - Default/Mariana.sublime-color-scheme.Файл также может иметь расширение tmTheme вместо sublime-color-scheme, если вы используете устаревшую цветовую схему.

Чтобы определить scope, который вам нужно изменить, наведите курсор на предмет, цвет которого вы хотите изменить, и используйте Tools > Developer > Show Scope Name (или нажмите клавишу, о которой вам говорит меню), затем запишитео чем говорит последняя строка всплывающего окна.В этом случае мы предполагаем, что это:

entity.name.class.c++

Ваша цветовая схема содержит правило, которое говорит, что вещи с областью действия, соответствующей этому, должны отображаться тем же цветом, что и они, поэтому вам нужночтобы настроить этот цвет так, как вам нужно.

Для этого вы создаете файл в пакете User, который можно найти с помощью Preferences > Browse Packages....Файл, который вы создаете, должен быть именем используемой вами цветовой схемы (только имя файла, а не путь, если он есть) с расширением sublime-color-scheme (даже если расширение вашей цветовой схемы tmTheme.

В нашем примере это означает, что мы создадим файл с именем Mariana.sublime-color-scheme в пакете User.

Содержимое вашего файла должно выглядеть примерно так:

{
    // http://www.sublimetext.com/docs/3/color_schemes.html
    "rules": [
        {
            "scope": "entity.name.class",
            "foreground": "var(blue)",
        },
    ]
}

Это говорит Sublime, что для всего, чья область соответствует entity.name.class, он должен использовать цвет, выделенный переменной blue вместо того, что делает ваша обычная цветовая схема. Как только вы сохраните файл, вы увидитепоявляются результаты.

Мы используем entity.name.class здесь вместо entity.name.class.c++, чтобы scope соответствовал всему, что считается классом в любом файле. В основном, больше объема из # 2, который вы используете,чем ближе совпадение. Поэтому, если вы все это используете, это влияет только на C ++.

Последнее, что следует отметить, это то, что var(blue) будет работать, только если ваша цветовая схема определяет переменную с именем blue,Цветовая схема Mariana делает, поэтому я использовал это здесь.Ваш не может, в этом случае вам нужно указать цвет другим способом.

Ссылка в приведенном выше примере указывает на документацию цветовой схемы с более подробной информацией, но вы можете использовать что-то вроде #0000FF на местеvar(blue), чтобы получить чистый синий (при необходимости отрегулируйте, чтобы синий был слишком темным).

...