styles.yml
Конфигурация UI-стилей: ASCII header, семантическая цветовая палитра и разделитель.
Содержание
Заголовок раздела «Содержание»- Назначение
- Структура
- Справочник полей
- Опуская файл
- Разрешение light / dark
- Кастомизация цветов
- Распространённые подводные камни
- Связанные команды
Назначение
Заголовок раздела «Назначение»workspace/styles.yml управляет визуальным видом CLI dwe: брендированным
header’ом, показываемым на старте, семью семантическими цветовыми токенами,
используемыми во всех UI-surface’ах (таблицы, status-секции, браузер команд,
help-вывод Fang), и символом-разделителем, используемым в definition-списках.
CLI загружает его и применяет вашу палитру при старте. При полном отсутствии файла используются встроенные дефолты с тем же результатом.
Структура
Заголовок раздела «Структура»header: lines: - "Welcome to" - "DWE Laravel" font: doom tagline: "Local dev, container-orchestrated."
colors: accent: "#2EC3EB" success: "#22C55E" warning: "#F59E0B" danger: "#EF4444" muted: "#9AA3BB" border: "#334155" text: ""
separator: "·"Справочник полей
Заголовок раздела «Справочник полей»Управляет брендированным header’ом, отображаемым dwe (без аргументов) и
dwe info. Brand-идентичная строка ({▪} DWE · <project> · <version>)
всегда рендерится; опциональный tagline и ASCII-арт накладываются поверх, если
заданы.
| Поле | Тип | Дефолт | Описание |
|---|---|---|---|
header.lines | list of strings | (нет) | Текстовые строки, рендерящиеся как ASCII-арт под brand-строкой |
header.font | string | standard | Имя FIGlet-шрифта (doom, banner, big, block, slant, …) |
header.tagline | string | (нет) | Одна строка-tagline, рендерящаяся в muted-цвете ниже brand-строки |
ASCII-блок раскрашен токеном accent. Отдельного header.color нет — цвет
всегда берётся из семантической палитры.
Семь семантических цветовых токенов. Значения — сырые hex-строки (например,
"#2EC3EB"). Пустые / отсутствующие записи откатываются на встроенный light-
или dark-дефолт для данного токена (см. Разрешение light / dark).
| Токен | Используется для |
|---|---|
accent | Брендированные surface’ы — brand-строка, ASCII-header, заголовки секций, focused-бордюры, заголовки таблиц, совпадения фильтра, активная пагинация, внутренний квадрат лого {▪} |
success | Состояния OK / running / enabled; success-уведомления; индикатор [--yes ON] |
warning | Warning-диагностики; partial / degraded состояния |
danger | Error-диагностики; failed-уведомления |
muted | Вторичный текст — счётчики, разделители, dimmed строки списков, tree-глифы, неактивная пагинация, описания команд/флагов; а также иконка остановленного стека ○ в dwe prompt |
border | Дефолтные (unfocused) бордюры панелей и таблиц |
text | Дефолтный body-текст. Пустое значение означает «пусть терминал сам выбирает foreground-цвет» — рекомендуется почти во всех случаях |
Эти же семь токенов управляют рендером --help у Fang: title / command / flag /
program используют accent, description / argument используют muted.
separator
Заголовок раздела «separator»separator: "·"Символ, используемый между label и value в definition-элементах (например,
Project · laravel).
Опуская файл
Заголовок раздела «Опуская файл»Если workspace/styles.yml не существует, CLI откатывается на встроенные
дефолты. Он работает идентично — ошибка не выдаётся.
Разрешение light / dark
Заголовок раздела «Разрешение light / dark»У каждого токена есть встроенный light- и dark-hex-дефолт. На старте CLI
один раз определяет, тёмный ли фон у терминала, и разрешает каждый токен в
единственную hex-строку на весь остаток процесса. Одна и та же разрешённая
палитра используется на всех поверхностях, которые рендерит CLI: таблицах,
status-секциях, браузере команд и --help-выводе Fang.
| Токен | Light-дефолт | Dark-дефолт |
|---|---|---|
accent | #0EA5E9 | #2EC3EB |
success | #16A34A | #22C55E |
warning | #D97706 | #F59E0B |
danger | #DC2626 | #EF4444 |
muted | #64748B | #9AA3BB |
border | #CBD5E1 | #334155 |
text | (пусто — дефолт терминала) | (пусто — дефолт терминала) |
Непустое значение, заданное пользователем, переопределяет оба режима — переопределения
не зависят от режима. Отредактировать workspace/styles.yml и перезапустить команду
dwe — поддерживаемый способ ретеминга во время сессии.
Кастомизация цветов
Заголовок раздела «Кастомизация цветов»Переопределите любое подмножество токенов; не заданные токены сохраняют свои light/dark-дефолты.
colors: accent: "#A78BFA" # фиолетовый бренд success: "#10B981" # зелёный с уклоном в teal muted: "#94A3B8"Для монохромного вида установите accent и success в одно семейство оттенков
и пусть muted/border обеспечивают контраст.
Распространённые подводные камни
Заголовок раздела «Распространённые подводные камни»- Использование кодов ANSI 256 вместо hex — схема ожидает hex-строки
(
"#2EC3EB"). Голые числовые коды невалидны. - Забыли кавычки на hex-значениях — YAML обычно терпит
#2EC3EBбез кавычек (после ключа это не комментарий), но кавычки — более безопасная привычка. - Переопределения по режиму — нет sub-ключа
light:/dark:. Пользовательское переопределение применяется в обоих режимах; выбирайте hex, который хорошо читается на обоих фонах, или полагайтесь на встроенные дефолты. - Старые ключи молча игнорируются в рантайме — загрузчик мягкий.
Используйте
dwe validate, чтобы поймать устаревшие ключи до того, как они станут невидимыми no-op’ами.
Связанные команды
Заголовок раздела «Связанные команды»dwe(без аргументов) — показывает brand-header + компактную сводкуdwe info— показывает полный info-дашборд со стилизованным выводомdwe validate— выводит предупреждения о переименовании для устаревших ключей палитры