如何在 Sublime REPL 中 运行 现有的 Clojure 程序

How to run existing Clojure programme in Sublime REPL

我已经设置了 sublime REPL(Sublime 2, MAC) 并且能够 运行 像 (+ 2 2) 这样的小型 Clojure 程序。我使用 lein lein new app clojure-noob 创建了一个小项目,我可以通过 lein repl 运行 它。并加载项目中定义的主要class。如何在 Sublime REPL.

中加载相同的 main class

您需要做的就是在 Sublime 中打开项目的 project.clj 文件,确保它有焦点,然后 select Tools → SublimeREPL → Clojure → Clojure .这会在 project.clj 的文件夹中运行 lein repl

如果您不想通过这么多子菜单来打开 REPL,您可以这样做:

  1. Select Preferences → Browse Packages… 在 Finder 中打开 Packages 文件夹 (~/Library/Application Support/Sublime Text 3/Packages)。
  2. 转到 User 文件夹并创建以下层次结构:Packages/User/SublimeREPL/config/Clojure.
  3. Clojure 中创建一个名为 Main.sublime-menu 的新文件,并使用 JSON 语法在 Sublime 中打开它。
  4. 将以下内容添加到文件中:

    [
         {
            "id": "tools",
            "children":
            [
                {"command": "repl_open",
                 "caption": "Clojure",
                 "id": "repl_clojure",
                 "args": {
                    "type": "subprocess",
                    "encoding": "utf8",
                    "cmd": {"windows": ["lein.bat", "repl"],
                            "linux": ["lein", "repl"],
                            "osx":  ["lein", "repl"]},
                    "soft_quit": "\n(. System exit 0)\n",
                    "cwd": {"windows":"c:/Clojure",
                            "linux": "$file_path",
                            "osx": "$file_path"},
                    "syntax": "Packages/Clojure/Clojure.tmLanguage",
                    "external_id": "clojure",
                    "extend_env": {"INSIDE_EMACS": "1"}
                    }
                }
            ]
        }
    ]
    
  5. 保存文件后,您现在将有一个 Tools → Clojure 菜单选项。