X.Org и две мыши

()

Возникла у меня задача - подключить одновременно две мыши к компьютеру. Однако желания настраивать MultiPointer X не было, поскольку много приложений пока ещё имеет проблемы с ним. Хотелось чтобы обе мыши управляли одним курсором. Оказалось что эта задача решается достаточно просто.

Во-первых нужно выяснить как именно отображаются мыши в /dev, Для этого последовательно для всех устройств в /dev/input нужно выполнить следующую команду:

cat /dev/input/<имя_устройства>

И подвигать мышью (обеими). Запомнить имена устройств, с которыми на экран выводились различные символы. В моём случае это оказались /dev/input/mouse1 и /dev/input/mouse2. Далее открываем в редакторе файл /etc/X11/xorg.conf и приступаем к настройке.

Находим примерно такую секцию:

Section "InputDevice"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "CorePointer"
    Option         "Device" "/dev/input/mouse1"
    Option         "Protocol" "ImPS/2"
    Option         "ZAxisMapping" "4 5"
    Option         "Emulate3Buttons" "true"
EndSection

Обратите внимание на опцию "CorePointer". Она говорит что эта мышь основная. Такая может быть только одна. Для второй мыши мы не сможем указать эту опцию, однако мы можем разрешить ей посылать те же сообщения системе что и основная мышь с помощью опций "SendCoreEvents" и "AlwaysCore". Копируем имеющуюся секцию и правим в соответствии с этими замечаниями и именем устройства второй мыши. Результат будет выглядеть примерно так:

Section "InputDevice"
    Identifier     "Mouse1"
    Driver         "mouse"
    Option         "AlwaysCore" "true"
    Option         "SendCoreEvents" "true"
    Option         "Device" "/dev/input/mouse2"
    Option         "Protocol" "ImPS/2"
    Option         "ZAxisMapping" "4 5"
    Option         "Emulate3Buttons" "true""
EndSection

Теперь у нас в конфиге есть две секции, описывающие обе мыши. Остаётся поправить секцию "ServerLayout". Она опять же у всех разная, но это не принципиальный момент, поскольку в неё нужно всего лишь добавить описание второй мыши:

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Mouse1"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Жирным выделена добавляемая строка.

На этом всё. Остаётся перезапустить X и наслаждаться работой с двумя мышами:)

Ключевые слова: X.Org, X, xorg.conf, InputDevice, mouse.

Подписаться на обновления: RSS-лента Канал в TamTam Telegram канал Канал в ICQ

Комментарии:

iga 2008-02-14 19:54:02 (#)

Я сегодня для пробы вставил 3 мыши и все сами заработали, даже иксы не перезагружал :) (ps/2 и две usb)

P.S.
# emerge -p x11-base/xorg-server
[ebuild R ] x11-base/xorg-server-1.4.0.90-r3

MooSE 2008-02-14 19:59:40 (#)

В X7.3 появилась поддержка hot plug, да и cold plug допилили. Но у меня почему-то вот не завилось. Пришлось разбираться:)

Хочу вот ещё попробовать всё-таки MultiPointer:)

Alex 2008-02-14 20:22:05 (#)

Хотел написать тоже самое, но пока добрался до дома, чтобы проверить, меня опередили :-)

Shlomo 2008-02-17 12:21:05 (#)

Подумываю перо купить, кто имел дело - как оно определяется?

MooSE 2008-02-17 16:16:16 (#)

Я точно не имел:) Мне хватило беспроводной клавиатуры с мышью:)
Новый комментарий

Жирный текстКурсивный текстПодчёркнутый текстЗачёркнутый текстПрограммный кодСсылкаИзображение




© 2006-2024 Вадим Калинников aka MooSE
Политика конфиденциальности