{"repo":"mattn/efm-langserver","free":true,"listed":false,"github":"https://github.com/mattn/efm-langserver","clone":"git clone https://github.com/mattn/efm-langserver.git","description":"General purpose Language Server","language":"Go","stars":1553,"topics":["golang","go","langserver","language-server"],"license":"MIT","category":"dev-tools","readme_excerpt":"efm-langserver A general-purpose language server that adds LSP support to traditional linters and formatters by acting as a proxy. Once configured and set up for your editor of choice, it calls those tools when triggered over LSP, translates their output, and returns the result over LSP. Here's efm-langserver in action: Installation Usage + Configuration - InitializeParams + Example for config.yaml + Example for DidChangeConfiguration notification Client Setup + Configuration for vim-lsp + Configuration for coc.nvim + Configuration for Eglot (Emacs) + Configuration for neovim builtin LSP with nvim-lspconfig + Configuration for Helix + Configuration for VSCode License Author Installation or via Homebrew: Termux (Android) Plain Linux binaries do not work in Termux due to a Go runtime limitation (golang/go#60125). Build with the android target instead: Usage Configuration Configuration can be done with either a config.yaml file, or through a DidChangeConfiguration notification from the client. DidChangeConfiguration can be called any time and will overwrite only provided properties. DidChangeConfiguration only supports V2 configuration and cannot set LogFile . efm-langserver does not include formatters/linters for any languages, you must install these manually, e.g. - lua: LuaFormatter - python: yapf isort - vint for Vim script - markdownlint-cli for Markdown - etc... InitializeParams Because the configuration can be updated on the fly, capabilities might change throughout the l","default_branch":null,"files":null,"tree":[],"storefront":"/r/mattn","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/mattn/efm-langserver/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}