Dvorak
From Wikipedia:
- Dvorak is a keyboard layout for English patented in 1936 by August Dvorak and his brother-in-law, William Dealey, as a faster and more ergonomic alternative to the QWERTY layout (the de facto standard keyboard layout). Dvorak proponents claim that it requires less finger motion and as a result reduces errors, increases typing speed, reduces repetitive strain injuries, or is simply more comfortable than QWERTY.
Setting Dvorak Layout
See Keyboard configuration in console or Keyboard configuration in Xorg for configuration details.
For the virtual terminal, dvorak and the regional keyboard are combined into one keymap. But Xorg lists dvorak as variant of your regional keymap.
The us
Dvorak keymaps for the virtual terminal are:
dvorak
, Standarddvorak-l
, Left handed Dvorakdvorak-r
, Right handed Dvorakdvorak-programmer
, Programmer Dvorak
The us
Dvorak keymaps for Xorg are:
dvorak
, Standarddvorak-l
, Left Handed Dvorakdvorak-r
, Right Handed Dvorakdvp
, Programmer Dvorakdvorak-intl
, International Dvorakdvorak-classic
dvorak-alt-intl
us
layout, you need to pass them to XkbVariant
variable. See Keyboard configuration in Xorg#Setting keyboard layout for an explanation.For international users
French
The french variant is called Bépo.
Swedish
Swedish people interested in trying dvorak can find the swedish "version", called svorak, at svorak.ahall.se! To convert to svorak in X you do not need to download any additional files from svorak.ahall.se.
Spanish
In console, specify dvorak-es
instead of dvorak
to use the Spanish dvorak variant.
In Xorg, specify es
as XkbLayout
and dvorak
as XkbVariant
.
United Kingdom
In console, specify dvorak-ukp
(available from dvorak-ukpAUR) instead of dvorak
to use the United Kingdom dvorak variant with ISO/IEC 9995-1 punctuation.
In Xorg, specify gb
as XkbLayout
and dvorakukp
as XkbVariant
.
Program specific rebinding
These are some simple and sane sugguestions for rebinding in keyboard-centric programs. Since Dvorak's keys lean more to the right of the keyboard, the home row used here is htns
.
Vim
~/.vimrc
noremap h <left> noremap t <down> noremap n <up> noremap s <right> noremap l n noremap L N
:help n
See also Vim Wiki, if you want a more extreme approach.
Mutt
~/.config/mutt/muttrc
bind index t next-entry bind index n previous-entry bind index s display-message bind index G last-entry bind index gg first-entry bind pager,attach h exit bind pager t next-line bind pager n previous-line bind pager s view-attachments bind browser h goto-parent bind pager,browser gg top-page bind pager,browser G bottom-page
Less
~/.lesskey
t forw-line n back-line l repeat-search L reverse-search
To apply settings you have to run lesskey
.
Zathura
~/.config/zathura/zathurarc
map h scroll left map t scroll down map n scroll up map s scroll right map l search forward map L search backward
Qutebrowser
~/.config/qutebrowser/config.py
config.bind('h', 'scroll left') config.bind('t', 'scroll down') config.bind('n', 'scroll up') config.bind('s', 'scroll right') config.bind('H', 'back') config.bind('T', 'tab-prev') config.bind('N', 'tab-next') config.bind('S', 'forward') config.bind('l', 'search-next') config.bind('L', 'search-prev') config.bind('e', 'hint all')