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 9v00674f1bfb00000000063d

YAML to dotenv

Convert this YAML config file to a .env file.

Start file
vimgolf:
  logging
:
    level
: INFO
app
:
  postgres
:
    host
: !ENV {POSTGRES_HOST}
    port
: !ENV {POSTGRES_PORT}
  pulsar
:
    host
: !ENV ${PULSAR_HOST}
    port
: !ENV ${PULSAR_PORT}
   
namespace: vimgolf
    topic
: !ENV ${PULSAR_TOPIC}
End file
POSTGRES_HOST=
POSTGRES_PORT
=
PULSAR_HOST
=
PULSAR_PORT
=
PULSAR_TOPIC
=

View Diff

1,12c1,5
< vimgolf:
<   logging:
<     level: INFO
< app:
<   postgres:
<     host: !ENV {POSTGRES_HOST}
<     port: !ENV {POSTGRES_PORT}
<   pulsar:
<     host: !ENV ${PULSAR_HOST}
<     port: !ENV ${PULSAR_PORT}
<     namespace: vimgolf
<     topic: !ENV ${PULSAR_TOPIC}
---
> POSTGRES_HOST=
> POSTGRES_PORT=
> PULSAR_HOST=
> PULSAR_PORT=
> PULSAR_TOPIC=

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 140 remaining solutions by signing in and submitting your own entry
#141 Sergey Valiev / @Valiev - Score: 124 - 02/19/25 @ 12:29
/{.\+}<CR>wdwGpuPuo<Esc>pO<Esc>ou<Esc>uu<C-O><C-O>nwdwuNNNNwdwGpuP<Esc>uo<Esc>pkkkkwkwdwGpuo<Esc>pNNwdwGo<Esc>pnwdwGpuO<Esc>dd<Esc>op<Esc>uuuudwGo<Esc>pkkkkA=<Esc>j.j.j.j.kkkkkdgg:wq<CR>

0 comments


Created by: @iantalks

141 active golfers, 583 entries

Leaderboard (lowest score wins):
17
#31 - Matt / @mcr05

02/26/2025 at 10:08PM

17
#32 - Michael Cuffaro / @maiku1008

03/02/2025 at 06:49PM

17
#33 - Sebastian Caicedo / @jsebdev

04/18/2025 at 04:44AM

17
#34 - Henry Crans / @hcrans

04/24/2025 at 01:31AM

17
#35 - daviddcox / @daviddcox

04/26/2025 at 05:41AM

18
#36 - MAIIIII / @TakunMaii

12/17/2024 at 05:45AM

19
#37 - Frédéric Heulin / @talineo

12/28/2024 at 07:53PM

19
#38 - iBrahizy / @iBrahizy

01/02/2025 at 06:42AM

19
#39 - Bas van den Wollenberg / @brw

01/10/2025 at 09:01PM

19
#40 - Meya / @meya-zhao

01/28/2025 at 07:17AM

19
#41 - cancer / @cancer87181

03/03/2025 at 05:32PM

20
#42 - Anton Savelyev / @PoiXP

01/01/2025 at 04:29PM

20
#43 - someone / @IKvacenok

01/27/2025 at 05:32PM

20
#44 - Nibodhika / @Nibodhika

04/24/2025 at 10:15AM

21
#45 - abgalphbetz / @abgalphabetz

12/04/2024 at 02:09PM

21
#46 - Magnus Wahlstrand / @magnuswahlstrand

01/03/2025 at 06:05PM

21
#47 - Brando / @brandonce

01/18/2025 at 07:46AM

21
#48 - Ben Weedon / @binyomen

02/08/2025 at 03:29AM

21
#49 - ymte / @ymte

03/23/2025 at 02:29PM

21
#50 - Maxime Delhaye / @friphazeph

03/26/2025 at 05:28PM

22
#51 - Aliaksandr / @Admiralissimus

12/13/2024 at 09:05PM

22
#52 - myu-innocence / @myu-innocence

12/19/2024 at 03:09PM

22
#53 - SD / @SD24757629

12/25/2024 at 03:53PM

22
#54 - Guilherme / @gsionek

01/02/2025 at 05:55PM

22
#55 - ashfinal / @ashfinal

01/16/2025 at 05:33AM

22
#56 - Daisuke Shimada / @cimadai

02/19/2025 at 11:40PM

22
#57 - SpiridonDumitru / @SpiridonDumitru

03/14/2025 at 12:50PM

23
#58 - k1mosabe / @k1mosabe

12/08/2024 at 03:16AM

23
#59 - MartnRamtin / @MartnRamtin

12/11/2024 at 10:47PM

23
#60 - Karim / @KarimIbrahim

01/26/2025 at 08:12PM