我正在尝试将我的.emacs文件配置为在Windows,Linux和Mac环境中工作 - 具体来说,我需要它为org-mode选择正确的字体和某个目录.
我尝试了下面加载正确的字体,但没有加载为org-mode指定的路径:
;; On Windows
(if (eq system-type 'windows-nt)
(set-default-font "-outline-Consolas-normal-r-normal-normal-14-97-96-96-c-*-iso8859-1")
(setq load-path (cons "~/elisp/org-6.34c/lisp" load-path))
)
;; On Linux
(if (eq system-type 'gnu/linux)
(set-default-font "Inconsolata-11")
(setq load-path (cons "~/elisp/org-current/lisp" load-path))
)
我尝试了以下内容,在我的Windows机器上返回错误Font Inconsolata-11 is not defined,并在我的Linux机器上返回错误Font -outline-Consolas-normal-r-normal-normal-14-97-96-96-c-*-iso8859-1 is not defined.对于这两者,未加载指定的组织路径:
;; On Windows
(if (eq system-type 'windows-nt)
(setq load-path (cons "~/elisp/org-6.34c/lisp" load-path))
(set-default-font "-outline-Consolas-normal-r-normal-normal-14-97-96-96-c-*-iso8859-1")
)
;; On Linux
(if (eq system-type 'gnu/linux)
(setq load-path (cons "~/elisp/org-current/lisp" load-path))
(set-default-font "Inconsolata-11")
)
我system-type在两个环境中评估了变量,并且它们都正确评估.
任何人都可以看到什么是错的 - 而且,我不是很精通emacs-lisp,你能看到我正在做出的错误假设吗?
谢谢Zachary
请注意,lisp 中的 if 是 if-then-else。所以,在第一种情况下,如果是 Windows,则设置字体,否则设置 Windows 的加载路径!然后,如果 linux 设置字体,则独立地进行操作,否则设置 linux 的加载路径!
尝试
(if (eq system-type 'windows-nt)
(progn
(setq load-path (cons "~/elisp/org-6.34c/lisp" load-path))
(set-default-font "-outline-Consolas-normal-r-normal-normal-14-97-96-96-c-*-iso8859-1")
)
(progn
(setq load-path (cons "~/elisp/org-current/lisp" load-path))
(set-default-font "Inconsolata-11")
)
)
Run Code Online (Sandbox Code Playgroud)
这在 Mac 或其他平台上不起作用,但如果您只使用过 NT 或 Linux,那么这应该可以。否则,如果在第二个程序之外,您可以粘贴另一个...
| 归档时间: |
|
| 查看次数: |
2523 次 |
| 最近记录: |