Snippets syntax
The snippets are stored in ~/.bluefish/snippets. It is an XML file, like import and export snippets files.
Bluefish has an excellent editor snippets. So it is useless to read this page unless you intend to create a large number of snippets from some documentation, eg: SVG, DOM, etc.
- The import file must have a valid XML syntax.
- The document must include the header: <?xml version="1.0"?>.
- The document must be included in the container: <snippets> <snippets>
- Any snippet must be contained in a branch: <branch title="example"> </branch>
- The branches may contain other branches.
- Each snippet is described in a container: <leaf> </leaf>
Syntax examples
There are two types of snippets: insert and snr, aka Search N Replace.
Insert snippets
- <?xml version="1.0"?>
- <snippets>
- <branch title="Facebook">
- <leaf type="insert" title="bold"><before><b></before><after></b></after></leaf>
- <leaf type="insert" title="italic" tooltip="insert an italic tag"><before><i></before><after></i></after></leaf>
- <leaf type="insert" title="Hyperlink"><before><a href="%0"></before><after></a></after><param name="url"/></leaf>
- <leaf type="insert" title="em-dash"><before>&mdash;</before><after></after></leaf>
- </branch>
- </snippets>
- First and important,
- if you want to insert any XML reserved characters ie: < > & you have to escape them (red highlighted in example).
- A leaf tag must have type and title attributes,
- it also may have a tooltip attribute (line 5 of example).
- Before tag is used for text to insert before, and after tag for text inserted after.
- You have to add one or more param tags (with name attibute) if you want tu use parameters (line 6 of example).
- Todo,
- <param num="1" name="image"/>
- Is file path
Search and replace snippets
SnR snippets are a little more complex:
<leaf type="snr" title="replace 1" tooltip="introduce events" region="b" matchtype="normal" casesens="0" escapechars="0">
<searchpat>jpg</searchpat>
<replacepat>jpg" alt="" onmouseout="out(this);" onmouseover="popup(this,'th/</replacepat>
</leaf>
- searchpat and replacepat tags,
- are replacing before and after tags.
- leaf tag have new attibutes,
-
- region
- values: b (Entire document), c (forword from cursor position), s (Selection), or a (All open files).
- matchtype
- values: normal, word, posix or perl.
- casesens
- values: 1 (set) or 0 (unset).
- escapechars
- values: 1 (set) or 0 (unset).