Skip to content

Lein plugin to run clojure-lsp API features for your project

License

Notifications You must be signed in to change notification settings

clojure-lsp/lein-clojure-lsp

Repository files navigation

Clojars Project

lein-clojure-lsp

A Leiningen plugin to use clojure-lsp features API.

Installation

Add the plugin to your project.clj:

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

Usage

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

Aliases

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
,,,

About

Lein plugin to run clojure-lsp API features for your project

Resources

License

Stars

Watchers

Forks

Packages

No packages published