আমি প্রায়শই জোড় স্টেশনে কাজ করি যেখানে একাধিক কীবোর্ড ইনস্টল রয়েছে। আমি ব্যবহার করতে পারেন setxkbmapসঙ্গে -device <ID>একটি নির্দিষ্ট কীবোর্ড (একটি ব্যবহার করার জন্য বিন্যাস সেট করতে থেকে IDxinput ), কিন্তু প্রায়ই এটা সুস্পষ্ট নয় যা কীবোর্ড আমি আছি। উভয় কীবোর্ড চেষ্টা করে পিছনে এড়ানো ভাল হবে, সুতরাং আমি এই তথ্যটি পেতে একটি দ্রুত সরঞ্জাম লিখতে চাই setxkbmap। আমি নিম্নলিখিতগুলির মতো একটি সাধারণ ব্যবহারের ক্ষেত্রে আশা করব:
$ setxkbmap -device "$(get-keyboard-id)" -layout gb
Press Enter to detect keyboard ID
লিনাক্সে কোন ইন্টারফেস এই তথ্য সরবরাহ করে? আদর্শভাবে এটি এক্স ছাড়া কাজ করা উচিত, তবে এটি কোনও প্রয়োজন নয় (এমন অনেক সরঞ্জাম রয়েছে যা এক্স ছাড়াই এটি সমর্থন করে বলে মনে হয় না)।
এখনও পর্যন্ত অনুসন্ধানগুলি:
- লিনাক্সকে অবশ্যই জানতে হবে যে আমি এক সাথে একাধিক কীবোর্ডের জন্য বিভিন্ন লেআউট সমর্থন করতে কোন কীবোর্ড টাইপ করছি।
xinput→ list.c →list_xi2→XIQueryDeviceডিভাইস আইডি দ্বারা ব্যবহারযোগ্য উপলব্ধsetxkbmap।showkeyএবংxevকীবোর্ড আইডি মুদ্রণ করবেন না।xinput list-props $IDকীবোর্ড ইভেন্টগুলি কোথায় পাঠানো হয়েছে তা দেখায় । তবে, অন্য একটি উত্তর থেকে কোড ব্যবহার করে মনে হচ্ছে এই ডিভাইসটি কীবোর্ড সনাক্ত করতে কোনও কিছু মুদ্রণ করে না।একটি প্রায় সম্ভাব্য সমাধান হ'ল
xinput --test <ID> &প্রতিটি কীবোর্ড আইডি চালানো এবং কোনটি প্রথমে কিছু দেয় তা দেখুন। সমস্যাটি হ'ল কোন "কীবোর্ডগুলি" আসলে কী- বোর্ডগুলি হ'ল :$ xinput | grep keyboard ⎣ 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)] ↳ WebCam SC-13HDL10931N id=10 [slave keyboard (3)] ↳ AT Translated Set 2 keyboard id=11 [slave keyboard (3)]
less -f /dev/input/eventXএবং সংশ্লিষ্ট কীবোর্ডের কোনও কী চাপান তবে আপনার "আবর্জনা" দেখানো উচিত, সুতরাং আপনার কীপ্রেসগুলি অন্যদের মধ্যে নয় বরং একটি ডিভ ফাইলে পরিচালিত হবে।