Vim Snippet SupportΒΆ

This page describes using vim with snipMate and a set of snippets that allow quick composition of bundles and base files.

  1. Download snipMate from http://www.vim.org/scripts/script.php?script_id=2540

  2. Install it using the install instructions (unzip snipMate.zip -d ~/.vim or equivalent, e.g. $HOMEvimfiles on Windows)

  3. Add the following to ~/.vim/snippets/xml.snippets

    # Bundle
    snippet <Bundle
            <Bundle name='${1:bundlename}'>
                    ${2}
            </Bundle>
    # Base
    snippet <Base
            <Base>
                    ${1}
            </Base>
    # Group
    snippet <Group
            <Group name='${1:groupname}'>
                    ${2}
            </Group>
    # Path
    snippet <Path
            <Path name='${1:filename}'/>
    # Service
    snippet <Service
            <Service name='${1:svcname}'/>
    # Package
    snippet <Package
            <Package name='${1:packagename}'/>
    # Action
    snippet <Action
            <Action name='${1:name}'/>
    # Directory
    snippet <Directory
            <Directory name='${1:name}'/>
    # SymLink
    snippet <SymLink
            <SymLink name='${1:name}'/>
    # Permissions
    snippet <Permissions
            <Permissions name='${1:name}'/>
    
  4. Save and start editing away!

Each of these snippets activates on the opening element, ie <Bundle>. After this string is entered, but before entering a space, press <TAB>, and the snippet will be expanded. The template will be inserted into the text with a set of input prompts, which default to overwrite mode and can be tabbed through.

The code above only works for bundles and base, but will be expanded to support other xml files as well.