From 522d56557b00246286d803425751a4334f3a94a5 Mon Sep 17 00:00:00 2001 From: Michael Smith Date: Mon, 15 Jul 2024 20:05:47 +0100 Subject: Update lspconfig, add indent-blankline indent-blankline is probably old because I've actually been using it for ages, but I have a strict if-it-ain't-broke policy, so I'm not going to update it. lspconfig *was* broke though with nvim 0.10, so now it's fixed. --- .../lua/lspconfig/server_configurations/astro.lua | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 start/lspconfig-0.1.8/lua/lspconfig/server_configurations/astro.lua (limited to 'start/lspconfig-0.1.8/lua/lspconfig/server_configurations/astro.lua') diff --git a/start/lspconfig-0.1.8/lua/lspconfig/server_configurations/astro.lua b/start/lspconfig-0.1.8/lua/lspconfig/server_configurations/astro.lua new file mode 100644 index 0000000..c28dcb6 --- /dev/null +++ b/start/lspconfig-0.1.8/lua/lspconfig/server_configurations/astro.lua @@ -0,0 +1,35 @@ +local util = require 'lspconfig.util' + +local function get_typescript_server_path(root_dir) + local project_root = util.find_node_modules_ancestor(root_dir) + return project_root and (util.path.join(project_root, 'node_modules', 'typescript', 'lib')) or '' +end + +return { + default_config = { + cmd = { 'astro-ls', '--stdio' }, + filetypes = { 'astro' }, + root_dir = util.root_pattern('package.json', 'tsconfig.json', 'jsconfig.json', '.git'), + init_options = { + typescript = {}, + }, + on_new_config = function(new_config, new_root_dir) + if vim.tbl_get(new_config.init_options, 'typescript') and not new_config.init_options.typescript.tsdk then + new_config.init_options.typescript.tsdk = get_typescript_server_path(new_root_dir) + end + end, + }, + docs = { + description = [[ +https://github.com/withastro/language-tools/tree/main/packages/language-server + +`astro-ls` can be installed via `npm`: +```sh +npm install -g @astrojs/language-server +``` +]], + default_config = { + root_dir = [[root_pattern("package.json", "tsconfig.json", "jsconfig.json", ".git")]], + }, + }, +} -- cgit v1.2.3