Real Vim ninjas count every keystroke - do you?

Pick a challenge, fire up Vim, and show us what you got.

Changelog, Rules & FAQ, updates: @vimgolf, RSS.

Your VimGolf key: please sign in

$ gem install vimgolf
$ vimgolf setup
$ vimgolf put 5192f96ad8df110002000002

Words in parens

We should all ace this, right?

Start file
one two
three
End file
(one) (two)
(three)

View Diff

1,2c1,2
< one two
< three
---
> (one) (two)
> (three)

Solutions

The best way to learn is to practice. Below, you will find some of the solutions other golfers have entered. To unlock higher ranked solutions, submit your own entry which does as well or better than the solutions you can currently see - climb the ladder!

Check out these helpful resources to improve your Vim skills... Game on.

Unlock 3484 remaining solutions by signing in and submitting your own entry
#3485 velina v veleva / @vveleva - Score: 155 - 04/23/15 @ 16:55
::%s/\(\a*\)/(&)/g<CR>ZZ<C-A><BS><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Right><BS><CR><CR>%s/\(\w*\)/(\1)/g<CR>ZZ/<Esc><Esc>u<Esc>/<BS>:%s/\(\w*\)/(\1)/g<CR>ZZ<CR>:%s/\(\w*\)/(\1)/g<CR>ZZ<Left><Left><Right><Right><Right><BS><BS><BS><BS><BS><BS><CR><Esc>:w<CR><Esc>:wq<CR>

0 comments


Created by: @udioica

3485 active golfers, 11183 entries

Leaderboard (lowest score wins):
14
#31 - Armand Halbert / @armandhalbert

08/01/2013 at 10:25PM

14
#32 - Jeff Klein / @ravioli_jazz

08/02/2013 at 07:39AM

14
#33 - Tallak Tveide / @tallakt

08/03/2013 at 04:55PM

14
#34 - Nathan / @NathanHarperoni

08/06/2013 at 03:54PM

14
#35 - Charlene Tshos / @charlymul

08/08/2013 at 04:26PM

14
#36 - Cao Cuong Ngo / @nccuong

08/09/2013 at 10:36AM

14
#37 - Horst Lambda / @HorstLambda

08/09/2013 at 04:55PM

14
#38 - Michael LeCompte / @michaelslec

08/12/2013 at 01:11AM

14
#39 - Francois Picalausa / @fpicalausa

08/12/2013 at 03:37PM

14
#40 - Michael / @mjs2600

08/14/2013 at 12:05AM

14
#41 - _ky_ / @ultimate_ky

08/15/2013 at 09:41PM

14
#42 - Rasmus P / @rasmup

08/18/2013 at 12:35PM

14
#43 - Maxim / @alfa101

08/20/2013 at 02:06PM

14
#44 - Jiří Chára / @JiriChara

08/21/2013 at 01:52PM

14
#45 - Chris Webb / @chriswebb_42

08/22/2013 at 05:26AM

14
#46 - Bradley Tse / @bradleytse

08/24/2013 at 08:47PM

14
#47 - Stephen Drodge / @sjdrodge

08/24/2013 at 10:39PM

14
#48 - Abdel Said / @abdelsaid

08/24/2013 at 10:40PM

14
#49 - Drew Neil / @nelstrom

08/27/2013 at 09:25AM

14
#50 - (Emile (Swarts)) / @EmileSwarts

08/27/2013 at 06:27PM

14
#51 - meitham / @meitham

08/27/2013 at 07:08PM

14
#52 - Super Garbage / @SuperGarbage0

08/29/2013 at 05:39AM

14
#53 - Mihai Crăiță / @mihai_craita

08/29/2013 at 08:27AM

14
#54 - Berk Özbalcı / @bozbalci

08/31/2013 at 04:57AM

14
#55 - Matěj Nikl / @MatejNikl

09/09/2013 at 07:19PM

14
#56 - Matt Green / @emgeeeeee

09/15/2013 at 03:45PM

14
#57 - Julien Gueytat / @jgueytat

09/17/2013 at 09:40AM

14
#58 - Pierre Bousquie / @pierrebousquie

09/17/2013 at 12:41PM

14
#59 - Nick Bakkegaard / @Bakkemand

09/18/2013 at 11:22AM

14
#60 - Mathias Rav / @iaddquotes

09/20/2013 at 08:00AM