Mus

Så här ändrar du inställningar för mus och pekplatta med Xinput i Linux

Så här ändrar du inställningar för mus och pekplatta med Xinput i Linux
De flesta Linux-distributioner levereras med "libinput" -bibliotek som standard för att hantera inmatningshändelser i ett system. Den kan bearbeta inmatningshändelser på både Wayland och X och kan hantera en mängd olika inmatningsenheter inklusive pekskärmsdisplayer och pennor.

Den här artikeln förklarar hur du ändrar olika alternativ för en inmatningsenhet som hanteras av libinput-biblioteket. För att kontrollera och konfigurera tillgängliga alternativ används ett kommandoradsverktyg som heter “xinput”.

Observera att den här guiden endast fungerar med X-bildserver. För Wayland måste du lita på systeminställningar som tillhandahålls av distributionen eller använda ett centraliserat konfigurationsverktyg som gsettings.

Lista inmatningsenheter

Xinput levereras förinstallerat som standard på Ubuntu. Om det av någon anledning inte är installerat på ditt system, kör du kommandot nedan för att installera det:

$ sudo apt installera xinput

För att lista alla inbyggda och externa ingångsenheter som är anslutna till ditt system, kör kommandot nedan:

$ xinput --lista

Du ser en del utdata i terminalen så här:

Inmatningen under "Virtuell kärnpekare" (markerad med röda pilar) är en trådbunden USB-mus ansluten till mitt system. Du måste använda exakt namn eller ID som visas på skärmdumpen ovan för att konfigurera mus- eller pekplattans inställningar via kommandoradsverktyget xinput.

Observera att i skärmdumpen ovan visar xinput egenskaper för enheter som är anslutna till mitt system. Enhetsnamn och ID: n skiljer sig åt för ditt system beroende på din hårdvarukonfiguration och externa enheter anslutna via USB, Bluetooth eller trådlösa mottagare.

Visa egenskaper för en ansluten enhet

För att se aktuell status och olika alternativ aktiva för den enhet som anges ovan, kör ett kommando i följande format:

$ xinput --list-rekvisita "id"

För Dell-musen som listas ovan skulle kommandot vara:

$ xinput --list-rekvisita 8

Det finns en begränsning med att använda detta kommando. ID som visas i terminalutgången tenderar att ändras när du ansluter en listad enhet till en annan port. Eftersom ID: n fortsätter att förändras finns det alltid en chans att av misstag ändra inställningarna för en annan enhet. För att lösa problemet är det bättre att använda fullständigt enhetsnamn som identifierare istället för id. Så för Dell-musen som listas ovan skulle det bättre kommandot vara:

$ xinput - list-rekvisita "PixArt Dell MS116 USB optisk mus"

Området som är markerat nedan i röd rektangel visar aktuell konfiguration för enheten. Du kan bara ändra alternativ som visas i utdata. Beroende på enhetens funktioner kan några extra alternativ listas medan andra kan utelämnas helt.

Ändra egenskaper för en ansluten enhet

Nu när du vet hur du kontrollerar egenskaperna för en ansluten ingångsenhet kan inställningarna för den enkelt ändras med några enkla kommandon.

För att till exempel aktivera eller inaktivera naturlig rullning måste du köra kommandon i följande format:

$ xinput set-prop "PixArt Dell MS116 USB Optical Mouse" 285 0
$ xinput set-prop "PixArt Dell MS116 USB Optical Mouse" 285 1

“285” är id för naturlig rullning, som visas på skärmdumpen ovan. "0" inaktiverar naturlig rullning medan "1" aktiverar det. Återigen är att använda ID inte ett pålitligt sätt att ändra dessa inställningar. Ett bättre tillvägagångssätt är att använda fullständig fastighetsidentifierare.

$ xinput set-prop "PixArt Dell MS116 USB optisk mus"
"libinput Natural Scrolling Enabled" 0
$ xinput set-prop "PixArt Dell MS116 USB optisk mus"
"libinput Natural Scrolling Enabled" 1

Observera att du inte ska röra egendomsidentifierare med ordet ”Standard”. Det här är referensvärden och alla försök att ändra dem kommer att leda till att xinput kastar ett fel.

För att veta mer om andra alternativ och de som listas i terminalutgången ovan, besök följande sida.

Att göra förändringarna beständiga

Metoden som förklaras ovan ändrar endast inställningar för aktiv session. När du startar om systemet kommer dessa ändringar att vara borta. För att göra dem beständiga kan två metoder användas.

Den första metoden kräver att du lägger till dessa kommandon i startprogram. Du kan lägga till så många poster du vill med ett trevligt grafiskt gränssnitt. Inga root-behörigheter krävs för att skapa dessa poster, plus att ändra dem senare är super enkelt.

För att lägga till kommandot i startprogram, starta appen ”Startup Applications” från programstartaren. Klicka på knappen "Lägg till" för att lägga till en post. Ange en beskrivning och ange lämpligt xinput-kommando enligt dina behov. Se till att kryssrutan är markerad när du har sparat posten.

Det är det, xinput-kommandot du har angett körs automatiskt vid systemstart. Jag har lagt till lite försening i kommandot för att vänta tills sessionen laddas ordentligt. För referens, här är kommandot som används nedan i skärmdumpen nedan:

$ sleep 3 && xinput set-prop "PixArt Dell MS116 USB Optical Mouse"
"libinput Natural Scrolling Enabled" 1

Den andra metoden kräver att du kör några kommandon som root och redigerar en textfil. Fördelen med att använda den här metoden är att du inte behöver skapa separata poster för varje alternativ i ett GUI och allt finns bara i en textfil, vilket gör det lättare att dela det mellan enheter.

Kör kommandona nedan för att skapa önskad katalog och conf-filen:

$ sudo mkdir -p / etc / X11 / xorg.konf.d
$ sudo touch / etc / X11 / xorg.konf.d / 99-libinput.konf

Lägg märke till "99" -delen i filnamnet. Det indikerar laddningsordningen för filerna som finns i “xorg.konf.d-mapp. En fil som har det högsta siffran som prefix laddas senast och åsidosätter alla alternativ som anges i tidigare filer om det finns dubbletter. Genom att ange "99" eller något annat nummer som ett prefix kan du se till att det laddas efter andra filer.

Öppna “99-libinput.conf ”-fil med rootåtkomst i din favorittextredigerare. Ange kodavsnittet nedan efter att ha gjort nödvändiga ändringar enligt dina krav.

Avsnitt "InputClass"
Identifierare "Dell Mouse"
MatchProduct "PixArt Dell MS116 USB optisk mus"
Alternativ "NaturalScrolling" "true"
EndSection

Var:

Genom att korrekt ange ”MatchProduct” kan du begränsa konfigurationsalternativen till en specifik enhet. Ändringar i conf-filen träder i kraft när du startar om nästa gång. Du kan lägga till valfritt antal alternativ i avsnittet "InputClass". En lista med olika alternativ som kan läggas till i filen är tillgänglig här.

Slutsats

Metoden som förklaras ovan är särskilt användbar när du vill använda per enhetskonfigurationsregler. Standardinställningar för systeminställningar i GNOME och KDE ger bara några av de vanligaste alternativen som finns tillgängliga för olika ingångsenheter. För att konfigurera avancerade alternativ för en inmatningsenhet har du inget annat val än att antingen använda “xinput” eller skapa en dedikerad konfigurationsfil.

Gratis och öppen källkodsmotorer för utveckling av Linux-spel
Den här artikeln kommer att täcka en lista över gratis motorer med öppen källkod som kan användas för att utveckla 2D- och 3D-spel på Linux. Det finns...
Shadow of the Tomb Raider for Linux Tutorial
Shadow of the Tomb Raider är det tolfte tillskottet till Tomb Raider-serien - en action-äventyrsspelfranchise skapad av Eidos Montreal. Spelet mottogs...
Hur man förbättrar FPS i Linux?
FPS står för Bildrutor per sekund. FPS: s uppgift är att mäta bildfrekvensen i videouppspelningar eller spelprestanda. Med enkla ord betecknas antalet...