Вход на сайт

Просмотр новости

Найдите то, что Вас интересует

Индикация смены раскладки клавиатуры в виде лампы с RGB-светодиодом для Gnome

Дата публикации: 13-02-2026 21:18:59

Этот cказ о том, как мне надоело приглядываться к раскладке клавиатуры, и я решил проблему попутно освоив нестолько фичей в программировании и не толькоЕсть одна маленькая, но изматывающая боль, знакомая почти каждому, кто много печатает. Ты смотришь на экран, пальцы уверенно бегут по клавиатуре, мысль сформулирована… и на выходе получается:

Основное содержимое страницы с новостью.

Предистория

Этот cказ о том, как мне надоело приглядываться к раскладке клавиатуры, и я решил проблему попутно освоив нестолько фичей в программировании и не только

Есть одна маленькая, но изматывающая боль, знакомая почти каждому, кто много печатает. Ты смотришь на экран, пальцы уверенно бегут по клавиатуре, мысль сформулирована… и на выходе получается:

ghbdtn
ytt gjyzk
plfybt yf rjywt

Проблема не в пальцах. Проблема в том, что где-то там, в углу экрана, мелким шрифтом притаилась надпись EN или RU, и каждый раз приходится:

  • Прищуриться

  • Найти индикатор

  • Осознать ошибку

  • Нажать SUPER_ПРОБЕЛ или Alt+Shift

  • Перепечатать

  • Вздохнуть

И так — десятки раз в день. В какой-то момент я понял: я не обязан так жить.

Идея

Я захотел простую вещь: не угадывать, какая раскладка включена не искать глазами мелкий индикатор не ломать поток мысли А просто сразу понимать, на каком языке я печатаю.

Решение

Сделать лампу, которая:

  • явно и наглядно показывает текущую раскладку

  • видна сразу, без фокусировки взгляда

  • не мешает работе

  • не требует каждый раз думать о ней

Теперь раскладка:

  • сообщает о себе сама

  • не требует внимания

  • не превращает набор текста в мини-квест

Результат
  • Больше нет ghbdtn вместо «привет»

  • Больше нет случайных заклинаний в коде

  • Больше нет лишних пауз и раздражения

SUPER_ПРОБЕЛ снова просто сочетание клавиш, а не лотерея

Пальцы печатают. Голова думает. Глаза отдыхают.

Зачем этот проект

Потому что:

  • это реально мешает работе

  • это проблема, которую все терпят

  • её можно решить один раз и забыть

Если ты когда-нибудь:

  • печатал абракадабру из-за раскладки

  • злился на себя за «опять не посмотрел»

  • ххотел, чтобы компьютер был чуть внимательнее к тебе

  • значит, ты - целевая аудитория.

Эпилог

«Обойдемся без эпилога, далее - подробное описание проекта со схемами и исходниками».

KeyLampОписание проекта

KeyLamp — это проект, который сочетает аппаратную и программную части для создания устройства, показывающего текущую раскладку клавиатуры с помощью RGB-светодиода. Система состоит из нескольких компонентов, которые работают совместно для обеспечения удобного отображения состояния клавиатуры в реальном времени.

Цель — предоставить удобный индикатор раскладки клавиатуры в виде лампы, управляемой через USB-соединение, которая изменяет цвет в зависимости от текущей раскладки (например, us для английской раскладки и ru для русской).

Как это выглядит:

KeyLanmpVideo

KeyLampVideo

Проект включает следующие компоненты:

  1. Python-сервис для отслеживания раскладки клавиатуры в Linux и управления подключенным устройством.

  2. Arduino-скетч для управления RGB-светодиодами, отображающими цвет текущей раскладки.

  3. GNOME-плагин для интеграции с GNOME Shell и обмена данными о раскладке через D-Bus.

  4. Изготовление корпуса (или аналогичная физическая часть), которая представляет собой корпус устройства, куда устанавливаются компоненты.


Архитектура1. Сборка электронной схемы и Arduino-скетч
  • Описание: Инструкция по сборке электронной схемы лампы и Скетч для Arduino, который управляет RGB-светодиодом, меняя цвет в зависимости от полученных через последовательный порт данных.

  • Основные задачи:

    • Получение данных о цвете от Python-сервиса через последовательный порт.

    • Управление RGB-светодиодами для отображения цвета.

Клонируй репозиторий и читай README.md

git clone https://github.com/lshnls/keylamp-arduino.git
2. GNOME Shell plugin
  • Описание: Расширение для GNOME Shell, которое отслеживает текущую раскладку клавиатуры и передаёт эти данные через D-Bus в другие приложения.

  • Задачи:

    • Слушает изменения раскладки клавиатуры.

    • Отправляет события через D-Bus, чтобы другие компоненты (например, Python-сервис) могли использовать эти данные.

Клонируй репозиторий и читай README.md

git clone https://github.com/lshnls/keylamp-gnome-plugin.git
3. Python-сервис
  • Описание: Python-скрипт, который отслеживает изменения раскладки клавиатуры через D-Bus и отправляет соответствующий код цвета в Arduino.

  • Задачи:

    • Подключение к D-Bus GNOME для отслеживания раскладки.

    • Отправка кодов цветов по USB через последовательный порт.

    • Поддержка нескольких раскладок и цветов.\

Клонируй репозиторий и читай README.md

git clone https://github.com/lshnls/keylamp-python-service.git
4. Сборка схемы и изготовление корпуса
  • Описание: Физический корпус, в который размещаются все компоненты (Arduino, светодиоды и другие элементы). Куб или аналогичная форма — это решение для компактного и эстетичного размещения устройства.

  • Задачи:

    • Создание схемы электронного устройства

    • Защита электронных компонентов.

    • Создание удобного и функционального вида устройства.

Используйте эпоксидную смолу для создания герметичного корпуса, который будет удобен для размещения компонентов.

Материалы:

  • Эпоксидная смола

  • Диффузиант

  • Силиконовая форма куба 7x7x7 см.

  • Защитные перчатки и маска при работе с химическими веществами

Советы:

  • Используйте эпоксидную смолу для больших объемов заливки (от 70 мм.)

  • Тщательно перемешивайте компоненты смолы и диффузиант, удалите пузыри с помощью технического фена.

  • USB кабель подключите перед заливкой, а его конец погрузите в смолу вместе с собранной ранее схемой arduino (неразъемное соединение будет надежнее).


Лицензия

MIT License — используй, дорабатывай, улучшай.

Схожие новости

#Наименование новостиТональностьИнформативностьДата публикации
1Linux диванного гитариста. Часть 2. Кемпер для бедных09.1311-05-2026
2Почему ваш монитор не умеет показывать бирюзовый (и ещё 65% цветов)08.823-03-2026
3Как я отучил оракула молоть околесицу про ГОСТы: сказ о doc-rag без единого (почти) заморского слова08.6507-06-2026
4Приложение на коленке! Почему Vial и QMK — шляпа?08.6906-02-2026
5Макрос-клавиатура которую я делал 5 лет016.9817-01-2026
6Я заменил Google на 50 строк Python. Через месяц я забыл, как пишется tar -xzf06.2220-02-2026
7Написал локальный рекордер созвонов для Linux за 3 дня и потом 2 недели менял имена и допиливал баги )011.0708-04-2026
8DIY мультирум: переключаем ТВ между комнатами с помощью Home Assistant08.4406-04-2026
9Гайд по безопасности вайб-кодинга: что сделать, чтобы не слить данные в прод07.5626-06-2026
10Как я автоматизировал управление информацией и оптимизировал рабочие процессы. История Sapiens OS07.712-04-2026

Классификация: . Схожих патентов: 0. Схожих новостей: 10. Тональность: 0. Информативность: 8.97. Источник: pythondigest.ru.