Como você habilita o toque para clicar via linha de comando?

15

Você pode usar isso para reverter a direção da rolagem (rolagem natural) :

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

Você também pode configurá-lo novamente com xmodmap -e "pointer = 1 2 3 4 5 7 6 8 9 10 11 12"

e isso para alternar os botões esquerdo e direito:

xmodmap -e "pointer = 3 2 1"

E mude de volta com xmodmap -e "pointer = 1 2 3"

Mas como você habilita o toque para clicar na linha de comando? De preferência com um comando, e não permanentemente.

A propósito, sim, eu sei que isso existe:

insira a descrição da imagem aqui

Wilf
fonte

Respostas:

15

O Xmodmap não ajuda em nada aqui. O Xmodmap controla os mapeamentos físico-lógicos de botões e chaves, não o processo físico que gera eventos em primeiro lugar.

A ferramenta para esse tipo de opções é o xinput . O nome da propriedade depende do modelo do seu touchpad, pode ser algo como

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

Execute xinput listpara ver os nomes dos dispositivos disponíveis e xinput list-props "the device name"para listar as propriedades de um dispositivo.

Veja também Configuração de Entrada Dinâmica com xinput no wiki, e alguns exemplos .

Gilles 'SO- parar de ser mau'
fonte
Preciso reiniciar o Unity / Xserver / LightDM para que eles funcionem?
Wilf
@ wilf Não, o comando entra em vigor imediatamente. Você também pode definir pelo menos algumas dessas configurações por meio de uma GUI (nesse caso, elas serão aplicadas quando a sessão iniciar), mas não estou familiarizado com a GUI. gsettingsaltera a configuração da interface GUI.
Gilles 'SO- stop be evil'
Hmmm ... 0, 1, "1, 0, 0"não trabalhar com ele, mas xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Tap Action" "3"voltas batendo em um botão de volta ...
Wilf
Sucesso! xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Tap Action" 11 (pode ter sido esse número) parece funcionar, embora também funcione como um botão voltar AO MESMO TEMPO. Edit: Opa, na verdade, isso não funcionou -?!?
Wilf
com outro nome de dispositivo (no meu caso: "Glidepoint Virtual Touchpad"), o nome da ação seria diferente? Não há nenhuma "ação de toque" exibida no meu dispositivo :(
PlasmaBinturong
10

Você pode usar gsettings:

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

O que permite tocar para clicar.

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

Desabilitará isto. É o mesmo que alterá-lo nas configurações do sistema.

Seth
fonte
Bem, fazê-lo xmodmappoderia ser útil - isto é para um netbook antigo e maltratado, sem nenhuma tecla de funcionamento à esquerda ... mas eu também pensei que, se eu usasse xmodmap, poderia ativá-lo na tela de login ...
Wilf
1
Tenho certeza que não é possível @ wilf. O xmodmap controla os mapeamentos físico-lógicos de botões e chaves, não o processo físico que gera eventos em primeiro lugar.
Gilles 'SO- stop be evil'
Se é apenas o espelho do que está disponível no menu gráfico, não vai funcionar no caso da opção não é graficamente visível ... (eu recebo o erro: « org.gnome.settings-daemon.peripherals.touchpad » does not exist)
PlasmaBinturong
Essa resposta é muito preferida xinpute, se você estiver usando o Cinnamon, deverá ajustar de acordo gsettings set org.cinnamon.settings-daemon.peripherals.touchpad false.
Joe
6

Com base na resposta principal , já que tive que modificar algumas das instruções lá:

O comando para ativar o toque para clicar é, portanto, do formato:

xinput set-prop "device" "action" 1

Para ler o "dispositivo" você precisa fazer

xinput list

Mas pode ser difícil identificar o dispositivo nessa lista. Algumas dicas: provavelmente está em "Ponteiro do núcleo virtual"; pode conter termos como "Syn", "Synaptics", "Touchpad", "Alps", "Glidepoint". por exemplo, o meu era AlpsPS/2 ALPS GlidePoint id=16, mas eu tinha que adivinhar; pois não tinha certeza de ter testado se esse era o número de identificação correto, desativando / ativando o touchpad com xinput --disable 16e xinput --enable 16.

Agora, para se livrar de todos os nomes confusos, os números de identificação podem ser usados ​​em vez dos nomes dos dispositivos e das ações.

Então, para ler a "ação":

xinput list-props 16

Que listado entre outros:

    libinput Tapping Enabled (297): 0

Portanto, usando números de identificação em vez de nomes, o comando final foi:

xinput set-prop 16 297 1

Nota: por algum motivo, o uso do nome da ação no comando, conforme sugerido pela resposta principal, não funcionaria para mim ( xinput set-prop ""AlpsPS/2 ALPS GlidePoint" "Tapping Enabled" 1), enquanto o uso apenas do nome do dispositivo funcionava ( xinput set-prop "AlpsPS/2 ALPS GlidePoint" 297 1).


Este comando pode ser útil em sistemas onde não há GUI para essa configuração, como no LXQT que eu estava testando na data da postagem.


fonte
Obrigado por esta resposta detalhada.
balajeerc