Vim London January in review
On Tuesday, 29th January, we held the 3rd meeting of Vim London. We had 5 short talks on the theme of Speak Vim - operators and motions. The talks weren’t recorded, so I’m posting a retrospective here.
We had five short talks, which I’ll summarize briefly here:
1. Vim Grammar, by Tom Cammann
Tom Camman kicked off the evening with an introduction to Vim’s Grammar. He illustrated Vim’s Normal mode operations with a simple set of rules:
Check out his grammar slide and be sure to click the ‘Show optional’ link. Tom has written up an Intro to Vim grammar blog post, which nicely summarizes the material from his talk.
2. When and why you should stay out of visual mode, by Drew Neil
I’ve published the slides for my presentation on speakerdeck.
In a nutshell: visual mode doesn’t work well with the dot command. The dot command repeats your last change, which allows for a very efficient workflow when going through a set of similar changes. When performing a repetitive set of changes (where the dot command is your friend), you should prefer using Normal operations over Visual operations.
This will be a familiar refrain if you’ve ever attended one of my Vim Masterclasses. I also cover this material in tip 23 of Practical Vim. Essential further reading: Operator, the true power of Vim, by Kana Natsuno.
3. Meet Easymotion, by Jack Franklin
Jack presented a lightning talk on the easymotion plugin by Kim Silkebaekken. He gave a live demonstration (no slides) of how the plugin allows you to rapidly move around a file. He also mentioned that his Beginning jQuery book was due to be released the next day. Congratulations to Jack on becoming a published author! (I’ll show you the secret handshake next time we meet)
4. Meet Surround, by Kris Jenkins
Kris presented a lightning talk on surround, an essential plugin from Tim Pope. Kris gave a live demonstration of some of the scenarios where the plugin can make life easier. You can find his demo files github. He also explained the way that surround fits in with Vim’s existing grammar rules.
5. Custom motions in Vim, by Alex Young
Alex closed the evening with a look at how to create custom motions using Vimscript. He’s published his slides on speakerdeck:
Alex introduced the concept of operator-pending mode, and showed how :omap
can be used to create motions that work in that mode. As case studies he looked at the camelcasemotion and seek plugins, discussing how they were implemented.
More
Inspired by the meetup, Rob Miller published a new custom motion of his own: movar, which makes it easy to operate on variables in (so far) PHP, Javascript, and Ruby. Check it out!
Up next…
Vim London will meet again in February, on the last Tuesday of the month. We haven’t picked a theme yet, but if you’d like to be involved in the discussion, then please join the Vim London google group.
It’s disappointing that we didn’t manage to record the talks this time around, but I hope to figure something out in time for the next meetup. If you can help, I’d love to hear from you.