return { { "vimpostor/vim-tpipeline", config = function() vim.g.tpipeline_restore = 0 vim.g.tpipeline_autoembed = 0 vim.o.laststatus = 0 vim.g.tpipeline_statusline = '%=%l:%c' end }, { "folke/noice.nvim", event = "VeryLazy", opts = { cmdline = { enabled = true, view = "cmdline", }, lsp = { override = { ["vim.lsp.util.convert_input_to_markdown_lines"] = true, ["vim.lsp.util.stylize_markdown"] = true, }, signature = { enabled = false } }, presets = { inc_rename = true, }, }, dependencies = { "MunifTanjim/nui.nvim", } }, { 'kevinhwang91/nvim-ufo', dependencies = 'kevinhwang91/promise-async', config = function() vim.o.foldcolumn = '0' vim.o.foldlevel = 99 vim.o.foldlevelstart = 99 vim.o.foldenable = true vim.keymap.set('n', 'zR', require('ufo').openAllFolds) vim.keymap.set('n', 'zM', require('ufo').closeAllFolds) require('ufo').setup({ fold_virt_text_handler = function(virtText, lnum, endLnum, width, truncate) local newVirtText = {} local suffix = (' %d '):format(endLnum - lnum) local sufWidth = vim.fn.strdisplaywidth(suffix) local targetWidth = width - sufWidth local curWidth = 0 for _, chunk in ipairs(virtText) do local chunkText = chunk[1] local chunkWidth = vim.fn.strdisplaywidth(chunkText) if targetWidth > curWidth + chunkWidth then table.insert(newVirtText, chunk) else chunkText = truncate(chunkText, targetWidth - curWidth) local hlGroup = chunk[2] table.insert(newVirtText, { chunkText, hlGroup }) chunkWidth = vim.fn.strdisplaywidth(chunkText) -- str width returned from truncate() may less than 2nd argument, need padding if curWidth + chunkWidth < targetWidth then suffix = suffix .. (' '):rep(targetWidth - curWidth - chunkWidth) end break end curWidth = curWidth + chunkWidth end table.insert(newVirtText, { suffix, 'MoreMsg' }) return newVirtText end }) end }, { "OXY2DEV/markview.nvim", ft = "markdown", dependencies = { "nvim-treesitter/nvim-treesitter", "nvim-tree/nvim-web-devicons" } }, { 'norcalli/nvim-colorizer.lua', config = function() require 'colorizer'.setup() end }, }