summaryrefslogtreecommitdiffstats
path: root/lua/user/core/comment.lua
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2022-11-23 15:38:16 +0100
committerJérémy Zurcher <jeremy@asynk.ch>2022-11-23 15:38:16 +0100
commit99630ae8233f8a2afb6a89016b24a354b0186a21 (patch)
tree01ccbb1e8843ce1dbc9383579575dc48eef60f2c /lua/user/core/comment.lua
parent904acb28247999214aefd33a0cd3ddcea99d7dc0 (diff)
downloadvim-99630ae8233f8a2afb6a89016b24a354b0186a21.zip
vim-99630ae8233f8a2afb6a89016b24a354b0186a21.tar.gz
plugins -> subdir core
Diffstat (limited to 'lua/user/core/comment.lua')
-rw-r--r--lua/user/core/comment.lua24
1 files changed, 24 insertions, 0 deletions
diff --git a/lua/user/core/comment.lua b/lua/user/core/comment.lua
new file mode 100644
index 0000000..7d36862
--- /dev/null
+++ b/lua/user/core/comment.lua
@@ -0,0 +1,24 @@
+local status_ok, comment = pcall(require, "Comment")
+if not status_ok then
+ print "Comment init failed"
+ return
+end
+
+comment.setup {
+ pre_hook = function(ctx)
+ local U = require "Comment.utils"
+
+ local location = nil
+ if ctx.ctype == U.ctype.block then
+ location = require("ts_context_commentstring.utils").get_cursor_location()
+ elseif ctx.cmotion == U.cmotion.v or ctx.cmotion == U.cmotion.V then
+ location = require("ts_context_commentstring.utils").get_visual_start_location()
+ end
+
+ return require("ts_context_commentstring.internal").calculate_commentstring {
+ key = ctx.ctype == U.ctype.line and "__default" or "__multiline",
+ location = location,
+ }
+ end,
+}
+