203 lines
		
	
	
	
		
			6.6 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			203 lines
		
	
	
	
		
			6.6 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
-- You can also add or configure plugins by creating files in this `plugins/` folder
 | 
						|
-- Here are some examples:
 | 
						|
 | 
						|
---@type LazySpec
 | 
						|
return {
 | 
						|
  -- Customize alpha options
 | 
						|
  {
 | 
						|
    "goolord/alpha-nvim",
 | 
						|
    opts = function(_, opts)
 | 
						|
      -- customize the dashboard header
 | 
						|
      opts.section.header.val = {
 | 
						|
        "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⣤⣶⣶⣾⣿⣿⣿⣿⣷⣶⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣶⣾⣿⣿⣿⣿⣷⣶⣶⣤⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀",
 | 
						|
        "⠀⠀⠀⠀⠀⢀⣠⡴⠾⠟⠋⠉⠉⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠉⠉⠙⠛⠷⢦⣄⡀⠀⠀⠀⠀⠀",
 | 
						|
        "⠀⠀⠀⠀⠘⠋⠁⠀⠀⢀⣀⣤⣶⣖⣒⣒⡲⠶⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⠶⢖⣒⣒⣲⣶⣤⣀⡀⠀⠀⠈⠙⠂⠀⠀⠀⠀",
 | 
						|
        "⠀⠀⠀⠀⠀⠀⠀⣠⢖⣫⣷⣿⣿⣿⣿⣿⣿⣶⣤⡙⢦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡴⢋⣤⣾⣿⣿⣿⣿⣿⣿⣾⣝⡲⣄⠀⠀⠀⠀⠀⠀⠀",
 | 
						|
        "⠀⠀⠀⣄⣀⣠⢿⣿⣿⣿⣿⣿⣿⣿⡿⠟⠻⢿⣿⣿⣦⣳⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣟⣴⣿⣿⡿⠟⠻⢿⣿⣿⣿⣿⣿⣿⣿⡻⣄⣀⣤⠀⠀⠀",
 | 
						|
        "⠀⠀⠀⠈⠟⣿⣿⣿⡿⢻⣿⣿⣿⠃⠀⠀⠀⠀⠙⣿⣿⣿⠓⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠚⣿⣿⣿⠋⠀⠀⠀⠀⠘⣿⣿⣿⡟⢿⣿⣿⣟⠻⠁⠀⠀⠀",
 | 
						|
        "⠤⣤⣶⣶⣿⣿⣿⡟⠀⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⢻⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⡏⠀⠀⠀⠀⠀⠀⣹⣿⣿⣷⠈⢻⣿⣿⣿⣶⣦⣤⠤",
 | 
						|
        "⠀⠀⠀⠀⠀⢻⣟⠀⠀⣿⣿⣿⣿⡀⠀⠀⠀⠀⢀⣿⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢻⣿⣿⡀⠀⠀⠀⠀⢀⣿⣿⣿⣿⠀⠀⣿⡟⠀⠀⠀⠀⠀",
 | 
						|
        "⠀⠀⠀⠀⠀⠀⠻⣆⠀⢹⣿⠟⢿⣿⣦⣤⣤⣴⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⡿⢷⣤⣤⣤⣴⣿⣿⣿⣿⡇⠀⣰⠟⠀⠀⠀⠀⠀⠀",
 | 
						|
        "⠀⠀⠀⠀⠀⠀⠀⠙⠂⠀⠙⢀⣀⣿⣿⣿⣿⣿⣿⣿⠟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠻⠁⠀⣻⣿⣿⣿⣿⣿⣿⠏⠀⠘⠃⠀⠀⠀⠀⠀⠀⠀",
 | 
						|
        "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡈⠻⠿⣿⣿⣿⡿⠟⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠻⢿⣿⣿⣿⠿⠛⢁⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀",
 | 
						|
        "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠚⠛⣶⣦⣤⣤⣤⡤⠆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠰⢤⣤⣤⣤⣶⣾⠛⠓⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀",
 | 
						|
      }
 | 
						|
      return opts
 | 
						|
    end,
 | 
						|
  },
 | 
						|
 | 
						|
  {
 | 
						|
    "catppuccin/nvim",
 | 
						|
    name = "catppuccin",
 | 
						|
    priority = 1000,
 | 
						|
    ---@type CatppuccinOptions
 | 
						|
    opts = {
 | 
						|
      integrations = {
 | 
						|
        aerial = true,
 | 
						|
        alpha = true,
 | 
						|
        cmp = true,
 | 
						|
        dap = true,
 | 
						|
        dap_ui = true,
 | 
						|
        gitsigns = true,
 | 
						|
        illuminate = true,
 | 
						|
        indent_blankline = true,
 | 
						|
        markdown = true,
 | 
						|
        mason = true,
 | 
						|
        native_lsp = { enabled = true },
 | 
						|
        neotree = true,
 | 
						|
        notify = true,
 | 
						|
        semantic_tokens = true,
 | 
						|
        symbols_outline = true,
 | 
						|
        telescope = true,
 | 
						|
        treesitter = true,
 | 
						|
        ts_rainbow = false,
 | 
						|
        ufo = true,
 | 
						|
        which_key = true,
 | 
						|
        window_picker = true,
 | 
						|
        colorful_winsep = { enabled = true, color = "lavender" },
 | 
						|
      },
 | 
						|
    },
 | 
						|
    specs = {
 | 
						|
      {
 | 
						|
        "akinsho/bufferline.nvim",
 | 
						|
        optional = true,
 | 
						|
        opts = function(_, opts)
 | 
						|
          return require("astrocore").extend_tbl(opts, {
 | 
						|
            highlights = require("catppuccin.groups.integrations.bufferline").get(),
 | 
						|
          })
 | 
						|
        end,
 | 
						|
      },
 | 
						|
      {
 | 
						|
        "nvim-telescope/telescope.nvim",
 | 
						|
        optional = true,
 | 
						|
        opts = {
 | 
						|
          highlight = {
 | 
						|
            enable = true,
 | 
						|
            additional_vim_regex_highlighting = false,
 | 
						|
          },
 | 
						|
        },
 | 
						|
      },
 | 
						|
    },
 | 
						|
  },
 | 
						|
 | 
						|
  -- Makes most if not all groups have a transparent background.
 | 
						|
  {
 | 
						|
    "xiyaowong/transparent.nvim",
 | 
						|
    opts = function(_, opts)
 | 
						|
      local transparent = require("transparent")
 | 
						|
 | 
						|
      opts.groups = {
 | 
						|
        "Comment",
 | 
						|
        "Conditional",
 | 
						|
        "Constant",
 | 
						|
        "CursorLine",
 | 
						|
        "CursorLineNr",
 | 
						|
        "EndOfBuffer",
 | 
						|
        "Function",
 | 
						|
        "Identifier",
 | 
						|
        "LineNr",
 | 
						|
        "NonText",
 | 
						|
        "Normal",
 | 
						|
        "NormalNC",
 | 
						|
        "Operator",
 | 
						|
        "PreProc",
 | 
						|
        "Repeat",
 | 
						|
        "SignColumn",
 | 
						|
        "Special",
 | 
						|
        "Statement",
 | 
						|
        -- "StatusLine",
 | 
						|
        -- "StatusLineNC",
 | 
						|
        "String",
 | 
						|
        "Structure",
 | 
						|
        "Todo",
 | 
						|
        "Type",
 | 
						|
        "Underlined",
 | 
						|
      }
 | 
						|
 | 
						|
      opts.extra_groups = {
 | 
						|
        "CursorColumn",
 | 
						|
        "CursorLineFold",
 | 
						|
        "CursorLineSign",
 | 
						|
        "DiagnosticSignError",
 | 
						|
        "DiagnosticSignHint",
 | 
						|
        "DiagnosticSignInfo",
 | 
						|
        "DiagnosticSignOk",
 | 
						|
        "DiagnosticSignWarn",
 | 
						|
        "FloatBorder",
 | 
						|
        "FoldColumn",
 | 
						|
        "Folded",
 | 
						|
        "GitSignsAdd",
 | 
						|
        "GitSignsChange",
 | 
						|
        "GitSignsDelete",
 | 
						|
        "LineNr",
 | 
						|
        "LineNrAbove",
 | 
						|
        "LineNrBelow",
 | 
						|
        "LineNrBelow",
 | 
						|
        "NvimTreeWindowPicker",
 | 
						|
        "TabLine",
 | 
						|
        "TabLineFill",
 | 
						|
        "VertSplit",
 | 
						|
        "WinBar",
 | 
						|
        "WinBarNC",
 | 
						|
        "WinSeparator",
 | 
						|
      }
 | 
						|
 | 
						|
      transparent.clear_prefix("BufferLine")
 | 
						|
      transparent.clear_prefix("NeoTree")
 | 
						|
    end,
 | 
						|
  },
 | 
						|
 | 
						|
  -- Adds highlighting and lsp features for embedded code in documents.
 | 
						|
  {
 | 
						|
    "jmbuhr/otter.nvim",
 | 
						|
    dependencies = {
 | 
						|
      "hrsh7th/nvim-cmp",
 | 
						|
      "neovim/nvim-lspconfig",
 | 
						|
      "nvim-treesitter/nvim-treesitter",
 | 
						|
    },
 | 
						|
  },
 | 
						|
 | 
						|
  -- Adds highlighting and custom commands for ledger files
 | 
						|
  {
 | 
						|
    "ledger/vim-ledger",
 | 
						|
  },
 | 
						|
 | 
						|
  -- Better UI hooks
 | 
						|
  {
 | 
						|
    "stevearc/dressing.nvim",
 | 
						|
  },
 | 
						|
 | 
						|
  -- Add Ollama support in-editor
 | 
						|
  {
 | 
						|
    "nomnivore/ollama.nvim",
 | 
						|
    dependencies = {
 | 
						|
      "nvim-lua/plenary.nvim",
 | 
						|
    },
 | 
						|
 | 
						|
    -- All the user commands added by the plugin
 | 
						|
    cmd = { "Ollama", "OllamaModel", "OllamaServe", "OllamaServeStop" },
 | 
						|
 | 
						|
    keys = {
 | 
						|
      -- Sample keybind for prompt menu. Note that the <c-u> is important for selections to work properly.
 | 
						|
      {
 | 
						|
        "<leader>oo",
 | 
						|
        ":<c-u>lua require('ollama').prompt()<cr>",
 | 
						|
        desc = "ollama prompt",
 | 
						|
        mode = { "n", "v" },
 | 
						|
      },
 | 
						|
 | 
						|
      -- Sample keybind for direct prompting. Note that the <c-u> is important for selections to work properly.
 | 
						|
      {
 | 
						|
        "<leader>oG",
 | 
						|
        ":<c-u>lua require('ollama').prompt('Generate_Code')<cr>",
 | 
						|
        desc = "ollama Generate Code",
 | 
						|
        mode = { "n", "v" },
 | 
						|
      },
 | 
						|
    },
 | 
						|
 | 
						|
    ---@type Ollama.Config
 | 
						|
    opts = {
 | 
						|
      -- your configuration overrides
 | 
						|
    },
 | 
						|
  },
 | 
						|
}
 |