30 lines
720 B
Lua
30 lines
720 B
Lua
|
local M = {}
|
||
|
|
||
|
function M.config()
|
||
|
local status_ok, comment = pcall(require, "Comment")
|
||
|
if not status_ok then
|
||
|
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,
|
||
|
}
|
||
|
end
|
||
|
|
||
|
return M
|
||
|
|