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

3599 active golfers, 11597 entries

Leaderboard (lowest score wins):
19
#2851 - Colin Hart / @ColinTheRobot

06/06/2018 at 06:11PM

19
#2852 - Šimon Mandlík / @simon_mandlik

06/28/2018 at 10:14AM

19
#2853 - 김예지 / @8PjPnQfmHR2caqM

06/29/2018 at 08:06AM

19
#2854 - 나라 / @naracon03

06/29/2018 at 08:28AM

19
#2855 - Eric Man / @ericmanlol

07/01/2018 at 03:38PM

19
#2856 - qed / @qed13308565

07/24/2018 at 04:00AM

19
#2857 - ハヤシ / @0__098

07/28/2018 at 04:00AM

19
#2858 - Ano Nym / @AnoNym39473378

08/18/2018 at 01:39PM

19
#2859 - 김형창 / @uVmEMZsCgcYvqZi

08/31/2018 at 07:28AM

19
#2860 - Samidhya Sarker / @desertSniper87

09/06/2018 at 12:47PM

19
#2861 - Calvin Fong / @LordyBaka

11/04/2018 at 01:24AM

19
#2862 - Fabio Branquinho / @branquif

11/08/2018 at 01:34PM

19
#2863 - Álvaro Melgosa / @AlvaroMlgs

11/17/2018 at 02:46PM

19
#2864 - Alan Barnett / @alan23394

04/03/2019 at 08:58PM

19
#2865 - dtjong / @dtjong2

06/07/2019 at 10:04PM

19
#2866 - Hayden Wang / @HaydenWang2

08/09/2019 at 02:16AM

19
#2867 - Alexander Dikelsky / @ADikelsky

08/20/2019 at 07:25PM

19
#2868 - Alucardkoten / @alucardkoten

09/19/2019 at 05:12AM

19
#2869 - Eleks Aggr / @AggrEleks

10/22/2019 at 01:09PM

19
#2870 - Andrei Popescu / @AndreiTheory

12/09/2019 at 09:31PM

19
#2871 - Ageless O₂ Absorber / @dr_barnowl

12/16/2019 at 06:30PM

19
#2872 - Jörg Meyer / @JoergMy

01/05/2020 at 05:30PM

20
#2873 - spike grobstein / @spike666

05/24/2013 at 09:19PM

20
#2874 - galadriel2143 / @galadriel2143

07/06/2013 at 08:26AM

20
#2875 - jan muha / @h4ct1c

07/13/2013 at 03:03PM

20
#2876 - Todd Branchflower / @toddbranch

07/16/2013 at 11:46PM

20
#2877 - Ryan O'Dowd / @ryanodowd1

07/27/2013 at 11:59PM

20
#2878 - Asa Jay / @HiFreeo

07/29/2013 at 09:30PM

20
#2879 - Ziad Jiryes / @ZJiryes

08/08/2013 at 02:37PM

20
#2880 - apof / @9pof

09/13/2013 at 07:34AM