คีย์บอร์ดหลายตัวที่มีเค้าโครงต่างกัน


16

ฉันมี ubuntu (11.04) ทำงานบน macbook pro ล่าสุด ฉันใช้ทั้งคีย์บอร์ดในตัวและคีย์บอร์ดภายนอก ฉันต้องการทำการแมปข้อมูลใหม่ของทั้งสองแป้นเป็น super และฉันต้องการสลับ left-alt (ตัวเลือก mac) และ left-super (mac cmd) บนแป้นพิมพ์ (apple) ในตัวเท่านั้น

Xmodmap ไม่สามารถกำหนดค่าคีย์บอร์ดหลาย ๆ แบบให้แตกต่างกันได้

ฉันสามารถทำได้จาก cli ผ่าน setkbmap นี่คือสคริปต์ที่ฉันใช้:

#!/bin/sh
#set caps to super
setxkbmap -option caps:super

#swap command and option for apple keyboard
setxkbmap -device `xinput list | grep -o -P 'Apple Internal Keyboard / Trackpad\s+id=\d+' | grep -o -P '\d+'` -option altwin:swap_lalt_lwin

ถ้าฉันต้องการฉันสามารถเรียกใช้สิ่งนี้เป็นแอปพลิเคชันเริ่มต้น แต่ฉันอยากรู้ว่ามีไฟล์การกำหนดค่าที่ฉันสามารถเพิ่มการตั้งค่าเหล่านี้ลงไปแทนได้หรือไม่

ดูเหมือนว่าฉันควรจะสามารถเพิ่มตัวเลือก (XkbOptions) ในส่วน inputdevice ของ xorg.conf ของฉัน แต่เมื่อฉันลองสิ่งนี้การตั้งค่าจะไม่มีผลกระทบ ฉันยังพยายามเพิ่ม inputclass ใหม่ไปยัง xorg.conf แต่ก็ไม่ได้ผลเช่นกัน

ตำแหน่งที่ถูกต้องในการกำหนดค่าแป้นพิมพ์หลายตัวที่มีการผูกคีย์ที่แตกต่างกันคืออะไร


1
หมายเหตุ: การวางสคริปต์นี้ในแอปพลิเคชันเริ่มต้นแก้ไขได้ในการเข้าสู่ระบบ แต่หลังจากกลับมาทำงานต่อจากการหยุดชั่วคราวฉันต้องรันด้วยตนเองอีกครั้ง ต้องมีวิธีที่ดีกว่าในการทำเช่นนี้!
psanford

1
ควรจะมี ... ฉันได้ตั้งค่าเลย์เอาต์เริ่มต้นผ่านทาง/etc/default/keymap(Debian) หรือ/etc/X11/xorg.conf.d/00-keyboard.conf(Fedora) เพื่อหลีกเลี่ยงปัญหาในการกลับมาทำงานใหม่ แต่อาจไม่สามารถใช้งานได้กับแป้นพิมพ์หลายตัวที่มีตัวเลือกต่าง ๆ (ทั้งสองระบบ) keymap ของคอนโซลเช่นเดียวกับ X keymap ดังนั้นจึงค่อนข้าง จำกัด )
dhardy

คำตอบ:


7

เป็นไปได้ที่จะทำเช่นนี้ในการกำหนดค่า xorg:

Section "InputClass"
  Identifier     "Keyboard Catch All"
  MatchUSBID     "058f:9410"
  Option         "XkbOptions" "caps:super,terminate:ctrl_alt_bksp"
EndSection

Section "InputClass"
  Identifier "Apple Keyboards"
  MatchUSBID     "05ac:0236"
  Option         "XkbOptions" "altwin:swap_lalt_lwin,caps:super"
EndSection

อย่างไรก็ตาม GDM มีวิธีจัดการการตั้งค่าแป้นพิมพ์ของคุณเองซึ่งจะเขียนทับการตั้งค่า Xorg เหล่านี้ ฉันไม่พบวิธีแก้ปัญหาที่ทำงานได้ดีกับ GDM

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.