El desplazamiento natural no funciona para el desplazamiento horizontal, ¿cómo solucionarlo?


8

He habilitado el desplazamiento natural a través de las diversas opciones de Ubuntu Tweak , pero eso no parece tener efecto para el desplazamiento horizontal, ni en navegadores web, ni en nautilus u otras aplicaciones nativas.

¿Hay alguna manera de aplicar este comportamiento también en el desplazamiento horizontal?

Estoy usando Ubuntu 12.04.

Respuestas:


4

También hay una forma "más agradable" xorg.confde hacer que las configuraciones invertidas <V_DISTANCE>y <H_DISTANCE>(determinadas según la respuesta de @ Eliran ) sean permanentes:

Cree un directorio /etc/X11/xorg.conf.d/y, en él, un archivo que 51-synaptics-tweaks.confcontenga:

Section "InputClass"
    Identifier "touchpad"
    Driver "synaptics"
    MatchIsTouchpad "on"
        Option "VertTwoFingerScroll" "on"
        Option "HorizTwoFingerScroll" "on"
        # In the following lines, use your own negative V_DISTANCE / H_DISTANCE values.
        Option "VertScrollDelta" "-113"
        Option "HorizScrollDelta" "-113"
EndSection

Esto sigue las recomendaciones de Ubuntu en los /usr/share/xorg.conf.d/*archivos de ejemplo y también las instrucciones de Archlinux . Para ver el efecto, reinicie X, por supuesto :)


bonito y limpio, +1!
Eliran Malka

En realidad, esto es asombroso. aceptando :)
Eliran Malka

9

En lugar de utilizar una aplicación designada para configurar el desplazamiento natural, se puede crear un script para invertir las direcciones de desplazamiento, tanto en el eje vertical como en el horizontal.

  1. Primero, obtenga el xinputaccesorio relacionado con la distancia de desplazamiento (observe las variables entre paréntesis angulares):

    $ xinput list
    ⎡ Virtual core pointer id=2 [master pointer (3)]
    ⎜   ↳ Virtual core XTEST pointer id=4   [slave pointer (2)]
    ⎜   ↳ SynPS/2 Synaptics TouchPad id=<TOUCHPAD_ID>   [slave pointer (2)]
    ⎣ Virtual core keyboard id=3    [master keyboard (2)]
        (...)
    
  2. Obtenga los valores apropiados para ese accesorio:

    $ xinput list-props <TOUCHPAD_ID> | grep "Scrolling Distance"
        Synaptics Scrolling Distance (<DISTANCE_KEY>):  <V_DISTANCE>, <H_DISTANCE>
        Synaptics Circular Scrolling Distance (301):    0.100000
    
  3. Luego, cree el archivo de script para aplicar las direcciones invertidas, negando los valores para la distancia vertical / horizontal. Alimente las variables devueltas anteriormente:

    #!/bin/sh
    xinput set-prop <TOUCHPAD_ID> <DISTANCE_KEY> -<V_DISTANCE> -<H_DISTANCE>
    nautilus -q
    nautilus -n &
    
  4. Otorgue permisos de ejecución al archivo, configúrelo para que se ejecute al inicio y ahí lo tiene.

Fuente:

Este método fue portado desde el viejo blog web de Andy C. , para crear una respuesta autónoma. Gracias, Andy, por proporcionar una solución elegante para todo el sistema.

Notas

  • Parece que llamar a nautilus es romper el script en 13.04. Omitir las dos llamadas a nautilus lo resuelve.
  • El desplazamiento natural (tanto vertical como horizontalmente) funciona correctamente desde el primer momento en 14.x, por lo que no es necesario realizar secuencias de comandos allí, simplemente active el "Desplazamiento natural" en las opciones de Mouse y Touchpad.

3

Como alternativa al uso de archivos de script o Ubuntu Tweak, también puede probar la aplicación llamada "Desplazamiento natural", hecha por Zedtux. Vendrá como un indicador.

Para instalarlo, la forma más fácil es usar un terminal:

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

estoy al tanto. Sin embargo, parece fallar la tarea para algunas aplicaciones nativas. Además, parece redundante instalar una aplicación (y desordenar el panel con otro indicador) únicamente para ese propósito, mientras que un script de cuatro líneas puede resolver esto, posiblemente mejor. Gracias por la alternativa de todos modos.
Eliran Malka

1
¡Interesante que su script funcione para cualquier ventana! De hecho, tengo un error con esto. Intentaré con tu solución.
Agmenor

1

En xfce4 (Xubuntu, Ubuntu Studio, ...) puede agregar esto en la consola:

echo 'pointer = 1 2 3 4 5 7 6 8 9 10 11 12' >> .Xmodmap
xmodmap .Xmodmap
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.