Skip to content
This repository has been archived by the owner on Oct 16, 2021. It is now read-only.

Added support for lemminx #178

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@ end
| json | json-language-features (pulled directly from the latest VSCode release) |
| kotlin | kotlin-language-server |
| latex | texlab |
| lemminx | xml language server |
| lua | (sumneko) lua-language-server |
| php | intelephense |
| prisma | prisma-language-server |
Expand Down
1 change: 1 addition & 0 deletions lua/lspinstall/servers.lua
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ local servers = {
["json"] = require'lspinstall/servers/json',
["kotlin"] = require'lspinstall/servers/kotlin',
["latex"] = require'lspinstall/servers/latex',
["lemminx"] = require'lspinstall/servers/lemminx',
["lua"] = require'lspinstall/servers/lua',
["php"] = require'lspinstall/servers/php',
["prismals"] = require'lspinstall/servers/prismals',
Expand Down
32 changes: 32 additions & 0 deletions lua/lspinstall/servers/lemminx.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
-- 1. get the default config from nvim-lspconfig
local config = require"lspinstall/util".extract_config("lemminx")
-- 2. update the cmd. relative paths are allowed, lspinstall automatically adjusts the cmd and cmd_cwd for us!
config.default_config.cmd[1] = "./lemminx"

-- 3. extend the config with an install_script and (optionally) uninstall_script
require'lspinstall/servers'.bash = vim.tbl_extend('error', config, {
-- lspinstall will automatically create/delete the install directory for every server
install_script = [[

os=$(uname -s | tr "[:upper:]" "[:lower:]")

case $os in

darwin)
curl -fLO https://download.jboss.org/jbosstools/vscode/stable/lemminx-binary/0.18.0-400/lemminx-osx-x86_64.zip
unzip lemminx-osx-x86_64.zip
rm -r lemminx-osx-x86_64.zip
mv lemminx-osx-x86_64 lemminx
;;

linux)
curl -fLO https://download.jboss.org/jbosstools/vscode/stable/lemminx-binary/0.18.0-400/lemminx-linux.zip
unzip lemminx-linux.zip
rm -r lemminx-linux.zip
mv lemminx-linux lemminx
;;

esac

]]
})