diff --git a/lazy-lock.json b/lazy-lock.json index 4583251..88ae9a4 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -20,7 +20,7 @@ "code_runner.nvim": { "branch": "main", "commit": "dcedccbf969a0f3bc00db446172b4966e83101dd" }, "codeium.vim": { "branch": "main", "commit": "8c01979323b2b480c8bf160d3ff85bd1668baa49" }, "conform.nvim": { "branch": "master", "commit": "d28ccf945374edd9f1c34a82f6c22261dbd8ab98" }, - "dressing.nvim": { "branch": "master", "commit": "c334ac73e031f0dc93d6d91f3658ee75b8be1d3b" }, + "dressing.nvim": { "branch": "master", "commit": "6ef1ca479d37d4ff66f13eed44d08912caff483a" }, "friendly-snippets": { "branch": "main", "commit": "de8fce94985873666bd9712ea3e49ee17aadb1ed" }, "gitsigns.nvim": { "branch": "main", "commit": "4daf7022f1481edf1e8fb9947df13bb07c18e89a" }, "indent-blankline.nvim": { "branch": "master", "commit": "04e44b09ee3ff189c69ab082edac1ef7ae2e256c" }, diff --git a/lua/pcode/plugins/_default.lua b/lua/pcode/plugins/_default.lua index 61428a9..b5b0ad5 100644 --- a/lua/pcode/plugins/_default.lua +++ b/lua/pcode/plugins/_default.lua @@ -1,52 +1,52 @@ _G.idxOf = function(array, value) - for i, v in ipairs(array) do - if v == value then - return i - end - end - return nil + for i, v in ipairs(array) do + if v == value then + return i + end + end + return nil end _G.LAZYGIT_TOGGLE = function() - local ok = pcall(require, "toggleterm") - if not ok then - require("notify")("toggleterm not found!", "error") - return - end - local Terminal = require("toggleterm.terminal").Terminal - local lazygit = Terminal:new({ cmd = "lazygit", hidden = true }) - lazygit:toggle() + local ok = pcall(require, "toggleterm") + if not ok then + require("notify")("toggleterm not found!", "error") + return + end + local Terminal = require("toggleterm.terminal").Terminal + local lazygit = Terminal:new({ cmd = "lazygit", hidden = true }) + lazygit:toggle() end _G.substring = function(text, key) - local index, _ = string.find(text, key) - if index then - return true - else - return false - end + local index, _ = string.find(text, key) + if index then + return true + else + return false + end end _G.all_trim = function(s) - return s:match("^%s*(.-)%s*$") + return s:match("^%s*(.-)%s*$") end _G.current_theme = function() - if pcode.themes then - local theme = "" - for _, value in pairs(pcode.themes or {}) do - theme = value - end - return all_trim(theme) - end - return "" + if pcode.themes then + local theme = "" + for _, value in pairs(pcode.themes or {}) do + theme = value + end + return all_trim(theme) + end + return "" end local function safeRequire(module) - local ok, result = pcall(require, module) - if ok then - return result - end + local ok, result = pcall(require, module) + if ok then + return result + end end safeRequire("pcode.user.options") diff --git a/lua/pcode/plugins/cmp.lua b/lua/pcode/plugins/cmp.lua index 73cd24e..ffcf97e 100644 --- a/lua/pcode/plugins/cmp.lua +++ b/lua/pcode/plugins/cmp.lua @@ -1,121 +1,121 @@ return { - { - "L3MON4D3/LuaSnip", - event = "InsertEnter", - opts = { - history = true, - delete_check_events = "TextChanged", - }, + { + "L3MON4D3/LuaSnip", + event = "InsertEnter", + opts = { + history = true, + delete_check_events = "TextChanged", + }, -- stylua: ignore keys = { { "", function() require("luasnip").jump(1) end, mode = "s" }, { "", function() require("luasnip").jump(-1) end, mode = { "i", "s" } }, }, - }, - { - "hrsh7th/nvim-cmp", - version = false, -- last release is way too old - event = "InsertEnter", - dependencies = { - "hrsh7th/cmp-nvim-lsp", - "hrsh7th/cmp-buffer", - "hrsh7th/cmp-path", - "saadparwaiz1/cmp_luasnip", - "hrsh7th/cmp-nvim-lua", - }, - opts = function() - local cmp = require("cmp") - local luasnip = require("luasnip") + }, + { + "hrsh7th/nvim-cmp", + version = false, -- last release is way too old + event = "InsertEnter", + dependencies = { + "hrsh7th/cmp-nvim-lsp", + "hrsh7th/cmp-buffer", + "hrsh7th/cmp-path", + "saadparwaiz1/cmp_luasnip", + "hrsh7th/cmp-nvim-lua", + }, + opts = function() + local cmp = require("cmp") + local luasnip = require("luasnip") - local check_backspace = function() - local col = vim.fn.col(".") - 1 - return col == 0 or vim.fn.getline("."):sub(col, col):match("%s") - end + local check_backspace = function() + local col = vim.fn.col(".") - 1 + return col == 0 or vim.fn.getline("."):sub(col, col):match("%s") + end - return { - completion = { - completeopt = "menu,menuone,noinsert", - }, - snippet = { - expand = function(args) - require("luasnip").lsp_expand(args.body) - end, - }, - mapping = cmp.mapping.preset.insert({ - [""] = cmp.mapping.scroll_docs(-4), - [""] = cmp.mapping.scroll_docs(4), - [""] = cmp.mapping.complete(), - [""] = cmp.mapping.abort(), - [""] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. - [""] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_next_item() - elseif luasnip.expandable() then - luasnip.expand() - elseif luasnip.expand_or_jumpable() then - luasnip.expand_or_jump() - elseif check_backspace() then - fallback() - else - fallback() - end - end, { - "i", - "s", - }), - [""] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_prev_item() - elseif luasnip.jumpable(-1) then - luasnip.jump(-1) - else - fallback() - end - end, { - "i", - "s", - }), - }), - sources = cmp.config.sources({ - { name = "nvim_lsp" }, - { name = "luasnip" }, - { name = "buffer" }, - { name = "path" }, - { name = "nvim_lua" }, - }), - formatting = { - fields = { "kind", "abbr", "menu" }, - format = function(entry, vim_item) - vim_item.menu = vim.api.nvim_get_mode().mode == "c" and "" or vim_item.kind - vim_item.kind = string.format("%s", require("pcode.user.icons")["kind"][vim_item.kind]) - -- vim_item.menu = ({ - -- nvim_lsp = "(LSP)", - -- luasnip = "(Snippet)", - -- buffer = "(Buffer)", - -- path = "(Path)", - -- codeium = "(Codeium)", - -- })[entry.source.name] - return vim_item - end, - }, - window = { - completion = cmp.config.window.bordered(), - documentation = cmp.config.window.bordered(), - }, - experimental = { - ghost_text = false, - native_menu = false, - }, - } - end, - }, - { - "rafamadriz/friendly-snippets", - event = "InsertEnter", - lazy = true, - config = function() - require("luasnip.loaders.from_vscode").lazy_load() - require("pcode.user.snippets") - end, - }, + return { + completion = { + completeopt = "menu,menuone,noinsert", + }, + snippet = { + expand = function(args) + require("luasnip").lsp_expand(args.body) + end, + }, + mapping = cmp.mapping.preset.insert({ + [""] = cmp.mapping.scroll_docs(-4), + [""] = cmp.mapping.scroll_docs(4), + [""] = cmp.mapping.complete(), + [""] = cmp.mapping.abort(), + [""] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item() + elseif luasnip.expandable() then + luasnip.expand() + elseif luasnip.expand_or_jumpable() then + luasnip.expand_or_jump() + elseif check_backspace() then + fallback() + else + fallback() + end + end, { + "i", + "s", + }), + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_prev_item() + elseif luasnip.jumpable(-1) then + luasnip.jump(-1) + else + fallback() + end + end, { + "i", + "s", + }), + }), + sources = cmp.config.sources({ + { name = "nvim_lsp" }, + { name = "luasnip" }, + { name = "buffer" }, + { name = "path" }, + { name = "nvim_lua" }, + }), + formatting = { + fields = { "kind", "abbr", "menu" }, + format = function(entry, vim_item) + vim_item.menu = vim.api.nvim_get_mode().mode == "c" and "" or vim_item.kind + vim_item.kind = string.format("%s", require("pcode.user.icons")["kind"][vim_item.kind]) + -- vim_item.menu = ({ + -- nvim_lsp = "(LSP)", + -- luasnip = "(Snippet)", + -- buffer = "(Buffer)", + -- path = "(Path)", + -- codeium = "(Codeium)", + -- })[entry.source.name] + return vim_item + end, + }, + window = { + completion = cmp.config.window.bordered(), + documentation = cmp.config.window.bordered(), + }, + experimental = { + ghost_text = false, + native_menu = false, + }, + } + end, + }, + { + "rafamadriz/friendly-snippets", + event = "InsertEnter", + lazy = true, + config = function() + require("luasnip.loaders.from_vscode").lazy_load() + require("pcode.user.snippets") + end, + }, } diff --git a/lua/pcode/user/default.lua b/lua/pcode/user/default.lua index b82ec88..4775521 100644 --- a/lua/pcode/user/default.lua +++ b/lua/pcode/user/default.lua @@ -67,3 +67,4 @@ pcode.themes = { -- activate config transparent_bg pcode.transparent = false pcode.localcode = true +pcode.snippets_path = vim.fn.stdpath("config") .. "/mysnippets" diff --git a/lua/pcode/user/snippets.lua b/lua/pcode/user/snippets.lua index 981fd4c..bdca731 100644 --- a/lua/pcode/user/snippets.lua +++ b/lua/pcode/user/snippets.lua @@ -1,8 +1,8 @@ local status_ok = pcall(require, "luasnip") if not status_ok then - return + return end -local lpath = vim.fn.stdpath("config") .. "/snippets" +local lpath = pcode.snippets_path or vim.fn.stdpath("config") .. "/snippets" require("luasnip.loaders.from_vscode").lazy_load({ paths = lpath }) require("luasnip.loaders.from_vscode").load({ paths = lpath })