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 559c30948ef59c0eb7000002

Collect List

Convert to comma separated list.

Start file
* item1
* item2
* item3
* item4
* item5
End file
item1,item2,item3,item4,item5

View Diff

1,5c1
< * item1
< * item2
< * item3
< * item4
< * item5
---
> item1,item2,item3,item4,item5

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 1031 remaining solutions by signing in and submitting your own entry
#1032 Radoslav Ivanov / @rivanov1 - Score: 89 - 09/15/15 @ 18:30
<C-V>ljjjjdqa$i,<BS><Esc><Esc><Esc>hhhhh$a,jj<BS><BS><Esc>dl<Esc><Esc>i<Esc><Esc>lla,jj<BS><BS><Esc><Esc>lj^i<BS>jj<BS><BS><Esc><Esc>qjh^i<BS>,jj<BS><BS><Esc><Esc>$j^i<BS>,<Esc><Esc>j^i<BS>,<Esc><Esc>:wq<CR>

0 comments


Created by: @compilejason

1032 active golfers, 3603 entries

Leaderboard (lowest score wins):
12
#391 - Nir Givon / @nir_givon

11/07/2018 at 07:38PM

12
#392 - name / @name65894813

11/15/2018 at 03:04PM

12
#393 - Wouter Horlings / @Achilleshiel

11/16/2018 at 11:45AM

12
#394 - Levi Self / @LeviRSelf

11/18/2018 at 10:22PM

12
#395 - Sören Schellhoff / @Jackokomm

11/21/2018 at 03:09PM

12
#396 - faisal / @faisalhackshah

11/26/2018 at 05:11AM

12
#397 - Jonathan Cabezas / @John_Harkan

11/27/2018 at 12:03PM

12
#398 - Mihai / @mihaicristiant

11/30/2018 at 01:24PM

12
#399 - Performa / @performa6400

12/02/2018 at 09:31AM

12
#400 - guxbug / @guxbug1

12/20/2018 at 02:03AM

12
#401 - Ackman Syntax Error / @AckmanSux

12/24/2018 at 11:29AM

12
#402 - Artur Mróz / @MrozArtur

12/29/2018 at 08:59PM

12
#403 - abgalphabet / @abgalphabet

01/14/2019 at 04:03PM

12
#404 - Adrien Plaçais / @AdrienPlcs

01/30/2019 at 05:13PM

12
#405 - Sebastien Nicoud / @sebnukem

02/06/2019 at 02:00AM

12
#406 - noisevoid / @noisevoid

02/26/2019 at 09:24PM

12
#407 - əidolon / @eid_lon

02/28/2019 at 04:08PM

12
#408 - Groovy / @groovy9

03/07/2019 at 10:27PM

12
#409 - Titouan Teyssier / @TitouanT_

03/08/2019 at 11:43PM

12
#410 - Anthony Catterwell / @ACatterwell

03/09/2019 at 03:02AM

12
#411 - Amado Antonini / @AmadoAntonini

03/17/2019 at 11:58AM

12
#412 - Parsa Amini / @ParsaAmini

03/20/2019 at 05:46PM

12
#413 - k24w24 / @k24w24

03/29/2019 at 07:17AM

12
#414 - David A. Lyon / @dauglyon

04/05/2019 at 04:13AM

12
#415 - wanghbxxxx / @wanghbxxxx

04/06/2019 at 03:27AM

12
#416 - Joel Eriksson / @OwariDa

04/09/2019 at 12:51PM

12
#417 - james_bunch / @james_bunch

04/14/2019 at 08:18PM

12
#418 - alekfed / @alek_fed

04/14/2019 at 09:41PM

12
#419 - Gitsnik / @dracyrys

04/22/2019 at 11:20AM

12
#420 - Grant / @grant_7788

04/28/2019 at 02:26AM