Pertanyaan Bagaimana cara menonaktifkan touchpad menggunakan baris perintah?


Apakah ada cara untuk menonaktifkan touchpad menggunakan perintah terminal?


36
2017-10-16 19:22


asal




Jawaban:


Untuk mematikan touch pad:

synclient TouchpadOff=1

Untuk mengaktifkannya kembali:

synclient TouchpadOff=0

47
2017-10-16 19:39



Sederhana tetapi langsung ke intinya. - Ade Malsasa Akbar
tidak berfungsi di komputer saya ... - Kin
Menarik, bagus untuk diketahui. - aleroxac
Perintah berjalan tanpa kesalahan pada Ubuntu 14.04 LTS saya pada Dell XPS 13 tetapi tidak berpengaruh. - I. J. Kennedy
Toggle akan menyenangkan - saya ingin mengaturnya sebagai jalan pintas atau sesuatu. Lebih baik lagi, ketika itu berlabuh, saya ingin touchpad mati - Christian Bongiorno


Setidaknya ada dua metode (yang saya tahu) yang bisa Anda coba.

synclient

Jika laptop Anda dilengkapi dengan touchpad Synaptics (atau ALPS) yang memang bisa Anda gunakan synclient sebagaimana telah disebutkan oleh Shutupsquare. Saya menjalankan Ubuntu 14.04 dan pada mesin saya terinstal secara default.

Uji apakah sinklient diinstal: synclient -V (harus melaporkan nomor versi)

Hidupkan touchpad: synclient TouchpadOff=0

Matikan touchpad: synclient TouchpadOff=1

Saya belum menguji ini sendiri, tetapi jika tujuan Anda adalah untuk tidak menggerakkan mouse ketika lengan Anda beristirahat di touch pad, ini mungkin bisa membantu.

Aktifkan deteksi telapak tangan: synclient PalmDetect=1

Matikan deteksi telapak tangan: synclient PalmDetect=0

Secara umum Anda dapat mengkonfigurasi properti touchpad Synaptics Anda dengan synclient property=value. Di mana properti adalah salah satu properti yang tersedia ditunjukkan oleh synclient -l 

Tautan untuk membaca lebih lanjut

ubuntu - bantuan kominitas wiki - SynapticsTouchpad

archlinux - wiki - Synaptics Touchpad

tanyakan ubuntu - Bagaimana cara membuat pengaturan sinkronik saya tetap? - Ubuntu

xinput

Jika Anda tidak ingin atau tidak bisa menggunakan synclient, Anda juga bisa menggunakan xinput. Prosedurnya agak mirip.

daftar semua perangkat xinput: xinput

Bagian dari ouput bisa terlihat seperti ini:

⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech USB-PS/2 Optical Mouse           id=13   [slave  pointer  (2)]
⎜   ↳ ETPS/2 Elantech Touchpad                  id=17   [slave  pointer  (2)]

Ini kasus khusus touchpad saya memiliki id = 17 dan nama lengkapnya adalah "ETPS / 2 Elantech Touchpad".

Perintah untuk mengatur properti adalah xinput set-prop. Properti untuk mengaktifkan atau menonaktifkan touchpad adalah Device Enabled, sehingga untuk mengaktifkan atau menonaktifkannya ketik:

Hidupkan touchpad: xinput set-prop <id> "Device Enabled" 1 (dimana <id> adalah id perangkat Anda, dalam kasus saya 17)

Matikan touchpad: xinput set-prop <id> "Device Enabled" 0

Aktifkan deteksi telapak tangan: xinput set-prop <id> "Palm Detection" 1

Matikan deteksi telapak tangan: xinput set-prop <id> "Palm Detection" 0

Untuk menanyakan properti yang tersedia: xinput list-props <id> ATAU xinput list-props <full-name>, ini harus cukup mirip synclient -l.

Tautan untuk membaca lebih lanjut

ubuntu - wiki - input

CATATAN

Saat mengatur properti melalui keduanya xinput atau synclient properti tidak disetel ke alat lain. Mereka juga tidak diatur dalam pusat kendali kesatuan.


20
2017-09-29 23:50



Terima kasih atas jawaban kedua. synclient tidak bekerja untukku, xinput melakukan. - Robin Winslow
Perhatikan itu xinput id dapat berubah setelah dinyalakan ulang. Jadi mengandalkan id ini di skrip atau pintas tidak akan berfungsi. - Lode
synclient bekerja pada Arch Linux. Terima kasih begitu banyak!!! - Theodore R. Smith
Ini melakukannya untuk saya. Secara khusus, saya menemukan bahwa saya harus berlari xinput <enable/disable> <id>, sebagai pengaturan TouchpadOff melalui synclient tidak efektif. - Michael Mol


synclient dan xinput tidak akan berfungsi jika Anda menggunakan lingkungan gnome (atau unity, cinnamon), karena ini akan mengesampingkan pengaturan, jadi jika Anda ingin synclient atau xinput untuk mengambil alih pengaturan ini, Anda harus menonaktifkannya terlebih dahulu:

  1. memasang dconf-editor jika tidak diinstal:

    apt-get install dconf-editor
    
  2. menjalankan dconf-editor

    dconf-editor 
    
  3. buka direktori /org/gnome/settings-daemon/plugins/mouse/ atau /org/cinnamon/settings-daemon/plugins/mouse/, dan unclick kotak centang untuk active.

  4. logout atau reboot

Ini harus dilakukan synclient atau xinput kerja.


4
2018-01-29 13:10





  1. Buat daftar perangkat input Anda:

    xinput list
    

    Dalam kasus saya, saya memiliki daftar ini:

    Virtual core XTEST pointer                  id=4
    Logitech M510                               id=11   
    ETPS/2 Elantech Touchpad                    id=15
    
  2. Nonaktifkan touchpad Anda dengan meneruskan ID

    xinput set-prop 15 "Device Enabled" 0
    

1
2018-06-06 03:55





Saya menulis sepotong kode python sehingga Anda dapat menggunakan xinput teknik tanpa melakukan semua pekerjaan manual. Copyleft, AS-IS, tidak ada jaminan, gunakan dengan resiko Anda sendiri. Berfungsi bagus untuk saya: dan jika Anda menggunakan gnome, cukup petakan ke pintasan utama seperti CtrlBergeserT.

#!/usr/bin/python2
# -*- coding: utf-8 -*-
'''Program to toggle Touchpad Enable to Disable or vice-versa.'''

import commands
import re


def current_id():
    """ Search through the output of xinput and find the line that has the
    word TouchPad.  At that point, I believe we can find the ID of that device."""

    props = commands.getoutput("xinput").split("\n")
    match = [line for line in props if "TouchPad" in line]
    assert len(match) == 1, "Problem finding Touchpad string! %s" % match

    pat = re.match(r"(.*)id=(\d+)", match[0])
    assert pat, "No matching ID found!"

    return int(pat.group(2))


def current_status(tpad_id):
    """Find the current Device ID, it has to have the word TouchPad in the line."""

    props = commands.getoutput("""xinput list-props %d""" % tpad_id).split('\n')
    match = [line for line in props if "Device Enabled" in line]
    assert len(match) == 1, "Can't find the status of device #%d" % tpad_id

    pat = re.match(r"(.*):\s*(\d+)", match[0])
    assert pat, "No matching status found!"
    return int(pat.group(2))

def flop(tpad_id, status):
    """Change the value of status, and call xinput to reverse that status."""
    if status == 0:
        status = 1
    else:
        status = 0

    print "Changing Device #%d Device Enabled %d" % (tpad_id, status)
    commands.getoutput("""xinput set-prop %d "Device Enabled" %d""" % (tpad_id, status))

def main():
    """Get curent device id and status, and flop status value."""
    tpad = current_id()
    stat = current_status(tpad)
    flop(tpad, stat)

main()

1
2017-12-28 05:48