diff options
author | intrigeri <intrigeri@boum.org> | 2010-06-25 14:38:37 +0200 |
---|---|---|
committer | intrigeri <intrigeri@boum.org> | 2010-06-25 14:38:37 +0200 |
commit | 9f401d6617a11efcedda1c956b2ccea061a7540f (patch) | |
tree | a5648589b38487427a58a7ebacfdc036a5dd102a /IkiWiki/Plugin/sortnaturally.pm | |
parent | 73f4a8835876c8cb07808367cd72d9ae972893e8 (diff) | |
parent | 71950b2ae5ff6fd3b631c5504455cc07699b1c11 (diff) |
Merge remote branch 'upstream/master' into prv/po
Conflicts:
IkiWiki/Plugin/po.pm
Diffstat (limited to 'IkiWiki/Plugin/sortnaturally.pm')
-rw-r--r-- | IkiWiki/Plugin/sortnaturally.pm | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/IkiWiki/Plugin/sortnaturally.pm b/IkiWiki/Plugin/sortnaturally.pm new file mode 100644 index 000000000..62e42767c --- /dev/null +++ b/IkiWiki/Plugin/sortnaturally.pm @@ -0,0 +1,32 @@ +#!/usr/bin/perl +# Sort::Naturally-powered title_natural sort order for IkiWiki +package IkiWiki::Plugin::sortnaturally; + +use IkiWiki 3.00; +no warnings; + +sub import { + hook(type => "getsetup", id => "sortnaturally", call => \&getsetup); +} + +sub getsetup { + return + plugin => { + safe => 1, + rebuild => undef, + }, +} + +sub checkconfig () { + eval q{use Sort::Naturally}; + error $@ if $@; +} + +package IkiWiki::SortSpec; + +sub cmp_title_natural { + Sort::Naturally::ncmp(IkiWiki::pagetitle(IkiWiki::basename($a)), + IkiWiki::pagetitle(IkiWiki::basename($b))) +} + +1; |