Jak włączyć stuknięcie do kliknięcia za pomocą wiersza polecenia?

15

Możesz użyć tego do odwrócenia kierunku przewijania (naturalne przewijanie) :

xmodmap -e "pointer = 1 2 3 5 4 7 6 8 9 10 11 12"

Możesz także ustawić go ponownie za pomocą xmodmap -e "pointer = 1 2 3 4 5 7 6 8 9 10 11 12"

i to, aby przełączyć lewy i prawy przycisk:

xmodmap -e "pointer = 3 2 1"

I zmień to z powrotem za pomocą xmodmap -e "pointer = 1 2 3"

Ale jak włączyć stuknij, aby kliknąć z wiersza poleceń? Najlepiej z jednym poleceniem, a nie na stałe.

Nawiasem mówiąc, tak, wiem, że to istnieje:

wprowadź opis zdjęcia tutaj

Wilf
źródło

Odpowiedzi:

15

Xmodmap tu nie pomaga. Xmodmap kontroluje fizyczne-logiczne odwzorowania przycisków i kluczy, a nie fizyczny proces generujący zdarzenia.

Narzędziem do tego rodzaju opcji jest xinput . Nazwa właściwości zależy od modelu touchpada, może być podobna

xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Tap Action" 0

Uruchom, xinput listaby zobaczyć nazwy dostępnych urządzeń i xinput list-props "the device name"wyświetlić właściwości urządzenia.

Zobacz także dynamiczną konfigurację wejścia z xinput na wiki i kilka przykładów .

Gilles „SO- przestań być zły”
źródło
Czy muszę ponownie uruchomić Unity / Xserver / LightDM, aby je uruchomić?
Wilf
@wilf Nie, polecenie działa natychmiast. Możesz także skonfigurować przynajmniej niektóre z tych ustawień za pomocą GUI (w takim przypadku zostaną one zastosowane po rozpoczęciu sesji), ale nie znam GUI. gsettingszmienia ustawienie interfejsu GUI.
Gilles „SO- przestań być zły”
Hmmm ... 0, 1, "1, 0, 0"nie z nim pracować, ale xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Tap Action" "3"obroty stukając w przycisk wstecz ...
fotograf Wilf
Sukces! xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Tap Action" 11 (być może ta liczba) wydaje się działać, chociaż działa również jako przycisk Wstecz W TYM SAMYM CZASIE. Edycja: Ups, właściwie to nie działało -?!?
Wilf
z inną nazwą urządzenia (w moim przypadku: „Glidepoint Virtual Touchpad”) nazwa akcji byłaby wtedy inna? Na moim urządzeniu nie ma w ogóle żadnej „akcji
dotykowej”
10

Możesz użyć gsettings:

gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click true  

Który umożliwia dotknięcie, aby kliknąć.

gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click false

Wyłączy to. Jest to to samo, co zmiana w Ustawieniach systemu.

Seth
źródło
Cóż, robienie tego przy pomocy xmodmapmoże być przydatne - dotyczy to starego, zniszczonego netbooka bez funkcjonującego klawisza lewego kliknięcia ... ale pomyślałem również, że gdybym użył xmodmap, mógłbym włączyć go również na ekranie logowania ...
Wilf
1
Jestem pewien, że nie jest to możliwe @wilf. xmodmap kontroluje fizyczne-logiczne odwzorowania przycisków i kluczy, a nie fizyczny proces generujący zdarzenia.
Gilles „SO- przestań być zły”
Jeśli to tylko zwierciadłem, co jest dostępne w menu graficznym, to nie będzie działać w przypadku, gdy opcja nie jest widoczna graficznie ... (pojawia się błąd: « org.gnome.settings-daemon.peripherals.touchpad » does not exist)
PlasmaBinturong
Ta odpowiedź jest znacznie bardziej preferowana niż ta xinput, a jeśli używasz cynamonu, będziesz chciał odpowiednio dostosować gsettings set org.cinnamon.settings-daemon.peripherals.touchpad false.
Joe
6

Na podstawie głównej odpowiedzi , biorąc pod uwagę, że musiałem zmodyfikować niektóre instrukcje tam:

Polecenie włączenia kliknięcia z dotknięciem ma zatem postać:

xinput set-prop "device" "action" 1

Aby przeczytać „urządzenie” musisz zrobić

xinput list

Jednak identyfikacja urządzenia na tej liście może być trudna. Kilka wskazówek: prawdopodobnie znajduje się pod „Wirtualnym wskaźnikiem rdzenia”; może zawierać terminy takie jak „Syn”, „Synaptics”, „Touchpad”, „Alps”, „Glidepoint”. np. mój był AlpsPS/2 ALPS GlidePoint id=16, ale musiałem zgadywać; ponieważ nie byłem pewien, czy przetestowałem, czy jest to prawidłowy numer identyfikacyjny, wyłączając / włączając touchpad za pomocą xinput --disable 16i xinput --enable 16.

Teraz, aby pozbyć się mylących nazw, zamiast nazw urządzenia i akcji można użyć numerów ID.

Aby przeczytać „akcję”:

xinput list-props 16

Które wymieniono między innymi:

    libinput Tapping Enabled (297): 0

Tak więc, używając numerów ID zamiast nazw, ostatnim poleceniem było:

xinput set-prop 16 297 1

Uwaga: z jakiegoś powodu używanie nazwy akcji w poleceniu, jak sugeruje główna odpowiedź, nie działałoby dla mnie ( xinput set-prop ""AlpsPS/2 ALPS GlidePoint" "Tapping Enabled" 1), podczas gdy używanie samej nazwy urządzenia działało ( xinput set-prop "AlpsPS/2 ALPS GlidePoint" 297 1).


To polecenie może być przydatne w systemach, w których nie ma graficznego interfejsu użytkownika dla takich ustawień, na przykład w LXQT, które testowałem w dniu publikacji.


źródło
Dziękuję za tę szczegółową odpowiedź.
balajeerc