wiki Wiki | contuct me Contuct me |

Menu

III.3. 半角/全角キーで日本語のON/OFFをおこなうには?

Windowsパソコンでは日本語入力の切替はAlt+半角/漢字 キーまたは、半角/漢字キーのみで行います。が、Linuxというよりkinput2 + canna の環境ではCtrl + o, Shift + Space等で切り替えるようになっています。 102キーボードを前提にしてそうな感じはしますが、自分が使用しているのは106の日本語キーボード なので、半角/漢字キーで切替ができるとうれしいです。

まず、最初にキーコードの調査を行い、キーの割付を変えることで実現していこうと思います。

III.3.1. キーコードの調査を行う。

xevコマンドを使用して、半角/漢字キーのキーコード を調べます。

				
$ xev
				
			

半角/全角キーを押下すると、以下のようなメッセージが出力されます。

				
KeyPress event, serial 26, synthetic NO, window 0x2800001,
    root 0x3a, subw 0x0, time 2717661, (680,202), root:(695,298),
        state 0x0, keycode 49 (keysym 0xff2a, Zenkaku_Hankaku),
    same_screen YES,
        XLookupString gives 0 bytes:  " "
				
			

キーコードは49のようです。

III.3.2. kinput2 + canna の場合

~/.xsession に以下の設定を行います。

				
xmodmap -e "keycode 49 = Zenkaku_Hankaku" 
				
			

~/.cannaに以下の設定を追加します。

				
(set-key 'alpha-mode "\Zenkaku_Hankaku" 'japanese-mode)
(global-set-key "\Zenkaku_Hankaku" 'alpha-mode)
				
			

この設定でいいはずなんですが、半角/漢字キーで日本語入力の起動 はできましたが、終了が出来ませんでした。

III.3.3. uimの場合

uim の場合はかなり簡単でした。

~/.xsession に以下の設定を行います。

				
xmodmap -e "keycode 49 = Zenkaku_Hankaku" 
				
			

uim-gtk2.0 に含まれる uim-pref-gtk で設定できます。

				
$ uim-pref-gtk 
				
			

全体キー設定 1 -> [全体] オン (オフ) で行ってください。