88 lines
3.5 KiB
Org Mode
88 lines
3.5 KiB
Org Mode
|
#+TITLE: ryuk
|
||
|
#+STARTUP: showall
|
||
|
|
||
|
* Introduction
|
||
|
|
||
|
I've been using [[http://colemak.com][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 [[http://www.kaufmann.no/roland/dvorak/index.html][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 [[https://www.trulyergonomic.com/store/index.php][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.
|
||
|
|
||
|
* Installation
|
||
|
|
||
|
** 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:
|
||
|
|
||
|
#+BEGIN_SRC conf
|
||
|
# ...
|
||
|
|
||
|
Section "InputClass"
|
||
|
Identifier "evdev keyboard catchall"
|
||
|
MatchIsKeyboard "on"
|
||
|
MatchDevicePath "/dev/input/event*"
|
||
|
Driver "evdev"
|
||
|
Option "XkbLayout" "ryuk"
|
||
|
EndSection
|
||
|
|
||
|
# ...
|
||
|
#+END_SRC
|
||
|
|
||
|
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~:
|
||
|
|
||
|
#+BEGIN_SRC sh
|
||
|
KEYMAP=ryuk
|
||
|
#+END_SRC
|
||
|
|
||
|
This should work at least on systems that use systemd. I don't know
|
||
|
how other init systems set it.
|