Visual Studio Skin

Теперь и я задумался о том, что подсветка синтаксиса не только должна быть, но и не должна утомлять глаза, а следовательно не быть рябой. Советовали Monokai, и какое-то время я её даже использовал, но всё же прислушался к мнению, что она больше напоминает новогоднюю ёлку =) Пришлось поискать новую тему, хотя, в процессе поиска, появилось желание прописать её самому.


Варианты тем для VS Code и для VS 2019

Прошерстив эти сайты, особенно интересными для VS Code показались следующие:

  • Framer Syntax 2 - разноцветные скобки, чтобы отследить вложенность.
  • Duotoned - минимализм и гармоничная гамма цветов.
  • Hy-Theme - очень спокойная тёмная тема.
  • Leafy - сейчас использую её.

Для VS 2019 интересными (в том числе для того, чтобы черпать идеи) мне показались следующие:

Кстати, разработчикам VS Code намекали, что неплохо бы иметь возможность конвертировать темы для VS 2019 (no plans).

Основные принципы формирования расцветки

Если я стану делать тему, то чего я буду придерживаться?

  • У цвета есть две составляющие: яркость и оттенок. Яркость желательно использовать для понятий одной категории, оттенок для разных. Как категории должны быть разделены, об этом стоит подумать заранее, чтобы схема получалась логичной.
  • Гаммы можно брать, пользуясь цветовым кругом с учётом требований по контрастности.
  • Скрипты (JS/TS/C#): самые первые определения (функций и переменных) должны быть ярче, чтобы их заголовки не сливались с телом.
  • Должна соблюдаться консистентность по цветам между разными листингами: комментарии, строки, ключевые слова скриптов должны соответствовать атрибутам разметки (if и v-if/ng-if).
  • Значения в CSS должны быть серой гаммы, иначе когда пишут жёлтым текстом значение color: blue, это вводит в когнитивный диссонанс. В CSS тоже есть переменные и значения переменных.
  • JSON: определения (слева) это, фактически, названия переменных, справа их строковые значения.
  • Присваивания, символы точки, запятой, двоеточий, как и скобки должны быть основного оттенка (например в серой гамме).
  • Комментарии основного оттенка, слабой яркости.
  • Лучше воздержаться от Italic
  • Глобальные, а также импортированные переменные должны отличаться оттенком от определённых в листинге.
  • JSON-определения и наименования переменных могут быть основного оттенка, чуть приглушёнными, светлее будут свойства объектов, а вот цвета методов самыми яркими, вплоть до яркости скобок, которая может совпадать с яркостью значений.
  • Тэги разметки должны быть более приглушёнными по яркости, чем атрибуты.
  • Ключевые слова иного назначения отличаются от других ключевых слов оттенком но не яркостью.
  • Ключевые слова приглушённой яркости, чтобы выделять в коде смысл, который разработчик определяет сам.
  • Числовые значения следует оставить основным цветом, а вот boolean можно и оттенком ключевых слов
  • Оттенок типа переменной должен отличаться от наименования переменной, но может совпадать с ключевыми словами.

Возможно текст будет дополняться...

Комментарии

Популярные сообщения из этого блога

23 марта: 87-88 или "Вишня Зимняя 2"

24 августа: Бессимптомный Белопесоцкий биообъект

20 июля: Чёрное Омутище