次のページ 前のページ 目次へ

4. マウスの運用

この章では、いろんなアプリケーションにおけるマウスの一般的な使いかたに ついて取り扱います。

4.1 gpm

gpm とは、マウスを使ったカット・アンド・ペーストを、X の上でできるのと 同じように、Linux の仮想端末間で可能とするプログラムです。これはお持ち のマウスの動作テストにもよい方法となります。

gpm の現在のバージョンは gpm-1.13.tar.gz で、お近くの Linux 関係 FTP サイト(たとえば Ring Server)に もあるでしょう。コンパイルのための情報もそのなかに含まれています。例え ば Red Hat のように、コンパイル済みの gpm バイナリが付いてくるディスト リビューションもあります。

gpm を起動するときは、お使いのマウスがどのプロトコルを使っているかを -t スイッチ、そしてマウスのデバイス・ファイルがどれなのかを -m オプション を使って指定します。だいたいのバスマウスをまかなえる 3 プロトコルは、 それぞれ logi, bm, ps2 として指定します。マウスのデバイス・ファイルの デフォルトは /dev/mouse になっていますので、適切なシンボリッ ク・リンクが張ってあるなら、-m オプションは省略してしまってかまいませ ん。例えば Microsoft Inport マウスの場合は:

gpm -t bm

PS/2 プロトコルなら:

gpm -t ps2

それからマウスを動かしてみれば、スクリーン上をカーソル・ブロックが動き まわるのがわかるでしょう。マウスボタンを使って、仮想端末間でカット・ア ンド・ペーストできることも。より詳しい操作方法については、gpm に付いて くる文書を読むか、``man gpm'' してみましょう。

4.2 XFree86

お持ちのバスマウスを XFree86 で使う場合、お使いのマウスのプロトコルを Xconfig ファイル(訳注: 現在では XF86Config ファイル。以下 XF86Config とします)に記さなければなりません。BusMouse プロトコルのマウスをお持ち の場合、XF86Config には以下の内容が入っていないといけません (ダブル・ クォートも入ります):

(訳注: 詳しくは man XF86Config を参照してください.)

Section "Pointer"
  Protocol "Busmouse"
  Device   "/dev/mouse"
  
  # Any other options such as Emulate3Buttons
EndSection

PS/2 マウスならこうします:

  Protocol        "PS/2"

2 ボタンのマウスなら、以下の行も必要です。マウスの左右ボタンを同時に押 せば、中央ボタンの付いていないマウスでも、中央ボタン押し下げをエミュレー トできます:

  Emulate3Buttons

``BaudRate'' や ``SampleRate'' のようなマウスの他の設定項目はバスマウ スには関係ありませんから、コメント・アウトしておいたほうがよいでしょう。

4.3 XFree86 と gpm

カーネルのその開発の歴史において、バスマウスを複数のプロセスで共有する ことは長いあいだできませんでした。そのため、XFree86 と gpm を同時に走 らせることは困難だったのです。gpm が走っている状態で X を動かそうとし て下のようなエラーに見舞われた場合は、そういった古いカーネルのどれかを 使っている、ということなのです。

Fatal server error:
Cannot open mouse (Device or resource busy)

こういったカーネルで XFree86 と同時に gpm を使うには二つの方法がありま す。まず一つは、XFree86 を立ち上げる前に、gpm のプロセス全てを殺してし まうことです。もう一つは、gpm の ``repeater'' オプションを使うこと。こ れはマウスからのデータを受け取り、その情報を複数のアプリケーションに対 して再生します。

でも私としては、可能ならカーネルをアップグレードすることをおすすめしま す。そうすればバスマウスを他のプロセスと共有できますから。この文書では、 古いカーネルで XFree86 と gpm を一緒に使う件については、簡単な方法のほ うについてだけ説明します。repeater オプションを使う方法については gpm の文書を見てください。

以下のようにすれば、gpm は走っている自分のコピーすべてを終了させます。

gpm -k

これは X11 を立ち上げる前にやらないといけません。X を立ち上げるのに使っ ているスクリプト、たとえば startx を見て、上記のコマンドをそ のスクリプトのてっぺんに追加します。そうすれば gpm は(X が立ち上がる前 に)自動的に終了することになります。そのスクリプトの最後に gpm をリスター トさせるコマンドも追加しておけば、X のセッションを終了したあと、gpm も 再び立ち上がります。


次のページ 前のページ 目次へ