代码之家  ›  专栏  ›  技术社区  ›  shantanu

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

  •  0
  • shantanu  · 技术社区  · 8 年前

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

    1 回复  |  直到 8 年前
        1
  •  4
  •   MattDMo    8 年前

    您只需打开项目的 project.clj 文件,确保它有焦点,然后选择 Tools → SublimeREPL → Clojure → Clojure 。此运行 lein repl 在里面 项目.clj 的文件夹。

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

    1. 选择 Preferences → Browse Packages… 打开 Packages 文件夹( ~/Library/Application Support/Sublime Text 3/Packages )在Finder中。
    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 菜单选项。