ฉันใช้use-package
เพื่อจัดการแพ็คเกจที่ติดตั้งและbind-key
กำหนดการกระทำให้กับคีย์แบบกำหนดเองที่ฉันชอบ
ฉันแทนที่ที่สุดของการเริ่มต้น Emacs ปุ่มลัด (เช่นC-nกลายเป็นM-k, C-pกลายเป็นM-i) แต่ฉันตกลงกับโหมดอื่น ๆ เอาชนะโครงการปุ่มลัดของฉัน อย่างไรก็ตามในบางครั้งฉันต้องการให้ปุ่มกดยังคงอยู่ ฉันต้องการความM-kหมายอย่างอื่นมากกว่าใน Gnus หรือ Helm ที่เป็นค่าเริ่มต้น
อย่างไรก็ตามพวกเขาขัดแย้งกันในการเริ่มต้นของ Emacs เพราะฉันไม่สามารถเพิ่มการเชื่อมโยงกับ keymap ได้หากไม่มีอยู่ (เพราะuse-package
บางครั้งทำให้การโหลดแพคเกจล่าช้า) เช่นคำสั่งต่อไปนี้มีข้อผิดพลาด (เช่น(void-variable helm-map)
) เนื่องจาก Helm และ Gnus ยังไม่โหลดเต็มที่
(bind-key "M-Y" 'helm-end-of-buffer helm-map)
(bind-key "M-k" 'helm-next-line helm-find-files-map)
(bind-key "M-s" 'other-window gnus-summary-mode-map)
ฉันมีuse-package
การร้องขอทั้งหมดของฉันในไฟล์เดียวและbind-key
สำหรับการผูกคีย์ที่กำหนดเองในไฟล์อื่น ฉันไม่ต้องการผูกuse-package
สายไว้เพราะบางทีฉันอาจต้องการเผยแพร่รูปแบบการผูกกุญแจที่กำหนดเองของฉันเป็นแพ็คเกจแบบสแตนด์อโลน จะทำอย่างไรถ้าฉันต้องการให้ใครบางคนติดตั้งแบบแผนของฉันมี Helm และ Gnus keybindings ในพื้นที่อยู่ด้วยหรือไม่
ฉันจะจัดการการโยงbind-key
คีย์- โลคัลโหมดได้อย่างไรเพื่อให้คีย์ทั้งหมดถูกตั้งค่าแม้ว่าจะโหลดแพ็กเกจเมื่อเร็ว ๆ นี้และการตั้งค่าคีย์ทั้งหมดอยู่ในไฟล์เดียว