2014-01-20 12 views
7

Leiningen & ClojureはWindows 8でSublime Textとは別に作業しています(Windows PowerShellでreplを使用できるなど)。SublimeREPL、Clojure&Windows 8

私の問題は、SublimeREPLがSublimeTextで動作することができないということです(REPLはロードされますが、何もしません)。私が行方不明になったり、失敗したりするシンプルなトラップはありますか?トラブルシューティングのための一連の手順はありますか?

答えて

7

Clojure REPLが動作する方法については、少なくともXP(私はまだWin7または8では試していません)でどのように動作するかについては、this SublimeREPL issueを参照してください。基本的には、Clojureのメニューファイルを編集し、コマンドをlein replからlein trampoline run -m clojure.mainに変更しました。何らかの理由でそのトリックがありました。また、パスを$fileに変更しましたので、project.cljがSublimeの現在のタブである間にREPLを開くことができ、REPLはプロジェクトの設定を継承する必要があります。

[ 
    { 
     "id": "tools", 
     "children": 
     [{ 
      "caption": "SublimeREPL", 
      "mnemonic": "r", 
      "id": "SublimeREPL", 
      "children": 
      [ 
       {"caption": "Clojure", 
       "id": "Clojure", 
       "children":[ 
        {"command": "repl_open", 
        "caption": "Clojure Trampoline", 
        "id": "repl_clojure", 
        "args": { 
         "type": "subprocess", 
         "encoding": "utf8", 
         "cmd": {"windows": ["lein.bat", "trampoline", "run", "-m", "clojure.main"], 
           "linux": ["lein", "repl"], 
           "osx": ["lein", "repl"]}, 
         "soft_quit": "\n(. System exit 0)\n", 
         "cwd": {"windows":"$file_path", 
           "linux": "$file_path", 
           "osx": "$file_path"}, 
         "syntax": "Packages/Clojure/Clojure.tmLanguage", 
         "external_id": "clojure", 
         "extend_env": {"INSIDE_EMACS": "1"} 
         } 
        }, 
        {"command": "clojure_auto_telnet_repl", 
        "id": "repl_clojure_telnet", 
        "caption": "Clojure-Telnet"}]} 
      ] 
     }] 
    } 
] 
+0

素晴らしい説明ありがとうございます。上記のパッケージ/ユーザ/ SublimeREPL/config/Clojure/Main.sublime-menuパスは次のようになります:C:\ Users \ MY_USERNAME \ AppData \ Roaming \ Sublime Text 3 \ Packages \ User \ SublimeREPL \ config \ Clojure – duncsoz

+0

correct - ディレクトリの検索方法を説明する回答が更新されました。異なるユーザー/バージョンのWindowsで異なる場所にある可能性があります。 – MattDMo

1

が、私はGitリポジトリのBashシェルでこの問題を解決し、次のように参照するために

は、完全Packages/User/SublimeREPL/config/Clojure/Main.sublime-menuファイルです(PackagesPreferences -> Browse Packages...経由でアクセス可能です)。私はこれは私が使用するコマンドである代わりにlein.bat

のLeiningenをのシェルスクリプトのバージョンを使用していますlein.shを想定し

["C:\\Program Files\\Git\\bin\\sh.exe", "-l", "--", "/d/lein.sh", "repl"] 

Dである:

レイントランポリンコマンド\は時々動作しますlein replとは異なり、未知の理由により失敗する可能性があります。

+0

残念ながら、これはうまくいきません。少なくとも私のマシンではSublime Text 2を使用しています.REPL(gitbashで)を実際に起動しますが、 'lein repl'と同じように、何も実行せずハングアップします。 – Jan