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

3428 active golfers, 11002 entries

Leaderboard (lowest score wins):
14
#511 - 王俊凱 / @BunkieWang

04/03/2015 at 08:06AM

14
#512 - You Mustnotknow / @y8hVz6fJdm6Lt5q

04/03/2015 at 12:13PM

14
#513 - Charles A. Bouffard / @the_cabouffard

04/04/2015 at 06:50PM

14
#514 - johannes err / @into_the_beta

04/04/2015 at 07:52PM

14
#515 - Fan Zhang / @2bDeactivat3d

04/06/2015 at 12:01AM

14
#516 - Seiichi Satomi / @Sewitch7045

04/08/2015 at 10:02AM

14
#517 - Bradley Hardy / @bradleyishardy

04/12/2015 at 12:50PM

14
#518 - Server Zero / @assaflavie

04/16/2015 at 04:47PM

14
#519 - Charles Joachim / @cacplate

04/17/2015 at 06:51PM

14
#520 - Andreas Carben / @meiner_eins

04/25/2015 at 02:03PM

14
#521 - Marc-Antoine Sauvé / @masauve_ac

04/26/2015 at 11:10PM

14
#522 - Corentin Lapeyre / @c_lapeyre

05/02/2015 at 06:08AM

14
#523 - Antony Scriven / @antonyscriven

05/05/2015 at 02:57PM

14
#524 - Herman Lundkvist / @LundkvistHerman

05/08/2015 at 10:22PM

14
#525 - smokemachine / @smokemachine

05/09/2015 at 10:21PM

14
#526 - danweaver / @danweaver

05/13/2015 at 05:49PM

14
#527 - Douglas Pollock / @desudation

05/15/2015 at 10:04PM

14
#528 - Jonas Ng / @jnshey

05/16/2015 at 07:50AM

14
#529 - Peter Burt / @peterburt

05/17/2015 at 09:38PM

14
#530 - David Stensland / @DavidStensland

05/19/2015 at 10:26PM

14
#531 - 1passenger / @1passenger

05/25/2015 at 08:01PM

14
#532 - Eduardo Antunes / @ecsousa

05/30/2015 at 03:45AM

14
#533 - jinhwan choi / @jinhwanlazy

05/31/2015 at 08:42AM

14
#534 - Marcfyren / @Marcfyren

05/31/2015 at 11:12AM

14
#535 - Sir Chauffeur / @sebdul

06/02/2015 at 09:29PM

14
#536 - tehdog / @tehdog22

06/06/2015 at 04:36PM

14
#537 - David Nguyen / @nguydavi

06/06/2015 at 05:25PM

14
#538 - ahumph / @ahumph

06/09/2015 at 11:14AM

14
#539 - djh / @oneandoneis2

06/09/2015 at 04:04PM

14
#540 - Thomas McGinniss / @thom_bomb75

06/10/2015 at 09:39PM