5

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

我认为这可能与Emacs 在进程缓冲区中显示 ^M 的问题相同,但我还没有尝试过该修复。

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

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

4

1 回答 1

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
于 2012-08-03T00:06:07.433 回答