Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I want to configure my synaptics touchpad to user inverted scrolling with two fingers.

Where to configure synaptics for this in Ubuntu 12.04?

share|improve this question
    
@dobey maybe the grammar. I have to edit the question. –  smartboyhw Oct 24 '12 at 14:27
    
"Inverted" scrolling? So you want the wheel to scroll up when you move fingers down? –  Sepero Oct 24 '12 at 15:08

6 Answers 6

It is relatively straightforward to do this, but it may not work for all touchpads, although it worked for my Synaptics Touchpad on my old laptop. I began experimenting with mine and using xinput, etc, and did mostly the same as this useful article here.

Firstly, run xinput to list all your devices, and note the id of your touchpad.

↳ SynPS/2 Synaptics TouchPad                id=11   [slave  pointer  (2)]

Now to get your button map for the device number found:

xinput get-button-map 11

which should return something like this:

1 2 3 4 5 6 7 8 9 10 11 12 

Now, just reversing 4 and 5 should invert the 2 finger scrolling (at least it does on my system). In the following command, just remember to use your device hardware id (not my example 11) and leave spaces between the numbers after the device number:

xinput set-button-map 11 1 2 3 5 4 6 7 8 9 10 11 12

Now with xinput get-button-map 11 the button map should be

1 2 3 5 4 6 7 8 9 10 11 12 

Now, check it in your web browser. This of course only sets it temporarily, so it is probably easiest to add it as a startup item rather than messing with xorg. Just create a new startup item and add the whole of the above xinput set-button-map command in it. It is critical that there are spaces between the numbers after your device number, and of course use the actual device name of your hardware, not my example.

Again, see the article and Ubuntu forums for more information and discussion- you can probably experiment and invert a lot of the other functions of the touchpad as well; you can reset your experimentation (which is temporary anyway, unless you put a command in startup) by just simply placing the numbers in order again:

xinput set-button-map 11 1 2 3 4 5 6 7 8 9 10 11 12
share|improve this answer
1  
Personally I use xmodmap -e "pointer = 1 2 3 5 4 7 6 8 9 10 11 12" but this seems to work as well :) –  carestad Oct 24 '12 at 23:08

For inverted scrolling, open gedit (or your favourite text editor) and type this:

pointer = 1 2 3 5 4 7 6 8 9 10 11 12

This enable vertical and horizontal natural scrolling (i.e. inverted scrolling). 4 and 5 interchanged is for inverted vertical. 6 and 7 interchanged is for inverted horizontal. Now, save this file as .Xmodmap in your home folder.

Next, for 2 finger scrolling, open Mouse and Touchpad Settings in System Settings, go to the Touchpad tab and check the box which says Two-finger scrolling. The screenshot below will show you this.

Touchpad settings

share|improve this answer

For inverted scrolling, there an indicator you can install at https://launchpad.net/~zedtux/+archive/naturalscrolling.

In summary :

sudo add-apt-repository ppa:zedtux/naturalscrolling
sudo apt-get update
sudo apt-get install naturalscrolling

Then run Natural Scrolling from your Dash. An indicator icon will appear where you can invert scrolling on a per-device basis (e.g. invert your trackapd, but don't invert your bluetooth mouse).

enter image description here

share|improve this answer

To use reverted/inverted/natural scrolling (whatever you call it), create file containing these line, right click, properties, and make it executable, add the file to Startup Application, and reboot.

#!/bin/sh
DEV_NO=`xinput list | grep "SynPS/2 Synaptics TouchPad" | sed 's/.*id=\([0-9]*\).*/\1/g'`
PROP_NO=`xinput list-props ${DEV_NO} | grep "Synaptics Scrolling Distance" | sed 's/.*(\([0-9]*\)).*/\1/g'`
xinput set-prop ${DEV_NO} ${PROP_NO} -106 -106

direct link download https://dl.dropboxusercontent.com/u/75813759/.nat

share|improve this answer
    
please add # before !/bin/sh, sorry I can't do proper formatting because I'm on mobile now, I'll upload the file once I get to computer. –  Nur May 26 '13 at 14:49
    
Have update my answer –  Nur May 28 '13 at 5:24

I suppose the best way to do this is by using dconf-editor:

  • Open Terminal
  • Type in deconf-editor and hit Enter
  • Now go to org>gnome>settings-daemon>peripherals>touchpad and now you can make most of the changes you want

Here's a screenshot of deconf-editor:

deconf-editor

share|improve this answer

The Arch Linux Wiki has a good tutorial at:

https://wiki.archlinux.org/index.php/Synaptics_Touchpad#Configuration

The only major requirement is an understanding of how to edit configuration files.

The main point to focus on at this URL is setting VertScrollDelta (and HorizScrollDelta if you enabled horizontal scrolling) to a negative value. What I do is take the previous value of this variable and set it to itself with a minus sign in front of it (e.g. instead of 106, use -106).

If Linux isn't your expertise, I'd suggest you read the entire article to gain a basic understanding of what to do.

Hope this helps.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.