Initial commit

This commit is contained in:
2026-09-06 01:06:40 +08:00
commit 57c4e80f0d
69 changed files with 20940 additions and 0 deletions
+76
View File
@@ -0,0 +1,76 @@
# Пример конфига для команды apply.
#
# Применение: ./katana.py apply katana.yaml.example
# (файл примера менять не обязательно — скопируйте и правьте свою копию,
# хранить можно в любом месте)
#
# Секции применяются всегда в одном порядке — снизу вверх имеет смысл
# читать так: привязки → раскраска → режим → сырой payload → макросы:
#
# 1. remap — таблица переназначений (04 11)
# 2. paint — per-key раскраска + включение режима 0x80
# 3. lighting — финальный режим подсветки (mode/off/default)
# 4. raw — произвольный payload (для экспериментов)
# 5. macros — содержимое слотов макросов (04 19), ВСЕГДА последними
#
# КАК РАБОТАЕТ СОХРАНЕНИЕ (проверено на железе): каждая область прошивки
# (привязки, раскраска, режим, макросы) сохраняется во флеш только СВОИМ
# собственным save — чужой save чужую область ни сохраняет, ни затирает.
# Поэтому apply несёт save в каждой секции. Запись макросов сбивает
# привязки и режим В RAM — поэтому remap и lighting применяются повторно
# после секции macros. Все макросы пишутся одним блобом (каждый вызов
# macro set обнуляет прочие слоты).
#
# Любая секция необязательна. Значения — те же, что у соответствующих
# команд CLI: цвета «red»/«ff8800», имена клавиш и действий — как в
# docs/cli/remap.md и docs/cli/keys.md.
#
# ВАЖНО: и remap, и макросы перезаписывают ВСЮ таблицу/ВСЕ слоты —
# как у вендорской утилиты (см. docs/cli/remap.md, docs/cli/macro.md).
# --- переназначение клавиш (команда remap) ------------------------------------
remap:
keys:
caps: macro0 # Caps → макрос 0 (однократно)
menu: meta+e # Menu → горячая клавиша Win+E
rctrl: copy # RCtrl → копировать
esc: volup # Esc → громкость +
# clear: true # вместо keys: сбросить ВСЕ переназначения
# --- раскраска клавиш (команда paint) -----------------------------------------
paint:
all: black # база: вся клавиатура чёрная (или уберите — см. black/keep)
# black: true # старт от чёрной таблицы (если нет all)
# keep: true # старт от текущего живого кадра (клавиши вне keys не меняются)
wasd: dodgerblue # shorthand-алиасы те же, что у paint: wasd, numpad,
# numpad: red # alpha, punct, digits, arrows
# rows: # ряды 1..6
# 1: "202020"
keys:
esc: "ff0000" # Esc красным (внимание: Esc выше назначен громкости)
f5: green
brightness: 15 # яркость показа таблицы 1..15
# --- режим подсветки (команды mode / off / default) ----------------------------
lighting:
mode: static # имя или номер 1..19, а также off и default
color: red # RRGGBB или именованный CSS-цвет
brightness: 15 # 1..15
# speed: 5 # 2..15 (для статических режимов игнорируется)
# rainbow: true # статика: полный спектр вместо color
# direction: north-south # направление: north-south|south-north|east-west|west-east
# flag: null # переопределение байта flag (обычно не нужно)
# ВНИМАНИЕ: у breathing (режим 7) цвет игнорируется прошивкой — цикл зашит
# (см. docs/COLOR-MODES.md, сноска ¹). Для моноцвета берите static/fade.
# --- сырой payload (команда raw, для экспериментов) ----------------------------
# raw: "80 00 00 00 00 00 00 00 00 0f 00 00 00 00 aa 55"
# --- макросы (команда macro set) — ПОСЛЕДНЯЯ секция ----------------------------
# Ключ — номер слота 0..99. Внутри: tokens (список) или xml (файл).
# Токены: [+-]имя[@задержка_мс] — см. docs/cli/macro.md.
macros:
0:
tokens: ["+lctrl", "a@50", "-lctrl"] # Ctrl+A
1:
xml: raw-data/katana-v1/test.xml # импорт XML вендорской утилиты