summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--init.lua1
-rw-r--r--lua/user/comment.lua22
-rw-r--r--lua/user/plugins.lua2
-rw-r--r--lua/user/treesitter.lua8
4 files changed, 31 insertions, 2 deletions
diff --git a/init.lua b/init.lua
index 1f5163e..f41cb3c 100644
--- a/init.lua
+++ b/init.lua
@@ -8,3 +8,4 @@ require "user.telescope"
require "user.treesitter"
require "user.autopairs"
require "user.lua"
+require "user.comment"
diff --git a/lua/user/comment.lua b/lua/user/comment.lua
new file mode 100644
index 0000000..2fa4a56
--- /dev/null
+++ b/lua/user/comment.lua
@@ -0,0 +1,22 @@
+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,
+}
diff --git a/lua/user/plugins.lua b/lua/user/plugins.lua
index 65e808f..92c08bc 100644
--- a/lua/user/plugins.lua
+++ b/lua/user/plugins.lua
@@ -45,6 +45,7 @@ return packer.startup(function(use)
use "nvim-lua/popup.nvim" -- An implementation of the Popup API from vim in Neovim
use "nvim-lua/plenary.nvim" -- Useful lua functions used ny lots of plugins
use "windwp/nvim-autopairs" -- Autopairs, integrates with both cmp and treesitter
+ use "numToStr/Comment.nvim" -- Easily comment stuff
-- Colorschemes
use "lunarvim/colorschemes" -- A bunch of colorschemes you can try out
@@ -78,6 +79,7 @@ return packer.startup(function(use)
"nvim-treesitter/nvim-treesitter",
run = ":TSUpdate",
}
+ use 'JoosepAlviste/nvim-ts-context-commentstring'
use "p00f/nvim-ts-rainbow"
use "nvim-treesitter/playground"
diff --git a/lua/user/treesitter.lua b/lua/user/treesitter.lua
index ce57664..47ae33a 100644
--- a/lua/user/treesitter.lua
+++ b/lua/user/treesitter.lua
@@ -18,8 +18,8 @@ configs.setup {
sync_install = false,
ignore_install = { "" }, -- List of parsers to ignore installing
autopairs = {
- enable = true,
- },
+ enable = true,
+ },
highlight = {
enable = true, -- false will disable the whole extension
disable = { "" }, -- list of language that will be disabled
@@ -27,4 +27,8 @@ configs.setup {
},
indent = { enable = true, disable = { "yaml" } },
+ context_commentstring = {
+ enable = true,
+ enable_autocmd = false,
+ },
}