为什么emacs用问号代替fn?
问题描述:
我使用clojure模式+ nrepl + paredit + lein-swank。每当我在clojure中使用匿名函数,(fn [x](+ x 1)), 它会被自动替换为? (问号)。为什么emacs用问号代替fn?
- 我如何关闭这个功能?
- 这是什么原因?
答
正如在评论中提到的,这几乎可以肯定是一种防止f正确显示的字体问题。您可以通过将
(remove-hook 'clojure-mode-hook 'esk-pretty-fn)
到您init.el文件或同等关闭此功能,或将其粘贴到*scratch*
缓冲区,并在年底创下按Ctrl-XCTRL-E用光标该线。
这里有一个猜测:你有尝试与'λ'更换fn'的'每个实例, 一些代码,但它不工作,因为你的Emacs是旧的或东西。从'emacs -q'开始,一个接一个地加载你的东西,直到你看到一个这样做。 –
什么是您的Emacs版本,以及您用于Emacs的字体?你使用Starter Kit或类似的东西吗? – lunaryorn
未能显示λ可能是问题所在。现在Emacs已经很长时间unicode完成了,很可能他没有安装可以显示这个字符的字体。 @Attilah你是Linux用户吗?如果是的话,你可以安装一些名为unifont的东西来帮助其他字体填入缺少的字符。您也可以禁用该操作,如[此处]所述(http://stackoverflow.com/questions/5920786/why-is-clojure-mode-replacing-fn-with-some-curly-f-character) – noisesmith