Tensionix ENDERU
GitHub28 repositoriesDaily Tech3 subscribersaudion.devthe product shelfRSSrelease feed
← All notesProjects

Язык и тема GUI

Текущий стандарт

  • Внутренняя тема по умолчанию: Code Темная (code_dark).
  • Язык по умолчанию для рабочей сборки: ru.
  • config\gui_settings.yaml хранит language, theme, emoji и служебные флаги GUI.
  • config\ui_colors.yaml хранит палитры, CSS-токены, цветовые рампы и шрифты.
  • Для публичной GitHub-сборки можно поменять language: "ru" на language: "en".
  • Не используйте config\settings.yaml для GUI-слоя: это слишком общее имя для проектной конфигурации.
  • Не создавайте config\ui_settings.yaml: закреплён единый файл gui_settings.yaml.
  • Переключатели языка и темы делают полный reload, это нормально для portable GUI.

Русский layout

Русские подписи должны быть короткими и совпадать с реальными кнопками GUI:

  • ИСТОЧНИК и НАЗНАЧЕНИЕ для текущего маршрута обработки; input и output — внутренние управляемые папки проекта.
  • ДОБАВИТЬ ФАЙЛ... выбирает один внешний файл без копирования и временно делает его активным ИСТОЧНИКОМ.
  • СБРОСИТЬ всегда возвращает активные маршруты к input/output, удаляет только незакреплённые записи кэша и не трогает файлы.
  • УДАЛИТЬ относится к содержимому текущих маршрутов; нижняя кнопка подтверждает общее удаление, кнопка в строке адреса очищает только соответствующий маршрут.
  • Выбрать... для выбора папки в поле.
  • Добавить папку... только для копирования папки в input\.
  • ЗАПУСТИТЬ для кнопки запуска команды с параметрами.
  • Журнал и Отчёт для кнопок около терминала.
  • CONFIG оставляем как техническую папку проекта.
  • Пропорции, DPI, Под рулон вместо длинных подписей, когда смысл раскрывается tooltip-подсказкой.
  • Документ 40x30 и Документ 60x40 вместо сокращений Док..

Англицизмы переводим, когда есть нормальный русский аналог: встроенные растры, встроенный PNG, встроенный JPG, рендеринг, раскладка, метаданные, водяной знак, контактный лист, предпросмотр, журнал, отчёт, изменение разрешения, Защитное поле.

Для embedded в пользовательском RU-слое используем встроенный, а не внедрённый: встроенные растры, встроенный PNG, встроенный ICC-профиль. Слово embedded оставляем только для CLI-значений и config keys.

В пользовательских RU-подписях не использовать ресайз, если речь о DPI или сохранении геометрии. Для таких мест писать без изменения пикселей или изменение разрешения.

Поля параметров группируются в прямоугольные смысловые блоки через group в config\tool_manifest.yaml: source, output, parameters, format, options. Новые параметры должны попадать в один из таких блоков, а не висеть общей россыпью.

Новый GUI layout

  • ROOT-навигация слева содержит только основные модули.
  • Конвертация открывает рабочее окно сразу. Быстрые команды находятся внутри этого окна сверху по сетке.
  • Child-команды внутри модулей являются кнопками действий или переходов, а не заголовками пустых окон.
  • Если действие имеет параметры, его окно должно показываться по умолчанию после выбора действия; пользователь не должен дополнительно раскрывать заголовок.
  • Варианты из двух, трех или четырех режимов оформлять сегментированными переключателями.
  • Не оставлять пустые child-экраны с двумя-тремя кнопками. Варианты обработки должны жить внутри окна режима.
  • Кнопки-действия и ЗАПУСТИТЬ подсвечиваются слабым янтарным цветом, текст в них светло-серый.
  • Кнопки-переходы внутри child-окон остаются стандартным синим Quasar-стилем.
  • НАЗАД не получает tooltip.
  • Обслуживание остается отдельным блоком, а не обычной рабочей командой обработки.

Workbench I/O layout

  • В строке адреса порядок фиксирован: удаление содержимого, постоянный переключатель pin, сокращаемый путь, системный picker папки на крайнем правом месте.
  • Pin визуально отделён от кнопки удаления и всегда присутствует: активное состояние заметно, неактивное остаётся приглушённым.
  • Нижняя строка центрируется как компактная шестидольная композиция: [ИСТОЧНИК | ДОБАВИТЬ ФАЙЛ...], [НАЗНАЧЕНИЕ], [СБРОСИТЬ | УДАЛИТЬ], [СПИСОК]. Все шесть кнопок имеют одинаковую базовую ширину; поэтому парные блоки занимают две доли, одиночные — одну. Содержимое кнопок центрируется.
  • Длинный путь обрезается с узким edge-fade только у самого правого края; короткий путь не должен затухать.
  • Блик изменения пути длится 975 ms; удаление содержимого получает отдельный короткий красный блик. Для prefers-reduced-motion анимации отключаются.

Tooltip-подсказки

Tooltip-подсказки заменяют длинные описания в интерфейсе. Ими снабжаются заголовки блоков, кнопки, чекбоксы, radio, segmented toggle и другие переключатели.

Стандартный фон tooltip: RGB(23, 33, 43). При добавлении новых элементов проверять крайние левые и правые кнопки: подсказка не должна обрезаться краем окна.

Исключения: форматы, аббревиатуры, CLI-флаги/значения, config keys, бренды и реальные папки/файлы: JPG, PNG, TIFF, PDF, DPI, ICC, CMYK, sRGB, input\, output\, logs\, report\, workspace\, --mode embedded, png_embedded, jpg75_embedded.

Проверка после правок

После изменения темы, высоты шапки или длинных RU-подписей проверить:

  • заголовок, селектор темы и переключатель языка визуально центрированы;
  • текст кнопок не обрезается на FullHD;
  • поля ИСТОЧНИК и НАЗНАЧЕНИЕ не распирают левую колонку;
  • журнал остаётся доступным и читаемым;
  • светлая и темная темы читаемы.
Edited 08.28.2026