chore: move plugins to init.lua or per-plugin files
This commit is contained in:
parent
13a695c846
commit
47d786ff47
44
init.lua
44
init.lua
|
@ -24,6 +24,50 @@ require 'autocmd'
|
||||||
require 'keymaps'
|
require 'keymaps'
|
||||||
|
|
||||||
require('lazy').setup({
|
require('lazy').setup({
|
||||||
|
{
|
||||||
|
-- NOTE: Theme
|
||||||
|
'sainnhe/gruvbox-material',
|
||||||
|
priority = 1000,
|
||||||
|
lazy = false,
|
||||||
|
config = function()
|
||||||
|
vim.g.gruvbox_material_background = 'soft'
|
||||||
|
vim.g.gruvbox_material_better_performance = 1
|
||||||
|
vim.g.gruvbox_material_enable_italic = 1
|
||||||
|
|
||||||
|
vim.cmd.colorscheme 'gruvbox-material'
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- NOTE: First, some plugins that don't require any configuration
|
||||||
|
|
||||||
|
-- Git related plugins
|
||||||
|
'tpope/vim-fugitive',
|
||||||
|
'tpope/vim-rhubarb',
|
||||||
|
|
||||||
|
-- Detect tabstop and shiftwidth automatically
|
||||||
|
'tpope/vim-sleuth',
|
||||||
|
|
||||||
|
-- NOTE: Second, plugins that require setup call (done via opts)
|
||||||
|
|
||||||
|
-- Useful plugin to show you pending keybinds.
|
||||||
|
{ 'folke/which-key.nvim', opts = {} },
|
||||||
|
|
||||||
|
-- "gc" to comment visual regions/lines
|
||||||
|
{ 'numToStr/Comment.nvim', opts = {} },
|
||||||
|
|
||||||
|
-- colorize in files
|
||||||
|
{ 'norcalli/nvim-colorizer.lua', opts = {} },
|
||||||
|
|
||||||
|
-- autopairs on newline
|
||||||
|
{ 'windwp/nvim-autopairs', opts = {} },
|
||||||
|
|
||||||
|
-- highlighting for comments
|
||||||
|
{ 'folke/todo-comments.nvim', dependencies = 'nvim-lua/plenary.nvim', opts = {} },
|
||||||
|
|
||||||
|
-- cargo crates
|
||||||
|
{ 'saecki/crates.nvim', dependencies = 'nvim-lua/plenary.nvim', opts = {} },
|
||||||
|
|
||||||
|
-- import other plugins
|
||||||
{ import = 'plugins' },
|
{ import = 'plugins' },
|
||||||
}, {})
|
}, {})
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
return {
|
||||||
|
'projekt0n/circles.nvim',
|
||||||
|
dependencies = { 'nvim-tree/nvim-web-devicons' },
|
||||||
|
opts = {
|
||||||
|
icons = { empty = '●', filled = '○', lsp_prefix = '●' },
|
||||||
|
},
|
||||||
|
}
|
|
@ -1,148 +0,0 @@
|
||||||
return {
|
|
||||||
-- NOTE: Theme
|
|
||||||
{
|
|
||||||
'sainnhe/gruvbox-material',
|
|
||||||
priority = 1000,
|
|
||||||
lazy = false,
|
|
||||||
config = function()
|
|
||||||
vim.g.gruvbox_material_background = 'soft'
|
|
||||||
vim.g.gruvbox_material_better_performance = 1
|
|
||||||
vim.g.gruvbox_material_enable_italic = 1
|
|
||||||
|
|
||||||
vim.cmd.colorscheme 'gruvbox-material'
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- NOTE: First, some plugins that don't require any configuration
|
|
||||||
|
|
||||||
-- Git related plugins
|
|
||||||
'tpope/vim-fugitive',
|
|
||||||
'tpope/vim-rhubarb',
|
|
||||||
|
|
||||||
-- Detect tabstop and shiftwidth automatically
|
|
||||||
'tpope/vim-sleuth',
|
|
||||||
|
|
||||||
-- NOTE: Second, plugins that require setup call (done via opts)
|
|
||||||
|
|
||||||
-- Useful plugin to show you pending keybinds.
|
|
||||||
{ 'folke/which-key.nvim', opts = {} },
|
|
||||||
|
|
||||||
-- "gc" to comment visual regions/lines
|
|
||||||
{ 'numToStr/Comment.nvim', opts = {} },
|
|
||||||
|
|
||||||
-- colorize in files
|
|
||||||
{ 'norcalli/nvim-colorizer.lua', opts = {} },
|
|
||||||
|
|
||||||
-- autopairs on newline
|
|
||||||
{ 'windwp/nvim-autopairs', opts = {} },
|
|
||||||
|
|
||||||
-- highlighting for comments
|
|
||||||
{ 'folke/todo-comments.nvim', dependencies = 'nvim-lua/plenary.nvim', opts = {} },
|
|
||||||
|
|
||||||
-- cargo crates
|
|
||||||
{ 'saecki/crates.nvim', dependencies = 'nvim-lua/plenary.nvim', opts = {} },
|
|
||||||
|
|
||||||
--
|
|
||||||
{
|
|
||||||
'stevearc/oil.nvim',
|
|
||||||
dependencies = { 'nvim-tree/nvim-web-devicons' },
|
|
||||||
config = function()
|
|
||||||
require('oil').setup()
|
|
||||||
vim.keymap.set('n', '-', require('oil').open, { desc = 'Open parent directory' })
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- newage search plugin
|
|
||||||
{
|
|
||||||
'ggandor/leap.nvim',
|
|
||||||
dependencies = { 'tpope/vim-repeat' },
|
|
||||||
config = function()
|
|
||||||
require('leap').add_default_mappings()
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- permanent links to fileranges
|
|
||||||
{
|
|
||||||
'ruifm/gitlinker.nvim',
|
|
||||||
config = function()
|
|
||||||
require('gitlinker').setup {
|
|
||||||
callbacks = {
|
|
||||||
['git.aflabs.org'] = require('gitlinker.hosts').get_gitlab_type_url,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- NOTE: Third, plugins that require some setup, but not enugh for separate file
|
|
||||||
|
|
||||||
{
|
|
||||||
-- Adds git releated signs to the gutter, as well as utilities for managing changes
|
|
||||||
'lewis6991/gitsigns.nvim',
|
|
||||||
opts = {
|
|
||||||
-- See `:help gitsigns.txt`
|
|
||||||
signs = {
|
|
||||||
add = { text = '+' },
|
|
||||||
change = { text = '~' },
|
|
||||||
delete = { text = '_' },
|
|
||||||
topdelete = { text = '‾' },
|
|
||||||
changedelete = { text = '~' },
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
-- Set lualine as statusline
|
|
||||||
'nvim-lualine/lualine.nvim',
|
|
||||||
-- See `:help lualine.txt`
|
|
||||||
opts = {
|
|
||||||
options = {
|
|
||||||
icons_enabled = false,
|
|
||||||
theme = 'gruvbox-material',
|
|
||||||
statusline_style = 'mix',
|
|
||||||
component_separators = '|',
|
|
||||||
section_separators = '',
|
|
||||||
},
|
|
||||||
sections = {
|
|
||||||
lualine_c = {
|
|
||||||
{
|
|
||||||
'filename',
|
|
||||||
file_status = true,
|
|
||||||
path = 1,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
-- Add indentation guides even on blank lines
|
|
||||||
'lukas-reineke/indent-blankline.nvim',
|
|
||||||
-- Enable `lukas-reineke/indent-blankline.nvim`
|
|
||||||
-- See `:help indent_blankline.txt`
|
|
||||||
opts = {
|
|
||||||
char = '┊',
|
|
||||||
show_trailing_blankline_indent = false,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
-- git blame annotations
|
|
||||||
'f-person/git-blame.nvim',
|
|
||||||
init = function()
|
|
||||||
-- disable on startup
|
|
||||||
vim.g.gitblame_enabled = 0
|
|
||||||
end,
|
|
||||||
config = function()
|
|
||||||
vim.api.nvim_set_keymap('n', '<leader>gt', ':GitBlameToggle<CR>', { desc = '[G]it Blame [T]oggle', noremap = true })
|
|
||||||
vim.api.nvim_set_keymap('n', '<leader>gu', ':GitBlameOpenCommitURL<CR>', { desc = '[G]it Blame Open Commit [U]rl', noremap = true })
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
'projekt0n/circles.nvim',
|
|
||||||
dependencies = { 'nvim-tree/nvim-web-devicons' },
|
|
||||||
opts = {
|
|
||||||
icons = { empty = '●', filled = '○', lsp_prefix = '●' },
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
return {
|
||||||
|
-- git blame annotations
|
||||||
|
'f-person/git-blame.nvim',
|
||||||
|
init = function()
|
||||||
|
-- disable on startup
|
||||||
|
vim.g.gitblame_enabled = 0
|
||||||
|
end,
|
||||||
|
config = function()
|
||||||
|
vim.api.nvim_set_keymap('n', '<leader>gt', ':GitBlameToggle<CR>', { desc = '[G]it Blame [T]oggle', noremap = true })
|
||||||
|
vim.api.nvim_set_keymap('n', '<leader>gu', ':GitBlameOpenCommitURL<CR>', { desc = '[G]it Blame Open Commit [U]rl', noremap = true })
|
||||||
|
end,
|
||||||
|
}
|
|
@ -0,0 +1,10 @@
|
||||||
|
return {
|
||||||
|
'ruifm/gitlinker.nvim',
|
||||||
|
config = function()
|
||||||
|
require('gitlinker').setup {
|
||||||
|
callbacks = {
|
||||||
|
['git.aflabs.org'] = require('gitlinker.hosts').get_gitlab_type_url,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
}
|
|
@ -0,0 +1,14 @@
|
||||||
|
return {
|
||||||
|
-- Adds git releated signs to the gutter, as well as utilities for managing changes
|
||||||
|
'lewis6991/gitsigns.nvim',
|
||||||
|
opts = {
|
||||||
|
-- See `:help gitsigns.txt`
|
||||||
|
signs = {
|
||||||
|
add = { text = '+' },
|
||||||
|
change = { text = '~' },
|
||||||
|
delete = { text = '_' },
|
||||||
|
topdelete = { text = '‾' },
|
||||||
|
changedelete = { text = '~' },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
|
@ -0,0 +1,10 @@
|
||||||
|
return {
|
||||||
|
-- Add indentation guides even on blank lines
|
||||||
|
'lukas-reineke/indent-blankline.nvim',
|
||||||
|
-- Enable `lukas-reineke/indent-blankline.nvim`
|
||||||
|
-- See `:help indent_blankline.txt`
|
||||||
|
opts = {
|
||||||
|
char = '┊',
|
||||||
|
show_trailing_blankline_indent = false,
|
||||||
|
},
|
||||||
|
}
|
|
@ -0,0 +1,7 @@
|
||||||
|
return {
|
||||||
|
'ggandor/leap.nvim',
|
||||||
|
dependencies = { 'tpope/vim-repeat' },
|
||||||
|
config = function()
|
||||||
|
require('leap').add_default_mappings()
|
||||||
|
end,
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
return {
|
||||||
|
'nvim-lualine/lualine.nvim',
|
||||||
|
opts = {
|
||||||
|
options = {
|
||||||
|
icons_enabled = false,
|
||||||
|
theme = 'gruvbox-material',
|
||||||
|
statusline_style = 'mix',
|
||||||
|
component_separators = '|',
|
||||||
|
section_separators = '',
|
||||||
|
},
|
||||||
|
sections = {
|
||||||
|
lualine_c = {
|
||||||
|
{
|
||||||
|
'filename',
|
||||||
|
file_status = true,
|
||||||
|
path = 1,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
|
@ -0,0 +1,8 @@
|
||||||
|
return {
|
||||||
|
'stevearc/oil.nvim',
|
||||||
|
dependencies = { 'nvim-tree/nvim-web-devicons' },
|
||||||
|
config = function()
|
||||||
|
require('oil').setup()
|
||||||
|
vim.keymap.set('n', '-', require('oil').open, { desc = 'Open parent directory' })
|
||||||
|
end,
|
||||||
|
}
|
Loading…
Reference in New Issue