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 5192f96ad8df110002000002

Words in parens

We should all ace this, right?

Start file
one two
three
End file
(one) (two)
(three)

View Diff

1,2c1,2
< one two
< three
---
> (one) (two)
> (three)

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 3969 remaining solutions by signing in and submitting your own entry
#3970 velina v veleva / @vveleva - Score: 155 - 04/23/15 @ 16:55
::%s/\(\a*\)/(&)/g<CR>ZZ<C-A><BS><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Left><Right><BS><CR><CR>%s/\(\w*\)/(\1)/g<CR>ZZ/<Esc><Esc>u<Esc>/<BS>:%s/\(\w*\)/(\1)/g<CR>ZZ<CR>:%s/\(\w*\)/(\1)/g<CR>ZZ<Left><Left><Right><Right><Right><BS><BS><BS><BS><BS><BS><CR><Esc>:w<CR><Esc>:wq<CR>

0 comments


Created by: @udioica

3970 active golfers, 12969 entries

Leaderboard (lowest score wins):
15
#1831 - Mitchell Horning / @HorningMitchell

07/04/2020 at 05:13PM

15
#1832 - Alexandre MERLIN / @AlxMerlin

07/05/2020 at 09:39AM

15
#1833 - Adrián Delgado / @Caritativito

07/12/2020 at 02:23AM

15
#1834 - GenericHardwareGamer / @GnrikHrdwrGamer

08/06/2020 at 10:07PM

15
#1835 - Vinay Sharma / @VinaySh63956554

08/09/2020 at 12:40PM

15
#1836 - Martin Bielik / @mabielik

08/09/2020 at 08:19PM

15
#1837 - Put me on your list tyrants / @electronjunkie

08/11/2020 at 04:38PM

15
#1838 - Martin Kauppinen / @MartinKauppinen

08/15/2020 at 05:05PM

15
#1839 - Tanzeel Kazi / @tanzeelkazi

08/21/2020 at 06:00AM

15
#1840 - fenn.stefan@gmail.com / @FennStefan

08/25/2020 at 03:01PM

15
#1841 - denzinger / @HJDDenzinger

09/09/2020 at 09:00PM

15
#1842 - Yannick / @Yannick88147038

09/12/2020 at 04:49PM

15
#1843 - Just Alerik / @Just_Alerik

09/18/2020 at 04:09AM

15
#1844 - Sergey Yakovlev / @selfuryon

09/25/2020 at 10:30PM

15
#1845 - Brendan Schaenzer / @bschaenzer

09/29/2020 at 09:06PM

15
#1846 - mevmev / @mevmev8

10/05/2020 at 06:09PM

15
#1847 - lamtt77 / @lamtt77

10/08/2020 at 07:16AM

15
#1848 - Michael Bui / @Miik4chu

10/12/2020 at 02:37PM

15
#1849 - AAbraxas / @AAbraxas1

10/17/2020 at 07:14PM

15
#1850 - wilsonept / @wilsonept1

10/24/2020 at 01:57PM

15
#1851 - Zack Freedman / @freedman_zack

11/07/2020 at 04:49AM

15
#1852 - vimspam / @vimspam

11/09/2020 at 05:04AM

15
#1853 - 영훈 / @odjfnrtm

11/10/2020 at 04:58AM

15
#1854 - Ansel Bobrow / @garlicWharfRat

11/12/2020 at 03:48PM

15
#1855 - Serhiy Prikhodko / @mastersnetru

11/18/2020 at 09:48AM

15
#1856 - Arne Winter / @ArneWinter5

11/19/2020 at 01:45PM

15
#1857 - roudens / @roudens2

12/04/2020 at 06:37AM

15
#1858 - Fabrizio Perria / @FPerria

12/22/2020 at 02:37PM

15
#1859 - Brian :| / @Seeemplicity

12/25/2020 at 05:36AM

15
#1860 - Jon Powers / @JonKPowers

12/27/2020 at 12:40PM