Faremi kullanırken touchpad'imin devre dışı bırakılmasını istiyorum. Bunu nasıl yapabilirim?
touchpad-indicator
11.10'da çalışmayı durdurdu. 11.04'te çalışıyordu. Gnome3, sevmediğim ve buggy bulduğum için bir çözüm değil.
Faremi kullanırken touchpad'imin devre dışı bırakılmasını istiyorum. Bunu nasıl yapabilirim?
touchpad-indicator
11.10'da çalışmayı durdurdu. 11.04'te çalışıyordu. Gnome3, sevmediğim ve buggy bulduğum için bir çözüm değil.
Yanıtlar:
Bir terminalde aşağıdaki komutu çalıştırın:
xinput list
Buna benzeyen bir çıktı alacaksınız:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=12 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ Laptop_Integrated_Webcam_1.3M id=10 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=11 [slave keyboard (3)]
↳ Dell WMI hotkeys id=13 [slave keyboard (3)]
Bağlı olan tüm giriş cihazlarını görüntüler. Hepsinin bir kimliği olduğuna dikkat edin. Dokunmatik panelimin kimliği 12 olduğundan, aşağıdaki komutu çalıştırmak onu devre dışı bırakacaktır.
xinput set-prop 12 "Device Enabled" 0
Ubuntu sürümlerinde >12.04
ayrıca doğrudan devre dışı bırakabilirsiniz.
xinput --disable 12
(ve benzer bir komutla etkinleştir)
xinput -disable 12
giriş cihazını 12 devre dışı bırakmak (veya xinput -enable 12
etkinleştirmek) için de kullanabilirsiniz . Kılavuz sayfasına bakınız xinput (1) .
Bu bağlantıyı kontrol et: ubuntu 11.10'da touchpad nasıl devre dışı bırakılır
Orada bulunan cevap gerçekten temiz:
sudo add-apt-repository ppa:atareao/atareao
sudo apt-get update
sudo apt-get install touchpad-indicator
Bundan sonra bildirim alanında bir anahtar alacaksınız.
İstediğim tek şey, anahtar tuşunu Fn+ F8(), klavyemdeki bir dokunmatik tuş anahtarıdır ...
atareao
,
@Peng Wu tarafından verilen cevaba dayanarak kullanılabilecek bir bash betiği yarattım ...
#!/bin/bash
declare -i ID
ID=`xinput list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`
xinput set-prop $ID "Device Enabled" 0
echo 'Touchpad has been disabled.'
El ile çalıştırabilir veya başlangıçta çalıştırabilirsiniz. Ardından betiğin açılışta çalışmasını sağlayabilirsiniz.
Touchpad'i değiştirmek için başka bir bash betiği:
#!/bin/bash
declare -i ID
ID=`xinput list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`
declare -i STATE
STATE=`xinput list-props $ID|grep 'Device Enabled'|awk '{print $4}'`
if [ $STATE -eq 1 ]
then
xinput disable $ID
echo "Touchpad disabled."
else
xinput enable $ID
echo "Touchpad enabled."
fi
'Touchpad in mouse emulation mode\s*id\=[0-9]{1,2}'
Touchpad
bunun yerine öyleydi TouchPad
. Harf büyüklüğüne duyarsız i
yapmak için grep seçeneklerine sadece bir tane ekleyin .
synclient TouchpadOff=$(synclient | ruby -ne 'puts ($_.match(/\\d+/)[0].to_i ^ 1) if /TouchpadOff/ =~ $_')
imwheel
: askubuntu.com / sorular / 844151 / etkinleştir-devre dışı bırakma-dokunmatik yüzey /… . Ayrıca cevabım arar xinput
ikisi için TouchPad
ve Touchpad
, bazen P veya sisteme bağlı olarak, büyük harfle değil, böylece hem aramak yoksa komut aksi çalışmayabilir.
Basitçe, bir terminalde:
synclient TouchpadOff=1
Ancak, yukarıdaki 16.04 Ubuntu'da artık çalışmıyor gibi görünüyor. Bu durumda, daha sonra xinput
hala çalışıyor:
xinput set-prop `xinput --list | awk '/[Tt]ouch[Pp]ad.*pointer/ {print $7}' | sed 's/id=\(.*\)/\1/'` "Device Enabled" 0
Yerine xinput
değiştirebilir id değişkenleri daha iyi kullanımı ile, synclient
gibi diğer cevaplar belirtildiği üzere bu .
sudo apt install xserver-xorg-input-synaptics
Dokunmatik yüzeyi kapatmak için:
synclient TouchpadOff=1
Açmak için:
synclient TouchpadOff=0
Aşağıda belirtildiği gibi rampalar veya kısayollar ile birlikte kullanılmalıdır.
Bu, sadece bu sorunun altındaki bu cevaptaki komutların uygulamasıdır . Aşağıdaki çözüm Xfce / Xubuntu ile sınırlı , ancak tesadüfen yapmış olmama rağmen, onu burada paylaşmadığım için çok şık buluyorum. Bu yüzden başlangıçta ayrı bir soru yarattım , sadece Xubuntu için. Bu soru, bunun bir kopyası olamaz ancak bu nedenle kapalı olabilir, bu yüzden bu cevabı buraya tekrar göndermeye cüret ediyorum.
Bu iki komut hakkında:
devre dışı bırakın:
xinput set-prop 15 "Device Enabled" 0
Etkinleştirme:
xinput set-prop 15 "Device Enabled" 1
İd numarası çalıştırılarak bulunur
xinput list
Dokunmatik yüzeyinizi başlangıçta otomatik olarak devre dışı bırakma yöntemi Bu yöntem, kimliği yerine kimlik yerine adı daha güvenli bir şekilde devre dışı bırakır. Touchpad'inizin adını nasıl alacağınız:
$ xinput list --name-only | grep -i Touchpad
ETPS/2 Elantech Touchpad
Bir bash betiği dosyası oluşturun. Her yeniden çalıştırmada çalışabilmesi için dosyayı ubuntu Başlangıç Uygulamalarına ekledim. Dosyayı çalıştırılabilir hale getirmeyi unutmayın. İşte içeriği:
#!/bin/bash
$ xinput disable 'ETPS/2 Elantech Touchpad'
Bu benim için 11.10'da çalıştı.
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=12 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ Laptop_Integrated_Webcam_1.3M id=10 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=11 [slave keyboard (3)]
↳ Dell WMI hotkeys id=13 [slave keyboard (3)]
Bağlı olan tüm giriş cihazlarını görüntüler. Hepsinin bir kimliği olduğuna dikkat edin. Dokunmatik panelimin kimliği 12 olduğundan, aşağıdaki komutu çalıştırmak onu devre dışı bırakacaktır.
xinput set-prop 12 "Device Enabled" 0
ve .bashrc içine koyardım ya da her ne olursa olsun cihazın 12 (aslında benim için 11) her zaman dokunmatik yüzey olduğundan emin değilim.
Şimdi, nautilius'taki yukarı oku sadece çalışıp görmek için .dirs
(bu cevap geçersiz bir düzenlemeden kopyalandı)
Dokunmatik ekranı her etkinleştirmek / devre dışı bırakmak istediğinizde bu komutu hatırlamak yerine, onu bir klavye kombinasyonu kısayolu olarak ekleyebilirsiniz.
Klavye Kısayolları'ndaki tercihler altında, ekle'yi tıklayın. "Dokunmatik Yüzeyi Devre Dışı Bırak" gibi bir kısayola bir ad verin ve yukarıda keşfettiğiniz komutu ekleyin
xinput set-prop <id> "Device Enabled" 0
ve uygula 'yı tıklayın. Ardından "Dokunmatik Yüzeyi Etkinleştir" olarak adlandırılan başka bir kısayol veya birincisine benzer bir şey ekleyin ve önceki komutu sonunda 1 olarak değiştirin.
xinput set-prop <id> "Device Enabled" 1
bunlar saygıyla açık / kapalı.
Bunlar eklendiğinde, Dokunmatik Yüzey'in Kısayol sütununu etkinleştirin ('devre dışı bırakmalı' demeniz gerekir) tıklayın ve olmasını istediğiniz klavye kısayolunu yazın, Win+ 1(Windows Tuşunu basılı tutup 1 rakamına basın) ' ı seçtim . Touchpad'i Devre Dışı Bırak için de aynısını yapın, ben seçtim Win+2 .
Şimdi Win+ 1, touchpadimi etkinleştiriyor ve Win+ 2onu devre dışı bırakıyor.
Dokunmatik yüzeyi etkinleştirmek / devre dışı bırakmak için aşağıdaki komut dosyasını kullanıyorum. Ayrıca klavye kısayoluna atadım.
Kullanım: toggle_touchpad.sh [on|off
]
Eğer argümanlar olmadan koşarsanız, dokunmatik yüzeyin o anki durumunu tersine çevirir.
#!/bin/bash
# toggle_touchpad.sh
is_off=`synclient | grep -Pio "TouchpadOff.*?(\d)" | grep -Eo "[01]"`
if [ -z "$1" ]; then
echo "Inverting touchpad state"
if [ "$is_off" -eq '0' ];then
synclient TouchpadOff=1
notify-send "Touchpad Disabled"
else
synclient TouchpadOff=0
notify-send "Touchpad Enabled"
fi
else
if [ "$1" == "on" ]; then
echo "Turning on touchpad"
synclient TouchpadOff=0
notify-send "Touchpad Enabled"
elif [ "$1" == "off" ]; then
echo "Turning off touchpad"
synclient TouchpadOff=1
notify-send "Touchpad Disabled"
else
echo "Unknown arg! Pass no args or on/off !"
fi
fi
Öncelikle dizüstü bilgisayarınızın dokunmatik yüzey klavyesi kısayolunu etkinleştirip devre dışı bırakmadığından emin olun! Lenovo Thinkpad T500'ümde Fn+F8
xev
veya xinput
benim G700 düğmesini kullanma girişiminde ve bir lanetlemek şey kaydetmez. evemu-record
Hiçbir şey bile kaydetmiyor ve bu çekirdek düzeyinde. Çekirdek göremiyorsa, aygıt sürücülerini düzeltmek dışında yapılması gereken çok şey yoktur. Söyleniyor, bu harika bir çözüm, ancak tüm kullanım durumları için güvenilir bir çözüm değil.
Benim durumumda, fn+ F9Touchpad geçişine eşlenir .
Ancak tuş, dokunmatik ekran ikonunu sadece ekranın sağ üst köşesinde gösteren hiçbir şey yapmaz.
İşte sadece bir kısayol basarak dokunmatik yüzeyi değiştirmek için bir çözüm .
$ xinput list
Böylece touchpad'i 'xinput' komutuyla değiştirmek için bir bash betiği dosyası aldım (orijinal betiği burada bulabilirsiniz ).
Benim durumumda, touch pad kimliği 12 idi.
#!/bin/bash
device=12
state=`xinput list-props "$device" | grep "Device Enabled" | grep -o "[01]$"`
if [ "$state" -eq '1' ];then
xinput --disable "$device"
else
xinput --enable "$device"
fi
Yukarıdaki komut dosyasını .toggleTouchPad.sh
istediğiniz yere kaydedin .
Ve son adım, komut dosyasını çalıştırmak için klavye kısayolu eklemek.
Dolayısıyla, sadece yazma sh /PATH/TO/SCRIPT
içinde Command
Kısayol penceresinin.
Kısayola basın ve dokunmatik yüzeyin değiştirilip değiştirilmediğini kontrol edin.
Yüklü ASUS A556UA Laptop ve Ubuntu14.04 x64'te çalıştı .
Lütfen, eksiksiz bir çözüm için Dokunmatik Yüzey değiştirme tuşunu özel bir kısayola atamanın bir yolunu önerin
Ubuntu 16.04 için
Dokunmatik yüzeyi devre dışı bırakmak için:
xinput --disable $(xinput --list | grep -i 'touchpad' | grep -o 'id=[0-9]*' | sed 's/id=//')
ve dokunmatik yüzeyi etkinleştirmek için:
xinput --enable $(xinput --list | grep -i 'touchpad' | grep -o 'id=[0-9]*' | sed 's/id=//')
https://bitbucket.org/barseghyanartur/xinput
Touchpad'i terminalden devre dışı bırakmanıza / etkinleştirmenize izin veren çok küçük bir kod.
Aşağıdaki Talimatları takip etmeniz yeterlidir:
Yüklemek:
$ pip install xinput
Dokunmatik yüzeyi devre dışı bırak:
$ disable-touchpad
Dokunmatik yüzeyi etkinleştir:
$ enable-touchpad
Size bir geçiş vermek için .bashrc'nize birkaç bash işlevi ekleyin.
#toggle-touchpad on|off
function touchpadon { /usr/bin/xinput --enable $(xinput --list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}') ; echo "touchpad enabled";}
function touchpadoff { /usr/bin/xinput --disable $(xinput --list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}') ; echo "touchpad disabled";}
Ubuntu'da touchpad'i devre dışı bırakmak aslında çok basit. Sadece xserver-xorg-input-synaptics
Ubuntu'da dokunmatik yüzey kullanmak için gerekli olan paketi çıkarın !
sudo apt-get remove xserver-xorg-input-synaptics
Benim için işe yarayan touchpad'i kalıcı olarak devre dışı bırakmanın tek yolu bu. Diğer yollar sadece geçiciydi:
xinput list
xinput set-prop IDOFTOUCHPAD "Device Enabled" 0
synclient TouchpadOff=1
Ben LXDE'nin kullanıyorum ve otomatik olarak bu satırları ekleyerek Touchpad devre dışı mümkün değildi ~/.config/lxsession/LXDE/autostart
ya /etc/xdg/lxsession/LXDE/autostart
bir ile @
-prefix. Sadece göz ardı edildi.
Touchpad'i dconf-editor (org.gnome.desktop.peripherals.touchpad) ve gconf-editor (desktop.gnome.peripherals.TOUCHPADNAME) ile devre dışı bırakmayı denedim ama ikisi de işe yaramadı. Dconf-editor ayarlarının hiçbir etkisi yoktur ve gconf-editor üzerinde "Bu anahtarın şeması yoktur" hata mesajı gösterilmeye devam eder.
fnİşaretçiyi devre dışı bırakmak için laptop işlev tuşunu ( ) kullanmayı denedim ve işe yarıyor. 11.04 günüm boyunca çalışmadı, bu yüzden bir deneyin.
Dell Laptop ile Ubuntu 12.04 LTS'de benim için ne işe yaradı?
Klavyenin ortasındaki imleci devre dışı bırakmak istedim ve yazarken birçok sorun yaratıyordum. Yani:
$ xinput list
⎡ Virtual core pointer id=2
⎜ ↳ Virtual core XTEST pointer id=4
⎜ ↳ Wacom Graphire2 4x5 eraser id=9
⎜ ↳ Wacom Graphire2 4x5 cursor id=10
⎜ ↳ Wacom Graphire2 4x5 id=11
⎜ ↳ AlpsPS/2 ALPS DualPoint TouchPad id=14
⎜ ↳ Macintosh mouse button emulation id=15
⎜ ↳ DualPoint Stick id=13
⎣ Virtual core keyboard id=3
↳ Virtual core XTEST keyboard id=5
↳ Video Bus id=6
↳ Power Button id=7
↳ Sleep Button id=8
↳ AT Translated Set 2 keyboard id=12
The device I want to disable has id 13. Use xinput to list its properties:
$ xinput -list-props 13
Device 'DualPoint Stick':
Device Enabled (115): 0
[...several lines removed...]
$ xinput -set-prop 13 115 0
Bu, Dualpoint çubuğunu devre dışı bıraktı. Ancak diğer cevapların hiçbiri benim için çalıştı. yaptım
Yükleyin dconf-tools
:
sudo apt-get install dconf-tools
dconf-editor
Daha sonra org -> gnome -> settings-daemon -> çevre birimleri -> touchpad ve touchpad etkin alanın işaretini kaldırın
Komutu çağıracak bir anahtar bağlama oluşturmak için iyi bir çözüm buldum:
xdotool key 199
199, XF86TouchpadToggle olarak tanınan bir anahtar koddur. Bu sayede, bazı dizüstü bilgisayarların, Mate ya da Tarçın gibi masaüstü ortamları harika şekilde işlediği için dokunmatik yüzeyi değiştirmek zorunda kalması gibi, özel bir anahtar gibi davranması, kendi seçiminin tuş kombinasyonunu yapabilir. Anahtar kodlarını bu komutla kontrol edebilirsiniz:
xmodmap -pke
Blogumda bir nasıl yapılır oluşturdum: https://artofcode.wordpress.com/2017/10/01/how-to-add-a-key-binding-to-toggle-a-touchpad-under-linux /
Benim çözümüm şu tp betiği:
#!/bin/bash
TT=`xinput --list | grep -i touchpad | sed -e "
s/(//
s/)//
s/ //g
"`
set $TT
(( $2 ))
xinput list | grep -iq mouse &&{
xinput --disable $id
}||{
xinput --enable $id
}
Bir fare algılanırsa dokunmatik yüzey devre dışı bırakılır ve değilse etkinleştirilir.
Touchpad kimliği script tarafından bulunur.
Ubuntu 11.10 (64 bit) kullanan bir Medion Akoya dizüstü bilgisayar modeli P7812 var ve Fn& F6tuş kombinasyonu dokunmatik yüzeyi devre dışı bırakır.
Tüm dokunmatik yüzeylerde işe yarayan alternatif bir çözüm, kimlik gerekmez.
bir terminal aç ve "gedit toggle_touchpad.sh" yaz.
#!/bin/bash
condition="$(gsettings get org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled)"
if [ "$condition" == "false" ]; then
gsettings set org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled true
elif [ "$condition" == "true" ]; then
gsettings set org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled false
fi
Dosyayı kaydet ve çık. Şimdi "toggle_touchpad.sh" isimli bir dosyanız var
chmod +x toggle_touchpad.sh
Dosyayı çalıştırılabilir yapmak için komutu çalıştırın.
Dosyayı istediğiniz herhangi bir klasöre yerleştirin. / Home / username / myscripts / klasöründe olduğunu varsayalım.
Sağ üstteki menüden system-settings->keyboard->shortcuts->custom-shortcuts
.
Yeni bir kısayol oluşturun ve istediğiniz adı yazın. Komut olarak /home<username>;/myscripts/toggle_touchpad.sh
"username" kullanıcı adınızdır.
İstediğiniz klavye kısayolunu atayın.
Hazır :)
PS Şahsen ben dosyayı /opt/myscripts/
klasöre koydum ancak dosyayı koymak için dosyayı oluşturduktan sonra aşağıdaki komutları çalıştırmalısınız:
sudo mkdir /opt/myscripts/
sudo mv toggle_touchpad.sh /opt/myscripts/
sudo chown <username>:<username> /opt/myscripts/toggle_touchpad.sh
chmod +x /opt/myscripts/toggle_touchpad.sh
"username" kullanıcı adınızdır
Sonra kısayolu oluşturacağınız zaman yukarıda belirtilen yerine "/opt/myscripts/toggle_touchpad.sh" yolunu kullanacaksınız.
Bu yöntem işe yarıyor ancak "kazan" düğmesini kullanamıyorum. Bu yüzden CtrlF1& F2bunun için kullandım .
Şu anda dizüstü bilgisayar işletim sistemim ubuntu 14.04LTS.
Oh, xinput < id >
aşağıdaki komutu bulmak zorundayız . Ubuntu 14.04 için "SynPS / 2 Synaptics Dokunmatik Yüzey"
xinput list
SynPS/2 Synaptics TouchPad id=###
Buradaki tüm cevapları başarı olmadan denedim.
Ubuntu 16.10'da benim için ne çalıştı?
killall syndaemon
syndaemon -i 1 -KRd
Değeri 1 ila 0,5 arasında değiştirmek isteyebilirsiniz.
Böylece, Krzysztof Tomaszewski ve JaeJun LEE'nin cevaplarını birleştirerek bu çözüme ulaştım.
Aşağıdaki toggleTouchPad.sh
betiği yaratın ve istediğiniz yere kaydedin:
#!/bin/bash
device=14
state=`xinput list-props "$device" | grep "Device Enabled" | grep -o "[01]$"`
if [ "$state" -eq '1' ];then
xinput --disable "$device" && sleep 1 && xdotool key 201
else
xinput --enable "$device" && sleep 1 && xdotool key 200
fi
TouchDevice Id'niz nerede 14? ( JaeJun LEE'nin cevabına bakınız )
Ubuntu Ayarları -> Cihazlar -> Klavye
Listenin sonunda, +
yeni bir özel kısayol eklemek için tıklayın
Sen söyle Toggle Touchpad
Komutanlığı ile /path/to/.toggleTouchPad.sh
ve anahtar ne olursa olsun kombinasyonu (Sadece Süper + F7 seçtiniz) isterdi.
Şimdi, seçtiğiniz tuş kombinasyonuna her bastığınızda, yalnızca Dokunmatik Ekranı değiştirmekle kalmaz, aynı zamanda bir bildirim simgesi gösterir. xdotool
Dell Latitude'un orta çubuğunu devre dışı bırakmak için, bunu her zaman dizüstü bilgisayarımı başlattığımda / yeniden başlattığımda Ubuntu .profile dosyasına koydum, bu girişi devre dışı bırakacak.
--id-only
Grep'te uyumsuzluğu önlemek için kullandım
declare -i ID
ID=`xinput list --id-only 'AlpsPS/2 ALPS DualPoint Stick' | grep -Eo '[0-9]{1,2$
declare -i STATE
STATE=`xinput list-props $ID|grep 'Device Enabled'|awk '{print $4}'`
if [ $STATE -eq 1 ]
then
echo "id" $ID
xinput disable $ID
echo "Touchpad disabled."
else
echo "id" $ID
xinput enable $ID
echo "Touchpad enabled."
fi
Benim durumumda, bir Slimbook ve Kubuntu ile, sadece kombinasyonu kullandım: Fn+ Z.
Bu, dokunmatik yüzeyi devre dışı bırakır veya etkinleştirir.