aboutsummaryrefslogtreecommitdiff
path: root/.config/nvim/lua/plugins.lua
blob: fbe003fc63a3e827fe1e3dd627f9bcacc94850f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
-- sourced from https://github.com/arnvald/viml-to-lua/blob/main/lua/plugins.lua

return require('packer').startup(function()
  use 'wbthomason/packer.nvim'

  -- use 'morhetz/gruvbox'
  -- use 'tjdevries/colorbuddy.nvim'
  use 'edkolev/tmuxline.vim'
  use 'romainl/vim-cool'

  -- common
  use 'tpope/vim-fugitive' -- Git commands
  use {
    'nvim-lualine/lualine.nvim',
    requires = { 'kyazdani42/nvim-web-devicons', opt = true }
  }
  use 'andymass/vim-matchup' -- matching parens and more
  use 'lewis6991/gitsigns.nvim'


  use 'RRethy/vim-illuminate'
  -- better quickfix buffer
  use { 'kevinhwang91/nvim-bqf', ft = 'qf',
    config = function()
      -- Adapt fzf's delimiter in nvim-bqf
      require('bqf').setup({
        filter = {
          fzf = {
            extra_opts = { '--bind', 'ctrl-o:toggle-all', '--delimiter', '│' }
          }
        }
      })
    end
  }
  use 'matbme/JABS.nvim' -- buffer switcher


  -- general dev
  use 'neovim/nvim-lspconfig'
  use({
    "glepnir/lspsaga.nvim",
    branch = "main",
    requires = {
      { "nvim-tree/nvim-web-devicons" },
      --Please make sure you install markdown and markdown_inline parser
      { "nvim-treesitter/nvim-treesitter" }
    }
  })

  use 'hrsh7th/nvim-cmp'
  use 'hrsh7th/cmp-buffer'
  use 'hrsh7th/cmp-nvim-lua'
  use 'hrsh7th/cmp-nvim-lsp'
  use 'hrsh7th/cmp-nvim-lsp-signature-help'
  use "hrsh7th/cmp-path"
  use 'hrsh7th/cmp-vsnip'
  use 'hrsh7th/vim-vsnip'

  use { 'nvim-treesitter/nvim-treesitter', run = ':TSUpdate' }
  use 'scrooloose/nerdcommenter' -- commenting shortcuts

  use 'tpope/vim-eunuch'         -- wrappers UNIX commands
  use 'tpope/vim-surround'       -- surround characters shortcuts
  use 'tpope/vim-endwise'        -- wisely add
  use 'tpope/vim-repeat'         -- repeat for plugins
  use 'tpope/vim-vinegar'        -- make explore better
  use {
    'prichrd/netrw.nvim',        -- particles for ^
    config = function()
      require("netrw").setup {
        directory = '', -- Directory icon
        file = '', -- File icon
        use_devicons = true, -- Uses nvim-web-devicons if true, otherwise use the file icon specified above
        mappings = {}, -- Custom key mappings
      }
    end
  }

  use 'kyazdani42/nvim-web-devicons' -- icons when searching
  use { "ibhagwan/fzf-lua",
    -- optional for icon support
    requires = { "nvim-tree/nvim-web-devicons" }
  }


  -- zig
  use 'ziglang/zig.vim'

  -- go
  use 'ray-x/go.nvim'

  -- rust
  use 'rust-lang/rust.vim'
  use 'simrat39/rust-tools.nvim'

  -- ember
  use 'joukevandermaas/vim-ember-hbs'
  use 'joerdav/templ.vim'

  -- debugging
  use 'nvim-lua/plenary.nvim'
  use 'mfussenegger/nvim-dap'

  -- jai
  use 'rluba/jai.vim'

  use 'wsdjeg/vim-fetch'

  use { "johmsalas/text-case.nvim",
    config = function()
      require('textcase').setup {}
    end
  }

  -- integer base conversions
  use {
    "glts/vim-radical",
    requires = {
      { "glts/vim-magnum" },
    }
  }

  use 'tpope/vim-dadbod' -- SQL
  use 'nanotee/sqls.nvim'

  use 'rmagatti/auto-session'
  -- auto close delimiters because lazy
  use 'm4xshen/autoclose.nvim'

  use 'mg979/vim-visual-multi'
end)