Liking cljdoc? Tell your friends :D

Clojars Project


A Leiningen plugin to use clojure-lsp features API.


Add the plugin to your project.clj:

:plugins [[com.github.clojure-lsp/lein-clojure-lsp "1.4.9"]]


This plugin accepts the following pattern clojure-lsp <command> "<options>".

For more information on all available commands and options, Check the API documentation.

lein CLI

$ lein clojure-lsp clean-ns --dry


You can configure your project.clj to add custom aliases to run specific clojure-lsp tasks, below you can find a simple example with both tasks for formatting, cleaning the namespaces as aliases to just check instead of change the code (dry):

:clojure-lsp {:settings {:clean {:ns-inner-blocks-indentation :same-line}}} ;; API options
:aliases {"clean-ns" ["clojure-lsp" "clean-ns" "--dry"]          ;; check if namespaces are clean
          "format" ["clojure-lsp" "format" "--dry"]              ;; check if namespaces are formatted
          "diagnostics" ["clojure-lsp" "diagnostics"]            ;; check if project has any diagnostics (clj-kondo findings)
          "lint" ["do" ["clean-ns"] ["format"] ["diagnostics"]]  ;; check all above

          "clean-ns-fix" ["clojure-lsp" "clean-ns"]              ;; Fix namespaces not clean
          "format-fix" ["clojure-lsp" "format"]                  ;; Fix namespaces not formatted
          "lint-fix" ["do" ["clean-ns-fix"] ["format-fix"]]}     ;; Fix both

Can you improve this documentation? These fine people already did:
Clojure LSP Bot, Eric Dallo & Scott Bale
Edit on GitHub

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close