2022-10-10 22:12:27 +00:00
-- vim: foldlevel=1 foldmethod=marker
2022-08-31 16:15:32 +00:00
--
-- TODO: interesting plugins to install
-- - neovim minisurround to replace vim-surround
2022-09-09 18:52:07 +00:00
--
-- #### notes on Lua and requiring modules
-- https://github.com/wbthomason/packer.nvim/issues/955
-- - when you require(...) a file in lua, it gets cached, so future require calls don't hit the filesystem.
-- This means reloading your lua config won't apply any changes because the old files are cached.
-- - Cached required modules are stored in `package.loaded` table
-- - for example if `require("foo.bar")` was issued it's cache would be in
-- `package.loaded["foo.bar"]`
--
-- - to remove the cached module
--
-- lua << EOF
--
-- for k, v in pairs(package.loaded) do
-- if string.match(k, "^my_lua_config") then
-- package.loaded[k] = nil
-- end
-- end
--
-- EOF
--
-- #### Proper way to reload packer while picking up all changes from configs/setup
-- - Remove the cached module using package.loaded["foo.bar"] = nil
-- - Execute :PackerCompile
--
-- This doesn't seem to work:
-- - XXX ~~Reload all lua modules with `"pleanery.reload".reload_module(mod)`~~ XXX
2022-08-27 03:09:00 +00:00
2022-08-20 14:06:49 +00:00
return {
2022-09-29 20:04:39 +00:00
2022-10-13 00:50:18 +00:00
-- My Plugins
[ " ~/.config/nvim/my_packages/perproject " ] = { -- {{{
opt = true ,
after = { " nvim-lspconfig " , " navigator.lua " } ,
require = { " nvim-lspconfig " , " navigator.lua " } ,
config = function ( )
require ( " perproject " ) . setup ( )
-- callbacks = {
-- foo = function()
-- print("FOO")
-- end
-- }
-- })
2022-09-10 07:58:26 +00:00
end
2022-10-13 00:50:18 +00:00
} , -- }}}
-- treesitter
[ " nvim-treesitter/nvim-treesitter " ] = { -- {{{
2022-12-05 13:44:06 +00:00
commit = " 4f8b2480 " , -- pin to latest working commit
2022-10-13 00:50:18 +00:00
-- custom config in chadrc -> custom.configs.treesitter
setup = function ( )
require ( " core.lazy_load " ) . on_file_open " nvim-treesitter "
require ( " core.lazy_load " ) . on_file_open " nvim-treesitter-textobjects "
2022-10-19 13:36:36 +00:00
-- require("core.lazy_load").on_file_open "nvim-treesitter-textsubjects"
2022-10-13 00:50:18 +00:00
require ( " core.lazy_load " ) . on_file_open " nvim-treesitter-context "
2022-10-19 13:36:36 +00:00
require ( " core.lazy_load " ) . on_file_open " syntax-tree-surfer "
2022-10-13 00:50:18 +00:00
-- require("core.lazy_load").on_file_open "nvim-ts-rainbow"
end ,
} ,
[ " nvim-treesitter/nvim-treesitter-textobjects " ] = {
opt = true ,
} ,
2022-10-19 13:36:36 +00:00
-- ["RRethy/nvim-treesitter-textsubjects"] = {
-- opt = true,
-- },
[ " ziontee113/syntax-tree-surfer " ] = {
2022-10-13 00:50:18 +00:00
opt = true ,
2022-10-19 13:36:36 +00:00
config = function ( )
require ( " syntax-tree-surfer " ) . setup ( )
end
2022-10-13 00:50:18 +00:00
} ,
-- Treesitter dev/exploration tool
[ " nvim-treesitter/playground " ] = {
opt = true ,
2022-10-25 21:34:44 +00:00
cmd = { " TSPlayground* " } ,
2022-10-13 00:50:18 +00:00
} ,
[ " nvim-treesitter/nvim-treesitter-context " ] = {
opt = true ,
config = function ( )
require ( " custom.plugins.configs.treesitter-context " ) . setup ( )
end
} , -- }}}
-- autocomplete
[ " hrsh7th/cmp-buffer " ] = { -- {{{
config = function ( )
local disabled_ft = {
" guihua " ,
" clap_input " ,
" guihua_rust, " ,
" TelescopePrompt "
}
require ( " cmp " ) . setup.buffer {
enabled = function ( )
for _ , v in ipairs ( disabled_ft ) do
if vim.o . ft == v then return false end
end
return true
end
}
end
} , -- }}}
2023-01-28 03:01:20 +00:00
[ " hrsh7th/cmp-copilot " ] = {
after = " copilot.vim "
} ,
-- Code Refactoring
[ " ThePrimeagen/refactoring.nvim " ] = {
setup = function ( )
require ( " core.utils " ) . load_mappings " refactoring "
end ,
config = function ( )
require ( " custom.plugins.configs.refactoring " ) . setup ( )
end ,
after = { " telescope.nvim " } ,
requires = {
{ " nvim-lua/pleanery.nvim " } ,
{ " nvim-treesitter/nvim-treesitter " }
}
} ,
-- AI/Deep Learning Helpers
-- Github Copilot
[ " github/copilot.vim " ] = {
opt = true ,
keys = { " <leader>gpt " } ,
setup = function ( )
require ( " core.utils " ) . load_mappings " copilot "
end
} ,
2023-01-30 21:00:16 +00:00
[ " MunifTanjim/nui.nvim " ] = {
module = { " nui.layout " , " nui.popup " } ,
module_pattern = { " nui.* " }
} ,
2023-01-28 03:01:20 +00:00
[ " jackMort/ChatGPT.nvim " ] = {
opt = true ,
2023-01-30 21:00:16 +00:00
keys = { " <leader>gpt " } ,
module_pattern = { " chatgpt* " } ,
after = { " nui.nvim " , " telescope.nvim " } ,
setup = function ( )
require ( " custom.plugins.configs.chat-gpt " ) . load_api_key ( )
end ,
2023-01-28 03:01:20 +00:00
config = function ( )
2023-01-30 21:00:16 +00:00
require ( " custom.plugins.configs.chat-gpt " ) . setup ( )
2023-01-28 03:01:20 +00:00
end ,
requires = {
" MunifTanjim/nui.nvim " ,
" nvim-lua/plenary.nvim " ,
" nvim-telescope/telescope.nvim "
}
} ,
2022-10-13 00:50:18 +00:00
-- snippets
[ " honza/vim-snippets " ] = { -- {{{
module = { " cmp " , " cmp_nvim_lsp " } ,
event = " InsertEnter " ,
} ,
[ " L3MON4D3/LuaSnip " ] = {
lock = false ,
2022-10-19 13:36:36 +00:00
module = " luasnip " ,
config = function ( ) -- overriding default nvchad config here
2022-10-13 00:50:18 +00:00
-- load default config first
2022-10-16 23:50:45 +00:00
require ( " custom.plugins.configs.luasnip " ) . setup ( )
2022-10-13 00:50:18 +00:00
2022-10-19 13:36:36 +00:00
vim.g . my_snippets_paths = { vim.fn . stdpath ( ' config ' ) .. ' /mysnippets ' }
2022-10-13 00:50:18 +00:00
require ( " luasnip " ) . filetype_extend ( " markdown " , { " markdown_zk " } )
-- load snippets from "honza/vim-snippets"
-- includes ultisnips and snipmate snippets
2022-10-16 23:50:45 +00:00
-- default priority for snipmate is 1000
require ( " luasnip.loaders.from_snipmate " ) . lazy_load ( { override_priority = 500 } )
2022-10-13 00:50:18 +00:00
require ( " luasnip.loaders.from_snipmate " ) . lazy_load {
paths = vim.g . my_snippets_paths ,
2022-10-16 23:50:45 +00:00
override_priority = 600
2022-10-13 00:50:18 +00:00
}
2022-10-19 13:36:36 +00:00
-- my luasnip snippets
require ( " luasnip.loaders.from_lua " ) . lazy_load {
paths = vim.g . my_snippets_paths ,
override_priority = 2000 , -- highest priority for my luasnips
}
2022-10-13 00:50:18 +00:00
end
} , -- }}}
-- text formatting
2022-12-05 13:44:06 +00:00
--
[ " dhruvasagar/vim-table-mode " ] = {
opt = true ,
cmd = { " TableModeToggle " } ,
} ,
2022-10-13 00:50:18 +00:00
[ " folke/todo-comments.nvim " ] = { -- {{{
2022-11-08 23:17:51 +00:00
-- commit = "6124066",
2022-12-16 01:38:51 +00:00
-- after = "nvim-treesitter",
2022-11-01 22:10:02 +00:00
setup = function ( )
-- require("core.lazy_load").on_file_open "todo-comments"
require ( " core.utils " ) . load_mappings " todo-comments "
end ,
2022-10-13 00:50:18 +00:00
config = function ( )
require ( " custom.plugins.configs.todo-comments " ) . setup ( )
end
} ,
[ " tpope/vim-surround " ] = { } ,
[ " godlygeek/tabular " ] = {
lcmd = " Tabularize "
} , -- }}}
-- ["p00f/nvim-ts-rainbow"] = {
-- opt = true,
-- },
2022-12-16 01:38:51 +00:00
2022-10-13 00:50:18 +00:00
-- dap
[ " mfussenegger/nvim-dap " ] = { -- {{{
lock = true ,
module = " dap " ,
setup = function ( )
require ( " core.utils " ) . load_mappings " dap "
require ( ' spike.dap ' ) . setup ( )
end ,
config = function ( )
require ( " custom.plugins.configs.dap " ) . setup ( )
end
} ,
[ " rcarriga/nvim-dap-ui " ] = {
2023-01-28 03:01:20 +00:00
-- tag = "*",
commit = " 1e21b3b " ,
2022-10-13 00:50:18 +00:00
after = " nvim-dap " ,
config = function ( )
require ( ' custom.plugins.configs.dapui ' ) . setup ( )
end
} ,
[ " theHamsta/nvim-dap-virtual-text " ] = {
lock = true ,
2022-10-19 13:36:36 +00:00
after = " nvim-dap " ,
config = function ( )
require ( " nvim-dap-virtual-text " ) . setup ( {
2022-10-25 21:34:44 +00:00
enabled = true , -- enable this plugin (the default)
enabled_commands = true , -- create commands DapVirtualTextEnable, DapVirtualTextDisable, DapVirtualTextToggle, (DapVirtualTextForceRefresh for refreshing when debug adapter did not notify its termination)
highlight_changed_variables = true , -- highlight changed values with NvimDapVirtualTextChanged, else always NvimDapVirtualText
highlight_new_as_changed = false , -- highlight new variables in the same way as changed variables (if highlight_changed_variables)
show_stop_reason = true , -- show stop reason when stopped for exceptions
commented = false , -- prefix virtual text with comment string
only_first_definition = true , -- only show virtual text at first definition (if there are multiple)
all_references = false , -- show virtual text on all all references of the variable (not only definitions)
2022-10-19 13:36:36 +00:00
filter_references_pattern = ' <module ' , -- filter references (not definitions) pattern when all_references is activated (Lua gmatch pattern, default filters out Python modules)
-- experimental features:
2022-10-25 21:34:44 +00:00
virt_text_pos = ' eol ' , -- position of virtual text, see `:h nvim_buf_set_extmark()`
all_frames = true , -- show virtual text for all stack frames not only current. Only works for debugpy on my machine.
virt_lines = false , -- show virtual lines instead of virtual text (will flicker!)
virt_text_win_col = 80 -- position the virtual text at a fixed window column (starting from the first text column) ,
-- e.g. 80 to position at column 80, see `:h nvim_buf_set_extmark()`
} )
2022-10-19 13:36:36 +00:00
end
2022-10-13 00:50:18 +00:00
} , -- }}}
-- User Interface / UX
2022-11-13 17:34:52 +00:00
[ " stevearc/dressing.nvim " ] = {
config = function ( )
require ( " custom.plugins.configs.dressing " ) . setup ( )
end
} ,
2022-10-13 00:50:18 +00:00
-- allows to preview commands after they are registerd by plugin
-- the current registerd norm command works by first selecting a visual selection
-- then doing the changes, it's an enhanced multi cursor
[ " smjonas/live-command.nvim " ] = {
cmd = require ( " custom.plugins.configs.live-command " ) . get_cmds ( ) ,
opt = true ,
config = function ( )
require ( " custom.plugins.configs.live-command " ) . setup ( )
end
} ,
[ " folke/which-key.nvim " ] = { -- {{{
lock = true ,
disable = false ,
keys = { " <leader> " , " <BS> " , " <Space> " , " \" " , " ` " , " ' " , " z " , " g " }
} ,
2022-12-16 01:38:51 +00:00
-- scren saver
[ " folke/drop.nvim " ] = {
opt = true ,
config = function ( )
require ( " drop " ) . setup ( )
end
} ,
2022-10-13 00:50:18 +00:00
-- repeat operator for plugin commands
[ " tpope/vim-repeat " ] = {
keys = { " . " } ,
} ,
[ " nvim-telescope/telescope.nvim " ] = {
-- lock = true,
disable = false ,
} ,
[ " tom-anders/telescope-vim-bookmarks.nvim " ] = {
opt = true ,
module = " telescope " ,
after = { " telescope.nvim " , " vim-bookmarks " } ,
-- cmd = "Telescope",
-- requires = "vim-bookmarks",
-- after = {"vim-bookmarks", "telescope"},
-- module = "telescope",
config = function ( )
require ( " telescope " ) . load_extension ( " vim_bookmarks " )
end
} ,
[ " nvim-telescope/telescope-fzf-native.nvim " ] = {
opt = true ,
module = " telescope " ,
after = { " telescope.nvim " } ,
run = ' cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release && cmake --install build --prefix build ' ,
} ,
[ " ibhagwan/fzf-lua " ] = {
lock = true ,
after = " ui " ,
2023-01-28 03:01:20 +00:00
eonfig = function ( )
2022-10-13 00:50:18 +00:00
require ( " custom.plugins.configs.fzflua " )
require ( " plugins.configs.others " ) . devicons ( )
end ,
setup = function ( )
require ( " core.utils " ) . load_mappings " fzf_lua "
end
} , -- }}}
-- Theme customization
[ " uga-rosa/ccc.nvim " ] = { -- {{{{{{
2023-01-28 03:01:20 +00:00
-- commit = "427471b",
2022-10-13 00:50:18 +00:00
cmd = { " Ccc* " , " <Plug>(ccc-insert) " } ,
setup = function ( )
require ( " core.utils " ) . load_mappings " ccc "
end ,
config = function ( )
require ( " ccc " ) . setup ( { } )
end
} , -- }}}}}}
-- navigation / jumping / buffer modification
-- ["justinmk/vim-sneak"] = {
-- lock = true,
-- keys = {"s", "S"},
-- },
[ " ggandor/leap.nvim " ] = { -- {{{
config = function ( )
require " custom.plugins.configs.leap "
end
} , -- }}}
2022-09-29 20:04:39 +00:00
2022-11-05 18:46:15 +00:00
[ " cbochs/grapple.nvim " ] = {
2023-01-28 03:01:20 +00:00
-- commit = "50b8271",
2022-11-05 18:46:15 +00:00
setup = function ( )
require ( " core.utils " ) . load_mappings " grapple "
end ,
config = function ( )
2023-01-28 03:01:20 +00:00
require ( ' custom.plugins.configs.grapple ' ) . setup ( )
2022-11-05 18:46:15 +00:00
end
} ,
2022-10-13 00:50:18 +00:00
-- tmux helpers
[ " christoomey/vim-tmux-navigator " ] = {
cond = function ( )
return vim.env . TMUX ~= nil
end
} ,
2022-10-13 14:42:00 +00:00
[ " https://git.sp4ke.xyz/sp4ke/vim-vimux " ] = {
2022-10-25 21:34:44 +00:00
cond = function ( )
return vim.env . TMUX ~= nil
end ,
setup = function ( )
require ( " core.utils " ) . load_mappings " vimux "
-- vim.g.VimuxDebug = 1
vim.g . VimuxHeight = 20
end
} ,
2022-10-09 15:29:39 +00:00
2022-10-13 00:50:18 +00:00
-- Job management (use nvim startjob )
-- Run async commands (make & errors)
-- TODO: replace with https://github.com/skywind3000/asynctasks.vim
2022-11-08 23:17:51 +00:00
2022-10-13 00:50:18 +00:00
[ " skywind3000/asyncrun.vim " ] = { -- {{{
lock = true ,
cmd = " AsyncRun " ,
setup = function ( )
require ( " core.utils " ) . load_mappings " asyncrun "
vim.g . asyncrun_open = 8
end
} , -- }}}
2022-11-01 22:10:02 +00:00
-- TODO: asynctsks vs overseer: task runner and job management
2022-11-13 17:34:52 +00:00
-- NOTE: asynctasks uses AsyncRun !!
[ " stevearc/overseer.nvim " ] = {
cmd = { " Overseer* " } ,
setup = function ( )
require ' core.utils ' . load_mappings ' overseer '
end ,
config = function ( )
require ( " custom.plugins.configs.overseer " ) . setup ( )
end ,
} ,
2022-11-01 22:10:02 +00:00
2022-10-13 00:50:18 +00:00
-- Git
2022-10-25 21:34:44 +00:00
[ " lewis6991/gitsigns.nvim " ] = {
ft = " gitcommit " ,
setup = function ( )
require ( " core.lazy_load " ) . gitsigns ( )
end ,
config = function ( )
require ( " custom.plugins.configs.gitsigns " ) . setup ( )
end ,
} ,
2022-10-13 00:50:18 +00:00
[ " tpope/vim-fugitive " ] = {
cmd = { " G " , " Git " , " G* " }
} ,
2022-10-17 21:03:57 +00:00
[ " sindrets/diffview.nvim " ] = {
2022-10-25 21:34:44 +00:00
requires = { " nvim-lua/plenary.nvim " } ,
after = { " plenary.nvim " } ,
2022-10-25 00:13:21 +00:00
config = function ( )
require ( " diffview " ) . setup ( {
enhanced_diff_hl = true ,
} )
end
2022-10-17 21:03:57 +00:00
} ,
2022-10-13 00:50:18 +00:00
-- session and view
2022-11-08 23:17:51 +00:00
2022-10-13 00:50:18 +00:00
[ " vim-scripts/restore_view.vim " ] = { } , -- TODO: check if still needed
-- ["rmagatti/auto-session"] = {
-- config = function ()
-- require("auto-session").setup {
-- log_level = "error",
-- auto_session_suppress_dirs = {"~/", "~/projects", "/"},
-- auto_save_enabled = false,
-- }
-- end
-- },
2022-09-01 01:32:15 +00:00
--
2022-10-13 00:50:18 +00:00
-- Misc / General plugins
-- Read info files
[ " https://gitlab.com/HiPhish/info.vim.git " ] = { -- {{{{{{
cmd = " Info " ,
} , -- }}}}}}
2022-11-13 17:34:52 +00:00
-- options are defined in plugin/globals.vim
2022-10-13 00:50:18 +00:00
[ " MattesGroeger/vim-bookmarks " ] = { -- {{{
config = function ( )
require ( " core.utils " ) . load_mappings " vim_bookmarks "
2022-09-01 01:32:15 +00:00
end
2022-10-13 00:50:18 +00:00
} , -- }}}
-- create new vim modes
[ " Iron-E/nvim-libmodal " ] = { -- {{{
lock = true ,
} , -- }}}
-- get rid of bad habits
-- ["ja-ford/delaytrain.nvim"] = {
[ " ~/src/delaytrain.nvim " ] = {
config = function ( )
require ( ' delaytrain ' ) . setup ( {
delay_ms = 1000 , -- How long repeated usage of a key should be prevented
grace_period = 1 , -- How many repeated keypresses are allowed
keys = { -- Which keys (in which modes) should be delayed
2022-10-25 21:34:44 +00:00
[ ' n ' ] = { ' h ' , ' j ' , ' k ' , ' l ' } ,
-- ['nvi'] = { '<Left>', '<Down>', '<Up>', '<Right>' },
} ,
ignore_filetypes = {
" qf " ,
" NvimTree " ,
" help " ,
" qf " ,
" netrw " ,
" neorepl " ,
" dapui* " ,
" mason " ,
" guihua* " ,
" terminal* " ,
2022-11-05 18:46:15 +00:00
" db* " ,
" aerial* " ,
2023-01-28 03:01:20 +00:00
" grapple " ,
2022-10-25 21:34:44 +00:00
} ,
} )
2022-10-13 00:50:18 +00:00
end
} ,
-- ["takac/vim-hardtime"] = {-- {{{
-- -- keys = { "h", "j", "k", "l" },
-- setup = function()
-- vim.g.hardtime_default_on = 1
-- vim.g.hardtime_showmsg = 1
-- vim.g.list_of_normal_keys = {"h","j","k","l"}
-- vim.g.list_of_visual_keys = {"h","j","k","l"}
-- vim.g.hardtime_ignore_quickfix = 1
-- vim.g.hardtime_ignore_buffer_patterns = {
-- "NERD.*",
-- "netrw",
-- "TelescopePrompt",
-- "fugitive",
-- "guihua*",
-- }
-- vim.g.hardtime_maxcount = 2
-- end,
-- },-- }}}
-- ["chentoast/marks.nvim"] = {
-- opt = true,
-- keys = {"m", "d"},
-- cmd = {"Marks*", "Bookmarks*"},
-- config = function ()
-- require("custom.plugins.configs.marks").setup()
-- end
-- },
-- ------------------
-- LSP
-- ------------------
[ " neovim/nvim-lspconfig " ] = { -- {{{
2022-10-25 00:13:21 +00:00
after = { " neodev.nvim " , " mason.nvim " , " mason-lspconfig.nvim " } ,
2022-10-13 00:50:18 +00:00
module = { " lspconfig " } ,
lock = false ,
config = function ( )
require ( " plugins.configs.lspconfig " ) . setup ( )
end
} ,
[ " williamboman/mason-lspconfig.nvim " ] = {
lock = false ,
requires = { " williamboman/mason.nvim " , " nvim-lspconfig " } ,
-- after = "mason.nvim",
module = { " mson-lspconfig.nvim " , " mason.nvim " } ,
config = function ( )
require ( " mason-lspconfig " ) . setup ( { } )
end ,
} ,
[ " ray-x/guihua.lua " ] = {
2022-11-01 22:10:02 +00:00
lock = true ,
2022-10-13 00:50:18 +00:00
module = { " navigator " } ,
run = " cd lua/fzy && make " ,
config = function ( )
require ( " guihua.maps " ) . setup {
maps = {
close_view = " <C-x> " ,
}
}
end
} ,
-- ["https://git.sp4ke.xyz/sp4ke/navigator.lua"] =
--
[ " ray-x/navigator.lua " ] = {
2022-10-25 00:13:21 +00:00
lock = false ,
2022-10-13 00:50:18 +00:00
opt = true ,
module = " navigator " ,
2022-10-25 00:13:21 +00:00
after = { " nvim-lspconfig " , " base46 " , " ui " , " mason.nvim " , " mason-lspconfig.nvim " , " neodev.nvim " } ,
2022-10-13 00:50:18 +00:00
requires = { " neovim/nvim-lspconfig " , " ray-x/guihua.lua " , " nvim-treesitter/nvim-treesitter " } ,
setup = function ( )
require ( " core.lazy_load " ) . on_file_open " navigator.lua "
end ,
config = function ( )
require ( " custom.plugins.configs.navigator " ) . setup ( )
require ( " base46 " ) . load_highlight " lsp "
2023-01-28 03:01:20 +00:00
require ( " core.utils " ) . load_mappings " navigator "
2022-10-13 00:50:18 +00:00
-- TODO: use nvchadui_lsp features manually
-- require("nvchad_ui.lsp")
end
} ,
[ " ray-x/lsp_signature.nvim " ] = {
lock = true ,
after = { " navigator.lua " } ,
config = function ( )
require ( " custom.plugins.configs.lsp_signature " ) . setup ( )
end
} , -- }}}
2023-01-30 21:01:49 +00:00
[ " jose-elias-alvarez/null-ls.nvim " ] = {
requires = { " nvim-lua/plenary.nvim " } ,
setup = function ( )
require ( ' core.utils ' ) . load_mappings ' null_ls '
end ,
config = function ( )
require ( " custom.plugins.configs.null-ls " ) . setup ( )
end ,
} ,
2022-10-13 00:50:18 +00:00
-- side panel with symbols (replaced by Navigator :LspSymbols cmd)
-- ["liuchengxu/vista.vim"] = {
-- cmd = "Vista",
-- setup = function()
-- require("core.utils").load_mappings "vista"
-- end
-- },
--
2022-10-25 00:13:21 +00:00
[ ' stevearc/aerial.nvim ' ] = {
2022-11-08 23:17:51 +00:00
-- lock = true,
2022-10-25 21:34:44 +00:00
after = { " base46 " } ,
keys = { " <Right> " } ,
cmd = { " Aerial* " } ,
2022-10-25 00:13:21 +00:00
config = function ( )
require ( " core.utils " ) . load_mappings " aerial "
2022-11-01 22:10:02 +00:00
require ( " custom.plugins.configs.aerial " ) . setup ( )
2022-10-25 00:13:21 +00:00
end
} ,
2022-10-13 00:50:18 +00:00
-- -------------------------------------------------------
-- Programming Languages Plugins
-- -------------------------------------------------------
-- -------
-- lua dev
-- -------
-- Eval Lua lines/selections
-- ["bfredl/nvim-luadev"] = {{{{
-- lock = true,
-- cmd = "Luadev",
-- keys = {
-- "<Plug>(Luadev-RunLine)",
-- "<Plug>(Luadev-Run)",
-- "<Plug>(Luadev-RunWord)",
-- "<Plug>(Luadev-Complete)",
-- },
-- setup = function()
-- local autocmd = vim.api.nvim_create_autocmd
-- autocmd("FileType", {
-- pattern = "lua",
-- callback = function ()
-- vim.keymap.set({'n', 'i'}, '<leader>r', '<Plug>(Luadev-RunLine)', {
-- desc = "Luadev RunLine"
-- })
-- end,
-- })
-- end
-- },}}}
-- power Repl {{{
[ " hkupty/iron.nvim " ] = {
loack = true ,
cmd = { " Iron* " } ,
setup = function ( )
require ( " core.utils " ) . load_mappings " iron "
end ,
config = function ( )
require ( " custom.plugins.configs.iron " ) . setup ( )
end
} ,
-- REPL for Lua development
[ " ii14/neorepl.nvim " ] = {
lock = true ,
cmd = " Repl " ,
after = " nvim-cmp " ,
config = function ( )
local autocmd = vim.api . nvim_create_autocmd
autocmd ( " FileType " , {
pattern = " neorepl " ,
callback = function ( )
require ( ' cmp ' ) . setup.buffer ( { enabled = false } )
-- custom keymap example
-- activate corresponding section in mappings
-- mappings = require("custom.utils").set_plugin_mappings "neorepl"
end
} )
end
} ,
-- Lua dev env
-- check setup in configs/navigator.lua
2022-10-25 00:13:21 +00:00
-- ["folke/lua-dev.nvim"] = {
-- lock = true,
-- module = "lua-dev",
-- }, -- }}}
-- neodev (replaces lua-dev)
[ " folke/neodev.nvim " ] = {
-- commit = "d6212c1"
-- module = "neodev",
} ,
[ " hrsh7th/cmp-nvim-lua " ] = { -- NOTE: needs to be disabled for neodev
disable = true ,
} ,
2022-10-13 00:50:18 +00:00
-- golang dev
[ " ray-x/go.nvim " ] = { -- {{{
-- after = {"nvim-lspconfig", "navigator.lua", "guihua.lua"},
ft = { " go " } ,
opt = true ,
2023-01-30 21:01:49 +00:00
after = { " null-ls.nvim " } ,
2022-10-13 00:50:18 +00:00
config = function ( )
require ( " custom.plugins.configs.gonvim " ) . setup ( )
2023-01-28 03:01:20 +00:00
require ( " core.utils " ) . load_mappings " gonvim "
2022-10-13 00:50:18 +00:00
end
} , -- }}}
-- Rust dev
[ " simrat39/rust-tools.nvim " ] = { -- {{{
lock = true ,
ft = { " rust " } ,
opt = true ,
config = function ( )
require ( " custom.plugins.configs.rust-tools " ) . setup ( )
end
2022-11-01 22:10:02 +00:00
} , -- }}}
-- PlantUML
[ " aklt/plantuml-syntax " ] = {
opt = true ,
setup = function ( )
require ( " custom.plugins.configs.plantuml " ) . lazy_load_module ( )
end
} ,
[ " weirongxu/plantuml-previewer.vim " ] = {
ft = { " plantuml " } ,
} ,
[ " scrooloose/vim-slumlord " ] = {
2022-11-05 18:46:15 +00:00
opt = true ,
-- ft = {"plantuml"},
} ,
2022-09-29 20:04:39 +00:00
2022-10-25 00:13:21 +00:00
-- sql tools
-- https://github.com/tpope/vim-dadbod
-- https://github.com/kristijanhusak/vim-dadbod-ui
2022-11-05 18:46:15 +00:00
[ " tpope/vim-dadbod " ] = {
ft = " sql " ,
2022-12-16 01:38:51 +00:00
cmd = { " DBUI " } ,
2022-11-05 18:46:15 +00:00
} ,
[ " kristijanhusak/vim-dadbod-ui " ] = {
after = { " vim-dadbod " } ,
2022-11-08 23:17:51 +00:00
} ,
2022-10-25 00:13:21 +00:00
2022-11-08 23:17:51 +00:00
-- zk nvim
[ " mickael-menu/zk-nvim " ] = {
setup = function ( )
require ( " core.utils " ) . load_mappings " zk "
end ,
config = function ( )
require ( " custom.plugins.configs.zk " ) . setup ( )
end
} ,
2023-01-28 03:01:20 +00:00
-- Python
2022-12-16 01:38:23 +00:00
-- theseraus{{{
-- ["Ron89/thesaurus_query.vim"] = { },
-- setup in after/plugin/vim-lexical
2023-01-28 03:01:20 +00:00
-- requires a thesearus file like from here:
-- https://www.gutenberg.org/files/3202/files/
2022-12-16 01:38:23 +00:00
[ " preservim/vim-lexical " ] = { } , -- }}}
2022-08-20 14:06:49 +00:00
}
2023-01-28 03:01:20 +00:00