
no-littering终极指南让你的~/.config/emacs目录保持整洁如新【免费下载链接】no-litteringHelp keeping ~/.config/emacs clean项目地址: https://gitcode.com/gh_mirrors/no/no-littering如果你是一位Emacs用户你可能已经注意到随着时间的推移你的~/.config/emacs目录会变得越来越混乱。各种插件和内置功能会在这个目录下创建大量的配置文件和数据文件使得管理和维护变得困难。no-littering就是为解决这个问题而生的工具它能帮助你保持Emacs配置目录的整洁有序让你的Emacs使用体验更加愉悦。 什么是no-litteringno-littering是一个Emacs插件它的主要目标是帮助用户保持~/.config/emacs目录的整洁。它通过修改各种Emacs包的路径变量将配置文件和数据文件分别集中存放在两个目录中no-littering-etc-directory默认位于~/.config/emacs/etc/用于存放配置文件no-littering-var-directory默认位于~/.config/emacs/var/用于存放数据文件这种方式类似于路径主题让所有Emacs包遵循统一的文件存放规范避免配置文件散落在各个角落。 为什么需要使用no-litteringEmacs生态系统非常丰富但不同的包在文件存放位置上缺乏统一标准。有些包将文件直接放在user-emacs-directory下有些放在子目录中还有些甚至放在$HOME目录下。这导致配置目录混乱难以管理难以区分哪些文件属于哪个包备份和迁移Emacs配置变得复杂新用户难以理解Emacs的文件结构no-littering通过统一文件存放规则解决了这些问题让你的Emacs配置更加专业和可维护。 安装no-littering快速安装步骤你可以通过以下命令克隆no-littering仓库git clone https://gitcode.com/gh_mirrors/no/no-littering然后在你的Emacs配置文件中添加(require no-littering)自定义目录位置可选如果你想自定义配置文件和数据文件的存放位置可以在加载no-littering之前设置相关变量(eval-and-compile ; 确保编译时和运行时的值一致 (setq no-littering-etc-directory (expand-file-name config/ user-emacs-directory)) (setq no-littering-var-directory (expand-file-name data/ user-emacs-directory)) (require no-littering))⚙️ 配置建议自动保存、备份和undo-tree文件出于安全考虑no-littering不会自动修改Emacs的备份和自动保存相关设置。如果你希望将这些文件也集中管理可以调用专门的函数(no-littering-theme-backups)这个函数会将自动保存文件、备份文件和undo-tree历史文件统一存放在no-littering-var-directory下的相应子目录中。锁文件设置要将锁文件集中存放在一个目录可以添加以下配置(let ((dir (no-littering-expand-var-file-name lock-files/))) (make-directory dir t) (setq lock-file-name-transforms ((.* ,dir t))))最近文件设置如果你使用recentf功能可以将no-littering管理的目录排除在最近文件列表之外(require recentf) (add-to-list recentf-exclude (recentf-expand-file-name no-littering-var-directory)) (add-to-list recentf-exclude (recentf-expand-file-name no-littering-etc-directory))自定义设置保存位置Emacs默认会将自定义设置保存在你的初始化文件中。如果你想将它们存放在单独的文件中可以设置(setq custom-file (no-littering-expand-etc-file-name custom.el))Emacs 29原生编译缓存设置如果你使用Emacs 29或更高版本可以将原生编译缓存目录设置到no-littering管理的目录中(when (and (fboundp startup-redirect-eln-cache) (fboundp native-comp-available-p) (native-comp-available-p)) (startup-redirect-eln-cache (convert-standard-filename (expand-file-name var/eln-cache/ user-emacs-directory)))) 迁移现有配置如果你已经使用Emacs一段时间想要迁移到no-littering项目中提供了一个migrate.org文件它提供了迁移指南和工具。迁移步骤大致如下保存当前路径变量的值加载no-littering生成迁移脚本执行迁移脚本移除旧的自定义设置详细的迁移步骤和代码可以在migrate.org中找到。 支持的包no-littering支持大量的内置和第三方Emacs包包括但不限于内置包如abbrev、bookmark、calc、desktop、erc、eshell等第三方包如helm、company、projectile、org-roam、magit、lsp-mode等完整的支持列表可以在no-littering.el文件中查看。如果你使用的包不在列表中欢迎贡献代码来支持它 总结no-littering是一个简单而强大的工具它通过统一Emacs包的文件存放规则帮助你保持~/.config/emacs目录的整洁。使用no-littering你可以让Emacs配置更加有序和专业轻松找到和管理各个包的配置文件简化Emacs配置的备份和迁移减少因文件混乱导致的问题如果你还在为Emacs配置目录的混乱而烦恼不妨试试no-littering体验一个整洁有序的Emacs工作环境 更多资源项目源代码no-littering.el使用文档README.org迁移指南migrate.org【免费下载链接】no-litteringHelp keeping ~/.config/emacs clean项目地址: https://gitcode.com/gh_mirrors/no/no-littering创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考