top | item 45041315

VIM Master

378 points| Fluffyrnz | 7 months ago |github.com | reply

115 comments

order
[+] sim7c00|7 months ago|reply
someone should make guitar hero with vim's keybindings. maybe you need to write the tabs quick enough to play it live including the ascii art strings -_-. multi line editing, tgted char insertions on different lines and intervals... all you need to be a vimgod.

meanwhile there's also text editors that dont make you doubt yourself and fall on your face each time someone walks by ur workstation and you want to show them some kind of space-invaders-word-editing-trick which always fails because your fingers arent rubber bands afterall.

(sorry totally nano lover :p satire/jokes)

[+] cramsession|7 months ago|reply
I'm surprised they don't even mention vimtutor. It's preinstalled on every machine with vim (to the best of my knowledge). This seems like a cool project, but might as well give a shout-out to the original concept.
[+] absolute_unit22|7 months ago|reply
I actually opened this hoping it’ an alternative to vimtutor but for experienced/intermediate users.

Is there such a thing? I feel like someone has probably made something this - something that progressively works through soem of the more complex features of vim.

I’ve found soem absolute gems mostly through online blogs and reading through vim docs

If anyone has any repos that’d recommended I’d be happy to try!

[+] nunez|7 months ago|reply
vimtutor is to Babbel what this is to duolingo. Many will prefer learning through a game but some want a more textbook approach. Honestly, anything to get more people on vim and emacs is a good thing in my book!
[+] 3836293648|7 months ago|reply
Unfortunately vimtutor was dropped by the neovim fork
[+] eej71|7 months ago|reply
There is also this one

https://vim-adventures.com/

[+] ixwt|7 months ago|reply
I think this one asks you to pay for it after a bit. Not that there's anything wrong with that. Just felt bad about getting a little bit in, and then being hit with a decent pay wall.
[+] godelski|7 months ago|reply
This was quite weird and honestly a bit infuriating. Just felt like it was encouraging really bad habits in vim.

You start out and you only have `h,j,k,l` available to you (despite what the help says). So just end up holding the keys and maybe that's fine but then that first level is WAY too big.

Like I got to the second area and it starts talking about word motions and then you try `w,b,e` and it then tells you those keys aren't available. That's not even the first character you talk to that is mentioning movement keys while those keys remain unavailable to you!

I rage quit after unlocking `w,b,e` and moving back to that chest at the beginning only to realize I had forgotten there was a space between the word and punctuation meaning I'd need to unlock something like `B`, `0`, `^`, or even the ability to use numbers which a character had already mentioned to me...

[1/10] do not recommend. I believe most people will be able to read half of `vimtutor` before you will unlock the `b` key in this game as well as have a much better understanding of how vim actually works.

I highly suggest vimtutor to people because what a lot of people miss while learning vim is that there isn't actually much to remember. There's sets of motion keys and sets of command keys. The beauty of vim is that the commands are putting these together. For example, say you learn `b,w,e` and then you learn `d`. You now automatically know `db, dw, de, dd`. You didn't learn 4 new things, you learned 1 new thing. Similarly learning `B,W,E` isn't learning 3 new things, you learn one new thing: capitalized motion keys work on WORDS instead of words (aka: big movements)

[+] nickandbro|7 months ago|reply
Very cool site! Working on my own similar project:

https://vimgolf.ai

To learn new vim motions. Have since gotten distracted by life, but need to actually finish it.

[+] _diyar|7 months ago|reply
Neat idea! Nit: maybe offer the first few exercises without requiring a login, that way I can get a feel for it before deciding to sign up.
[+] mac-attack|7 months ago|reply
The required login/sign-up, privacy policy and lack of apparent open-sourcing seems antithetical for the average Linux user. You're going after a niche of a niche of a niche with this one, good luck lol.
[+] MrResearcher|7 months ago|reply
I generally recommend to exit either via :xa (save all & exit) or :qa! (discard all and exit), bound to ZZ or ZA respectively. If you exit via :q or :wq, it just closes the current buffer, and moves to the next one. E.g. if you have a neotree open along with the editor, you type :wq, it closes the editor buffer and moves you into the file tree, which can be very confusing for beginners.
[+] nurple|7 months ago|reply
Neotree `close_if_last_window` config setting is helpful for this case.
[+] prmoustache|7 months ago|reply
There are cases where you would not necessarily want to save all buffers. To me it is an eletrical term.
[+] pwillia7|7 months ago|reply
just do :wq :wq :wq :wq etc

:P

[+] jrh3|7 months ago|reply
Remapping my CAPS LOCK key to the ESC key is the greatest keyboard hack ever.
[+] benjaminclauss|7 months ago|reply
These little tutorials and games are great. I played VIM Adventures.

However, one thing I really struggle with is learning when I can be doing something more efficiently. I rarely use markers, anything beyond default registers, commands, and so on.

I'm giving Neovim a try for my systems course trying to get better but I do wish these sorts of games pushed me to get better at these more advanced usage tricks.

[+] soperj|7 months ago|reply
Oh man, I use markers all the time. ma y'a

mark a spot, then yank or delete everything to that line. Way easier to do it accurately rather than 13yy or however many lines you're yanking.

[+] codyb|7 months ago|reply
I created a ViM Message of the Day script that I added to my shell to give me a prompt every time I opened a new shell (Which I do constantly in ViM and Tmux since I've created leader key shortcuts in both)

https://github.com/cboppert/motd

You might have to futz with it a bit, and I think I've added some other stuff in there since then (love the toggle-light-mode script which toggles several things either to Dark or Light mode at once so I can switch environments easily, however have never gotten it to fully automate, so I have to manually type goDark or goLight depending. Humbug!)

Anyways, it's great cause it gives you one tip or command at a time, and so you can sort of slowly grow without really having to dedicate much time to it.

[+] charlie-83|7 months ago|reply
Check out vim golf. They are fun puzzles but you also realise lots of little optimisations you can incorporate into regular use
[+] ekusiadadus|7 months ago|reply
The fact that Vim has been debated for decades is proof that it’s one of the greatest pieces of software.
[+] rochak|7 months ago|reply
For me, it is close to perfect.
[+] vorgol|7 months ago|reply
When I was learning Linux back in the day, one of the most beneficial thing I did was to go though the VIM tutorial and learn to use it properly. I'm no master at it but oh boy that time spent has paid dividends down the line.
[+] wyclif|7 months ago|reply
The Neovim Tutor is more comprehensive than the old school Vim Tutor. I recommend that people who want to get fast with the key commands go through it repeatedly until most of it becomes part of their muscle memory. When this happens, the learning curve starts looking a lot more approachable and less daunting.
[+] landdate|7 months ago|reply
https://www.vimgolf.com/ is also cool, but I find that it doesn't really help with muscle memory as much as learning cool tricks.
[+] zvmaz|7 months ago|reply
I think it requires a twitter/X account. Why?
[+] qezz|7 months ago|reply
Cool idea, yet the first level broke me: typing :qa enters Insert mode, and it's not possible to delete the command input with a backspace.

Hopefully it's easy to fix

[+] jama211|7 months ago|reply
Even though I don’t have much use for vim, and I have opinions on tools like this going beyond a certain level of efficiency because IMO the true bottleneck is usually decision/design based not implementation based, this just kinda looks fun and the appeal of vim as just a thing that feels cool to use when you have mastery of it sounds cool.

Kinda like how it feels good to play an instrument when you’re good at it, or something.

I might give it a try!

[+] drwu|7 months ago|reply
Agree that decisions/designs are important.

However, not everything can be well designed at the beginning. Skills of editing will affect efficiency, especially in a try-and-error loop of new ideas/approaches, where only a rough design exists.

Besides, some niche editing tasks (which may involve column editing, macro recording then batched execution, regex based operation, encoding transformation etc.) may otherwise require writing awk/sed or even perl/python scripts as subprojects to achieve, if one does not known the editor well.

[+] mac-attack|7 months ago|reply
Played around on the official website until i tried to delete a word and closed the tab by a mistake. Saved it for future reference.

Edit: Went down a rabbit hole and see pacvim (https://github.com/jmoon018/PacVim) is in the official Debian repo as an option as well.

[+] twile|7 months ago|reply
This is cool, I would love to see some more rounds and vim lessons! I use a lot of these basics on the daily.