diff options
author | awy <awy@awy.one> | 2025-10-14 18:27:29 +0300 |
---|---|---|
committer | awy <awy@awy.one> | 2025-10-14 18:27:29 +0300 |
commit | de009fd679e10d053fdcc10785f91ad5317449ea (patch) | |
tree | 60918a488b579588596cf4d509fde298dccbf15d /.config/nvim/lsp/nomad_lsp.lua | |
parent | 9ea6cf81adb5d6abc59843de1db45913210f9320 (diff) | |
download | hyprdots-de009fd679e10d053fdcc10785f91ad5317449ea.tar.gz |
nvim revamp
Diffstat (limited to '.config/nvim/lsp/nomad_lsp.lua')
-rw-r--r-- | .config/nvim/lsp/nomad_lsp.lua | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/.config/nvim/lsp/nomad_lsp.lua b/.config/nvim/lsp/nomad_lsp.lua new file mode 100644 index 0000000..2388683 --- /dev/null +++ b/.config/nvim/lsp/nomad_lsp.lua @@ -0,0 +1,34 @@ +---@brief +--- +--- https://github.com/juliosueiras/nomad-lsp +--- +--- Written in Go, compilation is needed for `nomad_lsp` to be used. Please see the [original repository](https://github.com/juliosuieras/nomad-lsp). +--- +--- Add the executable to your system or vim PATH and it will be set to go. +--- +--- No configuration option is needed unless you choose not to add `nomad-lsp` executable to the PATH. You should know what you are doing if you choose so. +--- +--- ```lua +--- vim.lsp.enable('nomad_lsp') +--- ``` +--- +--- However, a `hcl.nomad` or `nomad` filetype should be defined. +--- +--- Description of your jobs should be written in `.nomad` files for the LSP client to configure the server's `root_dir` configuration option. + +local util = require 'lspconfig.util' +local bin_name = 'nomad-lsp' + +if vim.fn.has 'win32' == 1 then + bin_name = bin_name .. '.exe' +end + +---@type vim.lsp.Config +return { + cmd = { bin_name }, + filetypes = { 'hcl.nomad', 'nomad' }, + root_dir = function(bufnr, on_dir) + local fname = vim.api.nvim_buf_get_name(bufnr) + on_dir(util.root_pattern '*.nomad'(fname)) + end, +} |