Ctrl+Space

先日の Update から Fedora 15 のキーボードで「全角/半角」キーが使えない。
検索すると全員か、私は素直に Ctrl+Space を利用しながら気長に修正を待つよ。

ところで Ctrl+Space って Gedit のスニペット挿入ショートカットだったんだが。
ついでに Visual Studio や monodevelop のコード保管もこのキー。

なので GNOME 2 の頃は iBus の設定からこのキーを削除するのが儀式だったんだけど…
iBus の設定に無いし Gedit もまったく反応しない、どうなっているの…
Ubuntu 11.04 の Gedit 2 は変わっていないな、GNOME 3 ではどこで指定するのだ?

追記
2011.07.10 のアップデートで以前の方式に戻したっぽい、反応は鈍くなったけど。
というか Ctrl+Space がデフォルトで利用できなくなって Gedit で使えるように。
自分で iBus の設定を加える必要があるみたい。

更に追記 2011.07.14 のアップデート
Zenkaku_Hankaku から Releace を外さないと認識しなくなっている…
製作者も迷走しているのだろうか、ごくろうさま。

追記おわり

Common F15 bugs – FedoraProject

なんとかならないかと色々探したり試したりしていて発見。
試しに昔懐かしい Alt+「全角/半角」 を何気に押してみたら

複数タブは無理だけど複数ウインドウならこのキーで選択できる。
英語キーボードは持っていないから解らないけど、もしかしてこの機能が影響している?

キーコードを調べるのに xev というコマンドがある。

端末から起動して何かシグナルが発生すると標準出力に吐き出される。
Zenkaku_Hankaku はしっかり認識しているのか、キーコードが原因では無いな。
というか xev って便利だな、なるほどこんなシグナルが発生しているのね。
今後のアプリ開発に利用させてもらおう。

ついでに
/etc/X11/xorg.conf.d/00-system-setup-keyboard.conf
/etc/sysconfig/keyboard
どちらも jp106 なのに

$ setxkbmap -print
xkb_keymap {
	xkb_keycodes  { include "evdev+aliases(qwerty)"	};
	xkb_types     { include "complete"	};
	xkb_compat    { include "complete+japan"	};
	xkb_symbols   { include "pc+jp+inet(evdev)+terminate(ctrl_alt_bksp)"	};
	xkb_geometry  { include "pc(pc104)"	};
};

となるのだがコレらは無視され evdev というものが自動認識するらしい。
Ubuntu の頃は自動認識に問題が何もなかったので調べようとも思った事が無かった。

/usr/share/X11/xkb/keycodes/evdev
が割り当て表みたい、よくある CapsLock と Ctrl を入れ替えるには

$ beesu gedit /usr/share/X11/xkb/keycodes/evdev

で開いて 37 と 66 を入れ替えて再ログインすればイケた、なるほど。
xmodmap とかはもうどうでもいいんだね。

cat /proc/bus/input/devices
でマウスやキーボード等のデバイスを確認できる。

無線マウスのレシーバであるとかも解るのか、なるほど。
解決はしなかったけどおかげで色々と知ることがあってよかった。

でもやっぱり Ctrl+Space では慣れていなくて間違える…