Hide comments, focus on the code flow, and reveal them if needed.
This plugin lets you fold all comments to better visualize your codeβs logic, and unfold them whenever needed.
Use your favorite plugin manager to install it, and then run
require("soemre/commentless.nvim").setup({})
to start it up.
Also, check out the Some Recommendations for Global Folding Behavior section.
The setup
call is handled internally by lazy.nvim
.
{
"soemre/commentless.nvim",
cmd = "Commentless",
keys = {
{
"<leader>/",
function()
require("commentless").toggle()
end,
desc = "Toggle Comments",
},
},
dependencies = {
"nvim-treesitter/nvim-treesitter",
},
opts = {
-- Customize Configuration
},
}
To get started, bind keys to the public API or run :Commentless <args>
directly.
vim.keymap.set("n", "<leader>/", function()
require("commentless").toggle()
end)
Check :help commentless
for full documentation.
{
hide_following_blank_lines = true,
foldtext = function(folded_count)
return "(" .. folded_count .. " comments)"
end,
}
vim.opt.foldminlines = 0 -- Allow folding/hiding single lines
vim.opt.fillchars = "fold: " -- Remove the trailing dots
To determine whether something is a comment, it uses tree-sitter
. Therefore,
you need to have tree-sitter
parsers installed for the file types (languages)
you plan to use. You can install them using :TSInstall <language_to_install>
or via the ensure_installed
option in tree-sitter
's setup parameters.