2008-07-21 13:31:57 +02:00
[[!template id=plugin name=syntax author="[[VictorMoral]]"]]
[[!tag type/chrome type/slow]]
2006-10-24 15:20:32 +02:00
2008-07-21 13:31:57 +02:00
The `syntax` plugin adds support to ikiwiki for syntax highlighting through the *vim* editor and its perl interface [[!cpan Text::VimColor]]. It depends on a functional vim installation.
2006-10-19 12:23:58 +02:00
The plugin inserts a fragment of HTML with special marks from a file or a string text. It accepts the following parameters:
* **type** (optional): this is the file type for vim syntax highlighthing. It can be omitted if the param *file* exists.
* **file**: Path to the source file. It must exist on every rebuild of the wiki.
* **text**: Text string with the source.
* **description** (optional): little description about the content.
2006-10-24 15:20:32 +02:00
* **linenumbers** (optional): enable the line numering of the source page. A value greater than zero is the first line number.
2006-10-19 12:23:58 +02:00
The params *file* and *text* are mutually exclusive.
2006-11-14 12:19:42 +01:00
In the case of file parameter, `syntax` will build a html link for direct download.
2006-10-19 12:23:58 +02:00
Example:
2008-07-21 13:46:35 +02:00
\[[!syntax type="perl" text="""
2006-10-19 12:27:59 +02:00
#!/usr/bin/perl
2006-10-19 12:23:58 +02:00
2006-10-19 12:27:59 +02:00
my $a = "World";
print "Hello, ${a}\n";
"""]]
2006-10-19 12:23:58 +02:00
or
2008-07-21 13:46:35 +02:00
\[[!syntax file="/examples/hello.pl" description="My first perl program"]]
2006-10-19 12:23:58 +02:00
2006-10-19 15:39:00 +02:00
This plugin create the following CSS styles:
* syntax
* synComment
* synConstant
* syncIdentifier
* synPreProc
* synType
* synSpecial
* synUnderlined
* synError
* synTodo
* synTitle
2006-11-14 12:19:42 +01:00
It can be downloaded from [here](http://taquiones.net/files/misc/) or through my personal debian repository at <http://taquiones.net/files/debian/>. There is a page with examples: <http://taquiones.net/software/syntax-examples.html>
2006-10-19 12:23:58 +02:00
Any help, comments or critics are welcome at <victor@taquiones.net>.
2006-11-14 12:19:42 +01:00
## version 0.9
- Add a force_subpage parameter for link build
- Fix a bug in syntax page link
- Documented a bug with markdown indented text
- Documented the syntax directive
2006-10-24 15:20:32 +02:00
## version 0.7
- Version change to GPL
- Add *linenumbers* parameter
- The *file* parameter should be point to a ikiwiki source page.
- The *description* parameter will be converted on a URL if the *file* parameter exist.
I need help for debugging this module. Thanks in advance.