assets | ||
kbd | ||
windows | ||
xkb | ||
README.org |
ryuk
Introduction
I've been using colemak for quite a while now and I really like it. The fact
that basically only the letters change position (aside from ;
and :
) really
makes learning it easier than some alternatives would.
I came across Programmer Dvorak a little while ago, and found the idea of having symbols on the keyboard without needing the Shift key very enticing. It made me think real hard about maybe learning Dvorak after all, even though I'd previously chosen colemak because it didn't change the places of any symbols and such.
I decided against it, though. I've invested quite a few hours getting proficient with colemak, and I'd hate for that to have been in vain. So I decided to try and change colemak's symbol positions, or some of them anyway.
I didn't change the order of the number keys, though Shift is now required to use them, because I didn't like the idea. These numbers have been ingrained into my brain since the beginning of time, or at least ever since I first sat behind a PC. Reading the Programmer Dvorak page makes me believe that there is good reason to change their order, but I thought that any benefits gained would not outweigh the benefit of blindly knowing where they are. However, it is of course possible that this may change in the future, since I also thought something similar when I first switched to colemak, but then about symbol keys in general.
I also didn't shift the number keys one place to the right, as Programmer
Dvorak does. This is because even though I'm sure that that would work very
well on a standard keyboard layout, it would ruin the symmetric properties of
my Truly Ergonomic Keyboard. Right now the (
and )
are both placed directly
above my index fingers, and since I spend quite a bit of my free time writing
various forms of Lisp code that is extra cool.
This image was created with the Keyboard Layout Editor. This repository contains the source code for it.
Installation
Linux
On Linux there's 2 ways you can install the keyboard layout. /ryuslash/ryuk/src/branch/master/X11 for the graphical environment and /ryuslash/ryuk/src/branch/master/TTY for the non-graphical environment.
X11
To install and use the X11 keyboard, copy the xkb/ryuk
file to where XKB
looks for these files. In my case this is /usr/share/X11/xkb/symbols
. Once
put in the proper place, next to, for example, us
, set your XkbVariant
to
ryuk
. For example, I have in my /etc/X11/xorg.conf.d/10-evdev.conf
file the
following:
# ...
Section "InputClass"
Identifier "evdev keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
Option "XkbLayout" "ryuk"
EndSection
# ...
Since your distribution may have Xorg configured differently, you may have
to specify it in a different file or a different section, but please note
that only the line starting with Option
was put there by me.
TTY
To install the TTY keyboard layout you should gzip the kbd/ryuk.map
file,
which can be achieved by running make
from the kbd
map, and put the
resulting file where the kbd utilities can find them. In my case this is
/usr/share/kbd/keymaps/i386/colemak/
, and I choose the colemak
directory
because the ryuk
files are based directly off the colemak files.
Once put in the proper place you should specify that the TTY should use your
keymap by putting the following in your /etc/vconsole.conf
:
KEYMAP=ryuk
This should work at least on systems that use systemd. I don't know how other init systems set it.
Windows
On Windows you will need to install the Microsoft Keyboard Layout Creator 1.4
to be able to compile the keyboard layout. Once installed open the ryuk.klc
file in it and go to Project -> Build DLL and Setup Package. Once this has
finished it'll ask you if you want to open the directory it's built the files
in (which should be %USERPROFILE%\Documents\ryuk
). Go to that directory and
run setup.exe
. After the installation is finished you'll have to restart
Windows and then you can start using the keyboard layout.