186 lines
4.1 KiB
Lua
186 lines
4.1 KiB
Lua
return {
|
|
|
|
--------------------
|
|
-- LSP
|
|
--------------------
|
|
|
|
{ "williamboman/mason.nvim" },
|
|
{ "williamboman/mason-lspconfig.nvim" },
|
|
{ 'neovim/nvim-lspconfig' },
|
|
{ 'hrsh7th/cmp-nvim-lsp' },
|
|
{ 'hrsh7th/cmp-nvim-lua' },
|
|
{ 'hrsh7th/cmp-buffer' },
|
|
{ 'hrsh7th/cmp-path' },
|
|
{ 'hrsh7th/nvim-cmp' },
|
|
{ 'saadparwaiz1/cmp_luasnip' },
|
|
|
|
-- Linter
|
|
{ 'jose-elias-alvarez/null-ls.nvim',
|
|
config = function()
|
|
local nls = require("null-ls")
|
|
nls.setup({
|
|
sources = {
|
|
nls.builtins.formatting.black,
|
|
},
|
|
})
|
|
end,
|
|
},
|
|
|
|
-- Debugging
|
|
{ 'mfussenegger/nvim-dap' },
|
|
{ 'rcarriga/nvim-dap-ui', config = true },
|
|
{ "mfussenegger/nvim-dap-python" },
|
|
{ "theHamsta/nvim-dap-virtual-text", config = true },
|
|
|
|
--------------------
|
|
-- Color schemes
|
|
--------------------
|
|
|
|
{ "glepnir/oceanic-material" },
|
|
{ "savq/melange-nvim" },
|
|
{ 'ayu-theme/ayu-vim' },
|
|
-- { 'morhetz/gruvbox' },
|
|
{ 'ellisonleao/gruvbox.nvim' },
|
|
{ 'jacoborus/tender.vim' },
|
|
{ 'jpo/vim-railscasts-theme' },
|
|
{ 'rainux/vim-desert-warm-256' },
|
|
{ 'ajmwagar/vim-deus' },
|
|
{ "rebelot/kanagawa.nvim" },
|
|
|
|
--------------------
|
|
-- Utility
|
|
--------------------
|
|
|
|
-- Git
|
|
{ 'kdheepak/lazygit.nvim' },
|
|
{ 'lewis6991/gitsigns.nvim', config = {
|
|
signs = {
|
|
add = { hl = 'GitSignsAdd', text = '+', numhl = 'GitSignsAddNr', linehl = 'GitSignsAddLn' },
|
|
change = { hl = 'GitSignsChange', text = '│', numhl = 'GitSignsChangeNr', linehl = 'GitSignsChangeLn' },
|
|
delete = { hl = 'GitSignsDelete', text = '-', numhl = 'GitSignsDeleteNr', linehl = 'GitSignsDeleteLn' },
|
|
topdelete = { hl = 'GitSignsDelete', text = '‾', numhl = 'GitSignsDeleteNr', linehl = 'GitSignsDeleteLn' },
|
|
changedelete = { hl = 'GitSignsChange', text = '~', numhl = 'GitSignsChangeNr', linehl = 'GitSignsChangeLn' },
|
|
untracked = { hl = 'GitSignsAdd', text = '┆', numhl = 'GitSignsAddNr', linehl = 'GitSignsAddLn' },
|
|
},
|
|
current_line_blame = true,
|
|
show_deleted = true,
|
|
}
|
|
},
|
|
|
|
-- Sessions
|
|
{ "tpope/vim-obsession" },
|
|
|
|
-- SuperTab
|
|
{ 'ervandew/supertab' },
|
|
|
|
-- Vim-surround
|
|
{ 'tpope/vim-surround' },
|
|
|
|
-- Slime, for tmux repl-ing
|
|
{ 'jpalardy/vim-slime' },
|
|
|
|
-- Telescope, fuzzy finding
|
|
{ 'nvim-lua/plenary.nvim' },
|
|
{ 'nvim-telescope/telescope.nvim' },
|
|
{ 'nvim-telescope/telescope-fzf-native.nvim', build = 'make' },
|
|
{ "nvim-telescope/telescope-file-browser.nvim" },
|
|
|
|
-- Treesitter
|
|
{ 'nvim-treesitter/nvim-treesitter', build = ':TSUpdate' },
|
|
|
|
-- Registry history
|
|
{
|
|
"AckslD/nvim-neoclip.lua",
|
|
dependencies = {
|
|
{ 'kkharji/sqlite.lua', module = 'sqlite' },
|
|
{ 'nvim-telescope/telescope.nvim' },
|
|
},
|
|
config = {
|
|
enable_persistent_history = true,
|
|
continuous_sync = true
|
|
},
|
|
},
|
|
|
|
-- Auto pairs
|
|
{ "windwp/nvim-autopairs", config = true }, -- See `config` under https://github.com/folke/lazy.nvim#-plugin-spec
|
|
|
|
-- Comment / uncomment
|
|
{ "numToStr/Comment.nvim", config = true },
|
|
|
|
-- Git Repo Telescope
|
|
{ 'cljoly/telescope-repo.nvim' },
|
|
|
|
-- Which-Key
|
|
{
|
|
"folke/which-key.nvim",
|
|
config = true,
|
|
},
|
|
|
|
-- File Explorer
|
|
{
|
|
"nvim-neo-tree/neo-tree.nvim",
|
|
branch = "v2.x",
|
|
dependencies = {
|
|
"nvim-lua/plenary.nvim",
|
|
"nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
|
|
"MunifTanjim/nui.nvim",
|
|
},
|
|
},
|
|
|
|
-- Object Explorer
|
|
{ 'simrat39/symbols-outline.nvim',
|
|
config = {
|
|
auto_preview = true,
|
|
}
|
|
},
|
|
|
|
-- Terminal
|
|
{ 'akinsho/toggleterm.nvim',
|
|
version = "*",
|
|
config = {
|
|
open_mapping = [[<c-\>]],
|
|
direction = 'horizontal'
|
|
}
|
|
},
|
|
|
|
--------------------
|
|
-- Aesthetics
|
|
--------------------
|
|
|
|
-- status line
|
|
{ 'nvim-lualine/lualine.nvim' },
|
|
|
|
-- Devicons
|
|
{ 'nvim-tree/nvim-web-devicons' },
|
|
|
|
-- Indent lines
|
|
{ "lukas-reineke/indent-blankline.nvim" },
|
|
|
|
-- Cursor line
|
|
{ 'yamatsum/nvim-cursorline',
|
|
config =
|
|
{
|
|
cursorline = {
|
|
enable = true,
|
|
timeout = 0,
|
|
number = true,
|
|
},
|
|
cursorword = {
|
|
enable = false,
|
|
}
|
|
}
|
|
},
|
|
|
|
-- Greeter
|
|
{
|
|
'goolord/alpha-nvim',
|
|
dependencies = { 'nvim-tree/nvim-web-devicons' },
|
|
-- config = function(},
|
|
-- require 'alpha'.setup(require 'alpha.themes.startify'.config},
|
|
-- end
|
|
},
|
|
|
|
-- Scroll bar
|
|
-- { 'petertriho/nvim-scrollbar', config = true },
|
|
}
|