summaryrefslogtreecommitdiff
path: root/nvim/lsp/efm.lua
diff options
context:
space:
mode:
authoranand <anand.panchdhari@gmail.com>2025-12-17 15:57:55 +0530
committeranand <anand.panchdhari@gmail.com>2025-12-17 15:57:55 +0530
commitb7ef29a8886a57aadb787807a7c6cf74c1f0ed3a (patch)
tree366a68240fbc9da6b1d567bd6c46d1350ad814de /nvim/lsp/efm.lua
Nixos
Diffstat (limited to 'nvim/lsp/efm.lua')
-rwxr-xr-xnvim/lsp/efm.lua24
1 files changed, 24 insertions, 0 deletions
diff --git a/nvim/lsp/efm.lua b/nvim/lsp/efm.lua
new file mode 100755
index 0000000..4515daf
--- /dev/null
+++ b/nvim/lsp/efm.lua
@@ -0,0 +1,24 @@
+--- @brief
+---
+--- https://github.com/mattn/efm-langserver
+---
+--- General purpose Language Server that can use specified error message format generated from specified command.
+---
+--- Requires at minimum EFM version [v0.0.38](https://github.com/mattn/efm-langserver/releases/tag/v0.0.38) to support
+--- launching the language server on single files.
+---
+--- Note: In order for neovim's built-in language server client to send the appropriate `languageId` to EFM, **you must
+--- specify `filetypes` in your call to `vim.lsp.config`**. Otherwise the server will be launch on the `BufEnter` instead
+--- of the `FileType` autocommand, and the `filetype` variable used to populate the `languageId` will not yet be set.
+---
+--- ```lua
+--- vim.lsp.config('efm', {
+--- filetypes = { 'python','cpp','lua' }
+--- settings = ..., -- You must populate this according to the EFM readme
+--- })
+--- ```
+
+return {
+ cmd = { 'efm-langserver' },
+ root_markers = { '.git' },
+}