-- Add the in built Cfilter plugin. Replaces QFGrep. vim.cmd 'packadd cfilter' vim.cmd 'packadd packer.nvim' local init = function () use {'wbthomason/packer.nvim', opt = true} -- Vertical Motion use 'justinmk/vim-sneak' -- Search use { 'junegunn/fzf', run = './install --bin' } use 'junegunn/fzf.vim' use 'wincent/ferret' use 'bronson/vim-visual-star-search' -- Manage Project sessions use 'thaerkh/vim-workspace' -- For autocompletion use { 'hrsh7th/nvim-cmp', requires = { 'hrsh7th/cmp-nvim-lsp', 'hrsh7th/cmp-nvim-lua', 'hrsh7th/cmp-buffer', 'hrsh7th/cmp-path', 'onsails/lspkind-nvim', 'L3MON4D3/LuaSnip', 'saadparwaiz1/cmp_luasnip', 'rafamadriz/friendly-snippets' } } -- Git support use 'lewis6991/gitsigns.nvim' use 'tpope/vim-fugitive' use 'rhysd/git-messenger.vim' use 'whiteinge/diffconflicts' use 'sindrets/diffview.nvim' -- Boost vim command line mode use 'vim-utils/vim-husk' -- Quickfix use 'yssl/QFEnter' use 'chengzeyi/fzf-preview.vim' use { 'https://gitlab.com/yorickpeterse/nvim-pqf', config = function() require('pqf').setup() end } -- Text Object plugins use { 'wellle/targets.vim', 'tpope/vim-surround', 'tommcdo/vim-exchange', 'chaoren/vim-wordmotion', 'kana/vim-textobj-user', 'kana/vim-textobj-entire', 'idbrii/textobj-word-column.vim', } use 'numToStr/Comment.nvim' -- Tim pope essentials use { 'tpope/vim-repeat', 'tpope/vim-sleuth', 'tpope/vim-dispatch' } -- Directory viewer use 'justinmk/vim-dirvish' -- Show leader key bindings use 'folke/which-key.nvim' --Toggle terminal use 'akinsho/toggleterm.nvim' -- Take care of sudo use 'lambdalisue/suda.vim' -- Alignment use 'junegunn/vim-easy-align' use 'nvim-lua/plenary.nvim' use { 'jose-elias-alvarez/nvim-lsp-ts-utils', requires = { 'jose-elias-alvarez/null-ls.nvim' } } -- LSP use { 'neovim/nvim-lspconfig', 'kosayoda/nvim-lightbulb', } -- Language support & syntax highlighting use 'simrat39/rust-tools.nvim' -- Coq use { 'whonore/Coqtail', 'jlapolla/vim-coq-plugin' } -- treesitter based syntax highlighting use { 'nvim-treesitter/nvim-treesitter', requires = { { "nvim-treesitter/playground", after = "nvim-treesitter", cmd = { "TSPlaygroundToggle", "TSHighlightCapturesUnderCursor" }, }, { "nvim-treesitter/nvim-treesitter-textobjects", module = "nvim-treesitter-textobjects", after = "nvim-treesitter", }, }, config = "require('treesitter')", run = ':TSUpdate' } -- All writing needs use 'lervag/vimtex' use 'vim-pandoc/vim-pandoc' use 'vim-pandoc/vim-pandoc-syntax' -- Dhall use 'vmchale/dhall-vim' -- For statusline use { 'NTBBloodbath/galaxyline.nvim', requires = { 'kyazdani42/nvim-web-devicons' } } -- Marks and registers use { 'chentau/marks.nvim', } -- For files with ANSI escape sequences use { 'powerman/vim-plugin-AnsiEsc', cmd = 'AnsiEsc' } end return require('packer').startup(init)