Как называется кнопка windows в linux

Супер-ключ - это альтернативное название клавиши Windows или клавиши Command при использовании операционных систем или программного обеспечения Linux или BSD. Супер ключ изначально был ...

Супер-ключ — это альтернативное название клавиши Windows или клавиши Command при использовании операционных систем или программного обеспечения Linux или BSD. Клавиша Super изначально была клавишей-модификатором на клавиатуре, разработанной для машин Lisp в Массачусетском технологическом институте.

В Linux клавиша Windows называется Супер ключ. Приложение получает нажатие клавиши Super, и его можно настроить, если вы не настроили его как глобальную горячую клавишу в своей среде dektop (KDE, GNOME и т. Д.)

Ключ Windows работает в Linux?

Да, в Linux это называется супер- или мета-ключом. Вы можете использовать его в настраиваемых сочетаниях клавиш, а в Unity он должен вызвать Dash. Ниже приведен пример того, как настроить ярлык с помощью клавиши Windows в KDE. Это должно быть аналогично в других средах рабочего стола.

Как мне найти ключ продукта Windows в Linux?

Чтобы найти исходный ключ продукта Windows 10 в Linux:

  1. Откройте приложение терминала.
  2. Вы должны запустить команду Linux от имени пользователя root.
  3. Введите sudo strings / sys / firmware / acpi / tables / MSDM, чтобы напечатать ключ продукта Windows 10 или Windows 8 OEM.
  4. Вы также можете использовать команду acpidump для получения той же информации в Linux.

Выпускает ли Microsoft Windows 11?

Дата объявлена: Microsoft начнет предлагать Windows 11 на Октябрь 5 к компьютерам, полностью отвечающим его аппаратным требованиям.

Что такое гипер-ключ?

Гипер-ключ волшебный ключ, который автоматически нажимает все стандартные модификаторы (ctrl + shift + cmd + opt). … С помощью Hyper Key можно определить сочетания клавиш в BTT, которые практически гарантированно не будут использоваться где-либо еще (кто захочет нажать, например, ctrl + shift + cmd + opt + P).

Является ли ключ продукта обязательным в Linux?

Мало того, что они должны быть вошел всякий раз, когда программа установлена, но пользователь также должен быть уверен, что не потеряет их. Потеря ключа продукта обычно означает, что программное обеспечение становится бесполезным после удаления, если перед удалением не используется приложение для восстановления ключей (хотя не все программы поддерживают это).

Как я могу получить OEM ключ Windows из BIOS?

Получение ключа Windows 10 с помощью CMD

  1. Получение ключа Windows 10 с помощью CMD. Командную строку или CMD можно использовать для получения информации об установочном ключе Windows. …
  2. Введите команду «slmgr / dli» и нажмите «Enter». …
  3. Получите ключ продукта Windows 10 в BIOS. …
  4. Если ваш ключ Windows находится в BIOS, вы можете его просмотреть:

Как мне найти лицензионный ключ Windows?

Как правило, если вы купили физическую копию Windows, ключ продукта должен быть на этикетке или карточке внутри коробки, в которой Windows была установлена. Если Windows была предустановлена ​​на вашем ПК, ключ продукта должен появиться на наклейке на вашем устройстве. Если вы потеряли или не можете найти ключ продукта, обратитесь к производителю.

Что такое ключ ОС?

Супер ключ — это клавиша ОС на клавиатуре. В последних продуктах System76 это кнопка Pop (). … На обычных продуктах сторонних производителей он может быть помечен логотипом Windows. На аксессуарах Mac это может быть помечено как команда.

Где я могу получить ключ продукта Windows 10?

Найти ключ продукта Windows 10 на новом компьютере

  1. Нажмите клавишу Windows + X.
  2. Нажмите «Командная строка» («Администратор»)
  3. В командной строке введите: wmic path SoftwareLicensingService get OA3xOriginalProductKey. Это раскроет ключ продукта. Активация ключа продукта корпоративной лицензии.

Как мне найти ключ продукта Windows 7 из командной строки?

Шаг 1: нажмите Windows Key + R, а затем введите CMD в поле поиска. Шаг 2. Теперь введите или вставьте следующий код в cmd и нажмите Enter, чтобы увидеть результат. wmic path softwarelicensingservice получить OA3xOriginalProductKey. Шаг 3. Приведенная выше команда покажет вам ключ продукта, связанный с вашей Windows 7.

Где в реестре находится ключ продукта Windows 10?

Шаг 1. Перейдите в меню «Пуск» и найдите командную строку. Шаг 2: Щелкните правой кнопкой мыши командную строку и выберите «Запуск от имени администратора». Шаг 3. В командной строке вставьте эту команду «Wmic path softwarelicensingservice получить OA3xOriginalProductKey«. Шаг 4: Это отобразит все ключи для вашей Windows 10.

Содержание

  1. Keyboard input (Русский)
  2. Contents
  3. Определение скан-кодов
  4. С помощью showkey
  5. С помощью evtest
  6. С помощью dmesg
  7. Определение кодов клавиш
  8. Определение кодов клавиш в консоли
  9. Определение кодов клавиш в Xorg
  10. Где взять названия клавиш для каждого keycode клавиатуры?
  11. Как узнать название клавиши linux

Keyboard input (Русский)

Необходимым условием для изменения сопоставления клавиш является понимание того, как нажатие клавиши приводит к появлению символа:

  1. Клавиатура посылает компьютеру скан-код (scancode).
  2. Ядро Linux сопоставляет сканкод с кодом клавиши (keycode); смотрите Map scancodes to keycodes.
  3. Раскладка клавиатуры сопоставляет код клавиши с символом клавиши (keysym) в зависимости от того, какие клавиши-модификаторы нажаты.
    1. Для консоли Linux смотрите статью Конфигурация клавиатуры в консоли.
    2. Для Xorg и Wayland смотрите статью Конфигурация клавиатуры в Xorg.

Большинство ваших клавиш уже должны иметь код клавиши или хотя бы скан-код. Клавиши без скан-кода не распознаются ядром; это могут быть дополнительные клавиши от «игровых» клавиатур и т.д.

В Xorg некоторым символам клавиш (например XF86AudioPlay , XF86AudioRaiseVolume ) можно назначить действия (такие как запуск внешних приложений). Подробности смотрите в статье Горячие клавиши#Xorg.

В консоли Linux некоторым символам клавиш (например, F1 – F246 ) могут быть назначены определённые действия (например, переключение на другую консоль или печать некоторой последовательности символов). Подробности смотрите в статье Конфигурация клавиатуры в консоли#Создание своей раскладки.

Contents

Определение скан-кодов

С помощью showkey

Традиционный способ узнать скан код — воспользоваться утилитой showkey(1) . showkey ожидает нажатия клавиши, или выходит, если не было нажатий в течение 10 секунд. Чтобы работать с showkey, вы должны быть в виртуальной консоли, а не в графическом окружении или работать, залогинившись по сети. Выполните следующую команду:

и понажимайте клавиши на клавиатуре; вы должны увидеть скан коды на экране.

С помощью evtest

Для USB клавиатур, видимо, нужно использовать evtest(1) из пакета evtest вместо showkey:[1]

Используйте поле «value» из MSC_SCAN . В этом примере показано, что NumLock имеет сканкод 70053 и keycode 69.

С помощью dmesg

Вы можете узнать скан-код клавиши, нажав её и посмотрев вывод команды dmesg. Например, если у вас отображается такая строка:

значит, скан код нужной вам клавиши — 0xa0 .

Определение кодов клавиш

Коды клавиш Linux определены в файле /usr/include/linux/input-event-codes.h (смотрите переменные KEY_ ).

Определение кодов клавиш в консоли

В виртуальной консоли Linux коды клавиш можно узнать утилитой showkey(1) . showkey ждёт нажатия клавиш, и если нажатий нет в течение 10 секунд, выходит (это единственный способ выйти из программы) Чтобы работать с showkey, вы должны быть в виртуальной консоли, а не в графическом окружении. Выполните следующую команду:

и понажимайте клавиши на клавиатуре. Вы должны увидеть коды клавиш на экране.

Определение кодов клавиш в Xorg

В графическом режиме коды клавиш, которые использует Xorg, можно узнать с помощью утилиты xev(1) , которая поставляется в пакете xorg-xev . Разумеется, чтобы работать с xev, вы должны находиться в графическом окружении, а не в консоли.

Выполнив следующую команду, вы запустите xev с выводом только релевантной информации:

Вот пример вывода:

Xbindkeys — ещё одна обёртка для xev, которая сообщает коды клавиш.

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

Источник

Где взять названия клавиш для каждого keycode клавиатуры?

но эта таблица врёт (устарела): так, например, на самом деле keycode «А» не 0x41, а 0x26

остальные номера клавиш тоже не совпадают

возможно, уже где-то есть готовые либы, правильно переводящие keycode в name

на самом деле keycode «А» не 0x41, а 0x26

Можно посмотреть откуда их xev берет — keycode 38 (keysym 0x61, a)

но эта таблица врёт (устарела): так, например, на самом деле keycode «А» не 0x41, а 0x26

ты не различил ascii keycode и scan keycode

из функции XKeysymToString — осталось понять, откуда она берёт…

слишком жирная либа, чтобы ещё и её тянуть

На сколько я понял — кейсуммы есть в иксовом keysymdef.h. Соотвествие кейкода (это код клавиши, который с клавиатуры пришел в ядро) кейсумме (это то к чему привязан кейкод в иксах) определяет xmodmap через список соответствия кода с клавиатуры символу в раскладке через /usr/share/X11/xkb/symbols/ . А вот как интерпретировать сигналы с клавиатуры уже зависит от того, какой тип клавиатуры выбран, и список кодов клавиатуры в связке с «кодами», которые потом можно при помощи локали замаппить в кейкоды, можно посмореть в файлах /usr/share/X11/xkb/keycodes/ .

Мне кажется что я где-то запутал и усложнил, но не могу найти что тут можно выкинуть.

там какие-то не те коды

там с локалью, а мне надо без

Там соответствие «сигнала» клавиатуры какому-то иксовоу коду, который потом через локаль маппится в символ.

У тебя задача какая? Собрать список вида «a = 0x26»? Тогда без локали у тебя не получится.

Хочу добавить: можно дампнуть полный текущий конфиг xkb в файл

Там будет вся инфа, а не размазана по куче xkb инклудов. Я здесь с xkb упражнялся Настройка XKB

Задача собрать список вида «LeftArrow = 0x69», «F20 = 0x50»

она не соответствует реальным сканкодам

Опять же, коды стрелок не совпадают (хотя многие остальные клавиши — вроде да)

Да, вот тут, похоже, коды правильные. Спасибо.

В чём заключается жирность?

на самом деле keycode «А» не 0x41, а 0x26

на самом деле 0x1e

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

никак не согласуется с теми кодами, которые я получаю на практике

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

Что посылает ядро можно посмотреть sudo evtest

вот иксовый код из xev той же клавиши A

у него наварное иксы

к слову, а в mir|wayland такие же коды, как в иксах или другие?

Тебе теорию надо курить сильно, ты не понимаешь что делаешь и как оно работает. Можешь вот это почитать для затравки.

А вообще дело в том, что куча абстракций навёрнуто между нажатием a и получением буквы a в посте на ЛОР-е. Сначала драйвер клавиатуры в общем случае какой-то код получает и как-то обменивается с железкой, потом отдаёт коды ядру линукса, преобразуя их в те, о которых знает ядро (смотри input-event-codes.h), на который тебе дали ссылку. Поверх этого могут крутиться иксы или вяленый, они коды от ядра уже в свои преобразуют (ты иксовые ищешь, боюсь в вяленом другие могут быть), поверх этого текстовой редактор сохраняет коды некоторых клавиш согласно кодировке. Это если грубо подумать опираясь на то, что иксы и вяленый не только на ядре linux-а работать должны. За детали реальной реализации не ручаюсь, т.к. не копался глубоко и это по сути только догадки.

а какой именно клавиатуры, они разные бывают

Нет, я общий смысл понимаю. Мне просто нужна таблица соответствия кейкодов названию клавиши. Обратите внимание, не символу, а названию — у Esc, например, нет символа, но есть название.

насколько я понимаю, они все переводятся ядром/иксами к неким стандартным кодам

в том, что уже qt использую, не хочу ещё и sdl тянуть

Источник

Как узнать название клавиши linux

НАЗВАНИЕ
keyboard — клавиатура персонального компьютера.

ОПИСАНИЕ
Клавиатура персонального компьютера используется для ввода данных, переключения экранов и направления некоторых управляющих сигналов компьютеру. Система UNIX выполняет эмуляцию экрана и клавиатуры терминала и при этом извлекает пользу из некоторых особенных клавиш и их комбинаций. Эти клавиши и их комбинации имеют специальные названия, которые уникальны в системе UNIX и могут соответствовать, а могут и не соответствовать меткам клавиш на вашей клавиатуре. Эти клавиши будут описаны позже.

Когда вы нажимаете клавишу, происходит одно из следующих событий:

  • Вводится символ ASCII.
  • Компьютеру посылается символьная строка.
  • Запускается какая-либо функция.
  • Меняется значение другой клавиши или клавиш.

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

Различают три особенных события при нажатии клавиш:

  • Переключение экранов.
  • Генерация сигнала.
  • Изменение значения предыдущего символа, символов или строки.

Переключение экранов (многоэкранный режим)
Для переключения на следующий экран нажмите Ctrl-PrtSc, используя клавиши Ctrl и PrtSc. Любой активный экран может быть выбран нажатием alt-Fn, где Fn — одна из функциональных клавиш. F1 относится к дисплею компьютера (/dev/tty01).

Сигналы
Сигналы оказывают воздействие на процесс или несколько процессов. Примерами сигналов являются Ctrl-d (конец ввода и выход из оболочки), Ctrl- (завершение процесса), Ctrl-s ( остановка выдачи еа экран) и Ctrl-q (возобновление выдачи).

Обычно символы ставятся в соответствие сигналам с помощью stty(1). Единственный способ поставить сигнал в соответствие символам через посредство stty.

Изменение значения нажатий клавиш
Действительный код, посылаемый драйверу клавиатуры, может быть изменен с помощью комбинации некоторых клавиш. Например, клавиша SHIFT меняет значение символов ASCII буквенно-цифровых клавиш. Удерживание клавиши Ctrl при нажатии других клавиш генерирует управляющие коды (Ctrl-d, Ctrl-s, Ctrl-q и др.).

Специальные клавиши
Для облегчения отыскания специальных клавиш в следующей таблице показано соответствие клавиш типичной консоли ключам системы UNIX. В этой таблице черточка (-) между названиями клавиш означает «удерживайте первую клавишу, нажимая на вторую».

Название в системе XENIX Метки на клавиатуре Действие
INTR Del Останавливает текущее действие и возвращает в оболочку. Эта клавиша называется также RUB OUT или INTERRUPT.
BACKSPACE nop nop ‘,’ ‘>’ nop nop O
53 ‘/’ ‘?’ nop nop ‘/’ ‘?’ nop nop O
54 rshift rshift rshift rshift rshift rshift rshift rshift O
55 ‘*’ ‘*’ nscr nscr ‘*’ ‘*’ nscr nscr O
56 alt alt alt alt alt alt alt alt O
57 ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ O
58 clock clock clock clock clock clock clock clock O
59 fkey1 fkey13 fkey25 fkey37 scr1 scr11 scr1 scr11 O
60 fkey2 fkey14 fkey26 fkey38 scr2 scr12 scr2 scr12 O
61 fkey3 fkey15 fkey27 fkey39 scr3 scr13 scr3 scr13 O
62 fkey4 fkey16 fkey28 fkey40 scr4 scr14 scr4 scr14 O
63 fkey5 fkey17 fkey29 fkey41 scr5 scr15 scr5 scr15 O
64 fkey6 fkey18 fkey30 fkey42 scr6 scr16 scr6 scr16 O
65 fkey7 fkey19 fkey31 fkey43 scr7 scr7 scr7 scr7 O
66 fkey8 fkey20 fkey32 fkey44 scr8 scr8 scr8 scr8 O
67 fkey9 fkey21 fkey33 fkey45 scr9 scr9 scr9 scr9 O
68 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O
69 nlock nlock dc3 dc3 nlock nlock dc3 dc3 O
70 slock slock del del slock slock del del O
71 fkey49 ‘7’ ‘7’ ‘7’ ‘7’ ‘7’ ‘7’ ‘7’ N
72 fkey50 ‘8’ ‘8’ ‘8’ ‘8’ ‘8’ ‘8’ ‘8’ N
73 fkey51 ‘9’ ‘9’ ‘9’ ‘9’ ‘9’ ‘9’ ‘9’ N
74 fkey52 ‘-‘ ‘-‘ ‘-‘ ‘-‘ ‘-‘ ‘-‘ ‘-‘ N
75 fkey53 ‘4’ ‘4’ ‘4’ ‘4’ ‘4’ ‘4’ ‘4’ N
76 fkey54 ‘5’ ‘5’ ‘5’ ‘5’ ‘5’ ‘5’ ‘5’ N
77 fkey55 ‘6’ ‘6’ ‘6’ ‘6’ ‘6’ ‘6’ ‘6’ N
78 fkey56 ‘+’ ‘+’ ‘+’ ‘+’ ‘+’ ‘+’ ‘+’ N
79 fkey57 ‘1’ ‘1’ ‘1’ ‘1’ ‘1’ ‘1’ ‘1’ N
80 fkey58 ‘2’ ‘2’ ‘2’ ‘2’ ‘2’ ‘2’ ‘2’ N
81 fkey59 ‘3’ ‘3’ ‘3’ ‘3’ ‘3’ ‘3’ ‘3’ N
82 fkey60 ‘0’ ‘0’ ‘0’ ‘0’ ‘0’ ‘0’ ‘0’ N
83 del ‘.’ del del del del del del N
84 nop nop nop nop nop nop nop nop O
85 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O
86 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O

Следующие скан-коды генерируются только на клавиатурах, которые поддерживают и находятся в режиме AT.

SCAN CODE BASE SHIFT CTRL CTRL SHIFT ALT ALT SHIFT ALT CTRL ALT CTRL SHIFT LOCK
87 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O
88 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O
89 nop nop nop nop nop nop nop nop O
90 nop nop nop nop nop nop nop nop O
91 nop nop nop nop nop nop nop nop O
92 nop nop nop nop nop nop nop nop O
93 nop nop nop nop nop nop nop nop O
94 nop nop nop nop nop nop nop nop O
95 nop nop nop nop nop nop nop nop O
96 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O
97 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O
98 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O
99 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O
100 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O
101 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O
102 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O
103 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O
104 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O
105 del del del del del del del del 0
106 nop nop nop nop nop nop nop nop O
107 nop nop nop nop nop nop nop nop O
108 nop nop nop nop nop nop nop nop O
109 nop nop nop nop nop nop nop nop O
110 nop nop nop nop nop nop nop nop O
111 nop nop nop nop nop nop nop nop O
112 nop nop nop nop nop nop nop nop O
113 nop nop nop nop nop nop nop nop O
114 nop nop nop nop nop nop nop nop O
115 nop nop nop nop nop nop nop nop O
116 nop nop nop nop nop nop nop nop O
117 nop nop nop nop nop nop nop nop O
118 nop nop nop nop nop nop nop nop O
119 nop nop nop nop nop nop nop nop O
120 nop nop nop nop nop nop nop nop O
121 nop nop nop nop nop nop nop nop O
122 nop nop nop nop nop nop nop nop O
123 nop nop nop nop nop nop nop nop O
124 nop nop nop nop nop nop nop nop O
125 nop nop nop nop nop nop nop nop O
126 nop nop nop nop nop nop nop nop O
127 nop nop nop nop nop nop nop nop O
128 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O
129 ralt ralt ralt ralt ralt ralt ralt ralt O
130 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O
131 del del del del del del del del 0
132 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O
133 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O
134 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O
135 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O
136 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O
137 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O
138 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O
139 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O
140 ‘/’ nop nop nop ‘/’ nop nop nop O
141 cr cr nl nl cr cr nl nl O

В следующей таблице перечисляются «значения» специальных ключевых слов в файле /usr/lib/keyboard/keys (и в предыдущей таблице). mapkey(ADM) помещает «значение» ключевого слова в буфер управления вводом/выводом во время назначения клавиш. Эти ключевые слова используются только в файле скан-кодов /usr/lib/keyboard/keys для упрощения его чтения.

Название Значение Описание
nop 0 Действия нет — «пустое» нажатие клавиши
lshift 2 Левая клавиша shift
rshift 3 Правая клавиша shift
clock 4 фиксация Capslock
nclock 5 фиксация Numlock
slock 6 фиксация Scroll lock
alt 7 Клавиша Alt
btab 8 Ключ обратной табуляции — генерирует фиксированную последовательность (esc [ Z)
ctrl 9 Клавиша Ctrl
nscr 10 Переключение на следующий экран
scr1 11 Переключение на экран #1
.
scr16 26 Переключение на экран #16
fkey1 27 Функциональная клавиша #1
.
fkey96 122 Функциональная клавиша #96
rctl 128* Правая клавиша Ctrl
ralt 129* Правая клавиша Alt
* Только в режиме AT

В следующей таблице перечисляются названия ключевых слов и их десятичные значения, которые могут взаимозаменяться в файле mapkey. Эти названия используются вместо соответствующих численных констант для облегчения чтения таблицы скан-кодов. Но в буфер управления вводом/выводом помещаются только десятичные значения. Они берутся из ascci(5).

Название Значение Название Значение
nul 0 dc1 17
soh 1 dc2 18
stx 2 dc3 19
etx 3 dc4 20
eot 4 nak 21
enq 5 syn 22
ack 6 etb 23
bel 7 can 24
bs 8 em 25
ht 9 sub 26
nl 10 esc 27
vt 11 fs 28
np 12 gs 29
cr 13 rs 30
so 14 ns 31
si 15 del 127
dle 16

Назначение клавиш клавиатуры
Установление соответствия клавиш клавиатуры является составной частью эмуляции терминала. Эта процедура выполняется только для клавиатуры компьютера, но не для удаленных терминалов. Для изменения таблицы соответствий клавиш используйте утилиту mapkey. Чтобы изменить эту таблицу для отдельных каналов (экранов в многоэкранном режиме) используйте программу mapchan(5).

Установка соответствий клавиш клавиатуры может быть также выполнена с помощью ioctl. Синтаксис — тот же, что и для соответствий функциональных клавиш в предыдущем разделе.

При установке соответствий клавиш клавиатуры значение cmd=GIO_KEYMAP высвечивает текущую таблицу соответствий, а cmd=PIO_KEYMAP помещает готовый буфер на место.

Назначение функциональных клавиш
Для назначения функциональных клавиш используйте утилиту mapstr (см. mapkey(8)). mapstr модифицирует таблицу соответствий функциональных клавиш, в которой эти клавиши определяются.

Таблица соответствий функциональных клавиш представляет собой массив из 512 байтов (typedef strmap_t — тип структуры), содержащий строки, заканчивающиеся нулем и переопределяющие функциональные клавиши. Первая строка приписывается первой функциональной клавише, вторая — второй и т.д.

Не существует ограничения на длину строки, кроме предела самой таблицы, 512 байтов, включая нули. Строки обнуляются введением дополнительных нулевых символов.

Далее приведен список значений функциональных клавиш, устанавливаемых по умолчанию:

Значения функциональных клавиш по умолчанию
Клавиша # Функция Shift
Функция
Ctrl
Функция
Ctrl
Shift
Функция
1 ESC[M ESC[Y ESC[k ESC[w
2 ESC[N ESC[Z ESC[l ESC[x
3 ESC[O ESC[a ESC[m ESC[y
4 ESC[P ESC[b ESC[n ESC[z
5 ESC[Q ESC[c ESC[o ESC[@
6 ESC[R ESC[d ESC[p ESC[[
7 ESC[S ESC[e ESC[q ESC[
8 ESC[T ESC[f ESC[r ESC[]
9 ESC[U ESC[g ESC[s ESC[^
10 ESC[V ESC[h ESC[t ESC[_
11 ESC[W ESC[i ESC[u ESC[‘
12 ESC[X ESC[j ESC[v ESC[ <
Home ESC[H End ESC[F
Up arrow ESC[A Down arrow ESC[B
Page up ESC[I Page down ESC[G
Left arrow ESC[D 5 ESC[E
Right arrow ESC[C Insert ESC[L

Вы можете назначать функциональные клавиши с помощью ioctl(2). Синтаксис имеет вид:

При установке соответствий клавиш клавиатуры значение cmd=GIO_KEYMAP высвечивает текущую таблицу соответствий, а cmd=PIO_KEYMAP устанавливает новую таблицу на место.

Источник

Adblock
detector

Где взять названия клавиш для каждого keycode клавиатуры?

но эта таблица врёт (устарела): так, например, на самом деле keycode «А» не 0x41, а 0x26

остальные номера клавиш тоже не совпадают

возможно, уже где-то есть готовые либы, правильно переводящие keycode в name

код клавиш в linux

на самом деле keycode «А» не 0x41, а 0x26

код клавиш в linux

но эта таблица врёт (устарела): так, например, на самом деле keycode «А» не 0x41, а 0x26

ты не различил ascii keycode и scan keycode

код клавиш в linux

код клавиш в linux

слишком жирная либа, чтобы ещё и её тянуть

Мне кажется что я где-то запутал и усложнил, но не могу найти что тут можно выкинуть.

код клавиш в linux

там какие-то не те коды

там с локалью, а мне надо без

Там соответствие «сигнала» клавиатуры какому-то иксовоу коду, который потом через локаль маппится в символ.

У тебя задача какая? Собрать список вида «a = 0x26»? Тогда без локали у тебя не получится.

код клавиш в linux

Хочу добавить: можно дампнуть полный текущий конфиг xkb в файл

Там будет вся инфа, а не размазана по куче xkb инклудов. Я здесь с xkb упражнялся Настройка XKB

код клавиш в linux

Задача собрать список вида «LeftArrow = 0x69», «F20 = 0x50»

код клавиш в linux

она не соответствует реальным сканкодам

код клавиш в linux

код клавиш в linux

Да, вот тут, похоже, коды правильные. Спасибо.

В чём заключается жирность?

код клавиш в linux

на самом деле keycode «А» не 0x41, а 0x26

на самом деле 0x1e

код клавиш в linux

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

код клавиш в linux

никак не согласуется с теми кодами, которые я получаю на практике

Что посылает ядро можно посмотреть sudo evtest

вот иксовый код из xev той же клавиши A

код клавиш в linux

у него наварное иксы

код клавиш в linux

код клавиш в linux

к слову, а в mir|wayland такие же коды, как в иксах или другие?

код клавиш в linux

Тебе теорию надо курить сильно, ты не понимаешь что делаешь и как оно работает. Можешь вот это почитать для затравки.

А вообще дело в том, что куча абстракций навёрнуто между нажатием a и получением буквы a в посте на ЛОР-е. Сначала драйвер клавиатуры в общем случае какой-то код получает и как-то обменивается с железкой, потом отдаёт коды ядру линукса, преобразуя их в те, о которых знает ядро (смотри input-event-codes.h), на который тебе дали ссылку. Поверх этого могут крутиться иксы или вяленый, они коды от ядра уже в свои преобразуют (ты иксовые ищешь, боюсь в вяленом другие могут быть), поверх этого текстовой редактор сохраняет коды некоторых клавиш согласно кодировке. Это если грубо подумать опираясь на то, что иксы и вяленый не только на ядре linux-а работать должны. За детали реальной реализации не ручаюсь, т.к. не копался глубоко и это по сути только догадки.

код клавиш в linux

а какой именно клавиатуры, они разные бывают

код клавиш в linux

код клавиш в linux

насколько я понимаю, они все переводятся ядром/иксами к неким стандартным кодам

код клавиш в linux

в том, что уже qt использую, не хочу ещё и sdl тянуть

Источник

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

Два последних параметра (скорость повтора и время задержки) устанавливаются с помощью специальной команды kbdrate .

9.3.1. Команда kbdrate

for tty in /dev/tty5*; do

Изменение раскладки клавиатуры — это вопрос значительно более сложный. Но, поскольку этот вопрос имеет большое значение как вообще для настройки клавиатуры, так и для решения проблемы русификации, его необходимо рассмотреть подробнее.

И начать придется с краткого изложения проблем кодировки символов.

9.3.2. Таблицы кодировки символов

В человеческом мире информация представляется последовательностями символов. Каждый символ имеет каноническое изображение, которое позволяет однозначно идентифицировать данный символ. Шрифты задают разные варианты начертания символов.

В вычислительных машинах для представления информации используются цепочки байтов. Поэтому для перевода информации из машинного представления в человеческий необходимы таблицы кодировки символов — таблицы соответствия между символами определенного языка и кодами символов.

Самой известной таблицей кодировки является код ASCII (Американский стандартный код для обмена информацией), который был разработан для передачи текстов по телеграфу задолго до появления компьютеров. Этот код является 7 битовым, т. е. для кодирования символов английского языка, служебных и управляющих символов используются только 128 7-битовых комбинаций. При этом первые 32 комбинации (кода) служат для кодирования управляющих сигналов (начало текста, конец строки, перевод каретки, звонок, конец текста и т. д.).

При разработке первых компьютеров фирмы IBM этот код был использован для представления символов в компьютере. Поскольку в исходном коде ASCII было всего 128 символов, для их кодирования хватило тех однобайтовых кодов, у которых 8-й бит равен 0. Во второй половине кодовой таблицы (значения байта с 8-м битом равным 1) фирма IBM разместила символы псевдографики, математические знаки и некоторые символы из языков, отличных от английского (немецкие умляуты, французские диакритические знаки, символы греческого алфавита и т.п.). Эту кодовую таблицу стали называть кодировкой IBM.

Когда IBM-совместимые персональные компьютеры стали использовать в других странах, потребовалось обеспечить обработку информации на языках, отличных от английского. Для того, чтобы полноценно поддерживать другие языки, фирма IBM ввела в употребление несколько кодовых таблиц, ориентированных на конкретные страны. Так для скандинавских стран была предложена таблица 865 (Nordic), для арабских стран — таблица 864 (Arabic), для Израиля — таблица 862 (Israel) и так далее. В этих таблицах часть кодов из второй половины кодовой таблицы использовалась для представления символов национальных алфавитов (за счет исключения некоторых символов псевдографики). Для представления символов кириллицы была введена кодировка IBM-866.

Однако с русским языком ситуация развивалась особым образом. Очевидно, что замену символов во второй половине кодовой таблицы можно произвести разными способами. В других европейских странах сумели найти единое решение, а для русского языка появилось несколько разных таблиц кодировки символов кириллицы: IBM-866, CP-1251, KOI8-R, ISO-8859-5. Все они одинаково изображают символы первой половины таблицы (от 0 до 127) и различаются представлением символов русского алфавита и псевдографики во второй половине.

Одна из самых известных кодовых таблиц для кириллицы получила название альтернативной (по отношению к кодировке IBM-866, наверное). Она была разработана фирмой Microsoft для MS-DOS. При ее разработке постарались сделать так, чтобы результирующая таблица была насколько это возможно совместима с кодировкой IBM. Поэтому альтернативная кодировка — это кодировка IBM, в которой все специфические европейские символы в верхней половине были заменены на кириллицу, оставляя псевдографические символы нетронутыми. Следовательно, это не портило вид программ, использующих для работы текстовые окна, что было очень существенным фактором для работы в среде MS-DOS, основой которой был именно текстовый режим.

Кодировка KOI-8 была разработана изначально с ориентировкой на UNIX. Так как UNIX в своей основе сетевая ОС, то основной идей при создании KOI-8 была идея об обеспечении перемещения кириллической информации по сети. Но для передачи-то использовался 7-битный стандарт ASCII. Разработчики поместили кириллические символы в верхней части таблицы таким образом, что позиции кириллических символов соответствуют их фонетическим аналогам в английском алфавите в нижней части таблицы. Это означает, что, если в тексте, написанном в KOI-8, мы убираем восьмой бит каждого символа, то мы все еще имеем «читабельный» текст, хотя он и написан английскими символами! Не удивительно, что KOI8-R быстро стал фактически стандартом для кириллицы в Интернет, что и нашло отражение в RFC 1489 ( «Registration of a Cyrillic Character Set»). Автором этого документа является Андрей А. Чернов, который проделал огромный объем работы, чтобы превратить KOI-8 в стандарт Интернет.

Международная организация по стандартизации (ISO) внесла свою лепту в создание различных кодировок кириллицы, когда ввела семейство стандартов, известных как ISO 8859-X. Это семейство есть совокупность 8-битных кодировок, где младшая половина каждой кодировки (символы с кодами 0—127) соответствует ASCII, а старшая половина определяет символы для различных языков. Например:

Фирма Microsoft еще больше запутала ситуацию с кодировками для русского языка, когда при разработке Windows ввела кодировку CP-1251.

Таблицы кодировок, содержащие 256 символов, стали называть расширенными кодами ASCII (потому что в основе любой из них лежит 128-символьный код ASCII), кодовыми страницами или английским термином character set (который часто сокращают до charset).

Но в мире есть языки, такие как китайский или японский, для которых 256 символов в принципе недостаточно. Кроме того, всегда существует проблема вывода или сохранения в одном файле одновременно текстов на разных языках (например, при цитировании). Поэтому была разработана универсальная кодовая таблица UNICODE, содержащая символы, применяемые в языках всех народов мира, а также различные служебные и вспомогательные символы (знаки препинания, математические и технические символы, стрелки, диакритические знаки и т. д.). Очевидно, что одного байта недостаточно для кодирования такого большого множества символов. Поэтому в UNICODE используются 16-битовые (2-байтовые) коды, что позволяет представить 65 536 символов. К настоящему времени задействовано около 49 000 кодов (последнее значительное изменение — введение символа валюты EURO в сентябре 1998 г.). Для совместимости с предыдущими кодировками первые 128 кодов совпадают со стандартом ASCII. На рис. 9.1 схематично представлено размещение символов разных языков в кодовом пространстве UNICODE.

Рис. 9.1. Структура UNICODE.

В стандарте UNICODE кроме определенного двоичного кода (эти коды принято обозначать буквой U, после которой следуют знак + и собственно код в шестнадцатеричном представлении) каждому символу присвоено определенное имя. В следующей таблице приведено несколько примеров кодов и имен символов из стандарта UNICODE.

Таблица 9.2. Примеры именования кодов UNICODE

Источник

Нихт ферштейн: учим пингвина понимать мультимедийные клавиши

Содержание статьи

Определение скан-кода клавиш

Что бы ты там не нажимал на своей клавиатуре, X-серверу и ядру, в общем-то, все равно, что на ней написано или нарисовано. Их интересуют исключительно скан-код кнопки, причем сначала иксы считывают таблицу кодов клавиш ядра, а затем уже код клавиши привязывается к собственной таблице кодов. Если в Windows проблемы настройки мультимедийных клавиш в консоли как таковой не существует, то в Linux приходится отдельно настраивать реакцию на нажатие кнопок в консоли и в X-Window.

Чтобы узнать код клавиши, следует использовать утилиту xev, входящую в состав Х-сервера. После ее запуска появляется окно Event Tester, теперь последовательно нажимаем клавиши, запоминая выдаваемый код:

$ xev
.
KeyRelease event, serial 31, synthetic NO, window 0x3e00001,
root 0x67, subw 0x0, time 279734676, (311,611), root:(1104,687),
state 0x2000, keycode 236 (keysym 0x1008ff19, XF86Mail), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 31, synthetic NO, window 0x2600001,
root 0x67, subw 0x0, time 265877259, (883,334), root:(886,358),
state 0x0, keycode 161 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

Вывод может быть огромен, так как отслеживается каждое движение мышки при проходе над окном Event Tester. Клавишу описывает блок KeyRelease, в частности, значение keycode как раз и является скан-кодом, который мы хотим узнать. В приведенном примере нажаты две клавиши. Клавише с кодом 236 соответствует код клавиши для X-сервера, указанный в keysym, а также действие XF86Mail, которое в KDE запускает используемый по умолчанию почтовый клиент. Для клавиши с номером 161 код и действие не определены.

Возможна ситуация, когда клавиша нажимается, но ее скан-код не выдается. Это означает, что ядро не может найти соответствующее значение. В выводе dmesg должна быть такая строка:

Use ‘setkeycodes 0xec ‘ to make it known.

То есть тебе предлагают установить скан-код клавиши самостоятельно при помощи setkeycodes, при этом значение keycode выбрать очень просто. Переведи полученную цифру в десятичное число (большинство калькуляторов это умеют) и прибавь 128. В данном примере 0xec=236, то есть получаем скан-код 364. Если есть сомнения, список задействованных и незадействованных скан-кодов можно просмотреть, запустив в консоли утилиту getkeycodes или dumpkeys. Например, если вывод «getkeycodes | grep » ничего не дал, значит этот код можно смело использовать.

Помочь определить скан-код способна и утилита ХKeycaps (www.jwz.org/xkeycaps), которая является графическим фронт-эндом к Xmodmap.

В консоли программа xev, разумеется, не работает. Чтобы узнать скан-код, выдаваемый ядром, следует использовать утилиту showkey или getkeycodes:

$ showkey
клавиатура была в режиме UNICODE
нажмите любую клавишу (программа завершится через 10 сек после последнего нажатия).
0xe0 0x6c 0xe0 0xec

Первые две цифры соответствуют нажатой клавише, вторые – отсутствию нажатия.

Настройка привязки скан-кодов в X-Window

$ cat /usr/include/X11/XF86keysym.h
/*
* Keys found on some «Internet» keyboards.
*/
#define XF86XK_Standby 0x1008FF10
#define XF86XK_AudioLowerVolume 0x1008FF11
#define XF86XK_AudioRaiseVolume 0x1008FF13
#define XF86XK_AudioPlay 0x1008FF14
#define XF86XK_AudioStop 0x1008FF15
#define XF86XK_Mail 0x1008FF19

keycode 161 XF86Calculator
keycode 174 XF86AudioLowerVolume
keycode 176 XF86AudioRaiseVolume
keycode 162 XF86AudioPause

И так далее, принцип, думаю, ясен. Причем код клавиш можно заносить как в десятичном, так и шестнадцатеричном виде. По моим наблюдениям, коды большинства клавиш стандартизированы. Поэтому, если ты один раз настроишь реакцию на нажатие клавиши и перенесешь файл на другой комп, есть вероятность, что на другой клаве реакция на нажатие также подписанной клавиши будет аналогичная. Пользователи рабочего стола Gnome с GDM могут прописать все эти строки в общесистемный файл /etc/X11/Xmodmap.

В результате находим прелюбопытнейший файл /etc/X11/Xsession.d/80ubuntu-xmodmap такого содержания:

/usr/bin/xmodmap /usr/share/apps/kxkb/ubuntu.xmodmap || true

/.icewm, появляющийся после первого запуска, следует добавить строку:

В Fluxbox строка для запуска проигрывателя будет выглядеть так:

В конфигах обычно есть примеры, поэтому с остальными оконными менеджерами, думаю, ты без труда разберешься сам.

Настройка реакции в консоли

$ setkeycodes 0xec 118

Посмотреть свободные значения можно в файле текущей клавиатурной раскладки. В Ubuntu и всех дистрибутивах, базирующихся на Debian, это обычно /etc/console-setup/boottime.kmap.gz. Если после запуска проблем с клавишами нет, заносим эту строку в один из стартовых скриптов, например в /etc/init.d/rc.local.

Теперь осталось задать соответствие клавиши и выполняемого действия. Здесь простор для творчества даже больше, чем в иксах. В keymaps(5) процедура установки соответствия keycode выглядит следующим образом:

< plain | >keycode keynumber = keysym

# Переключение консоли на одну назад при нажатии на клавишу с кодом 105
keycode 105 = Decr_Console
# Переключение консоли на одну вперед при нажатии на и клавишу с кодом 106
alt keycode 106 = Incr_Console

Но можно создавать и свои варианты, указывая команду в переменных:

Другими словами, по нажатии клавиши с кодом 120 будет выполнено действие, указанное в переменной F100; в нашем случае задано выключение компьютера. Вместо F100, естественно, можно использовать любое другое имя.

/.console-setup), все настройки нужно будет перенести в другой файл, что несколько
неудобно. Если ты все-таки решишься на этот шаг, используй имеющиеся записи как шаблон, ничего не записывая на первую позицию, а в конце не забудь оставить пустую строку.

Немного о ноутбуке

$ sudo mcedit /etc/acpi/events/lid

$ sudo mcedit /etc/acpi/events/power

Это несколько упрощенные варианты, в KUbuntu ты найдешь более сложные скрипты. После этого требуется перезапуск демона acpid:

$ sudo /etc/init.d/acpid restart

Программы настройки

Возможности KeyTouch (keytouch.sf.net) несколько скромнее, эта утилита применяется исключительно для настройки мультимедийных клавиш. Хотя с ее помощью любой клавише можно назначить свое действие, отличающееся от установок по умолчанию. На сайте программы, кроме исходных текстов и пакетов для некоторых дистрибутивов, можно найти готовые настройки для мультимедийных клавиатур большинства известных производителей.

код клавиш в linux
Полную версию статьи
читай в январском номере Хакера!

Источник

Linux console (Русский)/Keyboard configuration (Русский)

Сопоставление клавиш (раскладки) для виртуальной консоли, консольных шрифтов и консольных карт предоставляется пакетом kbd (зависимость для systemd), который также предоставляет множество инструментов низкого уровня для управления виртуальной консолью. Кроме того, systemd также предоставляет инструмент localectl, который может контролировать как локали системы, так и настройки раскладки клавиатуры как для виртуальной консоли, так и для Xorg.

Contents

Просмотр настроек клавиатуры

Используйте localectl status для просмотра текущих конфигураций клавиатуры.

Раскладки клавиатуры

Список раскладок

Соглашения об именах консольных раскладок несколько условны, но обычно они основаны на:

Для получения списка всех доступных раскладок используйте команду:

Чтобы найти раскладку клавиатуры, используйте следующую команду, заменив search_term кодом для вашего языка, страны или раскладки:

Альтернативно, используя find:

Временная конфигурация (Loadkeys)

Можно установить раскладку только для текущего сеанса. Это полезно при проверке различных раскладок, решение проблем и т.д.

Постоянная конфигурация

Создание своей раскладки

Вы используете горячие клавиши для вывода особенных символов, пользуясь консолью. Кроме того, мы можем также напечатать последовательность символов и некоторые escape-последовательности. Таким образом, если мы печатаем последовательность символов, составляющих команду, а затем escape-символ для новой строки, эта команда будет выполнена.

Сначала, создайте файл раскладки. Этот файл раскладки может быть где угодно, но этот способ подражает иерархии каталогов в /usr/local :

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

Добавление директив

В этой личной раскладке требуются два типа директив. Прежде всего директивы keycode, которые соответствуют формату, указанному в стандартных раскладках по умолчанию. Эти директивы сопоставляют keycode с keysym. Keysyms представляют действия клавиатуры. Доступные действия включают вывод кодов символов или последовательностей символов, переключение консолей или раскладок клавиатуры, загрузку машины и многие другие действия. Полную активную текущую раскладку можно получить с помощью

Большинство keysyms интуитивно понятны. Например, чтобы настроить клавишу 112 для вывода символа ‘e’, директива примет следующий вид:

Чтобы настроить клавишу 112 для вывода символа евро, директива будет следующего вида:

Некоторые keysym не сразу связаны с действиями клавиатуры. В частности, keysyms с префиксом заглавной буквы F и от одной до трех цифр (F1-F246), составляющие число больше 30, всегда свободны. Это полезно для указания горячей клавиши для вывода последовательности символов и других действий:

Затем F70 может быть связан для вывода определенной строки:

Когда клавиша 112 нажата, она выведет содержимое F70. Чтобы выполнить команду в терминале, символ окончания новой строки должен быть добавлен в конец строки с командой. Например, чтобы ввести систему в спящий режим, добавляется следующая строка в раскладку:

Другие примеры

Сохранение изменений

Чтобы использовать свою раскладку, нужно ее загрузить с помощью loadkeys:

Регулировка задержки и скорости автоповтора

Задержка автоповтора означает количество времени (обычно в милисекундах), за которое необходимо нажать и удерживать клавишу для начала повторного процесса. После запуска повторяющегося процесса символ будет повторяться с определенной частотой (обычно заданной в Гц), указанной скоростью автоповтора. Эти значения могут быть изменены с помощью команды kbdrate. Обратите внимание, что эти настройки настраиваются отдельно для виртуальной консоли и для Xorg.

Например, чтобы установить задержку автоповтора в 200 мс и скорость автоповтора в 30 Гц, используйте следующую команду:

Ввод команды без указания задержки и скорости автоповтора приведет к сбросу значений до их соответствующих значений по умолчанию; задержка 250 мс и скорость 11 Гц:

Служба systemd

Службу systemd можно использовать для установки скорости клавиатуры. Например

Источник

Код клавиш в linux

ОПИСАНИЕ
Клавиатура персонального компьютера используется для ввода данных, переключения экранов и направления некоторых управляющих сигналов компьютеру. Система UNIX выполняет эмуляцию экрана и клавиатуры терминала и при этом извлекает пользу из некоторых особенных клавиш и их комбинаций. Эти клавиши и их комбинации имеют специальные названия, которые уникальны в системе UNIX и могут соответствовать, а могут и не соответствовать меткам клавиш на вашей клавиатуре. Эти клавиши будут описаны позже.

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

Сигналы
Сигналы оказывают воздействие на процесс или несколько процессов. Примерами сигналов являются Ctrl-d (конец ввода и выход из оболочки), Ctrl- (завершение процесса), Ctrl-s ( остановка выдачи еа экран) и Ctrl-q (возобновление выдачи).

Обычно символы ставятся в соответствие сигналам с помощью stty(1). Единственный способ поставить сигнал в соответствие символам через посредство stty.

Изменение значения нажатий клавиш
Действительный код, посылаемый драйверу клавиатуры, может быть изменен с помощью комбинации некоторых клавиш. Например, клавиша SHIFT меняет значение символов ASCII буквенно-цифровых клавиш. Удерживание клавиши Ctrl при нажатии других клавиш генерирует управляющие коды (Ctrl-d, Ctrl-s, Ctrl-q и др.).

Специальные клавиши
Для облегчения отыскания специальных клавиш в следующей таблице показано соответствие клавиш типичной консоли ключам системы UNIX. В этой таблице черточка (-) между названиями клавиш означает «удерживайте первую клавишу, нажимая на вторую».

Название в системе XENIX Метки на клавиатуре Действие
INTR Del Останавливает текущее действие и возвращает в оболочку. Эта клавиша называется также RUB OUT или INTERRUPT.
BACKSPACE nop nop ‘,’ ‘>’ nop nop O
53 ‘/’ ‘?’ nop nop ‘/’ ‘?’ nop nop O
54 rshift rshift rshift rshift rshift rshift rshift rshift O
55 ‘*’ ‘*’ nscr nscr ‘*’ ‘*’ nscr nscr O
56 alt alt alt alt alt alt alt alt O
57 ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ ‘ O
58 clock clock clock clock clock clock clock clock O
59 fkey1 fkey13 fkey25 fkey37 scr1 scr11 scr1 scr11 O
60 fkey2 fkey14 fkey26 fkey38 scr2 scr12 scr2 scr12 O
61 fkey3 fkey15 fkey27 fkey39 scr3 scr13 scr3 scr13 O
62 fkey4 fkey16 fkey28 fkey40 scr4 scr14 scr4 scr14 O
63 fkey5 fkey17 fkey29 fkey41 scr5 scr15 scr5 scr15 O
64 fkey6 fkey18 fkey30 fkey42 scr6 scr16 scr6 scr16 O
65 fkey7 fkey19 fkey31 fkey43 scr7 scr7 scr7 scr7 O
66 fkey8 fkey20 fkey32 fkey44 scr8 scr8 scr8 scr8 O
67 fkey9 fkey21 fkey33 fkey45 scr9 scr9 scr9 scr9 O
68 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O
69 nlock nlock dc3 dc3 nlock nlock dc3 dc3 O
70 slock slock del del slock slock del del O
71 fkey49 ‘7’ ‘7’ ‘7’ ‘7’ ‘7’ ‘7’ ‘7’ N
72 fkey50 ‘8’ ‘8’ ‘8’ ‘8’ ‘8’ ‘8’ ‘8’ N
73 fkey51 ‘9’ ‘9’ ‘9’ ‘9’ ‘9’ ‘9’ ‘9’ N
74 fkey52 ‘-‘ ‘-‘ ‘-‘ ‘-‘ ‘-‘ ‘-‘ ‘-‘ N
75 fkey53 ‘4’ ‘4’ ‘4’ ‘4’ ‘4’ ‘4’ ‘4’ N
76 fkey54 ‘5’ ‘5’ ‘5’ ‘5’ ‘5’ ‘5’ ‘5’ N
77 fkey55 ‘6’ ‘6’ ‘6’ ‘6’ ‘6’ ‘6’ ‘6’ N
78 fkey56 ‘+’ ‘+’ ‘+’ ‘+’ ‘+’ ‘+’ ‘+’ N
79 fkey57 ‘1’ ‘1’ ‘1’ ‘1’ ‘1’ ‘1’ ‘1’ N
80 fkey58 ‘2’ ‘2’ ‘2’ ‘2’ ‘2’ ‘2’ ‘2’ N
81 fkey59 ‘3’ ‘3’ ‘3’ ‘3’ ‘3’ ‘3’ ‘3’ N
82 fkey60 ‘0’ ‘0’ ‘0’ ‘0’ ‘0’ ‘0’ ‘0’ N
83 del ‘.’ del del del del del del N
84 nop nop nop nop nop nop nop nop O
85 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O
86 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O

Следующие скан-коды генерируются только на клавиатурах, которые поддерживают и находятся в режиме AT.

SCAN CODE BASE SHIFT CTRL CTRL SHIFT ALT ALT SHIFT ALT CTRL ALT CTRL SHIFT LOCK
87 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O
88 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O
89 nop nop nop nop nop nop nop nop O
90 nop nop nop nop nop nop nop nop O
91 nop nop nop nop nop nop nop nop O
92 nop nop nop nop nop nop nop nop O
93 nop nop nop nop nop nop nop nop O
94 nop nop nop nop nop nop nop nop O
95 nop nop nop nop nop nop nop nop O
96 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O
97 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O
98 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O
99 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O
100 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O
101 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O
102 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O
103 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O
104 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O
105 del del del del del del del del 0
106 nop nop nop nop nop nop nop nop O
107 nop nop nop nop nop nop nop nop O
108 nop nop nop nop nop nop nop nop O
109 nop nop nop nop nop nop nop nop O
110 nop nop nop nop nop nop nop nop O
111 nop nop nop nop nop nop nop nop O
112 nop nop nop nop nop nop nop nop O
113 nop nop nop nop nop nop nop nop O
114 nop nop nop nop nop nop nop nop O
115 nop nop nop nop nop nop nop nop O
116 nop nop nop nop nop nop nop nop O
117 nop nop nop nop nop nop nop nop O
118 nop nop nop nop nop nop nop nop O
119 nop nop nop nop nop nop nop nop O
120 nop nop nop nop nop nop nop nop O
121 nop nop nop nop nop nop nop nop O
122 nop nop nop nop nop nop nop nop O
123 nop nop nop nop nop nop nop nop O
124 nop nop nop nop nop nop nop nop O
125 nop nop nop nop nop nop nop nop O
126 nop nop nop nop nop nop nop nop O
127 nop nop nop nop nop nop nop nop O
128 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O
129 ralt ralt ralt ralt ralt ralt ralt ralt O
130 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O
131 del del del del del del del del 0
132 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O
133 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O
134 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O
135 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O
136 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O
137 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O
138 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O
139 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O
140 ‘/’ nop nop nop ‘/’ nop nop nop O
141 cr cr nl nl cr cr nl nl O

В следующей таблице перечисляются «значения» специальных ключевых слов в файле /usr/lib/keyboard/keys (и в предыдущей таблице). mapkey(ADM) помещает «значение» ключевого слова в буфер управления вводом/выводом во время назначения клавиш. Эти ключевые слова используются только в файле скан-кодов /usr/lib/keyboard/keys для упрощения его чтения.

В следующей таблице перечисляются названия ключевых слов и их десятичные значения, которые могут взаимозаменяться в файле mapkey. Эти названия используются вместо соответствующих численных констант для облегчения чтения таблицы скан-кодов. Но в буфер управления вводом/выводом помещаются только десятичные значения. Они берутся из ascci(5).

Название Значение Название Значение
nul 0 dc1 17
soh 1 dc2 18
stx 2 dc3 19
etx 3 dc4 20
eot 4 nak 21
enq 5 syn 22
ack 6 etb 23
bel 7 can 24
bs 8 em 25
ht 9 sub 26
nl 10 esc 27
vt 11 fs 28
np 12 gs 29
cr 13 rs 30
so 14 ns 31
si 15 del 127
dle 16

Назначение клавиш клавиатуры
Установление соответствия клавиш клавиатуры является составной частью эмуляции терминала. Эта процедура выполняется только для клавиатуры компьютера, но не для удаленных терминалов. Для изменения таблицы соответствий клавиш используйте утилиту mapkey. Чтобы изменить эту таблицу для отдельных каналов (экранов в многоэкранном режиме) используйте программу mapchan(5).

При установке соответствий клавиш клавиатуры значение cmd=GIO_KEYMAP высвечивает текущую таблицу соответствий, а cmd=PIO_KEYMAP помещает готовый буфер на место.

Назначение функциональных клавиш
Для назначения функциональных клавиш используйте утилиту mapstr (см. mapkey(8)). mapstr модифицирует таблицу соответствий функциональных клавиш, в которой эти клавиши определяются.

Не существует ограничения на длину строки, кроме предела самой таблицы, 512 байтов, включая нули. Строки обнуляются введением дополнительных нулевых символов.

Далее приведен список значений функциональных клавиш, устанавливаемых по умолчанию:

Значения функциональных клавиш по умолчанию
Клавиша # Функция Shift
Функция
Ctrl
Функция
Ctrl
Shift
Функция
1 ESC[M ESC[Y ESC[k ESC[w
2 ESC[N ESC[Z ESC[l ESC[x
3 ESC[O ESC[a ESC[m ESC[y
4 ESC[P ESC[b ESC[n ESC[z
5 ESC[Q ESC[c ESC[o ESC[@
6 ESC[R ESC[d ESC[p ESC[[
7 ESC[S ESC[e ESC[q ESC[
8 ESC[T ESC[f ESC[r ESC[]
9 ESC[U ESC[g ESC[s ESC[^
10 ESC[V ESC[h ESC[t ESC[_
11 ESC[W ESC[i ESC[u ESC[‘
12 ESC[X ESC[j ESC[v ESC[ <
Home ESC[H End ESC[F
Up arrow ESC[A Down arrow ESC[B
Page up ESC[I Page down ESC[G
Left arrow ESC[D 5 ESC[E
Right arrow ESC[C Insert ESC[L

Вы можете назначать функциональные клавиши с помощью ioctl(2). Синтаксис имеет вид:

При установке соответствий клавиш клавиатуры значение cmd=GIO_KEYMAP высвечивает текущую таблицу соответствий, а cmd=PIO_KEYMAP устанавливает новую таблицу на место.

Источник

  • код исключения c0000005 windows 7 x64
  • код ключа для windows 10 pro

Вам также понравится

Adblock
detector

Переход на новую операционную систему может показаться сложным или пугающим, но радость от изучения чего-то нового стоит затраченных усилий.

Давайте рассмотрим некоторые важные сочетания клавиш, которые одинаково работают как в Linux, так и в Windows. Хотя Windows и Linux по своей сути различны, вы все равно можете использовать большинство знакомых вам сочетаний клавиш в любой из операционных систем.

Зачем использовать сочетания клавиш?

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

Графический пользовательский интерфейс (GUI) большинства программных систем меняется довольно часто, но основные сочетания меняются редко. Например, доступ к установленным программам из графического интерфейса в Windows XP, Windows 10 и Windows 11 сильно различается, но сочетание клавиш остается прежним, и, вероятно, так будет еще очень долго.

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

1. Экран блокировки

Вы хотите отойти от своего ПК? Не ставьте под угрозу свою безопасность, оставляя компьютер разблокированным. Быстро заблокируйте экран компьютера с помощью сочетания клавиш Super + L, чтобы посторонние не могли получить доступ к вашему компьютеру. После блокировки устройства система попросит ввести пароль для повторного доступа к ПК.

В Linux клавиша Windows на клавиатуре называется клавишей Super, поэтому для единообразия мы будем придерживаться этого правила.

Меню запуска или меню приложений дает вам доступ к установленным программам и панели поиска для быстрого поиска файлов или приложений. Просто нажмите клавишу Super или Super + S и начните вводить текст, чтобы найти нужный файл или приложение.

В Linux программа запуска также дает вам представление о запущенных в данный момент программах.

3. Показать рабочий стол

Если у вас открыто несколько приложений или файлов, но вы хотите быстро перейти на рабочий стол, просто нажмите Super + D. Команда свернет все открытые окна и перенесет вас на рабочий стол. Нажмите Super + D еще раз, чтобы вернуть открытые программы.

4. Переключение между приложениями

Чтобы быстро переключиться на другую открытую программу на вашем ПК, используйте сочетание клавиш Alt + Tab. Продолжайте нажимать на Tab, чтобы выбрать следующее открытое приложение, и отпустите, как только искомое приложение будет выбрано.

Чтобы вернуться назад, нажмите Alt + Shift + Tab. Кроме того, вы можете использовать сочетание Super + Tab для быстрого переключения между открытыми приложениями. В Windows ярлык Super + Tab также показывает ваши текущие виртуальные рабочие столы.

5. Разворачивание и свертывание окна

Используйте клавиши Super + стрелка вверх, чтобы увеличить размер окна программы, и Super + стрелка вниз, чтобы уменьшить окно. Это удобно, когда вы хотите, чтобы несколько окон программы были открыты одновременно.

6. Получение помощи

И Windows, и Linux хорошо документированы, как и большинство программ, созданных для них. Сверните все открытые программы (Super + D), затем нажмите F1, и вы получите документацию по вашей операционной системе.

Вы также можете использовать клавишу F1, чтобы получить справку по конкретному приложению. Например, нажатие F1 в окне веб-браузера откроет документацию вашего браузера или страницы справки.

7. Закрытие программы

Используйте сочетание клавиш Alt + F4, чтобы быстро закрыть открытую программу в Windows и Linux.

8. Разделить окна

Часто вам может потребоваться просмотреть приложения рядом для сравнения или легкого переключения между ними. Используйте сочетание клавиш Super + стрелка влево, чтобы быстро привязать окно программы к левой стороне, и Super + стрелку вправо, чтобы привязать окно вправо. Программы будут занимать одинаковое место в окне.

9. Изменение языка клавиатуры

Если на вашем компьютере установлено несколько языковых пакетов, вы можете легко изменить текущий язык с помощью сочетания клавиш Super + пробел.

Одной из самых распространенных задач среди пользователей ПК является редактирование. Редактируем документы, скрипты, программный код, картинки и т. д. Используйте сочетание клавиш Ctrl + X, чтобы вырезать текст или файл. Чтобы скопировать текст или файл, используйте клавиши Ctrl + C, а затем используйте Ctrl + V, чтобы вставить скопированное или вырезанное содержимое.

Кроме того, чтобы быстро переименовать файл, выделите его и нажмите F2.

Повысьте свою производительность с помощью сочетаний клавиш

Мы рассмотрели несколько важных сочетаний клавиш, которые можно использовать как в Linux, так и в Windows, но их гораздо больше. Изучение сочетаний клавиш для рутинных задач может сэкономить массу времени и повысить вашу производительность при работе с ПК.

2264920cookie-check10 сочетаний клавиш, которые работают как в Windows, так и в Linux

Автор публикации

Комментарии: 6Публикации: 1203Регистрация: 29-04-2020

Понравилась статья? Поделить с друзьями:

Вот еще несколько интересных статей:

  • Как назначить монитор основным в windows 7
  • Как называется программа для скриншотов на компьютер windows 10
  • Как называется интерфейс используемый в windows 7 ответ
  • Как называется программа для рисования на компьютере windows 7
  • Как назначить комбинации клавиш на клавиатуре в windows 10

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии