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

3905 active golfers, 12682 entries

Leaderboard (lowest score wins):
14
#991 - りんご / @ringo9971

08/06/2019 at 09:57AM

14
#992 - Ron Holt / @ron_holt

08/07/2019 at 09:54PM

14
#993 - XiaoXiaoLui / @XiaoXiaoLui1

08/15/2019 at 05:58PM

14
#994 - theBecwar / @thebecwar

08/18/2019 at 04:50PM

14
#995 - Malcolm Sharpe / @blueblimpms

08/24/2019 at 01:13AM

14
#996 - David Johnston / @nuts4nuts4nuts

08/25/2019 at 04:54AM

14
#997 - Maxime Turquetil / @maturquetil

08/28/2019 at 11:00AM

14
#998 - Lukas Schmidt / @TheRealGeStar

08/28/2019 at 11:53AM

14
#999 - blub / @agorilladriving

08/28/2019 at 01:09PM

14
#1000 - Brice Letcher / @bricoletc

08/30/2019 at 08:59PM

14
#1001 - Алексей Кашуба / @Alex_Kashuba

08/31/2019 at 08:30PM

14
#1002 - Iggy / @iggredible

09/04/2019 at 04:06AM

14
#1003 - Zach Ingbretsen / @ZIngbretsen

09/08/2019 at 11:54PM

14
#1004 - Andac Safa / @SanDForcE94

09/11/2019 at 11:17PM

14
#1005 - Abner jr / @Abnerjr19

09/15/2019 at 02:29PM

14
#1006 - Cassandra / @kascein

09/17/2019 at 05:39AM

14
#1007 - Sebastian Müller / @echsberde

09/21/2019 at 01:53PM

14
#1008 - vimgolfer / @vimgolfer7

09/21/2019 at 03:28PM

14
#1009 - Honza Uhlík / @JanUhlik

09/22/2019 at 08:29AM

14
#1010 - Viktor Styrud / @ViktorStyrud

09/25/2019 at 01:32PM

14
#1011 - Adrian Craciun / @adi_craciun

09/27/2019 at 07:32PM

14
#1012 - IronTiger Park / @IrontigerP

10/11/2019 at 12:14AM

14
#1013 - Sam O'Malley / @Samuel_OMalley

10/12/2019 at 04:10AM

14
#1014 - KlondikeBaer / @BaerKlondike

10/14/2019 at 05:56PM

14
#1015 - Homo Ludens / @BsMainly

10/17/2019 at 02:55PM

14
#1016 - leo / @leo28356948

10/18/2019 at 04:46AM

14
#1017 - Ivan Volosyuk / @IvanVolosyuk

10/21/2019 at 10:45AM

14
#1018 - Jeremy Soller / @jeremy_soller

10/25/2019 at 01:59AM

14
#1019 - vicver09 / @vicver091

10/28/2019 at 02:07PM

14
#1020 - Tokos Apos / @AposTokosapos

11/05/2019 at 11:08AM