Печатаем морзянкой, хлопая ноутбуком - нестандартный open-source эксперимент

28 Apr, 2020

Репозиторий давно не обновлялся

Последнее обновление было 6 лет назад.

2,429
🔱 25
👥 7

Демонстрация работы open-and-shut

Когда скучно на работе

Знакомо чувство, когда хочется сделать что-то необычное с компьютером, просто чтобы развлечься? Разработчик veggiedefender предложил оригинальное решение - превратить обычное закрытие крышки ноутбука в инструмент для ввода текста азбукой Морзе.

Проект с говорящим названием open-and-shut собрал на GitHub уже более 2300 звёзд - видимо, идея пришлась по душе многим любителям технического юмора и нестандартных интерфейсов.

Как это работает?

Суть проста до гениальности:

  1. Каждый раз, когда вы закрываете крышку ноутбука, система интерпретирует это как точку в азбуке Морзе
  2. Открытие крышки - это пауза между символами
  3. Комбинации открытий-закрытий преобразуются в буквы

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

Реклама

Ключевые особенности:

  • Проверенная временем кодировка - та самая, что используют пилоты, подводники и радиолюбители
  • Невероятная скорость - разработчик скромно замечает: «100+ слов в ~~минуту~~ час»
  • Необычный подход к параллелизму - используются сигналы SIGTERM вместо семафоров
  • Полезный сайд-эффект - теперь закрытие крышки печатает букву E вместо блокировки системы

Техническая сторона

Под капотом проекта лежит несколько bash-скриптов, работающих с:

  • acpid (демон событий ACPI)
  • xdotool (эмуляция ввода с клавиатуры)

Особенно забавен подход к обработке событий - скрипт отслеживает открытие/закрытие крышки и преобразует эти действия в последовательности точек и тире.

Как установить

  1. Клонируем репозиторий:
git clone git@github.com:veggiedefender/open-and-shut.git
  1. Копируем скрипты в /etc/acpi:
sudo cp morse_code_close.sh morse_code_open.sh morse_code_acpi.sh /etc/acpi/
  1. Настраиваем acpid, создав файл /etc/acpi/events/lm_lid с содержимым:
event=button/lid.*
action=/etc/acpi/morse_code_acpi.sh
  1. Отключаем блокировку экрана при закрытии крышки (иначе наш морзянный план не сработает).

Кому это может быть полезно?

Хотя проект создан скорее как шутка, у него есть несколько практических применений:

  1. Необычный способ тренировки памяти - попробуйте написать письмо, используя только азбуку Морзе
  2. Спортивный интерес - кто быстрее наберёт "SOS"?
  3. Оригинальный эксперимент для демонстрации возможностей ACPI и обработки системных событий
  4. Развлечение для коллег - представьте их реакцию, когда ваш ноутбук начнёт "моргать" сообщениями

Вывод: стоит ли пробовать?

Open-and-shut - это тот редкий случай, когда технологический эксперимент сочетает в себе:

  • простоту идеи
  • техническую изящность реализации
  • очевидное веселье от использования

Если вы:

  • любите нестандартные технические эксперименты
  • хотите понять, как работают системные события в Linux
  • ищете повод удивить коллег

...то этот проект определённо стоит попробовать. Только не удивляйтесь странным взглядам, когда начнёте яростно хлопать крышкой ноутбука, "набирая" сообщение!

P.S. Автор предупреждает: после установки вы можете непроизвольно начать общаться морзянкой даже без ноутбука. ... --- ... (это SOS, если что).

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.