0

我在我的 Windows 7 计算机上安装了多个 emacs,每个配置都略有不同。比方说installation1and installation2,哪里installation1是主要的 emacs,哪里installation2是附属的。

我想维护两组.emacs文件和.emacs.d.目录,installation1以便在默认HOME%appdata%目录(C-x C-f ~/.emacs RET)中查找它,但installation2根本无法.emacs在这些目录中找到文件。也就是说,我installation2不想查看目录或文件的HOMEor%appdata%位置。理想情况下,这将通过重新定义 的扩展来实现。.emacs.d.emacs~installation2

我想我可以拥有一个(add-to-list 'load-path "C:/installation2-location/.emacs.d/lisp/")并将其保存到与 emacs 可执行.emacs文件位于同一目录中的文件中installation2,但我不确定这是一个强大的解决方案。

欢迎提出建议。

4

1 回答 1

1

那么您可以使用系统类型变量。来自 Emacs 帮助

system-type 是在“C 源代码”中定义的变量。它的价值是达尔文

文档:该值是表示您正在使用的操作系统类型的符号。特殊值: gnu' compiled for a GNU Hurd system.为 GNU/Linux 系统编译的 gnu/linux'。
gnu/kfreebsd' compiled for a GNU system with a FreeBSD kernel. darwin' 为 Darwin (GNU-Darwin, Mac OS X, ...) 编译。
ms-dos' compiled as an MS-DOS application.windows-nt'
编译为本机 W32 应用程序。`cygwin' 使用 Cygwin 库编译。其他任何东西(在 Emacs 24.1 中,可能的有:aix、berkeley-unix、hpux、irix、usg-unix-v)表示某种 Unix 系统。

或者使用 system-name 来确定区分相同的机器。

最后,您可以创建一个函数来在安装 1 中加载您想要的内容,另一个在安装 2 中加载您想要的内容。但是我看不出有什么正当理由可以解释为什么要在同一台机器上维护不同的 emacs.d。

于 2012-11-29T18:19:10.070 回答