Skip to content
devn edited this page Feb 28, 2012 · 3 revisions

Multi-repl, single environment, evaluating forms from VIM

Dependencies

  • Install Tmux
  • Install tslime.vim
  • Install Leiningen plugin: lein-repls
    • Also install the cljsh script on your path

Configure Lein repl

In project.clj add:

  :repl-init myapp.repl

In src/clj/myapp/repl.clj:

(ns myapp.repl
  (:use [cljs.repl.browser :only (repl-env)])
  (:require [cljs.repl]))

(defn repljs []
  (cljs.repl/repl (repl-env)))

Run repls

  • Open two TMux sessions in your project root directory
  • Run lein repls in one of them
    • This is your "server" or "macros" or "clj" repl
  • Run cljsh in the other one
    • This is your "client" or "cljs" repl
    • Eval (repljs)

Connect VIM

  • Open two instances of Vim
    • One in your src/clj directory and one in src/cljs directory
  • Press ^c^c in each, selecting the right TMux session when prompted