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,427 @@
1
+ --- *mini.nvim* Collection of minimal, independent and fast Lua modules
2
+ ---
3
+ --- MIT License Copyright (c) 2021 Evgeni Chasnovski
4
+
5
+ --- |mini.nvim| is a collection of minimal, independent, and fast Lua modules
6
+ --- dedicated to improve Neovim (version 0.10 and higher) experience. Each
7
+ --- module can be considered as a separate sub-plugin.
8
+ ---
9
+ --- Table of contents:
10
+ ---
11
+ --- General principles .......................... |mini.nvim-general-principles|
12
+ --- Module list ........................................ |mini.nvim-module-list|
13
+ --- Disabling recipes ............................ |mini.nvim-disabling-recipes|
14
+ --- Buffer-local config ........................ |mini.nvim-buffer-local-config|
15
+ --- Plugin color schemes ............................. |mini.nvim-color-schemes|
16
+ --- Extend and create a/i textobjects ................................ |mini.ai|
17
+ --- Align text interactively ...................................... |mini.align|
18
+ --- Animate common Neovim actions ............................... |mini.animate|
19
+ --- Base16 colorscheme creation .................................. |mini.base16|
20
+ --- Common configuration presets ................................. |mini.basics|
21
+ --- Go forward/backward with square brackets .................. |mini.bracketed|
22
+ --- Remove buffers ............................................ |mini.bufremove|
23
+ --- Show next key clues ............................................ |mini.clue|
24
+ --- Command line tweaks ......................................... |mini.cmdline|
25
+ --- Tweak and save any color scheme .............................. |mini.colors|
26
+ --- Comment lines ............................................... |mini.comment|
27
+ --- Completion and signature help ............................ |mini.completion|
28
+ --- Autohighlight word under cursor .......................... |mini.cursorword|
29
+ --- Plugin manager ................................................. |mini.deps|
30
+ --- Work with diff hunks ........................................... |mini.diff|
31
+ --- Generate Neovim help files ...................................... |mini.doc|
32
+ --- Extra mini.nvim functionality ................................. |mini.extra|
33
+ --- Navigate and manipulate file system ........................... |mini.files|
34
+ --- Fuzzy matching ................................................ |mini.fuzzy|
35
+ --- Git integration ................................................. |mini.git|
36
+ --- Highlight patterns in text ............................... |mini.hipatterns|
37
+ --- Generate configurable color scheme ............................. |mini.hues|
38
+ --- Icon provider ................................................. |mini.icons|
39
+ --- Visualize and work with indent scope .................... |mini.indentscope|
40
+ --- Get user input ................................................ |mini.input|
41
+ --- Jump to next/previous single character ......................... |mini.jump|
42
+ --- Jump within visible lines .................................... |mini.jump2d|
43
+ --- Special key mappings ......................................... |mini.keymap|
44
+ --- Window with buffer text overview ................................ |mini.map|
45
+ --- Miscellaneous functions ........................................ |mini.misc|
46
+ --- Move any selection in any direction ............................ |mini.move|
47
+ --- Show notifications ........................................... |mini.notify|
48
+ --- Text edit operators ....................................... |mini.operators|
49
+ --- Autopairs ..................................................... |mini.pairs|
50
+ --- Pick anything .................................................. |mini.pick|
51
+ --- Session management ......................................... |mini.sessions|
52
+ --- Manage and expand snippets ................................. |mini.snippets|
53
+ --- Split and join arguments .................................. |mini.splitjoin|
54
+ --- Start screen ................................................ |mini.starter|
55
+ --- Statusline ............................................... |mini.statusline|
56
+ --- Surround actions ........................................... |mini.surround|
57
+ --- Tabline ..................................................... |mini.tabline|
58
+ --- Test Neovim plugins ............................................ |mini.test|
59
+ --- Trailspace (highlight and remove) ........................ |mini.trailspace|
60
+ --- Track and reuse file system visits ........................... |mini.visits|
61
+ ---@tag mini.nvim-table-of-contents
62
+
63
+ --- Design ~
64
+ --- Each module is designed to solve a particular problem targeting balance
65
+ --- between feature-richness (handling as many edge-cases as possible) and
66
+ --- simplicity of implementation/support. Granted, not all of them ended up
67
+ --- with the same balance, but it is the goal nevertheless.
68
+ ---
69
+ --- Independence ~
70
+ --- Modules are independent of each other and can be run without external
71
+ --- dependencies. Although some of them may need dependencies for full experience.
72
+ ---
73
+ --- Structure ~
74
+ --- Each module is a submodule for a placeholder "mini" module. For example,
75
+ --- "surround" module should be referred to as "mini.surround". As later will
76
+ --- be explained, this plugin can also be referred to as "MiniSurround".
77
+ ---
78
+ --- Setup ~
79
+ --- - Each module you want to use should be enabled separately with
80
+ --- `require(<name of module>).setup({})`. Possibly replace `{}` with your
81
+ --- config table or omit altogether to use defaults. You can supply only
82
+ --- parts of config, the rest will be inferred from defaults.
83
+ ---
84
+ --- - Call to module's `setup()` always creates a global Lua object with
85
+ --- coherent camel-case name: `require('mini.surround').setup()` creates
86
+ --- `_G.MiniSurround`. This allows for a simpler usage of plugin available
87
+ --- from `v:lua` like `v:lua.MiniSurround`. Considering this, "module" and
88
+ --- "Lua object" names can be used interchangeably:
89
+ --- `mini.surround` and `MiniSurround` will mean the same thing.
90
+ ---
91
+ --- - Each supplied `config` table (after extending with default values) is
92
+ --- stored in `config` field of global object. Like `MiniSurround.config`.
93
+ ---
94
+ --- - Values of `config`, which affect runtime activity, can be changed on the
95
+ --- fly to have effect. For example, `MiniSurround.config.n_lines` can be
96
+ --- changed during runtime; but changing `MiniSurround.config.mappings` won't
97
+ --- have any effect (as mappings are created once during `setup()`).
98
+ ---
99
+ --- - If module works best with some specific non-default option value, it is
100
+ --- set during `setup()`. If the value is not essential to module's functionality,
101
+ --- it is done only if user or another plugin hasn't set it beforehand (no
102
+ --- matter the value).
103
+ ---
104
+ --- Buffer local configuration ~
105
+ --- Each module can be additionally configured to use certain runtime config
106
+ --- settings locally to buffer. See |mini.nvim-buffer-local-config| for more
107
+ --- information.
108
+ ---
109
+ --- Buffer names ~
110
+ --- All module-related buffers are named according to the following format:
111
+ --- `mini<module-name>://<buffer-number>/<useful-info>` (forward slashes are
112
+ --- used on any platform; `<useful-info>` may be empty). This structure allows
113
+ --- creating identifiable, reasonably unique, and useful buffer names.
114
+ --- For example, |mini.files| buffers are created per displayed directory/file with
115
+ --- names like `minifiles://10/path/to/displayed/directory`.
116
+ ---
117
+ --- Disabling ~
118
+ --- Each module's core functionality can be disabled globally or locally to
119
+ --- buffer. See "Disabling" section in module's help page for more details.
120
+ --- See |mini.nvim-disabling-recipes| for common recipes.
121
+ ---
122
+ --- Silencing ~
123
+ --- Each module can be configured to not show non-error feedback globally or
124
+ --- locally to buffer. See "Silencing" section in module's help for more details.
125
+ ---
126
+ --- Highlighting ~
127
+ --- Appearance of module's output is controlled by certain set of highlight
128
+ --- groups (see |highlight-groups|). By default they usually link to some
129
+ --- semantically close built-in highlight group. Use |:highlight| command or
130
+ --- |nvim_set_hl()| Lua function to customize highlighting. To see a more
131
+ --- calibrated look, use |mini.hues|, |mini.base16|, or plugin's colorschemes.
132
+ ---
133
+ --- Stability ~
134
+ --- Each module upon release is considered to be relatively stable: both in
135
+ --- terms of setup and functionality. Any non-bugfix backward-incompatible
136
+ --- change will be released gradually as much as possible.
137
+ ---
138
+ --- Not filetype and language specific ~
139
+ --- Including functionality which needs several filetype/language specific
140
+ --- implementations is an explicit no-goal of this project. This is mostly due
141
+ --- to the potential increase in maintenance to keep implementation up to date.
142
+ --- However, any part which might need filetype/language specific tuning should
143
+ --- be designed to allow it by letting user set proper buffer options and/or
144
+ --- local configuration.
145
+ ---@tag mini.nvim-general-principles
146
+
147
+ --- - |mini.ai| - extend and create `a`/`i` textobjects (like in `di(` or
148
+ --- `va"`). It enhances some builtin |text-objects| (like |a(|, |a)|, |a'|,
149
+ --- and more), creates new ones (like `a*`, `a<Space>`, `af`, `a?`, and
150
+ --- more), and allows user to create their own (like based on treesitter, and
151
+ --- more). Supports dot-repeat, `v:count`, different search methods,
152
+ --- consecutive application, and customization via Lua patterns or functions.
153
+ --- Has builtins for brackets, quotes, function call, argument, tag, user
154
+ --- prompt, and any punctuation/digit/whitespace character.
155
+ ---
156
+ --- - |mini.align| - align text interactively (with or without instant preview).
157
+ --- Allows rich and flexible customization of both alignment rules and user
158
+ --- interaction. Works with charwise, linewise, and blockwise selections in
159
+ --- both Normal mode (on textobject/motion; with dot-repeat) and Visual mode.
160
+ ---
161
+ --- - |mini.animate| - animate common Neovim actions. Has "works out of the box"
162
+ --- builtin animations for cursor movement, scroll, resize, window open and
163
+ --- close. All of them can be customized and enabled/disabled independently.
164
+ ---
165
+ --- - |mini.base16| - fast implementation of base16 theme for manually supplied
166
+ --- palette. Supports 30+ plugin integrations. Has unique palette generator
167
+ --- which needs only background and foreground colors.
168
+ ---
169
+ --- - |mini.basics| - common configuration presets. Has configurable presets for
170
+ --- options, mappings, and autocommands. It doesn't change option or mapping
171
+ --- if it was manually created.
172
+ ---
173
+ --- - |mini.bracketed| - go forward/backward with square brackets. Among others,
174
+ --- supports variety of non-trivial targets: comments, files on disk, indent
175
+ --- changes, tree-sitter nodes, linear undo states, yank history entries.
176
+ ---
177
+ --- - |mini.bufremove| - buffer removing (unshow, delete, wipeout) while saving
178
+ --- window layout.
179
+ ---
180
+ --- - |mini.clue| - show next key clues. Implements custom key query process with
181
+ --- customizable opt-in triggers, next key descriptions (clues), hydra-like
182
+ --- submodes, window delay/config. Provides clue sets for some built-in
183
+ --- concepts: `g`/`z` keys, window commands, etc.
184
+ ---
185
+ --- - |mini.cmdline| - command line tweaks. Adds autocompletion with customizable
186
+ --- delay, autocorrection for words with fixed candidates, and autopeek command
187
+ --- range in a floating window with customizable context size.
188
+ ---
189
+ --- - |mini.colors| - tweak and save any color scheme. Can create colorscheme
190
+ --- object with methods to invert/set/modify/etc.
191
+ --- lightness/saturation/hue/temperature/etc. of foreground/background/all
192
+ --- colors, infer cterm attributes, add transparency, save to a file and more.
193
+ --- Has functionality for interactive experiments and animation of
194
+ --- transition between color schemes.
195
+ ---
196
+ --- - |mini.comment| - fast and familiar per-line code commenting.
197
+ ---
198
+ --- - |mini.completion| - async (with customizable "debounce" delay) "two-stage
199
+ --- chain completion": first builtin LSP, then configurable fallback. Also
200
+ --- has functionality for completion item info and function signature (both
201
+ --- in floating window appearing after customizable delay).
202
+ ---
203
+ --- - |mini.cursorword| - automatic highlighting of word under cursor (displayed
204
+ --- after customizable delay). Current word under cursor can be highlighted
205
+ --- differently.
206
+ ---
207
+ --- - |mini.deps| - plugin manager for plugins outside of |mini.nvim|. Uses Git and
208
+ --- built-in packages to install, update, clean, and snapshot plugins.
209
+ ---
210
+ --- - |mini.diff| - visualize difference between buffer text and its reference
211
+ --- interactively (with colored signs or line numbers). Uses Git index as
212
+ --- default reference. Provides toggleable overview in text area, built-in
213
+ --- apply/reset/textobject/goto mappings.
214
+ ---
215
+ --- - |mini.doc| - generation of help files from EmmyLua-like annotations.
216
+ --- Allows flexible customization of output via hook functions. Used for
217
+ --- documenting this plugin.
218
+ ---
219
+ --- - |mini.extra| - extra mini.nvim functionality. Contains |mini.pick| pickers,
220
+ --- |mini.ai| textobjects, and more.
221
+ ---
222
+ --- - |mini.files| - navigate and manipulate file system. A file explorer with
223
+ --- column view capable of manipulating file system by editing text. Can
224
+ --- create/delete/rename/copy/move files/directories inside and across
225
+ --- directories. For full experience needs enabled |mini.icons| module (but works
226
+ --- without it).
227
+ ---
228
+ --- - |mini.fuzzy| - functions for fast and simple fuzzy matching. It has
229
+ --- not only functions to perform fuzzy matching of one string to others, but
230
+ --- also a sorter for `nvim-telescope/telescope.nvim`.
231
+ ---
232
+ --- - |mini.git| - Git integration (https://git-scm.com/). Implements tracking of
233
+ --- Git related data (root, branch, etc.), |:Git| command for better integration
234
+ --- with running Neovim instance, and various helpers to explore Git history.
235
+ ---
236
+ --- - |mini.hipatterns| - highlight patterns in text with configurable highlighters
237
+ --- (pattern and/or highlight group can be string or callable).
238
+ --- Works asynchronously with configurable debounce delay.
239
+ ---
240
+ --- - |mini.hues| - generate configurable color scheme. Takes only background
241
+ --- and foreground colors as required arguments. Can adjust number of hues
242
+ --- for non-base colors, saturation, accent color, plugin integration.
243
+ ---
244
+ --- - |mini.icons| - icon provider with fixed set of highlight groups.
245
+ --- Supports various categories, icon and style customizations, caching for
246
+ --- performance. Integrates with Neovim's filetype matching.
247
+ ---
248
+ --- - |mini.indentscope| - visualize and operate on indent scope. Supports
249
+ --- customization of debounce delay, animation style, and different
250
+ --- granularity of options for scope computing algorithm.
251
+ ---
252
+ --- - |mini.input| - get user input with fully customizable key and view handling.
253
+ --- Can show as floating window, statusline/tabline/winbar, virtual line/text.
254
+ --- Provides |vim.ui.input()| implementation.
255
+ ---
256
+ --- - |mini.jump| - minimal and fast module for smarter jumping to a single
257
+ --- character.
258
+ ---
259
+ --- - |mini.jump2d| - minimal and fast Lua plugin for jumping (moving cursor)
260
+ --- within visible lines via iterative label filtering. Supports custom jump
261
+ --- targets (spots), labels, hooks, allowed windows and lines, and more.
262
+ ---
263
+ --- - |mini.keymap| - utilities to make special key mappings: multi-step actions
264
+ --- (with built-in steps for "smart" <Tab>, <S-Tab>, <CR>, <BS>),
265
+ --- combos (more general version of "better escape" like behavior).
266
+ ---
267
+ --- - |mini.map| - window with buffer text overview, scrollbar, and highlights.
268
+ --- Allows configurable symbols for line encode and scrollbar, extensible
269
+ --- highlight integration (with pre-built ones for builtin search, diagnostic,
270
+ --- git line status), window properties, and more.
271
+ ---
272
+ --- - |mini.misc| - collection of miscellaneous useful functions. Like `put()`
273
+ --- and `put_text()` which print Lua objects to command line and current
274
+ --- buffer respectively.
275
+ ---
276
+ --- - |mini.move| - move any selection in any direction. Supports any Visual
277
+ --- mode (charwise, linewise, blockwise) and Normal mode (current line) for
278
+ --- all four directions (left, right, down, up). Respects `count` and undo.
279
+ ---
280
+ --- - |mini.notify| - show one or more highlighted notifications in a single window.
281
+ --- Provides both low-level functions (add, update, remove, clear) and maker
282
+ --- of |vim.notify()| implementation. Sets up automated LSP progress updates.
283
+ ---
284
+ --- - |mini.operators| - various text edit operators: replace, exchange,
285
+ --- multiply, sort, evaluate. Creates mappings to operate on textobject,
286
+ --- line, and visual selection. Supports |[count]| and dot-repeat.
287
+ ---
288
+ --- - |mini.pairs| - autopairs plugin which has minimal defaults and
289
+ --- functionality to do per-key expression mappings.
290
+ ---
291
+ --- - |mini.pick| - general purpose interactive non-blocking picker with
292
+ --- toggleable preview. Has fast default matching with fuzzy/exact/grouped
293
+ --- modes. Provides most used built-in pickers for files, pattern matches,
294
+ --- buffers, etc. For full experience needs enabled |mini.icons| module (but
295
+ --- works without it).
296
+ ---
297
+ --- - |mini.sessions| - session management (read, write, delete) which works
298
+ --- using |:mksession|. Implements both global (from configured directory) and
299
+ --- local (from current directory) sessions.
300
+ ---
301
+ --- - |mini.snippets| - manage and expand snippets. Supports only syntax from LSP
302
+ --- specification. Provides flexible loaders to manage snippet files, exact and
303
+ --- fuzzy prefix matching, interactive selection, and rich interactive snippet
304
+ --- session experience with dynamic tabstop visualization.
305
+ ---
306
+ --- - |mini.splitjoin| - split and join arguments (regions inside brackets
307
+ --- between allowed separators). Has customizable pre and post hooks.
308
+ --- Works inside comments.
309
+ ---
310
+ --- - |mini.starter| - minimal, fast, and flexible start screen. Displayed items
311
+ --- are fully customizable both in terms of what they do and how they look
312
+ --- (with reasonable defaults). Item selection can be done using prefix query
313
+ --- with instant visual feedback.
314
+ ---
315
+ --- - |mini.statusline| - minimal and fast statusline. Has ability to use custom
316
+ --- content supplied with concise function (using module's provided section
317
+ --- functions) along with builtin default. For full experience needs
318
+ --- enabled |mini.diff|, |mini.git|, and |mini.icons| modules (but works without
319
+ --- any of them).
320
+ ---
321
+ --- - |mini.surround| - fast and feature-rich surround plugin. Add, delete,
322
+ --- replace, find, highlight surrounding (like pair of parenthesis, quotes,
323
+ --- etc.). Supports dot-repeat, `v:count`, different search methods,
324
+ --- "last"/"next" extended mappings, customization via Lua patterns or
325
+ --- functions, and more. Has builtins for brackets, function call, tag, user
326
+ --- prompt, and any alphanumeric/punctuation/whitespace character.
327
+ ---
328
+ --- - |mini.test| - framework for writing extensive Neovim plugin tests.
329
+ --- Supports hierarchical tests, hooks, parametrization, filtering (like from
330
+ --- current file or cursor position), screen tests, "busted-style" emulation,
331
+ --- customizable reporters, and more. Designed to be used with provided
332
+ --- wrapper for managing child Neovim processes.
333
+ ---
334
+ --- - |mini.tabline| - minimal tabline which always shows listed (see |'buflisted'|)
335
+ --- buffers. Allows showing extra information section in case of multiple vim
336
+ --- tabpages. For full experience needs enabled |mini.icons| module (but works
337
+ --- without it).
338
+ ---
339
+ --- - |mini.trailspace| - automatic highlighting of trailing whitespace with
340
+ --- functionality to remove it.
341
+ ---
342
+ --- - |mini.visits| - track and reuse file system visits. Tracks data about each
343
+ --- file/directory visit (after delay) and stores it (only) locally. This can be
344
+ --- used to get a list of "recent"/"frequent"/"frecent" visits.
345
+ --- Allows persistently adding labels to visits enabling flexible workflow.
346
+ ---@tag mini.nvim-module-list
347
+
348
+ --- Each module's core functionality can be disabled globally or buffer-locally
349
+ --- by creating appropriate global or buffer-scoped variables equal to |v:true|.
350
+ --- Functionality is disabled if at least one of |g:| or |b:| variables is `v:true`.
351
+ ---
352
+ --- Variable names have the same structure: `{g,b}:mini*_disable` where `*` is
353
+ --- module's lowercase name. For example, `g:minianimate_disable` disables
354
+ --- |mini.animate| globally and `b:minianimate_disable` - for current buffer.
355
+ --- Note: in this section disabling |mini.animate| is used as example;
356
+ --- everything holds for other module variables.
357
+ ---
358
+ --- Considering high number of different scenarios and customization intentions,
359
+ --- writing exact rules for disabling module's functionality is left to user.
360
+ ---
361
+ --- # Manual disabling ~
362
+ --- >lua
363
+ --- -- Disable globally
364
+ --- vim.g.minianimate_disable = true
365
+ ---
366
+ --- -- Disable for current buffer
367
+ --- vim.b.minianimate_disable = true
368
+ ---
369
+ --- -- Toggle (disable if enabled, enable if disabled)
370
+ --- vim.g.minianimate_disable = not vim.g.minianimate_disable -- globally
371
+ --- vim.b.minianimate_disable = not vim.b.minianimate_disable -- for buffer
372
+ --- <
373
+ --- # Automated disabling ~
374
+ ---
375
+ --- Automated disabling is suggested to be done inside autocommands: >lua
376
+ ---
377
+ --- -- Disable for a certain filetype (for example, "lua")
378
+ --- local f = function(args) vim.b[args.buf].minianimate_disable = true end
379
+ --- vim.api.nvim_create_autocmd('Filetype', { pattern = 'lua', callback = f })
380
+ ---
381
+ --- -- Enable only for certain filetypes (for example, "lua" and "help")
382
+ --- local f = function(args)
383
+ --- local ft = vim.bo[args.buf].filetype
384
+ --- if ft == 'lua' or ft == 'help' then return end
385
+ --- vim.b[args.buf].minianimate_disable = true
386
+ --- end
387
+ --- vim.api.nvim_create_autocmd('Filetype', { callback = f })
388
+ ---
389
+ --- -- Disable in Visual mode
390
+ --- local f_en = function(args) vim.b[args.buf].minianimate_disable = false end
391
+ --- local enable_opts = { pattern = '[vV\x16]*:*', callback = f_en }
392
+ --- vim.api.nvim_create_autocmd('ModeChanged', enable_opts)
393
+ ---
394
+ --- local f_dis = function(args) vim.b[args.buf].minianimate_disable = true end
395
+ --- local disable_opts = { pattern = '*:[vV\x16]*', callback = f_dis }
396
+ --- vim.api.nvim_create_autocmd('ModeChanged', disable_opts)
397
+ ---
398
+ --- -- Disable in Terminal buffer
399
+ --- local f = function(args) vim.b[args.buf].minianimate_disable = true end
400
+ --- vim.api.nvim_create_autocmd('TermOpen', { callback = f })
401
+ --- <
402
+ ---@tag mini.nvim-disabling-recipes
403
+
404
+ --- Each module can be additionally configured locally to buffer by creating
405
+ --- appropriate buffer-scoped variable with values to override. It affects only
406
+ --- runtime options and not those used once during setup (like most `mappings`).
407
+ ---
408
+ --- Variable names have the same structure: `b:mini*_config` where `*` is
409
+ --- module's lowercase name. For example, `b:minianimate_config` can store
410
+ --- information about how |mini.animate| will act inside current buffer. Its
411
+ --- value should be a table with same structure as module's `config`. Example: >lua
412
+ ---
413
+ --- -- Disable scroll animation in current buffer
414
+ --- vim.b.minianimate_config = { scroll = { enable = false } }
415
+ --- <
416
+ --- Considering high number of different scenarios and customization intentions,
417
+ --- writing exact rules for module's buffer local configuration is left to
418
+ --- user. It is done in similar fashion to |mini.nvim-disabling-recipes|.
419
+ ---@tag mini.nvim-buffer-local-config
420
+
421
+ --- - Color schemes based on |mini.hues|: |MiniHues-color-schemes|.
422
+ --- - Color schemes based on |mini.base16|: |MiniBase16-color-schemes|.
423
+ ---@tag mini.nvim-color-schemes
424
+
425
+ vim.notify([[Do not `require('mini')` directly. Setup every module separately.]])
426
+
427
+ return {}