Одной из особенностей стабильной сборки 3170 (и многих сборок Dev в этой серии) является поддержка invisibles
в цветовой схеме tmTheme
, а также в новом формате sublime-color-scheme
. Это то, что существовало в tmTheme
до этого, но Sublime не использовал значение в этом ключе цветовой схемы и вместо этого использовал другой цвет.
На данный момент неясно, какой именно цвет был изначально использован, но, возможно, это был цвет переднего плана с альфа-значением, применяемым для его «затемнения», поэтому для поиска правильного цвета может потребоваться некоторое количество экспериментов.
Побочным эффектом этого изменения является то, что для некоторых цветовых схем у автора цветовой схемы могло быть значение в ключе invisibles
, которое ранее не учитывалось, но теперь имеет значение, из-за которого все отображается неправильно. Или правильно, в зависимости от того, как вы на это смотрите.
Вы упомянули в комментариях выше, что вы используете Neon Color Scheme , и в этой схеме значение invisibles
установлено на #06FF05
, который действительно является зеленым цветом.
Чтобы решить вашу проблему, вам нужно отредактировать цветовую схему, чтобы применить другой цвет к этой части цветовой схемы, чтобы получить нужный серый цвет.
Самый простой способ сделать это - воспользоваться добавлением типа ресурса sublime-color-scheme
в Sublime Text. Многие типы ресурсов в Sublime объединяются во время загрузки, чтобы можно было создать partial override
.
Оказывается, что в случае этого конкретного формата файлов sublime-color-scheme
складывается с tmTheme
файлами с одинаковым базовым именем, поскольку они представляются в памяти одинаково после загрузки.
В результате этого вы можете настроить цвет invisibles
, создав файл с именем Neon.sublime-color-scheme
в пакете User
со следующим содержимым:
{
"globals":
{
"invisibles": "#FF00FF"
}
}
Neon.sublime-color-scheme
стекается с Neon.tmTheme
из пакета, и, поскольку содержимое пакета User
всегда загружается последним, это переопределяет только цвет invisibles
(в данном случае пурпурный), но оставляет остальную часть цветовая гамма нетронутая.
Это, конечно, относится к любой цветовой схеме, если вы знаете имя файла tmTheme
, который вы используете. Тот же механизм можно использовать для расширения вашей темы, чтобы включить цвета для новых областей или изменить цвета существующих областей, не создавая заново весь новый файл tmTheme
или sublime-color-scheme
. См. документацию цветовой схемы для получения дополнительной информации.
При этом создается partial override
, что означает, что независимо от содержимого базовой цветовой схемы ваши изменения вступят в силу без явного предупреждения. В этом случае это довольно скромно с точки зрения потенциальных проблем.
Другим способом достижения этой цели является внесение изменений в файл tmTheme
путем создания override
. Это немного сложнее, чем выше, но потенциально все еще полезно. Например, это можно использовать для любого ресурса пакета любого типа, чтобы изменить вещи по своему вкусу.
Чтобы создать такой override
:
- Установить PackageResourceViewer , если он еще не установлен.
- Введите
prvo
в палитре команд и выберите PackageResourceViewer: Open Resource
- Выберите
Neon Color Scheme
, затем Neon.tmTheme
(или соответствующий пакет и файл, в зависимости от того, что вы делаете)
- Внесите необходимые изменения в файл и сохраните
Эта последовательность шагов открывает файл ресурсов базового пакета, который вы можете просмотреть и / или изменить. При сохранении файла создается override
путем создания папки в папке Packages
с именем для пакета и помещения измененного файла внутрь. Когда Sublime загружает ресурсы пакета, версия, распакованная в папке Packages
, имеет приоритет над версией в пакете.
В случае файла цветовой схемы tmTheme
, в верхней части вы увидите клавишу settings
, а внутри нее этот набор тегов устанавливает цвет, используемый для невидимых, который вы можете изменять по мере необходимости. считаю нужным.
<key>invisibles</key>
<string>#06FF05</string>
Как и в случае любого override
, после того, как вы сделаете это, ваша версия цветовой схемы (или любой другой ресурс пакета) заменит версию, поставляемую с пакетом, что означает, что если пакет будет обновлен, ваша версия файл по-прежнему будет использоваться без каких-либо предупреждений или сообщений, чтобы сообщить вам, что это происходит.
Это, вероятно, не имеет большого значения для цветовой схемы; пакет OverrideAudit предупредит вас, если это произойдет, если вы беспокоитесь. Кроме того, вы можете внести изменения, как указано выше, но сделать Save As
вместо Save
и сохранить файл в вашем пакете User
, а затем изменить настройку цветовой схемы, чтобы вместо нее использовать эту версию цветовой схемы.
Если вы сделаете это и используете одно и то же имя файла, схема будет дважды отображаться в селекторе цветовых схем; убедитесь, что вы выбрали версию, в которой указано, что она находится в пакете User
, чтобы убедиться, что вы используете измененную версию.