2022-05-15 20:56:19 +02:00
|
|
|
local M = {}
|
|
|
|
|
2022-08-25 10:49:11 +02:00
|
|
|
|
2022-05-15 20:56:19 +02:00
|
|
|
function M.setup()
|
2022-07-19 20:19:36 +02:00
|
|
|
local paq = require("paq")
|
|
|
|
local themePackages = require("my.theme").deps
|
2022-08-24 14:58:06 +02:00
|
|
|
local base = {
|
2022-08-25 10:10:46 +02:00
|
|
|
"nvim-lua/plenary.nvim", -- async utility lib it seems?
|
2022-08-24 14:58:06 +02:00
|
|
|
"neovim/nvim-lspconfig", -- configures lsps for me
|
2022-07-19 20:19:36 +02:00
|
|
|
"windwp/nvim-autopairs", -- closes pairs for me (should look for a better one)
|
|
|
|
"nvim-telescope/telescope.nvim", -- fuzzy search for say opening files
|
|
|
|
"purescript-contrib/purescript-vim", -- purescript support
|
|
|
|
"terrortylor/nvim-comment", -- allows toggling line comments
|
|
|
|
"nvim-treesitter/nvim-treesitter-textobjects", -- the lean plugin wants me to install this, lol
|
|
|
|
-- "startup-nvim/startup.nvim", -- splash screen
|
|
|
|
"glepnir/dashboard-nvim", -- similar to startup.nvim
|
|
|
|
"kyazdani42/nvim-web-devicons", -- nice looking icons
|
|
|
|
"nvim-lualine/lualine.nvim", -- customizable status line
|
|
|
|
"kyazdani42/nvim-tree.lua", -- file tree
|
|
|
|
"lervag/vimtex", -- latex support
|
|
|
|
"jose-elias-alvarez/null-ls.nvim", -- generic language server
|
|
|
|
"nvim-telescope/telescope-file-browser.nvim", -- file creation/deletion menu
|
|
|
|
"onsails/lspkind.nvim", -- show icons in lsp completion menus
|
|
|
|
"preservim/vimux", -- interact with tmux from within vim
|
|
|
|
"christoomey/vim-tmux-navigator", -- easly switch between tmux and vim panes
|
|
|
|
"kana/vim-arpeggio", -- chord support, let"s fucking goooo
|
|
|
|
{ "andweeb/presence.nvim", run = ":DownloadUnicode" }, -- discord rich presence
|
|
|
|
"Julian/lean.nvim", -- lean support
|
|
|
|
"kmonad/kmonad-vim", -- kmonad config support
|
|
|
|
-- "LucHermitte/lh-vim-lib", -- dependency for lh-brackets
|
|
|
|
-- "LucHermitte/lh-brackets", -- kinda useless bruh, should find something better
|
|
|
|
-- Cmp related stuff
|
|
|
|
"hrsh7th/cmp-nvim-lsp", -- lsp completion
|
|
|
|
"hrsh7th/cmp-buffer", -- idr what this is
|
|
|
|
"hrsh7th/cmp-path", -- path completion ig?
|
|
|
|
"hrsh7th/cmp-cmdline", -- cmdline completion perhaps?
|
|
|
|
"hrsh7th/nvim-cmp", -- completion engine
|
|
|
|
"L3MON4D3/LuaSnip", -- snippeting engine
|
|
|
|
"saadparwaiz1/cmp_luasnip", -- snippet support for cmp
|
|
|
|
"wakatime/vim-wakatime", -- track time usage
|
|
|
|
"vmchale/dhall-vim", -- dhall syntax highlighting
|
2022-07-27 10:00:25 +02:00
|
|
|
"folke/which-key.nvim", -- shows what other keys I can press to finish a command
|
|
|
|
"psliwka/vim-smoothie", -- smooth scrolling
|
|
|
|
"easymotion/vim-easymotion", -- removes the need for spamming w or e
|
2022-08-11 12:21:41 +02:00
|
|
|
"tpope/vim-surround", -- work with brackets, quotes, tags, etc
|
|
|
|
"MunifTanjim/nui.nvim", -- ui stuff required by idris2
|
2022-08-24 13:13:35 +02:00
|
|
|
"ShinKage/idris2-nvim", -- idris2 support
|
|
|
|
"udalov/kotlin-vim", -- kotlin support
|
2022-08-24 14:58:06 +02:00
|
|
|
"haringsrob/nvim_context_vt", -- show context on closing parenthesis
|
|
|
|
"vuki656/package-info.nvim", -- shows latest versions in package.json
|
2022-08-25 11:49:19 +02:00
|
|
|
"j-hui/fidget.nvim", -- show progress for lsp stuff
|
2022-08-25 10:14:50 +02:00
|
|
|
"stevearc/dressing.nvim", -- better ui I guess
|
2022-08-25 10:26:00 +02:00
|
|
|
"rktjmp/paperplanes.nvim", -- export to pastebin like services
|
2022-08-25 10:49:11 +02:00
|
|
|
"anuvyklack/hydra.nvim", -- keybinds where you only hit the head once
|
|
|
|
"jbyuki/venn.nvim", -- draw ascii diagrams
|
2022-09-09 00:16:11 +02:00
|
|
|
"hrsh7th/cmp-omni", -- omnifunc source for cmp
|
2022-09-12 13:50:02 +02:00
|
|
|
"ekickx/clipboard-image.nvim", -- paste images from clipbaord
|
2022-08-25 10:14:50 +02:00
|
|
|
|
2022-08-24 13:13:35 +02:00
|
|
|
-- Git stuff
|
|
|
|
"ruifm/gitlinker.nvim", -- generate permalinks for code
|
|
|
|
"TimUntersberger/neogit" -- magit clone
|
2022-07-19 20:19:36 +02:00
|
|
|
}
|
2022-05-15 20:56:19 +02:00
|
|
|
|
2022-08-25 10:10:46 +02:00
|
|
|
-- This might get installed by nix!
|
|
|
|
if os.getenv("NVIM_INSTALL_TREESITTER") then
|
|
|
|
table.insert(base, 2, { "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" })
|
|
|
|
end
|
2022-09-12 13:50:02 +02:00
|
|
|
table.insert(base, 2, { "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" })
|
2022-08-24 23:10:09 +02:00
|
|
|
|
2022-07-19 20:19:36 +02:00
|
|
|
for _, v in ipairs(themePackages) do
|
|
|
|
-- append package in the base list
|
|
|
|
table.insert(base, v)
|
|
|
|
end
|
2022-05-15 20:56:19 +02:00
|
|
|
|
2022-07-19 20:19:36 +02:00
|
|
|
paq(base)
|
2022-05-15 20:56:19 +02:00
|
|
|
end
|
|
|
|
|
|
|
|
return M
|