diff options
author | awy <awy@awy.one> | 2025-10-14 18:27:29 +0300 |
---|---|---|
committer | awy <awy@awy.one> | 2025-10-14 18:27:29 +0300 |
commit | de009fd679e10d053fdcc10785f91ad5317449ea (patch) | |
tree | 60918a488b579588596cf4d509fde298dccbf15d /.config/nvim/lsp/smithy_ls.lua | |
parent | 9ea6cf81adb5d6abc59843de1db45913210f9320 (diff) | |
download | hyprdots-de009fd679e10d053fdcc10785f91ad5317449ea.tar.gz |
nvim revamp
Diffstat (limited to '.config/nvim/lsp/smithy_ls.lua')
-rw-r--r-- | .config/nvim/lsp/smithy_ls.lua | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/.config/nvim/lsp/smithy_ls.lua b/.config/nvim/lsp/smithy_ls.lua new file mode 100644 index 0000000..7118e05 --- /dev/null +++ b/.config/nvim/lsp/smithy_ls.lua @@ -0,0 +1,44 @@ +---@brief +--- +--- https://github.com/awslabs/smithy-language-server +--- +--- "Smithy Language Server", a Language server for the Smithy IDL. +--- +--- smithy-language-server has no docs that say how to actually install it(?), so look at: +--- https://github.com/smithy-lang/smithy-vscode/blob/600cfcf0db65edce85f02e6d50f5fa2b0862bc8d/src/extension.ts#L78 +--- +--- Maven package: https://central.sonatype.com/artifact/software.amazon.smithy/smithy-language-server +--- +--- Installation: +--- 1. Install coursier, or any tool that can install maven packages. +--- ``` +--- brew install coursier +--- ``` +--- 2. The LS is auto-installed and launched by: +--- ``` +--- coursier launch software.amazon.smithy:smithy-language-server:0.7.0 +--- ``` + +---@type vim.lsp.Config +return { + -- pass 0 as the first argument to use STDIN/STDOUT for communication + cmd = { + 'coursier', + 'launch', + 'software.amazon.smithy:smithy-language-server:0.7.0', + '-M', + 'software.amazon.smithy.lsp.Main', + '--', + '0', + }, + filetypes = { 'smithy' }, + root_markers = { 'smithy-build.json', 'build.gradle', 'build.gradle.kts', '.git' }, + message_level = vim.lsp.protocol.MessageType.Log, + init_options = { + statusBarProvider = 'show-message', + isHttpEnabled = true, + compilerOptions = { + snippetAutoIndent = false, + }, + }, +} |