diff options
Diffstat (limited to '.config/nvim/lua')
| -rw-r--r-- | .config/nvim/lua/mappings.lua | 188 | ||||
| -rw-r--r-- | .config/nvim/lua/plugins.lua | 20 |
2 files changed, 111 insertions, 97 deletions
diff --git a/.config/nvim/lua/mappings.lua b/.config/nvim/lua/mappings.lua index 3a37584..a324d90 100644 --- a/.config/nvim/lua/mappings.lua +++ b/.config/nvim/lua/mappings.lua | |||
| @@ -5,168 +5,168 @@ | |||
| 5 | -- │▘▝ ▘▝▀▘▌ ▌ ▀▘▘ ▘▗▄▘▀▀ │ | 5 | -- │▘▝ ▘▝▀▘▌ ▌ ▀▘▘ ▘▗▄▘▀▀ │ |
| 6 | -- └────────────────────────┘ | 6 | -- └────────────────────────┘ |
| 7 | 7 | ||
| 8 | -- map helper | 8 | -- -- map helper |
| 9 | local function map(mode, lhs, rhs, opts) | 9 | -- local function map(mode, lhs, rhs, opts) |
| 10 | local options = {noremap = true, silent = true} | 10 | -- local options = {noremap = true, silent = true} |
| 11 | if opts then options = vim.tbl_extend('force', options, opts) end | 11 | -- if opts then options = vim.tbl_extend('force', options, opts) end |
| 12 | vim.api.nvim_set_keymap(mode, lhs, rhs, options) | 12 | -- vim.api.nvim_set_keymap(mode, lhs, rhs, options) |
| 13 | end | 13 | -- end |
| 14 | 14 | ||
| 15 | local cmd = vim.cmd | 15 | -- local cmd = vim.cmd |
| 16 | local M = {} | 16 | -- local M = {} |
| 17 | 17 | ||
| 18 | -- brute force deasciify everything | 18 | -- brute force deasciify everything |
| 19 | map('n', '<Leader>tc', 'TurkishDeasciifyForce()', {expr = true}) | 19 | vim.keymap.set("n", "<leader>tc", "TurkishDeasciifyForce()", { expr = true }) |
| 20 | map('x', '<Leader>tc', 'TurkishDeasciifyForce()', {expr = true}) | 20 | vim.keymap.set("n", "<leader>tctc", "TurkishDeasciifyForce() .. '_'", { expr = true }) |
| 21 | map('n', '<Leader>tctc', "TurkishDeasciifyForce() .. '_'", {expr = true}) | 21 | vim.keymap.set("x", "<leader>tc", "TurkishDeasciifyForce()", { expr = true }) |
| 22 | 22 | ||
| 23 | -- use turkish-mode to selectively deasciify | 23 | -- use turkish-mode to selectively deasciify |
| 24 | map('n', '<Leader>tr', 'TurkishDeasciify()', {expr = true}) | 24 | vim.keymap.set("n", "<Leader>tr", "TurkishDeasciify()", {expr = true}) |
| 25 | map('x', '<Leader>tr', 'TurkishDeasciify()', {expr = true}) | 25 | vim.keymap.set("n", "<Leader>trtr", "TurkishDeasciify() .. '_'", {expr = true}) |
| 26 | map('n', '<Leader>trtr', "TurkishDeasciify() .. '_'", {expr = true}) | 26 | vim.keymap.set("x", "<Leader>tr", "TurkishDeasciify()", {expr = true}) |
| 27 | 27 | ||
| 28 | -- ascii everything | 28 | -- ascii everything |
| 29 | map('n', '<Leader>rt', 'TurkishAsciify()', {expr = true}) | 29 | vim.keymap.set("n", "<Leader>rt", "TurkishAsciify()", {expr = true}) |
| 30 | map('x', '<Leader>rt', 'TurkishAsciify()', {expr = true}) | 30 | vim.keymap.set("n", "<Leader>rtrt", "TurkishAsciify() .. '_'", {expr = true}) |
| 31 | map('n', '<Leader>rtrt', "TurkishAsciify() .. '_'", {expr = true}) | 31 | vim.keymap.set("x", "<Leader>rt", "TurkishAsciify()", {expr = true}) |
| 32 | 32 | ||
| 33 | -- https://stackoverflow.com/questions/4256697/vim-search-and-highlight-but-do-not-jump | 33 | -- https://stackoverflow.com/questions/4256697/vim-search-and-highlight-but-do-not-jump |
| 34 | -- search & highlight but do not jump | 34 | -- search & highlight but do not jump |
| 35 | map('n', '*', ':keepjumps normal! mi*`i<CR>') | 35 | vim.keymap.set("n", "*", ":keepjumps normal! mi*`i<CR>") |
| 36 | map('n', '#', ':keepjumps normal! mi#`i<CR> ') | 36 | vim.keymap.set("n", "#", ":keepjumps normal! mi#`i<CR>") |
| 37 | 37 | ||
| 38 | -- save file as sudo on files that require root permission | 38 | -- save file as sudo on files that require root permission |
| 39 | map('c', 'w!!', 'execute "silent! write !sudo tee % >/dev/null" <bar> edit!<CR>', { silent = false }) | 39 | vim.keymap.set("c", "w!!", 'execute "silent! write !sudo tee % >/dev/null" <bar> edit!<CR>', { silent = false }) |
| 40 | 40 | ||
| 41 | -- replace ex mode with gq (format lines) | 41 | -- replace ex mode with gq (format lines) |
| 42 | map('n', 'Q', 'gq') | 42 | vim.keymap.set('n', 'Q', 'gq') |
| 43 | 43 | ||
| 44 | -- set formatprg to sentences, for prose | 44 | -- set formatprg to sentences, for prose |
| 45 | map('n', '<Leader>fp', ":set formatprg=~/.local/bin/sentences<CR>", { silent = false }) | 45 | vim.keymap.set('n', '<Leader>fp', ":set formatprg=~/.local/bin/sentences<CR>", { silent = false }) |
| 46 | 46 | ||
| 47 | -- replace all is aliased to S. | 47 | -- replace all is aliased to S. |
| 48 | map('n', 'S', ':%s//g<Left><Left>', { silent = false }) | 48 | vim.keymap.set('n', 'S', ':%s//g<Left><Left>', { silent = false }) |
| 49 | map('v', 'S', ':s//g<Left><Left>', { silent = false }) | 49 | vim.keymap.set('v', 'S', ':s//g<Left><Left>', { silent = false }) |
| 50 | 50 | ||
| 51 | -- jump to buffer | 51 | -- jump to buffer |
| 52 | map('n', '<Leader>b', ':ls<cr>:b<space>') | 52 | vim.keymap.set('n', '<Leader>b', ':ls<cr>:b<space>') |
| 53 | 53 | ||
| 54 | -- up and down are more logical with g.. | 54 | -- up and down are more logical with g.. |
| 55 | map('n', 'k', '(v:count == 0 ? "gk" : "k")', { expr = true }) | 55 | vim.keymap.set('n', 'k', '(v:count == 0 ? "gk" : "k")', { expr = true }) |
| 56 | map('n', 'j', '(v:count == 0 ? "gj" : "j")', { expr = true }) | 56 | vim.keymap.set('n', 'j', '(v:count == 0 ? "gj" : "j")', { expr = true }) |
| 57 | map('i', '<Up>', '<Esc>gka') | 57 | vim.keymap.set('i', '<Up>', '<Esc>gka') |
| 58 | map('i', '<Down>', '<Esc>gja') | 58 | vim.keymap.set('i', '<Down>', '<Esc>gja') |
| 59 | 59 | ||
| 60 | -- disable highlight when <leader><cr> is pressed | ||
| 61 | map('n', '<Leader><Cr>', ':noh<Cr>') | ||
| 62 | -- space used to toggle folds, now it's x (because x is d) | 60 | -- space used to toggle folds, now it's x (because x is d) |
| 63 | map('n', '<Space>', '"_x') | 61 | vim.keymap.set('n', '<Space>', '"_x') |
| 64 | 62 | ||
| 65 | -- separate cut and delete | 63 | -- separate cut and delete |
| 66 | map('n', 'x', 'd') | 64 | vim.keymap.set('n', 'x', 'd') |
| 67 | map('x', 'x', 'd') | 65 | vim.keymap.set('x', 'x', 'd') |
| 68 | map('n', 'xx', 'dd') | 66 | vim.keymap.set('n', 'xx', 'dd') |
| 69 | map('n', 'X', 'D') | 67 | vim.keymap.set('n', 'X', 'D') |
| 70 | 68 | ||
| 71 | -- change into pwd of current directory | 69 | -- change into pwd of current directory |
| 72 | map('n', '<Leader>cd', ':lcd %:p:h<CR>:pwd<CR>') | 70 | vim.keymap.set('n', '<Leader>cd', ':lcd %:p:h<CR>:pwd<CR>') |
| 73 | 71 | ||
| 74 | -- press \g and start writing prose | 72 | -- press \g and start writing prose |
| 75 | map('n', '<Leader>g', ':Goyo<CR>') | 73 | vim.keymap.set('n', '<Leader>g', ':Goyo<CR>') |
| 76 | 74 | ||
| 77 | -- call CreatePaper on word below cursor | 75 | -- call CreatePaper on word below cursor |
| 78 | map('n', '<leader>np', 'gewi[[/papers/<ESC>Ea]]<ESC>bb:call CreatePaper(expand("<cword>"))<CR>') | 76 | vim.keymap.set('n', '<leader>np', 'gewi[[/papers/<ESC>Ea]]<ESC>bb:call CreatePaper(expand("<cword>"))<CR>') |
| 79 | 77 | ||
| 80 | -- link paper | 78 | -- link paper |
| 81 | map('n', '<leader>lp', 'gewi[[/papers/<ESC>Ea]]<ESC>') | 79 | vim.keymap.set('n', '<leader>lp', 'gewi[[/papers/<ESC>Ea]]<ESC>') |
| 82 | 80 | ||
| 83 | -- call CreateReference on word below cursor | 81 | -- call CreateReference on word below cursor |
| 84 | map('n', '<leader>nr', ':call CreateReference(expand("<cword>"))<CR>') | 82 | vim.keymap.set('n', '<leader>nr', ':call CreateReference(expand("<cword>"))<CR>') |
| 85 | 83 | ||
| 86 | -- create a new note | 84 | -- create a new note |
| 87 | map('n', '<leader>nn', ':call CreateNote()<CR>') | 85 | vim.keymap.set('n', '<leader>nn', ':call CreateNote()<CR>') |
| 88 | 86 | ||
| 89 | -- :%% to get current file path | 87 | -- :%% to get current file path |
| 90 | map('c', '%%', "getcmdtype() == ':' ? expand('%:h').'/' : '%%'", { expr = true, silent = false }) | 88 | vim.keymap.set('c', '%%', "getcmdtype() == ':' ? expand('%:h').'/' : '%%'", { expr = true, silent = false }) |
| 91 | 89 | ||
| 92 | -- reselect visual selection after indent | 90 | -- reselect visual selection after indent |
| 93 | map('v', '>', '>gv') | 91 | vim.keymap.set('v', '>', '>gv') |
| 94 | map('v', '<', '<gv') | 92 | vim.keymap.set('v', '<', '<gv') |
| 95 | 93 | ||
| 96 | -- keep cursor position after visual yank | 94 | -- keep cursor position after visual yank |
| 97 | map('v', 'y', 'myy`y') | 95 | vim.keymap.set('v', 'y', 'myy`y') |
| 98 | map('v', 'Y', 'myY`y') | 96 | vim.keymap.set('v', 'Y', 'myY`y') |
| 99 | 97 | ||
| 100 | -- plug mappings {{{ -- | 98 | -- plug mappings {{{ -- |
| 101 | 99 | -- New vim.keymap.set handles Plug mappings, I think, remove this paragraph if nothing breaks in the upcoming days | |
| 102 | -- <Plug> mappings should not be noremap | 100 | -- -- <Plug> mappings should not be noremap |
| 103 | -- https://www.reddit.com/r/vim/comments/78izt4/please_help_understand_how_to_use_plug_mapping/ | 101 | -- -- https://www.reddit.com/r/vim/comments/78izt4/please_help_understand_how_to_use_plug_mapping/ |
| 104 | local function plugmap(mode, lhs, rhs, opts) | 102 | -- local function plugmap(mode, lhs, rhs, opts) |
| 105 | local options = {noremap = false, silent = true} | 103 | -- local options = {noremap = false, silent = true} |
| 106 | if opts then options = vim.tbl_extend('force', options, opts) end | 104 | -- if opts then options = vim.tbl_extend('force', options, opts) end |
| 107 | vim.api.nvim_set_keymap(mode, lhs, rhs, options) | 105 | -- vim.api.nvim_set_keymap(mode, lhs, rhs, options) |
| 108 | end | 106 | -- end |
| 109 | |||
| 110 | -- open the TagBar Plugin | ||
| 111 | plugmap('n', '<F3>', ':TagbarToggle<CR>') | ||
| 112 | 107 | ||
| 113 | -- sneak using grave, s is for sandwich | 108 | -- sneak using grave, s is for sandwich |
| 114 | plugmap('n', '`', '<Plug>Sneak_s') | 109 | vim.keymap.set('n', '`', '<Plug>Sneak_s') |
| 115 | plugmap('n', '`', '<Plug>Sneak_s') | 110 | vim.keymap.set('n', '`', '<Plug>Sneak_s') |
| 116 | plugmap('n', '<Leader>`', '<Plug>Sneak_S') | 111 | vim.keymap.set('n', '<Leader>`', '<Plug>Sneak_S') |
| 117 | map('n', "'", '`') | 112 | vim.keymap.set('n', "'", '`') |
| 118 | 113 | ||
| 119 | -- use the special yoink paste that rotates | 114 | -- use the special yoink paste that rotates |
| 120 | plugmap('n', 'p', '<Plug>(YoinkPaste_p)') | 115 | vim.keymap.set('n', 'p', '<Plug>(YoinkPaste_p)') |
| 121 | plugmap('n', 'P', '<Plug>(YoinkPaste_P)') | 116 | vim.keymap.set('n', 'P', '<Plug>(YoinkPaste_P)') |
| 122 | 117 | ||
| 123 | -- substitute from yank | 118 | -- substitute from yank |
| 124 | plugmap('n', '<Leader>ys', '<plug>(SubversiveSubstitute)') | 119 | vim.keymap.set('n', '<Leader>ys', '<plug>(SubversiveSubstitute)') |
| 125 | plugmap('n', '<Leader>yss', '<plug>(SubversiveSubstituteLine)') | 120 | vim.keymap.set('n', '<Leader>yss', '<plug>(SubversiveSubstituteLine)') |
| 126 | plugmap('n', '<Leader>yS', '<plug>(SubversiveSubstituteToEndOfLine)') | 121 | vim.keymap.set('n', '<Leader>yS', '<plug>(SubversiveSubstituteToEndOfLine)') |
| 127 | 122 | ||
| 128 | -- substitute over range | 123 | -- substitute over range |
| 129 | plugmap('n', '<Leader>s', '<plug>(SubversiveSubstituteRange)') | 124 | vim.keymap.set('n', '<Leader>s', '<plug>(SubversiveSubstituteRange)') |
| 130 | plugmap('x', '<Leader>s', '<plug>(SubversiveSubstituteRange)') | 125 | vim.keymap.set('x', '<Leader>s', '<plug>(SubversiveSubstituteRange)') |
| 131 | plugmap('n', '<Leader>ss', '<plug>(SubversiveSubstituteWordRange)') | 126 | vim.keymap.set('n', '<Leader>ss', '<plug>(SubversiveSubstituteWordRange)') |
| 132 | 127 | ||
| 133 | -- subvert over range | 128 | -- subvert over range |
| 134 | plugmap('n', '<Leader><Leader>s', '<plug>(SubversiveSubvertRange)') | 129 | vim.keymap.set('n', '<Leader><Leader>s', '<plug>(SubversiveSubvertRange)') |
| 135 | plugmap('x', '<Leader><Leader>s', '<plug>(SubversiveSubvertRange)') | 130 | vim.keymap.set('x', '<Leader><Leader>s', '<plug>(SubversiveSubvertRange)') |
| 136 | plugmap('n', '<Leader><Leader>ss', '<plug>(SubversiveSubvertWordRange)') | 131 | vim.keymap.set('n', '<Leader><Leader>ss', '<plug>(SubversiveSubvertWordRange)') |
| 137 | 132 | ||
| 138 | -- iterate over yank list | 133 | -- iterate over yank list |
| 139 | plugmap('n', '<c-n>', '<Plug>(YoinkPostPasteSwapBack)') | 134 | vim.keymap.set('n', '<c-n>', '<Plug>(YoinkPostPasteSwapBack)') |
| 140 | plugmap('n', '<c-p>', '<Plug>(YoinkPostPasteSwapForward)') | 135 | vim.keymap.set('n', '<c-p>', '<Plug>(YoinkPostPasteSwapForward)') |
| 141 | 136 | ||
| 142 | -- checkmarks on vimwiki | 137 | -- checkmarks on vimwiki |
| 143 | plugmap('n', '<leader>v', '<Plug>VimwikiToggleListItem') | 138 | vim.keymap.set('n', '<leader>v', '<Plug>VimwikiToggleListItem') |
| 144 | -- add/increase header level | 139 | -- add/increase header level |
| 145 | plugmap('n', '<leader>a', '<Plug>VimwikiAddHeaderLevel') | 140 | vim.keymap.set('n', '<leader>a', '<Plug>VimwikiAddHeaderLevel') |
| 146 | 141 | ||
| 147 | -- vim-test bindings | 142 | -- vim-test bindings |
| 148 | map('n', 't<C-n>', ':TestNearest<CR>') | 143 | vim.keymap.set('n', 't<C-n>', ':TestNearest<CR>') |
| 149 | map('n', 't<C-f>', ':TestFile<CR>') | 144 | vim.keymap.set('n', 't<C-f>', ':TestFile<CR>') |
| 150 | map('n', 't<C-s>', ':TestSuite<CR>') | 145 | vim.keymap.set('n', 't<C-s>', ':TestSuite<CR>') |
| 151 | map('n', 't<C-l>', ':TestLast<CR>') | 146 | vim.keymap.set('n', 't<C-l>', ':TestLast<CR>') |
| 152 | map('n', 't<C-g>', ':TestVisit<CR>') | 147 | vim.keymap.set('n', 't<C-g>', ':TestVisit<CR>') |
| 153 | 148 | ||
| 154 | -- telescope bindings | 149 | -- telescope bindings |
| 155 | map('n', '<leader>ff', "<cmd>lua require('telescope.builtin').find_files()<cr>") | 150 | vim.keymap.set('n', '<leader>ff', "<cmd>lua require('telescope.builtin').find_files()<cr>") |
| 156 | map('n', '<leader>fg', "<cmd>lua require('telescope.builtin').live_grep()<cr>") | 151 | vim.keymap.set('n', '<leader>fg', "<cmd>lua require('telescope.builtin').live_grep()<cr>") |
| 157 | map('n', '<leader>fb', "<cmd>lua require('telescope.builtin').buffers()<cr>") | 152 | vim.keymap.set('n', '<leader>fb', "<cmd>lua require('telescope.builtin').buffers()<cr>") |
| 158 | map('n', '<leader>fh', "<cmd>lua require('telescope.builtin').help_tags()<cr>") | 153 | vim.keymap.set('n', '<leader>fh', "<cmd>lua require('telescope.builtin').help_tags()<cr>") |
| 159 | 154 | ||
| 160 | -- vista | 155 | -- vista |
| 161 | map('n', '<F3>', ":Vista focus<cr>") | 156 | vim.keymap.set('n', '<F3>', ":Vista focus<cr>") |
| 162 | map('n', '<F4>', ":Vista finder<cr>") | 157 | vim.keymap.set('n', '<F4>', ":Vista finder<cr>") |
| 163 | |||
| 164 | -- toggle rose pine theme | ||
| 165 | map('n', '<F5>', [[<cmd>lua require('rose-pine.functions').toggle_variant({'dawn', 'base'})<cr>]], { noremap = true, silent = true }) | ||
| 166 | 158 | ||
| 167 | -- nvim tree mappings | 159 | -- nvim tree mappings |
| 168 | map('n', 'vt', ':NvimTreeToggle<CR>') | 160 | vim.keymap.set('n', 'vt', ':NvimTreeToggle<CR>') |
| 169 | map('n', 'vr', ':NvimTreeRefresh<CR>') | 161 | vim.keymap.set('n', 'vr', ':NvimTreeRefresh<CR>') |
| 170 | map('n', 'vs', ':NvimTreeFindFile<CR>') | 162 | vim.keymap.set('n', 'vs', ':NvimTreeFindFile<CR>') |
| 163 | |||
| 164 | -- dial.nvim mappings | ||
| 165 | vim.keymap.set("n", "<C-a>", require("dial.map").inc_normal(), {noremap = true}) | ||
| 166 | vim.keymap.set("n", "<C-x>", require("dial.map").dec_normal(), {noremap = true}) | ||
| 167 | vim.keymap.set("v", "<C-a>", require("dial.map").inc_visual(), {noremap = true}) | ||
| 168 | vim.keymap.set("v", "<C-x>", require("dial.map").dec_visual(), {noremap = true}) | ||
| 169 | vim.keymap.set("v", "g<C-a>", require("dial.map").inc_gvisual(), {noremap = true}) | ||
| 170 | vim.keymap.set("v", "g<C-x>", require("dial.map").dec_gvisual(), {noremap = true}) | ||
| 171 | 171 | ||
| 172 | -- }}} plug mappings -- | 172 | -- }}} plug mappings -- |
diff --git a/.config/nvim/lua/plugins.lua b/.config/nvim/lua/plugins.lua index 3266aeb..a217616 100644 --- a/.config/nvim/lua/plugins.lua +++ b/.config/nvim/lua/plugins.lua | |||
| @@ -19,6 +19,18 @@ return require('packer').startup(function() | |||
| 19 | } | 19 | } |
| 20 | -- quickstart lsp config | 20 | -- quickstart lsp config |
| 21 | use 'neovim/nvim-lspconfig' | 21 | use 'neovim/nvim-lspconfig' |
| 22 | |||
| 23 | -- annotation generator | ||
| 24 | -- learn to use it 2022-05-17 00:44 | ||
| 25 | -- https://github.com/danymat/neogen | ||
| 26 | use { | ||
| 27 | "danymat/neogen", | ||
| 28 | config = function() | ||
| 29 | require('neogen').setup {} | ||
| 30 | end, | ||
| 31 | requires = "nvim-treesitter/nvim-treesitter", | ||
| 32 | } | ||
| 33 | |||
| 22 | -- dashboard | 34 | -- dashboard |
| 23 | use { | 35 | use { |
| 24 | 'goolord/alpha-nvim', | 36 | 'goolord/alpha-nvim', |
| @@ -67,7 +79,6 @@ return require('packer').startup(function() | |||
| 67 | 79 | ||
| 68 | -- file explorer | 80 | -- file explorer |
| 69 | use 'kyazdani42/nvim-tree.lua' | 81 | use 'kyazdani42/nvim-tree.lua' |
| 70 | |||
| 71 | -- viewer & finder for lsp symbols and tags | 82 | -- viewer & finder for lsp symbols and tags |
| 72 | use 'liuchengxu/vista.vim' | 83 | use 'liuchengxu/vista.vim' |
| 73 | 84 | ||
| @@ -77,6 +88,7 @@ return require('packer').startup(function() | |||
| 77 | cmd = 'UndotreeToggle', | 88 | cmd = 'UndotreeToggle', |
| 78 | config = [[vim.g.undotree_SetFocusWhenToggle = 1]], | 89 | config = [[vim.g.undotree_SetFocusWhenToggle = 1]], |
| 79 | } | 90 | } |
| 91 | |||
| 80 | -- highlight colors | 92 | -- highlight colors |
| 81 | use 'norcalli/nvim-colorizer.lua' | 93 | use 'norcalli/nvim-colorizer.lua' |
| 82 | 94 | ||
| @@ -112,6 +124,8 @@ return require('packer').startup(function() | |||
| 112 | use 'justinmk/vim-sneak' | 124 | use 'justinmk/vim-sneak' |
| 113 | -- additional text objects, don't remove this ever again you fuck | 125 | -- additional text objects, don't remove this ever again you fuck |
| 114 | use 'wellle/targets.vim' | 126 | use 'wellle/targets.vim' |
| 127 | -- enhanced increment/decrement plugin ala speeddating | ||
| 128 | use 'monaqa/dial.nvim' | ||
| 115 | 129 | ||
| 116 | -- statusline of the $CURRENT_YEAR | 130 | -- statusline of the $CURRENT_YEAR |
| 117 | use { | 131 | use { |
| @@ -121,6 +135,8 @@ return require('packer').startup(function() | |||
| 121 | -- colour theme of the $CURRENT_YEAR | 135 | -- colour theme of the $CURRENT_YEAR |
| 122 | use 'rose-pine/neovim' | 136 | use 'rose-pine/neovim' |
| 123 | 137 | ||
| 138 | -- search for, substitute, and abbreviate multiple variants of a word | ||
| 139 | use 'tpope/vim-abolish' | ||
| 124 | -- enable repeating supported plugin maps with '.' | 140 | -- enable repeating supported plugin maps with '.' |
| 125 | use 'tpope/vim-repeat' | 141 | use 'tpope/vim-repeat' |
| 126 | -- pairs of handy bracket mappings | 142 | -- pairs of handy bracket mappings |
| @@ -129,8 +145,6 @@ return require('packer').startup(function() | |||
| 129 | use { | 145 | use { |
| 130 | 'tpope/vim-fugitive', cmd = {'Git', 'Gstatus', 'Gblame', 'Gpush', 'Gpull'} | 146 | 'tpope/vim-fugitive', cmd = {'Git', 'Gstatus', 'Gblame', 'Gpush', 'Gpull'} |
| 131 | } | 147 | } |
| 132 | -- increment dates, times & more | ||
| 133 | use 'tpope/vim-speeddating' | ||
| 134 | -- provides ga, show unicode stuff of char under cursor | 148 | -- provides ga, show unicode stuff of char under cursor |
| 135 | use 'tpope/vim-characterize' | 149 | use 'tpope/vim-characterize' |
| 136 | -- comment helper | 150 | -- comment helper |
