From 0acf602f14bfd6a46166d1f7c9363c558dccd3c6 Mon Sep 17 00:00:00 2001 From: VectorKappa Date: Mon, 7 Apr 2025 23:55:03 +0200 Subject: [PATCH] Nvim Luaification --- .config/nvim/init.lua | 200 +++--------------------------- .config/nvim/lazy-lock.json | 46 +++++++ .config/nvim/lua/plugins/rest.lua | 89 +++++++++++++ .config/nvim/lua/plugins/ux.lua | 150 ++++++++++++++++++++++ 4 files changed, 305 insertions(+), 180 deletions(-) create mode 100644 .config/nvim/lazy-lock.json create mode 100644 .config/nvim/lua/plugins/rest.lua create mode 100644 .config/nvim/lua/plugins/ux.lua diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index 72626c0..c87a024 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -9,183 +9,21 @@ if not (vim.uv or vim.loop).fs_stat(lazypath) then lazypath, }) end -local pluginTable = { - "mattn/webapi-vim", - "scrooloose/syntastic", - "sheerun/vim-polyglot", - {"catppuccin/nvim", lazy=true, name="catppuccin"}, - "simnalamburt/vim-mundo", - "elkowar/yuck.vim", - {"glacambre/firenvim", - lazy = not vim.g.started_by_firenvim, - build = function() - vim.fn["firenvim#install"](0) - end - }, ---'honza/vim-snippets', ---'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } -'vim-scripts/indentLine.vim', -'rhysd/git-messenger.vim', -'rhysd/committia.vim', -'junegunn/vim-easy-align', -"preservim/nerdcommenter", -"mg979/vim-visual-multi", -"airblade/vim-gitgutter", -{ - "folke/twilight.nvim", - opts = { - dimming = { - alpha = 0.25, -- amount of dimming - -- we try to get the foreground from the highlight groups or fallback color - color = { "Normal", "#ffffff" }, - term_bg = "#000000", -- if guibg=NONE, this will be used to calculate text color - inactive = false, -- when true, other windows will be fully dimmed (unless they contain the same buffer) - }, - context = 10, -- amount of lines we will try to show around the current line - treesitter = true, -- use treesitter when available for the filetype - -- treesitter is used to automatically expand the visible text, - -- but you can further control the types of nodes that should always be fully expanded - expand = { -- for treesitter, we we always try to expand to the top-most ancestor with these types - "function", - "method", - "table", - "if_statement", - }, - exclude = {}, -- exclude these filetypes - } -}, -{"folke/zen-mode.nvim", opts={ - window = { - backdrop = 0.95, -- shade the backdrop of the Zen window. Set to 1 to keep the same as Normal - -- height and width can be: - -- * an absolute number of cells when > 1 - -- * a percentage of the width / height of the editor when <= 1 - -- * a function that returns the width or the height - width = 120, -- width of the Zen window - height = 1, -- height of the Zen window - -- by default, no options are changed for the Zen window - -- uncomment any of the options below, or add other vim.wo options you want to apply - options = { - -- signcolumn = "no", -- disable signcolumn - -- number = false, -- disable number column - -- relativenumber = false, -- disable relative numbers - -- cursorline = false, -- disable cursorline - -- cursorcolumn = false, -- disable cursor column - -- foldcolumn = "0", -- disable fold column - -- list = false, -- disable whitespace characters - }, - }, - plugins = { - -- disable some global vim options (vim.o...) - -- comment the lines to not apply the options - options = { - enabled = true, - ruler = false, -- disables the ruler text in the cmd line area - showcmd = false, -- disables the command in the last line of the screen - -- you may turn on/off statusline in zen mode by setting 'laststatus' - -- statusline will be shown only if 'laststatus' == 3 - laststatus = 0, -- turn off the statusline in zen mode - }, - twilight = { enabled = true }, -- enable to start Twilight when zen mode opens - gitsigns = { enabled = false }, -- disables git signs - tmux = { enabled = false }, -- disables the tmux statusline - -- this will change the font size on kitty when in zen mode - -- to make this work, you need to set the following kitty options: - -- - allow_remote_control socket-only - -- - listen_on unix:/tmp/kitty - kitty = { - enabled = true, - font = "+4", -- font size increment - }, - -- this will change the font size on alacritty when in zen mode - -- requires Alacritty Version 0.10.0 or higher - -- uses `alacritty msg` subcommand to change font size - alacritty = { - enabled = false, - font = "14", -- font size - }, - -- this will change the font size on wezterm when in zen mode - -- See alse also the Plugins/Wezterm section in this projects README - wezterm = { - enabled = false, - -- can be either an absolute font size or the number of incremental steps - font = "+4", -- (10% increase per step) - }, - }, -}}, ---'vim-airline/vim-airline' ---'vim-airline/vim-airline-themes' -{'ctrlpvim/ctrlp.vim'}, ---'godlygeek/tabular' ---'easymotion/vim-easymotion' ---'nathanaelkane/vim-indent-guides' ---'xuyuanp/nerdtree-git-plugin' ---'bronson/vim-trailing-whitespace' ---'tpope/vim-dadbod' ---'tpope/vim-eunuch' ---'tpope/vim-speeddating' ---'tpope/vim-repeat' ---'tpope/vim-rhubarb' ---'tpope/vim-unimpaired' ---'tpope/vim-abolish' ---'tpope/vim-obsession' ---'tpope/vim-fugitive' ---'tpope/vim-surround' -{ - 'Exafunction/codeium.vim', - event = 'BufEnter', - config = function () - -- Change '' here to any keycode you like. - vim.keymap.set('i', '', function () return vim.fn['codeium#Accept']() end, { expr = true, silent = true }) - vim.keymap.set('i', '', function() return vim.fn['codeium#CycleCompletions'](1) end, { expr = true, silent = true }) - vim.keymap.set('i', '', function() return vim.fn['codeium#CycleCompletions'](-1) end, { expr = true, silent = true }) - vim.keymap.set('i', '', function() return vim.fn['codeium#Clear']() end, { expr = true, silent = true }) - end -}, ---'lambdalisue/suda.vim' -{'nvim-treesitter/nvim-treesitter', build = ':TSUpdate'}, -'nvim-lua/plenary.nvim', -'nvim-telescope/telescope.nvim', - -'kosayoda/nvim-lightbulb', ---'antoinemadec/FixCursorHold.nvim' -'mhartington/formatter.nvim', -'NvChad/nvim-colorizer.lua', - -{'ms-jpq/chadtree', branch='chad', build='python3 -m chadtree deps'}, -{'ms-jpq/coq_nvim', branch='coq'}, ---" 9000+ Snippets -{'ms-jpq/coq.artifacts', branch='artifacts'}, -{'ms-jpq/coq.thirdparty', branch='3p'}, - -'nvim-tree/nvim-web-devicons', -'projekt0n/circles.nvim', - -'nvim-neotest/nvim-nio', - ---'uga-rosa/translate.nvim' ---'mechatroner/rainbow_csv' ---'christoomey/vim-system-copy' ---'eandrju/cellular-automaton.nvim' - --"neovim/nvim-lspconfig", ---"'ranjithshegde/ccls.nvim' - "mfussenegger/nvim-dap", - "rcarriga/nvim-dap-ui", - "folke/neodev.nvim", - "folke/which-key.nvim", - { "folke/neoconf.nvim", cmd = "Neoconf" }, - {"neovim/nvim-lspconfig", - dependencies = { - "williamboman/mason.nvim", - "williamboman/mason-lspconfig.nvim", - { "folke/neodev.nvim", opts = {} }, - }, }, -} vim.opt.rtp:prepend(lazypath) -require("lazy").setup(pluginTable) - +--require("lazy").setup(pluginTable) +require("lazy").setup({ + spec = { + -- import your plugins + { import = "plugins" }, + }, + -- Configure any other settings here. See the documentation for more details. + -- colorscheme that will be used when installing plugins. + install = { colorscheme = { "catppuccin" } }, + -- automatically check for plugin updates + checker = { enabled = true }, +}) if vim.fn.has('persistent_undo') then - local target_path = '/home/vectorkappa/.nvimundodir' + local target_path = vim.fn.stdpath('data') ..'/.nvimundodir' if not vim.fn.isdirectory(target_path) then vim.fn.mkpath(target_path, { mode = 0700 }) -- Use mkpath for parent creation end @@ -199,10 +37,10 @@ vim.api.nvim_create_autocmd("StdinReadPre", { pattern = "*", command = "let s:std_in=1" }) -vim.api.nvim_create_autocmd("VimEnter", { - pattern = "*", - command = "if argc() == 1 && isdirectory(argv()[0]) && !exists('s:std_in') | execute 'CHADopen' | execute 'cd '.argv()[0] | endif" -}) +--vim.api.nvim_create_autocmd("VimEnter", { +-- pattern = "*", +-- command = "if argc() == 1 && isdirectory(argv()[0]) && !exists('s:std_in') | execute 'Neotree current' | execute 'cd '.argv()[0] | endif" +--}) vim.g.airline_powerline_fonts = 1 @@ -213,7 +51,7 @@ vim.g.airline_powerline_fonts = 1 --vim.g.syntastic_python_checkers = ['bandit', 'python'] --" Keybinds -vim.keymap.set('n', '', ':CHADopen',{noremap=true}) +vim.keymap.set('n', '', ':Neotree toggle',{noremap=true}) vim.keymap.set('n', '', function() vim.lsp.buf.code_action() end,{noremap=true}) vim.keymap.set('n', '', ':ZenMode',{noremap=true}) --nnoremap :CHADopen @@ -331,6 +169,8 @@ vim.api.nvim_create_autocmd('VimEnter', vim.api.nvim_command("COQnow -s") end, }) +-- committia_open_only_vim_starting +vim.g.committia_open_only_vim_starting = 1 --autocmd VimEnter * execute 'COQnow -s' diff --git a/.config/nvim/lazy-lock.json b/.config/nvim/lazy-lock.json new file mode 100644 index 0000000..67b5fc4 --- /dev/null +++ b/.config/nvim/lazy-lock.json @@ -0,0 +1,46 @@ +{ + "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, + "catppuccin": { "branch": "main", "commit": "5b5e3aef9ad7af84f463d17b5479f06b87d5c429" }, + "circles.nvim": { "branch": "main", "commit": "01b9ac1dc6c181f6982eddd57deb1fc7f92d7a70" }, + "codeium.vim": { "branch": "main", "commit": "272c6e2755e8faa90e26bcdcd9fde6b9e61751ea" }, + "committia.vim": { "branch": "master", "commit": "c8c0f255e8090ed90dd9d5dd2e8672994f8e3671" }, + "coq.artifacts": { "branch": "artifacts", "commit": "ef5f21d638ccc456cfa5b8d0ab37093cefe48c8b" }, + "coq.thirdparty": { "branch": "3p", "commit": "6ee3c221c308dca7071387267ac76c9272b184a9" }, + "coq_nvim": { "branch": "coq", "commit": "d83bc18d044cfcd65e91dc49740a353546bc143b" }, + "ctrlp.vim": { "branch": "master", "commit": "475a864e7f01dfc5c93965778417cc66e77f3dcc" }, + "firenvim": { "branch": "master", "commit": "c4ab7d2aeb145cd93db8660cb134f771722f2b5e" }, + "formatter.nvim": { "branch": "master", "commit": "eb89a1f3e079f1b9680bc7293b75fffccb5e1598" }, + "git-messenger.vim": { "branch": "master", "commit": "edc603d4cda7894a743e383e16c638e206d03148" }, + "image.nvim": { "branch": "master", "commit": "2e2d28b7734b5efdfc1219f4da8a46c761587bc2" }, + "indentLine.vim": { "branch": "master", "commit": "988ba5557a9d1ff49d27c22a6b5f405075b3cebb" }, + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" }, + "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, + "neo-tree.nvim": { "branch": "v3.x", "commit": "9b5d67119c46e3262ffe1508fe6d8540b79ad75d" }, + "neoconf.nvim": { "branch": "main", "commit": "750656e4f15d7b66ea9d374d76dcbae160ab9c78" }, + "neodev.nvim": { "branch": "main", "commit": "46aa467dca16cf3dfe27098042402066d2ae242d" }, + "nerdcommenter": { "branch": "master", "commit": "66c07e4083ab02ed2540ac289cc602c70b858c13" }, + "nui.nvim": { "branch": "main", "commit": "8d3bce9764e627b62b07424e0df77f680d47ffdb" }, + "nvim-colorizer.lua": { "branch": "master", "commit": "517df88cf2afb36652830df2c655df2da416a0ae" }, + "nvim-dap": { "branch": "master", "commit": "7aade9e99bef5f0735cf966e715b3ce45515d786" }, + "nvim-dap-ui": { "branch": "master", "commit": "bc81f8d3440aede116f821114547a476b082b319" }, + "nvim-lightbulb": { "branch": "master", "commit": "aa3a8b0f4305b25cfe368f6c9be9923a7c9d0805" }, + "nvim-lspconfig": { "branch": "master", "commit": "442e077e326ac467daf9cd63e72120fb450a850b" }, + "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, + "nvim-treesitter": { "branch": "master", "commit": "0e21ee8df6235511c02bab4a5b391d18e165a58d" }, + "nvim-web-devicons": { "branch": "master", "commit": "57dfa947cc88cdf1baa2c7e13ed31edddd8fb1d1" }, + "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, + "syntastic": { "branch": "master", "commit": "8d5e37c29cf5952fbf300b9230bffe424c61a488" }, + "telescope.nvim": { "branch": "master", "commit": "a4ed82509cecc56df1c7138920a1aeaf246c0ac5" }, + "tree-sitter-c-sharp": { "branch": "master", "commit": "b5eb5742f6a7e9438bee22ce8026d6b927be2cd7" }, + "twilight.nvim": { "branch": "main", "commit": "1584c0b0a979b71fd86b18d302ba84e9aba85b1b" }, + "vim-easy-align": { "branch": "master", "commit": "9815a55dbcd817784458df7a18acacc6f82b1241" }, + "vim-gitgutter": { "branch": "main", "commit": "6620e5fbbe6a28de0bfed081f5bd2767023b7eea" }, + "vim-mundo": { "branch": "master", "commit": "2ceda8c65f7b3f9066820729fc02003a09df91f9" }, + "vim-polyglot": { "branch": "master", "commit": "f5393cfee07aeb666f4d75f9b3a83163862fb094" }, + "vim-visual-multi": { "branch": "master", "commit": "a6975e7c1ee157615bbc80fc25e4392f71c344d4" }, + "webapi-vim": { "branch": "master", "commit": "70c49ada7827d3545a65cbdab04c5c89a3a8464e" }, + "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }, + "yuck.vim": { "branch": "master", "commit": "9b5e0370f70cc30383e1dabd6c215475915fe5c3" }, + "zen-mode.nvim": { "branch": "main", "commit": "863f150ca321b3dd8aa1a2b69b5f411a220e144f" } +} diff --git a/.config/nvim/lua/plugins/rest.lua b/.config/nvim/lua/plugins/rest.lua new file mode 100644 index 0000000..2ab0e56 --- /dev/null +++ b/.config/nvim/lua/plugins/rest.lua @@ -0,0 +1,89 @@ +return { + "mattn/webapi-vim", + "scrooloose/syntastic", + "sheerun/vim-polyglot", + "simnalamburt/vim-mundo", + "elkowar/yuck.vim", + {"glacambre/firenvim", + lazy = not vim.g.started_by_firenvim, + build = function() + vim.fn["firenvim#install"](0) + end + }, +--'honza/vim-snippets', +--'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } +'vim-scripts/indentLine.vim', +'rhysd/git-messenger.vim', +'junegunn/vim-easy-align', +"preservim/nerdcommenter", +"mg979/vim-visual-multi", +"airblade/vim-gitgutter", +--'vim-airline/vim-airline' +--'vim-airline/vim-airline-themes' +{'ctrlpvim/ctrlp.vim'}, +--'godlygeek/tabular' +--'easymotion/vim-easymotion' +--'nathanaelkane/vim-indent-guides' +--'xuyuanp/nerdtree-git-plugin' +--'bronson/vim-trailing-whitespace' +--'tpope/vim-dadbod' +--'tpope/vim-eunuch' +--'tpope/vim-speeddating' +--'tpope/vim-repeat' +--'tpope/vim-rhubarb' +--'tpope/vim-unimpaired' +--'tpope/vim-abolish' +--'tpope/vim-obsession' +--'tpope/vim-fugitive' +--'tpope/vim-surround' +{ + 'Exafunction/codeium.vim', + event = 'BufEnter', + config = function () + -- Change '' here to any keycode you like. + vim.keymap.set('i', '', function () return vim.fn['codeium#Accept']() end, { expr = true, silent = true }) + vim.keymap.set('i', '', function() return vim.fn['codeium#CycleCompletions'](1) end, { expr = true, silent = true }) + vim.keymap.set('i', '', function() return vim.fn['codeium#CycleCompletions'](-1) end, { expr = true, silent = true }) + vim.keymap.set('i', '', function() return vim.fn['codeium#Clear']() end, { expr = true, silent = true }) + end +}, +--'lambdalisue/suda.vim' +{'tree-sitter/tree-sitter-c-sharp'}, +{'nvim-treesitter/nvim-treesitter', build = ':TSUpdate'}, +'nvim-lua/plenary.nvim', +'nvim-telescope/telescope.nvim', + +'kosayoda/nvim-lightbulb', +--'antoinemadec/FixCursorHold.nvim' +'mhartington/formatter.nvim', +'NvChad/nvim-colorizer.lua', + +--{'ms-jpq/chadtree', branch='chad', build='python3 -m chadtree deps'}, +{'ms-jpq/coq_nvim', branch='coq'}, +--" 9000+ Snippets +{'ms-jpq/coq.artifacts', branch='artifacts'}, +{'ms-jpq/coq.thirdparty', branch='3p'}, + +'nvim-tree/nvim-web-devicons', +'projekt0n/circles.nvim', + +'nvim-neotest/nvim-nio', + +--'uga-rosa/translate.nvim' +--'mechatroner/rainbow_csv' +--'christoomey/vim-system-copy' +--'eandrju/cellular-automaton.nvim' + --"neovim/nvim-lspconfig", +--"'ranjithshegde/ccls.nvim' + "mfussenegger/nvim-dap", + "rcarriga/nvim-dap-ui", + "folke/neodev.nvim", + "folke/which-key.nvim", + { "folke/neoconf.nvim", cmd = "Neoconf" }, + {"neovim/nvim-lspconfig", + dependencies = { + "williamboman/mason.nvim", + "williamboman/mason-lspconfig.nvim", + { "folke/neodev.nvim", opts = {} }, + }, }, +} diff --git a/.config/nvim/lua/plugins/ux.lua b/.config/nvim/lua/plugins/ux.lua new file mode 100644 index 0000000..d46ea10 --- /dev/null +++ b/.config/nvim/lua/plugins/ux.lua @@ -0,0 +1,150 @@ +return { + {"nvim-neo-tree/neo-tree.nvim", + branch = "v3.x", + dependencies = { + "nvim-lua/plenary.nvim", + "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended + "MunifTanjim/nui.nvim", + "3rd/image.nvim", -- Optional image support in preview window: See `# Preview Mode` for more information + } + }, + {"catppuccin/nvim", lazy=true, name="catppuccin"}, + { + "folke/twilight.nvim", + opts = { + dimming = { + alpha = 0.25, -- amount of dimming + -- we try to get the foreground from the highlight groups or fallback color + color = { "Normal", "#ffffff" }, + term_bg = "#000000", -- if guibg=NONE, this will be used to calculate text color + inactive = false, -- when true, other windows will be fully dimmed (unless they contain the same buffer) + }, + context = 10, -- amount of lines we will try to show around the current line + treesitter = true, -- use treesitter when available for the filetype + -- treesitter is used to automatically expand the visible text, + -- but you can further control the types of nodes that should always be fully expanded + expand = { -- for treesitter, we we always try to expand to the top-most ancestor with these types + "function", + "method", + "table", + "if_statement", + }, + exclude = {}, -- exclude these filetypes + } +}, +{"folke/zen-mode.nvim", opts={ + window = { + backdrop = 0.95, -- shade the backdrop of the Zen window. Set to 1 to keep the same as Normal + -- height and width can be: + -- * an absolute number of cells when > 1 + -- * a percentage of the width / height of the editor when <= 1 + -- * a function that returns the width or the height + width = 120, -- width of the Zen window + height = 1, -- height of the Zen window + -- by default, no options are changed for the Zen window + -- uncomment any of the options below, or add other vim.wo options you want to apply + options = { + -- signcolumn = "no", -- disable signcolumn + -- number = false, -- disable number column + -- relativenumber = false, -- disable relative numbers + -- cursorline = false, -- disable cursorline + -- cursorcolumn = false, -- disable cursor column + -- foldcolumn = "0", -- disable fold column + -- list = false, -- disable whitespace characters + }, + }, + plugins = { + -- disable some global vim options (vim.o...) + -- comment the lines to not apply the options + options = { + enabled = true, + ruler = false, -- disables the ruler text in the cmd line area + showcmd = false, -- disables the command in the last line of the screen + -- you may turn on/off statusline in zen mode by setting 'laststatus' + -- statusline will be shown only if 'laststatus' == 3 + laststatus = 0, -- turn off the statusline in zen mode + }, + twilight = { enabled = true }, -- enable to start Twilight when zen mode opens + gitsigns = { enabled = false }, -- disables git signs + tmux = { enabled = false }, -- disables the tmux statusline + -- this will change the font size on kitty when in zen mode + -- to make this work, you need to set the following kitty options: + -- - allow_remote_control socket-only + -- - listen_on unix:/tmp/kitty + kitty = { + enabled = true, + font = "+4", -- font size increment + }, + -- this will change the font size on alacritty when in zen mode + -- requires Alacritty Version 0.10.0 or higher + -- uses `alacritty msg` subcommand to change font size + alacritty = { + enabled = false, + font = "14", -- font size + }, + -- this will change the font size on wezterm when in zen mode + -- See alse also the Plugins/Wezterm section in this projects README + wezterm = { + enabled = true, + -- can be either an absolute font size or the number of incremental steps + font = "+4", -- (10% increase per step) + }, + }, +}}, +{ + "akinsho/bufferline.nvim", + event = "VeryLazy", + keys = { + { "bp", "BufferLineTogglePin", desc = "Toggle Pin" }, + { "bP", "BufferLineGroupClose ungrouped", desc = "Delete Non-Pinned Buffers" }, + { "br", "BufferLineCloseRight", desc = "Delete Buffers to the Right" }, + { "bl", "BufferLineCloseLeft", desc = "Delete Buffers to the Left" }, + { "", "BufferLineCyclePrev", desc = "Prev Buffer" }, + { "", "BufferLineCycleNext", desc = "Next Buffer" }, + { "[b", "BufferLineCyclePrev", desc = "Prev Buffer" }, + { "]b", "BufferLineCycleNext", desc = "Next Buffer" }, + { "[B", "BufferLineMovePrev", desc = "Move buffer prev" }, + { "]B", "BufferLineMoveNext", desc = "Move buffer next" }, + }, + opts = { + options = { + -- stylua: ignore +-- close_command = function(n) Snacks.bufdelete(n) end, + -- stylua: ignore +-- right_mouse_command = function(n) Snacks.bufdelete(n) end, + diagnostics = "nvim_lsp", + always_show_bufferline = false, +-- diagnostics_indicator = function(_, _, diag) +-- local icons = LazyVim.config.icons.diagnostics +-- local ret = (diag.error and icons.Error .. diag.error .. " " or "") +-- .. (diag.warning and icons.Warn .. diag.warning or "") +-- return vim.trim(ret) +-- end, + offsets = { + { + filetype = "neo-tree", + text = "Neo-tree", + highlight = "Directory", + text_align = "left", + }, + }, +-- ---@param opts bufferline.IconFetcherOpts +-- get_element_icon = function(opts) +-- return LazyVim.config.icons.ft[opts.filetype] +-- end, + }, + }, + config = function(_, opts) + require("bufferline").setup(opts) + -- Fix bufferline when restoring a session + vim.api.nvim_create_autocmd({ "BufAdd", "BufDelete" }, { + callback = function() + vim.schedule(function() + pcall(nvim_bufferline) + end) + end, + }) + end, + }, + {"rhysd/committia.vim"}, +}