Relying on lazy loading on command invocation feature seems to not make the default key bindings of the plugin take effect. Remove it.
168 lines
3.8 KiB
Lua
168 lines
3.8 KiB
Lua
-- 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',
|
|
config = "require('modules.sneak')"
|
|
}
|
|
-- Search
|
|
use {
|
|
'junegunn/fzf',
|
|
run = './install --bin'
|
|
}
|
|
use {
|
|
'junegunn/fzf.vim',
|
|
config = "require('modules.fzf')"
|
|
}
|
|
use 'PeterRincker/vim-searchlight'
|
|
use 'wincent/ferret'
|
|
use 'lambdalisue/reword.vim'
|
|
-- Remove extraneous whitespace when edit mode is exited
|
|
use {
|
|
'ntpeters/vim-better-whitespace',
|
|
config = "require('modules.better-whitespace')"
|
|
}
|
|
-- Manage Project sessions
|
|
use {
|
|
'thaerkh/vim-workspace',
|
|
config = "require('modules.workspace')"
|
|
}
|
|
-- For autocompletion
|
|
use {
|
|
'nvim-lua/completion-nvim',
|
|
config = "require('modules.completion')"
|
|
}
|
|
use 'steelsojka/completion-buffers'
|
|
-- For tmux
|
|
use 'tmux-plugins/vim-tmux-focus-events'
|
|
-- Git support
|
|
use 'nvim-lua/plenary.nvim'
|
|
use {
|
|
'lewis6991/gitsigns.nvim',
|
|
config = "require('modules.gitsigns')",
|
|
branch = 'main'
|
|
}
|
|
use 'lambdalisue/gina.vim'
|
|
use 'rhysd/git-messenger.vim'
|
|
use 'rhysd/conflict-marker.vim'
|
|
use 'salcode/vim-interactive-rebase-reverse'
|
|
-- Boost vim command line mode
|
|
use 'vim-utils/vim-husk'
|
|
-- Rainbow Parentheses
|
|
use 'luochen1990/rainbow'
|
|
-- Formatting
|
|
use {
|
|
'sbdchd/neoformat',
|
|
cmd = 'Neoformat'
|
|
}
|
|
-- Run things async
|
|
use {
|
|
'hauleth/asyncdo.vim',
|
|
config = "require('modules.asyncdo')"
|
|
}
|
|
-- Quickfix
|
|
use 'ronakg/quickr-cscope.vim'
|
|
use {
|
|
'milkypostman/vim-togglelist',
|
|
config = "require('modules.togglelist')"
|
|
}
|
|
use 'yssl/QFEnter'
|
|
use {
|
|
'chengzeyi/fzf-preview.vim',
|
|
config = "require('modules.fzf-preview')"
|
|
}
|
|
-- Text Object plugins
|
|
use {
|
|
'wellle/targets.vim',
|
|
'tpope/vim-surround',
|
|
'coderifous/textobj-word-column.vim',
|
|
'tommcdo/vim-exchange',
|
|
'chaoren/vim-wordmotion'
|
|
}
|
|
-- Tim pope essentials
|
|
use {
|
|
'tpope/vim-commentary',
|
|
'tpope/vim-repeat',
|
|
'tpope/vim-sleuth'
|
|
}
|
|
-- Show indentation levels
|
|
use 'Yggdroot/indentLine'
|
|
-- Smooth scrolling
|
|
use 'psliwka/vim-smoothie'
|
|
-- Scrollbar
|
|
use 'Xuyuanp/scrollbar.nvim'
|
|
-- Directory viewer
|
|
use 'justinmk/vim-dirvish'
|
|
-- Show leader key bindings
|
|
use {
|
|
'liuchengxu/vim-which-key',
|
|
config = "require('modules.which_key')"
|
|
}
|
|
-- Clipboard
|
|
use 'christoomey/vim-system-copy'
|
|
-- Toggle terminal
|
|
use {
|
|
'voldikss/vim-floaterm',
|
|
config = "require('modules.floaterm')"
|
|
}
|
|
use 'lambdalisue/edita.vim'
|
|
-- Take care of sudo
|
|
use 'lambdalisue/suda.vim'
|
|
-- Alignment
|
|
use {
|
|
'junegunn/vim-easy-align',
|
|
config = "require('modules.easyalign')"
|
|
}
|
|
-- LSP
|
|
use {
|
|
'neovim/nvim-lspconfig',
|
|
config = "require('lsp')",
|
|
}
|
|
use {
|
|
'nvim-lua/diagnostic-nvim',
|
|
config = "require('modules.diagnostic')"
|
|
}
|
|
use 'nvim-lua/lsp-status.nvim'
|
|
-- Language support & syntax highlighting
|
|
-- Haskell
|
|
use {
|
|
'neovimhaskell/haskell-vim',
|
|
'Twinside/vim-hoogle',
|
|
ft = 'haskell'
|
|
}
|
|
use {
|
|
'ndmitchell/ghcid',
|
|
rtp = 'plugins/nvim',
|
|
ft = 'haskell'
|
|
}
|
|
-- For C, Lua and Rust
|
|
use {
|
|
'nvim-treesitter/nvim-treesitter',
|
|
config = "require('treesitter')",
|
|
}
|
|
-- LaTeX
|
|
use 'lervag/vimtex'
|
|
-- Dhall & nix
|
|
use 'vmchale/dhall-vim'
|
|
use 'LnL7/vim-nix'
|
|
-- Other syntax highlighting support
|
|
use 'georgewitteman/vim-fish'
|
|
use 'elzr/vim-json'
|
|
use 'lifepillar/pgsql.vim'
|
|
use 'mtdl9/vim-log-highlighting'
|
|
use 'martinda/Jenkinsfile-vim-syntax'
|
|
-- For statusline
|
|
use {
|
|
'glepnir/galaxyline.nvim',
|
|
branch = 'main',
|
|
config = "require('modules.statusline')",
|
|
requires = { 'kyazdani42/nvim-web-devicons' }
|
|
}
|
|
end
|
|
|
|
return require('packer').startup(init)
|