aboutsummaryrefslogtreecommitdiffstats
path: root/lua/lspconfig/configs/nomad_lsp.lua
blob: f0a9727fe7d77e046613dc1815960a4c5a09de97 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-- This config is DEPRECATED.
-- Use the configs in `lsp/` instead (requires Nvim 0.11).
--
-- ALL configs in `lua/lspconfig/configs/` will be DELETED.
-- They exist only to support Nvim 0.10 or older.
-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
local util = require 'lspconfig.util'
local bin_name = 'nomad-lsp'

if vim.fn.has 'win32' == 1 then
  bin_name = bin_name .. '.exe'
end

return {
  default_config = {
    cmd = { bin_name },
    filetypes = { 'hcl.nomad', 'nomad' },
    root_dir = util.root_pattern '*.nomad',
  },
  docs = {
    description = [[
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
require('lspconfig').nomad_lsp.setup{ }
```

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.
]],
  },
}