ฉันใช้โครงสร้างต่อไปนี้เพื่อติดตามแพ็คเกจและไฟล์
~/.emacs.d
|-- elpa ;; Package.el packages
|-- hack ;; Development versions of packages (e.g. org, personal packages)
|-- single-lisp ;; Individual lisp files from outside sources (e.g. EmacsWiki)
|-- site-lisp ;; Lisp packages not managed by package.el (directories)
|-- user-config ;; Machine/situation specific customization (work vs home)
| `-- custom.el ;; Customization settings
|-- lisp ;; Individual .el files to keep init.el clean
| `-- defaults.el ;; Default configuration settings
`-- init.el
ฉันจะใช้use-package
เพื่อจัดการแพคเกจที่ถูกโหลดและการกำหนดเองที่ถูกตั้งค่าไว้สำหรับแต่ละแพ็คเกจ เวลาส่วนใหญ่เท่านั้นhack
และelpa
จำเป็นต้องมีการปรับปรุงโฟลเดอร์อื่น ๆ มักจะเป็นแพคเกจแบบครั้งเดียวที่ฉันต้องการทดสอบหรือใช้งานสั้น ๆ แต่ไม่จำเป็นต้องโหลด
custom.el
ใช้สำหรับปรับแต่งการตั้งค่าซึ่งฉันไม่ต้องการใช้ (และห้ามใช้เวอร์ชั่นแม้ว่าฉันจะใช้)
defaults.el
สำหรับการกำหนดค่าทั่วไป (เมนูบาร์แบบอักษรการเข้ารหัส ฯลฯ ) ที่สามารถเขียนทับในไฟล์. el ใด ๆuser-config/
เพื่อให้ระบบที่ทำงานได้ตามที่ฉันคาดหวัง แต่สามารถปรับให้เหมาะกับสภาพแวดล้อมได้
ผมเคยพยายามที่จะให้functions
, macros
, advice
ในแพคเกจที่แยกต่างหากเพื่ออนุญาตให้มีการวาดภาพระหว่างเนื้อหา แต่วิ่งเข้าไปในความหมาย / init.el
ต้องปัญหาจึงได้นำกลับมาเหล่านั้นลง ~/.emacs.d/lisp/
พวกเขาอาจได้รับการใส่กลับเข้าไป
ฉันพยายามที่จะจัดinit.el
ระเบียบเรียงลำดับเนื้อหาตามหน้าที่และวัตถุประสงค์เพื่อให้การค้นหามันอีกครั้งตรงไปตรงมา ฉันมีinit.el
ไฟล์เสาหินและยังคงเพิ่มเนื้อหาใหม่ในตอนท้าย (หรือที่ฉันคิดว่ามันอาจจะพอดี) และจากนั้นจะจบลงโดยไม่รู้ว่าสิ่งที่ฉันได้เพิ่มหรือที่ฉันได้เพิ่มเมื่อฉันไปหามัน (และ บางครั้งการค้นหาโดยใช้isearch
ไม่ได้ช่วยเพราะฉันจำไม่ได้ว่าฉันตั้งชื่อสิ่งต่าง ๆ อย่างไรในเวลานั้น)