¿Cómo hago que la configuración de mi sincronizador se mantenga?

29

La configuración predeterminada para los paneles táctiles sinápticos incluye una funcionalidad de pegado asignada a la esquina superior derecha del panel táctil. Puedo deshabilitar este comportamiento ejecutando el comando

synclient RTCornerButton=0

Pero cada vez que reinicio mi configuración se revierte. ¿Cómo evito que esto suceda?

cmatofte
fuente

Respuestas:

18

Debe colocar la configuración en un archivo xorg.conf de la siguiente manera:

sudo gedit /usr/share/X11/xorg.conf.d/60-synaptics-options.conf 

En el nuevo archivo, escriba

Section "InputClass"
  Identifier "touchpad catchall"
  Driver "synaptics"
  MatchIsTouchpad "on"
  MatchDevicePath "/dev/input/event*"

  Option "RTCornerButton" "0"

EndSection
monkbroc
fuente
15
No debe realizar cambios locales en los archivos en / usr / share. En su lugar, coloque el nuevo archivo en /etc/X11/xorg.conf.d/.
jdthood
@jdthood Esta respuesta sugirió editar /etc/X11/xorg.conf
Akseli Palén el
¿Cómo sé qué número debo poner en el nombre del archivo, de acuerdo con mi distribución (Ubuntu 16.04)? Algunos dicen 60-synaptics-options.conf, otros dicen 50-, 51-...
PlasmaBinturong
1
@PlasmaBinturong El número que comienza el nombre del archivo indica el orden en que se aplican los archivos de configuración; los archivos con números inferiores se aplican primero.
FThompson
@jdthood No existe ese directorio /etc/X11/xorg.conf.d ...
Michael
13

El demonio de configuración de Gnome puede anular las configuraciones existentes (por ejemplo, las establecidas en xorg.conf.d) para las cuales, las configuraciones existentes en /usr/share/X11/xorg.conf.d/50-synaptics.confse ignoran. Así es como lo arreglé.

correr dconf-editor

Editar /org/gnome/settings-daemon/plugins/mouse/(o /org/cinnamon/settings-daemon/plugins/mouse/para canela)

Desmarca la activeconfiguración

Ahora respetará la configuración sináptica existente de su sistema.

Luego siga la solución de monkbroc que funcionará ahora.

Pato feo
fuente
Estoy usando budgie-desktop encima de gdm, pero incluso después de esto, mi configuración se anula ...
rll
Querido dios, me llevó tanto tiempo encontrarlo. Gracias por la respuesta, fue exactamente la ruina de todos mis problemas.
cra0zy
@ cra0zy, la aguja literal en el pajar, ¿eh?
ugly_duck
1
En Ubuntu 18.04 descubrí que algo todavía anula mi configuración de configuración incluso con la dconf-editorsolución. Por lo tanto, en vez añadido un script para /etc/profile.d/que duerme 10 segundos antes de aplicar los ajustes: (sleep 10; synclient TapButton2=3) &.
FThompson
9

(Quizás) la solución más rápida es crear una entrada en las "Aplicaciones de inicio". Se puede encontrar en el lanzador de la unidad.

Una entrada de ejemplo se parece a esto:

Nombre: Enable Palm Detection

Mando: synclient PalmDetect=1

Comentario: Enable synclient palm detection

Esto es esencialmente equivalente a la respuesta de Augustin Riedinger, pero en lugar de crear la entrada de escritorio manualmente, dejamos que Ubuntu lo haga por nosotros.

Yixing
fuente
Esto no funciona en MATE
userDepth
1
Esto también funciona bien en Gnome 3. ¡Muchas gracias!
vcarel
8

El mejor método que me ha funcionado es agregar sus cambios en Xsession.d, para que se cargue automáticamente para todos los usuarios cuando inicie sesión en X:

(el archivo no existe, por lo que puede nombrarlo como desee. Los números a la izquierda significan el orden en que se ejecutará en comparación con los otros archivos).

/etc/X11/Xsession.d/80synaptics

(propiedad de root, con permisos 644)

Por ejemplo, puede usar esto como base:

#https://wiki.archlinux.org/index.php/Touchpad_Synaptics
#Palm dimension
#synclient PalmDetect=1
#synclient PalmMinWidth=4
#synclient PalmMinZ=100

#Touchpad sensibility (move)
#synclient FingerLow=10
#synclient FingerHigh=20

#Click detection
#synclient MaxTapTime=180
#synclient MaxTapMove = 242
#synclient MaxDoubleTapTime = 180

#2 finger = right click
#synclient TapButton2=0
#3 finger = middle click
#synclient TapButton3=2
#click corners
#synclient RBCornerButton=0 MaxTapTime
#synclient RTCornerButton=0
#synclient LTCornerButton=0
#synclient LBCornerButton=0

#Oval instead of rectangular
#synclient CircularPad=1

#TapAndDragGesture
#synclient TapAndDragGesture=1

#scroll in sides
#synclient VertEdgeScroll=0
#synclient HorizEdgeScroll=0
#synclient CornerCoasting=0

#2 finger scroll
#synclient VertTwoFingerScroll=1
#synclient HorizTwoFingerScroll=0

#Disable Touchpad on start
#synclient TouchpadOff=1

Probado en Ubuntu 14.04 y 16.04

lepe
fuente
Cuando hago eso, y descomento algunas cosas como el toque de 2 dedos y 3 dedos, no funciona después de reiniciar. Pero lo hace cuando los ingreso manualmente en la terminal. Entonces, ¿qué podría estar haciendo mal?
Mason
@Mason: ¿Está seguro de que no hay un error de sintaxis (quizás se haya introducido algún carácter extraño si 'copió' el código)? Verifique el /var/log/Xorg.0.logarchivo de registro en busca de errores o advertencias.
lepe
Esto tampoco funcionó para mí, probablemente también fue la respuesta más prometedora. Me desconecté y volví a encontrar que el archivo todavía estaba allí y que la línea no confirmada era la forma en que lo configuré. Pero aún tenía que ejecutar el comando en la terminal para ver que funcionaba correctamente.
Chris
@ Chris: Todavía funciona para mí en 16.04. Lo probaré en una instalación limpia y te lo haré saber aquí (probablemente hay algo que configuré hace mucho tiempo que hace que funcione para mí).
lepe
@lepe Gracias por comprobarlo. Terminé usando la respuesta "Inicio automático de la aplicación" (2 abajo en este momento). Eso parece funcionar razonablemente bien. Estoy tratando de detener toda la basura TapAndDragGesture. Incluso después de establecerlo en 0, sigo obteniendo una pequeña ventana donde todavía lo hará. Quizás esta técnica funcionaría mejor, no estoy seguro.
Chris
3

Hacer que las synclientopciones se mantengan entre sesiones X

Usando startx( xinit )

Agregue cualquier synclient <option>=<value> &línea .xinitrc antes de la línea que ejecuta su administrador de ventanas o entorno de escritorio , de esta manera:

## ~/.xinitrc
## X11 startup script; sourced by xinit(1) and its frontend startx(1)

## Set Synaptics touchpad options
synclient RTCornerButton=0 &

## Start desktop environment or window manager of your choice
exec startxfce4
# exec startlxde
# exec startkde
# exec i3
# exec dwm

El ejemplo anterior establece synclientopciones antes de ejecutar el entorno de escritorio Xfce . Las líneas que comienzan con #son comentarios (no se ejecutarán).

Usar un administrador de pantalla

El método es el mismo que para xinit, excepto que coloca las synclientlíneas en un script de inicio relevante para su administrador de pantalla, por ejemplo /etc/GDM/Init/Default.

Si tiene alguna duda, permítame recomendarle el excelente ArchWiki . Aunque es específico de Archlinux, la mayoría de las soluciones funcionan en todas las distribuciones de Linux debido a la naturaleza DIY de Arch. ¡Tener una buena!

rld.
fuente
Tampoco funcionará ...
Augustin Riedinger
Salida de synclient; synclient RTCornerButton=0; synclient?
rld.
2

Estoy usando Xubuntu 14.04 y esto puede no funcionar para usted. Abra Sesión y arranque o el nombre que sea para usted. Vaya a la pestaña Inicio automático de la aplicación, de nuevo, sea cual sea el nombre para usted. Haz clic en el botón Agregar. Mantenga el nombre y la descripción que desee y en el tipo de comando:

synclient RTCornerButton=0

Si desea agregar varias líneas, sepárelas con un ;

Asegúrese de que el comando que acaba de crear esté marcado.

Akash Agarwal
fuente
1

Agregar synclient [Var=Value]al final de ~ / .bashrc

ejemplo: synclient RTCornerButton=0

Esto hará que su sistema establezca esta configuración de sincronización cada vez que inicie sesión.

lindhe
fuente
2
Esto no funciona ... Los parámetros se ejecutan cuando se inicia una fiesta, no en sesión abierta ...
Augustin Riedinger
0

Todas las soluciones sugeridas aquí no funcionan para mí:

  • Quiero que la configuración esté en la /homecarpeta ya que es una configuración local (para poder mantener los parámetros incluso si cambio mi distribución, por ejemplo)
  • .bashrco .xinitrcparece que no se ejecuta correctamente

Así que terminé creando un .desktoparchivo que se inicia automáticamente:

cat ~/.config/autostart/touchpadconfig.desktop 
[Desktop Entry]
Name=Touchpad Config
GenericName=Touchpad Config
Comment=Sets better default parameters to touchpad
Exec="synclient VertScrollDelta=40 && synclient AccelFactor=0.1 && synclient RightButtonAreaTop && synclient RightButtonAreaLeft=0"
Terminal=false
Type=Application
Icon=input-mouse
Categories=Settings;
StartupNotify=false

Quizás no sea la mejor solución, pero me funciona.

Augustin Riedinger
fuente
0

Ninguna de las soluciones funcionó para mí en Ubuntu 14.04 LTS con Unity Desktop. Para hacer que la configuración sea permanente, tuve que pegar los comandos synclient en un script de shell y agregar el script de shell a mis aplicaciones de inicio en Unity.

Nota: El script de shell debe comenzar algo como #!/bin/bashantes de los comandos synclient, y los permisos deben cambiarse a ejecutables.

Kernpanik
fuente
0

Con Wayland (todavía experimental en 17.04, pero pronto será el predeterminado), tiene toda la configuración que necesita:

ingrese la descripción de la imagen aquí

Nico Schlömer
fuente
-1
sudoedit /usr/share/X11/xorg.conf.d/50-synaptics.conf

agregue esas líneas en la sección "InputClass"

Option "RTCornerButton" "0"

Si está utilizando GNOME o Cinnamon Desktop Manager, existe una buena posibilidad de que la configuración de GNOME / Cinnamon pueda anular su configuración personalizada. Para evitar que la configuración de GNOME / Cinnamon anule la suya, abra dconf Editor [ dconf-editor] y edite la siguiente entrada:

/org/gnome/settings-daemon/plugins/mouse/
or
/org/cinnamon/settings-daemon/plugins/mouse/

Desmarque activo .

Елин Й.
fuente