ทำการแมปปุ่มเปิด / ปิดเพื่อลบ


14

ฉันมี macbook pro ที่ใช้ Ubuntu 13.10 กับ FluxBox น่าเสียดายที่ปุ่มเปิดปิดอยู่เหนือ Backspace ซึ่งฉันคาดว่าจะมีปุ่มลบอยู่ใน OS X โปรแกรม PowerKeyสามารถใช้เพื่อทำการแมปปุ่มเปิดปิดใหม่เพื่อลบ ฉันจะทำสิ่งที่คล้ายกันใน X Windows ได้อย่างไร

ฉันปิดการใช้งานปุ่มเปิดปิดโดยการแก้ไข/etc/systemd/logind.confและการตั้งค่าHandlePowerKey = ignore ปุ่มเปิดปิดหลังจากนี้ฉันสามารถกดปุ่มเปิดปิดโดยไม่ต้องปิดแล็ปท็อป

การเรียกใช้xev -event keyboardแสดงให้เห็นว่า KeyPress สำหรับปุ่มเปิด / ปิดเครื่องกำลังถูกกินโดยกระบวนการอื่น:

MappingNotify event, serial 36, synthetic NO, window 0x0,
    request MappingKeyboard, first_keycode 8, count 248

KeymapNotify event, serial 36, synthetic NO, window 0x0,
    keys:  1   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   

KeymapNotify event, serial 37, synthetic NO, window 0x0,
    keys:  1   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   

อย่างไรก็ตามโดยการเรียกใช้ xterm โดยตรงจากคอนโซลฉันสามารถรับรหัสและทำการแมปคีย์ได้สำเร็จ

xinit /usr/bin/xterm -- :1
xev -event keyboard | tee /tmp/junk.txt
tail -n ???? /tmp/junk.txt
MappingNotify event, serial 28, synthetic NO, window 0x0,
    request MappingKeyboard, first_keycode 8, count 248

KeyPress event, serial 28, synthetic NO, window 0x600001,
    root 0xa1, subw 0x0, time 720369, (146,89), root:(148,91),
    state 0x0, keycode 124 (keysym 0x1008ff2a, XF86PowerOff), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 28, synthetic NO, window 0x600001,
    root 0xa1, subw 0x0, time 720369, (146,89), root:(148,91),
    state 0x0, keycode 124 (keysym 0x1008ff2a, XF86PowerOff), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

MappingNotify event, serial 29, synthetic NO, window 0x0,
    request MappingKeyboard, first_keycode 8, count 248

ณ จุดนี้มันเป็นไปได้ที่จะแมปกุญแจโดยใช้ xmodmap ฉันแมปไปที่แบ็กสแลชซึ่งดูง่ายกว่าลบ:

 xmodmap -e "keycode 124 = backslash bar"

ฉันสามารถรับฟังก์ชั่นที่เทียบเท่ากับการทำงานแทบจะไม่ได้โดยการเพิ่มสิ่งนี้ลงไป~/.fluxbox/keysแต่มันน่าเกลียดและช้าพอที่จะใช้ไม่ได้

  # Remap the power off to a delete key...
  XF86PowerOff :Exec xdotool key Delete

ฉันจะใช้ xmodmap หรือ setxkbmap เพื่อใช้ปุ่มเปิดปิดพร้อมกันกับโปรแกรมจัดการหน้าต่างปกติได้อย่างไร

คำตอบ:


3

ฉันไม่เข้าใจประโยคคำถามคำถามสุดท้าย แต่ฉันสามารถเกี่ยวข้องกับชื่อคำถาม: "Remapping power key to delete"

ลองแทนที่ "XF86PowerOff" หรือเพียงอันที่ตรงกับแป้นพิมพ์ของคุณด้วย "ลบ" ใน / usr / share / X11 / xkb / สัญลักษณ์ / inet

คุณต้องทำซ้ำหลังจากที่ระบบอัปเดตไฟล์ที่อัพเดต


ดูaskubuntu.com/questions/325272/…สำหรับรายละเอียด คำตอบนี้ควรได้รับการยอมรับ
phil294

1

มันไม่ใช่คำตอบที่แน่นอน แต่คุณลองกดfn+ delete? สิ่งนี้ควรทำหน้าที่เป็นลบจริงเทียบกับการกระทำจริงของ 'backspace' และอยู่ใกล้กับปุ่มเปิดปิด

เคล็ดลับอื่น:

fn+ enterทำหน้าที่เป็นปุ่มแทรกดังนั้นคุณควรกดshift+ fn+ enterและวางเหมือนคลิกกลาง


0

มันยากที่จะพูดอย่างแน่นอน สิ่งเหล่านี้อาจเป็นสิ่งที่คุณได้ลองไปแล้ว แต่อาจเป็นวิธีที่ง่าย

xmodmap ทำงานกับคีย์อื่นหรือไม่หรือมีบางสิ่งที่ fluxbox กำลังทำซึ่งกำลังทำลาย xmodmap โดยสิ้นเชิง?

จะเกิดอะไรขึ้นถ้าคุณเริ่ม x, modmap ปุ่มเปิดและเริ่ม fluxbox? การทำแผนที่ติดหรือไม่?

หากเรียกใช้ xmodmap ก่อนที่ fluxbox จะทำงานและเก็บการตั้งค่าของคุณคุณสามารถเขียนเชลล์สคริปต์เพื่อโทรทั้งสองอย่างตามลำดับที่เหมาะสมหรือถ้าคุณใช้ gdm มันควรอ่าน~/.xmodmapหรือ~/.xmodmaprcให้คุณโดยอัตโนมัติก่อนที่ fluxbox จะเข้าสู่รูปภาพ


ใช่ xmodmap ทำงาน ตอนนี้ฉันมีคำสั่ง alt และคำสั่งที่ถูกต้องทำแผนที่ใหม่เพื่อลบและแทรกตามลำดับโดยใช้ xmodmap -e "remove mod1 = Alt_L" -e "remove mod4 = Super_L" -e "เพิ่ม mod1 = Super_L" -e "เพิ่ม mod4 = Alt_L "-e" remove mod1 = Alt_R "-e" remove mod4 = Super_R "-e" keysym Alt_R = ลบ "-e" keysym Super_R = แทรก "
ธา

คุณสามารถรวมเอาท์พุทของ xmodmap -pke ภายใน fluxbox ได้หรือไม่?
Mike Fairhurst

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