nvim/lua/plugins/ui.lua
2025-04-08 15:20:13 -04:00

160 lines
4.4 KiB
Lua

return {
{
"ficcdaf/ashen.nvim",
-- optional but recommended,
-- pin to the latest stable release:
lazy = false,
priority = 1000,
-- configuration is optional!
opts = {
-- your settings here
},
config = function()
vim.cmd [[ colorscheme ashen ]]
end
},
{
"xero/miasma.nvim",
lazy = false,
priority = 1000,
enabled = false,
},
{
"miikanissi/modus-themes.nvim",
lazy = false,
priority = 1000,
enabled = false,
config = function()
require("modus-themes").setup({
line_nr_column_background = false,
variant = "tinted",
---@param highlight Highlights
---@param color ColorScheme
on_highlights = function(highlight, color)
highlight.WinSeparator = { fg = color.bg_main, bg = color.bg_main }
end,
})
vim.cmd [[ colorscheme modus ]]
end
},
{
'nanozuki/tabby.nvim',
event = 'VimEnter', -- if you want lazy load, see below
dependencies = 'nvim-tree/nvim-web-devicons',
keys = {
{
"<leader>tg",
":$tabnew<CR>",
desc = "Create a new tab"
},
{
"<leader>=",
":tabclose<CR>",
desc = "Close the current tab"
},
{
"<leader>[",
":tabprev<CR>",
desc = "Goto the previous tab"
},
{
"<leader>]",
":tabnext<CR>",
desc = "Goto the next tab"
},
{
"<leader>-",
":BufDel<CR>",
desc = "Close the current buffer"
}
},
config = function()
require("tabby").setup({
preset = "active_wins_at_tail",
option = {
nerdfont = false,
}
})
end
},
{
"akinsho/bufferline.nvim",
version = "*",
lazy = false,
enabled = false,
dependencies = { "nvim-tree/nvim-web-devicons", "datsfilipe/vesper.nvim" },
keys = {
{
"<leader>[",
":BufferLineCyclePrev<CR>",
desc = "Go back a buffer",
},
{
"<leader>]",
":BufferLineCycleNext<CR>",
desc = "Go to the next buffer",
},
{
"<leader>-",
":BufferLineCloseLeft<CR>",
desc = "Bufferline: Close left",
},
{
"<leader>+",
":BufferLineCloseOthers<CR>",
desc = "Bufferline: Close others",
},
{
"<leader>_",
":BufferLineCloseRight<CR>",
desc = "Bufferline: Close right",
},
{
"<leader>=",
":BufDel<CR>",
desc = "Close current buffer",
},
},
opts = {
diagnostics = "nvim_lsp",
separator_style = "thin",
diagnostics_indicator = function(count, level, diagnostics_dict, context)
local icon = level:match "error" and "" or ""
return " " .. icon .. count
end,
},
config = function(_, opts)
require("bufferline").setup {
options = opts,
}
end,
},
{
"ojroques/nvim-bufdel",
opts = {},
},
{
"nvim-neo-tree/neo-tree.nvim",
branch = "v3.x",
enabled = false,
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
"MunifTanjim/nui.nvim",
-- {"3rd/image.nvim", opts = {}}, -- Optional image support in preview window: See `# Preview Mode` for more information
},
lazy = false, -- neo-tree will lazily load itself
---@module "neo-tree"
---@type neotree.Config?
opts = {
},
keys = {
{ "<leader>tt", ":Neotree toggle<CR>" }
}
}
}