diff --git a/lua/custom/plugins.lua b/lua/custom/plugins.lua index 8d95572..e581fac 100644 --- a/lua/custom/plugins.lua +++ b/lua/custom/plugins.lua @@ -1,5 +1,21 @@ local overrides = require "custom.configs.overrides" local utils = require "core.utils" +local function get_header() + -- see https://github.com/MaximilianLloyd/ascii.nvim + return { + -- The following is a customized version! + [[ ]], + [[ ]], + [[ █ ████████ █████ ███████ ████ ]], + [[ ███ ██████ █████ █████████ ██████ ]], + [[ █████ ██████████████████████ ████ ███████████████ ]], + [[ ██ ██ █████ █████████████ ████ ████████████████ ]], + [[ ████ ███████████████ █████████ ████ █████ ██████ ████ ]], + [[ ██████ ██████ ███ █████████ ████ █████ █████ ████ ]], + [[ ████████ ███████████████████ ████ ████ █████ ████ ████ ]], + [[ ]], + } +end ---@type NvPluginSpec[] local plugins = { @@ -234,9 +250,9 @@ local plugins = { }, { "akinsho/toggleterm.nvim", - init = function () + init = function() require("core.utils").load_mappings "toggleterm" - end, + end, cmd = "ToggleTerm", opts = { open_mapping = false, @@ -245,6 +261,80 @@ local plugins = { }, }, }, + -- lazy.nvim + { + "folke/noice.nvim", + event = "VeryLazy", + opts = { + -- add any options here + }, + dependencies = { + -- if you lazy-load any plugin below, make sure to add proper `module="..."` entries + "MunifTanjim/nui.nvim", + -- OPTIONAL: + -- `nvim-notify` is only needed, if you want to use the notification view. + -- If not available, we use `mini` as the fallback + "rcarriga/nvim-notify", + }, + config = function() + require("noice").setup { + lsp = { + -- override markdown rendering so that **cmp** and other plugins use **Treesitter** + override = { + ["vim.lsp.util.convert_input_to_markdown_lines"] = true, + ["vim.lsp.util.stylize_markdown"] = true, + ["cmp.entry.get_documentation"] = true, + }, + }, + -- you can enable a preset for easier configuration + presets = { + bottom_search = true, -- use a classic bottom cmdline for search + command_palette = true, -- position the cmdline and popupmenu together + long_message_to_split = true, -- long messages will be sent to a split + inc_rename = false, -- enables an input dialog for inc-rename.nvim + lsp_doc_border = false, -- add a border to hover docs and signature help + }, + } + end, + }, + { + "goolord/alpha-nvim", + lazy = false, + dependencies = { "nvim-tree/nvim-web-devicons" }, + config = function() + local dash = require "alpha.themes.dashboard" + require("alpha").setup(dash.config) + end, + + opts = { + header = get_header(), + }, + }, + { + "stevearc/dressing.nvim", + init = function() + ---@diagnostic disable-next-line: duplicate-set-field + vim.ui.select = function(...) + require("lazy").load { plugins = { "dressing.nvim" } } + return vim.ui.select(...) + end + ---@diagnostic disable-next-line: duplicate-set-field + vim.ui.input = function(...) + require("lazy").load { plugins = { "dressing.nvim" } } + return vim.ui.input(...) + end + end, + }, + { + "chentoast/marks.nvim", +lazy = false, + dependencies = "lewis6991/gitsigns.nvim", + event = "FileType", + opts = { + sign_priority = { lower = 10, upper = 15, builtin = 8, bookmark = 20 }, + bookmark_1 = { sign = "󰉀" }, -- ⚐ ⚑ 󰈻 󰈼 󰈽 󰈾 󰈿 󰉀 + }, + }, } return plugins