---@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 = {}, }