防止 SublimeREPL 中的 'lein repl' 回显上一个命令

Prevent 'lein repl' in SublimeREPL from echoing the previous command

我在 OS X 10.10.5 和 Ubuntu 16.04 上 运行ning Sublime Text 3 Build 3117。我刚刚在两者上都安装了 Leiningen 2.6.1,并且开始使用 SublimeREPL。我正在关注 lein tutorial。这是我的 project.clj,以防万一:

(defproject my-stuff "0.1.0"
  :description "Leiningen Tutorial Project"
  :url "http://example.com/FIXME"
  :license {:name "MIT"
            :url "http://opensource.org/licenses/MIT"}
  :dependencies [[org.clojure/clojure "1.8.0"]]
  :main ^:skip-aot my-stuff.core
  :target-path "target/%s"
  :profiles {:uberjar {:aot :all}}
  :repl-options {
    ;; custom prompt
    prompt (fn [ns] (str "> " ))
  }
)

现在,当我 运行 lein replmy-stuff 目录中从命令行和 运行 任意命令(我一直在使用 (+ 1 2 3)), 它很好地打印出答案:

但是,如果我从 SublimeREPL 运行 lein repl 聚焦 project.clj 和 运行 相同的命令,它会在打印 [=43= 之前回显命令] 值:

我还为 SublimeREPL 创建了一个 lein trampoline run -m clojure.main 命令,它没有回显问题:

基本上,我想做的是能够 运行 使用 project.clj 的 REPL,但在打印输出之前不会回显每个命令。我似乎无法弄清楚如何使用 project.clj 在 Sublime 中 运行 一个蹦床 REPL,如果这是最好的选择的话。如果有不同的方式,即使用 lein repl,我只想摆脱命令回显,并使其看起来类似于我从命令行 运行 时出现的内容。

感谢 Sublime Text 论坛上的一些 help,我得到了答案:您只需将 "suppress_echo": true 放入定义 Clojure 菜单选项的 Main.sublime-menu 文件中。在这种情况下,打开 Packages/SublimeREPL/config/Clojure/Main.sublime-menu,在 "extend_env": {"INSIDE_EMACS": "1"} 之后输入一个逗号 ,,然后在下一行输入 "suppress_echo": true,一切就绪。