gpt4 book ai didi

emacs - 如何在连接到 lein swank 的 ClojureBox (EmacsW32) REPL 中抑制 ^M 字符

转载 作者:行者123 更新时间:2023-12-01 12:57:50 26 4
gpt4 key购买 nike

我正在从我的 ClojureBox 连接到 swank 服务器安装。 IE。 lein swank 来 self 的项目目录,然后 M-x slime-connect 来自 EmacsW32。

但是,当我这样做时,我在 REPL (^M) 中到处看到 DOS 行结尾。即

user> (doc map)
-------------------------^M
clojure.core/map^M
([f coll] [f c1 c2] [f c1 c2 c3] [f c1 c2 c3 & colls])^M
Returns a lazy sequence consisting of the result of applying f to the
set of first items of each coll, followed by applying f to the set
of second items in each coll, until any one of the colls is
exhausted. Any remaining items in other colls are ignored. Function
f should accept number-of-colls arguments.^M
nil

user> (println "foo")
foo^M

我知道这与平台编码有关,但我不知道如何抑制它们。我在 EmacsW32 菜单中四处寻找并尝试了 java 命令行系统属性(在 lein.bat 中)-Dfile.encoding=ISO-8859-1 无济于事。

我还发现了其他关于在缓冲区内对 ^M 进行全局查找/替换的问题 - 但我想过滤 REPL 输出。

我还在 *inferior-lisp* 缓冲区中注意到以下内容:

(do (.. java.net.InetAddress getLocalHost getHostAddress) nil)(swank.swank/start-server "c:/Users/noahz/AppData/Local/Temp/slime.4912":encoding "iso-latin-1-unix")

最佳答案

我的 .emacs 中有这个:

(defun hide-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 []))

我只是在需要时用 M-x hide-eol 调用它。您可以绑定(bind)一个 key ,或者如果您愿意,可以将其放在某种钩子(Hook)中。

归功于不知名的人 - 我从某个地方复制了这个函数,但我不记得在哪里。

关于emacs - 如何在连接到 lein swank 的 ClojureBox (EmacsW32) REPL 中抑制 ^M 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8707679/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com