Posted on
By default vim opens .ss files with some other file format syntax highlighting.
To enable HTML (actually XHTML) syntax highlighting on your .SS Silverstripe template files, create (or edit) your ~/.vim/filetype.vim file. Then enter this:
au BufNewFile,BufRead *.ss setf xhtml
Then open a .ss file and it’ll give you nice HTML syntax highlighting. And because it’s in your home directory, it’ll keep working even after you upgrade vim.
Posted on
If there are ^M at the end of every line when you view them in vim, you can do this:
:%s/^M//g
To get the “^M” bit, hit ctrl-v and then ctrl-m.
Posted on
To reverse the order of lines, eg 1-5
: 1,5 g/^/m0
For example,
one
two
three
four
five
becomes
five
four
three
two
one
To remove blank lines
: %g/^$/d
Delete all lines that don’t contain “string”
: %v/string/d
Posted on
You’ve got a web form with lots of fields, and you want to POST them to a PHP script. Open vim, and list the INPUT tag’s NAME attributes, one per line.
<?php
firstname
lastname
address1
address2
state
postcode
?>
Now with some search-and-replace magic we can save ourself a lot of boring typing. Hit ‘escape’ to get out of insert mode, type a colon (“:”) and copy-paste this:
%s/^\(\S\+\)/\$\1 = \$_POST\[\'\1\'\];
I won’t bother explaining it unless someone asks. But what you should end up with is this:
<?php
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$address1 = $_POST['address1'];
$address2 = $_POST['address2'];
$state = $_POST['state'];
$postcode = $_POST['postcode'];
?>
Perhaps not worth it when you have 6 variables like this example; but quite handy when you have 60 variables!