ฉันต้องการเชื่อมต่อคีย์บอร์ดสองชุดเข้ากับคอมพิวเตอร์ของฉัน เป็นไปได้หรือไม่ที่จะตั้งค่าสำหรับแต่ละภาษา ดังนั้นไม่จำเป็นต้องเปลี่ยนภาษาในแต่ละครั้ง
ตัวอย่างเช่น:
แป้นพิมพ์ 1 ประเภทรัสเซีย
แป้นพิมพ์ 2 ประเภทภาษาอังกฤษ
ฉันต้องการเชื่อมต่อคีย์บอร์ดสองชุดเข้ากับคอมพิวเตอร์ของฉัน เป็นไปได้หรือไม่ที่จะตั้งค่าสำหรับแต่ละภาษา ดังนั้นไม่จำเป็นต้องเปลี่ยนภาษาในแต่ละครั้ง
ตัวอย่างเช่น:
แป้นพิมพ์ 1 ประเภทรัสเซีย
แป้นพิมพ์ 2 ประเภทภาษาอังกฤษ
คำตอบ:
เมื่อใช้xinput
และsetxkbmap
ยูทิลิตี้คุณสามารถตั้งค่าจากเทอร์มินัลเพื่อให้แป้นพิมพ์แต่ละตัวมีเค้าโครงที่แตกต่างกัน
ขั้นแรกให้ใช้xinput -list | grep key
คำสั่งคุณต้องค้นหา ID อุปกรณ์ของแต่ละคีย์บอร์ด นี่คือตัวอย่าง (กรณีของฉัน):
$ xinput -list | grep key
⎣ 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)]
↳ 2.4GHz 2way RF Receiver id=10 [slave keyboard (3)]
↳ HP Webcam id=12 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=13 [slave keyboard (3)]
↳ HP WMI hotkeys id=15 [slave keyboard (3)]
↳ USB Keyboard id=16 [slave keyboard (3)]
↳ USB Keyboard id=17 [slave keyboard (3)]
และประการที่สองใช้setxkbmap -device <key_ID> -layout <layout_name>
ตั้งค่าเค้าโครงที่คุณต้องการสำหรับแต่ละแป้นพิมพ์ ตัวอย่าง (สำหรับคีย์บอร์ดของฉัน):
setxkbmap -device 3 -layout ro #My master keyboard is set to Romanian layout
setxkbmap -device 10 -layout us #The keyboard with id=10 is set to English (US) layout
setxkbmap -device 16 -layout ru #The keyboard with id=16 is set to EFor Russian layout
ปิดหัวข้อเล็กน้อย แต่ถ้าคุณใช้-variant
ตัวเลือกเพิ่มเติมคุณสามารถพิมพ์ dvorak บนแป้นพิมพ์และ workman หรือ qwerty หรือเค้าโครงอื่น ๆ บนแป้นพิมพ์อื่น
setxkbmap -verbose -device 17 -layout us -variant dvorak
จับคู่การเขียนโปรแกรมบนเตียรอยด์!