dotfiles/dot_config/nvim/lua/plugins/ui.lua

177 lines
4.8 KiB
Lua

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,
},
}