X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/9dc9c113cc1b345bb9631f92803b4d0b9426f8e4..fe001bd7bf8d16ae998aa66513e3d2276ab9749b:/IkiWiki/Plugin/typography.pm diff --git a/IkiWiki/Plugin/typography.pm b/IkiWiki/Plugin/typography.pm index fe6996898..9389b24d4 100644 --- a/IkiWiki/Plugin/typography.pm +++ b/IkiWiki/Plugin/typography.pm @@ -4,28 +4,48 @@ package IkiWiki::Plugin::typography; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; -sub import { #{{{ +sub import { hook(type => "getopt", id => "typography", call => \&getopt); - IkiWiki::hook(type => "sanitize", id => "typography", call => \&sanitize); -} # }}} + hook(type => "getsetup", id => "typography", call => \&getsetup); + hook(type => "sanitize", id => "typography", call => \&sanitize); +} -sub getopt () { #{{{ +sub getopt () { eval q{use Getopt::Long}; error($@) if $@; Getopt::Long::Configure('pass_through'); GetOptions("typographyattributes=s" => \$config{typographyattributes}); -} #}}} +} -sub sanitize (@) { #{{{ +sub getsetup () { + eval q{use Text::Typography}; + error($@) if $@; + + return + plugin => { + safe => 1, + rebuild => 1, + }, + typographyattributes => { + type => "string", + example => "3", + description => "Text::Typography attributes value", + advanced => 1, + safe => 1, + rebuild => 1, + }, +} + +sub sanitize (@) { my %params=@_; eval q{use Text::Typography}; - error($@) if $@; + return $params{content} if $@; my $attributes=defined $config{typographyattributes} ? $config{typographyattributes} : '3'; return Text::Typography::typography($params{content}, $attributes); -} # }}} +} 1