Real Vim ninjas count every keystroke - do you?

Pick a challenge, fire up Vim, and show us what you got.

Leaderboard, Changelog, Rules & FAQ, updates: @vimgolf, RSS.

Your VimGolf key: please sign in

$ gem install vimgolf
$ vimgolf setup
$ vimgolf put 50502d985cfbf50002000022

NATO phonetic alphabet

Transform the series of words into a list.

Start file
Alfa Bravo Charlie Delta Echo Foxtrot Golf Hotel India Juliet Kilo Lima Mike November Oscar Papa Quebec Romeo Sierra Tengo Uniform Victor Whiskey Xray Yankee Zulu
End file
A = Alfa
B = Bravo
C = Charlie
D = Delta
E = Echo
F = Foxtrot
G = Golf
H = Hotel
I = India
J = Juliet
K = Kilo
L = Lima
M = Mike
N = November
O = Oscar
P = Papa
Q = Quebec
R = Romeo
S = Sierra
T = Tengo
U = Uniform
V = Victor
W = Whiskey
X = Xray
Y = Yankee
Z = Zulu

View Diff

diff --git a/input.txt b/output.txt
index 0a4121f..1ab8b7c 100644
--- a/input.txt
+++ b/output.txt
@@ -1 +1,26 @@
A = Alfa
B = Bravo
C = Charlie
D = Delta
E = Echo
F = Foxtrot
G = Golf
H = Hotel
I = India
J = Juliet
K = Kilo
L = Lima
M = Mike
N = November
O = Oscar
P = Papa
Q = Quebec
R = Romeo
S = Sierra
T = Tengo
U = Uniform
V = Victor
W = Whiskey
X = Xray
Y = Yankee
Z = Zulu

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 86 remaining solutions by signing in and submitting your own entry
#87 Sam Burk / @smwbk - Score: 25 - 12/21/13 @ 15:12
:%s/ /\r/g<CR><C-V>ggypgvA = <Esc>ZZ

0 comments

#88 Piotr Śniegowski / @PiotrSniegowski - Score: 26 - 06/06/13 @ 05:53
:s/\ /\r/g<CR><C-V>ggyp<C-V>G I = <Esc>ZZ

0 comments

#89 Felipe Jaramillo F / @mrfelipe - Score: 27 - 05/05/14 @ 21:12
:%s/ /\r/g<CR><CR><C-V>ggYp<C-V>GlI = <Esc>ZZ

0 comments

#90 Alishah Chator / @alicharizard - Score: 27 - 06/09/14 @ 07:31
qqy pi = <Esc>wwi<BS><CR><Esc>q25@qi<BS>l<Esc>ZZ

0 comments

#91 Krzysiek / @krzlew - Score: 28 - 09/16/12 @ 00:52
:s/ *\(\u\)/\r\1 = \1/g<CR><C-O>JZZ

0 comments

#92 Nicolas Friedli / @NicolasFriedli - Score: 28 - 10/29/12 @ 09:40
:%s/ /<C-V><CR>/g<CR><C-V>ggyP<Right><C-V>G<Right>I = <Esc><Down>ZZ

0 comments

#93 Joshua Travis / @jktravis - Score: 28 - 11/06/12 @ 17:40
quvyea<CR><Esc>kPa = <Esc>j0q25@udd:wq<CR>

0 comments

#94 Michael / @patheticpat - Score: 28 - 12/17/12 @ 05:47
:s/\u/& = &/g<CR>qq2elr<CR>q25@qZZ

0 comments

#95 Claudio Ortolina / @cloud8421 - Score: 28 - 08/27/13 @ 11:45
:s/ /\r/g<CR>qqyla = <Esc>p-q30@qZZ

0 comments

#96 Oliver Christ / @0liverChrist - Score: 28 - 10/04/13 @ 15:24
:s/ /\r/g<CR>qavyPa = <Esc>-q25@aZZ

0 comments

#97 Ian Pudney / @IanPudney - Score: 29 - 06/09/14 @ 07:19
:s/ *\(\u\)/\r\1 = \1/g<CR>HddZZ

0 comments

#98 Miguel Sánchez / @miguelsr1987 - Score: 30 - 10/03/12 @ 11:55
qqylpi = <Esc>wwhxi<CR><Esc>q24@qiZ = <Esc>ZZ

0 comments

#99 makala noble / @mnoble01 - Score: 30 - 11/13/12 @ 03:15
qqxPPa = <Esc>wwhxi<CR><Esc>q25@qkJxil<Esc>ZZ

0 comments

#100 Kerry Burke / @kurver - Score: 32 - 09/14/12 @ 14:42
qqylpi = <Esc>wwhxi<CR><Esc>q24@qiZ = <Esc>:wq<CR>

0 comments

#101 Brandon Frazier / @uhok - Score: 32 - 09/28/12 @ 20:45
qaxPPa \ <BS><BS>= <Esc>wwlhhxi<CR><Esc>q24@a@aZZ

0 comments

#102 Kohei Yamamoto / @k_ymmt - Score: 32 - 06/22/13 @ 07:52
:%s/ /<C-V><CR>/g<CR>:%s/^\(.\)/\1 = \1<CR>ZZ

0 comments

#103 Connie Qi / @connieqi - Score: 32 - 06/09/14 @ 07:36
:s/\>./\r/g<CR>:s<BS>%s/\<./& = &/g<CR>ZZ

0 comments

#104 Kamil Krzyżanowski / @kamnxt - Score: 33 - 03/14/14 @ 10:42
:s/ //g<CR>:s/[A-Z]/\r& = &/g<CR>ggddZZ

0 comments

#105 Jordan Eldredge / @captbaritone - Score: 34 - 09/13/12 @ 02:52
:s/\v(.)(\w+) ?/\1 = \1\2\r/g<CR>ddZZ

0 comments

#106 Pradeep Kumar / @pradeep6kumar - Score: 34 - 12/11/12 @ 04:23
:%s/\s/\r/g<CR><C-V>25ky<C-V>25jI = <Esc>^hP<Esc>:wq<CR>

0 comments

#107 Hyper Bovine / @hyperbovine - Score: 34 - 01/28/14 @ 21:24
:%s/\v((\w)\w+) ?/\2 = \1\r/g<CR>ddZZ

0 comments

#108 Ravi S Sinha / @ambidextrousTx - Score: 41 - 09/12/12 @ 15:52
:%s/ /\r/g<CR>qaxPa = <Esc>pqk0vgg:norm @a<CR><Esc>:wq<CR>

0 comments

Created by: @DiffJunk

108 active golfers, 256 entries

Leaderboard (lowest score wins):
Q6hrg93p4r3hn56thmd0_normal
19
#1 - Urtica dioica / @udioica

09/12/2012 at 01:27AM

Domon_64_normal
19
#2 - Domon / @Domon

09/12/2012 at 02:48AM

Ewbdmdtg_normal
19
#3 - Tim Chase / @gumnos

09/12/2012 at 04:12AM

5600_1181019976394_1555039088_1136809_7422652_n_normal
19
#4 - Jiří Chára / @JiriChara

09/12/2012 at 07:45AM

19394c4c602e5e85d0a8860511ec7f6b_normal
19
#5 - Peter Lacey-Bordeaux / @placeybordeaux

10/01/2012 at 08:25AM

Dsc_0096_2_normal
19
#6 - Victor Ramirez / @virako

10/19/2012 at 05:21PM

Default_profile_0_normal
19
#7 - Ilya Ermolin / @ermolinis

10/24/2012 at 11:40PM

12e3ab10a91992d5eed681da5d171823_normal
19
#8 - Steve Tjoa / @stevetjoa

02/04/2013 at 12:37PM

7bbc92500a24e0892967c51a50f1ff8e_normal
19
#9 - Tyler / @tylerbindon

04/05/2013 at 08:24PM

7bbd949b345fcbcfd812b231aed89f99_normal
19
#10 - Marco Hinz / @_mhinz_

05/23/2013 at 01:21PM

3af28abaa88d5ed2b7b5e41e6f5d94f4_normal
19
#11 - wushexu / @wushexu

05/25/2013 at 07:09AM

0e620322b2c292d069fe93e27c081f9c_normal
19
#12 - Petro Тrouq / @zulolosi

06/19/2013 at 02:43PM

Default_profile_3_normal
19
#13 - James Davis / @tripvg

06/26/2013 at 02:06PM

C4065e7d8164bafa96796ecc4b8ca2d7_normal
19
#14 - Bradd Szonye / @bszonye

07/14/2013 at 08:06PM

Twitter_normal
19
#15 - Drew Neil / @nelstrom

08/27/2013 at 02:56AM

Profile_normal
19
#16 - Karun Ramakrishnan / @the_karun

01/16/2014 at 10:59PM

Default_profile_1_normal
19
#17 - Xelrifos / @Xelrifos

02/22/2014 at 12:03PM

Rfc9vev7_normal
19
#18 - Milind Ganjoo / @MilindGanjoo

03/02/2014 at 04:06PM

Default_profile_3_normal
19
#19 - ZorgroZ / @ZorgroZ

04/12/2014 at 12:13PM

8ig-egq0_normal
19
#20 - John Braxler / @braxler

04/29/2014 at 05:44AM

Headshot_normal
19
#21 - BJ Terry / @ThatBJTerry

05/20/2014 at 11:13PM

Brent-avatar_normal
20
#22 - S. Brent Faulkner / @sbfaulkner

09/14/2012 at 08:54AM

4654945923_eb2c60ee5f_normal
21
#23 - Kerson Hsiao / @KersonHsiao

09/12/2012 at 12:33AM

Default_profile_2_normal
21
#24 - Tesnorth / @Tesnorth

09/12/2012 at 02:14AM

Screen_shot_2011-03-22_at_12.33.36_pm_normal
21
#25 - Joachim / @jodles89

09/12/2012 at 11:48AM

17440988752899470845_normal
21
#26 - cameron / @cameronaustgen

09/12/2012 at 06:12PM

Default_profile_1_normal
21
#27 - tmr / @tmr314

09/14/2012 at 11:28AM

Jlove201003sq_normal
21
#28 - Justin Love / @wondible

09/14/2012 at 08:02PM

Default_profile_2_normal
21
#29 - Mihai Mazilu / @mtmazilu

09/21/2012 at 07:41AM

97134d82ac7484be91965d2e36ec8b8e_normal
21
#30 - Federico Bond / @federicobond

09/22/2012 at 09:48PM

Fratze2_normal
21
#31 - Carsten Zimmermann / @carpgezwitscher

09/28/2012 at 05:19AM

Andreafrancia_normal
21
#32 - Andrea Francia / @andreafrancia

10/06/2012 at 05:39AM

Default_profile_3_normal
21
#33 - Édouard M'tou / @DouardM

10/08/2012 at 11:16AM

59a790b53a69a3f029cfcf5771c64b5f_normal
21
#34 - Tom Cammann / @tea_sea

10/09/2012 at 04:01PM

3ubh7kcfj18s5m9erc6p_normal
21
#35 - Marcin Sza / @coot_

10/14/2012 at 03:20AM

Default_profile_4_normal
21
#36 - Serge Pirotte / @SergePirotte

10/18/2012 at 11:20AM

Default_profile_1_normal
21
#37 - A / @a_akessler

11/02/2012 at 10:43AM

Default_profile_4_normal
21
#38 - Leo Bärring / @sevminjis

11/07/2012 at 06:47AM

Aim_ken_normal
21
#39 - Kenneth Waters / @gen_witt

11/13/2012 at 02:28PM

Brain_normal
21
#40 - Murali Suriar / @msuriar

11/17/2012 at 02:48AM

Profilepic_normal
21
#41 - Eric Andres / @eric_m_andres

12/05/2012 at 08:55AM

Default_profile_6_normal
21
#42 - Tom Sisk / @TomSisk

12/09/2012 at 10:36AM

08jqb4rz_normal
21
#43 - Yann Moisan / @YannMoisan

01/04/2013 at 02:59PM

Avatar_normal
21
#44 - Christopher Harrison / @Xophmeister

01/29/2013 at 03:26AM

Bunnies_normal
21
#45 - Trevor Powell / @DoomedBunnies

03/19/2013 at 07:32PM

C0b6948159226d38499a61ceedae5f05_normal
21
#46 - Joseph Reddington / @joereddington

09/19/2013 at 11:21AM

Default_profile_6_normal
21
#47 - brett / @brettyukich

09/22/2013 at 06:56AM

Droideye_normal
21
#48 - Joe T / @h2g2guy

10/31/2013 at 11:14PM

3df5ee82f60ff3c07d6beb61455758d2_normal
21
#49 - US Dollar Price / @USDollarPrice

11/05/2013 at 11:43PM

Default_profile_4_normal
21
#50 - Zach Kemp / @zvksf

12/23/2013 at 09:39PM

Default_profile_6_normal
21
#51 - Alessandro Lisander / @wuiimu

01/05/2014 at 05:02PM

Alex1_normal
21
#52 - Quota / @Quotad

02/19/2014 at 06:16AM

Netti_pihlajo1_lthumb_normal
21
#53 - Joonas Pihlajamaa / @jokkebk

02/23/2014 at 03:58AM

Elyquespioytxbjo3t62_normal
21
#54 - Thomas GUILLORY / @thomasguillory

03/11/2014 at 10:43AM

Me1_normal
21
#55 - Leeren / @Leeren

08/09/2014 at 07:23PM

Default_profile_0_normal
21
#56 - Michael Comerford / @MComerford1

09/26/2014 at 05:01AM

Default_profile_1_normal
22
#57 - Chris Brown / @engineercyb

09/12/2012 at 11:23AM

Meois_normal
22
#58 - Axl Waii / @axlwaii

09/28/2012 at 05:44AM

Default_profile_3_normal
22
#59 - RobertT / @techrt2050

08/06/2013 at 11:09PM

Pjkuhhig_normal
22
#60 - Rob Glew / @RealGlew

06/09/2014 at 06:53AM

40051_789281885907_29616532_44170636_2091417_n_normal
23
#61 - Conner McDaniel / @connermcd

09/12/2012 at 07:23AM

C5585164-e81e-4935-adca-ddbbda66877c_normal
23
#62 - Lance Levine / @LanceSMLevine

10/09/2012 at 10:24PM

Avatar-2_normal
23
#63 - Einar Lielmanis / @spicausis

11/07/2012 at 07:41AM

6c844nfj_normal
23
#64 - Oh fear / @ohfear_num

11/28/2012 at 09:38PM

Scan-080926-0017_normal
23
#65 - Jonathan Kim / @jonnykim

08/27/2013 at 11:40AM

Steveo_normal
23
#66 - isayoldchap / @isayoldchap

09/22/2013 at 07:49PM

Xarixqoi_normal
23
#67 - Pedro Franceschi / @pedroh96

10/05/2013 at 09:01AM

C05fc54f65eb6f568e1dfd5b90371058_normal
23
#68 - Kyle Travis / @kmakai

05/16/2014 at 10:52PM

D599d5b47b4a2b0db73f765021699812_normal
23
#69 - Justin Knag / @justinknag

08/29/2014 at 05:28PM

P1000007_normal
24
#70 - h_east (DDD ready) / @h_east

09/12/2012 at 12:17AM

Bc879469f279ee24b7fbdfad7c2216d9_normal
24
#71 - 無ん垢の叫び / @john_ababa

09/16/2012 at 03:41AM

Av_normal
24
#72 - Vasil Sakarov / @vsakarov

09/20/2012 at 06:45AM

Default_profile_0_normal
24
#73 - Damien Chilot / @duser_2

10/06/2012 at 01:28PM

Default_profile_2_normal
24
#74 - usrbin / @notusrbin

10/18/2012 at 06:01PM

Knittingstash_240dpi_72x72_normal
24
#75 - Underhill Labs / @underhilllabs

10/29/2012 at 08:02AM

.souriant_normal
24
#76 - G. Ahtune / @gahtune

11/04/2012 at 08:07AM

Default_profile_5_normal
24
#77 - Bunwut Tson / @NbTson

11/07/2012 at 05:22AM

9aaede1a87631c292fd5e27c5df320be_normal
24
#78 - n0nick / @n0nick

11/19/2012 at 06:08AM

Qcgcohpmeyx2aknfhm64_normal
24
#79 - José Mota / @josemotanet

11/25/2012 at 02:33PM

Myprofileimage_normal
24
#80 - Woojung Kim 김우중 / @_kimwz

07/15/2013 at 07:03PM

Arcadia_avatar_normal
24
#81 - James / @Dronak

09/16/2013 at 07:43PM

Swna2_normal
25
#82 - Rodolphe Belouin / @rbelouin

09/20/2012 at 07:31AM

84dd09d518ef0e57c0c5f9d14fdaa380_normal
25
#83 - Runar / @runarfu

01/11/2013 at 09:15AM

Q70fx93qo7ug6w43ikxn_normal
25
#84 - Bart of Denver / @bartofdenver

08/12/2013 at 08:58PM

Default_profile_5_normal
25
#85 - cj / @cj01101

08/20/2013 at 10:38AM

935b1709fad3096671774ceae74d2ee8_normal
25
#86 - Dave Aitken / @actionshrimp

08/27/2013 at 12:30PM

0efce70dfb1eef981211c87ec2fcde93_normal
25
#87 - Sam Burk / @smwbk

12/21/2013 at 03:12PM

Default_profile_2_normal
26
#88 - Piotr Śniegowski / @PiotrSniegowski

06/06/2013 at 05:53AM

Img_8822f_normal
27
#89 - Felipe Jaramillo F / @mrfelipe

05/05/2014 at 09:12PM

Wefusstf_normal
27
#90 - Alishah Chator / @alicharizard

06/09/2014 at 07:31AM

Default_profile_3_normal
28
#91 - Krzysiek / @krzlew

09/16/2012 at 12:52AM

60849d00fcf8b4caed339427340f879a_normal
28
#92 - Nicolas Friedli / @NicolasFriedli

10/29/2012 at 09:40AM

H0dt83ovy5hejzqrwue6_normal
28
#93 - Joshua Travis / @jktravis

11/06/2012 at 05:40PM

9omtxh9w57r2x5pgkmvx_normal
28
#94 - Michael / @patheticpat

12/17/2012 at 05:47AM

D4515f167905779885d7de8897002f66_normal
28
#95 - Claudio Ortolina / @cloud8421

08/27/2013 at 11:45AM

Default_profile_2_normal
28
#96 - Oliver Christ / @0liverChrist

10/04/2013 at 03:24PM

Default_profile_6_normal
29
#97 - Ian Pudney / @IanPudney

06/09/2014 at 07:19AM

985f1d18769b7d5de8227d503c84eb24_normal
30
#98 - Miguel Sánchez / @miguelsr1987

10/03/2012 at 11:55AM

Makala_normal
30
#99 - makala noble / @mnoble01

11/13/2012 at 03:15AM

Image_normal
32
#100 - Kerry Burke / @kurver

09/14/2012 at 02:42PM

Profile_image_1261764492992_normal
32
#101 - Brandon Frazier / @uhok

09/28/2012 at 08:45PM

Me_normal
32
#102 - Kohei Yamamoto / @k_ymmt

06/22/2013 at 07:52AM

4_normal
32
#103 - Connie Qi / @connieqi

06/09/2014 at 07:36AM

Default_profile_6_normal
33
#104 - Kamil Krzyżanowski / @kamnxt

03/14/2014 at 10:42AM

585f7ec03d6b11e19896123138142014_7_normal
34
#105 - Jordan Eldredge / @captbaritone

09/13/2012 at 02:52AM

D32e1edfc5004c3b4bcbd009cb2cbdc6_normal
34
#106 - Pradeep Kumar / @pradeep6kumar

12/11/2012 at 04:23AM

Default_profile_2_normal
34
#107 - Hyper Bovine / @hyperbovine

01/28/2014 at 09:24PM

Ba1070d8841ff40257904144ae3db536_normal
41
#108 - Ravi S Sinha / @ambidextrousTx

09/12/2012 at 03:52PM