203 lines
5.3 KiB
Lua
203 lines
5.3 KiB
Lua
return {
|
|
-- File explorer
|
|
{
|
|
"nvim-tree/nvim-tree.lua",
|
|
dependencies = { "nvim-tree/nvim-web-devicons" },
|
|
config = function()
|
|
local nvimtree = require("nvim-tree")
|
|
nvimtree.setup {
|
|
on_attach = function(bufnr)
|
|
local api = require("nvim-tree.api")
|
|
local function opts(desc)
|
|
return { desc = "nvim-tree: " .. desc, buffer = bufnr, noremap = true, silent = true, nowait = true }
|
|
end
|
|
api.config.mappings.default_on_attach(bufnr)
|
|
vim.keymap.set("n", "<space>", api.node.open.edit, opts("Open"))
|
|
end,
|
|
renderer = {
|
|
icons = {
|
|
webdev_colors = true,
|
|
git_placement = "before",
|
|
padding = " ",
|
|
symlink_arrow = " ➛ ",
|
|
show = {
|
|
file = true,
|
|
folder = true,
|
|
folder_arrow = true,
|
|
git = true,
|
|
},
|
|
glyphs = {
|
|
default = "",
|
|
symlink = "",
|
|
git = {
|
|
unstaged = "",
|
|
staged = "S",
|
|
unmerged = "",
|
|
renamed = "➜",
|
|
deleted = "",
|
|
untracked = "U",
|
|
ignored = "◌",
|
|
},
|
|
folder = {
|
|
default = "",
|
|
open = "",
|
|
empty = "",
|
|
empty_open = "",
|
|
symlink = "",
|
|
},
|
|
},
|
|
},
|
|
highlight_git = true,
|
|
root_folder_modifier = ":t",
|
|
indent_markers = {
|
|
enable = true,
|
|
},
|
|
},
|
|
hijack_directories = {
|
|
enable = true,
|
|
auto_open = true,
|
|
},
|
|
disable_netrw = true,
|
|
hijack_netrw = true,
|
|
hijack_cursor = false,
|
|
update_cwd = true,
|
|
diagnostics = {
|
|
enable = true,
|
|
icons = {
|
|
hint = "",
|
|
info = "",
|
|
warning = "",
|
|
error = "",
|
|
},
|
|
},
|
|
update_focused_file = {
|
|
enable = true,
|
|
update_cwd = true,
|
|
ignore_list = {},
|
|
},
|
|
filters = {
|
|
dotfiles = false,
|
|
custom = {},
|
|
},
|
|
git = {
|
|
enable = true,
|
|
ignore = true,
|
|
timeout = 500,
|
|
},
|
|
view = {
|
|
width = 35,
|
|
side = "left",
|
|
float = {
|
|
quit_on_focus_loss = true,
|
|
},
|
|
},
|
|
trash = {
|
|
cmd = "trash",
|
|
require_confirm = true,
|
|
},
|
|
actions = {
|
|
open_file = {
|
|
resize_window = true,
|
|
quit_on_open = false,
|
|
window_picker = {
|
|
enable = false,
|
|
},
|
|
},
|
|
},
|
|
}
|
|
end,
|
|
},
|
|
|
|
-- Status line
|
|
{
|
|
"nvim-lualine/lualine.nvim",
|
|
dependencies = { "nvim-tree/nvim-web-devicons", "neanias/everforest-nvim" },
|
|
config = function()
|
|
require('lualine').setup {
|
|
options = {
|
|
theme = 'everforest',
|
|
component_separators = { left = '', right = '' },
|
|
section_separators = { left = '', right = '' },
|
|
}
|
|
}
|
|
end,
|
|
},
|
|
|
|
-- Buffer line
|
|
{
|
|
"akinsho/bufferline.nvim",
|
|
dependencies = { "nvim-tree/nvim-web-devicons" },
|
|
config = function()
|
|
local bufferline = require("bufferline")
|
|
bufferline.setup {
|
|
options = {
|
|
mode = "buffers",
|
|
style_preset = bufferline.style_preset.default,
|
|
themable = true,
|
|
numbers = "none",
|
|
close_command = "bdelete! %d",
|
|
right_mouse_command = "bdelete! %d",
|
|
left_mouse_command = "buffer %d",
|
|
middle_mouse_command = nil,
|
|
indicator = {
|
|
icon = '▎',
|
|
style = 'icon',
|
|
},
|
|
buffer_close_icon = '',
|
|
modified_icon = '● ',
|
|
close_icon = ' ',
|
|
left_trunc_marker = ' ',
|
|
right_trunc_marker = ' ',
|
|
max_name_length = 30,
|
|
max_prefix_length = 30,
|
|
truncate_names = true,
|
|
tab_size = 25,
|
|
diagnostics = "nvim_lsp",
|
|
diagnostics_update_in_insert = false,
|
|
diagnostics_update_on_event = true,
|
|
offsets = {
|
|
{
|
|
filetype = "NvimTree",
|
|
text = "File Explorer",
|
|
text_align = "left",
|
|
separator = true
|
|
}
|
|
},
|
|
color_icons = true,
|
|
show_buffer_icons = true,
|
|
show_buffer_close_icons = true,
|
|
show_close_icon = true,
|
|
show_tab_indicators = true,
|
|
show_duplicate_prefix = true,
|
|
duplicates_across_groups = true,
|
|
persist_buffer_sort = true,
|
|
move_wraps_at_ends = false,
|
|
separator_style = "thin",
|
|
enforce_regular_tabs = true,
|
|
always_show_bufferline = true,
|
|
auto_toggle_bufferline = true,
|
|
hover = {
|
|
enabled = true,
|
|
delay = 200,
|
|
reveal = {'close'}
|
|
},
|
|
sort_by = 'insert_after_current',
|
|
}
|
|
}
|
|
end,
|
|
},
|
|
|
|
-- Dashboard
|
|
{
|
|
"nvimdev/dashboard-nvim",
|
|
event = "VimEnter",
|
|
dependencies = { "nvim-tree/nvim-web-devicons" },
|
|
config = function()
|
|
require('dashboard').setup {}
|
|
end,
|
|
},
|
|
|
|
-- Icons
|
|
{ "nvim-tree/nvim-web-devicons" },
|
|
}
|