diff options
Diffstat (limited to 'nvim/lua/plugins')
| -rw-r--r-- | nvim/lua/plugins/example.lua | 197 | ||||
| -rw-r--r-- | nvim/lua/plugins/fugitive.lua | 6 | ||||
| -rw-r--r-- | nvim/lua/plugins/lualine.lua | 8 | ||||
| -rw-r--r-- | nvim/lua/plugins/oil.lua | 14 | ||||
| -rw-r--r-- | nvim/lua/plugins/telescope.lua | 2 | ||||
| -rw-r--r-- | nvim/lua/plugins/treesitter.lua | 3 | 
6 files changed, 216 insertions, 14 deletions
| diff --git a/nvim/lua/plugins/example.lua b/nvim/lua/plugins/example.lua new file mode 100644 index 0000000..17f53d6 --- /dev/null +++ b/nvim/lua/plugins/example.lua @@ -0,0 +1,197 @@ +-- since this is just an example spec, don't actually load anything here and return an empty spec +-- stylua: ignore +if true then return {} end + +-- every spec file under the "plugins" directory will be loaded automatically by lazy.nvim +-- +-- In your plugin files, you can: +-- * add extra plugins +-- * disable/enabled LazyVim plugins +-- * override the configuration of LazyVim plugins +return { +  -- add gruvbox +  { "ellisonleao/gruvbox.nvim" }, + +  -- Configure LazyVim to load gruvbox +  { +    "LazyVim/LazyVim", +    opts = { +      colorscheme = "gruvbox", +    }, +  }, + +  -- change trouble config +  { +    "folke/trouble.nvim", +    -- opts will be merged with the parent spec +    opts = { use_diagnostic_signs = true }, +  }, + +  -- disable trouble +  { "folke/trouble.nvim", enabled = false }, + +  -- override nvim-cmp and add cmp-emoji +  { +    "hrsh7th/nvim-cmp", +    dependencies = { "hrsh7th/cmp-emoji" }, +    ---@param opts cmp.ConfigSchema +    opts = function(_, opts) +      table.insert(opts.sources, { name = "emoji" }) +    end, +  }, + +  -- change some telescope options and a keymap to browse plugin files +  { +    "nvim-telescope/telescope.nvim", +    keys = { +      -- add a keymap to browse plugin files +      -- stylua: ignore +      { +        "<leader>fp", +        function() require("telescope.builtin").find_files({ cwd = require("lazy.core.config").options.root }) end, +        desc = "Find Plugin File", +      }, +    }, +    -- change some options +    opts = { +      defaults = { +        layout_strategy = "horizontal", +        layout_config = { prompt_position = "top" }, +        sorting_strategy = "ascending", +        winblend = 0, +      }, +    }, +  }, + +  -- add pyright to lspconfig +  { +    "neovim/nvim-lspconfig", +    ---@class PluginLspOpts +    opts = { +      ---@type lspconfig.options +      servers = { +        -- pyright will be automatically installed with mason and loaded with lspconfig +        pyright = {}, +      }, +    }, +  }, + +  -- add tsserver and setup with typescript.nvim instead of lspconfig +  { +    "neovim/nvim-lspconfig", +    dependencies = { +      "jose-elias-alvarez/typescript.nvim", +      init = function() +        require("lazyvim.util").lsp.on_attach(function(_, buffer) +          -- stylua: ignore +          vim.keymap.set( "n", "<leader>co", "TypescriptOrganizeImports", { buffer = buffer, desc = "Organize Imports" }) +          vim.keymap.set("n", "<leader>cR", "TypescriptRenameFile", { desc = "Rename File", buffer = buffer }) +        end) +      end, +    }, +    ---@class PluginLspOpts +    opts = { +      ---@type lspconfig.options +      servers = { +        -- tsserver will be automatically installed with mason and loaded with lspconfig +        tsserver = {}, +      }, +      -- you can do any additional lsp server setup here +      -- return true if you don't want this server to be setup with lspconfig +      ---@type table<string, fun(server:string, opts:_.lspconfig.options):boolean?> +      setup = { +        -- example to setup with typescript.nvim +        tsserver = function(_, opts) +          require("typescript").setup({ server = opts }) +          return true +        end, +        -- Specify * to use this function as a fallback for any server +        -- ["*"] = function(server, opts) end, +      }, +    }, +  }, + +  -- for typescript, LazyVim also includes extra specs to properly setup lspconfig, +  -- treesitter, mason and typescript.nvim. So instead of the above, you can use: +  { import = "lazyvim.plugins.extras.lang.typescript" }, + +  -- add more treesitter parsers +  { +    "nvim-treesitter/nvim-treesitter", +    opts = { +      ensure_installed = { +        "bash", +        "html", +        "javascript", +        "json", +        "lua", +        "markdown", +        "markdown_inline", +        "python", +        "query", +        "regex", +        "tsx", +        "typescript", +        "vim", +        "yaml", +      }, +    }, +  }, + +  -- since `vim.tbl_deep_extend`, can only merge tables and not lists, the code above +  -- would overwrite `ensure_installed` with the new value. +  -- If you'd rather extend the default config, use the code below instead: +  { +    "nvim-treesitter/nvim-treesitter", +    opts = function(_, opts) +      -- add tsx and treesitter +      vim.list_extend(opts.ensure_installed, { +        "tsx", +        "typescript", +      }) +    end, +  }, + +  -- the opts function can also be used to change the default opts: +  { +    "nvim-lualine/lualine.nvim", +    event = "VeryLazy", +    opts = function(_, opts) +      table.insert(opts.sections.lualine_x, { +        function() +          return "😄" +        end, +      }) +    end, +  }, + +  -- or you can return new options to override all the defaults +  { +    "nvim-lualine/lualine.nvim", +    event = "VeryLazy", +    opts = function() +      return { +        --[[add your custom lualine config here]] +      } +    end, +  }, + +  -- use mini.starter instead of alpha +  { import = "lazyvim.plugins.extras.ui.mini-starter" }, + +  -- add jsonls and schemastore packages, and setup treesitter for json, json5 and jsonc +  { import = "lazyvim.plugins.extras.lang.json" }, + +  -- add any tools you want to have installed below +  { +    "williamboman/mason.nvim", +    opts = { +      ensure_installed = { +        "stylua", +        "shellcheck", +        "shfmt", +        "flake8", +      }, +    }, +  }, +} diff --git a/nvim/lua/plugins/fugitive.lua b/nvim/lua/plugins/fugitive.lua new file mode 100644 index 0000000..d7f59af --- /dev/null +++ b/nvim/lua/plugins/fugitive.lua @@ -0,0 +1,6 @@ +return { +  { +    "tpope/vim-fugitive", +    lazy = false, +  }, +} diff --git a/nvim/lua/plugins/lualine.lua b/nvim/lua/plugins/lualine.lua deleted file mode 100644 index 2356803..0000000 --- a/nvim/lua/plugins/lualine.lua +++ /dev/null @@ -1,8 +0,0 @@ -require('lualine').setup { -  options = { -    icons_enabled = true, -    theme = 'auto', -    section_separators = { left = '', right = '' }, -    component_separators = { left = '', right = '' } -  }, -} diff --git a/nvim/lua/plugins/oil.lua b/nvim/lua/plugins/oil.lua index d24cfbb..39c9212 100644 --- a/nvim/lua/plugins/oil.lua +++ b/nvim/lua/plugins/oil.lua @@ -1 +1,13 @@ -require('oil').setup() +return { +  { +    "stevearc/oil.nvim", +    lazy = false, +    config = function() +      require("oil").setup() +    end, +    keys = { +      { "-", "<cmd>Oil<cr>", desc = "Move up" }, +    }, +  }, +  "benomahony/oil-git.nvim", +} diff --git a/nvim/lua/plugins/telescope.lua b/nvim/lua/plugins/telescope.lua deleted file mode 100644 index f7ab271..0000000 --- a/nvim/lua/plugins/telescope.lua +++ /dev/null @@ -1,2 +0,0 @@ -local telescope = require('telescope') -telescope.load_extension('fzf') diff --git a/nvim/lua/plugins/treesitter.lua b/nvim/lua/plugins/treesitter.lua deleted file mode 100644 index 06536f3..0000000 --- a/nvim/lua/plugins/treesitter.lua +++ /dev/null @@ -1,3 +0,0 @@ -require('nvim-treesitter.configs').setup { -  highlight = { enable = true } -} | 
