Tweede Muis in X mini-HOWTO

Greg Wierzchowski

Vertaald door: Ellen Bokhorst

2001-07-18

Wijzigingen
Herziening 1.217-11-2001Herzien door: GW
Gecorrigeerd voor de Wheelmuis in XFree 3.x
Herziening 1.121-07-2001Herzien door: GW
Sectie "Alternatieven" toegevoegd.
Herziening 1.018-07-2001Herzien door: GW
Initiële uitgave.

Beknopte instructies om een tweede muis in X te activeren.


Inhoudsopgave
Introductie
Copyright en Licentie
Muisprotocollen
XFree 3.x
XFree 4.x
Alternatieven
Krediet

Introductie

Deze mini-HOWTO werd aangemaakt door het verzamelen van reeds beschikbare informatie op het internet, in nieuwsgroepen en andere HOWTO's. Ik moest in aanvulling op een ingebouwd trackpoint op mijn Thinkpad laptop een USB muis aansluiten.

Voorbeelden in deze mini-HOWTO hebben specifiek betrekking op mijn hardware configuratie met een PS/2 muis als primair aanwijsapparaat en USB wheelmouse als een extra aanwijsapparaat. Het zou niet al te moeilijk moeten zijn een andere combinatie te implementeren zoals bijvoorbeeld een PS/2 en seriële muis. De twee dingen die hiervoor zouden moeten worden gewijzigd zijn het mouse protocol en het mouse device. Waar mogelijk, zal ik proberen in het van toepassing zijnde voorbeeld te voorzien.

De instructies voor X zijn onderverdeeld in twee secties, één voor XFree versie 3 en één voor XFree 4. Het formaat van het XF86Config bestand is tussen versies in belangrijke mate gewijzigd en hiervoor is een iets andere benadering vereist. Voor XFree 3.x, moet de tweede muis worden vermeld in een Xinput sectie, waar een iets andere syntax voor wordt gebruikt dan voor de reguliere Pointer sectie. Voor XFree 4.x is het gewoon een ander aanwijsapparaat.


Copyright en Licentie

Dit document is auteursrechtelijk beschermd 2001 door Greg Wierzchowski en is uitgegeven onder de voorwaarden van de GNU Free Documentatie Licentie, wat hierbij is opgenomen als referentie. Stuur feedback naar greg.wierzchowski@usa.net.


Muisprotocollen

De twee belangrijkste parameters in het bestand XF86Config, zijn Protocol en Device degenen die cruciaal zijn voor een correct werkende muis.

Zover als het 't Protocol aangaat, lijkt het erop dat gpm compatibele protocolnamen gebruikt, dus kijk alsjeblieft daar voor gedetailleerde informatie. Hier is een uittreksel vanuit de gpm info pagina (slechts de paar meest gebruikelijke typen):

Tabel 1. De meest gebruikelijke muisprotocollen in X

Protocol NaamBeschrijving
MicrosoftStandaard Microsoft muizen.
MouseSystemsDit is het standaardprotocol voor de drie-knops seriële muizen.
MMSeriesDe titel zegt het al. Deze muisdecoder accepteert standaard seriële opties, alhoewel die niet nodig zouden hoeven zijn.
LogitechDit is het protocol dat wordt gebruikt door oude seriële Logitech muizen.
BusMouseEen aantal busdevices maakt gebruik van dit protocol, waaronder die geproduceerd door Logitech.
PS/2Het protocol dat door de meeste busmuizen wordt gebruikt.
IMPS/2"IntelliMouse" aangesloten op de ps/2 poort. Werkt ook met USB muizen


XFree 3.x

In XFree 3.x worden extra aanwijsapparaten, zoals muizen of tabletten, gedefinieerd door het gebruik van een sectie Xinput. De primaire muis wordt als gebruikelijk gedefinieerd:
Section "Pointer"
    Protocol    "PS/2"
    Device      "/dev/mouse"
EndSection
In bovenstaande situatie gaat het om een reguliere drie-knops PS/2 muis, welke ook voor de trackpoint werkt. In het geval van de USB muis:
    Section "Xinput"
  SubSection "Mouse"
    DeviceName "USB Mice"
    Protocol "IMPS/2"
    ZAxisMapping 4 5
    Port "/dev/input/mice"
    Alwayscore
  EndSubSection
EndSection
Mijn muis is een wheelmouse, dus het protocol is IMPS/2. Tevens is de ZAxisMapping regel nodig om het wiel werkend te krijgen. Ik wil ook dat de muis altijd samen met de andere muis werkt, en dit wordt bereikt via de optie AlwaysCore. Als dit bijvoorbeeld een seriële muis was, zou er bij Port "/dev/ttyS0" voor COM1 zijn ingevuld.


XFree 4.x

Voor XFree 4.x is het zelfs nog makkelijker. Als eerst is de primaire muis meestal reeds aanwezig in het configuratiebestand:
Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option      "Device" "/dev/mouse"
        Option      "Protocol" "PS/2"
        Option      "Emulate3Buttons" "off"
        Option      "ZAxisMapping" "4 5"
EndSection
Om een andere muis toe te voegen, kopieer je bovenstaande sectie en pas je het aan zodat er komt te staan:
Section "InputDevice"
        Identifier  "Mouse1"
        Driver      "mouse"
        Option      "Device" "/dev/input/mice"
        Option      "Protocol" "IMPS/2"
        Option      "Emulate3Buttons" "off"
        Option      "ZAxisMapping" "4 5"
EndSection
Op deze manier kun je zoveel extra aanwijsapparaten definiëren als je wilt, en hetzelfde geldt voor joysticks en tablets.

Om beiden muizen tegelijkertijd te laten werken, moet er nog één wijziging worden doorgevoerd in het bestand XF86Config. Er is een sectie met de naam ServerLayout waarin alle componenten zijn gespecificeerd. Zo ziet het er uit voordat een tweede muis wordt toegevoegd:
Section "ServerLayout"
        Identifier "XFree86 Configured"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection
En na het toevoegen van de tweede muis:
Section "ServerLayout"
        Identifier "XFree86 Configured"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Mouse1" "AlwaysCore"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection


Alternatieven

Een andere manier om twee (of meer) muizen tegelijkertijd te gebruiken is door gebruik te maken van een programma zoals MultiMouse van Takashi Manabe. Het is een daemon die verscheidene muizen verveelvoudigt en ze beschikbaar stelt via het speciale device /dev/mumse als een MouseSystems compatibele muis.

Volgens de auteur: "Met dit programma kun je tegelijkertijd meerdere muizen gebruiken. Dit programma is ontwikkeld voor die gebruiker die zowel een intern gekoppeld aanwijsapparaat als een externe seriële muis wil gebruiken."

Ik weet niet zeker of het programma een tweede muis anders dan een seriële muis ondersteunt, maar het voordeel is dat de tweede muis ook in de console modus werkt. MultiMouse is te vinden op Sunsite (sunsite.unc.edu /pub/Linux/system/Misc) en Tucows (www.tucows.com Linux Console -> Utilities).


Krediet

Speciale dank gaat uit naar alle mensen die een bijdrage leverden aan de Linux gemeenschap en die deze HOWTO mogelijk maakten.