retrovim 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.conda/retrovim.yaml +259 -0
- package/.conda/terax.icns +0 -0
- package/.conda/terax.ico +0 -0
- package/.conda/terax.png +0 -0
- package/.github/workflows/release.yml +95 -0
- package/.gitmodules +3 -0
- package/.npm/kanata_touchcursor.js +28 -0
- package/.npm/nvim.js +26 -0
- package/.npm/yazi.js +26 -0
- package/.npm/zsh.js +17 -0
- package/.pip/kanata_touchcursor/__init__.py +28 -0
- package/.pip/nvim/__init__.py +31 -0
- package/.pip/yazi/__init__.py +31 -0
- package/.pip/zsh/__init__.py +22 -0
- package/CHANGELOG.md +26 -0
- package/LICENSE +674 -0
- package/README.md +336 -0
- package/kanata/touchcursor.kbd +164 -0
- package/nvim/init.lua +813 -0
- package/nvim/plugins/mini.nvim/.github/DISCUSSION_TEMPLATE/q-a.yml +72 -0
- package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/bug-report.yml +136 -0
- package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/config.yml +5 -0
- package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/feature-request.yml +75 -0
- package/nvim/plugins/mini.nvim/.github/PULL_REQUEST_TEMPLATE.md +2 -0
- package/nvim/plugins/mini.nvim/.github/workflows/quality-control.yml +150 -0
- package/nvim/plugins/mini.nvim/.pre-commit-config.yaml +20 -0
- package/nvim/plugins/mini.nvim/.stylua.toml +7 -0
- package/nvim/plugins/mini.nvim/.styluaignore +1 -0
- package/nvim/plugins/mini.nvim/CHANGELOG.md +1894 -0
- package/nvim/plugins/mini.nvim/CODE_OF_CONDUCT.md +132 -0
- package/nvim/plugins/mini.nvim/CONTRIBUTING.md +331 -0
- package/nvim/plugins/mini.nvim/LICENSE +21 -0
- package/nvim/plugins/mini.nvim/MAINTAINING.md +330 -0
- package/nvim/plugins/mini.nvim/Makefile +51 -0
- package/nvim/plugins/mini.nvim/README.md +261 -0
- package/nvim/plugins/mini.nvim/TESTING.md +1011 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/README.md +35 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/benchmark.sh +56 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-alpha.lua +21 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-original.lua +17 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-starter.lua +18 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_empty.lua +4 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_starter-default.lua +7 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-alpha.lua +10 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-original.lua +7 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-starter.lua +20 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/install.sh +10 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/make_summary.py +68 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/startup-summary.md +10 -0
- package/nvim/plugins/mini.nvim/colors/miniautumn.lua +55 -0
- package/nvim/plugins/mini.nvim/colors/minicyan.lua +95 -0
- package/nvim/plugins/mini.nvim/colors/minischeme.lua +95 -0
- package/nvim/plugins/mini.nvim/colors/minispring.lua +53 -0
- package/nvim/plugins/mini.nvim/colors/minisummer.lua +49 -0
- package/nvim/plugins/mini.nvim/colors/miniwinter.lua +51 -0
- package/nvim/plugins/mini.nvim/colors/randomhue.lua +16 -0
- package/nvim/plugins/mini.nvim/doc/mini-ai.txt +889 -0
- package/nvim/plugins/mini.nvim/doc/mini-align.txt +923 -0
- package/nvim/plugins/mini.nvim/doc/mini-animate.txt +937 -0
- package/nvim/plugins/mini.nvim/doc/mini-base16.txt +285 -0
- package/nvim/plugins/mini.nvim/doc/mini-basics.txt +359 -0
- package/nvim/plugins/mini.nvim/doc/mini-bracketed.txt +622 -0
- package/nvim/plugins/mini.nvim/doc/mini-bufremove.txt +123 -0
- package/nvim/plugins/mini.nvim/doc/mini-clue.txt +760 -0
- package/nvim/plugins/mini.nvim/doc/mini-cmdline.txt +392 -0
- package/nvim/plugins/mini.nvim/doc/mini-colors.txt +880 -0
- package/nvim/plugins/mini.nvim/doc/mini-comment.txt +230 -0
- package/nvim/plugins/mini.nvim/doc/mini-completion.txt +477 -0
- package/nvim/plugins/mini.nvim/doc/mini-cursorword.txt +105 -0
- package/nvim/plugins/mini.nvim/doc/mini-deps.txt +590 -0
- package/nvim/plugins/mini.nvim/doc/mini-diff.txt +661 -0
- package/nvim/plugins/mini.nvim/doc/mini-doc.txt +434 -0
- package/nvim/plugins/mini.nvim/doc/mini-extra.txt +856 -0
- package/nvim/plugins/mini.nvim/doc/mini-files.txt +1018 -0
- package/nvim/plugins/mini.nvim/doc/mini-fuzzy.txt +160 -0
- package/nvim/plugins/mini.nvim/doc/mini-git.txt +425 -0
- package/nvim/plugins/mini.nvim/doc/mini-hipatterns.txt +489 -0
- package/nvim/plugins/mini.nvim/doc/mini-hues.txt +420 -0
- package/nvim/plugins/mini.nvim/doc/mini-icons.txt +508 -0
- package/nvim/plugins/mini.nvim/doc/mini-indentscope.txt +485 -0
- package/nvim/plugins/mini.nvim/doc/mini-input.txt +932 -0
- package/nvim/plugins/mini.nvim/doc/mini-jump.txt +202 -0
- package/nvim/plugins/mini.nvim/doc/mini-jump2d.txt +525 -0
- package/nvim/plugins/mini.nvim/doc/mini-keymap.txt +449 -0
- package/nvim/plugins/mini.nvim/doc/mini-map.txt +717 -0
- package/nvim/plugins/mini.nvim/doc/mini-misc.txt +431 -0
- package/nvim/plugins/mini.nvim/doc/mini-move.txt +181 -0
- package/nvim/plugins/mini.nvim/doc/mini-notify.txt +434 -0
- package/nvim/plugins/mini.nvim/doc/mini-nvim.txt +431 -0
- package/nvim/plugins/mini.nvim/doc/mini-operators.txt +472 -0
- package/nvim/plugins/mini.nvim/doc/mini-pairs.txt +346 -0
- package/nvim/plugins/mini.nvim/doc/mini-pick.txt +1535 -0
- package/nvim/plugins/mini.nvim/doc/mini-sessions.txt +239 -0
- package/nvim/plugins/mini.nvim/doc/mini-snippets.txt +1291 -0
- package/nvim/plugins/mini.nvim/doc/mini-splitjoin.txt +536 -0
- package/nvim/plugins/mini.nvim/doc/mini-starter.txt +618 -0
- package/nvim/plugins/mini.nvim/doc/mini-statusline.txt +361 -0
- package/nvim/plugins/mini.nvim/doc/mini-surround.txt +863 -0
- package/nvim/plugins/mini.nvim/doc/mini-tabline.txt +151 -0
- package/nvim/plugins/mini.nvim/doc/mini-test.txt +966 -0
- package/nvim/plugins/mini.nvim/doc/mini-trailspace.txt +91 -0
- package/nvim/plugins/mini.nvim/doc/mini-visits.txt +937 -0
- package/nvim/plugins/mini.nvim/logo.png +0 -0
- package/nvim/plugins/mini.nvim/lua/mini/ai.lua +2244 -0
- package/nvim/plugins/mini.nvim/lua/mini/align.lua +2076 -0
- package/nvim/plugins/mini.nvim/lua/mini/animate.lua +2127 -0
- package/nvim/plugins/mini.nvim/lua/mini/base16.lua +1752 -0
- package/nvim/plugins/mini.nvim/lua/mini/basics.lua +772 -0
- package/nvim/plugins/mini.nvim/lua/mini/bracketed.lua +2013 -0
- package/nvim/plugins/mini.nvim/lua/mini/bufremove.lua +283 -0
- package/nvim/plugins/mini.nvim/lua/mini/clue.lua +2096 -0
- package/nvim/plugins/mini.nvim/lua/mini/cmdline.lua +1182 -0
- package/nvim/plugins/mini.nvim/lua/mini/colors.lua +2483 -0
- package/nvim/plugins/mini.nvim/lua/mini/comment.lua +586 -0
- package/nvim/plugins/mini.nvim/lua/mini/completion.lua +2094 -0
- package/nvim/plugins/mini.nvim/lua/mini/cursorword.lua +311 -0
- package/nvim/plugins/mini.nvim/lua/mini/deps.lua +1660 -0
- package/nvim/plugins/mini.nvim/lua/mini/diff.lua +1938 -0
- package/nvim/plugins/mini.nvim/lua/mini/doc.lua +1371 -0
- package/nvim/plugins/mini.nvim/lua/mini/extra.lua +2290 -0
- package/nvim/plugins/mini.nvim/lua/mini/files.lua +3145 -0
- package/nvim/plugins/mini.nvim/lua/mini/fuzzy.lua +356 -0
- package/nvim/plugins/mini.nvim/lua/mini/git.lua +1737 -0
- package/nvim/plugins/mini.nvim/lua/mini/hipatterns.lua +1042 -0
- package/nvim/plugins/mini.nvim/lua/mini/hues.lua +2088 -0
- package/nvim/plugins/mini.nvim/lua/mini/icons.lua +2254 -0
- package/nvim/plugins/mini.nvim/lua/mini/indentscope.lua +1158 -0
- package/nvim/plugins/mini.nvim/lua/mini/init.lua +427 -0
- package/nvim/plugins/mini.nvim/lua/mini/input.lua +2183 -0
- package/nvim/plugins/mini.nvim/lua/mini/jump.lua +609 -0
- package/nvim/plugins/mini.nvim/lua/mini/jump2d.lua +1244 -0
- package/nvim/plugins/mini.nvim/lua/mini/keymap.lua +880 -0
- package/nvim/plugins/mini.nvim/lua/mini/map.lua +1709 -0
- package/nvim/plugins/mini.nvim/lua/mini/misc.lua +969 -0
- package/nvim/plugins/mini.nvim/lua/mini/move.lua +509 -0
- package/nvim/plugins/mini.nvim/lua/mini/notify.lua +938 -0
- package/nvim/plugins/mini.nvim/lua/mini/operators.lua +1349 -0
- package/nvim/plugins/mini.nvim/lua/mini/pairs.lua +657 -0
- package/nvim/plugins/mini.nvim/lua/mini/pick.lua +3876 -0
- package/nvim/plugins/mini.nvim/lua/mini/sessions.lua +689 -0
- package/nvim/plugins/mini.nvim/lua/mini/snippets.lua +2828 -0
- package/nvim/plugins/mini.nvim/lua/mini/splitjoin.lua +1132 -0
- package/nvim/plugins/mini.nvim/lua/mini/starter.lua +1599 -0
- package/nvim/plugins/mini.nvim/lua/mini/statusline.lua +686 -0
- package/nvim/plugins/mini.nvim/lua/mini/surround.lua +2388 -0
- package/nvim/plugins/mini.nvim/lua/mini/tabline.lua +564 -0
- package/nvim/plugins/mini.nvim/lua/mini/test.lua +2516 -0
- package/nvim/plugins/mini.nvim/lua/mini/trailspace.lua +215 -0
- package/nvim/plugins/mini.nvim/lua/mini/visits.lua +1577 -0
- package/nvim/plugins/mini.nvim/readmes/mini-ai.md +190 -0
- package/nvim/plugins/mini.nvim/readmes/mini-align.md +203 -0
- package/nvim/plugins/mini.nvim/readmes/mini-animate.md +214 -0
- package/nvim/plugins/mini.nvim/readmes/mini-base16.md +198 -0
- package/nvim/plugins/mini.nvim/readmes/mini-basics.md +184 -0
- package/nvim/plugins/mini.nvim/readmes/mini-bracketed.md +193 -0
- package/nvim/plugins/mini.nvim/readmes/mini-bufremove.md +139 -0
- package/nvim/plugins/mini.nvim/readmes/mini-clue.md +260 -0
- package/nvim/plugins/mini.nvim/readmes/mini-cmdline.md +183 -0
- package/nvim/plugins/mini.nvim/readmes/mini-colors.md +169 -0
- package/nvim/plugins/mini.nvim/readmes/mini-comment.md +183 -0
- package/nvim/plugins/mini.nvim/readmes/mini-completion.md +217 -0
- package/nvim/plugins/mini.nvim/readmes/mini-cursorword.md +137 -0
- package/nvim/plugins/mini.nvim/readmes/mini-deps.md +271 -0
- package/nvim/plugins/mini.nvim/readmes/mini-diff.md +289 -0
- package/nvim/plugins/mini.nvim/readmes/mini-doc.md +198 -0
- package/nvim/plugins/mini.nvim/readmes/mini-extra.md +158 -0
- package/nvim/plugins/mini.nvim/readmes/mini-files.md +247 -0
- package/nvim/plugins/mini.nvim/readmes/mini-fuzzy.md +134 -0
- package/nvim/plugins/mini.nvim/readmes/mini-git.md +168 -0
- package/nvim/plugins/mini.nvim/readmes/mini-hipatterns.md +176 -0
- package/nvim/plugins/mini.nvim/readmes/mini-hues.md +285 -0
- package/nvim/plugins/mini.nvim/readmes/mini-icons.md +183 -0
- package/nvim/plugins/mini.nvim/readmes/mini-indentscope.md +191 -0
- package/nvim/plugins/mini.nvim/readmes/mini-input.md +163 -0
- package/nvim/plugins/mini.nvim/readmes/mini-jump.md +161 -0
- package/nvim/plugins/mini.nvim/readmes/mini-jump2d.md +197 -0
- package/nvim/plugins/mini.nvim/readmes/mini-keymap.md +205 -0
- package/nvim/plugins/mini.nvim/readmes/mini-map.md +191 -0
- package/nvim/plugins/mini.nvim/readmes/mini-misc.md +145 -0
- package/nvim/plugins/mini.nvim/readmes/mini-move.md +163 -0
- package/nvim/plugins/mini.nvim/readmes/mini-notify.md +175 -0
- package/nvim/plugins/mini.nvim/readmes/mini-operators.md +193 -0
- package/nvim/plugins/mini.nvim/readmes/mini-pairs.md +158 -0
- package/nvim/plugins/mini.nvim/readmes/mini-pick.md +340 -0
- package/nvim/plugins/mini.nvim/readmes/mini-sessions.md +164 -0
- package/nvim/plugins/mini.nvim/readmes/mini-snippets.md +373 -0
- package/nvim/plugins/mini.nvim/readmes/mini-splitjoin.md +194 -0
- package/nvim/plugins/mini.nvim/readmes/mini-starter.md +176 -0
- package/nvim/plugins/mini.nvim/readmes/mini-statusline.md +155 -0
- package/nvim/plugins/mini.nvim/readmes/mini-surround.md +190 -0
- package/nvim/plugins/mini.nvim/readmes/mini-tabline.md +156 -0
- package/nvim/plugins/mini.nvim/readmes/mini-test.md +175 -0
- package/nvim/plugins/mini.nvim/readmes/mini-trailspace.md +137 -0
- package/nvim/plugins/mini.nvim/readmes/mini-visits.md +243 -0
- package/nvim/plugins/mini.nvim/scripts/dual_log.sh +13 -0
- package/nvim/plugins/mini.nvim/scripts/dual_push.sh +15 -0
- package/nvim/plugins/mini.nvim/scripts/dual_release.sh +102 -0
- package/nvim/plugins/mini.nvim/scripts/dual_sync.sh +115 -0
- package/nvim/plugins/mini.nvim/scripts/init-deps-example.lua +59 -0
- package/nvim/plugins/mini.nvim/scripts/lint-filename-length.sh +16 -0
- package/nvim/plugins/mini.nvim/scripts/lintcommit-ci.sh +18 -0
- package/nvim/plugins/mini.nvim/scripts/lintcommit.lua +393 -0
- package/nvim/plugins/mini.nvim/scripts/minidoc.lua +57 -0
- package/nvim/plugins/mini.nvim/scripts/minimal_init.lua +28 -0
- package/nvim/plugins/mini.nvim/scripts/minitest.lua +4 -0
- package/package.json +16 -0
- package/pyproject.toml +43 -0
- package/yazi/init.lua +12 -0
- package/yazi/keymap.toml +114 -0
- package/yazi/lesskey +5 -0
- package/yazi/plugins/bookmarks.yazi/main.lua +86 -0
- package/yazi/plugins/cd-git-root.yazi/main.lua +31 -0
- package/yazi/plugins/smart-enter.yazi/main.lua +11 -0
- package/yazi/theme.toml +26 -0
- package/yazi/yazi.toml +15 -0
- package/zsh/.zshrc +145 -0
- package/zsh/starship.toml +20 -0
- package/zsh/zsh-patina.toml +2 -0
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
*mini.comment* Comment lines
|
|
2
|
+
|
|
3
|
+
MIT License Copyright (c) 2021 Evgeni Chasnovski
|
|
4
|
+
|
|
5
|
+
------------------------------------------------------------------------------
|
|
6
|
+
*MiniComment*
|
|
7
|
+
Features:
|
|
8
|
+
- Commenting in Normal mode respects |count| and is dot-repeatable.
|
|
9
|
+
|
|
10
|
+
- Comment structure by default is inferred from |'commentstring'|: either
|
|
11
|
+
from current buffer or from locally active tree-sitter language.
|
|
12
|
+
It can be customized via `options.custom_commentstring`
|
|
13
|
+
(see |MiniComment.config| for details).
|
|
14
|
+
|
|
15
|
+
- Allows custom hooks before and after successful commenting.
|
|
16
|
+
|
|
17
|
+
- Configurable options for some nuanced behavior.
|
|
18
|
+
|
|
19
|
+
What it doesn't do:
|
|
20
|
+
- Block and sub-line comments. This will only support per-line commenting.
|
|
21
|
+
|
|
22
|
+
- Handle indentation with mixed tab and space.
|
|
23
|
+
|
|
24
|
+
- Preserve trailing whitespace in empty lines.
|
|
25
|
+
|
|
26
|
+
Notes:
|
|
27
|
+
- To use tree-sitter aware commenting, global value of |'commentstring'|
|
|
28
|
+
should be `''` (empty string). This is the default value, so make sure to
|
|
29
|
+
not set it manually to a different value.
|
|
30
|
+
|
|
31
|
+
# Setup ~
|
|
32
|
+
|
|
33
|
+
This module needs a setup with `require('mini.comment').setup({})` (replace
|
|
34
|
+
`{}` with your `config` table). It will create global Lua table
|
|
35
|
+
`MiniComment` which you can use for scripting or manually (with
|
|
36
|
+
`:lua MiniComment.*`).
|
|
37
|
+
|
|
38
|
+
See |MiniComment.config| for `config` structure and default values.
|
|
39
|
+
|
|
40
|
+
You can override runtime config settings locally to buffer inside
|
|
41
|
+
`vim.b.minicomment_config` which should have same structure as
|
|
42
|
+
`MiniComment.config`. See |mini.nvim-buffer-local-config| for more details.
|
|
43
|
+
|
|
44
|
+
# Disabling ~
|
|
45
|
+
|
|
46
|
+
To disable core functionality, set `vim.g.minicomment_disable` (globally) or
|
|
47
|
+
`vim.b.minicomment_disable` (for a buffer) to `true`. Considering high number
|
|
48
|
+
of different scenarios and customization intentions, writing exact rules
|
|
49
|
+
for disabling module's functionality is left to user. See
|
|
50
|
+
|mini.nvim-disabling-recipes| for common recipes.
|
|
51
|
+
|
|
52
|
+
------------------------------------------------------------------------------
|
|
53
|
+
*MiniComment.setup()*
|
|
54
|
+
`MiniComment.setup`({config})
|
|
55
|
+
Module setup
|
|
56
|
+
|
|
57
|
+
Parameters ~
|
|
58
|
+
{config} `(table|nil)` Module config table. See |MiniComment.config|.
|
|
59
|
+
|
|
60
|
+
Usage ~
|
|
61
|
+
>lua
|
|
62
|
+
require('mini.comment').setup() -- use default config
|
|
63
|
+
-- OR
|
|
64
|
+
require('mini.comment').setup({}) -- replace {} with your config table
|
|
65
|
+
<
|
|
66
|
+
------------------------------------------------------------------------------
|
|
67
|
+
*MiniComment.config*
|
|
68
|
+
`MiniComment.config`
|
|
69
|
+
Defaults ~
|
|
70
|
+
>lua
|
|
71
|
+
MiniComment.config = {
|
|
72
|
+
-- Options which control module behavior
|
|
73
|
+
options = {
|
|
74
|
+
-- Function to compute custom 'commentstring' (optional)
|
|
75
|
+
custom_commentstring = nil,
|
|
76
|
+
|
|
77
|
+
-- Whether to ignore blank lines in actions and textobject
|
|
78
|
+
ignore_blank_line = false,
|
|
79
|
+
|
|
80
|
+
-- Whether to recognize as comment only lines without indent
|
|
81
|
+
start_of_line = false,
|
|
82
|
+
|
|
83
|
+
-- Whether to force single space inner padding for comment parts
|
|
84
|
+
pad_comment_parts = true,
|
|
85
|
+
},
|
|
86
|
+
|
|
87
|
+
-- Module mappings. Use `''` (empty string) to disable one.
|
|
88
|
+
mappings = {
|
|
89
|
+
-- Toggle comment (like `gcip` - comment inner paragraph) for both
|
|
90
|
+
-- Normal and Visual modes
|
|
91
|
+
comment = 'gc',
|
|
92
|
+
|
|
93
|
+
-- Toggle comment on current line
|
|
94
|
+
comment_line = 'gcc',
|
|
95
|
+
|
|
96
|
+
-- Toggle comment on visual selection
|
|
97
|
+
comment_visual = 'gc',
|
|
98
|
+
|
|
99
|
+
-- Define 'comment' textobject (like `dgc` - delete whole comment block)
|
|
100
|
+
-- Works also in Visual mode if mapping differs from `comment_visual`
|
|
101
|
+
textobject = 'gc',
|
|
102
|
+
},
|
|
103
|
+
|
|
104
|
+
-- Hook functions to be executed at certain stage of commenting
|
|
105
|
+
hooks = {
|
|
106
|
+
-- Before successful commenting. Does nothing by default.
|
|
107
|
+
pre = function() end,
|
|
108
|
+
-- After successful commenting. Does nothing by default.
|
|
109
|
+
post = function() end,
|
|
110
|
+
},
|
|
111
|
+
}
|
|
112
|
+
<
|
|
113
|
+
# Options ~
|
|
114
|
+
|
|
115
|
+
## Custom commentstring ~
|
|
116
|
+
|
|
117
|
+
`options.custom_commentstring` can be a function customizing |'commentstring'|
|
|
118
|
+
option used to infer comment structure. It is called once before every
|
|
119
|
+
commenting action with the following arguments:
|
|
120
|
+
- `ref_position` - position at which to compute |'commentstring'| (might be
|
|
121
|
+
relevant for a text with locally different commenting rules). Its structure
|
|
122
|
+
is the same as `opts.ref_position` in |MiniComment.toggle_lines()|.
|
|
123
|
+
|
|
124
|
+
Its output should be a valid |'commentstring'| (string containing `%s`).
|
|
125
|
+
|
|
126
|
+
If not set or the output is `nil`, |MiniComment.get_commentstring()| is used.
|
|
127
|
+
|
|
128
|
+
For example, this option can be used to always use buffer |'commentstring'|
|
|
129
|
+
even in case of present active tree-sitter parser: >lua
|
|
130
|
+
|
|
131
|
+
require('mini.comment').setup({
|
|
132
|
+
options = {
|
|
133
|
+
custom_commentstring = function() return vim.bo.commentstring end,
|
|
134
|
+
}
|
|
135
|
+
})
|
|
136
|
+
<
|
|
137
|
+
# Hooks ~
|
|
138
|
+
|
|
139
|
+
`hooks.pre` and `hooks.post` functions are executed before and after successful
|
|
140
|
+
commenting action (toggle or computing textobject). They will be called
|
|
141
|
+
with a single table argument which has the following fields:
|
|
142
|
+
- <action> `(string)` - action name. One of "toggle" (when actual toggle
|
|
143
|
+
direction is yet unknown), "comment", "uncomment", "textobject".
|
|
144
|
+
- <line_start> `(number|nil)` - action start line. Can be absent if yet unknown.
|
|
145
|
+
- <line_end> `(number|nil)` - action end line. Can be absent if yet unknown.
|
|
146
|
+
- <ref_position> `(table|nil)` - reference position.
|
|
147
|
+
|
|
148
|
+
Notes:
|
|
149
|
+
- Changing |'commentstring'| in `hooks.pre` is allowed and will take effect.
|
|
150
|
+
- If hook returns `false`, any further action is terminated.
|
|
151
|
+
|
|
152
|
+
------------------------------------------------------------------------------
|
|
153
|
+
*MiniComment.operator()*
|
|
154
|
+
`MiniComment.operator`({mode})
|
|
155
|
+
Main function to be mapped
|
|
156
|
+
|
|
157
|
+
It is meant to be used in expression mappings (see |:map-<expr>|) to enable
|
|
158
|
+
dot-repeatability and commenting on range. There is no need to do this
|
|
159
|
+
manually, everything is done inside |MiniComment.setup()|.
|
|
160
|
+
|
|
161
|
+
It has a somewhat unintuitive logic (because of how expression mapping with
|
|
162
|
+
dot-repeatability works): it should be called without arguments inside
|
|
163
|
+
expression mapping and with argument when action should be performed.
|
|
164
|
+
|
|
165
|
+
Parameters ~
|
|
166
|
+
{mode} `(string|nil)` Optional string with |'operatorfunc'| mode (see |g@|).
|
|
167
|
+
|
|
168
|
+
Return ~
|
|
169
|
+
`(string|nil)` `'g@'` if called without argument, `''` otherwise (but after
|
|
170
|
+
performing action).
|
|
171
|
+
|
|
172
|
+
------------------------------------------------------------------------------
|
|
173
|
+
*MiniComment.toggle_lines()*
|
|
174
|
+
`MiniComment.toggle_lines`({line_start}, {line_end}, {opts})
|
|
175
|
+
Toggle comments between two line numbers
|
|
176
|
+
|
|
177
|
+
It uncomments if lines are comment (every line is a comment or blank) and
|
|
178
|
+
comments otherwise. It respects indentation and doesn't insert trailing
|
|
179
|
+
whitespace. Toggle commenting not in visual mode is also dot-repeatable
|
|
180
|
+
and respects |count|.
|
|
181
|
+
|
|
182
|
+
# Notes ~
|
|
183
|
+
|
|
184
|
+
- Comment structure is inferred from buffer's |'commentstring'| option or
|
|
185
|
+
local language of tree-sitter parser (if active).
|
|
186
|
+
|
|
187
|
+
- Call to this function will remove all |extmarks| from target range.
|
|
188
|
+
|
|
189
|
+
Parameters ~
|
|
190
|
+
{line_start} `(number)` Start line number (inclusive from 1 to number of lines).
|
|
191
|
+
{line_end} `(number)` End line number (inclusive from 1 to number of lines).
|
|
192
|
+
{opts} `(table|nil)` Options. Possible fields:
|
|
193
|
+
- <ref_position> `(table)` - A two-value array with `{ row, col }` (both
|
|
194
|
+
starting at 1) of reference position at which |'commentstring'| value
|
|
195
|
+
will be computed. Default: `{ line_start, 1 }`.
|
|
196
|
+
|
|
197
|
+
------------------------------------------------------------------------------
|
|
198
|
+
*MiniComment.textobject()*
|
|
199
|
+
`MiniComment.textobject`()
|
|
200
|
+
Select comment textobject
|
|
201
|
+
|
|
202
|
+
This selects all commented lines adjacent to cursor line. If `ignore_blank_line`
|
|
203
|
+
option is enabled (see |MiniComment.config|), blank lines between commented
|
|
204
|
+
lines are treated as part of textobject.
|
|
205
|
+
Designed to be used with operator mode mappings (see |mapmode-o|).
|
|
206
|
+
|
|
207
|
+
------------------------------------------------------------------------------
|
|
208
|
+
*MiniComment.get_commentstring()*
|
|
209
|
+
`MiniComment.get_commentstring`({ref_position})
|
|
210
|
+
Get |'commentstring'|
|
|
211
|
+
|
|
212
|
+
This represents default approach of computing relevant |'commentstring'|
|
|
213
|
+
option in current buffer. Used to infer comment structure.
|
|
214
|
+
|
|
215
|
+
It has the following logic:
|
|
216
|
+
- If there is an active tree-sitter parser, try to get |'commentstring'| from
|
|
217
|
+
the local language at `ref_position`.
|
|
218
|
+
|
|
219
|
+
- If first step is not successful, use buffer's |'commentstring'| directly.
|
|
220
|
+
|
|
221
|
+
Parameters ~
|
|
222
|
+
{ref_position} `(table)` Reference position inside current buffer at which
|
|
223
|
+
to compute |'commentstring'|. Same structure as `opts.ref_position`
|
|
224
|
+
in |MiniComment.toggle_lines()|.
|
|
225
|
+
|
|
226
|
+
Return ~
|
|
227
|
+
`(string)` Relevant value of |'commentstring'|.
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
vim:tw=78:ts=8:noet:ft=help:norl:
|