|
@@ -14,8 +14,6 @@ if not packer_ok then
|
|
|
end
|
|
|
|
|
|
packer.init {
|
|
|
- -- compile_path = vim.fn.stdpath('data')..'/site/pack/loader/start/packer.nvim/plugin/packer_compiled.vim',
|
|
|
- compile_path = require("packer.util").join_paths(vim.fn.stdpath "config", "plugin", "packer_compiled.vim"),
|
|
|
git = { clone_timeout = 300 },
|
|
|
display = {
|
|
|
open_fn = function()
|
|
@@ -32,7 +30,7 @@ return require("packer").startup(function(use)
|
|
|
|
|
|
-- TODO refactor all of this (for now it works, but yes I know it could be wrapped in a simpler function)
|
|
|
use { "neovim/nvim-lspconfig" }
|
|
|
- use { "kabouzeid/nvim-lspinstall" }
|
|
|
+ use { "kabouzeid/nvim-lspinstall", event = "BufRead" }
|
|
|
-- Telescope
|
|
|
use { "nvim-lua/popup.nvim" }
|
|
|
use { "nvim-lua/plenary.nvim" }
|
|
@@ -40,17 +38,9 @@ return require("packer").startup(function(use)
|
|
|
use {
|
|
|
"nvim-telescope/telescope.nvim",
|
|
|
config = [[require('lv-telescope')]],
|
|
|
- cmd = "Telescope",
|
|
|
+ event = "BufEnter",
|
|
|
}
|
|
|
- -- Snap TODO disable for now, need to only install fzy when user specifies they want to use snap
|
|
|
- -- use {
|
|
|
- -- "camspiers/snap",
|
|
|
- -- rocks = "fzy",
|
|
|
- -- config = function()
|
|
|
- -- require("lv-snap").config()
|
|
|
- -- end,
|
|
|
- -- disable = not O.plugin.snap.active
|
|
|
- -- }
|
|
|
+
|
|
|
-- Autocomplete
|
|
|
use {
|
|
|
"hrsh7th/nvim-compe",
|
|
@@ -67,7 +57,7 @@ return require("packer").startup(function(use)
|
|
|
use { "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" }
|
|
|
|
|
|
-- Neoformat
|
|
|
- use { "sbdchd/neoformat", event = "BufEnter" }
|
|
|
+ use { "sbdchd/neoformat" }
|
|
|
|
|
|
use {
|
|
|
"kyazdani42/nvim-tree.lua",
|
|
@@ -93,7 +83,7 @@ return require("packer").startup(function(use)
|
|
|
use {
|
|
|
"windwp/nvim-autopairs",
|
|
|
event = "InsertEnter",
|
|
|
- after = { "telescope.nvim", "nvim-compe" },
|
|
|
+ after = { "telescope.nvim" },
|
|
|
config = function()
|
|
|
require "lv-autopairs"
|
|
|
end,
|
|
@@ -127,34 +117,8 @@ return require("packer").startup(function(use)
|
|
|
-- event = "BufRead",
|
|
|
}
|
|
|
|
|
|
- -- use {
|
|
|
- -- "akinsho/nvim-bufferline.lua",
|
|
|
- -- config = function() require("lv-bufferline").config() end,
|
|
|
- -- event = "BufRead"
|
|
|
- -- }
|
|
|
-
|
|
|
- -- Extras, these do not load by default
|
|
|
+ -- Builtins, these do not load by default
|
|
|
|
|
|
- -- Better motions
|
|
|
- use {
|
|
|
- "phaazon/hop.nvim",
|
|
|
- event = "BufRead",
|
|
|
- config = function()
|
|
|
- require("lv-hop").config()
|
|
|
- end,
|
|
|
- disable = not O.plugin.hop.active,
|
|
|
- opt = true,
|
|
|
- }
|
|
|
- -- Enhanced increment/decrement
|
|
|
- use {
|
|
|
- "monaqa/dial.nvim",
|
|
|
- event = "BufRead",
|
|
|
- config = function()
|
|
|
- require("lv-dial").config()
|
|
|
- end,
|
|
|
- disable = not O.plugin.dial.active,
|
|
|
- opt = true,
|
|
|
- }
|
|
|
-- Dashboard
|
|
|
use {
|
|
|
"ChristianChiarulli/dashboard-nvim",
|
|
@@ -176,25 +140,6 @@ return require("packer").startup(function(use)
|
|
|
end,
|
|
|
disable = not O.plugin.zen.active,
|
|
|
}
|
|
|
- -- Ranger
|
|
|
- use {
|
|
|
- "kevinhwang91/rnvimr",
|
|
|
- cmd = "Rnvimr",
|
|
|
- config = function()
|
|
|
- require("lv-rnvimr").config()
|
|
|
- end,
|
|
|
- disable = not O.plugin.ranger.active,
|
|
|
- }
|
|
|
-
|
|
|
- -- matchup
|
|
|
- use {
|
|
|
- "andymass/vim-matchup",
|
|
|
- event = "CursorMoved",
|
|
|
- config = function()
|
|
|
- require("lv-matchup").config()
|
|
|
- end,
|
|
|
- disable = not O.plugin.matchup.active,
|
|
|
- }
|
|
|
|
|
|
use {
|
|
|
"norcalli/nvim-colorizer.lua",
|
|
@@ -206,18 +151,6 @@ return require("packer").startup(function(use)
|
|
|
disable = not O.plugin.colorizer.active,
|
|
|
}
|
|
|
|
|
|
- use {
|
|
|
- "nacro90/numb.nvim",
|
|
|
- event = "BufRead",
|
|
|
- config = function()
|
|
|
- require("numb").setup {
|
|
|
- show_numbers = true, -- Enable 'number' for the window while peeking
|
|
|
- show_cursorline = true, -- Enable 'cursorline' for the window while peeking
|
|
|
- }
|
|
|
- end,
|
|
|
- disable = not O.plugin.numb.active,
|
|
|
- }
|
|
|
-
|
|
|
-- Treesitter playground
|
|
|
use {
|
|
|
"nvim-treesitter/playground",
|
|
@@ -264,6 +197,7 @@ return require("packer").startup(function(use)
|
|
|
cmd = "TroubleToggle",
|
|
|
disable = not O.plugin.trouble.active,
|
|
|
}
|
|
|
+
|
|
|
-- Debugging
|
|
|
use {
|
|
|
"mfussenegger/nvim-dap",
|
|
@@ -279,12 +213,7 @@ return require("packer").startup(function(use)
|
|
|
end,
|
|
|
disable = not O.plugin.debug.active,
|
|
|
}
|
|
|
- -- Better quickfix
|
|
|
- use {
|
|
|
- "kevinhwang91/nvim-bqf",
|
|
|
- event = "BufRead",
|
|
|
- disable = not O.plugin.bqf.active,
|
|
|
- }
|
|
|
+
|
|
|
-- Floating terminal
|
|
|
use {
|
|
|
"numToStr/FTerm.nvim",
|
|
@@ -297,133 +226,50 @@ return require("packer").startup(function(use)
|
|
|
end,
|
|
|
disable = not O.plugin.floatterm.active,
|
|
|
}
|
|
|
- -- Search & Replace
|
|
|
- use {
|
|
|
- "windwp/nvim-spectre",
|
|
|
- event = "BufRead",
|
|
|
- config = function()
|
|
|
- require("spectre").setup()
|
|
|
- end,
|
|
|
- disable = not O.plugin.spectre.active,
|
|
|
- }
|
|
|
- -- lsp root with this nvim-tree will follow you
|
|
|
- use {
|
|
|
- "ahmedkhalf/lsp-rooter.nvim",
|
|
|
- event = "BufRead",
|
|
|
- config = function()
|
|
|
- require("lsp-rooter").setup()
|
|
|
- end,
|
|
|
- disable = not O.plugin.lsp_rooter.active,
|
|
|
- }
|
|
|
- -- Markdown preview
|
|
|
- use {
|
|
|
- "iamcco/markdown-preview.nvim",
|
|
|
- run = "cd app && npm install",
|
|
|
- ft = "markdown",
|
|
|
- disable = not O.plugin.markdown_preview.active,
|
|
|
- }
|
|
|
- -- Interactive scratchpad
|
|
|
- use {
|
|
|
- "metakirby5/codi.vim",
|
|
|
- cmd = "Codi",
|
|
|
- disable = not O.plugin.codi.active,
|
|
|
- }
|
|
|
+
|
|
|
-- Use fzy for telescope
|
|
|
use {
|
|
|
"nvim-telescope/telescope-fzy-native.nvim",
|
|
|
event = "BufRead",
|
|
|
disable = not O.plugin.telescope_fzy.active,
|
|
|
}
|
|
|
+
|
|
|
-- Use project for telescope
|
|
|
use {
|
|
|
"nvim-telescope/telescope-project.nvim",
|
|
|
event = "BufRead",
|
|
|
- after = "telescope.nvim",
|
|
|
+ setup = function () vim.cmd[[packadd telescope.nvim]] end,
|
|
|
disable = not O.plugin.telescope_project.active,
|
|
|
}
|
|
|
+
|
|
|
-- Sane gx for netrw_gx bug
|
|
|
use {
|
|
|
"felipec/vim-sanegx",
|
|
|
event = "BufRead",
|
|
|
disable = not O.plugin.sanegx.active,
|
|
|
}
|
|
|
- -- Sane gx for netrw_gx bug
|
|
|
- use {
|
|
|
- "folke/todo-comments.nvim",
|
|
|
- event = "BufRead",
|
|
|
- disable = not O.plugin.todo_comments.active,
|
|
|
- }
|
|
|
- -- LSP Colors
|
|
|
- use {
|
|
|
- "folke/lsp-colors.nvim",
|
|
|
- event = "BufRead",
|
|
|
- disable = not O.plugin.lsp_colors.active,
|
|
|
- }
|
|
|
- -- Git Blame
|
|
|
- use {
|
|
|
- "f-person/git-blame.nvim",
|
|
|
- event = "BufRead",
|
|
|
- disable = not O.plugin.git_blame.active,
|
|
|
- }
|
|
|
- use {
|
|
|
- "ruifm/gitlinker.nvim",
|
|
|
- event = "BufRead",
|
|
|
- config = function()
|
|
|
- require("gitlinker").setup {
|
|
|
- opts = {
|
|
|
- -- remote = 'github', -- force the use of a specific remote
|
|
|
- -- adds current line nr in the url for normal mode
|
|
|
- add_current_line_on_normal_mode = true,
|
|
|
- -- callback for what to do with the url
|
|
|
- action_callback = require("gitlinker.actions").open_in_browser,
|
|
|
- -- print the url after performing the action
|
|
|
- print_url = false,
|
|
|
- -- mapping to call url generation
|
|
|
- mappings = "<leader>gy",
|
|
|
- },
|
|
|
- }
|
|
|
- end,
|
|
|
- disable = not O.plugin.gitlinker.active,
|
|
|
- requires = "nvim-lua/plenary.nvim",
|
|
|
- }
|
|
|
+
|
|
|
-- Lazygit
|
|
|
use {
|
|
|
"kdheepak/lazygit.nvim",
|
|
|
cmd = "LazyGit",
|
|
|
disable = not O.plugin.lazygit.active,
|
|
|
}
|
|
|
- -- Octo
|
|
|
- use {
|
|
|
- "pwntester/octo.nvim",
|
|
|
- event = "BufRead",
|
|
|
- disable = not O.plugin.octo.active,
|
|
|
- }
|
|
|
+
|
|
|
-- Diffview
|
|
|
use {
|
|
|
"sindrets/diffview.nvim",
|
|
|
event = "BufRead",
|
|
|
disable = not O.plugin.diffview.active,
|
|
|
}
|
|
|
- -- Easily Create Gists
|
|
|
- use {
|
|
|
- "mattn/vim-gist",
|
|
|
- event = "BufRead",
|
|
|
- disable = not O.plugin.gist.active,
|
|
|
- requires = "mattn/webapi-vim",
|
|
|
- }
|
|
|
+
|
|
|
-- Lush Create Color Schemes
|
|
|
use {
|
|
|
"rktjmp/lush.nvim",
|
|
|
-- cmd = {"LushRunQuickstart", "LushRunTutorial", "Lushify"},
|
|
|
disable = not O.plugin.lush.active,
|
|
|
}
|
|
|
- -- HTML preview
|
|
|
- use {
|
|
|
- "turbio/bracey.vim",
|
|
|
- event = "BufRead",
|
|
|
- run = "npm install --prefix server",
|
|
|
- disable = not O.plugin.bracey.active,
|
|
|
- }
|
|
|
+
|
|
|
-- Debugger management
|
|
|
use {
|
|
|
"Pocco81/DAPInstall.nvim",
|
|
@@ -432,8 +278,13 @@ return require("packer").startup(function(use)
|
|
|
}
|
|
|
|
|
|
-- LANGUAGE SPECIFIC GOES HERE
|
|
|
-
|
|
|
- use { "lervag/vimtex", ft = "tex" }
|
|
|
+ use {
|
|
|
+ "lervag/vimtex",
|
|
|
+ ft = "tex",
|
|
|
+ config = function()
|
|
|
+ require "lv-vimtex"
|
|
|
+ end,
|
|
|
+ }
|
|
|
|
|
|
-- Rust tools
|
|
|
-- TODO: use lazy loading maybe?
|
|
@@ -472,13 +323,38 @@ return require("packer").startup(function(use)
|
|
|
-- end,
|
|
|
-- }
|
|
|
|
|
|
- -- Tabnine
|
|
|
+ -- Pretty parentheses
|
|
|
+ use {
|
|
|
+ "p00f/nvim-ts-rainbow",
|
|
|
+ disable = not O.plugin.ts_rainbow.active,
|
|
|
+ }
|
|
|
+
|
|
|
+ -- Autotags <div>|</div>
|
|
|
use {
|
|
|
- "tzachar/compe-tabnine",
|
|
|
- run = "./install.sh",
|
|
|
- requires = "hrsh7th/nvim-compe",
|
|
|
- disable = not O.plugin.tabnine.active,
|
|
|
+ "windwp/nvim-ts-autotag",
|
|
|
+ event = "InsertEnter",
|
|
|
+ disable = not O.plugin.ts_autotag.active,
|
|
|
}
|
|
|
+
|
|
|
+ -- Custom semantic text objects
|
|
|
+ use {
|
|
|
+ "nvim-treesitter/nvim-treesitter-textobjects",
|
|
|
+ disable = not O.plugin.ts_textobjects.active,
|
|
|
+ }
|
|
|
+
|
|
|
+ -- Smart text objects
|
|
|
+ use {
|
|
|
+ "RRethy/nvim-treesitter-textsubjects",
|
|
|
+ disable = not O.plugin.ts_textsubjects.active,
|
|
|
+ }
|
|
|
+
|
|
|
+ -- Text objects using hint labels
|
|
|
+ use {
|
|
|
+ "mfussenegger/nvim-ts-hint-textobject",
|
|
|
+ event = "BufRead",
|
|
|
+ disable = not O.plugin.ts_hintobjects.active,
|
|
|
+ }
|
|
|
+
|
|
|
for _, plugin in pairs(O.custom_plugins) do
|
|
|
packer.use(plugin)
|
|
|
end
|