Блок предназначен для работы с клавиатурным вводом.
| Элемент | Способы использования | Описание | 
|---|---|---|
| codes | JS | Предоставляет объект, содержащий набор констант – имен часто используемых клавиатурных кодов. | 
| Элемент | Имя | Тип | 
|---|---|---|
| codes | BACKSPACE | {String} | 
| TAB | {String} | |
| ENTER | {String} | |
| CAPS_LOCK | {String} | |
| ESC | {String} | |
| SPACE | {String} | |
| PAGE_UP | {String} | |
| PAGE_DOWN | {String} | |
| END | {String} | |
| HOME | {String} | |
| LEFT | {String} | |
| UP | {String} | |
| RIGHT | {String} | |
| DOWN | {String} | |
| INSERT | {String} | |
| DELETE | {String} | 
Блок реализован в технологиях:
jscodesПредоставляет объект, содержащий набор констант – имен часто используемых клавиатурных кодов.
Тип: {String}.
Значениями имен (свойств объекта) являются коды клавиш. Использование осмысленных имен вместо кодов клавиш делает код понятнее.
Например, метод _onKeyDown использует имена клавиш UP и DOWN при проверке поля keyCode объекта события:
modules.define(
    'input',
    ['i-bem__dom', 'keyboard__codes'],
    function(provide, bemDom, keyCodes) {
provide(bemDom.decl(this.name, /** @lends input.prototype */{
    onSetMod : {
        'js': {
            inited: function() {
                this.bindTo('keydown', this._onKeyDown);
            }
        }
    },
    _onKeyDown : function(e) {
        if((e.keyCode === keyCodes.UP || e.keyCode === keyCodes.DOWN) && !e.shiftKey) {
            // ...
        }
    }
}));
});
Доступен следующий набор свойств:
BACKSPACETABENTERCAPS_LOCKESCSPACEPAGE_UPPAGE_DOWNENDHOMELEFTUPRIGHTDOWNINSERTDELETE