summaryrefslogtreecommitdiff
path: root/.config/nvim/lua/plugins
diff options
context:
space:
mode:
Diffstat (limited to '.config/nvim/lua/plugins')
-rw-r--r--.config/nvim/lua/plugins/comment.lua15
-rw-r--r--.config/nvim/lua/plugins/surround.lua9
2 files changed, 22 insertions, 2 deletions
diff --git a/.config/nvim/lua/plugins/comment.lua b/.config/nvim/lua/plugins/comment.lua
index d41bad4..6e9a55e 100644
--- a/.config/nvim/lua/plugins/comment.lua
+++ b/.config/nvim/lua/plugins/comment.lua
@@ -2,7 +2,6 @@ return {
'numToStr/Comment.nvim',
opts = {
padding = true,
- sticky = true, -- keep cursor at it's position
ignore = nil,
toggler = { line = 'gcc', block = 'gbc' },
@@ -10,8 +9,20 @@ return {
extra = { above = 'gcO', below = 'gco', eol = 'gcA' },
mappings = {
- basic = true, -- `gcc` `gbc` `gc[count]{motion}` `gb[count]{motion}`
+ basic = true, -- `gcc` `gbc` `gc[count]{motion}` `gb[count]{motion}`
extra = false, -- `gco`, `gcO`, `gcA`
},
},
+ config = function()
+ local api = require('Comment.api')
+ local esc = vim.api.nvim_replace_termcodes('<ESC>', true, false, true)
+ -- TODO: Stay in visual mode and keep the same selection even after commenting
+ local toggole_linewise_selection = function()
+ vim.api.nvim_feedkeys(esc, 'nx', false)
+ api.toggle.linewise(vim.fn.visualmode())
+ end
+
+ vim.keymap.set('n', '<C-_>', api.toggle.linewise.current, { noremap = true, silent = true })
+ vim.keymap.set('v', '<C-_>', toggole_linewise_selection, { noremap = true, silent = true })
+ end,
}
diff --git a/.config/nvim/lua/plugins/surround.lua b/.config/nvim/lua/plugins/surround.lua
new file mode 100644
index 0000000..2b8d3e0
--- /dev/null
+++ b/.config/nvim/lua/plugins/surround.lua
@@ -0,0 +1,9 @@
+return {
+ 'kylechui/nvim-surround',
+ version = '*',
+ event = 'VeryLazy',
+ config = function()
+ require('nvim-surround').setup({})
+ -- TODO: Add a way to not have to press S while in visual mode
+ end,
+}