| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253 |
- return {
- {
- -- <S> to add ", (... Surrounding selected text
- "kylechui/nvim-surround",
- version = "*", -- Use for stability; omit to use `main` branch for the latest features
- event = "VeryLazy",
- config = function()
- require("nvim-surround").setup({
- -- Configuration here, or leave empty to use defaults
- })
- end,
- },
- {
- "rcarriga/nvim-notify",
- opts = {
- -- regular opts
- },
- config = function(_, opts)
- require("notify").setup(vim.tbl_extend("keep", {
- -- other stuff
- background_colour = "#000000",
- render = "wrapped-compact",
- }, opts))
- end,
- },
- {
- "chrisgrieser/nvim-recorder",
- dependencies = "rcarriga/nvim-notify", -- optional
- opts = {}, -- required even with default settings, since it calls `setup()`
- },
- {
- "hedyhli/outline.nvim",
- lazy = true,
- cmd = { "Outline", "OutlineOpen" },
- keys = { -- Example mapping to toggle outline
- { "<leader>o", "<cmd>Outline<CR>", desc = "Toggle outline" },
- },
- opts = {
- -- Your setup opts here
- },
- config = function()
- require("outline").setup({})
- end,
- },
- {
- -- Automatically add brackets by pairs
- "jiangmiao/auto-pairs",
- lazy = false,
- },
- { -- Scroll
- "karb94/neoscroll.nvim",
- config = function()
- require("neoscroll").setup({})
- end,
- },
- -- Swiss Army knife among Neovim plugins
- { "echasnovski/mini.nvim", version = false },
- -- when open go to the closed position
- { "farmergreg/vim-lastplace" },
- -- icons
- {
- "nvim-tree/nvim-web-devicons",
- config = function()
- require("nvim-web-devicons").setup({
- -- your personnal icons can go here (to override)
- -- you can specify color or cterm_color instead of specifying both of them
- -- DevIcon will be appended to `name`
- override = {
- zsh = {
- icon = "",
- color = "#428850",
- cterm_color = "65",
- name = "Zsh",
- },
- },
- -- globally enable different highlight colors per icon (default to true)
- -- if set to false all icons will have the default icon's color
- color_icons = true,
- -- globally enable default icons (default to false)
- -- will get overriden by `get_icons` option
- default = true,
- -- globally enable "strict" selection of icons - icon will be looked up in
- -- different tables, first by filename, and if not found by extension; this
- -- prevents cases when file doesn't have any extension but still gets some icon
- -- because its name happened to match some extension (default to false)
- strict = true,
- -- same as `override` but specifically for overrides by filename
- -- takes effect when `strict` is true
- override_by_filename = {
- [".gitignore"] = {
- icon = "",
- color = "#f1502f",
- name = "Gitignore",
- },
- },
- -- same as `override` but specifically for overrides by extension
- -- takes effect when `strict` is true
- override_by_extension = {
- ["log"] = {
- icon = "",
- color = "#81e043",
- name = "Log",
- },
- },
- -- same as `override` but specifically for operating system
- -- takes effect when `strict` is true
- override_by_operating_system = {
- ["apple"] = {
- icon = "",
- color = "#A2AAAD",
- cterm_color = "248",
- name = "Apple",
- },
- },
- })
- -- code
- end,
- },
- -- Extensible UI for Neovim notifications and LSP progress messages
- {
- "j-hui/fidget.nvim",
- opts = {},
- },
- -- extensible core UI hooks
- {
- "stevearc/dressing.nvim",
- opts = {},
- },
- { "eandrju/cellular-automaton.nvim" }, -- stupid animation ex :CellularAutomaton make_it_rain
- { url = "https://gitlab.com/HiPhish/rainbow-delimiters.nvim" }, -- rainbow delimiters
- {
- "lukas-reineke/indent-blankline.nvim",
- main = "ibl",
- opts = {},
- config = function()
- -- Config for matching colors with rainbow_delimiters
- local highlight = {
- "RainbowRed",
- "RainbowYellow",
- "RainbowBlue",
- "RainbowOrange",
- "RainbowGreen",
- "RainbowViolet",
- "RainbowCyan",
- }
- local hooks = require("ibl.hooks")
- -- create the highlight groups in the highlight setup hook, so they are reset
- -- every time the colorscheme changes
- hooks.register(hooks.type.HIGHLIGHT_SETUP, function()
- vim.api.nvim_set_hl(0, "RainbowRed", { fg = "#E06C75" })
- vim.api.nvim_set_hl(0, "RainbowYellow", { fg = "#E5C07B" })
- vim.api.nvim_set_hl(0, "RainbowBlue", { fg = "#61AFEF" })
- vim.api.nvim_set_hl(0, "RainbowOrange", { fg = "#D19A66" })
- vim.api.nvim_set_hl(0, "RainbowGreen", { fg = "#98C379" })
- vim.api.nvim_set_hl(0, "RainbowViolet", { fg = "#C678DD" })
- vim.api.nvim_set_hl(0, "RainbowCyan", { fg = "#56B6C2" })
- end)
- vim.g.rainbow_delimiters = { highlight = highlight }
- require("ibl").setup({
- scope = { highlight = highlight },
- exclude = {
- filetypes = {
- "lspinfo",
- "packer",
- "checkhealth",
- "help",
- "man",
- "dashboard",
- "",
- },
- -- filetypes = vim.g.exclude_filetypes,
- },
- })
- hooks.register(hooks.type.SCOPE_HIGHLIGHT, hooks.builtin.scope_highlight_from_extmark)
- end,
- },
- {
- -- Scrollbar
- "lewis6991/satellite.nvim",
- config = function()
- require("satellite").setup({
- current_only = false,
- winblend = 50,
- zindex = 40,
- excluded_filetypes = {},
- width = 2,
- handlers = {
- cursor = {
- enable = true,
- -- Supports any number of symbols
- symbols = { "⎺", "⎻", "⎼", "⎽" },
- -- symbols = { '⎻', '⎼' }
- -- Highlights:
- -- - SatelliteCursor (default links to NonText
- },
- search = {
- enable = true,
- -- Highlights:
- -- - SatelliteSearch (default links to Search)
- -- - SatelliteSearchCurrent (default links to SearchCurrent)
- },
- diagnostic = {
- enable = true,
- signs = { "-", "=", "≡" },
- min_severity = vim.diagnostic.severity.HINT,
- -- Highlights:
- -- - SatelliteDiagnosticError (default links to DiagnosticError)
- -- - SatelliteDiagnosticWarn (default links to DiagnosticWarn)
- -- - SatelliteDiagnosticInfo (default links to DiagnosticInfo)
- -- - SatelliteDiagnosticHint (default links to DiagnosticHint)
- },
- gitsigns = {
- enable = true,
- signs = { -- can only be a single character (multibyte is okay)
- add = "│",
- change = "│",
- delete = "-",
- },
- -- Highlights:
- -- SatelliteGitSignsAdd (default links to GitSignsAdd)
- -- SatelliteGitSignsChange (default links to GitSignsChange)
- -- SatelliteGitSignsDelete (default links to GitSignsDelete)
- },
- marks = {
- enable = true,
- show_builtins = false, -- shows the builtin marks like [ ] < >
- key = "m",
- -- Highlights:
- -- SatelliteMark (default links to Normal)
- },
- quickfix = {
- signs = { "-", "=", "≡" },
- -- Highlights:
- -- SatelliteQuickfix (default links to WarningMsg)
- },
- },
- })
- end,
- },
- -- quickly switch between frequently used files ";"
- {
- "jackMort/tide.nvim",
- opts = {
- -- optional configuration
- },
- dependencies = {
- "MunifTanjim/nui.nvim",
- "nvim-tree/nvim-web-devicons",
- },
- },
- }
|