aboutsummaryrefslogtreecommitdiff
path: root/.config/nvim/lsp/efm.lua
diff options
context:
space:
mode:
authorawy <awy@awy.one>2025-10-20 20:55:26 +0300
committerawy <awy@awy.one>2025-10-20 20:55:26 +0300
commit662dafc52b2c8a9426bb2197ab9246a8cda318e4 (patch)
treef9d1f20e3864360bf941fd6bc02848ed77b037a8 /.config/nvim/lsp/efm.lua
parent8131d9f2898b991a2d2c7a2ac601ce9e07cc9c9f (diff)
downloadhyprdots-662dafc52b2c8a9426bb2197ab9246a8cda318e4.tar.gz
nvqw
Diffstat (limited to '.config/nvim/lsp/efm.lua')
-rw-r--r--.config/nvim/lsp/efm.lua25
1 files changed, 25 insertions, 0 deletions
diff --git a/.config/nvim/lsp/efm.lua b/.config/nvim/lsp/efm.lua
new file mode 100644
index 0000000..d421669
--- /dev/null
+++ b/.config/nvim/lsp/efm.lua
@@ -0,0 +1,25 @@
+--- @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
+--- })
+--- ```
+
+---@type vim.lsp.Config
+return {
+ cmd = { 'efm-langserver' },
+ root_markers = { '.git' },
+}