90 lines
3.2 KiB
Lua
90 lines
3.2 KiB
Lua
-- plugins/editing.lua
|
|
|
|
return {
|
|
-- Detect tabstop and shiftwidth automatically
|
|
'tpope/vim-sleuth',
|
|
|
|
{ -- Auto pairs for brackets, quotes, etc.
|
|
'windwp/nvim-autopairs',
|
|
event = 'InsertEnter',
|
|
dependencies = { 'hrsh7th/nvim-cmp' },
|
|
config = function()
|
|
require('nvim-autopairs').setup {}
|
|
-- If you want to automatically add `(` after selecting a function or method
|
|
local cmp_autopairs = require 'nvim-autopairs.completion.cmp'
|
|
local cmp = require 'cmp'
|
|
cmp.event:on('confirm_done', cmp_autopairs.on_confirm_done())
|
|
end,
|
|
},
|
|
|
|
{ -- Adds indentation guides to all lines
|
|
'lukas-reineke/indent-blankline.nvim',
|
|
main = 'ibl',
|
|
opts = {},
|
|
},
|
|
|
|
{ -- Collection of small, useful plugins
|
|
'echasnovski/mini.nvim',
|
|
config = function()
|
|
-- Better text-objects, built-in
|
|
require('mini.ai').setup { n_lines = 500 }
|
|
-- Add/delete/replace surroundings (brackets, quotes, etc.)
|
|
require('mini.surround').setup()
|
|
end,
|
|
},
|
|
|
|
{ -- Useful plugin to show you pending keybinds.
|
|
'folke/which-key.nvim',
|
|
event = 'VimEnter', -- Sets the loading event to 'VimEnter'
|
|
opts = {
|
|
icons = {
|
|
-- set icon mappings to true if you have a Nerd Font
|
|
mappings = vim.g.have_nerd_font,
|
|
-- If you are using a Nerd Font: set icons.keys to an empty table which will use the
|
|
-- default which-key.nvim defined Nerd Font icons, otherwise define a string table
|
|
keys = vim.g.have_nerd_font and {} or {
|
|
Up = '<Up> ',
|
|
Down = '<Down> ',
|
|
Left = '<Left> ',
|
|
Right = '<Right> ',
|
|
C = '<C-…> ',
|
|
M = '<M-…> ',
|
|
D = '<D-…> ',
|
|
S = '<S-…> ',
|
|
CR = '<CR> ',
|
|
Esc = '<Esc> ',
|
|
ScrollWheelDown = '<ScrollWheelDown> ',
|
|
ScrollWheelUp = '<ScrollWheelUp> ',
|
|
NL = '<NL> ',
|
|
BS = '<BS> ',
|
|
Space = '<Space> ',
|
|
Tab = '<Tab> ',
|
|
F1 = '<F1>',
|
|
F2 = '<F2>',
|
|
F3 = '<F3>',
|
|
F4 = '<F4>',
|
|
F5 = '<F5>',
|
|
F6 = '<F6>',
|
|
F7 = '<F7>',
|
|
F8 = '<F8>',
|
|
F9 = '<F9>',
|
|
F10 = '<F10>',
|
|
F11 = '<F11>',
|
|
F12 = '<F12>',
|
|
},
|
|
},
|
|
|
|
-- Document existing key chains
|
|
spec = {
|
|
{ '<leader>c', group = '[C]ode', mode = { 'n', 'x' } },
|
|
{ '<leader>d', group = '[D]ocument' },
|
|
{ '<leader>r', group = '[R]ename' },
|
|
{ '<leader>s', group = '[S]earch' },
|
|
{ '<leader>w', group = '[W]orkspace' },
|
|
{ '<leader>t', group = '[T]oggle' },
|
|
{ '<leader>h', group = 'Git [H]unk', mode = { 'n', 'v' } },
|
|
},
|
|
},
|
|
},
|
|
}
|