dotfiles/nvim/.config/nvim/lua/plugins.lua
Sanchayan Maity 397cac1050 nvim: plugins/treesitter: Use treehopper instead of textobjects
The whole bunch of treesitter text objects were difficult to remember
and we ended up rarely ever using any of the defined mappings.

treehopper simplifies things with a single mapping and hints.
2022-11-24 14:21:41 +05:30

104 lines
2.4 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 'phaazon/hop.nvim'
-- Search
use {
'junegunn/fzf',
run = './install --bin'
}
use 'junegunn/fzf.vim'
-- Manage Project sessions
use 'rmagatti/auto-session'
-- Snippets
use {
'L3MON4D3/LuaSnip',
requires = {
'rafamadriz/friendly-snippets',
}
}
-- Git support
use 'lewis6991/gitsigns.nvim'
use 'tpope/vim-fugitive'
use 'ruifm/gitlinker.nvim'
use 'whiteinge/diffconflicts'
-- Boost vim command line mode
use 'vim-utils/vim-husk'
-- Quickfix
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',
'glts/vim-textobj-comment'
}
use 'numToStr/Comment.nvim'
-- Tim pope essentials
use {
'tpope/vim-repeat',
'tpope/vim-sleuth',
'tpope/vim-dispatch'
}
-- Directory viewer
use 'justinmk/vim-dirvish'
use 'roginfarrer/vim-dirvish-dovish'
-- Alignment
use 'junegunn/vim-easy-align'
use 'nvim-lua/plenary.nvim'
-- LSP
use 'kosayoda/nvim-lightbulb'
-- Language support & syntax highlighting
use 'mfussenegger/nvim-lint'
use 'lvimuser/lsp-inlayhints.nvim'
-- treesitter based syntax highlighting
use {
'nvim-treesitter/nvim-treesitter',
requires = {
{
"nvim-treesitter/playground",
after = "nvim-treesitter",
cmd = { "TSPlaygroundToggle", "TSHighlightCapturesUnderCursor" },
},
{
"mfussenegger/nvim-treehopper",
after = "nvim-treesitter",
},
},
config = "require('treesitter')",
run = ':TSUpdate'
}
-- Marks and registers
use {
'chentoast/marks.nvim',
}
use 'andymass/vim-matchup'
use 'christoomey/vim-tmux-navigator'
use 'marcelofern/vale.nvim'
end
local config = {
git = {
subcommands = {
update = 'pull --ff-only --progress --rebase=false --no-tags',
fetch = 'fetch --depth 999999 --progress --no-tags',
}
}
}
return require('packer').startup(init, config)