Yellow Rabbit

Arteck HB030 клавиатура и нормальный Escape

Возвращение клавиши Escape на клавиатуру Arteck HB030 bluetooth

Верхний ряд клавиш на bluetooth клавиатуре Arteck HB030 по умолчанию работает как мультимедийные клавиши, чтобы получить Escape, F1-F10 нужно нажать клавишу Fn и одну из этих клавиш. Мне, как приверженцу Vim, это не очень удобно.

Arteck HB030

Далее идём почти по тому же пути как и ранее. Создадим каталог для конфигурационных файлов:


mkdir -p ~/.config/xkb

Записываем в файл hb030 конфигурацию текущей раскладки клавиатуры:


setxkbmap -layout us,ru -option grp:toggle -option grp_led:caps -print > ~/.config/xkb/hb030

Получаем файл типа такого:


xkb_keymap {
	xkb_keycodes  { include "xfree86+aliases(qwerty)"	};
	xkb_types     { include "complete"	};
	xkb_compat    { include "complete+ledcaps(group_lock)"	};
	xkb_symbols   { include "pc+us+inet(pc105)+ru:2+group(toggle)" };
	xkb_geometry  { include "pc(pc105)"	};
};

Добавляем строку key <I180> { [ Escape, Escape ] };. <I180> это описание левой верхней клавиши на клавиатуре Arteck HB030. Я её подсмотрел в выводе команды xev и файле /usr/share/X11/xkb/keycodes/evdev.

Отдельно скажу про key <AC10> { [ colon, semicolon ] }; - позволяет получать : без нажатия Shift. Пока не знаю окажется ли это удобнее, поскольку кроме как в Vim двоеточие довольно часто нужно в протоколах (ftp://, https:// и т.д.) и именах машин (scp fc720:aabb.txt ./). Посмотрим. Как бы то ни было вот результирующий файл:


xkb_keymap {
	xkb_keycodes  { include "evdev+aliases(qwerty)"	};
	xkb_types     { include "complete"	};
	xkb_compat    { include "complete+ledcaps(group_lock)"	};
	xkb_symbols   { include "pc+us+ru:2+inet(evdev)+group(toggle)"	
	  key <AC10> { [ colon, semicolon ] };
	  key <I180> { [ Escape, Escape ] };
	};
	xkb_geometry  { include "pc(pc105)"	};
};

Активировать новую раскладку можно командой xkbcomp ${HOME}/.config/xkb/hb030 ${DISPLAY}. Её можно записать в .xinitrc или .xsession.