Language Sever Protocol (LSP)

The Language Server Protocol (LSP) is a specification for tooling developers, defining a protocol for editors to talk to a language server and provide static analysis features, such as refactoring, symbol navigation, code completion, syntax highlighting.

A standard protocol means an LSP server implementation can support a wide range of tools, reducing the work of editor maintainers and helping ensure common features are available across all editors. LSP does not provide any implementation, this is left to tooling and editor developers.

practicalli/spacemacs.d provides an LSP configuration with minimal UI elements and no conflicts with CIDER.

     (lsp :variables
          lsp-ui-doc-enable nil       ;; disable all doc popups
          lsp-ui-sideline-enable nil  ;; disable sideline bar for less distraction
          treemacs-space-between-root-nodes nil) ;; no spacing in treemacs views

Adding the lsp layer to .spacemacs will automatically use LSP for Clojure formatting, autocompletion and syntax checking.

LSP will override some features provided by CIDER, so you may wish to configure lsp and lsp UI.

Clojure Language Server Protocol LSP

LSP and the REPL

The REPL does the most important and unique part of Clojure (lisp) development, providing immediate feedback on what code expressions do when they are evaluated. REPL

You may decide the REPL provides all the tools you need all by itself. Or if you may decide that some or all of the LSP features are useful.

References

results matching ""

    No results matching ""