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

3600 active golfers, 11598 entries

Leaderboard (lowest score wins):
27
#3481 - Carl Tashian / @tashian

03/17/2015 at 08:41PM

27
#3482 - 親の金でシャンプーを買うな / @jajkeqos

04/08/2015 at 08:38PM

27
#3483 - Evan Krause / @evangrayk

04/17/2015 at 12:05AM

27
#3484 - Austtin Schwartz / @490T2Schwartz

05/08/2015 at 03:29PM

27
#3485 - Alphan Yılmaz / @alphanyilmaz

06/29/2015 at 01:57AM

27
#3486 - うえしゅん / @ueshun_jp

08/17/2015 at 05:44AM

27
#3487 - dattaz / @dat_taz

02/07/2016 at 09:54PM

27
#3488 - Ruby / @Rubzk

03/26/2018 at 03:13AM

27
#3489 - The9ain / @the9ain

08/03/2018 at 02:49AM

27
#3490 - Gluka / @Gluka__

12/31/2018 at 12:12PM

27
#3491 - alexandrasou / @alexandrasou2

05/27/2019 at 05:41AM

27
#3492 - Guillaume / @arteymix

06/07/2019 at 03:31PM

27
#3493 - Runze Xu / @xrz000

07/05/2019 at 08:04AM

27
#3494 - Noam Koren / @NOSlaver

07/20/2019 at 02:05PM

27
#3495 - Aaron / @aaronlichtman

11/25/2019 at 02:29PM

27
#3496 - Steve Racanovic / @steve_racanovic

01/09/2020 at 08:41PM

28
#3497 - Ilya Grigorik / @igrigorik

06/29/2013 at 03:16AM

28
#3498 - Max / @dzhopuas

08/22/2013 at 10:13AM

28
#3499 - Andrew Max / @anm898989

09/16/2013 at 07:34PM

28
#3500 - Andrew Landry / @Bits_and_Beeps

09/28/2013 at 02:39AM

28
#3501 - Alexander Gyoshev / @alex_gyoshev

10/26/2013 at 07:09AM

28
#3502 - Tom Oketch / @tc_oketch

11/07/2013 at 02:03PM

28
#3503 - Alexander Bandukwala / @abanduk

11/13/2013 at 12:03AM

28
#3504 - Saito, Jr. / @_fugaga_

12/10/2013 at 01:31PM

28
#3505 - Alexandr / @elshurito

02/03/2014 at 10:59AM

28
#3506 - Aseem Kumar / @asiampandey

05/17/2014 at 12:04AM

28
#3507 - Daniel / @dcmonger

07/18/2014 at 05:21AM

28
#3508 - Dane O'Connor / @thedeeno

01/02/2015 at 05:14AM

28
#3509 - TinPotRadio / @TinPotRadio1

09/24/2015 at 12:00PM

28
#3510 - Jonah Marts / @JonahMarts

06/22/2016 at 03:43AM