Skip to content
A simple alignment operator for Vim text editor
Branch: master
Clone or download
Pull request Compare This branch is 11 commits behind tommcdo:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Lion.vim is a tool for aligning text by some character. It defines some Vim operators that can be used with motion commands to align a targetted block of text.

The two operators are gl and gL. gl will add spaces to the left of the alignment character, and gL will add spaces to the right. Both operators accept a count, a motion, and a single character.

For example, glip= will turn

$i = 5;
$username = 'tommcdo';
$stuff = array(1, 2, 3);


$i        = 5;
$username = 'tommcdo';
$stuff    = array(1, 2, 3);

Typing 3gLi(, with the cursor somewhere inside ( and ) will turn

$names = array(
    'bill', 'samantha', 'ray', 'ronald',
    'mo', 'harry', 'susan', 'ted',
    'timothy', 'bob', 'wolverine', 'cat',
    'lion', 'alfred', 'batman', 'linus',


$names = array(
    'bill',    'samantha', 'ray',       'ronald',
    'mo',      'harry',    'susan',     'ted',
    'timothy', 'bob',      'wolverine', 'cat',
    'lion',    'alfred',   'batman',    'linus',

It is also possible to align text by a pattern. To enter a pattern, use / as the alignment character (e.g. glip/) and then you will be prompted to input the pattern. To align by /, simply leave the pattern empty (by pressing Enter).


If you don't have a preferred installation method, I recommend installing pathogen.vim, and then simply copy and paste:

cd ~/.vim/bundle
git clone git://

Once help tags have been generated, you can view the manual with :help lion.

You can’t perform that action at this time.