Enabling Tap-to-click function in Manjaro via the command line.

0
26
(Last Updated On: May 12, 2018)

Introduction

In case you have Manjaro installed and your touchpad does not have the Tap-to-click ability, then the following suits you if you would wish to enable it via the command line. Before that, lets have a moment to enjoy some food for thought..

“Be content with what you have;
rejoice in the way things are.
When you realize there is nothing lacking,
the whole world belongs to you.”
— Lao Tzu

Enabling Tap-to-click function

The following is the syntax for enabling touchpad on the terminal

 # xinput set-prop [device number] [option number] [setting]

To get the value of [device number], enter the following on the terminal:

 # xinput list

You will get something that resembles the following:

Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=11 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ HP Webcam-101: HP Webcam-101 id=9 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=10 [slave keyboard (3)]
↳ HP WMI hotkeys id=12 [slave keyboard (3)]

Looking carefully, you will see something related to Synaptics from the output. Mine is "SynPS/2 Synaptics TouchPad." It has an id of 11 as it can be clearly seen. This is the [device number] value.

To get the value of [option number] of the device, do:

 # xinput list-props 11

The following will be the output:

Device 'SynPS/2 Synaptics TouchPad':
Device Enabled (142): 1
Coordinate Transformation Matrix (144): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Tapping Enabled (278): 0
libinput Tapping Enabled Default (279): 0
libinput Tapping Drag Enabled (280): 1
libinput Tapping Drag Enabled Default (281): 1
libinput Tapping Drag Lock Enabled (282): 0
libinput Tapping Drag Lock Enabled Default (283): 0
libinput Tapping Button Mapping Enabled (284): 1, 0
libinput Tapping Button Mapping Default (285): 1, 0
libinput Natural Scrolling Enabled (286): 0
libinput Natural Scrolling Enabled Default (287): 0
libinput Disable While Typing Enabled (288): 1
libinput Disable While Typing Enabled Default (289): 1
libinput Scroll Methods Available (290): 1, 1, 0
libinput Scroll Method Enabled (291): 1, 0, 0
libinput Scroll Method Enabled Default (292): 1, 0, 0
libinput Accel Speed (293): 0.000000
libinput Accel Speed Default (294): 0.000000
libinput Left Handed Enabled (295): 0
libinput Left Handed Enabled Default (296): 0
libinput Send Events Modes Available (263): 1, 1
libinput Send Events Mode Enabled (264): 0, 0
libinput Send Events Mode Enabled Default (265): 0, 0
Device Node (266): "/dev/input/event5"
Device Product ID (267): 2, 7
libinput Drag Lock Buttons (297):
libinput Horizontal Scroll Enabled (298): 1

Look into the output and find “Tapping enabled” Option. From the output above we have "libinput Tapping Enabled (278): 0."
From that, we get the value of [option number] and value which are 278 and 0 respectively. The 0 is a binary value which means that it is disabled. Another way of checking whether the Tapping option is disabled or enabled, do the enter the following on your terminal:

# sudo libinput list-devices

You will get a long list of output and for the sake of the article, I have extracted the part related to the Touchpad

----
Device: SynPS/2 Synaptics TouchPad
Kernel: /dev/input/event5
Group: 8
Seat: seat0, default
Size: 82x42mm
Capabilities: pointer
Tap-to-click: disabled
Tap-and-drag: enabled
Tap drag lock: disabled
Left-handed: disabled
Nat.scrolling: disabled
Middle emulation: n/a
Calibration: n/a
Scroll methods: *two-finger edge
Click methods: none
Disable-w-typing: enabled
Accel profiles: none
Rotation: n/a
----

From the output, you can see that Tap-to-click is disabled.

Back to enabling the Tap-to-click functionality, we now have all of the variabled we need to enable it.
Do the following to enable Tap-to-click

# xinput set-prop 11 278 1

Where,
11 is the device number
278 is the device option number and
1 is the binary “True” to enable Tap-to-click

Looking back to see if the functionality is enabled, enter the following on your terminal as previously done:

 # xinput list-props 11

The output will look like the following:

Device 'SynPS/2 Synaptics TouchPad':
Device Enabled (142): 1
Coordinate Transformation Matrix (144): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Tapping Enabled (278): 1
libinput Tapping Enabled Default (279): 0
libinput Tapping Drag Enabled (280): 1
libinput Tapping Drag Enabled Default (281): 1
libinput Tapping Drag Lock Enabled (282): 0
libinput Tapping Drag Lock Enabled Default (283): 0
libinput Tapping Button Mapping Enabled (284): 1, 0
libinput Tapping Button Mapping Default (285): 1, 0
libinput Natural Scrolling Enabled (286): 0
libinput Natural Scrolling Enabled Default (287): 0
libinput Disable While Typing Enabled (288): 1
libinput Disable While Typing Enabled Default (289): 1
libinput Scroll Methods Available (290): 1, 1, 0
libinput Scroll Method Enabled (291): 1, 0, 0
libinput Scroll Method Enabled Default (292): 1, 0, 0
libinput Accel Speed (293): 0.000000
libinput Accel Speed Default (294): 0.000000
libinput Left Handed Enabled (295): 0
libinput Left Handed Enabled Default (296): 0
libinput Send Events Modes Available (263): 1, 1
libinput Send Events Mode Enabled (264): 0, 0
libinput Send Events Mode Enabled Default (265): 0, 0
Device Node (266): "/dev/input/event5"
Device Product ID (267): 2, 7
libinput Drag Lock Buttons (297):
libinput Horizontal Scroll Enabled (298): 1

From the output, "libinput Tapping Enabled (278): 1" declares that Tap-to-click is enabled.