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 59713ae5bb056f16b6000002

Hello ${world}

Migrate a JavaScript String from concatenation to ES6 interpolation.

Start file
let world = 'world';
console.log('hello ' + world);
console.log('bye ' + world + '!');
End file
let world = 'world';
console.log(`hello ${world}`);
console.log(`bye ${world}!`);

View Diff

2,3c2,3
< console.log('hello ' + world);
< console.log('bye ' + world + '!');
---
> console.log(`hello ${world}`);
> console.log(`bye ${world}!`);

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 89 remaining solutions by signing in and submitting your own entry
#90 Robbin Schepers / @Roboroads - Score: 137 - 07/21/17 @ 11:51
kjf+_f+a<BS><BS><BS>${<Del><Esc>LJkA<Esc>jkjkhi}'<BS>`<Esc>hhjkhhhhhhhhhhhh<BS>li<BS>`<Esc>kjjli<BS>`<Esc>llllllllllllllllllvF'nhhhhhhhhhhhh$hhhhhhhhhhhhhhhhhc${world{<BS>}<Del>`<BS>!`<Esc>:w<CR>:wq<CR>

0 comments


Created by: @juancolacelli

90 active golfers, 291 entries

Leaderboard (lowest score wins):
31
#61 - Ron Alexssen / @Ralexhere

10/30/2017 at 07:04AM

32
#62 - Ricardo M. Vilchis / @ajkaanbal

07/21/2017 at 10:31PM

32
#63 - Михаил Доронин / @Boris_B_London

07/23/2017 at 10:45AM

32
#64 - James / @Dronak

08/28/2017 at 01:40AM

32
#65 - Vimfiz / @vimfiz

06/07/2019 at 05:22PM

32
#66 - roudens / @roudens2

05/16/2021 at 04:23AM

33
#67 - Eric Potter / @pottereric

07/22/2017 at 07:15PM

33
#68 - Edan Sneh / @edan_sneh

07/23/2017 at 09:33PM

33
#69 - Solomon / @Trugbildjaeger

08/25/2017 at 10:43AM

33
#70 - RockerZZY / @rocker_zzy

06/22/2020 at 11:38PM

35
#71 - Adam Kożuch / @adamkozuch

08/16/2017 at 07:13AM

37
#72 - Rahul Gupta 🎹 / @pezcoder

07/26/2017 at 09:16PM

39
#73 - 黒澤亮二 / @rjkuro

07/21/2017 at 02:49PM

45
#74 - Charlie OConor / @charlieoconor

09/29/2017 at 02:52PM

45
#75 - Ron Holt / @ron_holt

08/15/2019 at 03:51PM

45
#76 - The Valencian Dev / @thevalenciandev

10/15/2020 at 07:25PM

46
#77 - Clay Thomas / @CHThomas95

07/21/2017 at 10:06PM

46
#78 - Juan Colacelli / @juancolacelli

07/23/2017 at 11:44AM

52
#79 - Alex Gunning / @XelaGninnug

09/08/2017 at 03:21PM

56
#80 - Muhsin AbdulMohammed / @muhsin____

08/16/2020 at 11:43AM

61
#81 - Paul Inc / @hiniol1982

08/01/2017 at 08:31PM

62
#82 - Borna Sadeghi / @borna_sadeghi

03/01/2021 at 09:15PM

64
#83 - Peter / @PeterHartshorn

03/28/2018 at 12:42PM

66
#84 - 杨洋 / @176795444

08/13/2017 at 08:40AM

70
#85 - Vasily Novikov / @helensw06796314

08/07/2017 at 05:20PM

77
#86 - Joe Previte 🦀 / @jsjoeio

09/05/2019 at 03:45PM

87
#87 - Jurica / @Jurica34581259

11/16/2018 at 05:44PM

101
#88 - Mick Soda / @MidgarMassacre

09/29/2017 at 06:00AM

110
#89 - Kitsan / @Strustle

11/26/2020 at 04:07PM

137
#90 - Robbin Schepers / @Roboroads

07/21/2017 at 11:51AM