diff --git a/lazy-lock.json b/lazy-lock.json index d7973a5..23ef255 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -13,7 +13,6 @@ "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, "code_runner.nvim": { "branch": "main", "commit": "6c5bfe44a6c7523350cd706e6b3b8101166eed99" }, "codeium.nvim": { "branch": "main", "commit": "d3b88eb3aa1de6da33d325c196b8a41da2bcc825" }, - "conform.nvim": { "branch": "master", "commit": "60e6fbddbdf37d7790de07dc7420beefaf650e5e" }, "dracula.nvim": { "branch": "main", "commit": "8d8bddb8814c3e7e62d80dda65a9876f97eb699c" }, "dressing.nvim": { "branch": "master", "commit": "71349f24c6e07b39f33600985843c289ca735308" }, "friendly-snippets": { "branch": "main", "commit": "682157939e57bd6a2c86277dfd4d6fbfce63dbac" }, @@ -23,13 +22,16 @@ "lsp-progress.nvim": { "branch": "main", "commit": "55a04895ea20c365b670051a3128265d43bdfa3d" }, "lualine.nvim": { "branch": "master", "commit": "0a5a66803c7407767b799067986b4dc3036e1983" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "9ae570e206360e47d30b4c35a4550c165f4ea7b7" }, + "mason-null-ls.nvim": { "branch": "main", "commit": "2b8433f76598397fcc97318d410e0c4f7a4bea6a" }, "mason-nvim-dap.nvim": { "branch": "main", "commit": "f5425eb1d0d794f0305d5eeebddabb74614683ff" }, "mason.nvim": { "branch": "main", "commit": "c43eeb5614a09dc17c03a7fb49de2e05de203924" }, "mini.indentscope": { "branch": "main", "commit": "56d42be090e8fcc68eda69cfe55af8c5e562300e" }, "neoscroll.nvim": { "branch": "master", "commit": "a731f66f1d39ec6175fd201c5bf849e54abda99c" }, "neotest": { "branch": "master", "commit": "f30bab1faef13d47f3905e065215c96a42d075ad" }, - "neotest-java": { "branch": "main", "commit": "320f31c71b183f2c584198f33f93542fd0e5a768" }, + "neotest-gtest": { "branch": "main", "commit": "b44c8afc26cea75ffc80617ce07b4e745a56e589" }, "noice.nvim": { "branch": "main", "commit": "03c6a75661e68012e30b0ed81f050358b1e2233c" }, + "none-ls-extras.nvim": { "branch": "main", "commit": "336e84b9e43c0effb735b08798ffac382920053b" }, + "none-ls.nvim": { "branch": "main", "commit": "0d1b3fa2ad0b371b94cb4b9a27ba6e5a1a915c91" }, "nui.nvim": { "branch": "main", "commit": "a0fd35fcbb4cb479366f1dc5f20145fd718a3733" }, "nvim-autopairs": { "branch": "master", "commit": "c15de7e7981f1111642e7e53799e1211d4606cb9" }, "nvim-cmp": { "branch": "main", "commit": "a110e12d0b58eefcf5b771f533fc2cf3050680ac" }, @@ -37,8 +39,6 @@ "nvim-dap": { "branch": "master", "commit": "5ba8ceace596360321cf33fa4b56d9d46e057ce9" }, "nvim-dap-ui": { "branch": "master", "commit": "f7d75cca202b52a60c520ec7b1ec3414d6e77b0f" }, "nvim-dap-virtual-text": { "branch": "master", "commit": "d7c695ea39542f6da94ee4d66176f5d660ab0a77" }, - "nvim-jdtls": { "branch": "master", "commit": "a5c6f38f8151d7b4f5b32c005a95022fa66f4c9d" }, - "nvim-lint": { "branch": "master", "commit": "efc6fc83f0772283e064c53a8f9fb5645bde0bc0" }, "nvim-lspconfig": { "branch": "master", "commit": "0b8165cf95806bc4bb8f745bb0c92021b2ed4b98" }, "nvim-material-icon": { "branch": "main", "commit": "5ad42234d880659dfe9d4ff936c310cd6c5a1610" }, "nvim-navic": { "branch": "master", "commit": "8649f694d3e76ee10c19255dece6411c29206a54" }, @@ -56,7 +56,6 @@ "rainbow-delimiters.nvim": { "branch": "master", "commit": "12b1a1e095d968887a17ef791c2edb78d7595d46" }, "rest.nvim": { "branch": "main", "commit": "91badd46c60df6bd9800c809056af2d80d33da4c" }, "smart-splits.nvim": { "branch": "master", "commit": "66fda3a601a5b4c679656f15eb6ddd613c8d3216" }, - "symbols-outline.nvim": { "branch": "master", "commit": "964c5902243446124417a3a9e9454f5ef032cc36" }, "telescope.nvim": { "branch": "master", "commit": "7bd2f9b72f8449780b79bcf351534e2cd36ec43a" }, "tiny-devicons-auto-colors.nvim": { "branch": "main", "commit": "9be4af5b1bc1f26a11206ed7ce8bf44312e7941a" }, "toggleterm.nvim": { "branch": "main", "commit": "cd55bf6aab3f88c259fa29ea86bbdcb1a325687d" }, diff --git a/lua/custom/default.lua b/lua/custom/default.lua index 7206267..892992d 100644 --- a/lua/custom/default.lua +++ b/lua/custom/default.lua @@ -170,7 +170,7 @@ pcode.active_javascript_config = { pcode.active_php_config = false pcode.active_golang_config = false pcode.active_python_config = false -pcode.active_cpp_config = false +pcode.active_cpp_config = true pcode.active_java_config = { active = false, project = "gradle", -- gradle or maven diff --git a/lua/plugins/cppcfg.lua b/lua/plugins/cppcfg.lua index 5bb7318..561a834 100644 --- a/lua/plugins/cppcfg.lua +++ b/lua/plugins/cppcfg.lua @@ -4,12 +4,36 @@ local M = {} if pcode.active_cpp_config then M = { { - "nvimtools/none-ls.nvim", - optional = true, + "nvim-treesitter/nvim-treesitter", opts = function(_, opts) - local nls = require("null-ls") - opts.sources = opts.sources or {} - table.insert(opts.sources, nls.builtins.formatting.clang_format.with({ filetypes = { "cpp", "c" } })) + opts.ensure_installed = opts.ensure_installed or {} + vim.list_extend(opts.ensure_installed, { "cpp", "c" }) + end, + }, + { + "williamboman/mason-lspconfig.nvim", + opts = function(_, opts) + opts.ensure_installed = opts.ensure_installed or {} + vim.list_extend(opts.ensure_installed, { "clangd" }) + require("user.utils.masoncfg").try_install("clang-format") + end, + }, + { + "jay-babu/mason-nvim-dap.nvim", + event = "VeryLazy", + opts = function(_, opts) + opts.ensure_installed = opts.ensure_installed or {} + vim.list_extend(opts.ensure_installed, { "codelldb" }) + end, + }, + { + "stevearc/conform.nvim", + event = "VeryLazy", + opts = function(_, opts) + local package = "clang-format" + require("user.utils.masoncfg").try_install(package) + opts.formatters_by_ft.cpp = { package } + opts.formatters_by_ft.c = { package } end, }, { diff --git a/lua/plugins/dap.lua b/lua/plugins/dap.lua index b22edb3..a3efdac 100644 --- a/lua/plugins/dap.lua +++ b/lua/plugins/dap.lua @@ -42,38 +42,25 @@ if pcode.nvim_dap then lazy = true, event = "BufRead", dependencies = { "williamboman/mason.nvim", "mfussenegger/nvim-dap" }, - -- enabled = vim.fn.has("win32") == 0, - config = function() - require("user.mason_dap") - -- add diff langue vs filetype - local keymap = { - ["c++"] = "cpp", - ["c#"] = "cs", - ["jsx"] = "javascriptreact", - } + opts = function(_, opts) + local dap_data = pcode.dap_ensure_installed or {} + opts.ensure_installed = opts.ensure_installed or {} + vim.list_extend(opts.ensure_installed, dap_data) + opts.automatic_setup = true + opts.handlers = { + function(config) + -- all sources with no handler get passed here - local mason_reg = require("mason-registry") - local opts = {} - for _, pkg in pairs(mason_reg.get_installed_packages()) do - for _, type in pairs(pkg.spec.categories) do - if type == "DAP" then - for _, ft in pairs(pkg.spec.languages) do - local ftl = string.lower(ft) - local ready = mason_reg.get_package(pkg.spec.name):is_installed() - if ready then - if keymap[ftl] ~= nil then - ftl = keymap[ftl] - local require_ok, conf_opts = pcall(require, "user.dap.settings." .. ftl) - if require_ok then - opts = vim.tbl_deep_extend("force", conf_opts, opts) - end - require("dap").dapters[ftl] = opts - end - end - end - end - end - end + -- Keep original functionality + require("mason-nvim-dap").default_setup(config) + end, + } + return opts + end, + -- enabled = vim.fn.has("win32") == 0, + config = function(_, opts) + require("mason").setup() + require("mason-nvim-dap").setup(opts) end, }, } diff --git a/lua/plugins/themes/_globalvar.lua b/lua/plugins/themes/_globalvar.lua index b6fde8b..c0b8339 100644 --- a/lua/plugins/themes/_globalvar.lua +++ b/lua/plugins/themes/_globalvar.lua @@ -102,11 +102,11 @@ if pcode.active_python_config then end -- run if cpp config true if pcode.active_cpp_config then - table.insert(pcode.treesitter_ensure_installed, "cpp") - table.insert(pcode.treesitter_ensure_installed, "c") - table.insert(pcode.mason_ensure_installed, "clangd") - table.insert(pcode.null_ls_ensure_installed, "clang_format") - table.insert(pcode.dap_ensure_installed, "codelldb") + -- table.insert(pcode.treesitter_ensure_installed, "cpp") + -- table.insert(pcode.treesitter_ensure_installed, "c") + -- table.insert(pcode.mason_ensure_installed, "clangd") + -- table.insert(pcode.null_ls_ensure_installed, "clang_format") + -- table.insert(pcode.dap_ensure_installed, "codelldb") pcode.nvim_dap = true end -- run if java config true diff --git a/lua/user/dap/settings/php.lua b/lua/user/dap/settings/php.lua deleted file mode 100644 index 268f57b..0000000 --- a/lua/user/dap/settings/php.lua +++ /dev/null @@ -1,6 +0,0 @@ -local path = require("mason-registry").get_package("php-debug-adapter"):get_install_path() -return { - type = "executable", - command = "node", - args = { path .. "/extension/out/phpDebug.js" }, -}