LoginSignup
2
1

More than 5 years have passed since last update.

JIS配列を利用してプログラミングに最適なDvorak配列を作成する XKB JIS Dvorak

Last updated at Posted at 2017-01-01

私はCとPythonを学習中の初心者ですが,キーボードには無駄にこだわります.

環境:

OS:Ubuntu Gnome 16.04 LTS
Keyboard: FILCO Majestouch2S

JIS Dvorak

jis_dvorak_en.png

Custom keyboard layout for JIS keyboards based on the Dvorak

Ubuntu Gnome 16.04上で作成した,JIS配列キーボード用の設定ファイルです.


xkb/geometry ファイルについては,下記を参照してください.


AltGr(Level3_Shiftキー)とMetaキーを使ってひとつのキーに最大で6種類の機能を割り当てられるこのレイアウトは,ホームポジションと上下2段の30個のキーを使ってアルファベット, 数字, 記号, カーソルキー, Home, End, PageUp, PageDown, Ctrl+Z, X, C, V へのリダイレクトを入力できます.

左手親指に割り当てられたShiftキーは, "どちらの手の小指でShiftを押すかを判断し,届く指で入力したいキーを押す" という一連の動作を簡略化し,より素早く大文字を入力できます.

xkb/keycodes/evdev は,ScrollLockとNumLockのインジケータの位置を入れ替え,テンキーの無い91キーボードでNumLockを使用しやすくします.キーボードのScrollLock用のLEDがNumLockと連動して光ります.

この設定ファイルはxkb/symbols/pc(日本語,英語のどのレイアウトを選択していても読み込まれる修飾キーなどの配置を決めるファイル)とデフォルトのDvorak配列を上書きします.

このレイアウトを有効にするには,/usr/share/X11/xkb/ 以下にファイルを上書きもしくは追加し,再ログインします.


AltGr / NumLock+Shift / NumLock+AltGr

level3_numlock+shift_numlock+level3.png


AltGr+Shift / NumLock / NumLock+AltGr+Shift

level3+shift_numlock_numlock+level3+shift.png


Meta

meta.png


Japanese Dvorak

jis_dvorak_jp.png


カスタマイズ

xkb/symbols/us(dvorak)の設定は下記のような構造になっています.

key <AD08> {
    symbols[Group1]=
                  // Level1       Level2          Level3        Level4          Level5
                  //   Base        Shift           AltGr             -     AltGr+Shift
             [            c,           C,      braceleft,           Up,      braceleft ],
    actions[Group1]= 
             [   NoAction(),  NoAction(),     NoAction(),   NoAction(),     NoAction(),

                       RedirectKey(key=<UP>, clearmods=Lock+Mod3),  //  Level6  Meta
                       RedirectKey(key=<UP>, clearmods=Lock+Mod3) ] //  Level7  Meta+Shift
    };

Level4はkeyboard layout chartを見やすくするために用意した実際には使われないシンボルです.

MetaキーにはMod3を割り当ててあります.

xkb/symbols/us内のbasicセクション(QWERTY配列)やデフォルトのDvorak配列のシンボルを参考にし,お使いの言語に合わせてLevel3~Level7のシンボルもしくはアクションを編集してください. カーソルキー,修飾キー付きの動作,および数字キーの入力は,RedirectKeyを使ったほうがちゃんと動きます.

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1