You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+17-26
Original file line number
Diff line number
Diff line change
@@ -16,21 +16,23 @@ Calva's main reason for existance is to _provide Visual Studio Code users with a
16
16
17
17
## How to Connect Calva to your project
18
18
19
-
Let Calva start your project (_a.k.a. **Jack-in**_).
19
+
Let Calva start your project _a.k.a. **Jack-in**_. (Assuming you have a single project workspace. See [Workspace Layout](https://github.com/BetterThanTomorrow/calva/wiki/Workspace-Layouts) on the wiki for other setups)
20
20
21
-
1. Open your project in VS Code, and a file in the project. From the command line it could be something like: `code path/to/myproject README.md`.
21
+
1. Open your project folder in VS Code.
22
22
1. Issue the command **Start a Project REPL and Connect (aka Jack-In)**: `ctrl+alt+c ctrl+alt+j`.
23
23
1. Answer the prompts where Calva asks you a few things about your project.
24
24
25
-
When Calva has connected, it will open a REPL window giving you some getting started tips, and you can start hacking. The first thing you should always do to ”wake” Calva is to load/evaluate the current Clojure(Script) file: `ctrl+alt+c enter`.
25
+
When Calva has connected, it will open a REPL window giving you some getting started tips, and you can start hacking.
26
26
27
-
Troubles connecting? [Check here](https://github.com/BetterThanTomorrow/calva/wiki/Connect-Calva-to-Your-Project). (Please help keep that wiki page updated.)
27
+
Troubles connecting? See [Connect Calva to Your Project](https://github.com/BetterThanTomorrow/calva/wiki/Connect-Calva-to-Your-Project) on the wiki. (Please help keep that page updated.)
28
28
29
29
## Something to try first
30
30
31
-
You might want to start with evaluating some code. Calva has this notion about the ”current” form (the symbol under the cursor or the paren enclosed s-expr immediately adjacent to the cursor). Issue the **Evaluate Current Form Inline** command:`ctrl+alt+c e`.
31
+
You might want to start with evaluating some code. Calva has this notion about the ”current” form. Issue the **Evaluate Current Form Inline** command,`ctrl+alt+c e` with the cursor placed in different locations to get a feeling for how the current form is determined.
32
32
33
-
There is also a command for evaluating the current top level form, which aösp works inside `(comment)` forms supporting code experimentation. It looks something like so:
33
+
There is also a command for evaluating the current top level form. Good for evaluating various `def`s `defn`, `defthis`, `defthat`. With your cursor placed anywhere inside such a form, issue the **Evaluate Current Top Level Form (defun)** command (`ctrl+alt+c space`).
34
+
35
+
The Top Level command also works inside `(comment ...)` forms, treating the `comment` as creating a new top level context. It is good for in-file code experimentation. To use it place the cursor inside a form contained inside a `(comment...)` and issue the command from there. It looks something like so:
@@ -40,37 +42,22 @@ See also [Calva Top 10 Commands](https://github.com/BetterThanTomorrow/calva/wik
40
42
41
43
When something doesn't work and you think there might be a workaround for it, please see the [wiki](https://github.com/BetterThanTomorrow/calva/wiki/). Anyone can author the wiki so if you know about workarounds or gotchas or anything that is good to know about when using Calva, please edit the appropriate page (or create a new page).
42
44
43
-
44
45
## Features
45
-
46
-
### At a glance
47
46
- Syntax highlighting, plus:
48
47
- Rainbow parens
49
48
- Highlights misplaced brackets
50
49
- LISP friendly bracket matching
51
50
- Ignore form (`#_`) dimming and `(comment)` form highlighting
52
-
- Clojure code formatting
53
-
- Quickly and easily get your REPL connected
54
-
- Evaluate code inline
55
-
- Run tests
56
-
- Integrated REPL windows
51
+
- Code formatting and autoindent according to https://github.com/bbatsov/clojure-style-guide
52
+
- Support for [Clojure tools/deps](https://clojure.org/guides/deps_and_cli), [Leiningen](https://leiningen.org), [shadow-cljs](http://shadow-cljs.org), [lein-figwheel](https://github.com/bhauman/lein-figwheel), and [Figwheel Main](https://figwheel.org), and Nashorn repls. (For [Boot](https://boot-clj.com), only Connect scenarios work, there is no Jack-in yet.)
53
+
- Your [Custom Connect Sequences](https://github.com/BetterThanTomorrow/calva/wiki/Custom-Connect-Sequences), including fully customized CLJS REPLs.
54
+
- Switch the CLJS REPL connection between your different CLJS builds at will.
57
55
- Intellisense
58
56
- Go to / Peek at definition
59
57
- View docstrings on hover
60
58
- View function signatures on hover
61
-
- Supports all Clojure filetypes: `clj`, `cljc`, and `cljs`
62
-
- Easy toggle between `clj` and `cljs` repl for `cljc` files
63
-
- Autoindent according to https://github.com/bbatsov/clojure-style-guide
64
-
- Enables `clj` evaluation of Clojure code in all files (e.g. Markdown, etcetera).
65
-
- Support for [Clojure tools/deps](https://clojure.org/guides/deps_and_cli), [Leiningen](https://leiningen.org), [shadow-cljs](http://shadow-cljs.org), [lein-figwheel](https://github.com/bhauman/lein-figwheel), and [Figwheel Main](https://figwheel.org), and Nashorn repls. (For [Boot](https://boot-clj.com), only Connect scenarios work, no Jack-in yet.)
66
-
- Your [Custom Connect Sequences](https://github.com/BetterThanTomorrow/calva/wiki/Custom-Connect-Sequences), including fully customized CLJS REPLs.
67
-
- Switch the CLJS REPL connection between your different CLJS builds at will.
68
59
69
-
Demo: switch between `clj` and `cljs` repl sessions for `cljc` files:
### Test features not available with ClojureScript
107
98
108
99
Currently [`cider-nrepl` does not provide its test functionality for ClojureScript](https://github.com/clojure-emacs/cider-nrepl/issues/555) code. Please consider contributing to fixing that.
0 commit comments