お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2009-09-22 13:36:25

agatanusi
メンバ
登録日: 2009-09-06

apple pro keyboardでのキーボード配列異常への対応

iMacにubuntu 9.04 (ppc) インストールして使用中です。
キーボード型式はMacintosh、レイアウトは日本 OADG 109A で使用していたところ、半角だと"]"、"{"、全角では"」"、"}"が入力できません。代わりに"\"や"|"が入力されてしまいます。
キーボード型式をベンダーをgenericとし、日本語 106-key とすると"]"や"}"は正しく入力出来るようになりますが、全角での"¥"飲みが入力出来なくなります(まったく反応しません)。10 キーも使えなくなりますが、これはレイアウトオプションのその他の互換性のオプションでnumeric keypad key work as with Macをチェックすることで解決出来ています。
現在の設定でもOKですが、このサイト -http://www2d.biglobe.ne.jp/~msyk/keyboard/layout/usbkeycode.html- をみると、Macintosh の型式でkey number 42 "]"が key number 29 になぜか変更されてしまっているのを修正出来れば良いのではと考えています。
apple keyboard をWin やLinux で流用していらっしゃる方もいるかと思いますが、修正法などご存知であれば、または他の解決法をご存知であれば教えていただけますか?
今のままで十分でしょ! とは私も思いますが、、、欲張りでしょうか?興味半分でしょうか?直してみたい衝動にかられてしまいます。

オフライン

 

#2 2009-09-22 14:54:01

hir0
メンバ
登録日: 2008-09-28

Re: apple pro keyboardでのキーボード配列異常への対応

「keyコードを任意のものに変更する」で良いのでしょうか。
$ xev

何かkeyを押して下さい
(小さなウィンドウが出ますがこれがアクティブ=再全面に来る様に)
-------------------------------------------------------
KeyPress event, serial 33, synthetic NO, window 0x3a00001,
    root 0xfb, subw 0x0, time 88784032, (-220,345), root:(591,443),
    state 0x10, keycode 38 (keysym 0x61, a), same_screen YES,
    XLookupString gives 1 bytes: (61) "a"
    XmbLookupString gives 1 bytes: (61) "a"
    XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x3a00001,
    root 0xfb, subw 0x0, time 88784129, (-220,345), root:(591,443),
    state 0x10, keycode 38 (keysym 0x61, a), same_screen YES,
    XLookupString gives 1 bytes: (61) "a"
    XFilterEvent returns: False
-------------------------------------------------------
KeyPress event=keyを押したときに発生するアクション
KeyRelease event=keyを離したときに発生するアクション

そして上記は[A]keyを小文字で入力したときの表示です。keyシンボル[a]=keyコード[38]を表しています。

目的のkeyコードとkeyシンボルをメモしたら小さなウィンドウを閉じて xev を終了します。
( ']' は keycode 51 (keysym 0x5d, bracketright)つまり51が割り当てられた番号で、bracketrightが名前になります。 )

端末から
$ xmodmap -e 'keycode 38 = s'
これは現在の38番の位置、つまり[A]と書かれているキーを押すと[a]ではなく[s]が入力されるようになります。
まず「試してみて」と言いたいですが試すと面倒くさい事になります。
元に戻すには
$ xmodmap -e 'keycode 38 = a'
で良いのですが a は入力できなくなっている事に気づいてください、コピペで回避できますが、、、

以上を踏まえて作業をされるとトラブルを避けられると思います。
後、設定はテキスト形式で保存されているので現在のものを名前を変更して保存することでバックアップとなりますがどこに有るのか忘れました。見つけたら報告します。

オフライン

 

#3 2009-09-22 15:29:47

hir0
メンバ
登録日: 2008-09-28

Re: apple pro keyboardでのキーボード配列異常への対応

操作前に変更前(デフォルト)の状態を写した設定ファイルを作る必要があるようです。
先に書いたリネームによるバックアップもついでに行いましょう。

$ xmodmap -pke > ~/.xmodmap.bk
$ xmodmap -pke > ~/.xmodmap

(2行のコマンドを実行してから#2を行ってください)

これでバックアップファイル.xmodmap.bkと使用、変更が適用される.xmodmapが出来上がります。
テキストファイルで確認するとコマンドの実行がどういう書き込みを行っているかが分かると思いますが手書きでの変更はミスに気をつけましょう。

復元するには.xmodmapを削除またはリネームして.xmodmap.bkの.bkを外せばOKです。

オフライン

 

#4 2009-09-22 15:33:35

hir0
メンバ
登録日: 2008-09-28

Re: apple pro keyboardでのキーボード配列異常への対応

「書き忘れ」
ファイル名の先頭の"."は隠しファイル、隠しフォルダを意味します。
表示させるにはウィンドウのメニュー段にある[表示(V)]から「隠しファイルを表示する」にチェックを入れてください

オフライン

 

#5 2009-09-23 04:04:06

agatanusi
メンバ
登録日: 2009-09-06

Re: apple pro keyboardでのキーボード配列異常への対応

もう少し単純な方法があれば良かったのですが、なかなか込み入った手順が必要な様ですね。Linuxに慣れ親しんだ方からは、簡単なことなのでしょうが、、、。もう一度(??)キーボードファイルの修正について勉強してから試してみます。有難うございました。

オフライン

 

Board footer

Powered by FluxBB