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.
Files changed (218) hide show
  1. package/.conda/retrovim.yaml +259 -0
  2. package/.conda/terax.icns +0 -0
  3. package/.conda/terax.ico +0 -0
  4. package/.conda/terax.png +0 -0
  5. package/.github/workflows/release.yml +95 -0
  6. package/.gitmodules +3 -0
  7. package/.npm/kanata_touchcursor.js +28 -0
  8. package/.npm/nvim.js +26 -0
  9. package/.npm/yazi.js +26 -0
  10. package/.npm/zsh.js +17 -0
  11. package/.pip/kanata_touchcursor/__init__.py +28 -0
  12. package/.pip/nvim/__init__.py +31 -0
  13. package/.pip/yazi/__init__.py +31 -0
  14. package/.pip/zsh/__init__.py +22 -0
  15. package/CHANGELOG.md +26 -0
  16. package/LICENSE +674 -0
  17. package/README.md +336 -0
  18. package/kanata/touchcursor.kbd +164 -0
  19. package/nvim/init.lua +813 -0
  20. package/nvim/plugins/mini.nvim/.github/DISCUSSION_TEMPLATE/q-a.yml +72 -0
  21. package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/bug-report.yml +136 -0
  22. package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/config.yml +5 -0
  23. package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/feature-request.yml +75 -0
  24. package/nvim/plugins/mini.nvim/.github/PULL_REQUEST_TEMPLATE.md +2 -0
  25. package/nvim/plugins/mini.nvim/.github/workflows/quality-control.yml +150 -0
  26. package/nvim/plugins/mini.nvim/.pre-commit-config.yaml +20 -0
  27. package/nvim/plugins/mini.nvim/.stylua.toml +7 -0
  28. package/nvim/plugins/mini.nvim/.styluaignore +1 -0
  29. package/nvim/plugins/mini.nvim/CHANGELOG.md +1894 -0
  30. package/nvim/plugins/mini.nvim/CODE_OF_CONDUCT.md +132 -0
  31. package/nvim/plugins/mini.nvim/CONTRIBUTING.md +331 -0
  32. package/nvim/plugins/mini.nvim/LICENSE +21 -0
  33. package/nvim/plugins/mini.nvim/MAINTAINING.md +330 -0
  34. package/nvim/plugins/mini.nvim/Makefile +51 -0
  35. package/nvim/plugins/mini.nvim/README.md +261 -0
  36. package/nvim/plugins/mini.nvim/TESTING.md +1011 -0
  37. package/nvim/plugins/mini.nvim/benchmarks/starter/README.md +35 -0
  38. package/nvim/plugins/mini.nvim/benchmarks/starter/benchmark.sh +56 -0
  39. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-alpha.lua +21 -0
  40. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-original.lua +17 -0
  41. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-starter.lua +18 -0
  42. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_empty.lua +4 -0
  43. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_starter-default.lua +7 -0
  44. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-alpha.lua +10 -0
  45. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-original.lua +7 -0
  46. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-starter.lua +20 -0
  47. package/nvim/plugins/mini.nvim/benchmarks/starter/install.sh +10 -0
  48. package/nvim/plugins/mini.nvim/benchmarks/starter/make_summary.py +68 -0
  49. package/nvim/plugins/mini.nvim/benchmarks/starter/startup-summary.md +10 -0
  50. package/nvim/plugins/mini.nvim/colors/miniautumn.lua +55 -0
  51. package/nvim/plugins/mini.nvim/colors/minicyan.lua +95 -0
  52. package/nvim/plugins/mini.nvim/colors/minischeme.lua +95 -0
  53. package/nvim/plugins/mini.nvim/colors/minispring.lua +53 -0
  54. package/nvim/plugins/mini.nvim/colors/minisummer.lua +49 -0
  55. package/nvim/plugins/mini.nvim/colors/miniwinter.lua +51 -0
  56. package/nvim/plugins/mini.nvim/colors/randomhue.lua +16 -0
  57. package/nvim/plugins/mini.nvim/doc/mini-ai.txt +889 -0
  58. package/nvim/plugins/mini.nvim/doc/mini-align.txt +923 -0
  59. package/nvim/plugins/mini.nvim/doc/mini-animate.txt +937 -0
  60. package/nvim/plugins/mini.nvim/doc/mini-base16.txt +285 -0
  61. package/nvim/plugins/mini.nvim/doc/mini-basics.txt +359 -0
  62. package/nvim/plugins/mini.nvim/doc/mini-bracketed.txt +622 -0
  63. package/nvim/plugins/mini.nvim/doc/mini-bufremove.txt +123 -0
  64. package/nvim/plugins/mini.nvim/doc/mini-clue.txt +760 -0
  65. package/nvim/plugins/mini.nvim/doc/mini-cmdline.txt +392 -0
  66. package/nvim/plugins/mini.nvim/doc/mini-colors.txt +880 -0
  67. package/nvim/plugins/mini.nvim/doc/mini-comment.txt +230 -0
  68. package/nvim/plugins/mini.nvim/doc/mini-completion.txt +477 -0
  69. package/nvim/plugins/mini.nvim/doc/mini-cursorword.txt +105 -0
  70. package/nvim/plugins/mini.nvim/doc/mini-deps.txt +590 -0
  71. package/nvim/plugins/mini.nvim/doc/mini-diff.txt +661 -0
  72. package/nvim/plugins/mini.nvim/doc/mini-doc.txt +434 -0
  73. package/nvim/plugins/mini.nvim/doc/mini-extra.txt +856 -0
  74. package/nvim/plugins/mini.nvim/doc/mini-files.txt +1018 -0
  75. package/nvim/plugins/mini.nvim/doc/mini-fuzzy.txt +160 -0
  76. package/nvim/plugins/mini.nvim/doc/mini-git.txt +425 -0
  77. package/nvim/plugins/mini.nvim/doc/mini-hipatterns.txt +489 -0
  78. package/nvim/plugins/mini.nvim/doc/mini-hues.txt +420 -0
  79. package/nvim/plugins/mini.nvim/doc/mini-icons.txt +508 -0
  80. package/nvim/plugins/mini.nvim/doc/mini-indentscope.txt +485 -0
  81. package/nvim/plugins/mini.nvim/doc/mini-input.txt +932 -0
  82. package/nvim/plugins/mini.nvim/doc/mini-jump.txt +202 -0
  83. package/nvim/plugins/mini.nvim/doc/mini-jump2d.txt +525 -0
  84. package/nvim/plugins/mini.nvim/doc/mini-keymap.txt +449 -0
  85. package/nvim/plugins/mini.nvim/doc/mini-map.txt +717 -0
  86. package/nvim/plugins/mini.nvim/doc/mini-misc.txt +431 -0
  87. package/nvim/plugins/mini.nvim/doc/mini-move.txt +181 -0
  88. package/nvim/plugins/mini.nvim/doc/mini-notify.txt +434 -0
  89. package/nvim/plugins/mini.nvim/doc/mini-nvim.txt +431 -0
  90. package/nvim/plugins/mini.nvim/doc/mini-operators.txt +472 -0
  91. package/nvim/plugins/mini.nvim/doc/mini-pairs.txt +346 -0
  92. package/nvim/plugins/mini.nvim/doc/mini-pick.txt +1535 -0
  93. package/nvim/plugins/mini.nvim/doc/mini-sessions.txt +239 -0
  94. package/nvim/plugins/mini.nvim/doc/mini-snippets.txt +1291 -0
  95. package/nvim/plugins/mini.nvim/doc/mini-splitjoin.txt +536 -0
  96. package/nvim/plugins/mini.nvim/doc/mini-starter.txt +618 -0
  97. package/nvim/plugins/mini.nvim/doc/mini-statusline.txt +361 -0
  98. package/nvim/plugins/mini.nvim/doc/mini-surround.txt +863 -0
  99. package/nvim/plugins/mini.nvim/doc/mini-tabline.txt +151 -0
  100. package/nvim/plugins/mini.nvim/doc/mini-test.txt +966 -0
  101. package/nvim/plugins/mini.nvim/doc/mini-trailspace.txt +91 -0
  102. package/nvim/plugins/mini.nvim/doc/mini-visits.txt +937 -0
  103. package/nvim/plugins/mini.nvim/logo.png +0 -0
  104. package/nvim/plugins/mini.nvim/lua/mini/ai.lua +2244 -0
  105. package/nvim/plugins/mini.nvim/lua/mini/align.lua +2076 -0
  106. package/nvim/plugins/mini.nvim/lua/mini/animate.lua +2127 -0
  107. package/nvim/plugins/mini.nvim/lua/mini/base16.lua +1752 -0
  108. package/nvim/plugins/mini.nvim/lua/mini/basics.lua +772 -0
  109. package/nvim/plugins/mini.nvim/lua/mini/bracketed.lua +2013 -0
  110. package/nvim/plugins/mini.nvim/lua/mini/bufremove.lua +283 -0
  111. package/nvim/plugins/mini.nvim/lua/mini/clue.lua +2096 -0
  112. package/nvim/plugins/mini.nvim/lua/mini/cmdline.lua +1182 -0
  113. package/nvim/plugins/mini.nvim/lua/mini/colors.lua +2483 -0
  114. package/nvim/plugins/mini.nvim/lua/mini/comment.lua +586 -0
  115. package/nvim/plugins/mini.nvim/lua/mini/completion.lua +2094 -0
  116. package/nvim/plugins/mini.nvim/lua/mini/cursorword.lua +311 -0
  117. package/nvim/plugins/mini.nvim/lua/mini/deps.lua +1660 -0
  118. package/nvim/plugins/mini.nvim/lua/mini/diff.lua +1938 -0
  119. package/nvim/plugins/mini.nvim/lua/mini/doc.lua +1371 -0
  120. package/nvim/plugins/mini.nvim/lua/mini/extra.lua +2290 -0
  121. package/nvim/plugins/mini.nvim/lua/mini/files.lua +3145 -0
  122. package/nvim/plugins/mini.nvim/lua/mini/fuzzy.lua +356 -0
  123. package/nvim/plugins/mini.nvim/lua/mini/git.lua +1737 -0
  124. package/nvim/plugins/mini.nvim/lua/mini/hipatterns.lua +1042 -0
  125. package/nvim/plugins/mini.nvim/lua/mini/hues.lua +2088 -0
  126. package/nvim/plugins/mini.nvim/lua/mini/icons.lua +2254 -0
  127. package/nvim/plugins/mini.nvim/lua/mini/indentscope.lua +1158 -0
  128. package/nvim/plugins/mini.nvim/lua/mini/init.lua +427 -0
  129. package/nvim/plugins/mini.nvim/lua/mini/input.lua +2183 -0
  130. package/nvim/plugins/mini.nvim/lua/mini/jump.lua +609 -0
  131. package/nvim/plugins/mini.nvim/lua/mini/jump2d.lua +1244 -0
  132. package/nvim/plugins/mini.nvim/lua/mini/keymap.lua +880 -0
  133. package/nvim/plugins/mini.nvim/lua/mini/map.lua +1709 -0
  134. package/nvim/plugins/mini.nvim/lua/mini/misc.lua +969 -0
  135. package/nvim/plugins/mini.nvim/lua/mini/move.lua +509 -0
  136. package/nvim/plugins/mini.nvim/lua/mini/notify.lua +938 -0
  137. package/nvim/plugins/mini.nvim/lua/mini/operators.lua +1349 -0
  138. package/nvim/plugins/mini.nvim/lua/mini/pairs.lua +657 -0
  139. package/nvim/plugins/mini.nvim/lua/mini/pick.lua +3876 -0
  140. package/nvim/plugins/mini.nvim/lua/mini/sessions.lua +689 -0
  141. package/nvim/plugins/mini.nvim/lua/mini/snippets.lua +2828 -0
  142. package/nvim/plugins/mini.nvim/lua/mini/splitjoin.lua +1132 -0
  143. package/nvim/plugins/mini.nvim/lua/mini/starter.lua +1599 -0
  144. package/nvim/plugins/mini.nvim/lua/mini/statusline.lua +686 -0
  145. package/nvim/plugins/mini.nvim/lua/mini/surround.lua +2388 -0
  146. package/nvim/plugins/mini.nvim/lua/mini/tabline.lua +564 -0
  147. package/nvim/plugins/mini.nvim/lua/mini/test.lua +2516 -0
  148. package/nvim/plugins/mini.nvim/lua/mini/trailspace.lua +215 -0
  149. package/nvim/plugins/mini.nvim/lua/mini/visits.lua +1577 -0
  150. package/nvim/plugins/mini.nvim/readmes/mini-ai.md +190 -0
  151. package/nvim/plugins/mini.nvim/readmes/mini-align.md +203 -0
  152. package/nvim/plugins/mini.nvim/readmes/mini-animate.md +214 -0
  153. package/nvim/plugins/mini.nvim/readmes/mini-base16.md +198 -0
  154. package/nvim/plugins/mini.nvim/readmes/mini-basics.md +184 -0
  155. package/nvim/plugins/mini.nvim/readmes/mini-bracketed.md +193 -0
  156. package/nvim/plugins/mini.nvim/readmes/mini-bufremove.md +139 -0
  157. package/nvim/plugins/mini.nvim/readmes/mini-clue.md +260 -0
  158. package/nvim/plugins/mini.nvim/readmes/mini-cmdline.md +183 -0
  159. package/nvim/plugins/mini.nvim/readmes/mini-colors.md +169 -0
  160. package/nvim/plugins/mini.nvim/readmes/mini-comment.md +183 -0
  161. package/nvim/plugins/mini.nvim/readmes/mini-completion.md +217 -0
  162. package/nvim/plugins/mini.nvim/readmes/mini-cursorword.md +137 -0
  163. package/nvim/plugins/mini.nvim/readmes/mini-deps.md +271 -0
  164. package/nvim/plugins/mini.nvim/readmes/mini-diff.md +289 -0
  165. package/nvim/plugins/mini.nvim/readmes/mini-doc.md +198 -0
  166. package/nvim/plugins/mini.nvim/readmes/mini-extra.md +158 -0
  167. package/nvim/plugins/mini.nvim/readmes/mini-files.md +247 -0
  168. package/nvim/plugins/mini.nvim/readmes/mini-fuzzy.md +134 -0
  169. package/nvim/plugins/mini.nvim/readmes/mini-git.md +168 -0
  170. package/nvim/plugins/mini.nvim/readmes/mini-hipatterns.md +176 -0
  171. package/nvim/plugins/mini.nvim/readmes/mini-hues.md +285 -0
  172. package/nvim/plugins/mini.nvim/readmes/mini-icons.md +183 -0
  173. package/nvim/plugins/mini.nvim/readmes/mini-indentscope.md +191 -0
  174. package/nvim/plugins/mini.nvim/readmes/mini-input.md +163 -0
  175. package/nvim/plugins/mini.nvim/readmes/mini-jump.md +161 -0
  176. package/nvim/plugins/mini.nvim/readmes/mini-jump2d.md +197 -0
  177. package/nvim/plugins/mini.nvim/readmes/mini-keymap.md +205 -0
  178. package/nvim/plugins/mini.nvim/readmes/mini-map.md +191 -0
  179. package/nvim/plugins/mini.nvim/readmes/mini-misc.md +145 -0
  180. package/nvim/plugins/mini.nvim/readmes/mini-move.md +163 -0
  181. package/nvim/plugins/mini.nvim/readmes/mini-notify.md +175 -0
  182. package/nvim/plugins/mini.nvim/readmes/mini-operators.md +193 -0
  183. package/nvim/plugins/mini.nvim/readmes/mini-pairs.md +158 -0
  184. package/nvim/plugins/mini.nvim/readmes/mini-pick.md +340 -0
  185. package/nvim/plugins/mini.nvim/readmes/mini-sessions.md +164 -0
  186. package/nvim/plugins/mini.nvim/readmes/mini-snippets.md +373 -0
  187. package/nvim/plugins/mini.nvim/readmes/mini-splitjoin.md +194 -0
  188. package/nvim/plugins/mini.nvim/readmes/mini-starter.md +176 -0
  189. package/nvim/plugins/mini.nvim/readmes/mini-statusline.md +155 -0
  190. package/nvim/plugins/mini.nvim/readmes/mini-surround.md +190 -0
  191. package/nvim/plugins/mini.nvim/readmes/mini-tabline.md +156 -0
  192. package/nvim/plugins/mini.nvim/readmes/mini-test.md +175 -0
  193. package/nvim/plugins/mini.nvim/readmes/mini-trailspace.md +137 -0
  194. package/nvim/plugins/mini.nvim/readmes/mini-visits.md +243 -0
  195. package/nvim/plugins/mini.nvim/scripts/dual_log.sh +13 -0
  196. package/nvim/plugins/mini.nvim/scripts/dual_push.sh +15 -0
  197. package/nvim/plugins/mini.nvim/scripts/dual_release.sh +102 -0
  198. package/nvim/plugins/mini.nvim/scripts/dual_sync.sh +115 -0
  199. package/nvim/plugins/mini.nvim/scripts/init-deps-example.lua +59 -0
  200. package/nvim/plugins/mini.nvim/scripts/lint-filename-length.sh +16 -0
  201. package/nvim/plugins/mini.nvim/scripts/lintcommit-ci.sh +18 -0
  202. package/nvim/plugins/mini.nvim/scripts/lintcommit.lua +393 -0
  203. package/nvim/plugins/mini.nvim/scripts/minidoc.lua +57 -0
  204. package/nvim/plugins/mini.nvim/scripts/minimal_init.lua +28 -0
  205. package/nvim/plugins/mini.nvim/scripts/minitest.lua +4 -0
  206. package/package.json +16 -0
  207. package/pyproject.toml +43 -0
  208. package/yazi/init.lua +12 -0
  209. package/yazi/keymap.toml +114 -0
  210. package/yazi/lesskey +5 -0
  211. package/yazi/plugins/bookmarks.yazi/main.lua +86 -0
  212. package/yazi/plugins/cd-git-root.yazi/main.lua +31 -0
  213. package/yazi/plugins/smart-enter.yazi/main.lua +11 -0
  214. package/yazi/theme.toml +26 -0
  215. package/yazi/yazi.toml +15 -0
  216. package/zsh/.zshrc +145 -0
  217. package/zsh/starship.toml +20 -0
  218. 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: