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):
15
#121 - Jon Louie / jjisnow

11/24/2016 at 02:04AM

15
#122 - Pierre Maoui / poupougnac

12/19/2016 at 05:23PM

15
#123 - Craig Langford / cllangfo

12/31/2016 at 03:02PM

15
#124 - Yann / yannstadnicki

02/19/2017 at 08:08PM

15
#125 - Roland TheFreak / _TheFreak_

04/30/2017 at 11:49AM

15
#126 - Acid One / AcidOne2

05/04/2017 at 09:05AM

15
#127 - James Houghton / jamesthoughton

05/05/2017 at 07:38PM

15
#128 - Brian Hall / _bruab_

06/27/2017 at 03:01PM

15
#129 - Harsh Kumar / datsleepyguy

06/30/2017 at 11:01AM

15
#130 - Baine Wedlock / BaineWedlock

08/11/2017 at 04:47PM

15
#131 - Luke Bryant / LukeBryant55

10/08/2017 at 02:54PM

15
#132 - しぇぱっち / shepabashi

10/23/2017 at 05:34AM

15
#133 - John C Shea / MHSSachems

02/04/2018 at 11:12AM

15
#134 - Max Krogius / MaxKrogius

02/23/2018 at 02:57PM

15
#135 - Fichera Gaetano / gaetanofic

04/11/2018 at 09:06AM

15
#136 - r / revanthedarth

06/13/2018 at 12:53AM

15
#137 - Ernesto Barros / ernestobarros7

06/16/2018 at 09:29PM

16
#138 - Artur Kęsik / arturkesik

06/24/2016 at 01:48PM

16
#139 - kuwa / lrmystp

06/24/2016 at 04:26PM

16
#140 - Vaisian / Vaisian

07/02/2016 at 03:54PM

16
#141 - André Peric Tavares / andre_peric

07/20/2016 at 06:49PM

16
#142 - Sarang Khim / sarang_khim

08/02/2016 at 11:42PM

16
#143 - Maxime Reis / MaximeReis

08/16/2016 at 02:52PM

16
#144 - Krzysztof Borkowski / smiechowy

09/03/2016 at 06:46PM

16
#145 - Zachary Neubert / Mr_Saturn16347

03/17/2017 at 01:39AM

16
#146 - Daniel / Daniel00288663

03/17/2017 at 08:04AM

16
#147 - Russell Ball / rtball2

04/30/2017 at 09:09PM

16
#148 - Jerry Wu / AzureSpectra

05/05/2017 at 07:38PM

16
#149 - Denis Kaluznyy / Spy_Denis

07/18/2017 at 02:09PM

16
#150 - Jacob Buete / JBuete

07/20/2017 at 07:48AM