^ M字符显示在clojure slime-repl

时间:2012-04-11 02:02:27

标签: emacs clojure slime termination

我的代码中的每个(println...)都会导致在REPL中出现终止的^ M字符。我在一个单独的窗口中运行了lein swank,并通过M-x slime-connect

进行了连接

我认为这可能与Emacs showing ^M in a process buffer的问题相同,但我还没有尝试过这个问题。

我已尝试将行尾样式更改为unix / dos / mac,并遵循我在网上找到的其他一些处方,但我认为其中大部分与实际更换^ M有关在文件或缓冲区中,或写一些我认为可能有点过分的elisp。这真的应该是某个地方的复选框,如果不是字面上至少在概念上。

我在Win7 x64上使用Emacs 24 + clojure模式+ slime + swank。

1 个答案:

答案 0 :(得分:5)

此方法对我有用:https://stackoverflow.com/a/750933

基本上只需将此代码添加到.emacs:

(defun remove-dos-eol ()
  "Do not show ^M in files containing mixed UNIX and DOS line endings."
  (interactive)
  (setq buffer-display-table (make-display-table))
  (aset buffer-display-table ?\^M []))

(add-hook 'slime-repl-mode-hook 'remove-dos-eol) ;Remove ^M from clojure repl in windows