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,190 @@
|
|
|
1
|
+
<p align="center"> <img src="https://github.com/nvim-mini/assets/blob/main/logo-2/logo-ai_readme.png?raw=true" alt="mini.ai" style="max-width:100%;border:solid 2px"/> </p>
|
|
2
|
+
|
|
3
|
+
### Extend and create `a`/`i` textobjects
|
|
4
|
+
|
|
5
|
+
- It enhances some builtin textobjects (like `a(`, `a)`, `a'`, and more), creates new ones (like `a*`, `a<Space>`, `af`, `a?`, and more), and allows user to create their own (like based on treesitter, and more).
|
|
6
|
+
- Supports dot-repeat, `v:count`, different search methods, consecutive application, and customization via Lua patterns or functions.
|
|
7
|
+
- Has builtins for brackets, quotes, function call, argument, tag, user prompt, and any punctuation/digit/whitespace character.
|
|
8
|
+
|
|
9
|
+
See more details in [Features](#features) and [Documentation](../doc/mini-ai.txt).
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
> [!NOTE]
|
|
14
|
+
> This was previously hosted at a personal `echasnovski` GitHub account. It was transferred to a dedicated organization to improve long term project stability. See more details [here](https://github.com/nvim-mini/mini.nvim/discussions/1970).
|
|
15
|
+
|
|
16
|
+
⦿ This is a part of [mini.nvim](https://nvim-mini.org/mini.nvim) library. Please use [this link](https://nvim-mini.org/mini.nvim/readmes/mini-ai) if you want to mention this module.
|
|
17
|
+
|
|
18
|
+
⦿ All contributions (issues, pull requests, discussions, etc.) are done inside of 'mini.nvim'.
|
|
19
|
+
|
|
20
|
+
⦿ See [whole library documentation](https://nvim-mini.org/mini.nvim/doc/mini-nvim) to learn about general design principles, disable/configuration recipes, and more.
|
|
21
|
+
|
|
22
|
+
⦿ See [MiniMax](https://nvim-mini.org/MiniMax) for a full config example that uses this module.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
If you want to help this project grow but don't know where to start, check out [contributing guides of 'mini.nvim'](https://nvim-mini.org/mini.nvim/CONTRIBUTING) or leave a Github star for 'mini.nvim' project and/or any its standalone Git repositories.
|
|
27
|
+
|
|
28
|
+
## Demo
|
|
29
|
+
|
|
30
|
+
<!-- Demo source: https://github.com/nvim-mini/assets/blob/main/demo/demo-ai.mp4 -->
|
|
31
|
+
https://user-images.githubusercontent.com/24854248/181909691-b6f6b677-c37f-468f-85db-8eb8b1e1314e.mp4
|
|
32
|
+
|
|
33
|
+
## Features
|
|
34
|
+
|
|
35
|
+
- Customizable creation of `a`/`i` textobjects using Lua patterns and functions. Supports:
|
|
36
|
+
- Dot-repeat.
|
|
37
|
+
- `v:count`.
|
|
38
|
+
- Different search methods (see `:h MiniAi.config`).
|
|
39
|
+
- Consecutive application (update selection without leaving Visual mode).
|
|
40
|
+
- Aliases for multiple textobjects.
|
|
41
|
+
- Comprehensive builtin textobjects (see more at `:h MiniAi-builtin-textobjects`):
|
|
42
|
+
- Balanced brackets (with and without whitespace) plus alias.
|
|
43
|
+
- Balanced quotes plus alias.
|
|
44
|
+
- Function call.
|
|
45
|
+
- Argument.
|
|
46
|
+
- Tag.
|
|
47
|
+
- Derived from user prompt.
|
|
48
|
+
- Default for anything but Latin letters (to fall back to `:h text-objects`).
|
|
49
|
+
- Motions for jumping to left/right edge of textobject.
|
|
50
|
+
- Set of specification generators to tweak some builtin textobjects (see
|
|
51
|
+
help for `MiniAi.gen_spec`).
|
|
52
|
+
- Treesitter textobjects (through `MiniAi.gen_spec.treesitter()` helper).
|
|
53
|
+
|
|
54
|
+
## Installation
|
|
55
|
+
|
|
56
|
+
This plugin can be installed as part of 'mini.nvim' library (**recommended**) or as a standalone Git repository.
|
|
57
|
+
|
|
58
|
+
There are two branches to install from:
|
|
59
|
+
|
|
60
|
+
- `main` (default, **recommended**) will have latest development version of plugin. All changes since last stable release should be perceived as being in beta testing phase (meaning they already passed alpha-testing and are moderately settled).
|
|
61
|
+
- `stable` will be updated only upon releases with code tested during public beta-testing phase in `main` branch.
|
|
62
|
+
|
|
63
|
+
Here are code snippets for some common installation methods (use only one):
|
|
64
|
+
|
|
65
|
+
<details>
|
|
66
|
+
<summary><b>(Recommended)</b> With <a href="https://neovim.io/doc/user/helptag.html?tag=vim.pack">vim.pack</a> (on Neovim 0.12 and newer)</summary>
|
|
67
|
+
|
|
68
|
+
**Full library**
|
|
69
|
+
|
|
70
|
+
Follow ['mini.nvim' installation](https://nvim-mini.org/mini.nvim#installation).
|
|
71
|
+
|
|
72
|
+
**Standalone plugin**
|
|
73
|
+
|
|
74
|
+
Main branch:
|
|
75
|
+
|
|
76
|
+
```lua
|
|
77
|
+
vim.pack.add({ 'https://github.com/nvim-mini/mini.ai' })
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Stable branch:
|
|
81
|
+
|
|
82
|
+
```lua
|
|
83
|
+
vim.pack.add({
|
|
84
|
+
{ src = 'https://github.com/nvim-mini/mini.ai', version = 'stable' },
|
|
85
|
+
})
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
</details>
|
|
89
|
+
|
|
90
|
+
<details>
|
|
91
|
+
<summary>With <a href="https://nvim-mini.org/mini.nvim/readmes/mini-deps">mini.deps</a> (before Neovim 0.12)</summary>
|
|
92
|
+
|
|
93
|
+
**Full library**
|
|
94
|
+
|
|
95
|
+
Follow [recommended 'mini.deps' installation](https://nvim-mini.org/mini.nvim/readmes/mini-deps#installation).
|
|
96
|
+
|
|
97
|
+
**Standalone plugin**:
|
|
98
|
+
|
|
99
|
+
Main branch:
|
|
100
|
+
|
|
101
|
+
```lua
|
|
102
|
+
add('nvim-mini/mini.ai')
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Stable branch:
|
|
106
|
+
|
|
107
|
+
```lua
|
|
108
|
+
add({ source = 'nvim-mini/mini.ai', checkout = 'stable' })
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
</details>
|
|
112
|
+
|
|
113
|
+
<details>
|
|
114
|
+
<summary>With <a href="https://github.com/folke/lazy.nvim">folke/lazy.nvim</a></summary>
|
|
115
|
+
|
|
116
|
+
**Full library**
|
|
117
|
+
|
|
118
|
+
Follow ['mini.nvim' installation](https://nvim-mini.org/mini.nvim#installation).
|
|
119
|
+
|
|
120
|
+
**Standalone plugin**
|
|
121
|
+
|
|
122
|
+
Main branch:
|
|
123
|
+
|
|
124
|
+
```lua
|
|
125
|
+
{ 'nvim-mini/mini.ai', version = false },
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
Stable branch:
|
|
129
|
+
|
|
130
|
+
```lua
|
|
131
|
+
{ 'nvim-mini/mini.ai', version = '*' },
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
</details>
|
|
135
|
+
|
|
136
|
+
**Important**: don't forget to call `require('mini.ai').setup()` to enable its functionality.
|
|
137
|
+
|
|
138
|
+
**Note**: if you are on Windows, there might be problems with too long file paths (like `error: unable to create file <some file name>: Filename too long`). Try doing one of the following:
|
|
139
|
+
|
|
140
|
+
- Enable corresponding git global config value: `git config --system core.longpaths true`. Then try to reinstall.
|
|
141
|
+
- Install plugin in other place with shorter path.
|
|
142
|
+
|
|
143
|
+
## Default config
|
|
144
|
+
|
|
145
|
+
```lua
|
|
146
|
+
-- No need to copy this inside `setup()`. Will be used automatically.
|
|
147
|
+
{
|
|
148
|
+
-- Table with textobject id as fields, textobject specification as values.
|
|
149
|
+
-- Also use this to disable builtin textobjects. See |MiniAi.config|.
|
|
150
|
+
custom_textobjects = nil,
|
|
151
|
+
|
|
152
|
+
-- Module mappings. Use `''` (empty string) to disable one.
|
|
153
|
+
mappings = {
|
|
154
|
+
-- Main textobject prefixes
|
|
155
|
+
around = 'a',
|
|
156
|
+
inside = 'i',
|
|
157
|
+
|
|
158
|
+
-- Next/last variants
|
|
159
|
+
-- NOTE: This (deliberately) overrides Neovim>=0.12 built-in incremental
|
|
160
|
+
-- selection mappings. See `:h MiniAi-default-an-in` for more details.
|
|
161
|
+
around_next = 'an',
|
|
162
|
+
inside_next = 'in',
|
|
163
|
+
around_last = 'al',
|
|
164
|
+
inside_last = 'il',
|
|
165
|
+
|
|
166
|
+
-- Move cursor to corresponding edge of `a` textobject
|
|
167
|
+
goto_left = 'g[',
|
|
168
|
+
goto_right = 'g]',
|
|
169
|
+
},
|
|
170
|
+
|
|
171
|
+
-- Number of lines within which textobject is searched
|
|
172
|
+
n_lines = 50,
|
|
173
|
+
|
|
174
|
+
-- How to search for object (first inside current line, then inside
|
|
175
|
+
-- neighborhood). One of 'cover', 'cover_or_next', 'cover_or_prev',
|
|
176
|
+
-- 'cover_or_nearest', 'next', 'previous', 'nearest'.
|
|
177
|
+
search_method = 'cover_or_next',
|
|
178
|
+
|
|
179
|
+
-- Whether to disable showing non-error feedback
|
|
180
|
+
-- This also affects (purely informational) helper messages shown after
|
|
181
|
+
-- idle time if user input is required.
|
|
182
|
+
silent = false,
|
|
183
|
+
}
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
## Similar plugins
|
|
187
|
+
|
|
188
|
+
- [wellle/targets.vim](https://github.com/wellle/targets.vim)
|
|
189
|
+
- [nvim-treesitter/nvim-treesitter-textobjects](https://github.com/nvim-treesitter/nvim-treesitter-textobjects)
|
|
190
|
+
- [kana/vim-textobj-user](https://github.com/kana/vim-textobj-user)
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
<p align="center"> <img src="https://github.com/nvim-mini/assets/blob/main/logo-2/logo-align_readme.png?raw=true" alt="mini.align" style="max-width:100%;border:solid 2px"/> </p>
|
|
2
|
+
|
|
3
|
+
### Align text interactively
|
|
4
|
+
|
|
5
|
+
See more details in [Features](#features) and [Documentation](../doc/mini-align.txt).
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
> [!NOTE]
|
|
10
|
+
> This was previously hosted at a personal `echasnovski` GitHub account. It was transferred to a dedicated organization to improve long term project stability. See more details [here](https://github.com/nvim-mini/mini.nvim/discussions/1970).
|
|
11
|
+
|
|
12
|
+
⦿ This is a part of [mini.nvim](https://nvim-mini.org/mini.nvim) library. Please use [this link](https://nvim-mini.org/mini.nvim/readmes/mini-align) if you want to mention this module.
|
|
13
|
+
|
|
14
|
+
⦿ All contributions (issues, pull requests, discussions, etc.) are done inside of 'mini.nvim'.
|
|
15
|
+
|
|
16
|
+
⦿ See [whole library documentation](https://nvim-mini.org/mini.nvim/doc/mini-nvim) to learn about general design principles, disable/configuration recipes, and more.
|
|
17
|
+
|
|
18
|
+
⦿ See [MiniMax](https://nvim-mini.org/MiniMax) for a full config example that uses this module.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
If you want to help this project grow but don't know where to start, check out [contributing guides of 'mini.nvim'](https://nvim-mini.org/mini.nvim/CONTRIBUTING) or leave a Github star for 'mini.nvim' project and/or any its standalone Git repositories.
|
|
23
|
+
|
|
24
|
+
## Demo
|
|
25
|
+
|
|
26
|
+
<!-- Demo source: https://github.com/nvim-mini/assets/blob/main/demo/demo-align.mp4 -->
|
|
27
|
+
https://user-images.githubusercontent.com/24854248/191686791-2c8b345a-2bcc-4de7-a065-5e7a36e2eb1a.mp4
|
|
28
|
+
|
|
29
|
+
## Features
|
|
30
|
+
|
|
31
|
+
- Alignment is done in three main steps:
|
|
32
|
+
- **Split** lines into parts based on Lua pattern(s) or user-supplied rule.
|
|
33
|
+
- **Justify** parts for certain side(s) to be same width inside columns.
|
|
34
|
+
- **Merge** parts to be lines, with customizable delimiter(s).
|
|
35
|
+
|
|
36
|
+
Each main step can be preceded by other steps (pre-steps) to achieve highly customizable outcome. See `steps` value in `:h MiniAlign.config`. For more details, see `:h MiniAlign-glossary` and `:h MiniAlign-algorithm`.
|
|
37
|
+
- User can control alignment interactively by pressing customizable modifiers (single keys representing how alignment steps and/or options should change). Some of default modifiers:
|
|
38
|
+
- Press `s` to enter split Lua pattern.
|
|
39
|
+
- Press `j` to choose justification side from available ones ("left", "center", "right", "none").
|
|
40
|
+
- Press `m` to enter merge delimiter.
|
|
41
|
+
- Press `f` to enter filter Lua expression to configure which parts will be affected (like "align only first column").
|
|
42
|
+
- Press `i` to ignore some commonly unwanted split matches.
|
|
43
|
+
- Press `p` to pair neighboring parts so they be aligned together.
|
|
44
|
+
- Press `t` to trim whitespace from parts.
|
|
45
|
+
- Press `<BS>` (backspace) to delete some last pre-step.
|
|
46
|
+
|
|
47
|
+
For more details, see `:h MiniAlign-modifiers-builtin` and `:h MiniAlign-examples`.
|
|
48
|
+
- Alignment can be done with instant preview (result is updated after each modifier) or without it (result is shown and accepted after non-default split pattern is set).
|
|
49
|
+
- Every user interaction is accompanied with helper status message showing relevant information about current alignment process.
|
|
50
|
+
|
|
51
|
+
## Installation
|
|
52
|
+
|
|
53
|
+
This plugin can be installed as part of 'mini.nvim' library (**recommended**) or as a standalone Git repository.
|
|
54
|
+
|
|
55
|
+
There are two branches to install from:
|
|
56
|
+
|
|
57
|
+
- `main` (default, **recommended**) will have latest development version of plugin. All changes since last stable release should be perceived as being in beta testing phase (meaning they already passed alpha-testing and are moderately settled).
|
|
58
|
+
- `stable` will be updated only upon releases with code tested during public beta-testing phase in `main` branch.
|
|
59
|
+
|
|
60
|
+
Here are code snippets for some common installation methods (use only one):
|
|
61
|
+
|
|
62
|
+
<details>
|
|
63
|
+
<summary><b>(Recommended)</b> With <a href="https://neovim.io/doc/user/helptag.html?tag=vim.pack">vim.pack</a> (on Neovim 0.12 and newer)</summary>
|
|
64
|
+
|
|
65
|
+
**Full library**
|
|
66
|
+
|
|
67
|
+
Follow ['mini.nvim' installation](https://nvim-mini.org/mini.nvim#installation).
|
|
68
|
+
|
|
69
|
+
**Standalone plugin**
|
|
70
|
+
|
|
71
|
+
Main branch:
|
|
72
|
+
|
|
73
|
+
```lua
|
|
74
|
+
vim.pack.add({ 'https://github.com/nvim-mini/mini.align' })
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Stable branch:
|
|
78
|
+
|
|
79
|
+
```lua
|
|
80
|
+
vim.pack.add({
|
|
81
|
+
{ src = 'https://github.com/nvim-mini/mini.align', version = 'stable' },
|
|
82
|
+
})
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
</details>
|
|
86
|
+
|
|
87
|
+
<details>
|
|
88
|
+
<summary>With <a href="https://nvim-mini.org/mini.nvim/readmes/mini-deps">mini.deps</a> (before Neovim 0.12)</summary>
|
|
89
|
+
|
|
90
|
+
**Full library**
|
|
91
|
+
|
|
92
|
+
Follow [recommended 'mini.deps' installation](https://nvim-mini.org/mini.nvim/readmes/mini-deps#installation).
|
|
93
|
+
|
|
94
|
+
**Standalone plugin**:
|
|
95
|
+
|
|
96
|
+
Main branch:
|
|
97
|
+
|
|
98
|
+
```lua
|
|
99
|
+
add('nvim-mini/mini.align')
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Stable branch:
|
|
103
|
+
|
|
104
|
+
```lua
|
|
105
|
+
add({ source = 'nvim-mini/mini.align', checkout = 'stable' })
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
</details>
|
|
109
|
+
|
|
110
|
+
<details>
|
|
111
|
+
<summary>With <a href="https://github.com/folke/lazy.nvim">folke/lazy.nvim</a></summary>
|
|
112
|
+
|
|
113
|
+
**Full library**
|
|
114
|
+
|
|
115
|
+
Follow ['mini.nvim' installation](https://nvim-mini.org/mini.nvim#installation).
|
|
116
|
+
|
|
117
|
+
**Standalone plugin**
|
|
118
|
+
|
|
119
|
+
Main branch:
|
|
120
|
+
|
|
121
|
+
```lua
|
|
122
|
+
{ 'nvim-mini/mini.align', version = false },
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
Stable branch:
|
|
126
|
+
|
|
127
|
+
```lua
|
|
128
|
+
{ 'nvim-mini/mini.align', version = '*' },
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
</details>
|
|
132
|
+
|
|
133
|
+
**Important**: don't forget to call `require('mini.align').setup()` to enable its functionality.
|
|
134
|
+
|
|
135
|
+
**Note**: if you are on Windows, there might be problems with too long file paths (like `error: unable to create file <some file name>: Filename too long`). Try doing one of the following:
|
|
136
|
+
|
|
137
|
+
- Enable corresponding git global config value: `git config --system core.longpaths true`. Then try to reinstall.
|
|
138
|
+
- Install plugin in other place with shorter path.
|
|
139
|
+
|
|
140
|
+
## Default config
|
|
141
|
+
|
|
142
|
+
```lua
|
|
143
|
+
-- No need to copy this inside `setup()`. Will be used automatically.
|
|
144
|
+
{
|
|
145
|
+
-- Module mappings. Use `''` (empty string) to disable one.
|
|
146
|
+
mappings = {
|
|
147
|
+
start = 'ga',
|
|
148
|
+
start_with_preview = 'gA',
|
|
149
|
+
},
|
|
150
|
+
|
|
151
|
+
-- Modifiers changing alignment steps and/or options
|
|
152
|
+
modifiers = {
|
|
153
|
+
-- Main option modifiers
|
|
154
|
+
['s'] = --<function: enter split pattern>,
|
|
155
|
+
['j'] = --<function: choose justify side>,
|
|
156
|
+
['m'] = --<function: enter merge delimiter>,
|
|
157
|
+
|
|
158
|
+
-- Modifiers adding pre-steps
|
|
159
|
+
['f'] = --<function: filter parts by entering Lua expression>,
|
|
160
|
+
['i'] = --<function: ignore some split matches>,
|
|
161
|
+
['p'] = --<function: pair parts>,
|
|
162
|
+
['t'] = --<function: trim parts>,
|
|
163
|
+
|
|
164
|
+
-- Delete some last pre-step
|
|
165
|
+
['<BS>'] = --<function: delete some last pre-step>,
|
|
166
|
+
|
|
167
|
+
-- Special configurations for common splits
|
|
168
|
+
['='] = --<function: enhanced setup for '='>,
|
|
169
|
+
[','] = --<function: enhanced setup for ','>,
|
|
170
|
+
['|'] = --<function: enhanced setup for '|'>,
|
|
171
|
+
[' '] = --<function: enhanced setup for ' '>,
|
|
172
|
+
},
|
|
173
|
+
|
|
174
|
+
-- Default options controlling alignment process
|
|
175
|
+
options = {
|
|
176
|
+
split_pattern = '',
|
|
177
|
+
justify_side = 'left',
|
|
178
|
+
merge_delimiter = '',
|
|
179
|
+
},
|
|
180
|
+
|
|
181
|
+
-- Default steps performing alignment (if `nil`, default is used)
|
|
182
|
+
steps = {
|
|
183
|
+
pre_split = {},
|
|
184
|
+
split = nil,
|
|
185
|
+
pre_justify = {},
|
|
186
|
+
justify = nil,
|
|
187
|
+
pre_merge = {},
|
|
188
|
+
merge = nil,
|
|
189
|
+
},
|
|
190
|
+
|
|
191
|
+
-- Whether to disable showing non-error feedback
|
|
192
|
+
-- This also affects (purely informational) helper messages shown after
|
|
193
|
+
-- idle time if user input is required.
|
|
194
|
+
silent = false,
|
|
195
|
+
}
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
## Similar plugins
|
|
199
|
+
|
|
200
|
+
- [junegunn/vim-easy-align](https://github.com/junegunn/vim-easy-align)
|
|
201
|
+
- [godlygeek/tabular](https://github.com/godlygeek/tabular)
|
|
202
|
+
- [tommcdo/vim-lion](https://github.com/tommcdo/vim-lion)
|
|
203
|
+
- [Vonr/align.nvim](https://github.com/Vonr/align.nvim)
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
<p align="center"> <img src="https://github.com/nvim-mini/assets/blob/main/logo-2/logo-animate_readme.png?raw=true" alt="mini.animate" style="max-width:100%;border:solid 2px"/> </p>
|
|
2
|
+
|
|
3
|
+
### Animate common Neovim actions
|
|
4
|
+
|
|
5
|
+
See more details in [Features](#features) and [Documentation](../doc/mini-animate.txt).
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
> [!NOTE]
|
|
10
|
+
> This was previously hosted at a personal `echasnovski` GitHub account. It was transferred to a dedicated organization to improve long term project stability. See more details [here](https://github.com/nvim-mini/mini.nvim/discussions/1970).
|
|
11
|
+
|
|
12
|
+
⦿ This is a part of [mini.nvim](https://nvim-mini.org/mini.nvim) library. Please use [this link](https://nvim-mini.org/mini.nvim/readmes/mini-animate) if you want to mention this module.
|
|
13
|
+
|
|
14
|
+
⦿ All contributions (issues, pull requests, discussions, etc.) are done inside of 'mini.nvim'.
|
|
15
|
+
|
|
16
|
+
⦿ See [whole library documentation](https://nvim-mini.org/mini.nvim/doc/mini-nvim) to learn about general design principles, disable/configuration recipes, and more.
|
|
17
|
+
|
|
18
|
+
⦿ See [MiniMax](https://nvim-mini.org/MiniMax) for a full config example that uses this module.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
If you want to help this project grow but don't know where to start, check out [contributing guides of 'mini.nvim'](https://nvim-mini.org/mini.nvim/CONTRIBUTING) or leave a Github star for 'mini.nvim' project and/or any its standalone Git repositories.
|
|
23
|
+
|
|
24
|
+
## Demo
|
|
25
|
+
|
|
26
|
+
<!-- Demo source: https://github.com/nvim-mini/assets/blob/main/demo/demo-animate.mp4 -->
|
|
27
|
+
https://user-images.githubusercontent.com/24854248/215829092-5aba4e8d-94a5-43da-8ef0-243bf0708f76.mp4
|
|
28
|
+
|
|
29
|
+
## Features
|
|
30
|
+
|
|
31
|
+
- Works out of the box with a single `require('mini.animate').setup()`. No extra mappings or commands needed.
|
|
32
|
+
- Animate **cursor movement** inside same buffer by showing customizable path.
|
|
33
|
+
- Animate **scrolling** with a series of subscrolls ("smooth scrolling").
|
|
34
|
+
- Animate **window resize** by gradually changing sizes of all windows.
|
|
35
|
+
- Animate **window open/close** with visually updating floating window.
|
|
36
|
+
- Timings for all actions can be customized independently.
|
|
37
|
+
- Action animations can be enabled/disabled independently.
|
|
38
|
+
- All animations are asynchronous/non-blocking and trigger a targeted event which can be used to perform actions after animation is done.
|
|
39
|
+
- `MiniAnimate.animate()` function which can be used to perform own animations.
|
|
40
|
+
|
|
41
|
+
Notes:
|
|
42
|
+
|
|
43
|
+
- Scroll and resize animations actually change Neovim state to achieve their effects and are asynchronous. This can cause following issues:
|
|
44
|
+
- If you have remapped any movement operation to center after it is done (like with `nzvzz` or `<C-d>zz`), you need to change those mappings. Either remove them or update to use `MiniAnimate.execute_after()` (see `:h MiniAnimate.config.scroll`)
|
|
45
|
+
- Using mouse wheel to scroll can appear slower or can have visual jitter. This usually happens due to high number of wheel turns per second: each turn is taking over previous one to start new animation. To mitigate this, you can either modify 'mousescroll' option (set vertical scroll to 1 and use high turn speed or set to high value and use one turn at a time) or `config.scroll` to fine tune when/how scroll animation is done.
|
|
46
|
+
|
|
47
|
+
## Installation
|
|
48
|
+
|
|
49
|
+
This plugin can be installed as part of 'mini.nvim' library (**recommended**) or as a standalone Git repository.
|
|
50
|
+
|
|
51
|
+
There are two branches to install from:
|
|
52
|
+
|
|
53
|
+
- `main` (default, **recommended**) will have latest development version of plugin. All changes since last stable release should be perceived as being in beta testing phase (meaning they already passed alpha-testing and are moderately settled).
|
|
54
|
+
- `stable` will be updated only upon releases with code tested during public beta-testing phase in `main` branch.
|
|
55
|
+
|
|
56
|
+
Here are code snippets for some common installation methods (use only one):
|
|
57
|
+
|
|
58
|
+
<details>
|
|
59
|
+
<summary><b>(Recommended)</b> With <a href="https://neovim.io/doc/user/helptag.html?tag=vim.pack">vim.pack</a> (on Neovim 0.12 and newer)</summary>
|
|
60
|
+
|
|
61
|
+
**Full library**
|
|
62
|
+
|
|
63
|
+
Follow ['mini.nvim' installation](https://nvim-mini.org/mini.nvim#installation).
|
|
64
|
+
|
|
65
|
+
**Standalone plugin**
|
|
66
|
+
|
|
67
|
+
Main branch:
|
|
68
|
+
|
|
69
|
+
```lua
|
|
70
|
+
vim.pack.add({ 'https://github.com/nvim-mini/mini.animate' })
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Stable branch:
|
|
74
|
+
|
|
75
|
+
```lua
|
|
76
|
+
vim.pack.add({
|
|
77
|
+
{ src = 'https://github.com/nvim-mini/mini.animate', version = 'stable' },
|
|
78
|
+
})
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
</details>
|
|
82
|
+
|
|
83
|
+
<details>
|
|
84
|
+
<summary>With <a href="https://nvim-mini.org/mini.nvim/readmes/mini-deps">mini.deps</a> (before Neovim 0.12)</summary>
|
|
85
|
+
|
|
86
|
+
**Full library**
|
|
87
|
+
|
|
88
|
+
Follow [recommended 'mini.deps' installation](https://nvim-mini.org/mini.nvim/readmes/mini-deps#installation).
|
|
89
|
+
|
|
90
|
+
**Standalone plugin**:
|
|
91
|
+
|
|
92
|
+
Main branch:
|
|
93
|
+
|
|
94
|
+
```lua
|
|
95
|
+
add('nvim-mini/mini.animate')
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Stable branch:
|
|
99
|
+
|
|
100
|
+
```lua
|
|
101
|
+
add({ source = 'nvim-mini/mini.animate', checkout = 'stable' })
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
</details>
|
|
105
|
+
|
|
106
|
+
<details>
|
|
107
|
+
<summary>With <a href="https://github.com/folke/lazy.nvim">folke/lazy.nvim</a></summary>
|
|
108
|
+
|
|
109
|
+
**Full library**
|
|
110
|
+
|
|
111
|
+
Follow ['mini.nvim' installation](https://nvim-mini.org/mini.nvim#installation).
|
|
112
|
+
|
|
113
|
+
**Standalone plugin**
|
|
114
|
+
|
|
115
|
+
Main branch:
|
|
116
|
+
|
|
117
|
+
```lua
|
|
118
|
+
{ 'nvim-mini/mini.animate', version = false },
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Stable branch:
|
|
122
|
+
|
|
123
|
+
```lua
|
|
124
|
+
{ 'nvim-mini/mini.animate', version = '*' },
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
</details>
|
|
128
|
+
|
|
129
|
+
**Important**: don't forget to call `require('mini.animate').setup()` to enable its functionality.
|
|
130
|
+
|
|
131
|
+
**Note**: if you are on Windows, there might be problems with too long file paths (like `error: unable to create file <some file name>: Filename too long`). Try doing one of the following:
|
|
132
|
+
|
|
133
|
+
- Enable corresponding git global config value: `git config --system core.longpaths true`. Then try to reinstall.
|
|
134
|
+
- Install plugin in other place with shorter path.
|
|
135
|
+
|
|
136
|
+
## Default config
|
|
137
|
+
|
|
138
|
+
```lua
|
|
139
|
+
-- No need to copy this inside `setup()`. Will be used automatically.
|
|
140
|
+
{
|
|
141
|
+
-- Cursor path
|
|
142
|
+
cursor = {
|
|
143
|
+
-- Whether to enable this animation
|
|
144
|
+
enable = true,
|
|
145
|
+
|
|
146
|
+
-- Timing of animation (how steps will progress in time)
|
|
147
|
+
timing = --<function: implements linear total 250ms animation duration>,
|
|
148
|
+
|
|
149
|
+
-- Path generator for visualized cursor movement
|
|
150
|
+
path = --<function: implements shortest line path no longer than 1000>,
|
|
151
|
+
},
|
|
152
|
+
|
|
153
|
+
-- Vertical scroll
|
|
154
|
+
scroll = {
|
|
155
|
+
-- Whether to enable this animation
|
|
156
|
+
enable = true,
|
|
157
|
+
|
|
158
|
+
-- Timing of animation (how steps will progress in time)
|
|
159
|
+
timing = --<function: implements linear total 250ms animation duration>,
|
|
160
|
+
|
|
161
|
+
-- Subscroll generator based on total scroll
|
|
162
|
+
subscroll = --<function: implements equal scroll with at most 60 steps>,
|
|
163
|
+
},
|
|
164
|
+
|
|
165
|
+
-- Window resize
|
|
166
|
+
resize = {
|
|
167
|
+
-- Whether to enable this animation
|
|
168
|
+
enable = true,
|
|
169
|
+
|
|
170
|
+
-- Timing of animation (how steps will progress in time)
|
|
171
|
+
timing = --<function: implements linear total 250ms animation duration>,
|
|
172
|
+
|
|
173
|
+
-- Subresize generator for all steps of resize animations
|
|
174
|
+
subresize = --<function: implements equal linear steps>,
|
|
175
|
+
},
|
|
176
|
+
|
|
177
|
+
-- Window open
|
|
178
|
+
open = {
|
|
179
|
+
-- Whether to enable this animation
|
|
180
|
+
enable = true,
|
|
181
|
+
|
|
182
|
+
-- Timing of animation (how steps will progress in time)
|
|
183
|
+
timing = --<function: implements linear total 250ms animation duration>,
|
|
184
|
+
|
|
185
|
+
-- Floating window config generator visualizing specific window
|
|
186
|
+
winconfig = --<function: implements static window for 25 steps>,
|
|
187
|
+
|
|
188
|
+
-- 'winblend' (window transparency) generator for floating window
|
|
189
|
+
winblend = --<function: implements equal linear steps from 80 to 100>,
|
|
190
|
+
},
|
|
191
|
+
|
|
192
|
+
-- Window close
|
|
193
|
+
close = {
|
|
194
|
+
-- Whether to enable this animation
|
|
195
|
+
enable = true,
|
|
196
|
+
|
|
197
|
+
-- Timing of animation (how steps will progress in time)
|
|
198
|
+
timing = --<function: implements linear total 250ms animation duration>,
|
|
199
|
+
|
|
200
|
+
-- Floating window config generator visualizing specific window
|
|
201
|
+
winconfig = --<function: implements static window for 25 steps>,
|
|
202
|
+
|
|
203
|
+
-- 'winblend' (window transparency) generator for floating window
|
|
204
|
+
winblend = --<function: implements equal linear steps from 80 to 100>,
|
|
205
|
+
},
|
|
206
|
+
}
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
## Similar plugins
|
|
210
|
+
|
|
211
|
+
- [Neovide](https://neovide.dev/) (Neovim GUI, not a plugin)
|
|
212
|
+
- [edluffy/specs.nvim](https://github.com/edluffy/specs.nvim)
|
|
213
|
+
- [karb94/neoscroll.nvim](https://github.com/karb94/neoscroll.nvim)
|
|
214
|
+
- [anuvyklack/windows.nvim](https://github.com/anuvyklack/windows.nvim)
|