很久以前,当我编写我的.emacs安装程序[1]时,我使用shell脚本来编译和加入整个事情。问题是现在很旧,“脾气暴躁”,所以我现在重写它来代替的东西,如:.emacs,automake和cmake
(defmacro make-new-comment(mode face strcom color1 color2)
(list 'progn
`(make-face ',face)
`(if (not (assoc ,strcom ,(intern (concat (symbol-name mode) "-comments-alist"))))
(setf ,(intern (concat (symbol-name mode) "-comments-alist"))
(append ,(intern (concat (symbol-name mode) "-comments-alist")) '((,strcom . ,face)))
)
)
`(modify-face ',face ,color1 ,color2 nil t nil nil nil nil)
)
)
和事发生在我。编译时我访问几个给出系统信息的环境变量,例如[2],大多数程序的全名由一些使用comint [3]的模式调用。而不是阅读环境变量,我可以使用一些类似autoconf的工具来调整.emacs文件,然后编译它们。
问题是,autoconf只是简单的丑陋。我考虑过cmake,但是构建自己的构建系统时文档非常差。我不熟悉替代系统。
对此提出建议?
[1]:为了说清楚,通过.emacs设置我的意思是我有30个左右的文件和两个子代码。更不用说几个包(在包含时)并不是标准emacs发行版的一部分。
[2]我用例如“”代替了,因为显然很多人不知道,例如,无论是他们还是他们不知道一个例子。
[3]如diff-mode和ruby-mode。
为什么你不能只是改变你的PATH设置来找到像diff一样的常见程序? – 2010-09-05 20:54:36
为什么你需要设置一些环境变量来查找像diff或grep这样的工具,这些工具通常应该在你的PATH上? – 2010-09-06 15:21:24
你为什么完全改变这个问题。请开始一个新问题并将其恢复。谢谢。 – ocodo 2010-09-07 02:13:34