summaryrefslogtreecommitdiff
path: root/.config/nvim/lua/plugins/comment.lua
diff options
context:
space:
mode:
authorKyren223 <Kyren223@proton.me>2025-04-24 11:36:39 +0300
committerKyren223 <Kyren223@proton.me>2025-04-24 11:36:39 +0300
commit6bef8f32b19778fdfe52f0eb39719425508dcc7b (patch)
treef293141ed7e8676b76bb06c07a0fa9472b10e2ac /.config/nvim/lua/plugins/comment.lua
parentdbd9a6fdd0c44e26b200fb706aacd120a2e09c47 (diff)
Refactored nvim config to make it easier and less insanely nested
Diffstat (limited to '.config/nvim/lua/plugins/comment.lua')
-rw-r--r--.config/nvim/lua/plugins/comment.lua25
1 files changed, 25 insertions, 0 deletions
diff --git a/.config/nvim/lua/plugins/comment.lua b/.config/nvim/lua/plugins/comment.lua
new file mode 100644
index 0000000..b61675a
--- /dev/null
+++ b/.config/nvim/lua/plugins/comment.lua
@@ -0,0 +1,25 @@
+return {
+ -- 'numToStr/Comment.nvim',
+ 'os-mey/Comment.nvim',
+ branch = 'fix-inline-visual-linewise-comment',
+ keys = {
+ { 'gc', mode = { 'n', 'v' } },
+ { 'gb', mode = { 'n', 'v' } },
+ { '<C-_>', mode = { 'n', 'v' } },
+ { 'gcc', mode = 'n' },
+ { 'gcb', mode = 'n' },
+ },
+ config = function()
+ require('Comment').setup()
+ local api = require('Comment.api')
+ local esc = vim.api.nvim_replace_termcodes('<ESC>', true, false, true)
+ local toggle_linewise_selection = function()
+ vim.api.nvim_feedkeys(esc, 'nx', false)
+ api.toggle.linewise(vim.fn.visualmode())
+ end
+
+ -- <C-_> means Ctrl slash, `_` is a `/`
+ vim.keymap.set('n', '<C-_>', api.toggle.linewise.current, { noremap = true, silent = true })
+ vim.keymap.set('v', '<C-_>', toggle_linewise_selection, { noremap = true, silent = true })
+ end,
+}