การเลียนแบบปุ่มคำสั่ง / alt / control สไตล์ Mac ใน Linux


15

ฉันชอบที่ Mac จะแยกคีย์คำสั่งออกจากปุ่มควบคุมเพื่อให้ทางลัด OS และทางลัดข้อความมีอยู่จริง มันมีประโยชน์อย่างไม่น่าเชื่อโดยเฉพาะอย่างยิ่งเพราะจะช่วยให้ทางลัด emacs ทุกที่

ฉันค้นหายูทิลิตี้บางอย่างเกือบทุกที่ที่สามารถอนุญาตสิ่งนี้และไม่พบสิ่งใด ความช่วยเหลือใด ๆ

หมายเหตุ: ฉันต้องการทำมากกว่าทำแผนที่ใหม่ ฉันต้องการแยกทางลัด OS และปุ่มลัดข้อความออกจากกันจริงๆ วิธีเดียวที่ฉันเห็นการทำเช่นนั้นคือการไปยังแต่ละทางลัดใน Gnome และ Compiz ด้วยตนเองและทำการเปลี่ยนแปลง

คำตอบ:


2

ฉันไม่ได้ลองตัวเอง แต่ฉันพบสิ่งนี้มากกว่า "ถาม Ubuntu":

ติดตั้ง AutoKey:

apt-get install autokey-gtk

และตั้งวลีเป็น:

Phrase Text: <ctrl>+C (actually type out the <ctrl>+ here)
Paste Using: Keyboard
Abbreviation: None
Hotkey: <super>+v
Window Filter: None

ดูที่นี่: วิธีทำให้คีย์บอร์ดทำงานเช่น OSX System Wide


1

อัปเดต 02/03/2020

ตอนนี้ Kinto ได้รับการเขียนใหม่ใน C สำหรับระบบ Ubuntu / Debian โดยใช้ x11 นอกจากนี้ยังใช้ไฟล์กำหนดค่า json ทำให้ง่ายต่อการจัดการและขยายไปยังแอปพลิเคชันอื่น ๆ นอกเหนือจากเทอร์มินัล แอพนี้ไม่มีการแมปไปที่ Super ในแอป Terminal อีกต่อไปตอนนี้มันจะจับคู่กับ Ctrl + Shift เพื่อสร้างความรู้สึกแบบเดียวกับการใช้คีย์ Cmd

โปรดชำระเงินรุ่นล่าสุด https://github.com/rbreaves/kinto

การเปลี่ยนแปลงหลักเพื่ออนุญาตการเปลี่ยนแปลง Super = Ctrl + Shift อยู่ในไฟล์สัญลักษณ์นี้

default partial xkb_symbols "mac_levelssym" {
    key <LWIN> {
      repeat= no,
      type= "ONE_LEVEL",
      symbols[Group1]= [ Hyper_L ],
      actions[group1]=[ SetMods(modifiers=Shift+Control) ]
    };
    key <RWIN> {
      repeat= no,
      type= "ONE_LEVEL",
      symbols[Group1]= [ Hyper_R ],
      actions[group1]=[ SetMods(modifiers=Shift+Control) ]
    };
};

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

โปรแกรมติดตั้ง Kinto ใช้ python เพื่อทำการติดตั้งครั้งแรกหลังจากนั้นเป็นเพียงบริการ systemd, bash, xprop, setxkbmap และ xkbcomp เท่าที่ฉันกังวลมันเป็นวิธีแก้ปัญหาที่เร็วที่สุดและเป็นไปได้มากที่สุดสำหรับปัญหานี้ที่คุณจะพบ

https://github.com/rbreaves/kinto

https://medium.com/@benreaves/kinto-a-mac-inspired-keyboard-mapping-for-linux-58f731817c0

นี่คือส่วนสำคัญเช่นกันหากคุณต้องการเห็นสิ่งที่เป็นหัวใจของมันทั้งหมดมันจะไม่สลับคีย์แมปของคุณเมื่อต้องการ ส่วนสำคัญยังไม่มีไฟล์ xkb keymap ที่กำหนดเองที่ตั้งค่าเคอร์เซอร์ลักษณะ macOS / การใช้คำที่ใช้ Cmd และปุ่มลูกศร

https://gist.github.com/rbreaves/f4cf8a991eaeea893999964f5e83eebb

เนื้อหาสาระสำคัญ

# permanent apple keyboard keyswap
echo "options hid_apple swap_opt_cmd=1" | sudo tee -a /etc/modprobe.d/hid_apple.conf
update-initramfs -u -k all

# Temporary & instant apple keyboard keyswap
echo '1' | sudo tee -a /sys/module/hid_apple/parameters/swap_opt_cmd

# Windows and Mac keyboards - GUI (Physical Alt is Ctrl, Physical Super is Alt, Physical Ctrl is Super)
setxkbmap -option;setxkbmap -option altwin:ctrl_alt_win

# Windows and Mac keyboards - Terminal Apps (Physical Alt is Super, Physical Super is Alt, Physical Ctrl is Ctrl)
setxkbmap -option;setxkbmap -option altwin:swap_alt_win

#
# If you want a systemd service and bash script to help toggle between
# GUI and Terminal applications then look at project Kinto.
# https://github.com/rbreaves/kinto
#
# Note: The above may not work for Chromebooks running Linux, please look
# at project Kinto for that.
#
# If anyone would like to contribute to the project then please do!
#

โปรดอย่าโพสต์คำตอบเดียวกันกับคำถามหลายข้อ หากข้อมูลเดิมตอบทั้งสองคำถามจริง ๆ แล้วคำถามหนึ่ง (โดยปกติจะเป็นคำถามที่ใหม่กว่า) ควรปิดเหมือนกันกับคำถามอื่น คุณสามารถระบุสิ่งนี้ได้ด้วยการลงคะแนนเพื่อปิดเป็นซ้ำหรือหากคุณไม่มีชื่อเสียงเพียงพอให้ยกธงขึ้นเพื่อระบุว่าซ้ำกัน มิฉะนั้นปรับคำตอบสำหรับคำถามนี้และไม่เพียงแค่วางคำตอบเดียวกันในหลาย ๆ ที่
DavidPostill

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