OpenSUSE10.3にバージョンアップしてふと気がついたが、VMware仮想マシン上のWindowsXPでアンダースコア(_)が入力できなくなった。確か前はできていたはず。Windows2000でも同じ。どうやら仮想マシンのOSには関係ないようだ。
確か過去にも同じようなことがあったような・・・と思ったらあった。しかし、既にconfigには
は設定されている。これではだめなんだろうか。色々調べた結果、
の1行だけをconfigに書くと入力できるようになった。んんん・・・なんだか釈然としない。VMwareのマニュアルによるとxkeymap.nokeycodeMap = trueはXFree86(今はXorg)のキーコードマッピングを使わないという設定らしい。ということはX抜きのLinuxのコンソールのキーマッピングが有効になるということだろうか。
それに対しxkeymap.keycode.211 = 0x073はキーコードマッピングを無理やり定義してやるという意味らしい。211はXのキーマップ。xevとかxmodmapとかで使われるやつだ。0x073はv-scanコードと言ってVMwareが内部的に使用しているらしい。
なんだかどーでもいいけど、コンピュータの世界は文字コードとか、キーボードとかの仕様がややこしい。結局、昔からの仕様のつぎはぎだからこうなるのだろう。
確か過去にも同じようなことがあったような・・・と思ったらあった。しかし、既にconfigには
xkeymap.nokeycodeMap = true
は設定されている。これではだめなんだろうか。色々調べた結果、
xkeymap.keycode.211 = 0x073
の1行だけをconfigに書くと入力できるようになった。んんん・・・なんだか釈然としない。VMwareのマニュアルによるとxkeymap.nokeycodeMap = trueはXFree86(今はXorg)のキーコードマッピングを使わないという設定らしい。ということはX抜きのLinuxのコンソールのキーマッピングが有効になるということだろうか。
それに対しxkeymap.keycode.211 = 0x073はキーコードマッピングを無理やり定義してやるという意味らしい。211はXのキーマップ。xevとかxmodmapとかで使われるやつだ。0x073はv-scanコードと言ってVMwareが内部的に使用しているらしい。
なんだかどーでもいいけど、コンピュータの世界は文字コードとか、キーボードとかの仕様がややこしい。結局、昔からの仕様のつぎはぎだからこうなるのだろう。