¿Cómo se habilita el toque a clic a través de la línea de comando?

15

Puede usar esto para invertir la dirección de desplazamiento (desplazamiento natural) :

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

También puede volver a configurarlo con xmodmap -e "pointer = 1 2 3 4 5 7 6 8 9 10 11 12"

y esto para cambiar los botones izquierdo y derecho:

xmodmap -e "pointer = 3 2 1"

Y cambiarlo de nuevo con xmodmap -e "pointer = 1 2 3"

Pero, ¿cómo se habilita el toque para hacer clic desde la línea de comandos? Preferiblemente con un comando, y no permanentemente.

Por cierto, sí, sé que esto existe:

ingrese la descripción de la imagen aquí

Wilf
fuente

Respuestas:

15

Xmodmap no es de ayuda aquí. Xmodmap controla las asignaciones físico-lógicas de botones y teclas, no el proceso físico que genera eventos en primer lugar.

La herramienta para este tipo de opciones es xinput . El nombre de la propiedad depende de su modelo de panel táctil, puede ser algo así como

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

Ejecute xinput listpara ver los nombres de los dispositivos disponibles y xinput list-props "the device name"para enumerar las propiedades de un dispositivo.

Consulte también Configuración de entrada dinámica con xinput en la wiki y algunos ejemplos .

Gilles 'SO- deja de ser malvado'
fuente
¿Necesitaría reiniciar Unity / Xserver / LightDM para que funcionen?
Wilf
@wilf No, el comando entra en vigencia de inmediato. También puede configurar al menos algunas de estas configuraciones a través de una GUI (en cuyo caso se aplicarán cuando comience su sesión), pero no estoy familiarizado con la GUI. gsettingscambia la configuración de la interfaz GUI.
Gilles 'SO- deja de ser malvado'
Hmmm ... 0, 1, "1, 0, 0"no trabajar con él, pero xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Tap Action" "3"vueltas aprovechando un botón de retroceso ...
Wilf
¡Éxito! xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Tap Action" 11 (podría haber sido ese número) parece funcionar, aunque también funciona como un botón de retroceso AL MISMO TIEMPO. Editar: ¡ Vaya, en realidad, eso no funcionó!
Wilf
con otro nombre de dispositivo (en mi caso: "Glidepoint Virtual Touchpad"), ¿el nombre de la acción sería diferente entonces? No se muestra ninguna "acción de toque" para mi dispositivo :(
PlasmaBinturong
10

Puedes usar gsettings:

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

Lo que permite tocar para hacer clic.

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

Lo deshabilitará. Esto es lo mismo que cambiarlo en Configuración del sistema.

Seth
fuente
Bueno, hacerlo xmodmappodría ser útil: esto es para un viejo netbook maltratado sin tecla de clic izquierdo que funcione ... pero también pensé que si lo usaba xmodmap, también podría habilitarlo en la pantalla de inicio de sesión ...
Wilf
1
Estoy seguro de que no es posible @wilf. xmodmap controla las asignaciones físicas a lógicas de botones y teclas, no el proceso físico que genera eventos en primer lugar.
Gilles 'SO- deja de ser malvado'
Si es sólo el espejo de lo que está disponible en el menú gráfico, no va a funcionar en el caso de la opción no es visible de forma gráfica ... (me sale el error: « org.gnome.settings-daemon.peripherals.touchpad » does not exist)
PlasmaBinturong
Esta respuesta es muy preferible xinput, y si está utilizando Cinnamon, querrá ajustarla en consecuencia gsettings set org.cinnamon.settings-daemon.peripherals.touchpad false.
Joe
6

Basado en la respuesta principal , dado que tuve que modificar algunas de las instrucciones allí:

Por lo tanto, el comando para habilitar tocar para hacer clic tiene la siguiente forma:

xinput set-prop "device" "action" 1

Para leer el "dispositivo" tienes que hacer

xinput list

Pero puede resultar difícil identificar el dispositivo en esa lista. Algunos consejos: probablemente esté bajo "Puntero de núcleo virtual"; Puede contener términos como "Syn", "Synaptics", "Touchpad", "Alps", "Glidepoint". por ejemplo, el mío eraAlpsPS/2 ALPS GlidePoint id=16 , pero tenía que adivinar; ya que no estaba seguro de haber probado si ese era el número de identificación correcto deshabilitando / habilitando el panel táctil con xinput --disable 16y xinput --enable 16.

Ahora, para deshacerse de todos los nombres confusos, se pueden usar números de identificación en lugar de los nombres de dispositivo y acción.

Entonces, para leer la "acción":

xinput list-props 16

Que figuran entre otros:

    libinput Tapping Enabled (297): 0

Entonces, usando números de identificación en lugar de nombres, el comando final fue:

xinput set-prop 16 297 1

Nota: por alguna razón, usar el nombre de la acción dentro del comando, como lo sugiere la respuesta principal, no funcionaría para mí (xinput set-prop ""AlpsPS/2 ALPS GlidePoint" "Tapping Enabled" 1 ), mientras que usar solo el nombre del dispositivo funcionó ( xinput set-prop "AlpsPS/2 ALPS GlidePoint" 297 1).


Este comando puede ser útil en sistemas donde no hay GUI para dicha configuración, como en el LXQT que estaba probando en la fecha de la publicación.


fuente
Gracias por esta respuesta detallada.
balajeerc