উত্তর:
টাচ প্যাড বন্ধ করতে:
synclient TouchpadOff=1
এটি আবার চালু করতে:
synclient TouchpadOff=0
আপনি চেষ্টা করতে পারেন এমন কমপক্ষে দুটি পদ্ধতি রয়েছে (যা আমি জানি)।
যদি আপনার ল্যাপটপ একটি সিন্যাপটিক্স (বা ALPS) টাচপ্যাড দিয়ে সজ্জিত থাকে তবে আপনি synclient
ইতিমধ্যে শাটুপস্কয়ারে উল্লিখিত হিসাবে ব্যবহার করতে পারেন । আমি উবুন্টু 14.04 চালাচ্ছি এবং আমার মেশিনে এটি ডিফল্টরূপে ইনস্টল করা হয়েছিল।
সিঙ্কিলিয়েন্ট ইনস্টল করা থাকলে পরীক্ষা করুন: synclient -V
(এটির সংস্করণ নম্বরটি রিপোর্ট করা উচিত)
টাচপ্যাড চালু করুন: synclient TouchpadOff=0
টাচপ্যাড বন্ধ করুন: synclient TouchpadOff=1
আমি এটি নিজেই পরীক্ষা করে দেখিনি, তবে আপনার হাত যদি টাচ প্যাডের উপর নির্ভর করে আপনার মাউসটি সরানো না হয় তবে এটি সাহায্য করতে পারে।
পাম সনাক্তকরণ চালু করুন: synclient PalmDetect=1
পাম সনাক্তকরণ বন্ধ করুন: synclient PalmDetect=0
সাধারণভাবে আপনি নিজের সিনাপটিক্স টাচপ্যাডের যে কোনও সম্পত্তি কনফিগার করতে পারেন synclient property=value
। যেখানে সম্পত্তি দেখানো উপলভ্য বৈশিষ্ট্যগুলির মধ্যে একটিsynclient -l
উবুন্টু - কমিনিটি হেল্প উইকি - সিনাপটিক্স টাচপ্যাড
আর্চলিনাক্স - উইকি - টাচপ্যাড সিনাপটিক্স
উবুন্টুকে জিজ্ঞাসা করুন - আমি কীভাবে আমার সিঙ্কিলিয়েন্ট সেটিংস স্টিক করব? - উবুন্টু
আপনি যদি না চান বা সিঙ্কিলিয়েন্ট ব্যবহার করতে না পারেন তবে আপনিও ব্যবহার করতে পারেন xinput
। পদ্ধতি কিছুটা অনুরূপ।
সমস্ত এক্সপুট ডিভাইস তালিকাভুক্ত করুন: xinput
আউটপুটটির অংশটি এরকম দেখতে পারে:
⎡ 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)]
এটি এই বিশেষ ক্ষেত্রে আমার টাচপ্যাডের আইডি = 17 রয়েছে এবং এর পুরো নাম "ETPS / 2 এলানটেক টাচপ্যাড"।
সম্পত্তি নির্ধারণের আদেশ xinput set-prop
। টাচপ্যাড সক্ষম বা অক্ষম করার সম্পত্তি হ'ল Device Enabled
তাই এটি সক্ষম বা অক্ষম করার জন্য টাইপ করুন:
টাচপ্যাড চালু করুন: xinput set-prop <id> "Device Enabled" 1
( <id>
আমার ক্ষেত্রে 17 টিতে আপনার ডিভাইস আইডি কোথায় )
টাচপ্যাড বন্ধ করুন: xinput set-prop <id> "Device Enabled" 0
পাম সনাক্তকরণ চালু করুন: xinput set-prop <id> "Palm Detection" 1
পাম সনাক্তকরণ বন্ধ করুন: xinput set-prop <id> "Palm Detection" 0
উপলভ্য বৈশিষ্ট্যগুলি জিজ্ঞাসা করার জন্য: xinput list-props <id>
ওআর xinput list-props <full-name>
, এটির সাথে যথেষ্ট মিল থাকতে হবে synclient -l
।
মাধ্যমে বৈশিষ্ট্য নির্ধারণের যখন পারেন xinput
বা synclient
বৈশিষ্ট্য অন্যান্য সরঞ্জাম সেট নেই। তারা unityক্য-নিয়ন্ত্রণ-কেন্দ্রেও সেট করা হয়নি।
synclient
আমার জন্য কাজ করেনি, xinput
করেছে।
xinput
আইডিগুলি পুনরায় আরম্ভের উপর পরিবর্তন করতে পারে। সুতরাং স্ক্রিপ্ট বা শর্টকাটে এই আইডির উপর নির্ভর করে কাজ করবে না।
synclient
পুরোপুরি আর্চ লিনাক্সে কাজ করে। আপনাকে ধন্যবাদ , যাতে অনেক !!!
xinput <enable/disable> <id>
, যেমন সেটিং TouchpadOff
মাধ্যমে synclient
অকার্যকর ছিল।
xinput
। আমি আমার বিল্টিন কীবোর্ড এবং ট্র্যাকপয়েন্টের বোতামগুলির সাথে কিছুটা আচার ছিলাম যাতে বাহ্যিক কীবোর্ড থেকে ইনপুটটিতে হস্তক্ষেপকারী খারাপ ইনপুটগুলি স্পষ্টতই প্রেরণ করা হত। এটি আমাকে বিল্টিন ডিভাইসগুলি অক্ষম করার অনুমতি দিয়েছে। চিয়ার্স! :)
synclient
এবং xinput
যদি আপনি জিনোম (বা unityক্য, দারুচিনি) পরিবেশ ব্যবহার করেন তবে কাজ করবে না, কারণ এটি সেটিংসকে ওভাররাইড করে দেবে, তাই আপনি যদি এই সেটিংসটি নিতে চান synclient
বা xinput
নিতে চান তবে আপনাকে প্রথমে এটি অক্ষম করতে হবে:
ইনস্টল dconf-editor
না থাকলে ইনস্টল করুন:
apt-get install dconf-editor
চালান dconf-editor
dconf-editor
ডিরেক্টরিটি খুলুন /org/gnome/settings-daemon/plugins/mouse/
বা /org/cinnamon/settings-daemon/plugins/mouse/
, এবং এর জন্য চেকবক্সটি খুলুন active
।
logout
অথবা reboot
এটি করা synclient
বা xinput
কাজ করা উচিত ।
আপনার ইনপুট ডিভাইসগুলি তালিকাবদ্ধ করুন:
xinput list
আমার ক্ষেত্রে আমার এই তালিকা রয়েছে:
Virtual core XTEST pointer id=4
Logitech M510 id=11
ETPS/2 Elantech Touchpad id=15
আইডি পাস করে আপনার টাচপ্যাড অক্ষম করুন
xinput set-prop 15 "Device Enabled" 0
xinput enable [device]
এবং xinput disable [device]
সরাসরি ব্যবহার করতে পারেন । যদিও স্ক্রিপ্টিং set-prop [device] "Device Enabled" [value]
করার সময়, ওয়ার্ল্ড পাইথন বিকাশকারী এর উত্তর হিসাবে , ব্যবহার করা কিছুটা সহজ হতে পারে।
আমি কোডটির একটি অজগর টুকরো লিখেছি যাতে আপনি xinput
সমস্ত ম্যানুয়াল কাজ না করে কৌশলটি ব্যবহার করতে পারেন । কপিলিফ্ট, এএস-আইএস, কোনও ওয়্যারেন্টি নেই, আপনার নিজের ঝুঁকিতে ব্যবহার করুন। আমার জন্য দুর্দান্ত কাজ করে: এবং আপনি যদি জিনোম ব্যবহার করছেন তবে এটির মতো একটি মূল শর্টকাটে মানচিত্র করুন CtrlShiftT।
#!/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()
জিনোমে, টাচপ্যাড টগল করার জন্য আমার ফাংশন কীটি কোনও কারণে কাজ করছে না, তাই আমি গেটস ব্যবহার করে একটি স্ক্রিপ্ট তৈরি করেছি।
xinput
সমাধানটি প্রত্যাশার সাথে সাথে টাচপ্যাডকে সম্পূর্ণ নিষ্ক্রিয় করে দেয়। যদি আমার মতো হয় তবে আপনার একমাত্র সমস্যা হ'ল আপনি টাইপ করার সময় অসাবধানতার সাথে কার্সারটি সরিয়ে দিচ্ছেন, যদিও এটি যথেষ্ট হবে।toggle_touchpad_gsettings.py
#!/usr/bin/python3.6
import sys
import subprocess
gsettings_schema, gsettings_key = "org.gnome.desktop.peripherals.touchpad", "send-events"
def get_touchpad_send_events():
send_events_value = subprocess.check_output(["gsettings", "get", gsettings_schema, gsettings_key])
return send_events_value.strip()
def toggle_touchpad():
# string returned from get is a repr including quotes,
# but string sent with set does not need to have quotes
if get_touchpad_send_events() == b"'enabled'":
newval = 'disabled'
else:
newval = 'enabled'
subprocess.Popen(["gsettings", "set", gsettings_schema, gsettings_key, newval])
print(f"Set {gsettings_schema}:{gsettings_key} to {newval}")
def main():
toggle_touchpad()
if __name__ == '__main__':
main()
এটি ইউনিটিতেও কাজ করা উচিত, তবে আমি পরীক্ষা করিনি।