aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki/Render.pm
diff options
context:
space:
mode:
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-09-09 22:50:27 +0000
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-09-09 22:50:27 +0000
commitdae0f48e91304afcb6ebe0936360e51b22a56548 (patch)
tree930090e4343087dac7ae6693d420d80b826c57f2 /IkiWiki/Render.pm
parentd92142d09eaec9018c0cdc96f9ad3bd4a0c876a7 (diff)
downloadikiwiki-dae0f48e91304afcb6ebe0936360e51b22a56548.tar
ikiwiki-dae0f48e91304afcb6ebe0936360e51b22a56548.tar.gz
* Work on firming up the plugin interface:
- Plugins should not need to load IkiWiki::Render to get commonly used functions, so moved some functions from there to IkiWiki. - Picked out the set of functions and variables that most plugins use, documented them, and made IkiWiki export them by default, like a proper perl module should. - Use the other functions at your own risk. - This is not quite complete, I still have to decide whether to export some other things. * Changed all plugins included in ikiwiki to not use "IkiWiki::" when referring to stuff now exported by the IkiWiki module. * Anyone with a third-party ikiwiki plugin is strongly enrouraged to make like changes to it and avoid use of non-exported symboles from "IkiWiki::". * Link debian/changelog and debian/news to NEWS and CHANGELOG. * Support hyperestradier version 1.4.2, which adds a new required phraseform setting.
Diffstat (limited to 'IkiWiki/Render.pm')
-rw-r--r--IkiWiki/Render.pm133
1 files changed, 0 insertions, 133 deletions
diff --git a/IkiWiki/Render.pm b/IkiWiki/Render.pm
index 2c1ea3eb7..c16877b3d 100644
--- a/IkiWiki/Render.pm
+++ b/IkiWiki/Render.pm
@@ -7,44 +7,6 @@ use strict;
use IkiWiki;
use Encode;
-sub linkify ($$$) { #{{{
- my $lpage=shift; # the page containing the links
- my $page=shift; # the page the link will end up on (different for inline)
- my $content=shift;
-
- $content =~ s{(\\?)$config{wiki_link_regexp}}{
- $2 ? ( $1 ? "[[$2|$3]]" : htmllink($lpage, $page, titlepage($3), 0, 0, pagetitle($2)))
- : ( $1 ? "[[$3]]" : htmllink($lpage, $page, titlepage($3)))
- }eg;
-
- return $content;
-} #}}}
-
-sub htmlize ($$$) { #{{{
- my $page=shift;
- my $type=shift;
- my $content=shift;
-
- if (exists $hooks{htmlize}{$type}) {
- $content=$hooks{htmlize}{$type}{call}->(
- page => $page,
- content => $content,
- );
- }
- else {
- error("htmlization of $type not supported");
- }
-
- run_hooks(sanitize => sub {
- $content=shift->(
- page => $page,
- content => $content,
- );
- });
-
- return $content;
-} #}}}
-
sub backlinks ($) { #{{{
my $page=shift;
@@ -91,80 +53,6 @@ sub parentlinks ($) { #{{{
return @ret;
} #}}}
-my %preprocessing;
-sub preprocess ($$$) { #{{{
- my $page=shift; # the page the data comes from
- my $destpage=shift; # the page the data will appear in (different for inline)
- my $content=shift;
-
- my $handle=sub {
- my $escape=shift;
- my $command=shift;
- my $params=shift;
- if (length $escape) {
- return "[[$command $params]]";
- }
- elsif (exists $hooks{preprocess}{$command}) {
- # Note: preserve order of params, some plugins may
- # consider it significant.
- my @params;
- while ($params =~ /(?:(\w+)=)?(?:"""(.*?)"""|"([^"]+)"|(\S+))(?:\s+|$)/sg) {
- my $key=$1;
- my $val;
- if (defined $2) {
- $val=$2;
- $val=~s/\r\n/\n/mg;
- $val=~s/^\n+//g;
- $val=~s/\n+$//g;
- }
- elsif (defined $3) {
- $val=$3;
- }
- elsif (defined $4) {
- $val=$4;
- }
-
- if (defined $key) {
- push @params, $key, $val;
- }
- else {
- push @params, $val, '';
- }
- }
- if ($preprocessing{$page}++ > 3) {
- # Avoid loops of preprocessed pages preprocessing
- # other pages that preprocess them, etc.
- return "[[$command preprocessing loop detected on $page at depth $preprocessing{$page}]]";
- }
- my $ret=$hooks{preprocess}{$command}{call}->(
- @params,
- page => $page,
- destpage => $destpage,
- );
- $preprocessing{$page}--;
- return $ret;
- }
- else {
- return "[[$command $params]]";
- }
- };
-
- $content =~ s{(\\?)\[\[(\w+)\s+((?:(?:\w+=)?(?:""".*?"""|"[^"]+"|[^\s\]]+)\s*)*)\]\]}{$handle->($1, $2, $3)}seg;
- return $content;
-} #}}}
-
-sub add_depends ($$) { #{{{
- my $page=shift;
- my $pagespec=shift;
-
- if (! exists $depends{$page}) {
- $depends{$page}=$pagespec;
- }
- else {
- $depends{$page}=pagespec_merge($depends{$page}, $pagespec);
- }
-} # }}}
-
sub genpage ($$$) { #{{{
my $page=shift;
my $content=shift;
@@ -236,16 +124,6 @@ sub check_overwrite ($$) { #{{{
}
} #}}}
-sub displaytime ($) { #{{{
- my $time=shift;
-
- eval q{use POSIX};
- # strftime doesn't know about encodings, so make sure
- # its output is properly treated as utf8
- return decode_utf8(POSIX::strftime(
- $config{timeformat}, localtime($time)));
-} #}}}
-
sub mtime ($) { #{{{
my $file=shift;
@@ -270,17 +148,6 @@ sub findlinks ($$) { #{{{
}
} #}}}
-sub filter ($$) {
- my $page=shift;
- my $content=shift;
-
- run_hooks(filter => sub {
- $content=shift->(page => $page, content => $content);
- });
-
- return $content;
-}
-
sub render ($) { #{{{
my $file=shift;