diff options
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/plugins.lua | 692 | 
1 files changed, 346 insertions, 346 deletions
| diff --git a/lua/plugins.lua b/lua/plugins.lua index e4ec5fb4..8ad8b9e6 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -1,361 +1,361 @@  local execute = vim.api.nvim_command  local fn = vim.fn -local install_path = fn.stdpath("data") .. "/site/pack/packer/start/packer.nvim" +local install_path = fn.stdpath "data" .. "/site/pack/packer/start/packer.nvim"  if fn.empty(fn.glob(install_path)) > 0 then -	execute("!git clone https://github.com/wbthomason/packer.nvim " .. install_path) -	execute("packadd packer.nvim") +  execute("!git clone https://github.com/wbthomason/packer.nvim " .. install_path) +  execute "packadd packer.nvim"  end  local packer_ok, packer = pcall(require, "packer")  if not packer_ok then -	return +  return  end -packer.init({ -	git = { clone_timeout = 300 }, -	display = { -		open_fn = function() -			return require("packer.util").float({ border = "single" }) -		end, -	}, -}) +packer.init { +  git = { clone_timeout = 300 }, +  display = { +    open_fn = function() +      return require("packer.util").float { border = "single" } +    end, +  }, +} -vim.cmd("autocmd BufWritePost plugins.lua PackerCompile") +vim.cmd "autocmd BufWritePost plugins.lua PackerCompile"  return require("packer").startup(function(use) -	-- Packer can manage itself as an optional plugin -	use("wbthomason/packer.nvim") - -	-- 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", event = "BufRead" }) -	-- Telescope -	use({ "nvim-lua/popup.nvim" }) -	use({ "nvim-lua/plenary.nvim" }) -	use({ "tjdevries/astronauta.nvim" }) -	use({ -		"nvim-telescope/telescope.nvim", -		config = [[require('lv-telescope')]], -		event = "BufEnter", -	}) - -	-- Autocomplete -	use({ -		"hrsh7th/nvim-compe", -		event = "InsertEnter", -		config = function() -			require("lv-compe").config() -		end, -	}) - -	use({ "hrsh7th/vim-vsnip", event = "InsertEnter" }) -	use({ "rafamadriz/friendly-snippets", event = "InsertEnter" }) - -	-- Treesitter -	use({ "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" }) - -	-- Neoformat -	use({ "sbdchd/neoformat" }) - -	use({ -		"kyazdani42/nvim-tree.lua", -		-- cmd = "NvimTreeToggle", -		config = function() -			require("lv-nvimtree").config() -		end, -	}) - -	use({ -		"lewis6991/gitsigns.nvim", - -		config = function() -			require("lv-gitsigns").config() -		end, -		event = "BufRead", -	}) - -	-- whichkey -	use({ "folke/which-key.nvim" }) - -	-- Autopairs -	use({ -		"windwp/nvim-autopairs", -		event = "InsertEnter", -		after = { "telescope.nvim" }, -		config = function() -			require("lv-autopairs") -		end, -	}) - -	-- Comments -	use({ -		"terrortylor/nvim-comment", -		cmd = "CommentToggle", -		config = function() -			local status_ok, nvim_comment = pcall(require, "nvim_comment") -			if not status_ok then -				return -			end -			nvim_comment.setup() -		end, -	}) - -	-- Color -	use({ "christianchiarulli/nvcode-color-schemes.vim", opt = true }) - -	-- Icons -	use({ "kyazdani42/nvim-web-devicons" }) - -	-- Status Line and Bufferline -	use({ "glepnir/galaxyline.nvim" }) - -	use({ -		"romgrk/barbar.nvim", -		config = function() -			vim.api.nvim_set_keymap("n", "<TAB>", ":BufferNext<CR>", { noremap = true, silent = true }) -			vim.api.nvim_set_keymap("n", "<S-TAB>", ":BufferPrevious<CR>", { noremap = true, silent = true }) -			vim.api.nvim_set_keymap("n", "<S-x>", ":BufferClose<CR>", { noremap = true, silent = true }) -		end, -		-- event = "BufRead", -	}) - -	-- Builtins, these do not load by default - -	-- Dashboard -	use({ -		"ChristianChiarulli/dashboard-nvim", -		-- event = "BufWinEnter", -		-- cmd = { "Dashboard", "DashboardNewFile", "DashboardJumpMarks" }, -		config = function() -			require("lv-dashboard").config() -		end, -		disable = not O.plugin.dashboard.active, -		-- opt = true, -	}) -	-- Zen Mode -	use({ -		"folke/zen-mode.nvim", -		cmd = "ZenMode", -		-- event = "BufRead", -		config = function() -			require("lv-zen").config() -		end, -		disable = not O.plugin.zen.active, -	}) - -	use({ -		"norcalli/nvim-colorizer.lua", -		event = "BufRead", -		config = function() -			require("lv-colorizer") -			-- vim.cmd "ColorizerReloadAllBuffers" -		end, -		disable = not O.plugin.colorizer.active, -	}) - -	-- Treesitter playground -	use({ -		"nvim-treesitter/playground", -		event = "BufRead", -		disable = not O.plugin.ts_playground.active, -	}) - -	use({ -		"lukas-reineke/indent-blankline.nvim", -		event = "BufRead", -		setup = function() -			vim.g.indentLine_enabled = 1 -			vim.g.indent_blankline_char = "▏" - -			vim.g.indent_blankline_filetype_exclude = { -				"help", -				"terminal", -				"dashboard", -			} -			vim.g.indent_blankline_buftype_exclude = { "terminal" } - -			vim.g.indent_blankline_show_trailing_blankline_indent = false -			vim.g.indent_blankline_show_first_indent_level = true -		end, -		disable = not O.plugin.indent_line.active, -	}) - -	-- comments in context -	use({ -		"JoosepAlviste/nvim-ts-context-commentstring", -		event = "BufRead", -		disable = not O.plugin.ts_context_commentstring.active, -	}) - -	-- Symbol Outline -	use({ -		"simrat39/symbols-outline.nvim", -		cmd = "SymbolsOutline", -		disable = not O.plugin.symbol_outline.active, -	}) -	-- diagnostics -	use({ -		"folke/trouble.nvim", -		cmd = "TroubleToggle", -		disable = not O.plugin.trouble.active, -	}) - -	-- Debugging -	use({ -		"mfussenegger/nvim-dap", -		config = function() -			local status_ok, dap = pcall(require, "dap") -			if not status_ok then -				return -			end -			-- require "dap" -			vim.fn.sign_define("DapBreakpoint", { -				text = "", -				texthl = "LspDiagnosticsSignError", -				linehl = "", -				numhl = "", -			}) -			dap.defaults.fallback.terminal_win_cmd = "50vsplit new" -		end, -		disable = not O.plugin.debug.active, -	}) - -	-- Floating terminal -	use({ -		"numToStr/FTerm.nvim", -		event = "BufWinEnter", -		config = function() -			require("lv-floatterm").config() -		end, -		disable = not O.plugin.floatterm.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", -		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, -	}) - -	-- Diffview -	use({ -		"sindrets/diffview.nvim", -		event = "BufRead", -		disable = not O.plugin.diffview.active, -	}) - -	-- Lush Create Color Schemes -	use({ -		"rktjmp/lush.nvim", -		-- cmd = {"LushRunQuickstart", "LushRunTutorial", "Lushify"}, -		disable = not O.plugin.lush.active, -	}) - -	-- Debugger management -	use({ -		"Pocco81/DAPInstall.nvim", -		-- event = "BufRead", -		disable = not O.plugin.dap_install.active, -	}) - -	-- LANGUAGE SPECIFIC GOES HERE -	use({ -		"lervag/vimtex", -		ft = "tex", -		config = function() -			require("lv-vimtex") -		end, -	}) - -	-- Rust tools -	-- TODO: use lazy loading maybe? -	use({ -		"simrat39/rust-tools.nvim", -		disable = not O.lang.rust.rust_tools.active, -	}) - -	-- Elixir -	use({ "elixir-editors/vim-elixir", ft = { "elixir", "eelixir", "euphoria3" } }) - -	-- Javascript / Typescript -	use({ -		"jose-elias-alvarez/nvim-lsp-ts-utils", -		ft = { -			"javascript", -			"javascriptreact", -			"javascript.jsx", -			"typescript", -			"typescriptreact", -			"typescript.tsx", -		}, -	}) -	-- use { -	--   "jose-elias-alvarez/null-ls.nvim", -	--   ft = { -	--     "javascript", -	--     "javascriptreact", -	--     "javascript.jsx", -	--     "typescript", -	--     "typescriptreact", -	--     "typescript.tsx", -	--   }, -	--   config = function() -	--     require("null-ls").setup() -	--   end, -	-- } - -	-- Pretty parentheses -	use({ -		"p00f/nvim-ts-rainbow", -		disable = not O.plugin.ts_rainbow.active, -	}) - -	-- Autotags <div>|</div> -	use({ -		"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.user_plugins) do -		packer.use(plugin) -	end +  -- Packer can manage itself as an optional plugin +  use "wbthomason/packer.nvim" + +  -- 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", event = "BufRead" } +  -- Telescope +  use { "nvim-lua/popup.nvim" } +  use { "nvim-lua/plenary.nvim" } +  use { "tjdevries/astronauta.nvim" } +  use { +    "nvim-telescope/telescope.nvim", +    config = [[require('lv-telescope')]], +    event = "BufEnter", +  } + +  -- Autocomplete +  use { +    "hrsh7th/nvim-compe", +    event = "InsertEnter", +    config = function() +      require("lv-compe").config() +    end, +  } + +  use { "hrsh7th/vim-vsnip", event = "InsertEnter" } +  use { "rafamadriz/friendly-snippets", event = "InsertEnter" } + +  -- Treesitter +  use { "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" } + +  -- Neoformat +  use { "sbdchd/neoformat" } + +  use { +    "kyazdani42/nvim-tree.lua", +    -- cmd = "NvimTreeToggle", +    config = function() +      require("lv-nvimtree").config() +    end, +  } + +  use { +    "lewis6991/gitsigns.nvim", + +    config = function() +      require("lv-gitsigns").config() +    end, +    event = "BufRead", +  } + +  -- whichkey +  use { "folke/which-key.nvim" } + +  -- Autopairs +  use { +    "windwp/nvim-autopairs", +    event = "InsertEnter", +    after = { "telescope.nvim" }, +    config = function() +      require "lv-autopairs" +    end, +  } + +  -- Comments +  use { +    "terrortylor/nvim-comment", +    cmd = "CommentToggle", +    config = function() +      local status_ok, nvim_comment = pcall(require, "nvim_comment") +      if not status_ok then +        return +      end +      nvim_comment.setup() +    end, +  } + +  -- Color +  use { "christianchiarulli/nvcode-color-schemes.vim", opt = true } + +  -- Icons +  use { "kyazdani42/nvim-web-devicons" } + +  -- Status Line and Bufferline +  use { "glepnir/galaxyline.nvim" } + +  use { +    "romgrk/barbar.nvim", +    config = function() +      vim.api.nvim_set_keymap("n", "<TAB>", ":BufferNext<CR>", { noremap = true, silent = true }) +      vim.api.nvim_set_keymap("n", "<S-TAB>", ":BufferPrevious<CR>", { noremap = true, silent = true }) +      vim.api.nvim_set_keymap("n", "<S-x>", ":BufferClose<CR>", { noremap = true, silent = true }) +    end, +    -- event = "BufRead", +  } + +  -- Builtins, these do not load by default + +  -- Dashboard +  use { +    "ChristianChiarulli/dashboard-nvim", +    -- event = "BufWinEnter", +    -- cmd = { "Dashboard", "DashboardNewFile", "DashboardJumpMarks" }, +    config = function() +      require("lv-dashboard").config() +    end, +    disable = not O.plugin.dashboard.active, +    -- opt = true, +  } +  -- Zen Mode +  use { +    "folke/zen-mode.nvim", +    cmd = "ZenMode", +    -- event = "BufRead", +    config = function() +      require("lv-zen").config() +    end, +    disable = not O.plugin.zen.active, +  } + +  use { +    "norcalli/nvim-colorizer.lua", +    event = "BufRead", +    config = function() +      require "lv-colorizer" +      -- vim.cmd "ColorizerReloadAllBuffers" +    end, +    disable = not O.plugin.colorizer.active, +  } + +  -- Treesitter playground +  use { +    "nvim-treesitter/playground", +    event = "BufRead", +    disable = not O.plugin.ts_playground.active, +  } + +  use { +    "lukas-reineke/indent-blankline.nvim", +    event = "BufRead", +    setup = function() +      vim.g.indentLine_enabled = 1 +      vim.g.indent_blankline_char = "▏" + +      vim.g.indent_blankline_filetype_exclude = { +        "help", +        "terminal", +        "dashboard", +      } +      vim.g.indent_blankline_buftype_exclude = { "terminal" } + +      vim.g.indent_blankline_show_trailing_blankline_indent = false +      vim.g.indent_blankline_show_first_indent_level = true +    end, +    disable = not O.plugin.indent_line.active, +  } + +  -- comments in context +  use { +    "JoosepAlviste/nvim-ts-context-commentstring", +    event = "BufRead", +    disable = not O.plugin.ts_context_commentstring.active, +  } + +  -- Symbol Outline +  use { +    "simrat39/symbols-outline.nvim", +    cmd = "SymbolsOutline", +    disable = not O.plugin.symbol_outline.active, +  } +  -- diagnostics +  use { +    "folke/trouble.nvim", +    cmd = "TroubleToggle", +    disable = not O.plugin.trouble.active, +  } + +  -- Debugging +  use { +    "mfussenegger/nvim-dap", +    config = function() +      local status_ok, dap = pcall(require, "dap") +      if not status_ok then +        return +      end +      -- require "dap" +      vim.fn.sign_define("DapBreakpoint", { +        text = "", +        texthl = "LspDiagnosticsSignError", +        linehl = "", +        numhl = "", +      }) +      dap.defaults.fallback.terminal_win_cmd = "50vsplit new" +    end, +    disable = not O.plugin.debug.active, +  } + +  -- Floating terminal +  use { +    "numToStr/FTerm.nvim", +    event = "BufWinEnter", +    config = function() +      require("lv-floatterm").config() +    end, +    disable = not O.plugin.floatterm.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", +    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, +  } + +  -- Diffview +  use { +    "sindrets/diffview.nvim", +    event = "BufRead", +    disable = not O.plugin.diffview.active, +  } + +  -- Lush Create Color Schemes +  use { +    "rktjmp/lush.nvim", +    -- cmd = {"LushRunQuickstart", "LushRunTutorial", "Lushify"}, +    disable = not O.plugin.lush.active, +  } + +  -- Debugger management +  use { +    "Pocco81/DAPInstall.nvim", +    -- event = "BufRead", +    disable = not O.plugin.dap_install.active, +  } + +  -- LANGUAGE SPECIFIC GOES HERE +  use { +    "lervag/vimtex", +    ft = "tex", +    config = function() +      require "lv-vimtex" +    end, +  } + +  -- Rust tools +  -- TODO: use lazy loading maybe? +  use { +    "simrat39/rust-tools.nvim", +    disable = not O.lang.rust.rust_tools.active, +  } + +  -- Elixir +  use { "elixir-editors/vim-elixir", ft = { "elixir", "eelixir", "euphoria3" } } + +  -- Javascript / Typescript +  use { +    "jose-elias-alvarez/nvim-lsp-ts-utils", +    ft = { +      "javascript", +      "javascriptreact", +      "javascript.jsx", +      "typescript", +      "typescriptreact", +      "typescript.tsx", +    }, +  } +  -- use { +  --   "jose-elias-alvarez/null-ls.nvim", +  --   ft = { +  --     "javascript", +  --     "javascriptreact", +  --     "javascript.jsx", +  --     "typescript", +  --     "typescriptreact", +  --     "typescript.tsx", +  --   }, +  --   config = function() +  --     require("null-ls").setup() +  --   end, +  -- } + +  -- Pretty parentheses +  use { +    "p00f/nvim-ts-rainbow", +    disable = not O.plugin.ts_rainbow.active, +  } + +  -- Autotags <div>|</div> +  use { +    "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.user_plugins) do +    packer.use(plugin) +  end  end) | 
