From defdf94215b5a5ee2192db174538454551b5ea5a Mon Sep 17 00:00:00 2001 From: Matthew Leong Date: Thu, 16 Feb 2023 10:16:38 -0800 Subject: [PATCH] feat(config): clean up user lsp config --- lazy-lock.json | 28 ++++++++++++++-------------- lua/cosmic/core/user.lua | 22 +--------------------- lua/cosmic/utils/lsp.lua | 22 +++++++++++++++++++++- 3 files changed, 36 insertions(+), 36 deletions(-) diff --git a/lazy-lock.json b/lazy-lock.json index 00cb9b0..b3cb3a6 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,37 +1,37 @@ { - "Comment.nvim": { "branch": "master", "commit": "418d3117dab2f54c4340ea73e0070dd78fc81753" }, + "Comment.nvim": { "branch": "master", "commit": "6821b3ae27a57f1f3cf8ed030e4a55d70d0c4e43" }, "LuaSnip": { "branch": "master", "commit": "58fbfc627a93281a77f7d161d4ff702e639677b1" }, - "SchemaStore.nvim": { "branch": "main", "commit": "b37874a63ceac681a15b83d5c8e67f58fe571341" }, + "SchemaStore.nvim": { "branch": "main", "commit": "a4798a9fb5fd3ac8e132065597b397cab347d3ca" }, "auto-session": { "branch": "main", "commit": "04ccdac802200ecc363b251cf922b2b022bb515c" }, "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, - "cmp-cmdline": { "branch": "main", "commit": "23c51b2a3c00f6abc4e922dbd7c3b9aca6992063" }, + "cmp-cmdline": { "branch": "main", "commit": "8fcc934a52af96120fe26358985c10c035984b53" }, "cmp-nvim-lsp": { "branch": "main", "commit": "0e6b2ed705ddcff9738ec4ea838141654f12eeef" }, "cmp-nvim-lua": { "branch": "main", "commit": "f3491638d123cfd2c8048aefaf66d246ff250ca6" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp_luasnip": { "branch": "master", "commit": "18095520391186d634a0045dacaa346291096566" }, "cosmic-ui": { "branch": "main", "commit": "c0b14531999f2bfef3d927c4dcd57a1a8fed5ee9" }, "friendly-snippets": { "branch": "main", "commit": "1645e7cd98ed99e766c84ab3cf13a1612c77dcee" }, - "gitsigns.nvim": { "branch": "main", "commit": "a5caac26768af80b7c57b919f77b3fed3d7424d0" }, - "lazy.nvim": { "branch": "main", "commit": "c778b7aa04c484e1536ba219e71f2fd0f05302aa" }, + "gitsigns.nvim": { "branch": "main", "commit": "f388995990aba04cfdc7c3ab870c33e280601109" }, + "lazy.nvim": { "branch": "main", "commit": "8186cc5db31bd5968b5be838a30c4cf1465cb3f9" }, "lsp_lines.nvim": { "branch": "main", "commit": "ec98b45c8280e5ef8c84028d4f38aa447276c002" }, - "lualine.nvim": { "branch": "master", "commit": "0050b308552e45f7128f399886c86afefc3eb988" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "e2b82cf4c68b453eeab5833d90c042ed4b49d0e1" }, - "mason.nvim": { "branch": "main", "commit": "5a39046048da93f6873945129b2f9f12f56ca37d" }, + "lualine.nvim": { "branch": "master", "commit": "e99d733e0213ceb8f548ae6551b04ae32e590c80" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "93e58e100f37ef4fb0f897deeed20599dae9d128" }, + "mason.nvim": { "branch": "main", "commit": "7dd606b0b4981631c804c981b626189e191d49ca" }, "noice.nvim": { "branch": "main", "commit": "d8a1f3056ad713b5d471048f8d029264828e22c0" }, "nui.nvim": { "branch": "main", "commit": "d147222a1300901656f3ebd5b95f91732785a329" }, - "null-ls.nvim": { "branch": "main", "commit": "9d811bb6ed44cf766f4bda8a47fd65fdfbdcaa7d" }, + "null-ls.nvim": { "branch": "main", "commit": "a82aa08c0063843926947f3688b0e61fd71db680" }, "nvim-autopairs": { "branch": "master", "commit": "45ae3122a4c7744db41298b41f9f5a3f092123e6" }, - "nvim-cmp": { "branch": "main", "commit": "aae0c3e4e778ca4be6fabc52e388cbd5b844b7a5" }, + "nvim-cmp": { "branch": "main", "commit": "ea9eaff5739856f3187d228d2c1181ea49fd4697" }, "nvim-colorizer.lua": { "branch": "master", "commit": "36c610a9717cc9ec426a07c8e6bf3b3abcb139d6" }, "nvim-lsp-ts-utils": { "branch": "main", "commit": "0a6a16ef292c9b61eac6dad00d52666c7f84b0e7" }, - "nvim-lspconfig": { "branch": "master", "commit": "1712672e4da3003a0dd9f771d30389600b360f42" }, + "nvim-lspconfig": { "branch": "master", "commit": "649137cbc53a044bffde36294ce3160cb18f32c7" }, "nvim-notify": { "branch": "master", "commit": "bdd647f61a05c9b8a57c83b78341a0690e9c29d7" }, - "nvim-tree.lua": { "branch": "master", "commit": "8b8d457e07d279976a9baac6bbff5aa036afdc5f" }, - "nvim-treesitter": { "branch": "master", "commit": "ad9ae9e7def54fee446c3e186ed0a0d44cca7b90" }, + "nvim-tree.lua": { "branch": "master", "commit": "08a0aa1a3b7411ee0a7887c8818528b1558cef96" }, + "nvim-treesitter": { "branch": "master", "commit": "b23856a88e04e1468e1603d6e0900f2372709e22" }, "nvim-treesitter-refactor": { "branch": "master", "commit": "75f5895cc662d61eb919da8050b7a0124400d589" }, "nvim-ts-autotag": { "branch": "main", "commit": "fdefe46c6807441460f11f11a167a2baf8e4534b" }, "nvim-ts-context-commentstring": { "branch": "main", "commit": "a0f89563ba36b3bacd62cf967b46beb4c2c29e52" }, - "nvim-web-devicons": { "branch": "master", "commit": "bd7a222287c5828cd0607cd0a5605e52f0460074" }, + "nvim-web-devicons": { "branch": "master", "commit": "bb6d4fd1e010300510172b173ab5205d37af084f" }, "plenary.nvim": { "branch": "master", "commit": "9a0d3bf7b832818c042aaf30f692b081ddd58bd9" }, "popup.nvim": { "branch": "master", "commit": "b7404d35d5d3548a82149238289fa71f7f6de4ac" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "580b6c48651cabb63455e97d7e131ed557b8c7e2" }, diff --git a/lua/cosmic/core/user.lua b/lua/cosmic/core/user.lua index 421fa3a..e32433b 100644 --- a/lua/cosmic/core/user.lua +++ b/lua/cosmic/core/user.lua @@ -20,7 +20,7 @@ local default_config = { }, lsp = { format_on_save = true, -- true/false or table of filetypes {'.ts', '.js',} - format_timeout = 3000, + format_timeout = 2000, rename_notification = true, -- table of callbacks pushed via plugins on_attach_mappings = {}, @@ -70,24 +70,4 @@ function config.lsp.add_on_attach_mapping(callback) table.insert(config.lsp.on_attach_mappings, callback) end -function config.lsp.can_client_format(client) - -- formatting enabled by default if server=true - if config.lsp.servers[client.name] == true then - return true - end - - -- check config server settings - if config.lsp.servers[client.name] then - -- default to true if no format flag on server settings is set - if config.lsp.servers[client.name].format == nil then - return true - end - - -- check format flag on server settings - return (config.lsp.servers[client.name].format == true) - end - - return true -end - return config diff --git a/lua/cosmic/utils/lsp.lua b/lua/cosmic/utils/lsp.lua index f3b04f7..5a1c08b 100644 --- a/lua/cosmic/utils/lsp.lua +++ b/lua/cosmic/utils/lsp.lua @@ -1,11 +1,31 @@ local user_config = require('cosmic.core.user') local M = {} +local function can_client_format(client) + -- formatting enabled by default if server=true + if user_config.lsp.servers[client.name] == true or client.name == 'null-ls' then + return true + end + + -- check config server settings + if user_config.lsp.servers[client.name] then + -- default to true if no format flag on server settings is set + if user_config.lsp.servers[client.name].format == nil then + return true + end + + -- check format flag on server settings + return (user_config.lsp.servers[client.name].format == true) + end + + return true +end + -- format current buffer w/user settings function M.format(bufnr) vim.lsp.buf.format({ timeout_ms = user_config.lsp.format_timeout, - filter = user_config.lsp.can_client_format, + filter = can_client_format, bufnr = bufnr or 0, }) end