aboutsummaryrefslogtreecommitdiff
path: root/.config/nvim/lsp/vhdl_ls.lua
blob: f010e70b640ad9fd98e0bbe41f27b7b97cbea2d4 (plain)
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
---@brief
---
--- Install vhdl_ls from https://github.com/VHDL-LS/rust_hdl and add it to path
---
--- Configuration
---
--- The language server needs to know your library mapping to perform full analysis of the code. For this it uses a configuration file in the TOML format named vhdl_ls.toml.
---
--- vhdl_ls will load configuration files in the following order of priority (first to last):
---
---     A file named .vhdl_ls.toml in the user home folder.
---     A file name from the VHDL_LS_CONFIG environment variable.
---     A file named vhdl_ls.toml in the workspace root.
---
--- Settings in a later files overwrites those from previously loaded files.
---
--- Example vhdl_ls.toml
--- ```
--- # File names are either absolute or relative to the parent folder of the vhdl_ls.toml file
--- [libraries]
--- lib2.files = [
---   'pkg2.vhd',
--- ]
--- lib1.files = [
---   'pkg1.vhd',
---   'tb_ent.vhd'
--- ]
--- ```

---@type vim.lsp.Config
return {
  cmd = { 'vhdl_ls' },
  filetypes = { 'vhd', 'vhdl' },
  root_markers = {
    'vhdl_ls.toml',
    '.vhdl_ls.toml',
  },
}