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 57cf3e398c660c1f8f014717

Paragraph breaks

Swap the blank lines and the aaa lines.

Start file
aa
a
aaa

aa
a
aaa

aa
a
aaa

aa
a
End file
aa
a

aaa
aa
a

aaa
aa
a

aaa
aa
a

View Diff

Looking for a hint? I'm not giving one!

Looking for a diff? Not giving that either.

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 97 remaining solutions by signing in and submitting your own entry
#98 Rami Hovi / hacker_lawyer - Score: 13 - 05/16/17 @ 09:54
qajo<Esc>}Jq2@aZZ

0 comments

#99 Chicuella / chicuellahere - Score: 13 - 06/06/17 @ 10:55
qq}kddpq2@qZZ

0 comments

#100 John Smith / johns32768 - Score: 13 - 06/21/17 @ 17:43
qq}kddpq2@qZZ

0 comments

#101 Christian Guenter / chris_guenter - Score: 14 - 09/09/16 @ 17:32
qqq}dd<Up>Pq2@qZZ

0 comments

#102 Søren / natlampen - Score: 14 - 09/20/16 @ 16:09
qq2jddpjq2@qZZ

0 comments

#103 Alex Ulitin / inventivealex - Score: 14 - 09/23/16 @ 02:37
qqjjddpjq2@qZZ

0 comments

#104 Koudougou / OpenPatate - Score: 14 - 09/23/16 @ 14:19
qajjddpjq2@aZZ

0 comments

#105 Clalani / clalania - Score: 14 - 10/14/16 @ 10:55
qq}kddpq@q@qZZ

0 comments

#106 myjunkmails / myjunkmails - Score: 14 - 11/24/16 @ 05:35
qyjjddpjq2@yZZ

0 comments

#107 Marcel Akkerman / MarcelAkkerman - Score: 14 - 12/29/16 @ 08:10
qqjjddpjq3@qZZ

0 comments

#108 luffy / raxcoi - Score: 15 - 09/10/16 @ 17:22
2jqqddp3jq2@qZZ

0 comments

#109 Joël Christ / jjlchrist - Score: 15 - 10/07/16 @ 19:32
qqjo<Esc>jjddq2@qZZ

0 comments

#110 TweetDreams / TweetMusicians - Score: 15 - 10/08/16 @ 10:18
qq2jddpjq@q@qZZ

0 comments

#111 mnx / mnxx - Score: 15 - 11/14/16 @ 14:58
2jddp*ddpnddpZZ

0 comments

#112 AODQ / AODQIG - Score: 16 - 09/07/16 @ 22:39
3GDjp7GdGy3kPPZZ

0 comments

#113 Hans Yelek / hans_yelek - Score: 16 - 01/10/17 @ 05:08
11GqqD+p5-q2@qZZ

0 comments

#114 JungChoon Park / unlimitedfocus - Score: 17 - 09/08/16 @ 18:17
2jddp3jddp3jddpZZ

0 comments

#115 George Angelopoulos / g_usermod - Score: 17 - 09/20/16 @ 19:37
2jddp3jddp3jddpZZ

0 comments

#116 Carl Egbert / CarlOEgbert - Score: 17 - 06/11/17 @ 23:06
jjddp3jddp3jddpZZ

0 comments

#117 Batuhan Bayrakçı / bay_batu - Score: 18 - 09/18/16 @ 14:29
:g/aaa/norm ddp<CR>ZZ

0 comments

#118 Meriadec Pillet / loomisBroom - Score: 18 - 09/27/16 @ 11:30
2jddp3jddp3jddp:x<CR>

0 comments

#119 herbage / herbage2 - Score: 19 - 12/17/16 @ 14:35
3Gddp3j.uddp3jddpZZ

0 comments

#120 Netrisk Cool / C00lt0 - Score: 24 - 09/29/16 @ 18:09
qqdjp3jq2@qkdGggPddjo<Esc>ZZ

0 comments

#121 king_zorba / StrangeZorba - Score: 26 - 09/22/16 @ 14:37
2j:m 12<CR>2km::m 7<CR>2k:m 3<CR>ZZ

0 comments

#122 Matt Walsh / wattmalsh - Score: 52 - 02/08/17 @ 08:07
:%s/aaa\|^$/\=submatch(0) == "aaa" ? "" : "aaa"/g<CR>ZZ

0 comments

Created by: udioica

122 active golfers, 331 entries

Leaderboard (lowest score wins):
10
#1 - John Braxler / braxler

09/07/2016 at 03:49PM

10
#2 - Urtica dioica / udioica

09/07/2016 at 06:53PM

10
#3 - jaresty / jaresty

09/07/2016 at 09:07PM

10
#4 - Caleb Prashant / calebprashant

09/12/2016 at 01:21PM

10
#5 - David Montague / sirlamps

09/16/2016 at 06:19PM

10
#6 - Sahar Rachamim / SRachamim

09/19/2016 at 08:59PM

10
#7 - Christian Albertsen / mannahusum

09/20/2016 at 11:36AM

10
#8 - 何晨 / hechen0_

09/22/2016 at 05:14PM

10
#9 - Nico / _Nico_Caro

09/23/2016 at 06:48PM

10
#10 - James Pringle / jameskpringle

09/28/2016 at 04:05PM

10
#11 - Jeremiah Gibson / jeremiah4691

09/28/2016 at 10:39PM

10
#12 - manbogot / gmanbor

10/02/2016 at 09:16AM

10
#13 - Nikos Kwlos / Kwlos_Calling

10/07/2016 at 08:00PM

10
#14 - trx / trxdbg

10/10/2016 at 09:02AM

10
#15 - jinx balotchnik / balotchnik

10/14/2016 at 02:18AM

10
#16 - Chris Hampson / ChrisHampsonGTD

10/15/2016 at 11:16AM

10
#17 - Brian Mego / Major251

10/17/2016 at 04:04AM

10
#18 - 子皓翁 / geniusgordon

10/29/2016 at 04:12PM

10
#19 - Alan Turing / alantrng

11/15/2016 at 11:45AM

10
#20 - Patrick Sanan / patricksanan

01/10/2017 at 02:39PM

10
#21 - Michael Buckley / apolatg

01/16/2017 at 10:01PM

10
#22 - sijinyuan / sijinyuan

02/20/2017 at 01:29AM

10
#23 - Alexander Bessonov / nonsleepr

03/15/2017 at 10:29PM

10
#24 - Ilya Shakirov / aelaau

03/22/2017 at 09:29AM

10
#25 - Tyler Holien / tylerholien

03/27/2017 at 04:29AM

10
#26 - 梧桐王子 / WutongYujie

04/27/2017 at 06:00AM

10
#27 - Melvin Cheung / MelvinCheung

05/26/2017 at 03:45AM

10
#28 - tomb0y / tomb0_0y

05/29/2017 at 07:15PM

11
#29 - Jon Krause / jkrause314

09/07/2016 at 06:25AM

11
#30 - Smylers / Smylers2

09/08/2016 at 08:24AM

11
#31 - Alessio Linares / alessio_linares

09/08/2016 at 02:29PM

11
#32 - Anoop Kumar / anooplive

09/09/2016 at 05:42PM

11
#33 - Marvin Samson / fresapore

09/09/2016 at 07:50PM

11
#34 - Ken Schmidt / Maigard

09/09/2016 at 10:52PM

11
#35 - Petro Тrouq / zulolosi

09/10/2016 at 05:55AM

11
#36 - Benjamin Schindler / beschindler

09/10/2016 at 07:44AM

11
#37 - Peter / sunirbmag

09/10/2016 at 09:17AM

11
#38 - ✘A / Lolicon_H

09/11/2016 at 04:28AM

11
#39 - Shahaf A / Av3r4ge

09/12/2016 at 12:32PM

11
#40 - ♜ José Doval / pepellou

09/13/2016 at 03:53PM

11
#41 - Rizart Dokollari / rdokollari

09/14/2016 at 12:02PM

11
#42 - Vaughn Cato / vaughncato

09/15/2016 at 01:05PM

11
#43 - Allen57 / ludo57310

09/18/2016 at 02:05PM

11
#44 - javier castro / eusipial

09/19/2016 at 04:30AM

11
#45 - Patrick Davey / psdavey

09/21/2016 at 08:31AM

11
#46 - poke / useraaaaaaaaaaf

10/06/2016 at 02:39PM

11
#47 - Christian Rondeau / c_rondeau

10/16/2016 at 03:02AM

11
#48 - Bill Ruddock / biinari

10/31/2016 at 02:14AM

11
#49 - KangHun Seo / shirano80

10/31/2016 at 03:01AM

11
#50 - Davis Fields / i301585

11/04/2016 at 11:57PM

11
#51 - timerella® / timerella

11/16/2016 at 11:24PM

11
#52 - Zhihong Liu / pieapple03

02/15/2017 at 12:42AM

11
#53 - Dimitar Ivanov / dimisthoughts

03/20/2017 at 12:54AM

11
#54 - Zachary Neubert / Mr_Saturn16347

03/24/2017 at 12:22AM

11
#55 - Remus Dalrymple / bornintheflames

05/06/2017 at 11:56PM

11
#56 - lpag / lpag_ai

05/31/2017 at 10:08PM

12
#57 - Chris / Gaunah_

09/07/2016 at 09:09AM

12
#58 - Igor Czerwinski / igoratron

10/23/2016 at 01:33PM

13
#59 - tPenguinLTG / tpenguinltg

09/07/2016 at 02:02AM

13
#60 - tgmeng / lazy_fabric

09/07/2016 at 02:38AM

13
#61 - Cristian Lupașcu / clupasq

09/07/2016 at 06:43AM

13
#62 - Shivam Sharma / getshivam

09/07/2016 at 08:19AM

13
#63 - Jan Bundesmann / ixjab

09/07/2016 at 08:28AM

13
#64 - Walker Boh / walker_boh

09/07/2016 at 08:34AM

13
#65 - Utkrisht Dhankar / UtkrishtDhankar

09/07/2016 at 08:43AM

13
#66 - イーサン / metakirby5

09/07/2016 at 09:49AM

13
#67 - Stanislav / prstad

09/07/2016 at 12:37PM

13
#68 - hor1ace / hor3ace

09/07/2016 at 01:34PM

13
#69 - Lifepillar / lifepillar

09/07/2016 at 08:23PM

13
#70 - Winfried Puchinger / winpuc

09/09/2016 at 09:59AM

13
#71 - 馬 / uma0124

09/09/2016 at 03:34PM

13
#72 - Bruce Park / bpark0

09/09/2016 at 06:56PM

13
#73 - tetor / t_etor

09/09/2016 at 08:17PM

13
#74 - captain_morgan / captain_morgan

09/11/2016 at 06:43PM

13
#75 - Constantine / ConstantineHatz

09/12/2016 at 05:52PM

13
#76 - Matt Michnal / mgm702

09/12/2016 at 09:56PM

13
#77 - James / Dronak

09/13/2016 at 11:56AM

13
#78 - Finn Francis / FinnFrancis

09/16/2016 at 09:09AM

13
#79 - Rasmus / SBareSSomErMig

09/16/2016 at 07:40PM

13
#80 - Ameer Ayoub / magicmeeror

09/16/2016 at 09:36PM

13
#81 - Bendik Samseth / BSamseth

09/19/2016 at 01:15PM

13
#82 - Allen Gooch / mojochao

09/20/2016 at 11:39PM

13
#83 - Daniel Bellenger / DanielBellenger

09/24/2016 at 10:38PM

13
#84 - René De Alvarado / renedealvarado

09/27/2016 at 12:52PM

13
#85 - Jörg Meyer / JoergMy

10/01/2016 at 03:57PM

13
#86 - Test User / TestUserIgnore

10/17/2016 at 08:48PM

13
#87 - John Barbero Unenge / JBarberU

11/09/2016 at 02:24PM

13
#88 - Saki Gw / Sakigw

11/10/2016 at 03:32PM

13
#89 - BlackCap / BlackCapCoder

11/23/2016 at 04:18PM

13
#90 - Richard Mörbitz / Lodifice

12/08/2016 at 10:50PM

13
#91 - holy_sin / 0zero0

12/16/2016 at 07:50AM

13
#92 - Michał Dytko / DytkoM

12/20/2016 at 08:31AM

13
#93 - Yann / yannstadnicki

02/21/2017 at 07:00AM

13
#94 - Mitchell / Spitchell

03/18/2017 at 04:39PM

13
#95 - Avijit Gupta / 526avijit

03/25/2017 at 06:33AM

13
#96 - caplod / caplod

03/25/2017 at 07:39PM

13
#97 - Brian Hall / _bruab_

05/06/2017 at 06:05PM

13
#98 - Rami Hovi / hacker_lawyer

05/16/2017 at 09:54AM

13
#99 - Chicuella / chicuellahere

06/06/2017 at 10:55AM

13
#100 - John Smith / johns32768

06/21/2017 at 05:43PM

14
#101 - Christian Guenter / chris_guenter

09/09/2016 at 05:32PM

14
#102 - Søren / natlampen

09/20/2016 at 04:09PM

14
#103 - Alex Ulitin / inventivealex

09/23/2016 at 02:37AM

14
#104 - Koudougou / OpenPatate

09/23/2016 at 02:19PM

14
#105 - Clalani / clalania

10/14/2016 at 10:55AM

14
#106 - myjunkmails / myjunkmails

11/24/2016 at 05:35AM

14
#107 - Marcel Akkerman / MarcelAkkerman

12/29/2016 at 08:10AM

15
#108 - luffy / raxcoi

09/10/2016 at 05:22PM

15
#109 - Joël Christ / jjlchrist

10/07/2016 at 07:32PM

15
#110 - TweetDreams / TweetMusicians

10/08/2016 at 10:18AM

15
#111 - mnx / mnxx

11/14/2016 at 02:58PM

16
#112 - AODQ / AODQIG

09/07/2016 at 10:39PM

16
#113 - Hans Yelek / hans_yelek

01/10/2017 at 05:08AM

17
#114 - JungChoon Park / unlimitedfocus

09/08/2016 at 06:17PM

17
#115 - George Angelopoulos / g_usermod

09/20/2016 at 07:37PM

17
#116 - Carl Egbert / CarlOEgbert

06/11/2017 at 11:06PM

18
#117 - Batuhan Bayrakçı / bay_batu

09/18/2016 at 02:29PM

18
#118 - Meriadec Pillet / loomisBroom

09/27/2016 at 11:30AM

19
#119 - herbage / herbage2

12/17/2016 at 02:35PM

24
#120 - Netrisk Cool / C00lt0

09/29/2016 at 06:09PM

26
#121 - king_zorba / StrangeZorba

09/22/2016 at 02:37PM

52
#122 - Matt Walsh / wattmalsh

02/08/2017 at 08:07AM