Disabilita touchpad durante la digitazione non funziona


Risposte:


49

Questo comando ha funzionato per me (1 è il numero di secondi di attesa dopo che è stato premuto l'ultimo tasto prima di riattivare il touchpad, cambiarlo nel valore desiderato):

syndaemon -i 1 -K -d

Aggiungilo alle applicazioni di avvio per farlo funzionare dopo il riavvio / arresto. Per vedere più opzioni digitare questo comando in un terminale:

syndaemon --help or man syndaemon

4
Funziona per me (Ubuntu 13.10), ma disabilita anche la funzionalità di scorrimento a due dita nel mio Asus K55N, che uso molto.
nicooga,

5
Funziona per me (Ubuntu 14.04, Lenovo T410) e lo scorrimento con due dita funziona ancora. Se lo aggiungi alle tue applicazioni di avvio, devi anche avere "Disabilita durante la digitazione" deselezionato nelle impostazioni del mouse e del touchpad, altrimenti i due meccanismi interferiscono l'uno con l'altro e il touchpad smette di funzionare completamente. Puoi votare la segnalazione di bug qui: bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/…
simonp,

Funzionava come un fascino (Ubuntu 14.04 LTS). L'ho provato e il cursore non si è mosso del 70% di 1 cm mentre stavo digitando (se non del tutto)
dlundy1

Funziona per me su Linux Mint 17.2
Jozef

simonp potrebbe trovare pertinente il bug # 1215463 di Ubuntu qui.
JdeBP,

24

Come altri qui, l'utilità syndaemon ha risolto il mio problema. Per me il syndaemon era già in esecuzione.

Dopo aver giocato con esso e aver letto alcune delle altre risposte qui ho deciso che la causa è l' -topzione.

L'opzione deve avere un bug perché quando è specificato posso ancora scorrere e toccare durante la digitazione. Tuttavia, se si omette del tutto l'opzione, tutto funziona correttamente; l'intero touchpad è disabilitato come previsto durante la digitazione quando non si include l' -topzione. Eseguo semplicemente quanto segue per riavviare syndaemon senza -t.

$ killall syndaemon
$ syndaemon -i 1 -KRd

  • -iconsente di specificare il tempo di attesa di syndaemon dopo l'interruzione della digitazione prima di riattivare il touchpad. Un secondo è quello che stava già funzionando e sembra andare bene per me.
  • -K dice a syndaemon di ignorare i tasti modificatori e le combinazioni modificatore + tasto durante il monitoraggio dell'input da tastiera.
  • -Rdice a syndaemon di usare l'estensione "XRecord" invece di eseguire il polling per l'input da tastiera. Immagino che lo usi per motivi di performance; l'estensione probabilmente segnala quando l'attività di digitazione si interrompe invece di dipendere da syndaemon per eseguire continuamente il polling della tastiera per vedere se c'è input.
  • -ddice a syndaemon di essere eseguito in background all'avvio, senza bloccare l'input del terminale. Se non includi questa opzione, syndaemon si fermerà alla chiusura del tuo terminale.

Quindi alla fine è l' -topzione che è il colpevole qui. Basta avere syndaemon in esecuzione senza di essa e tutto va bene.

PS: la mia macchina è un Lenovo Yoga 13 originale nel caso qualcuno si chiedesse. Ho completamente spazzato via la mia installazione di Windows e sostituito con Ubuntu 14.04.


1
Grazie! Sono su Lenovo T450 sotto 16.04 con (ancora!) Lo stesso problema. Penso che questo lo risolva, finalmente. Accidenti! Ma hai presentato una segnalazione di bug? In caso contrario, eccone uno: bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/…
CPBL

Non avevo creato un biglietto. Grazie per averlo fatto :)
Chev,

In realtà, sui T450 e 16.04, questo funziona immediatamente ma dopo un po 'di tempo, a volte legato al sonno, perdo completamente il cursore e devo riavviare. Quindi questa non è ancora una soluzione praticabile.
CPBL,

Grazie. Il tuo commento mi ha fatto capire perché questo comando non ha avuto alcun effetto. Ci sono stati 5 casi di syndaemonesecuzione in background.
ecc.

Nel mio caso non ho dovuto uccidere Syndaemon, non funzionava. Lenovo Yoga 13 con Ubuntu 18.04. Inoltre, l'uso di -i 0,5 rende syndaemon un po 'meno invasivo. Grande scoperta!
sabato

19

Prova a installare Pointing Devices dal Ubuntu Software Center. Digitando "dispositivi di puntamento" e quindi fare clic su Installa. Una volta installato, apri il programma dal trattino. Dopo aver aperto il programma, dovrebbe essere visualizzato il touchpad (insieme a tutti gli altri mouse collegati). Fai clic sul touchpad per visualizzare l'opzione chiamata palm detection. Imposta rangefino in fondo lowe pressureverso high. Quindi chiudilo fuori. Se ciò non risolve il problema, rispondi.


1
Questo non funziona per me sul mio Asus ZenBook Prime UX32A. Il programma Dispositivi di puntamento non sembra mantenere l'impostazione "Disabilita mentre altri dispositivi sono collegati" e il rilevamento del palmo non sembra funzionare.
noisygecko,

Egad, questo aiuta così tanto. Sono stato messo in crisi su quanto il puntatore insanguinato che si muoveva abbia interferito con il mio lavoro. Sono così stanco di scrivere uno script di shell ogni volta che installo Ubuntu e di modificare manualmente il numero finché non hanno ragione. Grazie per questo bocconcino.
Mr. B

La rilevazione del palmo non sembra funzionare. Posso spostare il touchpad con un dito mentre scrivo questo commento. [Testato Ubuntu 14.04, laptop Lenovo y510p] Ciò potrebbe essere correlato: noto che le barre di scorrimento per alto / basso non mantengono le mie impostazioni dopo aver premuto "Ok" e riaprirlo. (Nuova installazione del 14.04)
Jonathan

Anch'io posso spostare il puntatore durante la digitazione, ma dopo l'installazione, toccando il touchpad durante la digitazione non sposta il cursore di testo nella posizione del puntatore, quindi ora sono felice! (Ubuntu Gnome 14.04 + Gnome 3.12, Lenovo Carbon X1 Gen2).
Rasmus il

come @Rasmus, ma con Ubuntu 14.04 su Dell Inspiron 17R.
tigerjack89,

6

Ho provato tutte le opzioni come detto ma nessuna ha funzionato. Poi ho trovato questo comando magico che mi ha aiutato. Prova questo e potrebbe essere che funzionerà per te

syndaemon -i 1 -K -d

vuoi dire -d?
Feng,

Tu vuoi -d. L' -Kopzione non ha valore, dice a syndaemon di ignorare i tasti modificatori e le combinazioni modificatore + tasto durante il monitoraggio dell'input da tastiera. -ddice a syndaemon di essere eseguito in background invece di eseguire il hogging del terminale.
Chev,

questa magia è (senza -K)
Zlatev,

touchpad disabilitato :(
Amir

1
Sono su un Dell XPS 9550 e questo non ha fatto nulla AFAICT
Alexander Mills

1

Ho avuto lo stesso problema - anche se l'opzione era selezionata, non funzionava. L'ho risolto installando Synaptics Touchpad dal centro software Ubuntu (sembra che non sia installato di default).

Dopo averlo installato, ho effettuato l'accesso al trattino e quindi l'ho usato per disabilitare il touchpad durante la digitazione. È inoltre possibile impostare il tempo in cui deve rimanere inattivo quando viene rilevata l'attività della tastiera.


Non vedo "Touchpad Synaptics". Vedo i driver, ma non vedo questo. Hai aggiunto fonti personalizzate? [Testato Ubuntu 14.04]
Jonathan,

La risposta che ho dato ha funzionato in Kubuntu 13.04. Di recente sono passato alla versione 14.04 e ora non vedo nemmeno i synaptics (solo i driver, come hai detto tu).
dwcoder,

Ora apro a mano "Dispositivi di puntamento" e disabilito manualmente il touchpad ogni volta che collego un mouse = / [14.04]
Jonathan,

1

L'opzione " Disabilita durante la digitazione " in Impostazioni di sistema-> Mouse e Touchpad non funziona a causa di un bug in Ubuntu come descritto in questo rapporto di bug confermato . È un vecchio bug, dal 12.04 e riguarda tutti gli utenti indipendentemente dai laptop che usano .

Quello che sta funzionando è l'aggiunta dello snipet

syndaemon -i 4 -K -d

nelle applicazioni di avvio.

"-i 4" funziona bene per me, "-i 1" poiché alcune fonti suggeriscono che potrebbe non essere sufficiente.

Non utilizzare l'opzione "-t" che potresti trovare in alcuni esempi sul Web. Questa è la causa dei problemi in quanto non disabilita il touchpad durante la digitazione sulla tastiera.

Durante l'avvio syndaemon non è in esecuzione, quindi non è necessario "killall syndaemon". Se tuttavia Syndaemon è stato avviato, è necessario utilizzare:

killall syndaemon
syndaemon -i 4 -K -d

Puoi provare a digitare con una mano e provare a spostare il cursore con il touchpad usando le dita della seconda mano per confermare che funziona per te.


non funziona per me
vipin8169

1
  1. Deseleziona "Disabilita durante la digitazione" nelle impostazioni del Touchpad, come mostrato di seguito (sì, questo è necessario anche se sembra controintuitivo, altrimenti il ​​Touchpad finirà per essere disabilitato dopo aver fatto i seguenti passi "permanenti" e poi riavviato, poiché il syndaemon precedente / errato verrà avviato all'avvio e al conflitto)

    inserisci qui la descrizione dell'immagine

  2. termina il processo syndaemon corrente (se ne è stato avviato uno in precedenza all'avvio), che controlla questa funzionalità del touchpad:

    pkill syndaemon
    
  3. riavvia il processo syndaemon:

    syndaemon -i 2 -d -K
    

    dove: 2 è la quantità di tempo di ritardo, in secondi, che si desidera attendere dopo aver smesso di digitare e prima di attivare nuovamente il touchpad; si noti che qualsiasi valore temporale inferiore a 1,5 ~ 2 sec (più simile a qualsiasi cosa <2 sec in realtà) è glitch / buggy e non sembra mantenere il touchpad completamente disabilitato durante la digitazione

  4. Per rendere questa correzione permanente: eseguire l'applicazione “applicazioni di avvio” dalla barra di ricerca → fare clic su “Aggiungi” → e digitare il seguente comando nella sezione “Command”: syndaemon -i 2 -d -K. Nome e commento possono essere qualsiasi cosa. Fai clic su "Aggiungi" al termine, quindi chiudilo. Ecco come appare:

    inserisci qui la descrizione dell'immagine

  5. Riavvia il computer per verificare che funzioni. Nota che questa funzione non si avvierà fino a quando non avrai effettuato l'accesso al tuo account utente. Durante la schermata di accesso non è ancora attivato.

Maggiori informazioni su questo bug in Ubuntu 14.04 qui: https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/+bug/1295526

Questa risposta originariamente pubblicata qui: https://askubuntu.com/a/986129/327339


-1

Per aggiungere un'estensione a tutte le risposte già fornite ...

In primis: syndaemon -i 1 -K -d

L'unico problema con questo comando è che una volta ripristinato il sistema, il codice verrà sostanzialmente annullato.

Pertanto, consiglierei di creare un Aliasutilizzo di questo comando in questo modo anche quando il sistema si riavvia, è possibile semplicemente digitare un comando nel terminale e far eseguire automaticamente il codice dal prompt.

Personalmente ho fatto questo usando 'keystop' come nome del comando per implementare questo codice. Tuttavia, puoi utilizzare qualsiasi nome tu scelga, basta seguire i passaggi seguenti. (Sostituendo il keystopnome che scegli per il comando)

** Tieni presente che il nome del comando che scegli NON deve essere in uso!

Ecco come lo fai:

  1. Terminale aperto
  2. genere alias keystop='syndaemon -i 1 -K -d'

Questo è tutto! D'ora in poi, ogni volta che riavvierai il tuo sistema: apri semplicemente il Terminale e digita keystope il codice verrà eseguito!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.