【问题标题】:Clojure evaluation without SLIME没有 SLIME 的 Clojure 评估
【发布时间】:2010-05-31 21:45:42
【问题描述】:

我是 Emacs 的初学者(但经验丰富的 Vim 用户)并尝试使用 Emacs+Clojure 组合。也许我的设置对于 Emacs 世界来说是不寻常的,因为我没有使用 SLIME/swank-clojure,而是在其中运行 clojure REPL 的 Emacs + eshell,主要是由于简单(或者可能是因为 SLIME 让我很害怕 :D)。

所以,也许这里有一个 Emacs 大师可以帮助我:是否存在任何快捷方式(或者可能是一些 elisp 示例)将代码块(sexps)从编辑缓冲区复制/粘贴到 eshell(并可能执行它)?

谢谢。

【问题讨论】:

    标签: emacs clojure


    【解决方案1】:

    我认为,您可以使用标准的 lower-lisp 命令,在 lower-lisp-program 变量中指定正确的 clojure 启动命令

    【讨论】:

    • 能否请您指定需要键入哪些命令?我无法理解上述答案......显然,这里是 vim 用户。 :)
    • @Bart:您可以通过使用前缀来指定低级lisp使用的命令,即“^U M-x run-lisp”。我使用“~/lein repl”,当然你可以指定任何 shell 文件来为你运行 Clojure。
    • 你需要在你的 emacs 文件中添加以下代码 (setq lower-lisp-program "java -jar PATH_TO_CLOJURE_JAR") 之后你可以直接运行 lower-lisp 命令,并直接从缓冲区评估 clojure 代码使用 C-x C-e(eval 最后一个表达式)等 - 参见inferior-lisp-mode 的描述
    【解决方案2】:

    两个感兴趣的命令是kill-sexp(通常绑定到C-M-k)和mark-sexpC-M-@)。后者将标记与forward-sexp 一起标记,然后可以跟随kill-ring-save (M-w) 将区域保存到杀伤环而不将其从缓冲区中删除。杀死后,在你方便的时候猛拉。

    请注意,SLIME 是一个非常出色的工作环境……您真的应该有一天尝试一下。 :-)

    【讨论】:

      猜你喜欢
      • 2012-11-19
      • 1970-01-01
      • 1970-01-01
      • 2011-03-03
      • 1970-01-01
      • 1970-01-01
      • 2011-05-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多