个人工具

“UbuntuHelp:SynapticsTouchpad”的版本间的差异

来自Ubuntu中文

跳转至: 导航, 搜索
 
(未显示同一用户的5个中间版本)
第4行: 第4行:
 
On most laptops, a '''[http://en.wikipedia.org/wiki/Touchpad touchpad]''' is the input device used as a substitute for a computer mouse.
 
On most laptops, a '''[http://en.wikipedia.org/wiki/Touchpad touchpad]''' is the input device used as a substitute for a computer mouse.
 
The term "Synaptics Touchpad" should not be confused with "[[UbuntuHelp:SynapticHowto|Synaptic]]", Ubuntu's Package Manager.
 
The term "Synaptics Touchpad" should not be confused with "[[UbuntuHelp:SynapticHowto|Synaptic]]", Ubuntu's Package Manager.
The touchpad will be detected and configured during the Ubuntu installation. However, in Ubuntu 6.06 LTS (Dapper Drake) and Ubuntu 6.10 (Edgy Eft) touchpads may not be detected, in which case scrolling will not work. See the [[troubleshooting Troubleshooting]] section.
+
== Disabling Touchpad for X.Org ==
[[Anchor(gui)]]
+
'''The easiest way to disable the Touchpad for X.Org system-wide, is to uninstall the package xserver-xorg-input-synaptics.'''
== Configuration with a Graphical Interface ==
+
== Other Configuration Methods ==
This sections describes how to install a GUI configuration tool for your Synaptics touchpad which integrates into your desktop environment. Other methods of configuring the touchpad include using [[synclient synclient]] on the command line, or by adding [[xconfig options]] directly to the X server configuration file.
+
For Ubuntu 8.04 and earlier, see [[UbuntuHelp:SynapticsTouchpad/Hardy| the older instructions]].
[[Anchor(gsynaptics)]]
+
<<Anchor(gui)>>
 +
== Basic Configuration with a Graphical Interface ==
 +
Ubuntu provides configuration of the most common touchpad options in '''System > Preferences > Mouse''', under the Touchpad tab. If you cannot find this tab, see the Troubleshooting section at the end of this page.
 +
Try the touchpad after unchecking the '''Enable mouse clicks with touchpad''' check box.
 +
Check operation after '''Enable horizontal scrolling''' is checked. This may not have been the default setting.
 +
If all else fails, when using two hands for operation, remember to lift your finger off of the touchpad when leaving a scroll bar, window or workspace.
 +
== Advanced Configuration with a Graphical Interface ==
 +
This sections describes how to install a GUI configuration tool for your Synaptics touchpad which integrates into your desktop environment. Other methods of configuring the touchpad include using [[UbuntuHelp:[synclient|synclient]]] on the command line, or by [[UbuntuHelp:[hal|adding options]]] to HAL fdi files.
 +
<<Anchor(gsynaptics)>>
 
=== Ubuntu ===
 
=== Ubuntu ===
* Enable SHMConfig in the X server configuration file as described in the section [[shmconfig Enabling SHMConfig]].
+
* [[UbuntuHelp:[shmconfig|Enable SHMConfig]]].
 
* For a preference tool which integrates into the GNOME Desktop environment, install the '''gsynaptics''' package from the universe repository. For help with installing packages see [[UbuntuHelp:InstallingSoftware|InstallingSoftware]].
 
* For a preference tool which integrates into the GNOME Desktop environment, install the '''gsynaptics''' package from the universe repository. For help with installing packages see [[UbuntuHelp:InstallingSoftware|InstallingSoftware]].
 
After installation, '''gsynaptics''' can be found under '''System > Preferences > Touchpad'''.
 
After installation, '''gsynaptics''' can be found under '''System > Preferences > Touchpad'''.
[[Anchor(ksynaptics)]]
+
<<Anchor(ksynaptics)>>
 
=== Kubuntu ===
 
=== Kubuntu ===
* Enable SHMConfig in the X server configuration file as described in the section [[shmconfig Enabling SHMConfig]].
+
* [[UbuntuHelp:[shmconfig|Enable SHMConfig]]].
* For a preference tool which integrates into the KDE desktop environment, install the '''ksynaptics''' package from the universe repository. For help with installing packages see [[UbuntuHelp:InstallingSoftware|InstallingSoftware]].
+
* The preference tool which integrates into the KDE desktop environment, '''ksynaptics''' package from the universe repository, is no longer in the Intrepid Repositories. Until the tool is updated, please use the method for Xubuntu and others below.
After installation, '''ksynaptics''' can be found in the '''KDE Control Center'''.
+
<<Anchor(qsynaptics)>>
[[Anchor(qsynaptics)]]
+
 
=== Xubuntu and others ===
 
=== Xubuntu and others ===
* Enable SHMConfig in the X server configuration file as described in the section [[shmconfig Enabling SHMConfig]].
+
* [[UbuntuHelp:[shmconfig|Enable SHMConfig]]].
 
* For users of Xfce or anything else besides GNOME or KDE, install the '''qsynaptics''' package from the universe repository. For help with installing packages see [[UbuntuHelp:InstallingSoftware|InstallingSoftware]].
 
* For users of Xfce or anything else besides GNOME or KDE, install the '''qsynaptics''' package from the universe repository. For help with installing packages see [[UbuntuHelp:InstallingSoftware|InstallingSoftware]].
[[Anchor(syndaemon)]]
+
* Note: qsynaptics is no longer in the repositories either as of Jaunty.  gsynaptics is the only remaining option for a full featured gui currently.  There is a gui program called touchfreeze which can pause your touchpad while you are typing to help reduce erroneous touchpad actions using syndaemon below automatically.
 +
<<Anchor(resume)>>
 +
=== Restoring gsynaptics settings on resume ===
 +
* Upon resuming from suspend gsynaptics-init needs to be run for each open X session, I've written a script to put in /etc/pm/sleep.d/98gsynaptics to do that automatically
 +
<pre><nowiki>#!Shell
 +
 
 +
#!/bin/bash
 +
 
 +
# Only run on resume/thaw
 +
if [[ ${1} =~ (thaw|resume) ]] ; then
 +
 
 +
  synaptics() {
 +
 
 +
    # sleep to give time for X
 +
    sleep 4s
 +
 
 +
    who | while read line ; do
 +
      a=(${line})
 +
      regex="^:[[:digit:]]"
 +
      if [[ ${a[1]} =~ $regex ]] ; then
 +
        init="sudo -H -u ${a[0]} DISPLAY=${a[1]} gsynaptics-init"
 +
        eval "${init}"
 +
      fi
 +
    done
 +
  }
 +
 
 +
  # run in background so sleep doesn't hold up resume
 +
  synaptics &
 +
  # disown so exiting shell doesn't kill function
 +
  disown %1
 +
 
 +
fi
 +
 
 +
</nowiki></pre>
 +
<<Anchor(syndaemon)>>
 
== Disabling the Touchpad Temporarily While Typing ==
 
== Disabling the Touchpad Temporarily While Typing ==
 
To avoid accidental mouse movement while typing, '''syndaemon''' can be used to monitor the keyboard activity and disable the touchpad for a period of time after the last keystroke.
 
To avoid accidental mouse movement while typing, '''syndaemon''' can be used to monitor the keyboard activity and disable the touchpad for a period of time after the last keystroke.
First enable SHMConfig in the X server configuration file as described in the section [[shmconfig Enabling SHMConfig]].
 
 
The following commands should be typed in a [[UbuntuHelp:UsingTheTerminal|terminal]].
 
The following commands should be typed in a [[UbuntuHelp:UsingTheTerminal|terminal]].
 
The '''-d''' option causes '''syndaemon''' to run in the background, so the terminal can be closed after executing the command.  
 
The '''-d''' option causes '''syndaemon''' to run in the background, so the terminal can be closed after executing the command.  
第39行: 第79行:
 
syndaemon -d -i 1
 
syndaemon -d -i 1
 
</nowiki></pre>
 
</nowiki></pre>
To make '''syndaemon''' start up each time you login, add the desired command to the list of Startup Programs in '''System > Preferences > Sessions'''. See [[UbuntuHelp:AddingProgramToSessionStartup|AddingProgramToSessionStartup]].
+
If syndaemon doesn't work properly out of the box, try [[UbuntuHelp:[shmconfig|enabling SHMConfig]]], and force syndaemon to use it by passing the -S option. (This might generally be the case if you only use HAL fdi(as described further below) to configure your input interfaces for xorg)
[[Anchor(shmconfig)]]
+
<pre><nowiki>
 +
syndaemon -d -i 1 -S
 +
</nowiki></pre>
 +
Further options can be found by reviewing the ''man'' page with:
 +
<pre><nowiki>
 +
man syndaemon
 +
</nowiki></pre>
 +
The following example invokes syndaemon for 4 seconds after any keyboard activity ('''-i 4'''), except when modifier keys such as Alt or Shift are used ('''-K'''), and only disables tapping and scrolling ('''-t''') for this period.
 +
<pre><nowiki>
 +
syndaemon -i 4 -d -t -K
 +
</nowiki></pre>
 +
To make '''syndaemon''' start up each time you login, add the desired command to the list of Startup Programs in '''System > Preferences > Sessions''' or '''System > Preferences > Startup Applications'''. See [[UbuntuHelp:AddingProgramToSessionStartup|AddingProgramToSessionStartup]].
 +
In Ubuntu Karmic (9.10) '''syndaemon''' is started automatically by '''gsynaptics-init''' but can be turned off in '''System > Preferences > Mouse > Touchpad > Disable touchpad while typing''' (which alters the gconf setting: /desktop/gnome/peripherals/touchpad/disable_while_typing )
 +
<<Anchor(shmconfig)>>
 
== Enabling SHMConfig ==
 
== Enabling SHMConfig ==
In order for tools such as '''[[synclient synclient]]''', '''[[syndaemon syndaemon]]''', '''[[gsynaptics gsynaptics]]''', '''[[ksynaptics ksynaptics]]''', and '''[[qsynaptics qsynaptics]]''' to work, they need access to the synaptics touchpad driver shared memory. This is done by enabling '''SHMConfig''' "on" in the X server Synaptics Touchpad configuration. With this enabled, these tools can modify the run-time configuration of the touchpad input driver without restarting the X server.
+
'''Note:''' Tools such as '''xinput''' and '''syndaemon''' can now alter touchpad settings without needing '''SHMConfig''' to be enabled. However, SHMConfig is still required for some functionality.
 +
In order for tools such as '''[[UbuntuHelp:[synclient|synclient]]]''', '''[[UbuntuHelp:[syndaemon|syndaemon]]]''', '''[[UbuntuHelp:[gsynaptics|gsynaptics]]]''', '''[[UbuntuHelp:[ksynaptics|ksynaptics]]]''', and '''[[UbuntuHelp:[qsynaptics|qsynaptics]]]''' to work, they need access to the synaptics touchpad driver shared memory. This is done by enabling '''SHMConfig''' "on" in the X server Synaptics touchpad configuration. With this enabled, these tools can modify the run-time configuration of the touchpad input driver without restarting the X server.
 
/!\ Note the warning from the man page for synclient:
 
/!\ Note the warning from the man page for synclient:
 
<pre><nowiki>
 
<pre><nowiki>
 
WARNING: This is not secure if you are in an untrusted multiuser
 
WARNING: This is not secure if you are in an untrusted multiuser
environment. All local users can change the parameters at any time.
+
        environment. All local users can change the parameters at any time.
</nowiki></pre>
+
</nowiki></pre>
If this is an issue for you, the touchpad can be configured without enabling SHMConfig by placing the desired options in the X server configuration file and restarting the X server. See [[xconfig Configuration with the X Server Configuration file]].
+
If this is an issue for you, the touchpad can be configured without enabling SHMConfig by placing the desired options in [[UbuntuHelp:[hal|a HAL fdi file]]] and rebooting.
In a [[UbuntuHelp:UsingTheTerminal|terminal]] type:
+
In a [[UbuntuHelp:UsingTheTerminal|terminal]] type (for Gnome/Ubuntu):
 
<pre><nowiki>
 
<pre><nowiki>
gksudo gedit /etc/X11/xorg.conf
+
gksudo gedit /etc/hal/fdi/policy/shmconfig.fdi
 
</nowiki></pre>
 
</nowiki></pre>
Find the "Input``Device" section for the touchpad:
+
(for KDE/Kubuntu):
 
<pre><nowiki>
 
<pre><nowiki>
Section "InputDevice"
+
kdesudo kate /etc/hal/fdi/policy/shmconfig.fdi
Identifier "Synaptics Touchpad"
+
Driver "synaptics"
+
Option "SendCoreEvents" "true"
+
Option "Device" "/dev/psaux"
+
Option "Protocol" "auto-dev"
+
Option "HorizScrollDelta" "0"
+
EndSection
+
 
</nowiki></pre>
 
</nowiki></pre>
If this section is not present, see [[xinputdevice Adding a Synaptics Touchpad to the X Server Configuration]].
+
Put this into the file:
Add the following line to this section:
+
 
<pre><nowiki>
 
<pre><nowiki>
Option "SHMConfig" "on"
+
<?xml version="1.0" encoding="UTF-8"?>
 +
<deviceinfo version="0.2">
 +
  <device>
 +
    <match key="input.x11_driver" string="synaptics">
 +
      <merge key="input.x11_options.SHMConfig" type="string">on</merge>
 +
    </match>
 +
  </device>
 +
</deviceinfo>
 
</nowiki></pre>
 
</nowiki></pre>
The result should look like this:
+
Save and close that file, reboot, and SHMConfig should be enabled.
<pre><nowiki>
+
<<Anchor(synclient)>>
Section "InputDevice"
+
Identifier "Synaptics Touchpad"
+
Driver "synaptics"
+
Option "SendCoreEvents" "true"
+
Option "Device" "/dev/psaux"
+
Option "Protocol" "auto-dev"
+
Option "HorizScrollDelta" "0"
+
Option "SHMConfig" "on"
+
EndSection
+
</nowiki></pre>
+
To enable the changes log out of your desktop environment, and restart the X server by typing '''Ctrl + Alt + Backspace'''.
+
[[Anchor(synclient)]]
+
 
== Configuration with synclient ==
 
== Configuration with synclient ==
'''synclient''' can be used to adjust touchpad settings from the command line. This will work even if a [[gui GUI Preference tool]] is installed.
+
'''synclient''' can be used to adjust touchpad settings from the command line. This will work even if a [[UbuntuHelp:[gui|GUI Preference tool]]] is installed.
Enable SHMConfig in the X server configuration file as described in the section [[shmconfig Enabling SHMConfig]].
+
Enable SHMConfig as described in the section [[UbuntuHelp:[shmconfig|Enabling SHMConfig]]].
 
List all settings:
 
List all settings:
 
<pre><nowiki>
 
<pre><nowiki>
第99行: 第140行:
 
synclient TouchpadOff=0
 
synclient TouchpadOff=0
 
</nowiki></pre>
 
</nowiki></pre>
[[Anchor(xconfig)]]
+
<<Anchor(hal)>>
== Configuration with the X Server Configuration file ==
+
== Configuration with HAL fdi files ==
The options that are shown by the command <code><nowiki>synclient -l</nowiki></code> ([[synclient see above]]) may also be added directly to the touchpad "Input``Device" section in <code><nowiki>/etc/X11/xorg.conf</nowiki></code>. In this case [[shmconfig SHMConfig]] does not need to be enabled.
+
Touchpad options can be set permanently through HAL. See [[UbuntuWiki:X/Config/Input#Input_Configuration_with_HAL|the|HAL input section of the X config documentation]] for details.
For example, to turn the touchpad off, add the line:
+
<<Anchor(troubleshooting)>>
<pre><nowiki>
+
Option "TouchpadOff" "1"
+
</nowiki></pre>
+
The result will look like this:
+
<pre><nowiki>
+
Section "InputDevice"
+
Identifier "Synaptics Touchpad"
+
Driver "synaptics"
+
Option "SendCoreEvents" "true"
+
Option "Device" "/dev/psaux"
+
Option "Protocol" "auto-dev"
+
Option "HorizScrollDelta" "0"
+
Option "SHMConfig" "off"
+
Option "TouchpadOff" "1"
+
EndSection
+
</nowiki></pre>
+
[[Anchor(troubleshooting)]]
+
 
== Troubleshooting ==
 
== Troubleshooting ==
=== Determine Whether a Touchpad Is Configured ===
+
=== Determine whether a touchpad has been detected ===
To check if a touchpad is configured, open a [[UbuntuHelp:UsingTheTerminal|terminal]] and check your <code><nowiki>/etc/X11/xorg.conf</nowiki></code> file by typing the following:
+
To check if a touchpad has been detected open a [[UbuntuHelp:UsingTheTerminal|terminal]] and check the input device list given by this command:
<pre><nowiki>
+
grep Iden /etc/X11/xorg.conf
+
</nowiki></pre>
+
If one of the lines is:
+
<pre><nowiki>
+
Identifier "Synaptics Touchpad"
+
</nowiki></pre>
+
then you have a Synaptics Touchpad configured. If not, see [[xinputdevice Adding a Synaptics Touchpad to the X Server Configuration]].
+
[[Anchor(xinputdevice)]]
+
=== Adding a Synaptics Touchpad to the X Server Configuration ===
+
To add support for a touchpad which was not detected the xorg.conf file will need to be edited. In a [[UbuntuHelp:UsingTheTerminal|terminal]] type:
+
<pre><nowiki>
+
gksudo gedit /etc/X11/xorg.conf
+
</nowiki></pre>
+
After the lines:
+
<pre><nowiki>
+
Section "InputDevice"
+
Identifier "Configured Mouse"
+
Driver "mouse"
+
Option "CorePointer"
+
Option "Device" "/dev/input/mice"
+
Option "Protocol" "ExplorerPS/2"
+
Option "ZAxisMapping" "4 5"
+
Option "Emulate3Buttons" "true"
+
EndSection
+
</nowiki></pre>
+
add the following:
+
<pre><nowiki>
+
Section "InputDevice"
+
Identifier "Synaptics Touchpad"
+
Driver "synaptics"
+
Option "SendCoreEvents" "true"
+
Option "Device" "/dev/psaux"
+
Option "Protocol" "auto-dev"
+
Option "HorizScrollDelta" "0"
+
EndSection
+
</nowiki></pre>
+
Next, find the "Server``Layout" section near the bottom:
+
<pre><nowiki>
+
Section "ServerLayout"
+
Identifier "Default Layout"
+
Screen "Default Screen"
+
InputDevice "Generic Keyboard"
+
InputDevice "Configured Mouse"
+
InputDevice    "stylus" "SendCoreEvents"
+
InputDevice    "cursor" "SendCoreEvents"
+
InputDevice    "eraser" "SendCoreEvents"
+
EndSection
+
</nowiki></pre>
+
Add the following line:
+
 
<pre><nowiki>
 
<pre><nowiki>
Inputdevice "Synaptics Touchpad"
+
xinput list
 
</nowiki></pre>
 
</nowiki></pre>
The result should look like this:
+
If one of the lines mentions a touchpad (perhaps also "Synaptics" or "ALPS"), your touchpad has been detected.
 +
If one of the lines mentions an "ADB mouse", then your touchpad is old. Use the trackpad command line tool to configure it. Here's an example to switch on tapping and dragging:
 
<pre><nowiki>
 
<pre><nowiki>
Section "ServerLayout"
+
sudo trackpad show
Identifier "Default Layout"
+
sudo trackpad tap
Screen "Default Screen"
+
sudo trackpad drag
Inputdevice "Generic Keyboard"
+
Inputdevice "Configured Mouse"
+
Inputdevice "stylus" "SendCoreEvents"
+
Inputdevice "cursor" "SendCoreEvents"
+
Inputdevice "eraser" "SendCoreEvents"
+
Inputdevice "Synaptics Touchpad"
+
EndSection
+
 
</nowiki></pre>
 
</nowiki></pre>
To enable the changes log out of your desktop environment, and restart the X server by typing '''Ctrl + Alt + Backspace'''.
+
If nothing else works, see [[UbuntuWiki:DebuggingTouchpadDetection|the|other touchpad debugging pages]].
=== Specific Hardware ===
+
==== Apple iBook G4 ====
+
* [[UbuntuHelp:SynapticsTouchpad/AppleIbookG4|Apple iBook G4]]
+
 
== See also ==
 
== See also ==
 
* [[UbuntuHelp:SynapticsTouchpad/ShortcutKey|Turning Synaptics Touchpads On/Off with a Shortcut Key]]
 
* [[UbuntuHelp:SynapticsTouchpad/ShortcutKey|Turning Synaptics Touchpads On/Off with a Shortcut Key]]
 
----
 
----
[[category:CategoryDocumentation]]
+
[[category:CategoryXwindowSystem]]
  
 
[[category:UbuntuHelp]]
 
[[category:UbuntuHelp]]

2010年5月20日 (四) 00:20的最新版本


  1. title Synaptics Touchpad

On most laptops, a touchpad is the input device used as a substitute for a computer mouse. The term "Synaptics Touchpad" should not be confused with "Synaptic", Ubuntu's Package Manager.

Disabling Touchpad for X.Org

The easiest way to disable the Touchpad for X.Org system-wide, is to uninstall the package xserver-xorg-input-synaptics.

Other Configuration Methods

For Ubuntu 8.04 and earlier, see the older instructions. <<Anchor(gui)>>

Basic Configuration with a Graphical Interface

Ubuntu provides configuration of the most common touchpad options in System > Preferences > Mouse, under the Touchpad tab. If you cannot find this tab, see the Troubleshooting section at the end of this page. Try the touchpad after unchecking the Enable mouse clicks with touchpad check box. Check operation after Enable horizontal scrolling is checked. This may not have been the default setting. If all else fails, when using two hands for operation, remember to lift your finger off of the touchpad when leaving a scroll bar, window or workspace.

Advanced Configuration with a Graphical Interface

This sections describes how to install a GUI configuration tool for your Synaptics touchpad which integrates into your desktop environment. Other methods of configuring the touchpad include using [[UbuntuHelp:[synclient|synclient]]] on the command line, or by [[UbuntuHelp:[hal|adding options]]] to HAL fdi files. <<Anchor(gsynaptics)>>

Ubuntu

  • [[UbuntuHelp:[shmconfig|Enable SHMConfig]]].
  • For a preference tool which integrates into the GNOME Desktop environment, install the gsynaptics package from the universe repository. For help with installing packages see InstallingSoftware.

After installation, gsynaptics can be found under System > Preferences > Touchpad. <<Anchor(ksynaptics)>>

Kubuntu

  • [[UbuntuHelp:[shmconfig|Enable SHMConfig]]].
  • The preference tool which integrates into the KDE desktop environment, ksynaptics package from the universe repository, is no longer in the Intrepid Repositories. Until the tool is updated, please use the method for Xubuntu and others below.

<<Anchor(qsynaptics)>>

Xubuntu and others

  • [[UbuntuHelp:[shmconfig|Enable SHMConfig]]].
  • For users of Xfce or anything else besides GNOME or KDE, install the qsynaptics package from the universe repository. For help with installing packages see InstallingSoftware.
  • Note: qsynaptics is no longer in the repositories either as of Jaunty. gsynaptics is the only remaining option for a full featured gui currently. There is a gui program called touchfreeze which can pause your touchpad while you are typing to help reduce erroneous touchpad actions using syndaemon below automatically.

<<Anchor(resume)>>

Restoring gsynaptics settings on resume

  • Upon resuming from suspend gsynaptics-init needs to be run for each open X session, I've written a script to put in /etc/pm/sleep.d/98gsynaptics to do that automatically
#!Shell

#!/bin/bash

# Only run on resume/thaw
if [[ ${1} =~ (thaw|resume) ]] ; then

  synaptics() {

    # sleep to give time for X
    sleep 4s

    who | while read line ; do
      a=(${line})
      regex="^:[[:digit:]]"
      if [[ ${a[1]} =~ $regex ]] ; then
        init="sudo -H -u ${a[0]} DISPLAY=${a[1]} gsynaptics-init"
        eval "${init}"
      fi
    done
  }

  # run in background so sleep doesn't hold up resume
  synaptics &
  # disown so exiting shell doesn't kill function
  disown %1

fi

<<Anchor(syndaemon)>>

Disabling the Touchpad Temporarily While Typing

To avoid accidental mouse movement while typing, syndaemon can be used to monitor the keyboard activity and disable the touchpad for a period of time after the last keystroke. The following commands should be typed in a terminal. The -d option causes syndaemon to run in the background, so the terminal can be closed after executing the command.

syndaemon -d

The -t option causes syndaemon to only disable tapping and scrolling, not mouse movements:

syndaemon -d -t

By default syndaemon disables the touchpad for 2 seconds after the last keyboard activity. To specify a different timeout, use the -i option. For example, a timeout of 1 second:

syndaemon -d -i 1

If syndaemon doesn't work properly out of the box, try [[UbuntuHelp:[shmconfig|enabling SHMConfig]]], and force syndaemon to use it by passing the -S option. (This might generally be the case if you only use HAL fdi(as described further below) to configure your input interfaces for xorg)

syndaemon -d -i 1 -S

Further options can be found by reviewing the man page with:

man syndaemon

The following example invokes syndaemon for 4 seconds after any keyboard activity (-i 4), except when modifier keys such as Alt or Shift are used (-K), and only disables tapping and scrolling (-t) for this period.

syndaemon -i 4 -d -t -K

To make syndaemon start up each time you login, add the desired command to the list of Startup Programs in System > Preferences > Sessions or System > Preferences > Startup Applications. See AddingProgramToSessionStartup. In Ubuntu Karmic (9.10) syndaemon is started automatically by gsynaptics-init but can be turned off in System > Preferences > Mouse > Touchpad > Disable touchpad while typing (which alters the gconf setting: /desktop/gnome/peripherals/touchpad/disable_while_typing ) <<Anchor(shmconfig)>>

Enabling SHMConfig

Note: Tools such as xinput and syndaemon can now alter touchpad settings without needing SHMConfig to be enabled. However, SHMConfig is still required for some functionality. In order for tools such as [[UbuntuHelp:[synclient|synclient]]], [[UbuntuHelp:[syndaemon|syndaemon]]], [[UbuntuHelp:[gsynaptics|gsynaptics]]], [[UbuntuHelp:[ksynaptics|ksynaptics]]], and [[UbuntuHelp:[qsynaptics|qsynaptics]]] to work, they need access to the synaptics touchpad driver shared memory. This is done by enabling SHMConfig "on" in the X server Synaptics touchpad configuration. With this enabled, these tools can modify the run-time configuration of the touchpad input driver without restarting the X server. /!\ Note the warning from the man page for synclient:

WARNING: This is not secure if you are in an untrusted multiuser
         environment. All local users can change the parameters at any time.
 

If this is an issue for you, the touchpad can be configured without enabling SHMConfig by placing the desired options in [[UbuntuHelp:[hal|a HAL fdi file]]] and rebooting. In a terminal type (for Gnome/Ubuntu):

gksudo gedit /etc/hal/fdi/policy/shmconfig.fdi

(for KDE/Kubuntu):

kdesudo kate /etc/hal/fdi/policy/shmconfig.fdi

Put this into the file:

<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
  <device>
    <match key="input.x11_driver" string="synaptics">
      <merge key="input.x11_options.SHMConfig" type="string">on</merge>
    </match>
  </device>
</deviceinfo>

Save and close that file, reboot, and SHMConfig should be enabled. <<Anchor(synclient)>>

Configuration with synclient

synclient can be used to adjust touchpad settings from the command line. This will work even if a [[UbuntuHelp:[gui|GUI Preference tool]]] is installed. Enable SHMConfig as described in the section [[UbuntuHelp:[shmconfig|Enabling SHMConfig]]]. List all settings:

synclient -l

Examples

Turn touchpad off:

synclient TouchpadOff=1

Turn touchpad on:

synclient TouchpadOff=0

<<Anchor(hal)>>

Configuration with HAL fdi files

Touchpad options can be set permanently through HAL. See the|HAL input section of the X config documentation for details. <<Anchor(troubleshooting)>>

Troubleshooting

Determine whether a touchpad has been detected

To check if a touchpad has been detected open a terminal and check the input device list given by this command:

xinput list

If one of the lines mentions a touchpad (perhaps also "Synaptics" or "ALPS"), your touchpad has been detected. If one of the lines mentions an "ADB mouse", then your touchpad is old. Use the trackpad command line tool to configure it. Here's an example to switch on tapping and dragging:

sudo trackpad show
sudo trackpad tap
sudo trackpad drag

If nothing else works, see the|other touchpad debugging pages.

See also