return { --[=[ Visuals ]=]-- { "morhetz/gruvbox", -- Color theme lazy = false, priority = 1000, init = function() vim.o.background = "dark" vim.g.gruvbox_contrast_dark = "hard" end, config = function() vim.cmd("colorscheme gruvbox") end, }, --[=[ Quality of life ]=]-- { "nvim-treesitter/nvim-treesitter", -- Advanced syntax parsing build = ":TSUpdate", opts = { ensure_installed = "all", ignore_install = { "liquidsoap", "norg", "tlaplus", "yaml" }, -- Can't compile highlight = { enable = true }, incremental_selection = { enable = true }, textobjects = { enable = true }, }, config = function(_, opts) require("nvim-treesitter.configs").setup(opts) end, }, { "preservim/nerdtree", -- Browse directories dependencies = { "ryanoasis/vim-devicons", }, keys = {{ "", ":NERDTreeToggle" }}, init = function() vim.g.NERDTreeShowHidden = 1 vim.g.NERDTreeWinPos = "right" vim.g.NERDTreeIgnore = { "\\.swp$", "\\~$" } -- Ignore file, ending with .swp and ~ end, }, { "nvim-tree/nvim-web-devicons", -- NERDFont icons }, { "numToStr/Comment.nvim", -- Toggle comments }, { "mbbill/undotree", -- Easily interact with undo history keys = {{ "", ":UndotreeToggle" }}, init = function() vim.g.undotree_WindowLayout = 2 vim.g.undotree_ShortIndicators = 1 -- e.g. using 'd' instead of 'days' to save some space. vim.g.undotree_SetFocusWhenToggle = 1 -- if set, let undotree window get focus after being opened, otherwise focus will stay in current window. vim.g.undotree_TreeNodeShape = '*' vim.g.undotree_DiffCommand = "diff" end, }, { "godlygeek/tabular", -- Line up text to a given character }, { "tpope/vim-eunuch", -- UNIX commands in vim }, { "kylechui/nvim-surround", -- Surround text version = "*", event = "VeryLazy", dependencies = { "nvim-treesitter/nvim-treesitter", "nvim-treesitter/nvim-treesitter-textobjects" }, config = function() require("nvim-surround").setup(opts) end, }, { "windwp/nvim-ts-autotag", -- Auto-add and edit HTML tags }, { "ntpeters/vim-better-whitespace", -- Highlight in red trailing whitespaces }, --[=[ Development-specific ]=]-- { "zivyangll/git-blame.vim", -- Show last commit on line keys = {{ "", ":call gitblame#echo()" }}, }, { "wakatime/vim-wakatime", -- WakaTime tracking lazy = false, }, }