Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request your motions #139

Open
godbout opened this issue Oct 22, 2022 · 17 comments
Open

Request your motions #139

godbout opened this issue Oct 22, 2022 · 17 comments

Comments

@godbout
Copy link
Owner

godbout commented Oct 22, 2022

  1. every Vim motion has to be researched and implemented individually
  2. half the Vim doc is wrong or incomplete, and there's many edge cases when using the motions, so research has to be done carefully and thoroughly
  3. i'm lazy 😂️ (or pragmatic). if i don't use something, i don't bother. so mostly the Vim motions implemented are the ones i personally use, and the ones requested

so if you're finding motions missing, just reach out, and they'll go on the top of the priority list. just post them down here.

@godbout godbout pinned this issue Oct 22, 2022
@ylabbe
Copy link

ylabbe commented Nov 8, 2022

I often use d$

@godbout
Copy link
Owner Author

godbout commented Nov 8, 2022

I often use d$

d$ and its synonyms (D and dEnd) are implemented for both the Accessibility Strategy and the Keyboard Strategy.

more info coming soon...

@godbout
Copy link
Owner Author

godbout commented Nov 8, 2022

demo on both the AS and the KS:

ScreenFlow.mp4

is it possible maybe that you're using kV on an app that is restricted, and you need to add this app to the PG-R Family in the Settings?

checkout the kV menu icon. there's an option to send the current app to The Wizard™ and see if you that app needs some special treatment. if the app is not recognized you can request an investigation and i'll have a look.

@godbout godbout mentioned this issue Sep 12, 2023
@tddschn
Copy link

tddschn commented Oct 2, 2023

I really miss c-w in insert mode that deletes the word before the cursor, would you consider adding it?

@godbout
Copy link
Owner Author

godbout commented Oct 2, 2023

I really miss c-w in insert mode that deletes the word before the cursor, would you consider adding it?

ha. well. took me a while to find the doc for that one (here). also, never built a move that works in INSERT MODE. because basically this is stealing macOS' standard shortcuts and behaviors. (also i personally never use those moves.)

hmm, so, thinking out loud:

  1. is this like db/cb, but when in Insert Mode?
  2. because this is stealing macOS' standard behavior, i'd have to add it as a Setting
  3. also because kV has been built to handle keystrokes ONCE in Normal Mode, that's gonna require quite some changes. so not sure how long it would take

@tddschn
Copy link

tddschn commented Oct 2, 2023

Thank you for your reply!

  1. is this like db/cb, but when in Insert Mode?

Yes.

  1. because this is stealing macOS' standard behavior, i'd have to add it as a Setting

That'd be awesome!

  1. also because kV has been built to handle keystrokes ONCE in Normal Mode, that's gonna require quite some changes. so not sure how long it would take

I understand that it's not that easy to implement, please take your time - and it's perfectly okay if you decide not to add this feature. :)

@godbout
Copy link
Owner Author

godbout commented Oct 2, 2023

i see. got it. thanks for clarifying.

unfortunately i like challenges so... most probably i'm gonna dig deep into it first before refusing or allowing this 😂️😂️😂️

@itaysk
Copy link

itaysk commented Nov 27, 2023

~ for toggle case

@godbout
Copy link
Owner Author

godbout commented Nov 27, 2023

~ for toggle case

Screen.Recording.2023-11-27.at.23.56.36.mov

am i missing something? 🤔️

@itaysk
Copy link

itaysk commented Nov 28, 2023

am I missing something? 🤔️

sorry, I was testing in Safari which apparently isn't not supposed to work OOB. FWIW I think the docs about families and limitation could be improved, but that's outside the scope of this issue. Thanks!

@godbout
Copy link
Owner Author

godbout commented Nov 28, 2023

sorry, I was testing in Safari which apparently [isn't not supposed to work OOB (https://github.com//issues/103).

OH. yes. after answering i wondered also if you were on an app where kV has to use the Keyboard Strategy.

FWIW I think the docs about families and limitation could be improved, but that's outside the scope of this issue. Thanks!

nice. anything specific? i may need a review yes. if you have some details about what you think is not good, or is missing, or is confusing etc. please lemme know. that may help. i'm trying to keep the learning curve of kV as flat as possible, but it's also a project that is abusing the AX Framework to do something it's not supposed to do 😂️😂️😂️ and there is indeed limitations. it's a bit hard to explain right from the start, and i'd hoped that people start using kV and realize quite quickly what the strategies and The Wizard are about. but i may be wrong yeah.

@prurph
Copy link

prurph commented Dec 7, 2023

I'd love to see the ci", ci', ci[, etc motions!

@godbout
Copy link
Owner Author

godbout commented Dec 7, 2023

I'd love to see the ci", ci', ci[, etc motions!

yo!

they're implemented through the Accessibility Strategy, which means for apps where the text is readable/writable. when the text is not readable and/nor writable, kV cannot determine exactly the motion boundaries so it has to go through key remapping instead, and in those cases those moves are not doable.

you'll notice that ciB, cib etc. are also implemented (and also diB, viB, blah blah blah).

hope this clarifies. lemme know if you need more details or explanation. i'll be glad to help.

@prurph
Copy link

prurph commented Dec 7, 2023

Thank you for clarifying! I originally misread the very helpful images, interpteting the two red X's to mean not implemented, but now I see those are just indicating count and repeat are not implemented for those (which doesn't make sense for these motions anyway). Sorry for my confusion.

@godbout
Copy link
Owner Author

godbout commented Dec 8, 2023

Thank you for clarifying! I originally misread the very helpful images, interpteting the two red X's to mean not implemented, but now I see those are just indicating count and repeat are not implemented for those

yeah, i see where the confusion may come from. only the motions implemented are listed yeah (else there would be too many). but i get you yeah, coming there on the first time it may not be that clear. hmm. may need to think of something to change.

(which doesn't make sense for these motions anyway). Sorry for my confusion.

for which motion in particular are you talking about? ci' etc. have counts in Vim. same for ci[ etc. so not sure which one exactly you're talking about.

@prurph
Copy link

prurph commented Dec 8, 2023

for which motion in particular are you talking about? ci' etc. have counts in Vim. same for ci[ etc. so not sure which one exactly you're talking about.

This is news to me—I have never used count with any of the i( or aB motions and I didn't realize you could do that in vim! 😎

I certainly won't complain that you can't use a count with it in kindaVim though; the singular versions work great and are more than enough for me.

@godbout
Copy link
Owner Author

godbout commented Dec 8, 2023

This is news to me—I have never used count with any of the i( or aB motions and I didn't realize you could do that in vim! 😎

learning every day 😎️

I certainly won't complain that you can't use a count with it in kindaVim though; the singular versions work great and are more than enough for me.

yeah. so the idea is that i build kV for myself 🤣️🤣️🤣️ if i don't need the move, i don't implement them at first. but if someone requests them, i do. hence the lack of count for those moves. enjoy!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants