Repeatable movement across modules with `;` and `,`
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
Research direction
Start by reading the referenced nvim-treesitter/textobjects repeatable_move.lua implementation, then inspect the movement behavior described for mini.jump, mini.ai, and mini.bracketed. Done means the modules can use a shared mechanism to repeat their movements with ; and reverse them with ,, including the examples in the issue.
Written by the indexing model from the issue text.
Description
Contributing guidelines
- I have read CONTRIBUTING.md
- I have read CODE_OF_CONDUCT.md
Module(s)
mini.jump, mini.ai, mini.bracketed
Description
Hi, and thank you for this incredible project, it is slowly conquering my config :)
I think it would be cool if modules that deal with movements were able to make them repeatable with , and ;. Some examples of this behaviour would be:
- with mini.bracketed, pressing
]itakes you to the next indent, and pressing;afterwards takes you to the next one again. Pressing,would instead bring you to the previous one. Same could be done with the movements that are local to the buffer, such as treesitter nodes, diagnostics, comment blocks etc. - with mini.ai, pressing
g['takes you to the first quote in a pair, pressing;afterwards does it again. This is also implented in nvim-treesitter/nvim-treesitter-textobjects - with mini.jump, this is already working with the
;key. It would be a matter of integrating it with the general mechanism used for the other modules.
There is an implementation of this in https://github.com/nvim-treesitter/nvim-treesitter-textobjects/blob/master/lua/nvim-treesitter/textobjects/repeatable_move.lua
It is written so that other plugins can hook into it, making their respective moves repeatable, but I feel like such a mechanism would be better suited to a project like this, as it is more general in scope and it already has many modules it can be hooked into.
- Dominant language
- Lua
- Stars
- 9.6k
- Forks
- 314
- Avg merge
- 19h 10m
- Merged PRs (30d)
- 7
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from nvim-mini/mini.nvim
-
feature-request mini.icons
Difficulty 1/5 Under an hour Newbie friendliness 82/100
-
'mini.nvim' and multicursorMay be free again @justinmk claimed this 35 days ago, and no pull request is open. OpenALL neovim-upstream
Difficulty 5/5 Over a week Newbie friendliness 28/100
-
mini.statuscolumn
Difficulty 5/5 Over a week Newbie friendliness 25/100
-
feature-request mini.surround
Difficulty 3/5 1-2 days Newbie friendliness 52/100
-
new-module
Difficulty 5/5 Over a week Newbie friendliness 25/100
All issues in nvim-mini/mini.nvim
Similar issues
-
Wrong step: Ashenvale, Wetlands & Stonetalon Mountains, step 49Possibly taken @b7216309-jpg claimed this today. Openguide has-pr
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
fitzforge/polestar#699 · 2 comments ·
Maintainers usually reply within 1 day
-
Fails to load with Crushing Industry when its crushed ores are disabledPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 77/100
-
Difficulty 1/5 Under an hour Newbie friendliness 92/100
LuaLS/lua-language-server#3484 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
lewis6991/gitsigns.nvim#1593 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
latex3/pdf_structure#28 · 4 comments ·