plugins.lua 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. local g = vim.g
  2. local cmd = vim.cmd
  3. cmd [[packadd packer.nvim]]
  4. return require('packer').startup(function(use)
  5. use 'wbthomason/packer.nvim'
  6. use 'lewis6991/impatient.nvim'
  7. -- Visual
  8. use 'joshdick/onedark.vim'
  9. use 'NLKNguyen/papercolor-theme'
  10. use {
  11. 'nvim-treesitter/nvim-treesitter',
  12. run = ':TSUpdate',
  13. }
  14. use {
  15. 'hood/popui.nvim'
  16. }
  17. -- completions
  18. -- Plug 'neovim/nvim-lspconfig'
  19. -- Plug 'hrsh7th/cmp-nvim-lsp'
  20. -- Plug 'hrsh7th/cmp-buffer'
  21. -- Plug 'hrsh7th/cmp-path'
  22. -- Plug 'hrsh7th/cmp-cmdline'
  23. use {
  24. 'terrortylor/nvim-comment',
  25. }
  26. use {
  27. 'hrsh7th/nvim-cmp',
  28. requires = {
  29. 'hrsh7th/vim-vsnip',
  30. 'neovim/nvim-lspconfig',
  31. 'hrsh7th/cmp-nvim-lsp',
  32. 'hrsh7th/cmp-buffer',
  33. 'hrsh7th/cmp-path',
  34. 'hrsh7th/cmp-cmdline',
  35. },
  36. }
  37. -- lsp installer
  38. use {
  39. "williamboman/mason.nvim",
  40. }
  41. use {
  42. "williamboman/mason-lspconfig.nvim",
  43. requires = {
  44. {
  45. 'neovim/nvim-lspconfig',
  46. },
  47. },
  48. }
  49. -- fomratiing
  50. use 'lukas-reineke/lsp-format.nvim'
  51. -- codeactions
  52. use 'kosayoda/nvim-lightbulb'
  53. -- Lua
  54. use "folke/lua-dev.nvim"
  55. use "nvim-lua/plenary.nvim"
  56. use "ii14/neorepl.nvim"
  57. -- Usability
  58. use 'easymotion/vim-easymotion'
  59. use 'tpope/vim-surround' -- braces thing
  60. -- use 'vim-airline/vim-airline' -- info line
  61. use {
  62. 'nvim-lualine/lualine.nvim',
  63. requires = { 'kyazdani42/nvim-web-devicons', opt = true },
  64. }
  65. -- file tree
  66. use {
  67. 'preservim/nerdtree',
  68. }
  69. use 'ryanoasis/vim-devicons'
  70. use 'PhilRunninger/nerdtree-visual-selection'
  71. use {
  72. 'BurntSushi/ripgrep',
  73. {
  74. 'nvim-telescope/telescope-fzf-native.nvim',
  75. run = 'make'
  76. }
  77. }
  78. use {
  79. 'nvim-telescope/telescope.nvim', tag = '0.1.0',
  80. requires = { { 'nvim-lua/plenary.nvim' } },
  81. }
  82. use {
  83. 'nvim-telescope/telescope-ui-select.nvim'
  84. }
  85. use {
  86. "folke/which-key.nvim",
  87. }
  88. use 'famiu/nvim-reload'
  89. -- Git
  90. use {
  91. 'lewis6991/gitsigns.nvim',
  92. tag = 'release' -- To use the latest release (do not use this if you run Neovim nightly or dev builds!)
  93. }
  94. use {
  95. 'tpope/vim-fugitive'
  96. }
  97. use {
  98. 'APZelos/blamer.nvim'
  99. }
  100. -- Javascript/Typescript
  101. use {
  102. 'eslint/eslint',
  103. }
  104. use {
  105. 'prettier/vim-prettier',
  106. run = 'npm install',
  107. ft = { 'javascript', 'typescript', 'css', 'less', 'scss', 'json', 'graphql', 'markdown', 'vue', 'svelte', 'yaml',
  108. 'html' },
  109. }
  110. -- Markdown
  111. use {
  112. 'instant-markdown/vim-instant-markdown',
  113. ft = 'markdown',
  114. run = 'yarn install',
  115. }
  116. -- General
  117. -- tests
  118. use {
  119. 'vim-test/vim-test',
  120. "nvim-neotest/neotest",
  121. requires = {
  122. "nvim-lua/plenary.nvim",
  123. "nvim-treesitter/nvim-treesitter",
  124. },
  125. "antoinemadec/FixCursorHold.nvim",
  126. "nvim-neotest/neotest-vim-test",
  127. "nvim-neotest/neotest-plenary",
  128. "haydenmeade/neotest-jest",
  129. "nvim-neotest/neotest-go",
  130. "nvim-neotest/neotest-python",
  131. }
  132. -- debug
  133. use {
  134. 'mfussenegger/nvim-dap',
  135. 'nvim-telescope/telescope-dap.nvim',
  136. {
  137. "microsoft/vscode-js-debug",
  138. opt = true,
  139. run = "npm install --legacy-peer-deps && npm run compile",
  140. },
  141. {
  142. 'leoluz/nvim-dap-go',
  143. },
  144. {
  145. "mxsdev/nvim-dap-vscode-js",
  146. },
  147. {
  148. "rcarriga/nvim-dap-ui",
  149. },
  150. }
  151. use {
  152. 'akinsho/bufferline.nvim',
  153. tag = "v3.*",
  154. requires = 'nvim-tree/nvim-web-devicons'
  155. }
  156. use {
  157. "windwp/nvim-autopairs",
  158. }
  159. use {
  160. "ianding1/leetcode.vim",
  161. }
  162. -- db
  163. use {
  164. -- 'nanotee/sqls.nvim'
  165. 'tpope/vim-dadbod',
  166. 'kristijanhusak/vim-dadbod-ui',
  167. }
  168. use {
  169. 'wfxr/minimap.vim',
  170. }
  171. end)