X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/7fbbcc1615510b622e2d2947e07d9acbb56fbb1c..3d6bc6e1b7145d85cd9495fd0a0d0a6823869368:/IkiWiki/Plugin/txt.pm?ds=sidebyside diff --git a/IkiWiki/Plugin/txt.pm b/IkiWiki/Plugin/txt.pm index 22c9ac903..8599bdc8e 100644 --- a/IkiWiki/Plugin/txt.pm +++ b/IkiWiki/Plugin/txt.pm @@ -8,13 +8,14 @@ package IkiWiki::Plugin::txt; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use HTML::Entities; my $findurl=0; sub import { - hook(type => "filter", id => "txt", call => \&filter); + hook(type => "getsetup", id => "txt", call => \&getsetup); + hook(type => "filter", id => "txt", call => \&filter); hook(type => "htmlize", id => "txt", call => \&htmlize); eval q{use URI::Find}; @@ -23,14 +24,22 @@ sub import { } } +sub getsetup () { + return + plugin => { + safe => 1, + rebuild => 1, # format plugin + }, +} + # We use filter to convert raw text to HTML # (htmlize is called after other plugins insert HTML) sub filter (@) { my %params = @_; my $content = $params{content}; - if ($pagesources{$params{page}} =~ /\.txt$/) { - encode_entities($content); + if (defined $pagesources{$params{page}} && $pagesources{$params{page}} =~ /\.txt$/) { + encode_entities($content, "<>&"); if ($findurl) { my $finder = URI::Find->new(sub { my ($uri, $orig_uri) = @_;