From 886890b82d727385f5bb167ef7684288e98a5218 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 21 Jun 2011 15:12:02 -0400 Subject: [PATCH] move headinganchors out of contrib --- IkiWiki/Plugin/headinganchors.pm | 30 ++++++++++++++++ debian/changelog | 1 + doc/plugins/contrib/headinganchors.mdwn | 36 ------------------- doc/plugins/headinganchors.mdwn | 7 ++++ .../headinganchors/discussion.mdwn | 0 5 files changed, 38 insertions(+), 36 deletions(-) create mode 100644 IkiWiki/Plugin/headinganchors.pm delete mode 100644 doc/plugins/contrib/headinganchors.mdwn create mode 100644 doc/plugins/headinganchors.mdwn rename doc/plugins/{contrib => }/headinganchors/discussion.mdwn (100%) diff --git a/IkiWiki/Plugin/headinganchors.pm b/IkiWiki/Plugin/headinganchors.pm new file mode 100644 index 000000000..80b39ec05 --- /dev/null +++ b/IkiWiki/Plugin/headinganchors.pm @@ -0,0 +1,30 @@ +#!/usr/bin/perl +# quick HTML heading id adder by Paul Wise +package IkiWiki::Plugin::headinganchors; + +use warnings; +use strict; +use IkiWiki 2.00; + +sub import { + hook(type => "sanitize", id => "headinganchors", call => \&headinganchors); +} + +sub text_to_anchor { + my $str = shift; + $str =~ s/^\s+//; + $str =~ s/\s+$//; + $str = lc($str); + $str =~ s/[&\?"\'\.,\(\)!]//mig; + $str =~ s/[^a-z]/_/mig; + return $str; +} + +sub headinganchors (@) { + my %params=@_; + my $content=$params{content}; + $content=~s{([^>]*)}{''.$2.''}gie; + return $content; +} + +1 diff --git a/debian/changelog b/debian/changelog index cf6aff9b1..a516c0756 100644 --- a/debian/changelog +++ b/debian/changelog @@ -13,6 +13,7 @@ ikiwiki (3.20110609) UNRELEASED; urgency=low (If you don't have javascript don't worry, I kept that working too.) (Sponsored by The TOVA Company.) * Add libtext-multimarkdown-perl to Suggests. Closes: #630705 + * headinganchors: Plugin by Paul Wise that adds ids to headings. -- Joey Hess Thu, 09 Jun 2011 10:06:44 -0400 diff --git a/doc/plugins/contrib/headinganchors.mdwn b/doc/plugins/contrib/headinganchors.mdwn deleted file mode 100644 index becbf89a5..000000000 --- a/doc/plugins/contrib/headinganchors.mdwn +++ /dev/null @@ -1,36 +0,0 @@ -[[!template id=plugin name=headinganchors author="[[PaulWise]]"]] - -This is a simple plugin to add ids (which will serve as [[anchor]]s) to all headings, based on their text. It -works as a postprocessing filter, allowing it to work on mdwn, wiki, html, -rst and any other format that produces html. The code is available here: - - #!/usr/bin/perl - # quick HTML heading id adder by Paul Wise - package IkiWiki::Plugin::headinganchors; - - use warnings; - use strict; - use IkiWiki 2.00; - - sub import { - hook(type => "sanitize", id => "headinganchors", call => \&headinganchors); - } - - sub text_to_anchor { - my $str = shift; - $str =~ s/^\s+//; - $str =~ s/\s+$//; - $str = lc($str); - $str =~ s/[&\?"\'\.,\(\)!]//mig; - $str =~ s/[^a-z]/_/mig; - return $str; - } - - sub headinganchors (@) { - my %params=@_; - my $content=$params{content}; - $content=~s{([^>]*)}{''.$2.''}gie; - return $content; - } - - 1 diff --git a/doc/plugins/headinganchors.mdwn b/doc/plugins/headinganchors.mdwn new file mode 100644 index 000000000..f087abdf9 --- /dev/null +++ b/doc/plugins/headinganchors.mdwn @@ -0,0 +1,7 @@ +[[!template id=plugin name=headinganchors author="[[PaulWise]]"]] +[[!tag type/html]] + +This is a simple plugin to add ids (which will serve as [[anchor]]s) to all +headings (h1, h2, etc), based on their text. It works as a postprocessing +filter, allowing it to work on mdwn, wiki, html, rst and any other format that +produces html. diff --git a/doc/plugins/contrib/headinganchors/discussion.mdwn b/doc/plugins/headinganchors/discussion.mdwn similarity index 100% rename from doc/plugins/contrib/headinganchors/discussion.mdwn rename to doc/plugins/headinganchors/discussion.mdwn -- 2.26.2