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 3431 remaining solutions by signing in and submitting your own entry
#3432 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

3432 active golfers, 11011 entries

Leaderboard (lowest score wins):
30
#3361 - Vojtěch Pejša / @7Vojta7

01/25/2017 at 03:01PM

30
#3362 - Barespamtak / @barespamtak

09/06/2017 at 08:16AM

30
#3363 - dorpo / @dorpo2

11/01/2018 at 05:33PM

30
#3364 - James Stidard / @JamesStidard

05/05/2019 at 11:25PM

31
#3365 - Hiroshi Funai / @hfunai

09/23/2013 at 02:07AM

31
#3366 - Anton Yakimov / @kekc_tosha

10/01/2013 at 12:03AM

31
#3367 - fsaintjacques / @fsaintjacques

02/24/2014 at 12:57AM

31
#3368 - Xginn / @xginn8

03/27/2014 at 02:18AM

31
#3369 - Domon / @Domon

08/06/2014 at 07:24AM

31
#3370 - Zidni Mubarock / @barock19

12/05/2014 at 06:37AM

31
#3371 - LSMTD / @LSMTD

12/09/2014 at 03:45AM

31
#3372 - Nathan Azaria / @nathanajah

12/10/2015 at 10:40AM

31
#3373 - sdf / @gfafsdgs

11/21/2017 at 03:17AM

31
#3374 - Anton Permenev / @a_permenev

11/17/2018 at 03:11PM

31
#3375 - Raul / @Raul50174499

03/30/2019 at 03:09PM

32
#3376 - WoljaIlpapa / @WoljaIlpapa

12/19/2013 at 11:42AM

32
#3377 - Jikku Jose / @JikkuJose

04/20/2014 at 03:31AM

32
#3378 - Chris Grantham / @crgrantham

11/13/2015 at 05:28PM

32
#3379 - オガタ マコト / @ogata0510

01/20/2016 at 07:20AM

33
#3380 - Tyler Hoyt / @hoytie

01/28/2014 at 08:34PM

33
#3381 - Hugo Tai / @HugoTai100

06/11/2019 at 05:22AM

34
#3382 - Dave Aitken / @actionshrimp

08/27/2013 at 07:52PM

34
#3383 - Micha / @michman89

08/09/2016 at 12:29PM

34
#3384 - Thiago Preischadt / @TPreischadt

07/11/2019 at 01:11AM

35
#3385 - klewi / @klewi2

10/03/2013 at 10:11AM

35
#3386 - Daryl Lau / @daryljlau

10/27/2013 at 09:27PM

35
#3387 - LittleQ / @littleq0903

12/09/2013 at 04:10AM

35
#3388 - ITechJunkie / @ITechJunkie

01/28/2014 at 07:27PM

36
#3389 - Joe Campedelli / @theRealCamper

11/14/2013 at 03:35AM

36
#3390 - じゃくやま / @zaki_taka4

12/23/2013 at 03:13AM