The Windows simple console application for control up the indicators of all keyboards, connected to system. You can making any interested illuminations with many keyboards through the «glazeur-script» - simple language for LEDs control, using the «Glazeurist» - useful web-editor.
Простая консольная программа управления индикаторами на нескольких клавиатурах, доступных в системе Windows. Вы можете создавать любые интересные иллюминации на всех своих клавиатурах, используя «глазурь-скрипт» - простой язык управления индикацией клавиатур, для редактирования и отладки которого был разработан также специальный онлайн-редактор - «Глазурист».
Download the project and start the Glazeur.exe for test. (VirusTotal) Type ":" (colon) to start active session script; Type "." (comma) to leave active session; Press ESC-key in any moment to break. Or copy-paste the our scenario from Glazeurist to command line window.
Скачайте проект и запустите Glazeur.exe для теста. (VirusTotal) Введите ":" (двоеточие) для исполнения скрипта активной сессии; Введите "." (точку) для завершения текущей сессии; Жмите ESC в любой момент для прерывания сценария. Или вставьте собственный сценарий из Глазуриста в окно консоли программы.
The «glazeur-scenarios» short syntax descriptions
Signature | Common description for signature action | Variant using sample | Using restriction¹ |
---|---|---|---|
§i | Select active paragraph with effects | §0…§9 | Scenario |
n§ | Select effects row in active paragraph | 0§…99§ | Scenario/Paragraph |
n§i | Select active paragraph with row | 99§0…45§6…0§9 | Scenario |
n㎳ | Set up the basic delay interval | 1㎳…1000㎳ | Scenario |
0㎳ | Reset the delay coefficients | 0㎳ | Scenario/Paragraph |
n⁄d㎳ | Define the delay coefficient | 2⅛㎳…3⅘⅞㎳ | Scenario/Paragraph |
n⁄d⏱ | Waiting for coefficient interval | ⏱…1⏱…2⅛⏱…3⅘⅞⏱ | Scenario/Paragraph |
n⤴ | Go to row over in active paragraph | ⤴…1⤴…99⤴ | Scenario/Paragraph |
n⤵ | Go to next row in active paragraph | ⤵…1⤵…99⤵ | Scenario/Paragraph |
➰ | «Play» for active paragraph row | ➰ | Scenario |
n(…) | Set looping for n-times | 1(➰)…99(➰⤵) | Scenario/Paragraph |
n♻ | Set row-looping for n-times | 1♻…99♻ | Сценарий/Параграф |
§(…) | Particulary run in active paragraph | §(0⏱⅘⏱⤵) | Scenario |
⠿ | Immediate draw over the keyboards indicators | 5(⠪⠝⏱⠿⠽⏱) | Scenario/Paragraph |
∧/⊕/∨ | Logical operation prefix for indicators | 10(⊕⠪⠝⠽⏱∧⠽⠝⠪⏱) | Сценарий/Параграф |
▲/▶/▼/◀ | Scroll the indication buffer in signed dirrection | 9(◀⏱) | Scenario/Paragraph |
⒑ | Definition of local label | ⒈…⒛ | Scenario/Paragraph |
Ⓞ | Define the «interactive label»² in scenario | ①…⑳ / Ⓐ…Ⓩ | Scenario |
i⃣ | Define the «interactive label»² in scenario | 0⃣ …9⃣ | Scenario |
i⌨ | Select for basic (left-side) keyboard³ | 1⌨…9⌨ | Scenario/Paragraph |
n⌨ | Set up the logic order for keyboards³ | 12⌨…987654321⌨ | Scenario |
n㎐ | Set up the indicators refresh frequency⁴ | 1㎐…1000㎐ | Scenario/Paragraph |
n⁄d(…) | Set «fractional»⁵ looping | 1¾(…;…;…;…) | Scenario/Paragraph |
⇡/⇣ | The bright modulation⁶ control of indicators | 10(⇣⠿⠿⠿⏱⇡⠿⠿⠿⏱) | Scenario/Paragraph |
ⁿ | Using of iteration argument⁷ of parent row cycle | Line #⁰ Lap #¹ | Debugging string |
ᵢ | Using of iteration argument⁷ of current row cycle | Line #₀ Lap #₁ | Debugging string |
§ | Using of active paragraph index⁷ | Effect#§ Line #₀ | Debugging string |
⎚/⎙ | Clear/Print⁷ the formated logging string | 10(⎙⏱⎚⏱) | Scenario/Paragraph |
⣀ | Patterned⁸ draw over the keyboards indicators | 7(⣀◀⏱) | Scenario/Paragraph |
¹- the action can have a differences inside or outside the paragraphs
²- the linear parsing can be controlled by numbers key of keyboard
³- ignoring by online web-simulation, but strongly required in console utility
⁴- ignoring by online web-simulation, but controling for indication fidelity
⁵- the cycle inside operations separated by «;» for ignoring by numerator range
⁶- not all keyboards devices supports for Pulse-Width Modulation then can show noise
⁷- any previous line remark or commentary using as output format
⁸- as pattern using any previous signed remark
Краткое описание синтаксиса «глазурь-сценариев»
Сигнатура | Краткое описание назначения и действия | Пример использования | Область действия¹ |
---|---|---|---|
§i | Активизация параграфа эффектов | §0…§9 | Сценарий |
n§ | Выбор строки активного параграфа | 0§…99§ | Сценарий/Параграф |
n§i | Выбор строки с активизацией параграфа | 99§0…45§6…0§9 | Сценарий |
n㎳ | Установка базового интервала задержки сценария | 1㎳…1000㎳ | Сценарий |
0㎳ | Сброс коэффициентов интервала задержки | 0㎳ | Сценарий/Параграф |
n⁄d㎳ | Задание коэффициентов интервала задержки | 2⅛㎳…3⅘⅞㎳ | Сценарий/Параграф |
n⁄d⏱ | Организация паузы в «проигрывании» | ⏱…1⏱…2⅛⏱…3⅘⅞⏱ | Сценарий/Параграф |
n⤴ | Переход строками выше в активном параграфе | ⤴…1⤴…99⤴ | Сценарий/Параграф |
n⤵ | Переход строками ниже в активном параграфе | ⤵…1⤵…99⤵ | Сценарий/Параграф |
➰ | Запуск «проигрывания» эффекта активной строки параграфа | ➰ | Сценарий |
n(…) | Организация зацикливания n-раз | 1(➰)…99(➰⤵) | Сценарий/Параграф |
n♻ | Организация зацикливания строки n-раз | 1♻…99♻ | Сценарий/Параграф |
§(…) | Управление выбранным параграфом | §(0⏱⅘⏱⤵) | Сценарий |
⠿ | Непосредственное управление индикаторами клавиатур | 5(⠪⠝⏱⠿⠽⏱) | Сценарий/Параграф |
∧/⊕/∨ | Префикс управления логической операцией к индикаторам | 10(⊕⠪⠝⠽⏱∧⠽⠝⠪⏱) | Сценарий/Параграф |
▲/▶/▼/◀ | Скроллинг буфера индикации в соответствующем направлении | 9(◀⏱) | Сценарий/Параграф |
⒑ | Определение локальной метки | ⒈…⒛ | Сценарий/Параграф |
Ⓞ | Определение «интерактивной метки»² сценария | ①…⑳ / Ⓐ…Ⓩ | Сценарий |
i⃣ | Определение «интерактивной метки»² сценария | 0⃣ …9⃣ | Сценарий |
i⌨ | Выборка базовой (первой слева) клавиатуры³ | 1⌨…9⌨ | Сценарий/Параграф |
n⌨ | Задание логического порядка клавиатур³ | 12⌨…987654321⌨ | Сценарий |
n㎐ | Задание частоты обновления индикаторов⁴ | 1㎐…1000㎐ | Сценарий/Параграф |
n⁄d(…) | Организация «дробного»⁵ зацикливания | 1¾(…;…;…;…) | Сценарий/Параграф |
⇡/⇣ | Управление яркостью⁶ активных индикаторов | 10(⇣⠿⠿⠿⏱⇡⠿⠿⠿⏱) | Сценарий/Параграф |
ⁿ | Доступ к аргументу⁷ итерации вызываемого цикла | Line #⁰ Lap #¹ | Строка отладки |
ᵢ | Доступ к аргументу⁷ итерации текущей строки параграфа | Line #₀ Lap #₁ | Строка отладки |
§ | Доступ к индексу⁷ активного параграфа | Effect#§ Line #₀ | Строка отладки |
⎚/⎙ | Очистка/Печать⁷ строки форматированной отладки | 10(⎙⏱⎚⏱) | Сценарий/Параграф |
⣀ | Шаблонное⁸ управление индикаторами клавиатур | 7(⣀◀⏱) | Сценарий/Параграф |
¹- действие эффекта может несколько отличаться в параграфе и за его пределами
²- клавишами цифровой части клавиатуры можно в реальном времени переключать «программу»
³- игнорируется графической симуляцией, но имеет существенную необходимость для физических клавиатур
⁴- игнорируется графической симуляцией, но управляет качеством индикации на физических клавиатурах
⁵- операторы цикла разделяются символом «;» и заключающей итерацией игнорируются выпадающие за индекс числителя
⁶- не все модели клавиатур поддерживают ШИМ-алгоритм и могут иметь непредсказуемое моргание
⁷- аргументы используются любой ремаркой, которая предшествует оператору печати отладочной информации
⁸- за шаблон принимается любая соответствующая ремарка
Scenario v0.01α - (0:01:40)
Try web-preview in Glazeurist
Paragraphes declaration started at here 1⃣ ㎳⅐㎳⤵⇥Clockwise curve rotation LOG:Paragraph#§ Row#₀ - Call from line#⁰ ²(¹(...)) ⇥ ⎙⠑⠄⏱⠘⠄⏱⠈⠆⏱⠀⠇⏱⠠⠃⏱⠰⠁⏱⤵⇥ Goto down ⇥ ⎙⠔⠁⏱⠔⠂⏱⠤⠂⏱⠤⠄⏱⠢⠄⏱⠒⠄⏱⤵⇥ Goto down ⇥ ⎙⠑⠄⏱⠱⠀⏱⠣⠀⏱⠇⠀⏱⠎⠀⏱⠜⠀⏱⤵⇥ Goto down ⇥ ⎙⠔⠁⏱⠒⠁⏱⠊⠁⏱⠉⠁⏱⠉⠂⏱⠑⠂⏱1§⇥ Goto up to row #1 2⃣ ㎳⅒㎳⤵⇥Bidirectional line rotation LOG:Paragraph#§ Row#₀ - Call from line#⁰ ²(¹(...)) ⇥ ⎙⠔⠁⏱⠒⠂⏱⠑⠄⏱⠸⠀⏱⇥ Clockwise cycle ⇥ ⎙⠑⠄⏱⠒⠂⏱⠔⠁⏱⠸⠀⏱⇥ Anticlockwise cycle Here is beginning the main body of scenario Set keyboards order to 4251 and select #4 as first/left ⇥ 1524⌨1⌨ Set 1000ms of delay and use 500Hz of refresh ⇥ 1000㎳500㎐ Countdown to start ₁ ⇥ 3(⎙⏱⎚⏱) Use paragraph #2 and initialize to 1/12 of 1000ms delay Loop for 5 times «clockwise/anticlockwise» turns with ping-pong ⇥ 6(⎙¾⏱⎚¼⏱) ⇥ §2 §(㎳⅓¼㎳⤵) 4½(1§ 7(➰⇡⌨);2§ 7(⇣⌨➰)) Use paragraph #2 and initialize to 1/25 of 1000ms delay Loop for 5 times «clockwise/anticlockwise» speedy ping-pong runs ⇥ 6(⎙¾⏱⎚¼⏱) ⇥ §2 §(㎳⅕⅕㎳⤵) 5½(1§ 7(➰⇡⌨);2§ 7(⇣⌨➰)) Loop for 5 times of «curved rotations» ⇥ 6(⎙¾⏱⎚¼⏱) ⇥ §1 5(4(➰)) Thank You for watch! :) ⇥ ⅛㎳10(⢇⇡⌨⏱) ⇥ ⅛㎳10(⎙5(⇣⠳⇡⌨⏱)⎚5(⇣⠞⇡⌨⏱)) Halt this demo ⣀⢇⢂⢇⢀⢇⢄⢁⢇⢁ ⇥ 9⌨9(◀⎚¼⏱⎙⣀⏱) ⇥ ⎙5(9(⇡⠿⠿⠿⠿⠇⏱)9(⇣⠿⠿⠿⠿⠇⏱))