/Clojure-Kit

Clojure/ClojureScript plugin for IntelliJ-based IDEs

Primary LanguageKotlin

Clojure-Kit [stable] [dev]

Build Status GitHub license

Clojure and ClojureScript plugin for IntelliJ-based tools.

Compatible with versions 2016.2 and up, and:

  • Aims to be as zero configuration as possible
  • Adds color options, basic formatter, documentation, structure view and breadcrumbs
  • Provides Analyze data flow [to | from] here functionality
  • Features basic Leiningen and Boot support
  • Plays nice with IDE Scripting Console
  • Written in Kotlin with Grammar-Kit

FAQ

Q. How to install the plugin?
A. Go to Settings | Plugins, press Browse Repositories button, search for Clojure-Kit, install, relaunch.

Q. How to open my project?
A. Use whichever way IDE provides to add a project directory to Project View.

Q. Where are my dependencies?
A. Dependencies are collected from lein or boot on project load. There's no dedicated UI to view or configure them. Use Sync [All] Dependencies actions for the corresponding project.clj or build.boot available in editor floating toolbar (upper-right corner), Project View and Goto Action popup (ctrl-shift-A or cmd-shift-A).

Q. How to launch REPL?
A. Use Execute in REPL action (ctrl-enter or cmd-enter) to send the selected text or a form under caret to REPL. Either a new or existing nREPL server console UI will show up. Then forms can be sent right from project files or the console editor.

Q. How to connect to remote REPL or ClojureScript REPL on a different port?
A. Use Connect to REPL action (ctrl-shift-P or cmd-shift-P) to enter host, port or nrepl URL and create a new remote console. Remote consoles are not mapped to project files, use Exclusive Mode toolbar toggle or popup (ctrl-shift-L or cmd-shift-L) to redirect all commands to one specific REPL.

Change log

0.7.0

  • Editor: multi-method & protocol method navigation (ctrl-U, ctrl-alt-B)
  • Editor: parameter info inlays; expression type hint
  • Formatter: follow bbatsov style guide
  • Code style: ;; (double-semicolon) commenting toggle
  • QuickDoc: search and display related specs
  • REPL: the first repl gets exclusive mode by default
  • Internals: redesigned AST/PSI, name resolution, indices and etc.

0.5.0

  • REPL: connect to remote REPL
  • REPL: send all commands to one specific REPL
  • REPL: console history actions
  • Editor: complete namespaces and keywords
  • Structural editing: improved caret handling
  • Main menu: add clojure actions to Edit and Tools

0.4.4

  • Editor: improved structural editing actions
  • Editor: more items in structure view and breadcrumbs
  • Editor: some default colors for Default and Darcula color schemes
  • Editor: (comment), #_ and quoted-symbol literal coloring
  • ClojureScript: resolve and usage search for ::aliased/keywords
  • REPL: detect running nrepl via .nrepl-port file

0.4.3

  • Language: basic language support for Clojure and ClojureScript
  • Editor: colors, completion, navigation, parameter info, quickdoc and live templates
  • Code Insight: Analyze data flow [to | from] here
  • Structural editing: slurp, barf, splice, rise, kill and smart delete, backspace
  • Dependencies: resolve lein and boot projects dependencies to ~/.m2/ repository
  • REPL: lein and boot supported