как узнать коды клавиш на клавиатуре

Скан-код: Ремаппинг клавиш на клавиатуре

Что такое Скан-код

Спецификация для Windows.
При нажатии любой клавиши контроллер клавиатуры вырабатывает скан-код, соответствующей позиции клавиши, который передаются в компьютер. Служебные коды, которые может вырабатывать контроллер клавиатуры, передаются для обработки подпрограммам BIOS. В буфере клавиатуры для кода клавиши отводится по 2 байта, т. е. он рассчитан на 16 символов.

Как определить Скан-код клавиши

Узнать Скан-код необходимой для ремаппинга клавиши вы можете здесь, а если у вас супер новая клавиатура с кнопками космического происхождения, то отловить скан-код вы можете используя программу «KeyboardTest» от разработчика Passmark Software. Программка платная, но бесплатным триалом. Или OpenSource Программу SharpKeys. Она потребовалась для определения скан-кода левой «\», так как многие наивно полагали что сигналы у обеих одинаковые, а значит и не подлежат ремаппингу. На деле оказалось не так.

И так, мы определили скан-код нашей незадачливой кнопки, теперь нам нужно найти скан-код «LShift». Его можно найти по данной выше ссылке и он равен: 2A.00

Ремаппинг клавиш

Есть куча приложений которые делают этот ремаппинг, многие за базу принимают существующие скан-коды, многие не имеют сканера, что бы определить скан-код клавиши которой нет в базе. Да и устанавливать лишнее приложение очень не хотелось. По-гуглив я остановился на возможностях Windows. а точнее редактора реестра (Пуск-Выполнить: regedit). Или вышеупомянутую программу SharpKeys, которая имеет GUI и выполняет такую же замену в реестре

1. В ветке
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout
создайте бинарный параметр с именем «Scancode Map»
2. В параметр «Scancode Map» записываем следующие значения:
00.00.00.00.00.00.00.00.02 — девятый байт (02) в этой записи означает количество клавиш которое мы будем менять (и равен количеству клавиш +1) в нашем случае это 02, так как мы меняем значения одной клавиши. После этого вписываем еще три «пустых» байта, и теперь наш параметр выглядит так:
00.00.00.00.00.00.00.00.02.00.00.00.
Поскольку мы уже определили все Скан-коды, то продолжая наш параметр, нам следует указать скан-код значения новой кнопки (в нашем случае это 2A.00), а затем скан-код старой (заменяемой) кнопки 56.00. Теперь необходимо закрыть эту функцию четырьмя «пустыми» байтами, то есть 00.00.00.00:

3. Перезагружаем компьютер и пользуемся нашими новыми кнопками.

PS: Если нужно сделать ремаппинг не на всем ПК, а только в вашем сеансе, то значения необходимо менять в HKEY_CURRENT_USER\SYSTEM\CurrentControlSet\Control\Keyboard Layout

UPD: Если вы боитесь работать в реесте, то создайте текстовый файл с расширением *.reg, и впишите туда следующее:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
«Scancode Map»=hex:00,00,00,00,00,00,00,00,02,00,00,00,2a,00,56,00,00,00,00,00
затем сохраните, запустите, и перезагрузите ПК.

UPD2: Перенос Скриншотов на
1. Левый Win-key выглядит так:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
«Scancode Map»=hex:00,00,00,00,00,00,00,00,02,00,00,00,37,E0,5B,E0,00,00,00,00
Правый Win-key выглядит так:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
«Scancode Map»=hex:00,00,00,00,00,00,00,00,02,00,00,00,37,E0,5C,E0,00,00,00,00

Источник

События клавиатуры в JavaScript

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

Читайте также:  игра prey чит коды

События клавиатуры

В JS для клавиатуры используется 3 основных события:

Для избежания повторных вызовов «keydown» и «keypress» используйте свойство «repeat». Подробнее рассмотрим его позже.

В примерах использовался метод «addEventListener», но можно встретить и другие варианты:

Получение свойств событий

Для получения информации о клавише обратитесь к свойствам объекта «event».

Свойства key и keyCode

key — возвращает значение нажатой клавиши в виде строки. Например, «F», «5» или «Enter».

keyCode — возвращает числовой код. Для события «keypress» вернёт ASCII-код нажатого символа.

Примечание. Цифры на верхнем и боковом блоке клавиатуры имеют разные «keyCode».

Коды основных функциональных клавиш:

Клавиша Key keyCode
Ввод Enter 13
Стереть Backspace 8
Удалить Delete 46
Пробел Space 32
Табулятор Tab 9
Esc Escape 27
Стрелка влево ArrowLeft 37
Стрелка вверх ArrowUp 38
Стрелка вправо ArrowRight 39
Стрелка вниз ArrowDown 40
Shift Shift 16
Ctrl Control 17
Alt Alt 18

Хорошей практикой в JavaScript считается использование «key», а не «keyCode». Это повышает читаемость кода и избавляет от необходимости запоминать соответствие кодов их значениям.

Свойства code и charCode

Актуальны только для события «keypress».

Не поддерживаются IE и старыми версиями других браузеров.

Свойства altKey, ctrlKey, shiftKey

Свойство type

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

Свойство repeat

Возвращает логическое «true», если событие уже один раз отработало и автоматически вызывается снова. Подобная ситуация возникает при зажатии клавиши на длительное время — «keydown» и «keypress» начинают срабатывать повторно.

Пример проверки ввода в Input

Рассмотрим небольшой пример, в котором разрешим ввод в текстовое поле только нуля и единицы. Учитываем возможность стирания, удаления и табуляции.

Метод «preventDefault()» запрещает действие по умолчанию.

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

Коды клавиш

Поставьте курсор в поле ввода и нажмите любую клавишу:

Источник

Коды клавиш клавиатуры

Таблица кодов клавиш, которыми можно пользоваться при проверке параметра Key в обработчиках событий OnKeyDown и OnKeyUp :

Клавиша

Дес.
число

Шест.
число

Символическое
имя

Сравнение по
функции ord

F1 112 $70 VK_F1 F2 113 $71 VK_F2 F3 114 $72 VK_F3 F4 115 $73 VK_F4 F5 116 $74 VK_F5 F6 117 $75 VK_F6 F7 118 $76 VK_F7 F8 119 $77 VK_F8 F9 120 $78 VK_F9 F10 121 $79 VK_F10 пробел 32 $20 VK_SPACE BackSpace 8 $8 VK_BACK Tab 9 $9 VK_TAB Enter 13 $0D VK_RETURN Shift 16 $10 VK_SHIFT Ctrl 17 $11 VK_CONTROL Alt 18 $12 VK_MENU CapsLock 20 $14 VK_CAPITAL Esc 27 $1B VK_ESCAPE Insert 45 $2D VK_INSERT PageUp 33 $21 VK_PRIOR PageDown 34 $22 VK_NEXT End 35 $23 VK_END Home 36 $24 VK_HOME Стрелка назад 37 $25 VK_LEFT Стрелка вверх 38 $26 VK_UP Стрелка вперед 39 $27 VK_RIGHT Стрелка вниз 40 $28 VK_DOWN Delete 46 $2E VK_DELETE PrintScreen 44 $2C VK_SNAPSHOT ScrollLock 145 $91 VK_SCROLL Pause 19 $13 VK_PAUSE NumLock 144 $90 VK_NUMLOCK 0,) 48 $30 Ord(‘0’) 1! 49 $31 Ord(‘1’) 2@ 50 $32 Ord(‘2’) 3# 51 $33 Ord(‘3’) 4$ 52 $34 Ord(‘4’) 5% 53 $35 Ord(‘5’) 6^ 54 $36 Ord(‘6’) 7& 55 $37 Ord(‘7’) 8* 56 $38 Ord(‘8’) 9( 57 $39 Ord(‘9’) `
Читайте также:  коды на гта сан андреас русские машины коды русская версия

192 $C0 -_ 189 $BD =+ 187 $BB [ < 219 $DB ]> 221 $DD :; 186 $BA ‘” 222 $DE | 220 $DC , 190 $BE /? 191 $BF A a 65 $41 Ord(‘A’) B b 66 $42 Ord(‘B’) С с 67 $43 Ord(‘С’) D d 68 $44 Ord(‘D’) E e 69 $45 Ord(‘E’) F f 70 $46 Ord(‘F’) G g 71 $47 Ord(‘G’) H h 72 $48 Ord(‘H’) I i 73 $49 Ord(‘I’) J j 74 $4A Ord(‘J’) K k 75 $4B Ord(‘K’) L l 76 $4C Ord(‘L’) M m 77 $4D Ord(‘M’) N n 78 $4E Ord(‘N’) O o 79 $4F Ord(‘O’) P p 80 $50 Ord(‘P’) Q q 81 $51 Ord(‘Q’) R r 82 $52 Ord(‘R’) S s 83 $53 Ord(‘S’) T t 84 $54 Ord(‘T’) U u 85 $55 Ord(‘U’) V v 86 $56 Ord(‘V’) W w 87 $57 Ord(‘W’) X x 88 $58 Ord(‘X’) Y y 89 $59 Ord(‘Y’) Z z 90 $5A Ord(‘Z’)

Правая клавиатура при выключенной клавише NumLock:

Клавиша

Дес.
число

Шест.
число

Символическое
имя

Источник

[В закладки] Кунг-фу на клавиатуре. Искусство сочетать клавиши

Сочетания клавиш для тех, кто хочет войти в IT и не только.

Содержание

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

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

В конце вы увидите, как все эти знания можно использовать при работе с самым популярным на данный момент текстовым редактором Visual Studio Code.

Не пытайтесь просто запомнить все, что написано в статье. Обязательно попробуйте понажимать все сочетания клавиш, о которых вы не знали! А потом возвращайтесь время от времени, чтобы освежить память.

Если вы пользователь системы Windows, то вы обязаны дочитать до конца.

Базовые сочетания

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

Графика

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

Эти сочетания мыши критичны для тех, кто работает с графическими элементами.

Терминал Linux

Навигация в терминале не очень удобная. Для того, чтобы немного облегчить жизнь, при работе с этим инструментом, можно воспользоваться скриптом, о котором будет рассказано в разделе AutoHotkey.

Windows

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

Читайте также:  болезнь крона код мкб 10 взрослые

Сочетания

Проводник

Утилиты

Chrome

В хроме исправно работают многие из сочетаний, описанных в Базовые сочетания.

Сочетания мыши

Developer tools

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

Базовые сочетания плюс те, которые используются в Chrome составляют большую часть наиболее распространенных сочетаний. Это значит, что, подобные сочетания вы сможете применить в большинстве программ, с которыми работаете. Поэтому многие «интуитивные» сочетания я буду опускать.

Vimium

Вот что это нам дает.

Внимание на регистр символов.

Перемещение через сочетания как в виме

Используйте привычные сочетания вима для движения по странице.

Панель поиска В вимиуме очень удобная панель поиска, которая может искать:

Табы

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

Vimium hotkeys

В интернете можно найти много аналогов для вашего браузера, например, для Firefox.

Сочетания, которых нет

Хакерский редактор

Мне всегда нравились идеи, заложенные в основу редактора мозга кода Vim.

Vim (сокр. от Vi Improved, произносится «вим») — кошмар для случайного пользователя. Если его удаётся в конце концов закрыть, то вздыхаешь с облегчением и твёрдой уверенностью, что больше не будешь запускать эту программу ни разу в жизни. (c) Материал из Викиучебника

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

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

Этой же цели цели хотел добиться и я, но без привязки к Виму, с его недружелюбными режимами.

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

AutoHotkey

AutoHotkey — свободно распространяемый язык для автоматизации выполнения задач в Microsoft Windows. AutoHotkey является языком программирования сценариев, приспособленным к легкому назначению и переназначению горячих клавиш, включая кнопки мыши и джойстика.

Короче говоря, AHK позволяет нам автоматизировать рутинные задачи, создавать программы с графическим интерфейсом или просто автоматически писать Sincerely Yours в конце электронного письма. Чтобы профессионально лениться с помощью AHK нужно существенно поработать головой перед этим.

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

CapsKeys

Вот, как выглядит часть моего скрипта

А вот что он делает

capsKeys keyboard layout

Источник

Онлайн платформа