return { { "LazyVim/LazyVim", opts = { colorscheme = "catppuccin-mocha", }, }, { "nvim-lualine/lualine.nvim", event = "VeryLazy", opts = function(_, opts) opts.sections.lualine_b = { { "branch", icon = " " } } end, }, { "RRethy/vim-illuminate", config = function() -- change the highlight style vim.api.nvim_set_hl(0, "IlluminatedWordText", { link = "Visual" }) vim.api.nvim_set_hl(0, "IlluminatedWordRead", { link = "Visual" }) vim.api.nvim_set_hl(0, "IlluminatedWordWrite", { link = "Visual" }) end, }, { "snacks.nvim", opts = { dashboard = { preset = { header = [[ _ _ _ _ | | (_) | | | | _ __ ___ ___ ___| |__ _ _ _ ___| |__ __ _ _ __ __| | | '_ ` _ \ / _ \ / _ \ '_ \| | | | / __| '_ \ / _` | '_ \ / _` | | | | | | | (_) | __/ |_) | | |_| \__ \ |_) | (_| | | | | (_| | |_| |_| |_|\___/ \___|_.__/|_|\__,_|___/_.__/ \__,_|_| |_|\__,_| ]], }, }, }, }, { "NvChad/nvim-colorizer.lua", opts = function(_, opts) opts.filetypes = { "html", "css", "scss", "javascript", "typescript", "typescriptreact", "javascriptreact", "lua", } opts.user_default_options = { mode = "background", tailwind = false, -- Enable tailwind colors } end, }, { "nvimdev/dashboard-nvim", event = "VimEnter", opts = function() vim.api.nvim_set_hl(0, "DashboardHeader", { fg = "#79b8ff" }) vim.api.nvim_set_hl(0, "DashboardIcon", { fg = "#39c5cf" }) vim.api.nvim_set_hl(0, "DashboardKey", { fg = "#39c5cf" }) vim.api.nvim_set_hl(0, "DashboardFooter", { fg = "#959da5" }) local logo = [[ _ _ _ _ | | (_) | | | | _ __ ___ ___ ___| |__ _ _ _ ___| |__ __ _ _ __ __| | | '_ ` _ \ / _ \ / _ \ '_ \| | | | / __| '_ \ / _` | '_ \ / _` | | | | | | | (_) | __/ |_) | | |_| \__ \ |_) | (_| | | | | (_| | |_| |_| |_|\___/ \___|_.__/|_|\__,_|___/_.__/ \__,_|_| |_|\__,_| ]] logo = string.rep("\n", 8) .. logo .. "\n\n" local opts = { theme = "doom", hide = { statusline = false, }, config = { header = vim.split(logo, "\n"), center = { { action = "lua LazyVim.pick()()", desc = " Find file", icon = " ", key = "f", }, { action = "Telescope oldfiles", desc = " Recent files", icon = " ", key = "r", }, { action = 'lua LazyVim.pick("live_grep")()', desc = " Find text", icon = " ", key = "g", }, { action = "lua LazyVim.pick.config_files()()", desc = " Config", icon = " ", key = "c", }, { action = "Telekasten find_notes", desc = " Find notes", icon = " ", key = "n", }, { action = "Lazy", desc = " Lazy", icon = "󰒲 ", key = "l", }, { action = "qa", desc = " Quit", icon = " ", key = "q" }, }, footer = function() local stats = require("lazy").stats() local ms = (math.floor(stats.startuptime * 100 + 0.5) / 100) return { "⚡ Neovim loaded " .. stats.loaded .. "/" .. stats.count .. " plugins in " .. ms .. "ms" } end, }, } for _, button in ipairs(opts.config.center) do button.desc = button.desc .. string.rep(" ", 43 - #button.desc) button.key_format = " %s" end -- close Lazy and re-open when the dashboard is ready if vim.o.filetype == "lazy" then vim.cmd.close() vim.api.nvim_create_autocmd("User", { pattern = "DashboardLoaded", callback = function() require("lazy").show() end, }) end return opts end, }, { "stevearc/oil.nvim", opts = {}, config = function() require("oil").setup({ default_file_explorer = true, delete_to_trash = true, skip_confirm_for_simple_edits = true, view_options = { show_hidden = true, natural_order = true, is_always_hidden = function(name, _) return name == ".." or name == ".git" end, }, win_options = { wrap = true, }, }) end, }, }