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. --- .../lspconfig/server_configurations/codeqlls.lua | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 start/lspconfig-0.1.8/lua/lspconfig/server_configurations/codeqlls.lua (limited to 'start/lspconfig-0.1.8/lua/lspconfig/server_configurations/codeqlls.lua') diff --git a/start/lspconfig-0.1.8/lua/lspconfig/server_configurations/codeqlls.lua b/start/lspconfig-0.1.8/lua/lspconfig/server_configurations/codeqlls.lua new file mode 100644 index 0000000..695041e --- /dev/null +++ b/start/lspconfig-0.1.8/lua/lspconfig/server_configurations/codeqlls.lua @@ -0,0 +1,48 @@ +local util = require 'lspconfig.util' + +local workspace_folders = {} + +return { + default_config = { + cmd = { 'codeql', 'execute', 'language-server', '--check-errors', 'ON_CHANGE', '-q' }, + filetypes = { 'ql' }, + root_dir = util.root_pattern 'qlpack.yml', + log_level = vim.lsp.protocol.MessageType.Warning, + before_init = function(initialize_params) + table.insert(workspace_folders, { name = 'workspace', uri = initialize_params['rootUri'] }) + initialize_params['workspaceFolders'] = workspace_folders + end, + settings = { + search_path = vim.empty_dict(), + }, + }, + docs = { + description = [[ +Reference: +https://codeql.github.com/docs/codeql-cli/ + +Binaries: +https://github.com/github/codeql-cli-binaries + ]], + default_config = { + settings = { + search_path = [[list containing all search paths, eg: '~/codeql-home/codeql-repo']], + }, + }, + }, + on_new_config = function(config) + if type(config.settings.search_path) == 'table' and not vim.tbl_isempty(config.settings.search_path) then + local search_path = '--search-path=' + for _, path in ipairs(config.settings.search_path) do + search_path = search_path .. vim.fn.expand(path) .. ':' + table.insert(workspace_folders, { + name = 'workspace', + uri = string.format('file://%s', path), + }) + end + config.cmd = { 'codeql', 'execute', 'language-server', '--check-errors', 'ON_CHANGE', '-q', search_path } + else + config.cmd = { 'codeql', 'execute', 'language-server', '--check-errors', 'ON_CHANGE', '-q' } + end + end, +} -- cgit v1.2.3