po(mybestlink): fixed when fed with path beginning with /
[ikiwiki] / IkiWiki / Plugin / textile.pm
1 #!/usr/bin/perl
2 # By mazirian; GPL license
3 # Textile markup
4
5 package IkiWiki::Plugin::textile;
6
7 use warnings;
8 use strict;
9 use IkiWiki 2.00;
10 use Encode;
11
12 sub import { #{{{
13         hook(type => "getsetup", id => "textile", call => \&getsetup);
14         hook(type => "htmlize", id => "txtl", call => \&htmlize);
15 } # }}}
16
17 sub getsetup () { #{{{
18         return
19                 plugin => {
20                         safe => 1,
21                         rebuild => 1, # format plugin
22                 },
23 } #}}}
24
25 sub htmlize (@) { #{{{
26         my %params=@_;
27         my $content = decode_utf8(encode_utf8($params{content}));
28
29         eval q{use Text::Textile};
30         return $content if $@;
31         return Text::Textile::textile($content);
32 } # }}}
33
34 1