Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

✅ Дешевый VPS-хостинг на AMD EPYC: 1vCore, 3GB DDR4, 15GB NVMe всего за €3,50!

🔥 Anti-DDoS защита 12 Тбит/с!

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

Несколько мелких полезных программок.

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

Я не ставил себе задачу написать полноценные утилиты, поэтому программы очень простые и служат скорее примерами использования "хитрых" функций syscons, чем готовыми инструментами.

Программа scancode.c

Показывает скан-коды клавиш, именно в таком виде, в каком они указываются в таблице раскладки клавиатуры.

Ее надо "собрать" с библиотекой ncurses

	сс scancode.c -lncurses -o scancode

Если вы хотите, чтобы она показывала и "код отпускания" клавиши, уберите проверку if (c > 0) или объявите c как unsigned char.

Если вас интересуют "сырые" скан-коды, то замените K_CODE на K_RAW

Программа fkey.c

Просто "вычитывает" из syscons последовательности, генерируемые "функциональными" клавишами.

Никаких специальных библиотек не требует.

Программа reset_kbd.c

Это программка очень специфического назначения.
Иногда, при "кривом" завершении программы X-сервер, клавиатура остается в режиме "сырых" скан-кодов. При этом, естественно, переключится в другой "виртуальный терминал" невозможно. Но, если к этой машине есть доступ телнетом, то можно исправить положение, вернув клавиатуру в нормальный режим.

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

Так вот, эта моя программка сама определяет текущий виртуальный терминал и "исправляет" клавиатуру именно на нем.

Для исполнения требуются привелегии root'а.

Иван Паскаль pascal@tsu.ru