summaryrefslogtreecommitdiff
path: root/nvim/lsp/bicep.lua
diff options
context:
space:
mode:
authoranand <anand.panchdhari@gmail.com>2025-12-17 15:57:55 +0530
committeranand <anand.panchdhari@gmail.com>2025-12-17 15:57:55 +0530
commitb7ef29a8886a57aadb787807a7c6cf74c1f0ed3a (patch)
tree366a68240fbc9da6b1d567bd6c46d1350ad814de /nvim/lsp/bicep.lua
Nixos
Diffstat (limited to 'nvim/lsp/bicep.lua')
-rwxr-xr-xnvim/lsp/bicep.lua38
1 files changed, 38 insertions, 0 deletions
diff --git a/nvim/lsp/bicep.lua b/nvim/lsp/bicep.lua
new file mode 100755
index 0000000..fe3ddb1
--- /dev/null
+++ b/nvim/lsp/bicep.lua
@@ -0,0 +1,38 @@
+---@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)
+--- ```
+return {
+ filetypes = { 'bicep', 'bicep-params' },
+ root_markers = { '.git' },
+ init_options = {},
+}