dotfiles-ansible/roles/config/files/nvim/lua/user/modules/editor/plugins.lua

228 lines
6.0 KiB
Lua

local M = {}
-- Syntax not covered by nvim-treesitter
M['nfnty/vim-nftables'] = { ft = 'nftables' }
M['MTDL9/vim-log-highlighting'] = { ft = 'log' }
M['Glench/Vim-Jinja2-Syntax'] = { ft = 'jinja' }
M['mracos/mermaid.vim'] = { ft = 'mermaid' }
M['tsandall/vim-rego'] = { ft = 'rego' }
M['vmchale/dhall-vim'] = { ft = 'dhall' }
M['NvChad/nvim-colorizer.lua'] = {
cmd = 'ColorizerToggle',
config = function()
require('user.modules.editor.config.colorizer')
end,
}
M['Olical/conjure'] = { -- TODO: config, check out fennel-repl.nvim
ft = { 'clojure', 'fennel', 'scheme', 'hy', 'janet', 'racket' },
}
M['nvim-orgmode/orgmode'] = {
ft = 'org',
-- requires = {
-- {
-- 'akinsho/org-bullets.nvim',
-- after = 'orgmode.nvim',
-- config = function()
-- require('user.modules.editor.config.org-bullets')
-- end,
-- },
-- },
config = function()
require('user.modules.editor.config.orgmode')
end,
}
M['folke/todo-comments.nvim'] = {
wants = 'plenary.nvim',
event = 'BufRead',
config = function()
require('user.modules.editor.config.todo-comments')
end,
}
M['nvim-treesitter/nvim-treesitter'] = {
run = ':TSUpdate',
event = 'BufRead',
config = function()
require('user.modules.editor.config.treesitter')
end,
}
M['p00f/nvim-ts-rainbow'] = { after = 'nvim-treesitter' }
M['nvim-treesitter/nvim-treesitter-refactor'] = { after = 'nvim-treesitter' }
M['JoosepAlviste/nvim-ts-context-commentstring'] = { after = 'nvim-treesitter' }
M['nvim-treesitter/nvim-treesitter-textobjects'] = { after = 'nvim-treesitter' }
M['nvim-treesitter/nvim-treesitter-context'] = { after = 'nvim-treesitter' }
M['windwp/nvim-ts-autotag'] = {
ft = {
'html',
'javascript',
'javascriptreact',
'typescript',
'typescriptreact',
'svelte',
'vue',
},
}
M['nvim-treesitter/playground'] = {
cmd = { 'TSHighlightCapturesUnderCursor', 'TSPlaygroundToggle' },
wants = 'nvim-treesitter',
}
M['andymass/vim-matchup'] = {
after = 'nvim-treesitter',
config = function()
require('user.modules.editor.config.matchup')
end,
}
M['lukas-reineke/indent-blankline.nvim'] = {
after = 'nvim-treesitter',
config = function()
require('user.modules.editor.config.indent-blankline')
end,
}
M['mizlan/iswap.nvim'] = {
cmd = { 'ISwapWith', 'ISwap' },
wants = 'nvim-treesitter',
config = function()
require('user.modules.editor.config.iswap')
end,
}
M['kylechui/nvim-surround'] = {
event = 'BufRead',
config = function()
require('user.modules.editor.config.surround')
end,
}
M['folke/zen-mode.nvim'] = { -- TODO: check out true-zen.nvim
cmd = 'ZenMode',
wants = 'twilight.nvim',
requires = {
{
'folke/twilight.nvim',
cmd = { 'Twilight', 'TwilightEnable' },
config = function()
require('user.modules.editor.config.twilight')
end,
opt = true,
},
},
config = function()
require('user.modules.editor.config.zenmode')
end,
}
M['max397574/better-escape.nvim'] = {
event = 'InsertCharPre',
config = function()
require('user.modules.editor.config.better-escape')
end,
}
M['monaqa/dial.nvim'] = {
wants = 'plenary.nvim',
keys = {
{ 'n', '<C-a>' },
{ 'x', '<C-a>' },
{ 'x', 'g<C-a>' },
{ 'n', '<C-x>' },
{ 'x', '<C-x>' },
{ 'x', 'g<C-x>' },
},
config = function()
require('user.modules.editor.config.dial')
end,
}
M['junegunn/vim-easy-align'] = { cmd = { 'EasyAlign', 'LiveEasyAlign' } }
M['dhruvasagar/vim-table-mode'] = {
cmd = { 'Tableize', 'TableModeToggle', 'TableModeRealign' },
setup = function()
require('user.modules.editor.config.table-mode')
end,
}
M['numToStr/Comment.nvim'] = {
keys = { 'gc', 'gb' },
wants = 'nvim-ts-context-commentstring',
config = function()
require('user.modules.editor.config.comment')
end,
}
M['winston0410/range-highlight.nvim'] = {
event = 'CmdlineEnter',
wants = 'cmd-parser.nvim',
config = function()
require('user.modules.editor.config.range-highlight')
end,
}
M['danymat/neogen'] = {
cmd = 'Neogen',
wants = 'nvim-treesitter',
config = function()
require('user.modules.editor.config.neogen')
end,
}
M['gpanders/editorconfig.nvim'] = {
event = { 'BufRead', 'BufNewFile' },
}
M['eraserhd/parinfer-rust'] = { -- TODO: move to nvim-parinfer (lua)
run = 'cargo build --release',
ft = { 'clojure', 'lisp', 'scheme', 'fennel', 'racket', 'hy', 'janet', 'carp', 'wast' },
}
M['ahmedkhalf/project.nvim'] = {
event = 'BufEnter',
config = function()
require('user.modules.editor.config.project')
end,
}
M['ruifm/gitlinker.nvim'] = {
wants = 'plenary.nvim',
keys = { '<leader>gy', '<leader>gY' },
config = function()
require('user.modules.editor.config.gitlinker')
end,
}
M['jbyuki/venn.nvim'] = { cmd = 'VBox' }
M['lewis6991/gitsigns.nvim'] = {
event = { 'BufRead', 'BufNewFile' },
wants = {
'plenary.nvim',
'vim-repeat'
},
config = function()
require('user.modules.editor.config.gitsigns')
end,
}
M['ggandor/leap.nvim'] = {
wants = 'vim-repeat',
keys = {
{ 'n', '-' },
{ 'n', '_' },
{ 'x', '-' },
{ 'x', '_' },
{ 'o', '-' },
{ 'o', '_' },
{ 'o', 'x' },
{ 'o', 'X' },
},
config = function()
require('user.modules.editor.config.leap')
end,
}
M['ggandor/flit.nvim'] = {
wants = "leap.nvim",
keys = {
{ 'n', 'f' },
{ 'n', 'F' },
{ 'n', 't' },
{ 'n', 'T' },
{ 'o', 'f' },
{ 'o', 'F' },
{ 'o', 't' },
{ 'o', 'T' },
{ 'x', 'f' },
{ 'x', 'F' },
{ 'x', 't' },
{ 'x', 'T' },
},
config = function()
require('user.modules.editor.config.flit')
end,
}
return M