A small set of tools working on plain-text meant to be used with vim as formatting filters.
All the tools read on STDIN
and emit the mended text on STDOUT
.
In general, you would use them in vim by highlighting some text in visual mode and then piping the marked text through theses tools by typing :
(which yields the prompt :'<'>
) followed by !<toolname>
.
Enables you to align on a delimiting character. Suppose you have code riddled with assignments:
my $payload = "Hallo Welt!";
my $encryptor = Uki::Common::Encryptor->new( publicKeyFile => "pub.key");
my $indecipherableText = $encryptor->encrypt( $payload );
my $decryptor = Uki::Common::Decryptor->new( privateKey => "priv.key" );
It might help to improve clarity by aligning all theses assignments on the rightmost =
character:
my $payload = "Hallo Welt!";
my $encryptor = Uki::Common::Encryptor->new( publicKeyFile => "pub.key");
my $indecipherableText = $encryptor->encrypt( $payload );
my $decryptor = Uki::Common::Decryptor->new( privateKey => "priv.key" );
align-on
takes the paramater -d '<delimiter string>'
, which enables you to change the delimiting string. It defaults to =
.
Enables you to create columnized comments. Assuming you have the following code and commentary:
string rtrim( string str ){ // Wir initialisieren eine Laufvariable mit dem Ende des Strings und zählen bis zum ersten Nichtleerzeichen zurück. Dann löschen wir alles ab diesem Index.
size_t i = str.size();
while( i > 0 && isspace(str[i-1])) { --i; }
return str.erase(i,string::npos);
}
wrap-comment
's effect would be like the following:
string rtrim( string str ){ // Wir initialisieren eine Laufvariable
size_t i = str.size(); // mit dem Ende des Strings und
while( i > 0 && isspace(str[i-1])) { --i; } // zählen bis zum ersten Nichtleerzeichen
return str.erase(i,string::npos); // zurück. Dann löschen wir alles
} // ab diesem Index.
The longest line of source code determines the padding applied to the commentaries.
The -d
option takes a comment delimiter string, which defaults to #
. In the example -d '//'
was used.
The -w
option can be used to set the wrap column (defaults to 80).
make
Adapt the path in the Makefile to your needs and call
make install
Sven Schober sven.schober@uni-ulm.de