diff options
| author | Your Name <you@example.com> | 2024-07-03 17:03:56 +0100 |
|---|---|---|
| committer | Your Name <you@example.com> | 2024-07-03 17:03:56 +0100 |
| commit | c959b2112fb4c82b5bfd410df21706455225bd40 (patch) | |
| tree | 6774868448d127c2f560827de8e5edbd868a2832 /lua/config/plugins.lua | |
Diffstat (limited to 'lua/config/plugins.lua')
| -rw-r--r-- | lua/config/plugins.lua | 225 |
1 files changed, 225 insertions, 0 deletions
diff --git a/lua/config/plugins.lua b/lua/config/plugins.lua new file mode 100644 index 0000000..5399333 --- /dev/null +++ b/lua/config/plugins.lua @@ -0,0 +1,225 @@ +table.insert(lvim.plugins, { + "ChristianChiarulli/swenv.nvim", + "stevearc/dressing.nvim", + + {"akinsho/toggleterm.nvim", config = true}, + + "mfussenegger/nvim-dap-python", + "nvim-neotest/neotest", + "nvim-neotest/neotest-python", + "tpope/vim-fugitive", + "tpope/vim-rhubarb", + { + 'stevearc/oil.nvim', + opts = {}, + dependencies = { "nvim-tree/nvim-web-devicons" }, + + config = function () + require("oil").setup({ + default_file_explorer = true, + }) + end + }, + { + "chrishrb/gx.nvim", + keys = { { "gx", "<cmd>Browse<cr>", mode = { "n", "x" } } }, + cmd = { "Browse" }, + init = function () + vim.g.netrw_nogx = 1 -- disable netrw gx + end, + dependencies = { "nvim-lua/plenary.nvim" }, + submodules = false, -- not needed, submodules are required only for tests + + -- you can specify also another config if you want + config = function() require("gx").setup { + open_browser_app = "xdg-open", -- specify your browser app; default for macOS is "open", Linux "xdg-open" and Windows "powershell.exe" + -- open_browser_args = { "--background" }, -- specify any arguments, such as --background for macOS' "open". + handlers = { + plugin = true, -- open plugin links in lua (e.g. packer, lazy, ..) + github = true, -- open github issues + package_json = true, -- open dependencies from package.json + search = true, -- search the web/selection on the web if nothing else is found + go = true, -- open pkg.go.dev from an import statement (uses treesitter) + }, + handler_options = { + search_engine = "https://search.brave.com/search?q=", -- or you can pass in a custom search engine + select_for_search = false, -- if your cursor is e.g. on a link, the pattern for the link AND for the word will always match. This disables this behaviour for default so that the link is opened without the select option for the word AND link + }, + } end, + }, + {"vimwiki/vimwiki", + init = function() + vim.g.vimwiki_list = { + { + path = '~/vimwiki.md/', + syntax = 'markdown', + ext = '.md', + }, + } + end + }, + {"dccsillag/magma-nvim", + -- run = ":UpdateRemotePlugins", + config = function() + vim.cmd([[nnoremap <silent> <leader>mk :MagmaInit Python3<CR> + nnoremap <silent> <leader>m :MagmaEvaluateOperator<CR> + nnoremap <silent> <leader>mm :MagmaEvaluateLine<CR> + xnoremap <silent> <leader>m :<C-u>MagmaEvaluateVisual<CR> + nnoremap <silent> <leader>mc :MagmaReevaluateCell<CR> + nnoremap <silent> <leader>md :MagmaDelete<CR> + nnoremap <silent> <leader>mo :MagmaShowOutput<CR> + nnoremap <silent> <leader>ms :MagmaSave<CR> + + let g:magma_automatically_open_output = v:false + let g:magma_image_provider = "ueberzug" + let g:magma_save_path = "~/tmp/magma" + ]]) + end, + }, + + "goerz/jupytext.vim", + "untitled-ai/jupyter_ascending.vim", + + { + 'nvim-orgmode/orgmode', + -- dependencies = { + -- { 'nvim-treesitter/nvim-treesitter', lazy = true }, + -- }, + event = 'VeryLazy', + config = function() + -- -- Load treesitter grammar for org + -- require('orgmode').setup_ts_grammar() + + -- -- Setup treesitter + -- require('nvim-treesitter.configs').setup({ + -- highlight = { + -- enable = true, + -- }, + -- ensure_installed = { 'org' }, + -- }) + + -- Setup Orgmode + require('orgmode').setup({ + org_agenda_files = '~/Orgmode/**/*', + org_default_notes_file = '~/Orgmode/refile.org', + mappings = { + org_return_uses_meta_return = true, + + }, + }) + end + }, + "kdheepak/cmp-latex-symbols", + "KeitaNakamura/tex-conceal.vim", + {"f3fora/nvim-texlabconfig", + config = function() + require("texlabconfig").setup() + end, + ft = { 'tex', 'bib' }, -- Lazy-load on filetype + build = 'go build' + }, + {"lervag/vimtex", + init = function() + + vim.cmd([[ + let g:tex_flavor = 'latex' + let g:vimtex_view_method = 'zathura' + let g:vimtex_quickfix_mode = 0 + let g:vimtex_cache_persistent = 0 + set conceallevel=1 + let g:tex_conceal = 'abdmg' + + ]]) + vim.keymap.set('i', '<C-f>', [[<Esc>: silent exec '.!inkscape-figures create "'.getline('.').'" "'.b:vimtex.root.'/figures/"'<CR><CR>:w<CR> ]]) + vim.keymap.set('n', '<C-f>', [[: silent exec '!inkscape-figures edit "'.b:vimtex.root.'/figures/" > /dev/null 2>&1 &'<CR><CR>:redraw!<CR>]]) + -- vim.api.nvim_create_autocmd("BufEnter",{ + -- callback = function() + -- vim.fn.system({ + -- "inkscape-figures", + -- "watch" + -- }) + -- end, + -- }) + end + }, + -- { + -- "xiyaowong/link-visitor.nvim", + -- config = function () + -- require("link-visitor").setup({ + -- open_cmd = nil, + -- silent = true, -- disable all prints, `false` by defaults skip_confirmation + -- skip_confirmation = false, -- Skip the confirmation step, default: false + -- border = "rounded" -- none, single, double, rounded, solid, shadow see `:h nvim_open_win()` + -- }) + -- end + -- }, + { + "vhyrro/luarocks.nvim", + priority = 1000, + opts = { + rocks = { "fzy", "pathlib.nvim", }, + }, + config = true, + + }, + "nvim-neorg/neorg-telescope", + { "nvim-neorg/neorg", + ft = "norg", + + lazy = false, -- specify lazy = false because some lazy.nvim distributions set lazy = true by default + -- dependencies = { "luarocks.nvim" }, + -- tag = "*", + dependencies = { + { "luarocks.nvim" }, + -- { 'nvim-lua/plenary.nvim' }, + { 'nvim-treesitter/nvim-treesitter' }, + { 'nvim-neorg/tree-sitter-norg' }, + { 'nvim-treesitter/nvim-treesitter-textobjects' }, + { 'hrsh7th/nvim-cmp' }, + { 'nvim-neorg/neorg-telescope' }, + { 'tamton-aquib/neorg-jupyter' }, + { "pysan3/neorg-templates", dependencies = { "L3MON4D3/LuaSnip" } }, + { 'pritchett/neorg-capture' }, + { 'nvim-neorg/neorg-gtd' }, + }, + -- build = ":Neorg sync-parsers", + cmd = "Neorg", + config = function() + -- -- Setup treesitter + require('nvim-treesitter.configs').setup({ + highlight = { + enable = true, + } + }) + require("neorg").setup { + load = { + ["core.defaults"] = {}, + ["core.completion"] = { config = { engine = "nvim-cmp", name = "[Norg]" }, }, + ["core.integrations.nvim-cmp"] = {}, + ["core.integrations.telescope"] = {}, + ["core.concealer"] = { config = { icon_preset = "diamond" } }, + ["core.keybinds"] = { + config = { + default_keybinds = true, + neorg_leader = "<Leader>", + LocalLeader = "<Leader>", + }, + }, + ["core.dirman"] = { -- Manages Neorg workspaces + config = { + workspaces = { + notes = "~/Notes", + tutorial = "~/Notes/Norg-Tutorial", + uh = "~/Notes/UH", + }, + default_workspace = "notes", + use_popup = true, + }, + }, + ["core.ui.calendar"] = {}, + ["external.jupyter"] = {} + }, + } + end + }, +}) |
