Comments (4)
Generally, it is a rule for all vim motions that they work the same for all three modes, which is also quite essential in creating predictability/consistency. I am not totally sure how desirable it is to introduce a feature that breaks with that rule. 🤔
from nvim-spider.
Well it's completely opt in and the user can easily just think of them as separate motions. That sounds like a good principle for defaults but I think allowing for configurability is a higher principle for plugins. To let users choose what principles they want to use for their personal setup.
This would also allow the user to have separate bindings for different motions provided by the plugin (subword vs word, punctuation or no punctuation)
from nvim-spider.
I agree 100%. It is consistent from an abstract perspective if not functional; when we tap w we want to move to the beginning of the next word without necessarily defining everything in-between there and the current cursor position as "the current word" to do it because when we call something like ciw we want to change to the end of the current word, not the beginning of the next word! The "punctuation" should be treated like whitespace, not a continuation of the word.
It would be very nice to have an API that accepts either option as args so we could do keybindings like
map('n', 'w', spider.word({ 'subWord', 'punctuation' })_
map({'o', 'x'}, 'w', spider.word({ 'subWord' })
from nvim-spider.
Implemented with the latest PR
from nvim-spider.
Related Issues (20)
- [Bug]: Dot repeat is locking up the editor HOT 6
- [deleted] HOT 2
- Feature Request: Add W, (g)E and B HOT 2
- Feature Request: c-w (ctrl-w) should work HOT 2
- Feature Request: Word motion on camel case with capitalized acronyms HOT 3
- Feature Request: Add option to use default keymaps HOT 2
- Feature Request: add option to disable subwords HOT 5
- Feature Request: support `wildfire.nvim` HOT 2
- Feature Request: Add instructions for adding keymaps to lazy config HOT 2
- [Bug]: Bugs when camelCase names have numbers in them HOT 1
- [Bug]: Cannot bind to e.g. "<leader>w" HOT 2
- [Bug]: numbers in hex values are not ignored HOT 2
- Feature Request: Support subword delete in insert mode like CTRL-W HOT 1
- Feature Request: Pull in .editorconfig from your template repository HOT 1
- Feature Request/Bug? - Strange behavior on the last word of lines HOT 3
- [Bug]: Small inconsistency with cw: single letter words
- [Question] Why ignore iskeyword? HOT 2
- Feature Request: Add WORD motions HOT 3
- [Bug]: consistent operator pending mode has no effect for me HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nvim-spider.