【发布时间】:2013-07-09 15:10:44
【问题描述】:
我在几台计算机(Linux 和 Windows 机器)上使用 Emacs,我的 .emacs.d 通过 ownCloud 同步:.emacs(在 ~ 或 Appdata 中)只加载 {ownCloud 目录}/.emacs.d/init.el。
我的问题是,如何将 init.el 的路径作为依赖于操作系统/用户名的变量。
例如,Zenburn theme 上的 README 要求您的 init 包含
(add-to-list 'custom-theme-load-path "~/.emacs.d/themes/")
但是由于我的主目录和 .emacs.d 的路径因机器而异,所以这不起作用。 我正在考虑这样的事情来解决它:
(add-to-list 'custom-theme-load-path "{THE DIRECTORY THAT CONTAINS THIS INIT FILE}/themes/")
这可以吗?我才两周才开始使用 Emacs,所以不要太用力:P
【问题讨论】:
-
哦,你可能想澄清你的问题。您的标题与正文不同。 (此外,init 文件的位置已经是一个变量)
-
谢谢大家。对于第二个问题(正文)的示例,事实证明我需要在各个系统的 .emacs 中定义 user-emacs-directory ,然后在同步的 init 文件中使用
(add-to-list 'custom-theme-load-path (concat user-emacs-directory "themes/"))的效果以允许主题文件夹。不完全优雅,但它有效。哦,对不起,问题不明确,那是在凌晨。感谢@BruceConnor 提供有关如何修改我的初始化文件的信息。
标签: emacs cross-platform