Linux console is the terminal you see after hitting ctrl+alt+F[1..6]. Terminal emulators are GUI apps under X, such as xterm, guake, etc. You need to be clear which one you want to perform the remapping, because they have different configuration for keyboard mapping.
Keycodes is the identifier we will be using to distinguish each key. (How to
obtain keycodes is covered in [ArchWiki].) Reprint from the same [ArchWiki]:
Note that the keycodes are different for Linux console and Xorg. Use the appropriate tool to determine the desired value.
It brings out one text menu to set the main keyboard layout. (Fine tunning comes
after.) This command basically write your preference to
I use Colemak layout, but I still want Capslock to function like Control, so I
have to do this kind of mapping manually (tunning).
/etc/kbd/remap is made
console-setup, so head to
/etc/console-setup/remap.inc to do
your remapping. . The following is basically my
keycode 58 = Control # capslock keycode 100 = Return # right alt keycode 97 = Caps_Lock # right ctrl
Debian really tries hard to make everyone’s life easier. In this case, it’s the
/etc/default/keyboard, that provides one interface to change the keyboard in
both Linux console and terminal emulators. Just use Debian, if you don’t
want to spend too much time on configuring your box. The following is for
people who have more spare time and curious about what’s happening behind the
briefs on how to use
loadkeys and other related stuff.
xmodmap is responsible for keycodes translation. Similar to previous case, we
have one tool,
xev, to identify keycodes.
- Nocap This guy finds capslock repellent, but I do use it sometimes.