Second Mouse in X mini-HOWTO Greg Wierzchowski greg.wierzchowski@usa.net かねこ (JF Project) - 日本語訳 skaneko@a2.mbn.or.jp (JF@linux.or.jp) 2001-07-18 Revision History Revision 1.2 2001-11-17 Revised by: GW XFree 3.x でのホイールマウスの設定の修正 Revision 1.1 2001-07-21 Revised by: GW "Alternatives" 節の追加 Revision 1.0 2001-07-18 Revised by: GW 初版 概要: X で二個のマウスを使うための、手っ取り早い説明です。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Table of Contents 1. はじめに 2. Copyright and License 3. マウスプロトコル 4. XFree 3.x 5. XFree 4.x 6. 別法 7. 謝辞 1. はじめに この mini-HOWTO は、ニュースグループやこのほかの HOWTO など、既にインタ ーネット上にある情報をかき集めて作成したものです。これを書いたのは、私 の Thinkpad ノート PC に組み込まれた trackpoint に加えて USB マウスをつ けたかったためでした。 この mini-HOWTO に記載されている例は、特に私の持っているハードウェア (PS2 マウスが主ポインタで、USB ホイールマウスを追加した場合) のための物 です。設定自体はかなりわかりやすいため、他の組み合わせ、例えば PS/2 と シリアルマウスを使うような設定もかなり容易でしょう。変更しなければなら ない点は、マウスプロトコルとマウスデバイスの二点です。この文書では、必 要な箇所には適切な例を示すように努めています。 X の設定法は、XFree バージョン 3 向け、及び XFree 4 向けの二つの別々の 節に分けて書いています。 XF86Config ファイルのフォーマットはバージョン 間で大きく変更されており、多少異なったアプローチが必要になるためです。 XFree 3.x では二個目のマウスは Xinput セクションに書く必要があり、また そのセクションでの書式は通常の Pointer での記載法と多少異なっています。 XFree 4.x では、二個目のマウスは単なるもう一つのポインタデバイスとして 扱われます。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2. Copyright and License This document is copyright 2001 by Greg Wierzchowski and is released under the terms of the GNU Free Documentation License, which is hereby incorporated by reference. Send feedback to greg.wierzchowski@usa.net . この文書は Greg Wierzchowski が著作権 (c) 2001 を有しており、GNU フリー ドキュメントライセンス (リンクによる参照により添付扱いとします) の元で 公開されています。フィードバックは greg.wierzchowski@usa.net へお願いします。 【訳注:このアドレスでは既に作者に届かなくなっている模様なので、何かあれ ば JF@linux.or.jp にお願いします。】 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3. マウスプロトコル マウスを正しく動くようにするために必須となる、XF86Config ファイル中の二 つの最重要パラメータは Protocol と Device です。 Protocol (プロトコル) については、gpm が互換のプロトコル名を用いていま すので、詳細はそちらを参考にしてください。以下は gpm の info ページから の抜粋 (もっとも普及しているものから数種) です。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Table 1. X でのもっともありふれたマウスプロトコル ┌────────────────┬────────────────┐ │プロトコル名 │説明 │ ├────────────────┼────────────────┤ │Microsoft │標準マイクロソフトマウス │ ├────────────────┼────────────────┤ │MouseSystems │これは三ボタンシリアルマウスの標│ │ │準プロトコルです。 │ ├────────────────┼────────────────┤ │MMSeries │タイトル通りです。このマウスデコ│ │ │ーダは標準シリアルオプションも受│ │ │け付けますが、通常は必要ありませ│ │ │ん。 │ ├────────────────┼────────────────┤ │Logitech │これは古いタイプのシリアル │ │ │Logitech 社マウスで使われていた │ │ │プロトコルです。 │ ├────────────────┼────────────────┤ │バスマウス │一部のバスデバイスがこのプロトコ│ │ │ルを使用しています。例えば │ │ │Logitech 社製のものが該当します │ │ │。 │ ├────────────────┼────────────────┤ │PS/2 │殆どのバスマウスで使われているプ│ │ │ロトコルです。 │ ├────────────────┼────────────────┤ │IMPS/2 │PS/2 ポート向けの "IntelliMouse"│ │ │用です。USB マウスでもこれで動作│ │ │します。 │ └────────────────┴────────────────┘ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4. XFree 3.x XFree 3.x では追加のポインティングデバイス、例えばマウスやタブレットは Xinput セクションの記述で定義します。一個目のマウスは通常通り Section "Pointer" Protocol "PS/2" Device "/dev/mouse" EndSection として定義します。上記の例では、通常の三つボタン PS/2 マウスです。この 設定はトラックポイントでも動作します。さて、USB マウスですが、 Section "Xinput" SubSection "Mouse" DeviceName "USB Mice" Protocol "IMPS/2" ZAxisMapping 4 5 Port "/dev/input/mice" Alwayscore EndSubSection EndSection とします。私のマウスはホイールマウスなので、プロトコルは IMPS/2 になり ます。ホイールマウスを動作させるには、ZAxisMapping の行も必要です。私は このマウスをもう一つのマウスと常時両方使うようにしています。このように 使うための設定が、AlwaysCore オプションです。例えば、COM1 につながって いるシリアルマウスの場合なら、Port の所を "/dev/ttyS0" と書き換えます。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5. XFree 4.x XFree 4.x では作業はずっと容易です。まず、一つ目のマウスは (次のように) 既に設定ファイル中に記載されているでしょう。 Section "InputDevice" Identifier "Mouse0" Driver "mouse" Option "Device" "/dev/mouse" Option "Protocol" "PS/2" Option "Emulate3Buttons" "off" Option "ZAxisMapping" "4 5" EndSection 別のマウスを付けるには、上の部分をコピーし、そちらの方も読むように変更 するだけです。 Section "InputDevice" Identifier "Mouse1" Driver "mouse" Option "Device" "/dev/input/mice" Option "Protocol" "IMPS/2" Option "Emulate3Buttons" "off" Option "ZAxisMapping" "4 5" EndSection つまり、このようにして好きなだけの追加のポインタを定義できます。ジョイ スティックやタブレットについても同様です。 両方のマウスを同時に使えるようにするためには、XF86Config にもう一カ所変 更が必要です。ServerLayout というセクションがあって、全ての構成部品の定 義はここでされています。二個目のマウスを付けるよう変更する前には、以下 のようになっています。 Section "ServerLayout" Identifier "XFree86 Configured" Screen 0 "Screen0" 0 0 InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" EndSection それでは、二個目のマウスを付けましょう。 Section "ServerLayout" Identifier "XFree86 Configured" Screen 0 "Screen0" 0 0 InputDevice "Mouse0" "CorePointer" InputDevice "Mouse1" "AlwaysCore" InputDevice "Keyboard0" "CoreKeyboard" EndSection ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6. 別法 同時に二個 (またはそれ以上) のマウスを使うには、プログラムを使うという 別法もあります。プログラムの例として、真鍋敬士さんの MultiMouse があり ます。これは幾つかのシリアルマウスを束ねてそれを一つのスペシャルデバイ ス /dev/mumse から MouseSystems 互換マウスとして使えるようにするデーモ ンです。 作者によると: "このプログラムで同時に複数個のマウスの利用が可能になりま す。このプログラムはサブノートユーザで、既に実装済みのポインティングデ バイスと外付けのシリアルマウスの両方を使いたい人たちに向けて開発してい ます。" ということです。 このプログラムで、二個目のマウスにシリアルマウス以外のものが使えるのか どうかについては私には分かりませんが、このプログラムの利点は二個目のマ ウスをコンソールモードでも使えることです。 MultiMouse は Sunsite (sunsite.unc.edu /pub/Linux/system/Misc) や Tucows (www.tucows.com Linux Console -> Utilities) にあります。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7. 謝辞 Linux コミュニティに貢献していただき、この HOWTO を可能にした全ての方々 に感謝します。