add kotlin-lsp

This commit is contained in:
Yasuhiro Matsumoto
2025-05-28 23:50:56 +09:00
parent 17cd09f1dc
commit 3eb83e1d74
4 changed files with 55 additions and 0 deletions

View File

@@ -0,0 +1,8 @@
@echo off
setlocal
curl -L -o server.zip "https://download-cdn.jetbrains.com/kotlin-lsp/0.252.17811/kotlin-0.252.17811.zip"
call "%~dp0\run_unzip.cmd" server.zip
del server.zip
curl -L -o kotlin-lsp.cmd "https://raw.githubusercontent.com/Kotlin/kotlin-lsp/refs/heads/main/scripts/kotlin-lsp.cmd"

View File

@@ -0,0 +1,7 @@
#!/bin/sh
set -e
curl -L -o server.zip "https://download-cdn.jetbrains.com/kotlin-lsp/0.252.17811/kotlin-0.252.17811.zip"
unzip server.zip
rm server.zip

View File

@@ -972,6 +972,23 @@
],
"name": "udalov/kotlin-vim"
}
},
{
"command": "kotlin-lsp",
"url": "https://github.com/Kotlin/kotlin-lsp",
"description": "Kotlin Language Server and plugin for Visual Studio Code",
"requires": [
"java"
],
"root_uri_patterns": [
"pom.xml"
],
"vim_plugin": {
"extensions": [
"kt"
],
"name": "udalov/kotlin-vim"
}
}
],
"less": [
@@ -1572,6 +1589,15 @@
}
],
"rust": [
{
"command": "bacon-ls",
"url": "https://github.com/crisidev/bacon-ls",
"description": "A Language Server for Rust using Bacon diagnostics",
"requires": [],
"root_uri_patterns": [
"Cargo.toml"
]
},
{
"command": "rust-analyzer",
"url": "https://github.com/rust-analyzer/rust-analyzer",

14
settings/kotlin-lsp.vim Normal file
View File

@@ -0,0 +1,14 @@
augroup vim_lsp_settings_kotlin_lsp
au!
LspRegisterServer {
\ 'name': 'kotlin-lsp',
\ 'cmd': {server_info->lsp_settings#get('kotlin-lsp', 'cmd', [lsp_settings#exec_path('kotlin-lsp')]+lsp_settings#get('kotlin-lsp', 'args', ["--stdio"]))},
\ 'root_uri':{server_info->lsp_settings#get('kotlin-lsp', 'root_uri', lsp_settings#root_uri('kotlin-lsp'))},
\ 'initialization_options': lsp_settings#get('kotlin-lsp', 'initialization_options', v:null),
\ 'allowlist': lsp_settings#get('kotlin-lsp', 'allowlist', ['kotlin']),
\ 'blocklist': lsp_settings#get('kotlin-lsp', 'blocklist', []),
\ 'config': lsp_settings#get('kotlin-lsp', 'config', lsp_settings#server_config('kotlin-lsp')),
\ 'workspace_config': lsp_settings#get('kotlin-lsp', 'workspace_config', {}),
\ 'semantic_highlight': lsp_settings#get('kotlin-lsp', 'semantic_highlight', {}),
\ }
augroup END