return { -- Theme { "RRethy/nvim-base16", lazy = false, -- make sure to load this during startup if it is your main colorscheme priority = 1000, config = function() require("base16-colorscheme").with_config({ -- TODO: maybe make Telescope borders visible? -- telescope = false, }) vim.cmd.colorscheme "base16-tomorrow-night" local colors = require("base16-colorscheme").colors local blue = colors.base0D -- #81a2be local cyan = colors.base0C -- #8abeb7 local fg = colors.base05 -- #c5c8c6 local green_dark = "#8c9440" local red = colors.base08 -- #cc6666 local yellow = colors.base0A -- #f0c674 -- Cursor vim.api.nvim_command("highlight CursorLineNr guifg=" .. yellow .. " gui=bold") -- Git gutter vim.api.nvim_command("highlight GitSignsAdd guifg=" .. green_dark) vim.api.nvim_command("highlight GitSignsChange guifg=" .. yellow) -- Rainbow delimiters vim.api.nvim_command("highlight RainbowDelimiterBlue guifg=" .. blue) vim.api.nvim_command("highlight RainbowDelimiterCyan guifg=" .. cyan) vim.api.nvim_command("highlight RainbowDelimiterGreen guifg=" .. green_dark) vim.api.nvim_command("highlight RainbowDelimiterOrange guifg=" .. fg) vim.api.nvim_command("highlight RainbowDelimiterRed guifg=" .. red) vim.api.nvim_command("highlight RainbowDelimiterYellow guifg=" .. yellow) end, }, -- Set lualine as statusline { -- See `:help lualine.txt` "nvim-lualine/lualine.nvim", opts = { options = { icons_enabled = false, theme = "base16", component_separators = { left = "", right = "" }, section_separators = { left = "", right = "" }, globalstatus = true, }, sections = { lualine_b = { "branch" }, lualine_x = { "diagnostics", "encoding", "fileformat", "filetype" }, }, }, }, -- Add file type icons to plugins { "nvim-tree/nvim-web-devicons", lazy = true }, -- Dashboard { "nvimdev/dashboard-nvim", event = "VimEnter", opts = { config = { header = { -- " ", -- " ███╗ ██╗███████╗ ██████╗ ██╗ ██╗██╗███╗ ███╗ ", -- " ████╗ ██║██╔════╝██╔═══██╗██║ ██║██║████╗ ████║ ", -- " ██╔██╗ ██║█████╗ ██║ ██║██║ ██║██║██╔████╔██║ ", -- " ██║╚██╗██║██╔══╝ ██║ ██║╚██╗ ██╔╝██║██║╚██╔╝██║ ", -- " ██║ ╚████║███████╗╚██████╔╝ ╚████╔╝ ██║██║ ╚═╝ ██║ ", -- " ╚═╝ ╚═══╝╚══════╝ ╚═════╝ ╚═══╝ ╚═╝╚═╝ ╚═╝ ", -- "____________________________________________________", " . . ", " ';;,. ::' ", " ,:::;,, :ccc, ", " ,::c::,,,,. :cccc, ", " ,cccc:;;;;;. cllll, ", " ,cccc;.;;;;;, cllll; ", " :cccc; .;;;;;;. coooo; ", " ;llll; ,:::::'loooo; ", " ;llll: ':::::loooo: ", " :oooo: .::::llodd: ", " .;ooo: ;cclooo:. ", " .;oc 'coo;. ", " .' .,. ", "____________________________________________________", "", }, shortcut = { { desc = "Neovim master race!" }, }, footer = {}, }, } }, -- Show project errors { "folke/trouble.nvim", cmd = "Trouble", -- defer opts = { mode = "lsp_references", use_diagnostic_signs = true, }, config = function() -- Gutter/fringe icons -- https://github.com/folke/trouble.nvim/issues/52 local signs = { Error = "»", Warn = "»", Hint = "»", Info = "»", Other = "»", } for type, icon in pairs(signs) do local hl = "DiagnosticSign" .. type vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = hl }) end end, }, -- Show project TODOs { "folke/todo-comments.nvim", dependencies = { "nvim-lua/plenary.nvim" }, opts = {}, }, -- Useful plugin to show you pending keybinds. "folke/which-key.nvim", -- Rainbow delimiters { "HiPhish/rainbow-delimiters.nvim", opts = { highlight = { "RainbowDelimiterOrange", -- white "RainbowDelimiterCyan", "RainbowDelimiterYellow", "RainbowDelimiterGreen", "RainbowDelimiterBlue", "RainbowDelimiterOrange", -- white "RainbowDelimiterCyan", "RainbowDelimiterYellow", "RainbowDelimiterGreen", "RainbowDelimiterBlue", "RainbowDelimiterRed", }, }, config = function(_, opts) require("rainbow-delimiters.setup").setup(opts) end, }, }