Сравнение форматов тем Codex: codedrobe против codextheme против tmtheme против preset
Четыре формата скинов, четыре движка, одна экосистема. Какой формат наиболее переносим, какой устаревает и как конвертировать между ними при необходимости.
Мир скинов Codex ещё молод, а это означает, что форматы пока не устоялись. На данный момент циркулируют четыре формата, и не все они совместимы между собой. Понимание различий между ними поможет избежать скачивания файлов, которые ваш движок не сможет прочитать.
Четыре формата
| Формат | Семейство движков | Механизм загрузки | Портативность |
|---|---|---|---|
.codedrobe-theme | Галереи в стиле Codedrobe (codexskins.org) | Импорт файла | Средняя — его поддерживают лишь несколько движков |
.codextheme | Десктопные менеджеры (Codex Themes для десктопа) | Импорт файла | Средняя |
tmtheme | Портовые темы для CLI (bearded, темы синтаксиса для терминала) | CLI-команда /theme | Высокая — тот же формат, что и у тем редакторов |
preset | Движки на основе промптов (Dream Skin) | Описание естественным языком | Низкая — зависит от конкретного движка и его интерпретации фраз |
.codedrobe-theme — стандарт галерей
Используется галереями вроде codexskins.org для распространения готовых тем. Если вы видите надпись «Скачать .codedrobe-theme», именно этот формат вы и получаете. Поддерживается несколькими десктопными движками; импорт обычно выполняется одним кликом.
Подходит для: получения готовой, профессионально разработанной темы без необходимости ручной настройки.
Обратите внимание: формат не универсален — убедитесь, что ваш движок поддерживает именно это расширение.
.codextheme — формат десктопных менеджеров
Формат, используемый десктопными менеджерами тем (в частности, Codex Themes для десктопа). Структурно схож с .codedrobe-theme, на практике иногда взаимозаменяем, однако движки не всегда принимают оба формата.
Подходит для: пользователей десктопа, у которых установлен соответствующий менеджер.
Обратите внимание: возможна путаница в названиях — расширения .codedrobe-theme и .codextheme выглядят похоже, но их совместимость не гарантируется.
tmtheme — рабочая лошадка CLI
Формат тем для терминала, адаптированный для Codex CLI (наиболее наглядный пример — порты Bearded, представленные в этом индексе). Это тот же формат, что и у тем синтаксиса TextMate/редакторов, поэтому экосистема чрезвычайно обширна: любую палитру в формате tmtheme можно перенести в Codex CLI с помощью скрипта портирования.
Подходит для: пользователей CLI, которым нужен максимально широкий выбор палитр.
Обратите внимание: файлы tmtheme определяют цвета синтаксиса, но не всегда охватывают всю пользовательскую интерфейсную поверхность — для панелей и элементов оформления (chrome) может потребоваться дополнительная настройка.
preset — формат промптов
Это вообще не файл: это описание на естественном языке, которое интерпретирует движок на основе промптов, например Dream Skin. Фраза вроде «тёплая янтарная ночная тема с низким уровнем насыщенности» — это и есть preset. Такие описания хранятся в списке предустановок внутри самого движка.
Подходит для: быстрого тестирования и итеративной работы.
Обратите внимание: полное отсутствие портируемости. preset имеет смысл только внутри движка, который понимает именно такую формулировку.
Как конвертировать форматы друг в друга
tmtheme↔preset: прямое преобразование невозможно — один формат задаёт спецификацию, другой — описательный текст. Описание нужно переписать заново на основе палитры.tmtheme→.codextheme: часто выполнимо с помощью небольшого скрипта, поскольку оба формата представляют собой структурированные описания цветов. Многие порты для CLI изначально создавались именно таким способом..codedrobe-theme↔.codextheme: иногда взаимозаменяемы «из коробки»; если ваш движок поддерживает оба расширения, протестируйте оба варианта.
Общее правило: структурированные форматы (tmtheme, .codedrobe-theme, .codextheme) более совместимы, чем описательные (preset). Если вы создаёте библиотеку скинов, рассчитанную на долгосрочное использование, отдавайте предпочтение структурированным форматам.
Краткий FAQ
Какой формат считается «официальным» форматом Codex?
Пока официального формата нет. Экосистема выбирает его эмпирически: наибольший импульс получили порты CLI из семейства tmtheme, а наибольшее число пользователей — у промптов-предустановок.
Один из форматов в конечном итоге победит?
Скорее всего, структурированный — именно так сложились дела с темами редакторов. Однако промпты никуда не исчезнут: они решают задачу «быстро попробовать».
Какой формат стоит скачать для максимальной совместимости?
Темы, ориентированные на CLI и поставляемые как tmtheme/CLI-спецификации, например Monokai Stone или Solarized — они импортируются в самый широкий спектр инструментов. Также отличным выбором являются широко портированные темы Tokyo Night и Vivid Purple (CLI).
Как узнать, в каком формате представлена та или иная тема?
На каждой странице подробного описания скина в этом индексе указан формат установки — это главный ориентир. Сопоставьте его с возможностями вашего движка до скачивания.
Форматы — это трение, а не функция. Выбирайте структурированные форматы для своей постоянной библиотеки, а промпты — для экспериментов. А каждая страница скина подскажет вам, с каким именно форматом вы имеете дело. Просмотрите индекс скинов или сравнение движков для скинов Codex, чтобы узнать, какие программы поддерживают каждый формат.
Скины из этого поста
Monokai Stone (CLI) ~1,500 установок (оценка)
Solarized (CLI) ~1,340 установок (оценка)
Tokyo Night (ychampion) ~470 установок (оценка)
Vivid Purple (CLI) ~620 установок (оценка) Посмотреть все skins .