mirror of
https://github.com/neovim/nvim-lspconfig.git
synced 2025-12-24 23:11:00 +01:00
41 lines
1.6 KiB
Lua
41 lines
1.6 KiB
Lua
---@brief
|
|
---
|
|
--- https://github.com/azure/bicep
|
|
--- Bicep language server
|
|
---
|
|
--- Bicep language server can be installed by downloading and extracting a release of bicep-langserver.zip from [Bicep GitHub releases](https://github.com/Azure/bicep/releases).
|
|
---
|
|
--- Bicep language server requires the [dotnet-sdk](https://dotnet.microsoft.com/download) to be installed.
|
|
---
|
|
--- Neovim does not have built-in support for the bicep filetype which is required for lspconfig to automatically launch the language server.
|
|
---
|
|
--- Filetype detection can be added via an autocmd:
|
|
--- ```lua
|
|
--- vim.cmd [[ autocmd BufNewFile,BufRead *.bicep set filetype=bicep ]]
|
|
--- ```
|
|
---
|
|
--- **By default, bicep language server does not have a `cmd` set.** This is because nvim-lspconfig does not make assumptions about your path. You must add the following to your init.vim or init.lua to set `cmd` to the absolute path ($HOME and ~ are not expanded) of the unzipped run script or binary.
|
|
---
|
|
--- ```lua
|
|
--- local bicep_lsp_bin = "/path/to/bicep-langserver/Bicep.LangServer.dll"
|
|
--- vim.lsp.config('bicep', {
|
|
--- cmd = { "dotnet", bicep_lsp_bin };
|
|
--- ...
|
|
--- })
|
|
--- ```
|
|
---
|
|
--- To download the latest release and place in /usr/local/bin/bicep-langserver:
|
|
--- ```bash
|
|
--- (cd $(mktemp -d) \
|
|
--- && curl -fLO https://github.com/Azure/bicep/releases/latest/download/bicep-langserver.zip \
|
|
--- && rm -rf /usr/local/bin/bicep-langserver \
|
|
--- && unzip -d /usr/local/bin/bicep-langserver bicep-langserver.zip)
|
|
--- ```
|
|
|
|
---@type vim.lsp.Config
|
|
return {
|
|
filetypes = { 'bicep', 'bicep-params' },
|
|
root_markers = { '.git' },
|
|
init_options = {},
|
|
}
|