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 5e9c7dbf3ed8dd00067708e3

Right Align Part of the line

The challenge is to right align a part of the line - this is useful in some SQL queries where it's more clear which are the fields displayed

Start file
SELECT 
col1 AS column1,
cast(column2 AS varchar(255)) AS column2,
cast(evenlongercolumn3 AS varchar(255)) AS column3,
cast(yetevenlongercolumn4 AS varchar(255)) AS column4,
cast(thelongestcolumnyouhaveeverseen9 AS varchar(255)) AS column5,
col1 AS column6,
cast(column7 AS varchar(255)) AS column7,
cast(evenlongercolumn8 AS varchar(255)) AS column8,
cast(yetevenlongercolumn9 AS varchar(255)) AS column9,
cast(thelongestcolumnyouhaveeverseen10 AS varchar(255)) AS column10
FROM table;
End file
SELECT 
col1                                                    AS column1,
cast(column2 AS varchar(255))                           AS column2,
cast(evenlongercolumn3 AS varchar(255))                 AS column3,
cast(yetevenlongercolumn4 AS varchar(255))              AS column4,
cast(thelongestcolumnyouhaveeverseen9 AS varchar(255))  AS column5,
col1                                                    AS column6,
cast(column7 AS varchar(255))                           AS column7,
cast(evenlongercolumn8 AS varchar(255))                 AS column8,
cast(yetevenlongercolumn9 AS varchar(255))              AS column9,
cast(thelongestcolumnyouhaveeverseen10 AS varchar(255)) AS column10
FROM table;

View Diff

2,10c2,10
< col1 AS column1,
< cast(column2 AS varchar(255)) AS column2,
< cast(evenlongercolumn3 AS varchar(255)) AS column3,
< cast(yetevenlongercolumn4 AS varchar(255)) AS column4,
< cast(thelongestcolumnyouhaveeverseen9 AS varchar(255)) AS column5,
< col1 AS column6,
< cast(column7 AS varchar(255)) AS column7,
< cast(evenlongercolumn8 AS varchar(255)) AS column8,
< cast(yetevenlongercolumn9 AS varchar(255)) AS column9,
---
> col1                                                    AS column1,
> cast(column2 AS varchar(255))                           AS column2,
> cast(evenlongercolumn3 AS varchar(255))                 AS column3,
> cast(yetevenlongercolumn4 AS varchar(255))              AS column4,
> cast(thelongestcolumnyouhaveeverseen9 AS varchar(255))  AS column5,
> col1                                                    AS column6,
> cast(column7 AS varchar(255))                           AS column7,
> cast(evenlongercolumn8 AS varchar(255))                 AS column8,
> cast(yetevenlongercolumn9 AS varchar(255))              AS column9,

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 41 remaining solutions by signing in and submitting your own entry
#42 smiech / @smiech - Score: 64 - 05/20/24 @ 21:31
:%s/\v(.*)(AS .*)/\=printf('%-56s',suba<BS>match(1)).submatch(2)<CR>ZZ

0 comments


Created by: @tefetic

42 active golfers, 133 entries

Leaderboard (lowest score wins):
22
#31 - naka / @nak38223985244

12/07/2023 at 12:06PM

22
#32 - MonkieeBoi / @MonkieeBoi

02/03/2024 at 11:14AM

23
#33 - Norbert / @mullno

04/19/2020 at 05:21PM

23
#34 - Moatvald / @moatvald

04/20/2020 at 10:20AM

23
#35 - temp / @temp16343368

04/20/2020 at 02:28PM

23
#36 - Aioriya / @AioriyaDonk

05/08/2020 at 10:49PM

23
#37 - Quentin Leroy / @qnleroy

05/15/2020 at 05:14AM

23
#38 - Olivier Bégassat / @zk_evm

06/11/2023 at 10:27PM

33
#39 - luke37842 / @luke37842

05/17/2024 at 04:18PM

34
#40 - grsh / @girish_i_am

05/28/2021 at 03:10PM

37
#41 - RockerZZY / @rocker_zzy

06/08/2020 at 01:20PM

64
#42 - smiech / @smiech

05/20/2024 at 09:31PM