-- UI -- These plugins make up a large portion of the UI that I use to interact with nvim return { { -- Colorscheme 'ellisonleao/gruvbox.nvim', name = 'gruvbox', priority = 1000, }, { -- lualine is real light and looks real good 'nvim-lualine/lualine.nvim', opts = function() return require('plugins.configs.UI.lualine') end, config = true, event = 'VeryLazy', dependencies = { 'nvim-web-devicons', 'sherlock5512/lualine-spell-status', -- custom lualine module }, }, { -- neo-tree the superior filetree 'nvim-neo-tree/neo-tree.nvim', version = '^3', init = function() vim.g.neo_tree_remove_legacy_commands = 1 end, opts = function() return require('plugins.configs.UI.neo-tree') end, config = true, -- can't lazy load as the netrw replacement functionality -- requires hooking to be done early in the startup process lazy = false, dependencies = { 'plenary.nvim', 'nvim-web-devicons', 'nui.nvim', }, keys = { { 'n', 'Neotree action=focus source=filesystem position=left toggle=true', desc = 'toggle neotree', }, }, }, { -- Since I commonly use a lot of buffers it is good to be able to see them. 'akinsho/bufferline.nvim', config = true, event = 'VeryLazy', dependencies = { 'nvim-web-devicons', }, }, { -- Alternative configurable UI for a lot of things 'folke/noice.nvim', opts = function() return require('plugins.configs.UI.noice') end, event = 'VeryLazy', config = true, dependencies = { 'nui.nvim', 'nvim-notify', }, }, { 'folke/which-key.nvim', opts = function() return require('plugins.configs.UI.whichkey') end, config = function(_, opts) require('which-key').setup(opts.config) require('which-key').register(opts.default_bindings) end, event = 'VeryLazy', }, { 'lukas-reineke/indent-blankline.nvim', opts = { filetype_exclude = { 'help', 'alpha', 'dashboard', 'neo-tree', 'Trouble', 'lazy', 'mason', 'notify', 'oil_preview', 'vim', }, }, event = 'BufReadPost', }, { 'folke/zen-mode.nvim', opts = function() return require('plugins.configs.UI.zen') end, config = true, cmd = { 'ZenMode' }, keys = { { 'z', function() require('zen-mode').toggle() end, desc = 'zen-mode', }, }, dependencies = 'folke/twilight.nvim', }, }