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 576c778ea4896a561b01b4f2

Copy three lines

If the site is up (by some miracle), make the text under every header identical.

Start file
First:
	Junk text.
Second:
	Junk text.
Third:
	Junk text.
Last:
	Copy these lines,
        and replace the text
        in each heading above.
End file
First:
	Copy these lines,
        and replace the text
        in each heading above.
Second:
	Copy these lines,
        and replace the text
        in each heading above.
Third:
	Copy these lines,
        and replace the text
        in each heading above.
Last:
	Copy these lines,
        and replace the text
        in each heading above.

View Diff

With vimgolf.com's uptime issues, I don't know if anyone will get to play this.
It's tricky though, surprisingly so. I hope a few people manage to get it to
load.

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 273 remaining solutions by signing in and submitting your own entry
#274 Stop and think / ms_uncountable - Score: 22 - 07/06/17 @ 19:19
jddj.j.j3yy2kp2kp2kpZZ

0 comments


#275 Jeff / RealJeffIrwin - Score: 22 - 09/29/17 @ 13:55
qqmmjddGy2k`mp3jq2@qZZ

0 comments


#276 Saul Hardman / saulhardman - Score: 22 - 10/06/17 @ 09:33
8G3Y:g/J/norm dd"0P<CR>ZZ

0 comments


#277 かりうむ / ka1l - Score: 22 - 11/20/17 @ 08:47
:g/J/d<CR>jVGy3kP4jP4jPZZ

0 comments


#278 Joachim Wedin / joachim_wedin - Score: 22 - 12/13/17 @ 12:53
7+3yy:g/J/norm V"0p<CR>ZZ

0 comments


#279 Jacob Tailor / spydronex - Score: 22 - 02/12/18 @ 22:20
qqmmjddGy2k`mp3jq2@qZZ

0 comments


#280 phucvin / phucvin - Score: 22 - 02/14/18 @ 16:42
jddj.j.jy3<CR>kkpkkpkkpZZ

0 comments


#281 banielTimes / banielTimes - Score: 22 - 02/18/18 @ 23:54
jddj.j.jy3<CR>kkpkkpkkpZZ

0 comments


#282 bruno / LokoPoggi - Score: 22 - 03/03/18 @ 05:05
jddj.j.jy3<CR>kkpkkpkkpZZ

0 comments


#283 Pablo / suspekt007 - Score: 22 - 04/09/18 @ 21:05
7j3yy:g/J/norm V"0p<CR>ZZ

0 comments


#284 Oliver G. / Redbrain18 - Score: 22 - 05/01/18 @ 11:50
jddj.j.j3yykkpkk.kk.ZZ

0 comments


#285 石奕心 / allenshih1 - Score: 22 - 06/07/18 @ 00:47
7j3Y:%s/.*J.*/<C-R>"<BS>/g<CR>ZZ

0 comments


#286 Leix b / leix_b - Score: 23 - 07/07/16 @ 19:32
j"qY8GyG:%s/<C-R>q<BS>/<C-R>"<BS>/<CR>ZZ

0 comments


#287 joel / Atree23 - Score: 23 - 07/29/16 @ 23:51
7j3Y/J<CR>pnpnpNddNddNddZZ

0 comments


#288 Batuhan Bayrakçı / bay_batu - Score: 23 - 09/18/16 @ 13:34
:8<CR>3Y:g/J/norm dd"0P<CR>ZZ

0 comments


#289 Bruce Park / bpark0 - Score: 23 - 09/23/16 @ 18:14
:8y3<CR>:g/J/norm dd"0P<CR>ZZ

0 comments


#290 Joël Christ / jjlchrist - Score: 23 - 10/07/16 @ 14:20
8G3Y/J<CR>pnpnpNddNddNddZZ

0 comments


#291 Clalani / clalania - Score: 23 - 10/14/16 @ 10:59
:8<CR>3Y:g/J/norm dd"0P<CR>ZZ

0 comments


#292 Michael Hoffmann / micha66545852 - Score: 23 - 02/25/17 @ 20:50
jddjddjddj3Y1Gp5Gp9GpZZ

0 comments


#293 Alexander Gryson / agryson - Score: 23 - 05/04/17 @ 20:13
8Gy2j:g/J/norm dd"0P<CR>ZZ

0 comments


#294 python-tweepy / python_tweepy - Score: 23 - 05/16/17 @ 04:01
/C<CR>v}ykkqqd$"0pkkq2@qZZ

0 comments


#295 Clémence / Clemence_Neoxia - Score: 24 - 06/24/16 @ 16:51
7j3Y2kp3kp3kpkdd4j.4j.ZZ

0 comments


#296 Adam Collins / adc613 - Score: 24 - 07/07/16 @ 20:48
7j3Ykkp3kp3kpkdd4j.4j.ZZ

0 comments


#297 Jonathan Werner / jonathanewerner - Score: 24 - 07/09/16 @ 16:10
:8,$y<CR>:g/J/norm dd"0P<CR>ZZ

0 comments


#298 Nat / ntzm_ - Score: 24 - 07/15/16 @ 11:26
7j3Ykkp3kp3kpkdd4j.4j.ZZ

0 comments


#299 Ealhad / Ealhad - Score: 24 - 07/15/16 @ 13:59
8G3Ykkp4Gp2Gpkdd6G.4j.ZZ

0 comments


#300 Ben Baker-Smith / Bit_Synthesis - Score: 24 - 07/17/16 @ 05:52
/C<CR>v/\.<CR>y:%s/J.*/<C-R>"/g<CR>ZZ

0 comments


#301 Luc Mazardo / lxtrmz - Score: 24 - 08/01/16 @ 21:39
7jjk3Y/J<CR>pnpnpNddn.n.<Esc>ZZ

0 comments


#302 byte_kgd / byte_kgd - Score: 24 - 08/10/16 @ 16:53
<Down>dd<Down>dd<Down>dd<Down>3yy1Gp3<Down>p3<Down>pZZ

0 comments


#303 apan apansson / apanapanssonapa - Score: 24 - 08/13/16 @ 15:33
:8,$y<CR>:g/J/norm dd"0P<CR>ZZ

0 comments


#304 TweetDreams / TweetMusicians - Score: 24 - 10/08/16 @ 11:34
jddjddjddj3Vy1Gp5Gp9GpZZ

0 comments


#305 Apox / apox159 - Score: 24 - 11/26/16 @ 20:03
G2yk:g/J/norm p<CR>:g//d<CR>ZZ

0 comments


#306 Kyouma / kyoumaJohn - Score: 24 - 05/19/17 @ 14:00
qqjddq2@qj3yykkpkkpkkpZZ

0 comments


#307 IgnatiusMcGowan / IgnatiusMcGowan - Score: 24 - 05/23/17 @ 23:42
jddjddjddjy3j1Gp3jp3jpZZ

0 comments


#308 Florian Gauger / FlorianGauger - Score: 24 - 06/03/17 @ 00:48
/J<CR>ddn.n.jy2j2kp2kp2kpZZ

0 comments


#309 Jamie Macdonald / JamieMacdo - Score: 24 - 02/08/18 @ 03:41
7j3yy:g/J/norm V"1<BS>0p<CR>ZZ

0 comments


#310 janders223 / janders223 - Score: 25 - 06/24/16 @ 21:54
:8y3<CR>:g/J/normal dd"0P<CR>ZZ

0 comments


#311 Robert Newbould / c0nspiracy - Score: 25 - 06/29/16 @ 16:07
:8,10y a<CR>jqqV"ap4jq@q@qZZ

0 comments


#312 Devin Lehmacher / lehmacdj - Score: 25 - 08/02/16 @ 18:10
8Gyv3$:%s/Junk text/<C-R>"<CR>ZZ

0 comments


#313 Steven Schalhorn / Unmensch - Score: 25 - 03/20/17 @ 19:24
GVkky/J<CR>V"0pnV"0pnV"0p<Esc>ZZ

0 comments


#314 autological_being / metaporias - Score: 25 - 05/03/18 @ 16:47
jddjddjddjyG2kp2k.2k.:wq<CR>

0 comments


#315 z0c / zerocabal - Score: 25 - 06/11/18 @ 16:12
jddjddjddjVjjy2kp2kp2kpZZ

0 comments


#316 Max / Max77140 - Score: 26 - 07/06/16 @ 10:55
jqqddjq@q@@V3jykkpkkpkkpZZ

0 comments


#317 Rob Smolinski / scottymcribs - Score: 26 - 07/04/17 @ 00:48
:8,10y|%s/.*J.*\n/\=@0/<CR>ZZ

0 comments


#318 FunkySayu / FunkySayu - Score: 27 - 06/29/16 @ 16:10
8G3Y6Gdd"0P4Gdd"0P2Gdd"0PZZ

0 comments


#319 Rebecca Clarkson / ClarksonRL - Score: 27 - 10/09/17 @ 16:02
jd$2j.2j.2j3y$2kp2kp2kp:wq<CR>

0 comments


#320 emmanuel delgado / chischaschos - Score: 28 - 06/28/16 @ 05:11
7j"m3Y2kV"mp2kV"mp2k"mpkddZZ

0 comments


#321 Ilker Mutlu / ilkermutlu - Score: 28 - 06/30/16 @ 15:21
7j"o3y2j2kV"op2kV"op2kV"opZZ

0 comments


#322 AODQ / AODQIG - Score: 28 - 08/20/16 @ 19:19
GV2k"ZY:%s/.*J.*\n/\=@Z/g<CR>ZZ

0 comments


#323 George Aiken / QuackBookPro - Score: 29 - 07/05/16 @ 12:58
qajddq2@aGV<Up><Up>y($p)$p)p<Esc>:q<BS>wq<CR>

0 comments


#324 Matt Walsh / wattmalsh - Score: 29 - 02/03/17 @ 18:52
j"ayy8GV2j"by:%s/<C-R>a<BS>/<C-R>b<BS>/g<CR>ZZ

0 comments


#325 Hugh / thereal_hugh - Score: 30 - 06/30/16 @ 00:40
<Esc>jddjddjddj3Y<Esc>kkp<Esc>kkp<Esc>kkp<Esc>:wq<CR>

0 comments


#326 Lydia Cupery / LCupery - Score: 32 - 04/15/18 @ 02:41
GVkk"ay:6<CR>V"ap:4<CR>V"ap<Esc>:2<CR>V"ap<Esc>ZZ

0 comments


#327 Ola Johansson / oj_johansson - Score: 32 - 04/21/18 @ 19:25
7j3yy2kp3kp3kp<Esc>:g/Junk?<BS>/d<CR><Esc>:wq<CR>

0 comments


#328 Colby Pines / wcpines - Score: 34 - 01/11/17 @ 16:30
:8,10y<CR>%:%s/<Tab>Junk text./<C-R>"<BS>/g<CR>:wq<CR>

0 comments


#329 Steve Lemuel / Steve_Lemuel - Score: 34 - 05/04/17 @ 10:33
<CR>jjjjjjjVjjykkkjVpgvykkVpkkV"0p:x<CR>

0 comments


#330 Paul Inc / hiniol1982 - Score: 34 - 07/13/17 @ 16:10
:5<BS>8,10t.<CR>jdd:2,4t.<CR>jddj:<Up><CR><Up><Up><Up>ddZZ

0 comments


#331 Andrew Hanlon / AndrewDHanlon - Score: 35 - 10/13/16 @ 00:15
GVkkyggp:6<CR>p:11<CR>p/Junk<CR>ddnddndd<Esc>:x<CR>

0 comments


#332 Nico Jansen / nicojansen1804 - Score: 38 - 01/03/17 @ 18:20
7jVjj"tYkkqqdd"tPkkq@q@q:q<CR>:q!<BS><BS>w!<CR>:q<CR>

0 comments


#333 Alex Budilovsky / alexbudy - Score: 39 - 05/02/18 @ 02:06
:8,10y<CR>jVpVjjyjjjjVjkp<Esc>VjjyjjjjVp<Esc>:w<CR>ZZ

0 comments


#334 J-F R. / RheaultJF - Score: 40 - 11/17/16 @ 22:51
GVkky:s<BS>%%<BS>s/^.*\.<Left><Left>t<Right><Right>/<C-R>0/g<CR>dd}{dd{ddZZ

0 comments


#335 Adam Kożuch / adamkozuch - Score: 40 - 04/06/17 @ 07:44
8ggVGy/j<CR>Vpnp<Esc>uuuV<C-R>"0pn.uV<C-R>"0pn<C-R>"0pkddZZ

0 comments


#336 Micha / michman89 - Score: 50 - 08/08/16 @ 12:13
7jy3y:%s/<BS><BS><BS><BS>kkkkkkddPddkjjddjddkjjy3ykkpkkpkkp:x<CR>

0 comments


#337 murmurs / mrmrs_ - Score: 56 - 01/05/18 @ 21:36
8GV2jy2GpkddnjjjjpujjjjVjjyjjkkkkpkddkkpjjVjjykkpkdk:wq<CR>

0 comments


#338 Filype Pereira / FilypePereira - Score: 60 - 12/26/16 @ 03:38
:*<BS>8<CR>V}y:2<CR>pkdd<Esc>jjjj.O<Tab><Esc>p<Esc>ddkkkkkVjjy:6<CR>p<Esc>:11<CR>pkdd:6<CR>.<Esc>:wq!<CR>

0 comments


#339 Dave Solomon / davemsolomon - Score: 72 - 07/03/16 @ 05:27
<Down><Down><Down><Down><Down><Down><Down>V<Down><Down>y<Up><Up><Up><Up><Up><Up>p<Up><Esc>dd<Down><Down><Down><Down>p<Up><Down><Down><Down><Down><Down>Y<Esc>YV}y<Up><Up><Up><Up><Up>p<Down><Down><Down><Down><Down>p<Up>dd<Up><Up><Up><Up><Up><Up>dd<Down><Down><Down>dd<Esc>:wq<CR>

0 comments


#340 KulwantSingh / klwnt1992 - Score: 73 - 06/25/16 @ 13:26
:8, 10 co 2<CR>:11, 13 co 7<CR>:14, 16 co 12<CR><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Up><Down>dd<Down><Down><Down><Down>dd<Down><Down><Down><Down>dd:wq!<CR>

0 comments


#341 Artem Kholodnyi / defHLT - Score: 104 - 07/17/16 @ 14:49
GVkkykkkkkkS<C-R>0<Esc>upGkjVkkykkkkkkkVjpjjjjVpu<C-R>p"_pjkkkkjuuuuuuuuuuuuuu:8,$y<CR>:g/J/o<BS>norm dd"0[<BS>p<BS>P<CR><BS><BS><BS><BS><CR>ZZ

0 comments


#342 まきお / makio0925 - Score: 114 - 10/30/17 @ 10:22
jjjjjjjVjjykkkkkkV@@@<Esc><Esc><Esc>jjjjjjVjjykkkkkkVpjjjjVjkpVPPuuuujjjjjjVjjykkkkkkVpjjjjjjjjVjjykkkkVpjjjjjjVjjykkVp:w<CR>:wq<CR>

0 comments


Created by: udioica

342 active golfers, 1404 entries

Leaderboard (lowest score wins):
21
#241 - Mark Brody / _markbrody

03/23/2017 at 05:15AM

21
#242 - retro / tryphopp

04/07/2017 at 06:19AM

21
#243 - g-fresh / gfresh73684651

04/25/2017 at 09:59PM

21
#244 - ʀǟɦʊʟ ɮɦօʟǟ / theRahulBhola

05/26/2017 at 11:25AM

21
#245 - Carl Egbert / CarlOEgbert

06/09/2017 at 09:10PM

21
#246 - Marcin Paliwoda / eukaliptuss

08/25/2017 at 02:37PM

21
#247 - James / Dronak

08/28/2017 at 01:23AM

21
#248 - Paul Sohn / pksohn

09/07/2017 at 02:56PM

21
#249 - wes / _weslly

09/23/2017 at 11:05PM

21
#250 - Stephen Watkin / stephen_watkin

10/07/2017 at 10:02AM

21
#251 - Ron Alexssen / Ralexhere

10/20/2017 at 06:15PM

21
#252 - Florian Kluck / KluckF

11/05/2017 at 07:58PM

21
#253 - Bradley M. Small / BradleySmall

01/03/2018 at 01:18PM

21
#254 - TachyG / Tachypsychique

01/29/2018 at 01:52PM

21
#255 - martin tourneboeuf / martintournebo1

01/31/2018 at 09:48PM

21
#256 - Michael D Jones / biotechjones

02/03/2018 at 09:35PM

21
#257 - slicklash / slicklash

03/01/2018 at 02:14PM

21
#258 - vimthrowaway / vimgolf_throw

03/30/2018 at 06:25PM

22
#259 - Laurion Burchall / laurionb

06/28/2016 at 10:34PM

22
#260 - Oliver Christ / 0liverChrist

07/12/2016 at 09:41PM

22
#261 - Nicholas DiSanto / cozzzmo

07/28/2016 at 03:32PM

22
#262 - Andrew Smith / amazing_andrew

08/13/2016 at 04:28AM

22
#263 - Mort Rainey / arch_midnight

08/18/2016 at 12:32AM

22
#264 - a1exwang / ice_b0und

09/05/2016 at 06:19AM

22
#265 - nixi3 / Nixi3cc

09/05/2016 at 09:25AM

22
#266 - claytron / claytron

09/20/2016 at 06:42PM

22
#267 - Christophe Perrotin / ChrisPerSurTwit

09/24/2016 at 10:46PM

22
#268 - Brian Phelps / electronjunkie

10/23/2016 at 08:22PM

22
#269 - Cù Hữu Hoàng / Cuhuuhoang

02/14/2017 at 04:08PM

22
#270 - Adi Ron / notadiron

03/10/2017 at 07:05PM