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 57959f8a083a7e0c45000001

Paragraph sort

My large herbivorous mammals, Vim commands, and POSIX utilities need to be sorted separately.

Start file
camel
elk
alpaca
deer
buffalo

buffer
delete
append
change
file
edit

date
chmod
awk
bc
End file
alpaca
buffalo
camel
deer
elk

append
buffer
change
delete
edit
file

awk
bc
chmod
date

View Diff

The :abc's of Vim, you could say, are the expansions of each single-letter
colon command. Here's the complete list:

:append
:buffer
:change
:delete
:edit
:file
:global
:help
:insert
:join
:k (:mark)
:list
:move
:next
:open
:print
:quit
:read
:substitute
:t (:copy)
:undo
:vglobal
:write
:xit (:exit)
:yank
:z

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 67 remaining solutions by signing in and submitting your own entry
#68 myjunkmails / myjunkmails - Score: 19 - 11/24/16 @ 08:19
qqvip:sort<CR>}jq2@qZZ

0 comments

#69 Stop and think / ms_uncountable - Score: 19 - 07/10/17 @ 13:09
qav}B:sort<CR>}jq2@aZZ

0 comments

#70 Gurukandhamoorthi / Gurukandhamoor1 - Score: 19 - 07/11/17 @ 14:33
Gqqv(:sort<CR>kkq2@qZZ

0 comments

#71 Johan Bleuzen / jBleuzen - Score: 19 - 07/28/17 @ 15:05
qqvip:sort<CR>}jq2@qZZ

0 comments

#72 Tuấnn / tuantv_nd - Score: 21 - 08/02/16 @ 23:56
qqvip:sort u<CR>7jq2@qZZ

0 comments

#73 Rosalie Tolentino / rosatolen - Score: 22 - 08/15/16 @ 00:15
qqvip:sort<CR>q6j@q7j@qZZ

0 comments

#74 George Angelopoulos / g_usermod - Score: 23 - 08/05/16 @ 18:55
V4j:sor<CR>7GV5j@:7jVL@:ZZ

0 comments

#75 Andres Araya / arayaandresfco - Score: 24 - 07/25/16 @ 13:44
V}k:sort<CR>}jV}k@:}<CR>V}@:ZZ

0 comments

#76 Christopher MCA / christopherMCA - Score: 24 - 07/28/16 @ 03:38
qqvip:sort<CR>q<Esc>}}k@q}}@qZZ

0 comments

#77 Zephyr Pellerin / zefyear - Score: 25 - 07/28/16 @ 19:45
Go<Esc>;:g/./,/^$/sort<CR>ggddZZ

0 comments

#78 Serguei Filimonov / SergueiF - Score: 26 - 07/25/16 @ 14:23
V}k:sort<CR>}jV}k@:}jV}@::wq<CR>

0 comments

#79 Stephan Bugnon / stephanbugnon - Score: 28 - 08/02/16 @ 12:25
5Vqa:sort<CR>q6jV/ed<CR>@a7jVG@aZZ

0 comments

#80 Matt Walsh / wattmalsh - Score: 30 - 02/22/17 @ 23:15
:1,5sort|7,12sort|14,17sort<CR>ZZ

0 comments

#81 Richard Laub / RWLaub91 - Score: 32 - 08/02/16 @ 04:34
v}k:sort<CR>}jv}k:sort<CR>}jv}:sort<CR>ZZ

0 comments

#82 Sam Hammer / samhammer325 - Score: 33 - 07/30/16 @ 06:22
<C-V>4j:sort<CR>7G<C-V>5j:sort<CR>7j<C-V>3j:sort<CR>ZZ

0 comments

#83 Micha / michman89 - Score: 41 - 08/08/16 @ 11:48
Vjjjj:sort<CR>6jVjjjjj:sort<CR>6jjVjjj:sort<CR>:x<CR>

0 comments

#84 Stoyko Stanchev / stoykostanchev - Score: 78 - 08/12/16 @ 21:55
3Gdd1GP5Gdd2GP5GddkP9Gdd7GP10GddkP12GddkP16GddllkkPkkjjjjjddkkjPjjddP<Esc>:w<CR>:q!<BS><CR>

0 comments

Created by: udioica

84 active golfers, 264 entries

Leaderboard (lowest score wins):
14
#1 - Urtica dioica / udioica

07/26/2016 at 05:15AM

14
#2 - OumpaLoumpa / OLoumpa

07/26/2016 at 12:21PM

14
#3 - John Braxler / braxler

07/26/2016 at 01:28PM

14
#4 - Sandeep Dhavale / sandeep_dhavale

07/29/2016 at 05:26AM

14
#5 - L3viathan / L3viathan2142

07/30/2016 at 01:37AM

14
#6 - hyhit / hyhit2

07/31/2016 at 09:25AM

14
#7 - (,,꒪꒫꒪,,) / sneer

08/01/2016 at 12:08PM

14
#8 - Saki Gw / Sakigw

08/04/2016 at 01:19PM

14
#9 - Petro Тrouq / zulolosi

08/04/2016 at 07:58PM

14
#10 - Artūras Zakrevskis / AZakrevskis

08/11/2016 at 12:54PM

14
#11 - Tautvilas / TautviIas

08/11/2016 at 12:54PM

14
#12 - Martynas Bardauskas / mbardauskas

08/11/2016 at 12:55PM

14
#13 - Arijus / argshook

08/11/2016 at 12:59PM

14
#14 - Ivan De Dios / IvantheDugtrio

08/22/2016 at 08:05PM

14
#15 - jaresty / jaresty

08/31/2016 at 02:50PM

14
#16 - Stephen Aument / saument

08/31/2016 at 08:21PM

14
#17 - jdupont655 / jdupont655

09/02/2016 at 12:23AM

14
#18 - Krzysztof Borkowski / smiechowy

09/03/2016 at 07:30PM

14
#19 - loki2441 / loki2441

09/05/2016 at 12:44PM

14
#20 - hor1ace / hor3ace

09/07/2016 at 10:06PM

14
#21 - Caleb Prashant / calebprashant

09/13/2016 at 11:34AM

14
#22 - Nico / _Nico_Caro

09/26/2016 at 05:58PM

14
#23 - trx / trxdbg

10/11/2016 at 08:28AM

14
#24 - John Barbero Unenge / JBarberU

10/19/2016 at 12:33PM

14
#25 - Bill Ruddock / biinari

10/25/2016 at 01:34PM

14
#26 - Linfeng Li / llinfeng19

02/13/2017 at 08:18PM

14
#27 - Zhihong Liu / pieapple03

02/26/2017 at 06:30AM

14
#28 - 梧桐王子 / WutongYujie

05/07/2017 at 03:00AM

17
#29 - f00b8tr / f00b8tr5

07/25/2016 at 05:47AM

17
#30 - Cristian Lupașcu / clupasq

07/25/2016 at 06:35AM

17
#31 - Jan Bundesmann / ixjab

07/25/2016 at 09:10AM

17
#32 - Benjamin Espey / bennyty

07/25/2016 at 01:39PM

17
#33 - tPenguinLTG / tpenguinltg

07/25/2016 at 01:58PM

17
#34 - Jon Krause / jkrause314

07/25/2016 at 06:08PM

17
#35 - Richard O'Brien / richard0b

07/26/2016 at 02:39AM

17
#36 - Victor Haffreingue / nobe_4

07/26/2016 at 06:37AM

17
#37 - Smylers / Smylers2

07/26/2016 at 08:17AM

17
#38 - Herbert S. / herbertshlong

08/03/2016 at 08:16PM

17
#39 - Vaughn Cato / vaughncato

08/07/2016 at 05:54PM

17
#40 - Will / w_labranche

08/31/2016 at 04:17AM

17
#41 - manbogot / gmanbor

10/02/2016 at 10:04AM

17
#42 - poke / useraaaaaaaaaaf

10/05/2016 at 02:18PM

17
#43 - Christian Rondeau / c_rondeau

10/17/2016 at 03:24AM

17
#44 - Davis Fields / i301585

11/05/2016 at 01:59AM

17
#45 - Alan Turing / alantrng

11/28/2016 at 10:54PM

17
#46 - Michał Dytko / DytkoM

12/21/2016 at 10:31AM

17
#47 - Daniel / Daniel00288663

04/18/2017 at 11:16AM

18
#48 - Dmitriy Olshevskiy / olshevskiy_dv

07/25/2016 at 08:23AM

18
#49 - Walker Boh / walker_boh

07/25/2016 at 09:25AM

18
#50 - ushumpei / funnel_mune

07/27/2016 at 09:13AM

18
#51 - Matt Clement / zetaspartan2552

07/30/2016 at 11:59PM

18
#52 - jn / j1357924

08/07/2016 at 04:48PM

18
#53 - jj johnson / jcassj1

08/22/2016 at 04:05PM

18
#54 - Albert Mikó / berci1992

08/26/2016 at 08:54PM

18
#55 - Constantine / ConstantineHatz

09/16/2016 at 06:25PM

18
#56 - Kyouma / kyoumaJohn

10/12/2016 at 10:53PM

18
#57 - BlackCap / BlackCapCoder

11/23/2016 at 05:50PM

18
#58 - Etienne Florent / EtienneFlorent

11/23/2016 at 05:53PM

18
#59 - Liam S Ismail / AC01Y

01/03/2017 at 11:31PM

18
#60 - Yann / yannstadnicki

02/22/2017 at 06:52AM

18
#61 - Brian Hall / _bruab_

05/26/2017 at 12:55PM

19
#62 - Jeremiah Goyette / JeremiahGoyette

07/30/2016 at 02:27AM

19
#63 - Tyler Tomlinson / tjtoml

08/04/2016 at 02:30AM

19
#64 - Christian Guenter / chris_guenter

08/06/2016 at 07:49PM

19
#65 - Stanislav / prstad

08/22/2016 at 04:40PM

19
#66 - Axl Waii / axlwaii

10/02/2016 at 11:23AM

19
#67 - TweetDreams / TweetMusicians

10/08/2016 at 09:08PM

19
#68 - myjunkmails / myjunkmails

11/24/2016 at 08:19AM

19
#69 - Stop and think / ms_uncountable

07/10/2017 at 01:09PM

19
#70 - Gurukandhamoorthi / Gurukandhamoor1

07/11/2017 at 02:33PM

19
#71 - Johan Bleuzen / jBleuzen

07/28/2017 at 03:05PM

21
#72 - Tuấnn / tuantv_nd

08/02/2016 at 11:56PM

22
#73 - Rosalie Tolentino / rosatolen

08/15/2016 at 12:15AM

23
#74 - George Angelopoulos / g_usermod

08/05/2016 at 06:55PM

24
#75 - Andres Araya / arayaandresfco

07/25/2016 at 01:44PM

24
#76 - Christopher MCA / christopherMCA

07/28/2016 at 03:38AM

25
#77 - Zephyr Pellerin / zefyear

07/28/2016 at 07:45PM

26
#78 - Serguei Filimonov / SergueiF

07/25/2016 at 02:23PM

28
#79 - Stephan Bugnon / stephanbugnon

08/02/2016 at 12:25PM

30
#80 - Matt Walsh / wattmalsh

02/22/2017 at 11:15PM

32
#81 - Richard Laub / RWLaub91

08/02/2016 at 04:34AM

33
#82 - Sam Hammer / samhammer325

07/30/2016 at 06:22AM

41
#83 - Micha / michman89

08/08/2016 at 11:48AM

78
#84 - Stoyko Stanchev / stoykostanchev

08/12/2016 at 09:55PM