2014-01-20 6 views
7

Ich habe beide Leiningen & Clojure arbeitet unter Windows 8 getrennt von Sublime Text (z. B. kann ich ein Repl in Windows PowerShell arbeiten).Sublime Text, SublimeREPL, Clojure & Windows 8

Mein Problem ist, dass ich die SublimeREPL nicht in SublimeText arbeiten kann (die REPL wird geladen, tut aber nichts). Gibt es irgendwelche einfachen Fallen, die ich vermisse oder, wenn das nicht möglich ist, gibt es eine Reihe von Schritten, denen ich folgen könnte, um Fehler zu beheben?

Antwort

7

Bitte lesen Sie this SublimeREPL issue für Anweisungen, wie ich eine Clojure REPL funktionierte, zumindest auf XP (ich habe es noch nicht auf Win7 oder 8 versucht). Im Grunde habe ich die Menüdatei für Clojure bearbeitet und den Befehl von lein repl zu lein trampoline run -m clojure.main geändert, was aus irgendeinem Grund den Trick gemacht hat. Ich änderte auch den Pfad zu $file, so dass Sie eine REPL öffnen können, während Ihre project.clj die aktuelle Registerkarte in Sublime ist, und die REPL sollte die Projekteinstellungen erben.

Als Referenz die komplette Packages/User/SublimeREPL/config/Clojure/Main.sublime-menu Datei (Packages ist über Preferences -> Browse Packages...) ist wie folgt:

[ 
    { 
     "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

Tolle Anweisungen, danke. Nur zur Erläuterung von Sublime-Neulingen (wie mir) - der oben erwähnte Paket-/Benutzer-/SublimeREPL/config/Clojure/Mainclimate-Menüpfad lautet wie folgt: C: \ Users \ MY_USERNAME \ AppData \ Roaming \ Sublime Text 3 \ Pakete \ User \ SublimeREPL \ config \ Clojure – duncsoz

+0

korrekt - Ich habe die Antwort aktualisiert, um zu beschreiben, wie das Verzeichnis gefunden werden kann, da es sich an verschiedenen Orten für verschiedene Benutzer/Versionen von Windows befinden kann. – MattDMo

1

ich dieses Problem mit Git Bash Shell gelöst. Ich habe die Shell-Script-Version von Leiningen statt lein.bat verwendet

Dies ist der Befehl, den ich verwenden:

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

lein.sh unter der Annahme, in d: \

lein manchmal Trampolin Befehl verhält sich anders als lein repl und könnte aus unbekannten Gründen scheitern.

+0

Leider funktioniert das nicht - zumindest auf meinem Rechner mit Sublime Text 2. Es startet zwar die REPL (in Gitbash), aber wie bei "lein repl" führt es niemals einen Ausdruck aus und hängt einfach. – Jan

Verwandte Themen