আমার কাছে লজিটেক MX400 ওয়্যারলেস রয়েছে। এটিতে একটি অনুসন্ধান বোতাম রয়েছে যা আমি পেস্ট করার জন্য ব্যবহার করতে চাই (অত্যন্ত সংবেদনশীল তবে পরিবর্তে স্ক্রোল হুইল টিপতে শক্ত)। আমি ইতিমধ্যে xbindkeys এর সাহায্যে অন্যান্য বোতামগুলি পুনরায় তৈরি করেছি এবং বোতাম টিপানোর কোডটি খুঁজে পেতে xev ব্যবহার করেছি, তবে এটি অনুসন্ধান বোতামটির জন্য কাজ করে না। xev ব্যবহার করে এবং অনুসন্ধান বোতামটি ক্লিক করে আমি নিম্নলিখিত ইভেন্টগুলি পেয়েছি
FocusOut event, serial 34, synthetic NO, window 0x3c00001,
mode NotifyGrab, detail NotifyAncestor
FocusIn event, serial 34, synthetic NO, window 0x3c00001,
mode NotifyUngrab, detail NotifyAncestor
KeymapNotify event, serial 34, synthetic NO, window 0x0,
keys: 4294967275 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
PropertyNotify event, serial 34, synthetic NO, window 0x3c00001,
atom 0x1d7 (_NET_WM_ICON_GEOMETRY), time 23653064, state PropertyNewValue
কোনও বাটন প্রেস নেই। দেখে মনে হচ্ছে এক্স ইভেন্টের নীচের স্তরে অনুসন্ধান বোতামটি আটকানো হয়েছে। কোন ধারনা? আমার উবুন্টু 12.04 আছে। উবুন্টু আসলে ক্লিকটি দেখে এবং একটি অনুসন্ধান ডায়ালগ তৈরি করে, তবে xev তে ক্লিকের কোনও চিহ্ন পাওয়া যায়নি।
সম্পাদন করা
আমি এক্সমোডম্যাপের সাথে সরবরাহিত পদ্ধতিটি পরীক্ষা করেছি। আমার .Xmodmap
এখন নিম্নলিখিত লাইন রয়েছে
keycode 225 = XF86Paste NoSymbol XF86Paste``
চলমান xmodmap ~/.Xmodmap
এখন বোতাম পুরোপুরি অক্ষম করে (বা কমপক্ষে এটি টিপে কোনও ফল পাই না)। আমি চেষ্টা করেছিলাম xmodmap -pke
এবং এটি প্রিন্ট করে:
keycode 225 = XF86Paste NoSymbol XF86Paste NoSymbol XF86Paste
যথেষ্ট অদ্ভুত। অন্যান্য সমস্ত এন্ট্রি একইভাবে ফর্ম্যাট করা হয়। আমি সমাধানের কাছাকাছি, তবে এখনও অদ্ভুত কিছু আছে।
সম্পাদনা 2
আমি জিনপুট চালানোর চেষ্টা করেছি (কখনও এই আদেশের কথা শুনিনি amazing আশ্চর্যজনক স্টাফ)। লজিটেকের জন্য দুটি প্রবেশিকা রয়েছে। তাদের প্রত্যেকের তালিকা তৈরির ফলাফল এখানে রয়েছে (আইডি 9 এবং 10)
Logitech USB Receiver id=9 [slave pointer (2)]
Reporting 7 classes:
Class originated from: 9. Type: XIButtonClass
Buttons supported: 24
Button labels: "Button Left" "Button Middle" "Button Right" "Button Wheel Up" "Button Wheel Down" "Button Horiz Wheel Left" "Button Horiz Wheel Right" "Button Side" "Button Extra" "Button Forward" "Button Back" "Button Task" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown" "Button Unknown"
Button state:
Class originated from: 9. Type: XIValuatorClass
Detail for Valuator 0:
Label: Rel X
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 9. Type: XIValuatorClass
Detail for Valuator 1:
Label: Rel Y
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 9. Type: XIValuatorClass
Detail for Valuator 2:
Label: Rel Horiz Wheel
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 9. Type: XIValuatorClass
Detail for Valuator 3:
Label: Rel Vert Wheel
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 9. Type: XIScrollClass
Scroll info for Valuator 2
type: 2 (horizontal)
increment: 1.000000
flags: 0x0
Class originated from: 9. Type: XIScrollClass
Scroll info for Valuator 3
type: 1 (vertical)
increment: -1.000000
flags: 0x2 ( preferred )
Logitech USB Receiver id=10 [slave pointer (2)]
Reporting 6 classes:
Class originated from: 10. Type: XIButtonClass
Buttons supported: 7
Button labels: "Button 0" "Button Unknown" "Button Unknown" "Button Wheel Up" "Button Wheel Down" "Button Horiz Wheel Left" "Button Horiz Wheel Right"
Button state:
Class originated from: 10. Type: XIKeyClass
Keycodes supported: 248
Class originated from: 10. Type: XIValuatorClass
Detail for Valuator 0:
Label: Rel X
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 10. Type: XIValuatorClass
Detail for Valuator 1:
Label: Rel Y
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 10. Type: XIValuatorClass
Detail for Valuator 2:
Label: Rel Horiz Wheel
Range: -1.000000 - -1.000000
Resolution: 1 units/m
Mode: relative
Class originated from: 10. Type: XIScrollClass
Scroll info for Valuator 2
type: 2 (horizontal)
increment: 1.000000
flags: 0x0
ডিভাইস 9 পরীক্ষা করে বোতামটি দিয়ে কিছুই করা হয় না। পরিবর্তে 10 টি ডিভাইসটি পরীক্ষা করে কাজ করে এবং আমি ক্লিক করার সাথে সাথে এটি আউটপুট
$ xinput test 10
key press 225
key release 225
key press 225
key release 225
key press 225
key release 225
সুতরাং এটি প্রদর্শিত হয় যে মাউস এই বিষয়ে একটি কীবোর্ড হিসাবে কাজ করে, তবে কোনও কারণে, xmodmap কী 225 কী পাওয়ার পরে কিছু করে না।
** সম্পাদনা করুন **
আমি নিশ্চিত করতে পারি যে আমি প্রত্যেকবার বোতামটি ক্লিক করলে keycode 225 = a
মুদ্রণ যুক্ত করা হয় a
। সুতরাং সমস্যাটি XF86Paste আসলে কীভাবে পরিচালিত হয় তার সাথে সম্পর্কিত বলে মনে হচ্ছে। আমি এটি প্রেরণ করছি, কিন্তু এটি পাস হয়নি।
tail -f /var/log/dmesg
তারপরে বোতামটি টিপে চেষ্টা করুন। কী / বোতামের উল্লেখ করে কোনও আউটপুট পাবেন?
xinput list
আপনার অনুসন্ধান কীটির বোতাম কোডটি সন্ধান করুন xinput test <MOUSE ID>
। এটা কি কাজ করে?
xev
XF86Paste / XF86Copy ইভেন্টগুলি প্রদর্শন করতে দেয় তবে কিছুই ঘটে না। এর অর্থ হ'ল আপনাকে আটকানোর জন্য CTRL + v কী সংমিশ্রণটি ব্যবহার করতে হবে। এক্সমোডম্যাপ বোতাম 1: 1 এর মানচিত্র করে, তবে আপনি কী প্রেসের কমান্ড কার্যকর করতে ট্রিগার করতে কীবোর্ড শর্টকাট সেটিংস ব্যবহার করতে পারেন (আমার উত্তর দেখুন)।
xbindkeys
ঠিক শুরু করার সময় চালানোর জন্য সেট করেছেন? আপনি কি এটি অক্ষম করে আবার চেষ্টা করতে পারেন?