diff options
131 files changed, 1255 insertions, 962 deletions
diff --git a/IkiWiki.pm b/IkiWiki.pm index 54e00ec7b..e509a7c2f 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -24,7 +24,7 @@ our @EXPORT = qw(hook debug error template htmlpage add_depends pagespec_match inject %config %links %pagestate %wikistate %renderedfiles %pagesources %destsources); -our $VERSION = 2.00; # plugin interface version, next is ikiwiki version +our $VERSION = 3.00; # plugin interface version, next is ikiwiki version our $version='unknown'; # VERSION_AUTOREPLACE done by Makefile, DNE my $installdir=''; # INSTALLDIR_AUTOREPLACE done by Makefile, DNE @@ -194,7 +194,7 @@ sub getsetup () { }, prefix_directives => { type => "boolean", - default => 0, + default => 1, description => "use '!'-prefixed preprocessor directives?", safe => 0, # changing requires manual transition rebuild => 1, @@ -1600,40 +1600,6 @@ sub rcs_receive () { $hooks{rcs}{rcs_receive}{call}->(); } -sub globlist_to_pagespec ($) { - my @globlist=split(' ', shift); - - my (@spec, @skip); - foreach my $glob (@globlist) { - if ($glob=~/^!(.*)/) { - push @skip, $glob; - } - else { - push @spec, $glob; - } - } - - my $spec=join(' or ', @spec); - if (@skip) { - my $skip=join(' and ', @skip); - if (length $spec) { - $spec="$skip and ($spec)"; - } - else { - $spec=$skip; - } - } - return $spec; -} - -sub is_globlist ($) { - my $s=shift; - my $ret= ( $s =~ /[^\s]+\s+([^\s]+)/ && $1 ne "and" && $1 ne "or" ); - print STDERR "warning: deprecated GlobList style PageSpec \"$s\" will stop working in ikiwiki version 3.0\n" - if $ret && $s !~ /TMPL_VAR/; # hack alert - return $ret; -} - sub safequote ($) { my $s=shift; $s=~s/[{}]//g; @@ -1725,26 +1691,12 @@ sub pagespec_merge ($$) { my $b=shift; return $a if $a eq $b; - - # Support for old-style GlobLists. - if (is_globlist($a)) { - $a=globlist_to_pagespec($a); - } - if (is_globlist($b)) { - $b=globlist_to_pagespec($b); - } - return "($a) or ($b)"; } sub pagespec_translate ($) { my $spec=shift; - # Support for old-style GlobLists. - if (is_globlist($spec)) { - $spec=globlist_to_pagespec($spec); - } - # Convert spec to perl code. my $code=""; while ($spec=~m{ diff --git a/IkiWiki/CGI.pm b/IkiWiki/CGI.pm index 81cb42d13..3fadc462e 100644 --- a/IkiWiki/CGI.pm +++ b/IkiWiki/CGI.pm @@ -203,25 +203,9 @@ sub cgi_prefs ($$) { my $user_name=$session->param("name"); - # XXX deprecated, should be removed eventually - $form->field(name => "banned_users", size => 50, fieldset => "admin"); - if (! is_admin($user_name)) { - $form->field(name => "banned_users", type => "hidden"); - } if (! $form->submitted) { $form->field(name => "email", force => 1, value => userinfo_get($user_name, "email")); - if (is_admin($user_name)) { - my $value=join(" ", get_banned_users()); - if (length $value) { - $form->field(name => "banned_users", force => 1, - value => join(" ", get_banned_users()), - comment => "deprecated; please move to banned_users in setup file"); - } - else { - $form->field(name => "banned_users", type => "hidden"); - } - } } if ($form->submitted eq 'Logout') { @@ -239,17 +223,6 @@ sub cgi_prefs ($$) { error("failed to set email"); } - # XXX deprecated, should be removed eventually - if (is_admin($user_name)) { - set_banned_users(grep { ! is_admin($_) } - split(' ', - $form->field("banned_users"))) || - error("failed saving changes"); - if (! length $form->field("banned_users")) { - $form->field(name => "banned_users", type => "hidden"); - } - } - $form->text(gettext("Preferences saved.")); } @@ -262,10 +235,7 @@ sub check_banned ($$) { my $name=$session->param("name"); if (defined $name) { - # XXX banned in userinfo is deprecated, should be removed - # eventually, and only banned_users be checked. - if (userinfo_get($session->param("name"), "banned") || - grep { $name eq $_ } @{$config{banned_users}}) { + if (grep { $name eq $_ } @{$config{banned_users}}) { print $q->header(-status => "403 Forbidden"); $session->delete(); print gettext("You are banned."); diff --git a/IkiWiki/Plugin/aggregate.pm b/IkiWiki/Plugin/aggregate.pm index 97dd036f6..c667ee2a9 100644 --- a/IkiWiki/Plugin/aggregate.pm +++ b/IkiWiki/Plugin/aggregate.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::aggregate; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use HTML::Parser; use HTML::Tagset; use HTML::Entities; @@ -46,7 +46,7 @@ sub getsetup () { }, aggregateinternal => { type => "boolean", - example => 0, + example => 1, description => "enable aggregation to internal pages?", safe => 0, # enabling needs manual transition rebuild => 0, @@ -61,6 +61,10 @@ sub getsetup () { } sub checkconfig () { + if (! defined $config{aggregateinternal}) { + $config{aggregateinternal}=1; + } + if ($config{aggregate} && ! ($config{post_commit} && IkiWiki::commit_hook_enabled())) { launchaggregation(); diff --git a/IkiWiki/Plugin/amazon_s3.pm b/IkiWiki/Plugin/amazon_s3.pm index 93c10b629..10bf358e4 100644 --- a/IkiWiki/Plugin/amazon_s3.pm +++ b/IkiWiki/Plugin/amazon_s3.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::amazon_s3; use warnings; no warnings 'redefine'; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use IkiWiki::Render; use Net::Amazon::S3; diff --git a/IkiWiki/Plugin/anonok.pm b/IkiWiki/Plugin/anonok.pm index 1cbdfe4e5..243b98920 100644 --- a/IkiWiki/Plugin/anonok.pm +++ b/IkiWiki/Plugin/anonok.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::anonok; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "anonok", call => \&getsetup); diff --git a/IkiWiki/Plugin/attachment.pm b/IkiWiki/Plugin/attachment.pm index 87da6cd4e..087c315a9 100644 --- a/IkiWiki/Plugin/attachment.pm +++ b/IkiWiki/Plugin/attachment.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::attachment; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { add_underlay("javascript"); @@ -61,23 +61,6 @@ sub check_canattach ($$;$) { ); } - # XXX deprecated, should be removed eventually - if ($allowed) { - foreach my $admin (@{$config{adminuser}}) { - my $allowed_attachments=IkiWiki::userinfo_get($admin, "allowed_attachments"); - if (defined $allowed_attachments && - length $allowed_attachments) { - $allowed=pagespec_match($dest, - $allowed_attachments, - file => $file, - user => $session->param("name"), - ip => $ENV{REMOTE_ADDR}, - ); - last if $allowed; - } - } - } - if (! $allowed) { error(gettext("prohibited by allowed_attachments")." ($allowed)"); } @@ -120,39 +103,6 @@ sub formbuilder_setup (@) { $form->tmpl_param("attachments-class" => "toggleable-open"); } } - elsif ($form->title eq "preferences") { - # XXX deprecated, should remove eventually - my $session=$params{session}; - my $user_name=$session->param("name"); - - $form->field(name => "allowed_attachments", size => 50, - fieldset => "admin", - comment => "deprecated; please move to allowed_attachments in setup file", - ); - if (! IkiWiki::is_admin($user_name)) { - $form->field(name => "allowed_attachments", type => "hidden"); - } - if (! $form->submitted) { - my $value=IkiWiki::userinfo_get($user_name, "allowed_attachments"); - if (length $value) { - $form->field(name => "allowed_attachments", force => 1, - value => IkiWiki::userinfo_get($user_name, "allowed_attachments")); - } - else { - $form->field(name => "allowed_attachments", type => "hidden"); - } - } - if ($form->submitted && $form->submitted eq 'Save Preferences') { - if (defined $form->field("allowed_attachments")) { - IkiWiki::userinfo_set($user_name, "allowed_attachments", - $form->field("allowed_attachments")) || - error("failed to set allowed_attachments"); - if (! length $form->field("allowed_attachments")) { - $form->field(name => "allowed_attachments", type => "hidden"); - } - } - } - } } sub formbuilder (@) { diff --git a/IkiWiki/Plugin/autoindex.pm b/IkiWiki/Plugin/autoindex.pm index bb08091ae..555856b11 100644 --- a/IkiWiki/Plugin/autoindex.pm +++ b/IkiWiki/Plugin/autoindex.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::autoindex; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use Encode; sub import { diff --git a/IkiWiki/Plugin/brokenlinks.pm b/IkiWiki/Plugin/brokenlinks.pm index 1c52099bf..bf0d7560d 100644 --- a/IkiWiki/Plugin/brokenlinks.pm +++ b/IkiWiki/Plugin/brokenlinks.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::brokenlinks; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "brokenlinks", call => \&getsetup); diff --git a/IkiWiki/Plugin/calendar.pm b/IkiWiki/Plugin/calendar.pm index 88303fc44..d473c8348 100644 --- a/IkiWiki/Plugin/calendar.pm +++ b/IkiWiki/Plugin/calendar.pm @@ -20,7 +20,7 @@ package IkiWiki::Plugin::calendar; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use Time::Local; use POSIX; diff --git a/IkiWiki/Plugin/camelcase.pm b/IkiWiki/Plugin/camelcase.pm index f9ee30fe2..74a8397d7 100644 --- a/IkiWiki/Plugin/camelcase.pm +++ b/IkiWiki/Plugin/camelcase.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::camelcase; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; # This regexp is based on the one in Text::WikiFormat. my $link_regexp=qr{ diff --git a/IkiWiki/Plugin/color.pm b/IkiWiki/Plugin/color.pm index 53d8389d2..20505893b 100644 --- a/IkiWiki/Plugin/color.pm +++ b/IkiWiki/Plugin/color.pm @@ -5,7 +5,7 @@ package IkiWiki::Plugin::color; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "preprocess", id => "color", call => \&preprocess); diff --git a/IkiWiki/Plugin/comments.pm b/IkiWiki/Plugin/comments.pm index d8318d3e3..1c10417c3 100644 --- a/IkiWiki/Plugin/comments.pm +++ b/IkiWiki/Plugin/comments.pm @@ -7,7 +7,7 @@ package IkiWiki::Plugin::comments; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use Encode; use POSIX qw(strftime); @@ -506,7 +506,10 @@ sub sessioncgi ($$) { error($conflict) if defined $conflict; # Jump to the new comment on the page. - IkiWiki::redirect($cgi, urlto($page, undef, 1)."#$location"); + # The trailing question mark tries to avoid broken + # caches and get the most recent version of the page. + IkiWiki::redirect($cgi, urlto($page, undef, 1)."#$location?updated"); + } else { IkiWiki::showform ($form, \@buttons, $session, $cgi, diff --git a/IkiWiki/Plugin/conditional.pm b/IkiWiki/Plugin/conditional.pm index 66253e07d..4f3577b34 100644 --- a/IkiWiki/Plugin/conditional.pm +++ b/IkiWiki/Plugin/conditional.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::conditional; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use UNIVERSAL; sub import { diff --git a/IkiWiki/Plugin/creole.pm b/IkiWiki/Plugin/creole.pm index 3c46a48df..425e71043 100644 --- a/IkiWiki/Plugin/creole.pm +++ b/IkiWiki/Plugin/creole.pm @@ -5,7 +5,7 @@ package IkiWiki::Plugin::creole; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "creole", call => \&getsetup); diff --git a/IkiWiki/Plugin/cutpaste.pm b/IkiWiki/Plugin/cutpaste.pm index e579c1ea2..417442f34 100644 --- a/IkiWiki/Plugin/cutpaste.pm +++ b/IkiWiki/Plugin/cutpaste.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::cutpaste; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my %savedtext; diff --git a/IkiWiki/Plugin/ddate.pm b/IkiWiki/Plugin/ddate.pm index 3470640dc..bb77ce59f 100644 --- a/IkiWiki/Plugin/ddate.pm +++ b/IkiWiki/Plugin/ddate.pm @@ -2,7 +2,7 @@ # Discordian date support fnord ikiwiki. package IkiWiki::Plugin::ddate; -use IkiWiki 2.00; +use IkiWiki 3.00; no warnings; sub import { diff --git a/IkiWiki/Plugin/editdiff.pm b/IkiWiki/Plugin/editdiff.pm index 068b83b3c..7df6a9ffb 100644 --- a/IkiWiki/Plugin/editdiff.pm +++ b/IkiWiki/Plugin/editdiff.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::editdiff; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use HTML::Entities; use IPC::Open2; diff --git a/IkiWiki/Plugin/edittemplate.pm b/IkiWiki/Plugin/edittemplate.pm index 7c0e7c2f8..0bafc95d0 100644 --- a/IkiWiki/Plugin/edittemplate.pm +++ b/IkiWiki/Plugin/edittemplate.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::edittemplate; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use HTML::Template; use Encode; diff --git a/IkiWiki/Plugin/embed.pm b/IkiWiki/Plugin/embed.pm index 664c95763..a7d38358f 100644 --- a/IkiWiki/Plugin/embed.pm +++ b/IkiWiki/Plugin/embed.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::embed; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my $attribr=qr/[^<>"]+/; diff --git a/IkiWiki/Plugin/external.pm b/IkiWiki/Plugin/external.pm index 2d540143f..066f15cf1 100644 --- a/IkiWiki/Plugin/external.pm +++ b/IkiWiki/Plugin/external.pm @@ -6,7 +6,7 @@ package IkiWiki::Plugin::external; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use RPC::XML; use RPC::XML::Parser; use IPC::Open2; diff --git a/IkiWiki/Plugin/favicon.pm b/IkiWiki/Plugin/favicon.pm index 68359a4aa..6060914c5 100644 --- a/IkiWiki/Plugin/favicon.pm +++ b/IkiWiki/Plugin/favicon.pm @@ -5,7 +5,7 @@ package IkiWiki::Plugin::favicon; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "favicon", call => \&getsetup); diff --git a/IkiWiki/Plugin/filecheck.pm b/IkiWiki/Plugin/filecheck.pm index 5040a185c..8575ee108 100644 --- a/IkiWiki/Plugin/filecheck.pm +++ b/IkiWiki/Plugin/filecheck.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::filecheck; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my %units=( #{{{ # size in bytes B => 1, diff --git a/IkiWiki/Plugin/format.pm b/IkiWiki/Plugin/format.pm index b4d3a3c5f..bbe3aa9fe 100644 --- a/IkiWiki/Plugin/format.pm +++ b/IkiWiki/Plugin/format.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::format; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "preprocess", id => "format", call => \&preprocess); diff --git a/IkiWiki/Plugin/fortune.pm b/IkiWiki/Plugin/fortune.pm index 6a12f28fd..17e57dea1 100644 --- a/IkiWiki/Plugin/fortune.pm +++ b/IkiWiki/Plugin/fortune.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::fortune; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "fortune", call => \&getsetup); diff --git a/IkiWiki/Plugin/goodstuff.pm b/IkiWiki/Plugin/goodstuff.pm index 92bc8200a..46f2380cf 100644 --- a/IkiWiki/Plugin/goodstuff.pm +++ b/IkiWiki/Plugin/goodstuff.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::goodstuff; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my @bundle=qw{ brokenlinks diff --git a/IkiWiki/Plugin/google.pm b/IkiWiki/Plugin/google.pm index 5394c5a6f..4bba5775c 100644 --- a/IkiWiki/Plugin/google.pm +++ b/IkiWiki/Plugin/google.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::google; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use URI; my $host; diff --git a/IkiWiki/Plugin/googlecalendar.pm b/IkiWiki/Plugin/googlecalendar.pm deleted file mode 100644 index 24c2e1527..000000000 --- a/IkiWiki/Plugin/googlecalendar.pm +++ /dev/null @@ -1,57 +0,0 @@ -#!/usr/bin/perl -package IkiWiki::Plugin::googlecalendar; - -use warnings; -use strict; -use IkiWiki 2.00; - -print STDERR "warning: the googlecalendar plugin is deprecated and will be removed in ikiwiki 3.0 (use the embed plugin instead)\n"; - -sub import { - hook(type => "getsetup", id => "googlecalendar", - call => \&getsetup); - hook(type => "preprocess", id => "googlecalendar", - call => \&preprocess); - hook(type => "format", id => "googlecalendar", - call => \&format); -} - -sub getsetup () { - return - plugin => { - safe => 1, - rebuild => undef, - }, -} - -sub preprocess (@) { - my %params=@_; - - # Parse the html, looking for the url to embed for the calendar. - # Avoid XSS attacks.. - my ($url)=$params{html}=~m#iframe\s+src="http://www\.google\.com/calendar/embed\?([^"<>]+)"#; - if (! defined $url || ! length $url) { - error gettext("failed to find url in html") - } - my ($height)=$params{html}=~m#height="(\d+)"#; - my ($width)=$params{html}=~m#width="(\d+)"#; - - return "<div class=\"googlecalendar\" src=\"$url\" height=\"$height\" width=\"$width\"></div>"; -} - -sub format (@) { - my %params=@_; - - $params{content}=~s/<div class=\"googlecalendar" src="([^"]+)" height="([^"]+)" width="([^"]+)"><\/div>/gencal($1,$2,$3)/eg; - - return $params{content}; -} - -sub gencal ($$$) { - my $url=shift; - my $height=shift; - my $width=shift; - return qq{<iframe src="http://www.google.com/calendar/embed?$url" style=" border-width:0 " width="$width" frameborder="0" height="$height"></iframe>}; -} - -1 diff --git a/IkiWiki/Plugin/graphviz.pm b/IkiWiki/Plugin/graphviz.pm index 23631da30..b43e96a73 100644 --- a/IkiWiki/Plugin/graphviz.pm +++ b/IkiWiki/Plugin/graphviz.pm @@ -5,7 +5,7 @@ package IkiWiki::Plugin::graphviz; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use IPC::Open2; sub import { diff --git a/IkiWiki/Plugin/haiku.pm b/IkiWiki/Plugin/haiku.pm index fe68c6eec..5a062a276 100644 --- a/IkiWiki/Plugin/haiku.pm +++ b/IkiWiki/Plugin/haiku.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::haiku; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "haiku", call => \&getsetup); diff --git a/IkiWiki/Plugin/hnb.pm b/IkiWiki/Plugin/hnb.pm index d5b5ce3b4..bd2177a06 100644 --- a/IkiWiki/Plugin/hnb.pm +++ b/IkiWiki/Plugin/hnb.pm @@ -10,7 +10,7 @@ package IkiWiki::Plugin::hnb; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use File::Temp qw(:mktemp); sub import { diff --git a/IkiWiki/Plugin/html.pm b/IkiWiki/Plugin/html.pm index 9b9547cca..a7d5e8ce9 100644 --- a/IkiWiki/Plugin/html.pm +++ b/IkiWiki/Plugin/html.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::html; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "html", call => \&getsetup); diff --git a/IkiWiki/Plugin/htmlbalance.pm b/IkiWiki/Plugin/htmlbalance.pm index acbe40a5d..26f8e494b 100644 --- a/IkiWiki/Plugin/htmlbalance.pm +++ b/IkiWiki/Plugin/htmlbalance.pm @@ -9,8 +9,7 @@ package IkiWiki::Plugin::htmlbalance; use warnings; use strict; -use IkiWiki 2.00; -use HTML::TreeBuilder; +use IkiWiki 3.00; use HTML::Entities; sub import { @@ -30,6 +29,8 @@ sub sanitize (@) { my %params=@_; my $ret = ''; + eval q{use HTML::TreeBuilder}; + error $@ if $@; my $tree = HTML::TreeBuilder->new(); $tree->ignore_unknown(0); $tree->ignore_ignorable_whitespace(0); diff --git a/IkiWiki/Plugin/htmlscrubber.pm b/IkiWiki/Plugin/htmlscrubber.pm index 823b3d806..a249cdf7a 100644 --- a/IkiWiki/Plugin/htmlscrubber.pm +++ b/IkiWiki/Plugin/htmlscrubber.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::htmlscrubber; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; # This regexp matches urls that are in a known safe scheme. # Feel free to use it from other plugins. diff --git a/IkiWiki/Plugin/htmltidy.pm b/IkiWiki/Plugin/htmltidy.pm index 02438ebef..6f3379ef4 100644 --- a/IkiWiki/Plugin/htmltidy.pm +++ b/IkiWiki/Plugin/htmltidy.pm @@ -9,7 +9,7 @@ package IkiWiki::Plugin::htmltidy; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use IPC::Open2; sub import { diff --git a/IkiWiki/Plugin/httpauth.pm b/IkiWiki/Plugin/httpauth.pm index 39edff615..1816c9d74 100644 --- a/IkiWiki/Plugin/httpauth.pm +++ b/IkiWiki/Plugin/httpauth.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::httpauth; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "httpauth", call => \&getsetup); diff --git a/IkiWiki/Plugin/img.pm b/IkiWiki/Plugin/img.pm index 395890c0e..5c580c03c 100644 --- a/IkiWiki/Plugin/img.pm +++ b/IkiWiki/Plugin/img.pm @@ -5,7 +5,7 @@ package IkiWiki::Plugin::img; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my %imgdefaults; diff --git a/IkiWiki/Plugin/inline.pm b/IkiWiki/Plugin/inline.pm index e1e57e43e..d8b5f8548 100644 --- a/IkiWiki/Plugin/inline.pm +++ b/IkiWiki/Plugin/inline.pm @@ -5,7 +5,7 @@ package IkiWiki::Plugin::inline; use warnings; use strict; use Encode; -use IkiWiki 2.00; +use IkiWiki 3.00; use URI; my %knownfeeds; diff --git a/IkiWiki/Plugin/link.pm b/IkiWiki/Plugin/link.pm index e9623035b..48691d973 100644 --- a/IkiWiki/Plugin/link.pm +++ b/IkiWiki/Plugin/link.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::link; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my $link_regexp; diff --git a/IkiWiki/Plugin/linkmap.pm b/IkiWiki/Plugin/linkmap.pm index cb9f3ef41..941ed5f36 100644 --- a/IkiWiki/Plugin/linkmap.pm +++ b/IkiWiki/Plugin/linkmap.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::linkmap; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use IPC::Open2; sub import { diff --git a/IkiWiki/Plugin/listdirectives.pm b/IkiWiki/Plugin/listdirectives.pm index be82b0495..d2cebca34 100644 --- a/IkiWiki/Plugin/listdirectives.pm +++ b/IkiWiki/Plugin/listdirectives.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::listdirectives; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { add_underlay("directives"); diff --git a/IkiWiki/Plugin/lockedit.pm b/IkiWiki/Plugin/lockedit.pm index 31a9e70cd..0fa329251 100644 --- a/IkiWiki/Plugin/lockedit.pm +++ b/IkiWiki/Plugin/lockedit.pm @@ -3,13 +3,11 @@ package IkiWiki::Plugin::lockedit; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "lockedit", call => \&getsetup); hook(type => "canedit", id => "lockedit", call => \&canedit); - hook(type => "formbuilder_setup", id => "lockedit", - call => \&formbuilder_setup); } sub getsetup () { @@ -52,63 +50,7 @@ sub canedit ($$) { } } - # XXX deprecated, should be removed eventually - foreach my $admin (@{$config{adminuser}}) { - if (pagespec_match($page, IkiWiki::userinfo_get($admin, "locked_pages"), - user => $session->param("name"), - ip => $ENV{REMOTE_ADDR}, - )) { - if (! defined $user || - ! IkiWiki::userinfo_get($session->param("name"), "regdate")) { - return sub { IkiWiki::needsignin($cgi, $session) }; - } - else { - return sprintf(gettext("%s is locked and cannot be edited"), - htmllink("", "", $page, noimageinline => 1)); - } - } - } - return undef; } -sub formbuilder_setup (@) { - my %params=@_; - - # XXX deprecated, should be removed eventually - my $form=$params{form}; - if ($form->title eq "preferences") { - my $session=$params{session}; - my $cgi=$params{cgi}; - my $user_name=$session->param("name"); - - $form->field(name => "locked_pages", size => 50, - fieldset => "admin", - comment => "deprecated; please move to locked_pages in setup file" - ); - if (! IkiWiki::is_admin($user_name)) { - $form->field(name => "locked_pages", type => "hidden"); - } - if (! $form->submitted) { - my $value=IkiWiki::userinfo_get($user_name, "locked_pages"); - if (length $value) { - $form->field(name => "locked_pages", force => 1, value => $value); - } - else { - $form->field(name => "locked_pages", type => "hidden"); - } - } - if ($form->submitted && $form->submitted eq 'Save Preferences') { - if (defined $form->field("locked_pages")) { - IkiWiki::userinfo_set($user_name, "locked_pages", - $form->field("locked_pages")) || - error("failed to set locked_pages"); - if (! length $form->field("locked_pages")) { - $form->field(name => "locked_pages", type => "hidden"); - } - } - } - } -} - 1 diff --git a/IkiWiki/Plugin/map.pm b/IkiWiki/Plugin/map.pm index af14ef5de..328493116 100644 --- a/IkiWiki/Plugin/map.pm +++ b/IkiWiki/Plugin/map.pm @@ -9,7 +9,7 @@ package IkiWiki::Plugin::map; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "map", call => \&getsetup); diff --git a/IkiWiki/Plugin/mdwn.pm b/IkiWiki/Plugin/mdwn.pm index 0d5f398a0..0e134c822 100644 --- a/IkiWiki/Plugin/mdwn.pm +++ b/IkiWiki/Plugin/mdwn.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::mdwn; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "mdwn", call => \&getsetup); diff --git a/IkiWiki/Plugin/meta.pm b/IkiWiki/Plugin/meta.pm index 8c214139f..15bb29b3f 100644 --- a/IkiWiki/Plugin/meta.pm +++ b/IkiWiki/Plugin/meta.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::meta; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my %metaheaders; diff --git a/IkiWiki/Plugin/mirrorlist.pm b/IkiWiki/Plugin/mirrorlist.pm index b726386f6..737dcf767 100644 --- a/IkiWiki/Plugin/mirrorlist.pm +++ b/IkiWiki/Plugin/mirrorlist.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::mirrorlist; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "mirrorlist", call => \&getsetup); diff --git a/IkiWiki/Plugin/more.pm b/IkiWiki/Plugin/more.pm index f1216ad3d..77d5fb077 100644 --- a/IkiWiki/Plugin/more.pm +++ b/IkiWiki/Plugin/more.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::more; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my $linktext = gettext("more"); diff --git a/IkiWiki/Plugin/opendiscussion.pm b/IkiWiki/Plugin/opendiscussion.pm index 95220d7b3..3da01efee 100644 --- a/IkiWiki/Plugin/opendiscussion.pm +++ b/IkiWiki/Plugin/opendiscussion.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::opendiscussion; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "opendiscussion", call => \&getsetup); diff --git a/IkiWiki/Plugin/openid.pm b/IkiWiki/Plugin/openid.pm index 574c42f0e..5424c57e2 100644 --- a/IkiWiki/Plugin/openid.pm +++ b/IkiWiki/Plugin/openid.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::openid; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getopt", id => "openid", call => \&getopt); diff --git a/IkiWiki/Plugin/orphans.pm b/IkiWiki/Plugin/orphans.pm index 8e9ab0ff4..605e6e43a 100644 --- a/IkiWiki/Plugin/orphans.pm +++ b/IkiWiki/Plugin/orphans.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::orphans; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "orphans", call => \&getsetup); diff --git a/IkiWiki/Plugin/otl.pm b/IkiWiki/Plugin/otl.pm index 280b19db0..c68fcbbe3 100644 --- a/IkiWiki/Plugin/otl.pm +++ b/IkiWiki/Plugin/otl.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::otl; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use open qw{:utf8 :std}; sub import { diff --git a/IkiWiki/Plugin/pagecount.pm b/IkiWiki/Plugin/pagecount.pm index c08ab3931..a143f24d0 100644 --- a/IkiWiki/Plugin/pagecount.pm +++ b/IkiWiki/Plugin/pagecount.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::pagecount; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "pagecount", call => \&getsetup); diff --git a/IkiWiki/Plugin/pagestats.pm b/IkiWiki/Plugin/pagestats.pm index e20d0dac6..dbe69539d 100644 --- a/IkiWiki/Plugin/pagestats.pm +++ b/IkiWiki/Plugin/pagestats.pm @@ -12,7 +12,7 @@ package IkiWiki::Plugin::pagestats; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; # Names of the HTML classes to use for the tag cloud our @classes = ('smallestPC', 'smallPC', 'normalPC', 'bigPC', 'biggestPC' ); diff --git a/IkiWiki/Plugin/pagetemplate.pm b/IkiWiki/Plugin/pagetemplate.pm index 60db8b327..1d8a84ca7 100644 --- a/IkiWiki/Plugin/pagetemplate.pm +++ b/IkiWiki/Plugin/pagetemplate.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::pagetemplate; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my %templates; diff --git a/IkiWiki/Plugin/parentlinks.pm b/IkiWiki/Plugin/parentlinks.pm index 866201e5e..1ee69cbff 100644 --- a/IkiWiki/Plugin/parentlinks.pm +++ b/IkiWiki/Plugin/parentlinks.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::parentlinks; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "parentlinks", id => "parentlinks", call => \&parentlinks); diff --git a/IkiWiki/Plugin/passwordauth.pm b/IkiWiki/Plugin/passwordauth.pm index 7176f0c33..90e2ca564 100644 --- a/IkiWiki/Plugin/passwordauth.pm +++ b/IkiWiki/Plugin/passwordauth.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::passwordauth; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "passwordauth", "call" => \&getsetup); diff --git a/IkiWiki/Plugin/pingee.pm b/IkiWiki/Plugin/pingee.pm index fcbe6b57b..f5386d0ca 100644 --- a/IkiWiki/Plugin/pingee.pm +++ b/IkiWiki/Plugin/pingee.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::pingee; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "pingee", call => \&getsetup); diff --git a/IkiWiki/Plugin/pinger.pm b/IkiWiki/Plugin/pinger.pm index 7b4dce586..4a8088661 100644 --- a/IkiWiki/Plugin/pinger.pm +++ b/IkiWiki/Plugin/pinger.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::pinger; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my %pages; my $pinged=0; diff --git a/IkiWiki/Plugin/poll.pm b/IkiWiki/Plugin/poll.pm index 5ac5b818d..bc1e3501e 100644 --- a/IkiWiki/Plugin/poll.pm +++ b/IkiWiki/Plugin/poll.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::poll; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use Encode; sub import { diff --git a/IkiWiki/Plugin/polygen.pm b/IkiWiki/Plugin/polygen.pm index a32003778..bc21d71c7 100644 --- a/IkiWiki/Plugin/polygen.pm +++ b/IkiWiki/Plugin/polygen.pm @@ -7,7 +7,7 @@ package IkiWiki::Plugin::polygen; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use File::Find; sub import { diff --git a/IkiWiki/Plugin/postsparkline.pm b/IkiWiki/Plugin/postsparkline.pm index 1753e4cf9..ba43561fb 100644 --- a/IkiWiki/Plugin/postsparkline.pm +++ b/IkiWiki/Plugin/postsparkline.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::postsparkline; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { IkiWiki::loadplugin('sparkline'); diff --git a/IkiWiki/Plugin/prettydate.pm b/IkiWiki/Plugin/prettydate.pm index 501f17f5d..e155dd39b 100644 --- a/IkiWiki/Plugin/prettydate.pm +++ b/IkiWiki/Plugin/prettydate.pm @@ -1,6 +1,6 @@ #!/usr/bin/perl package IkiWiki::Plugin::prettydate; -use IkiWiki 2.00; +use IkiWiki 3.00; use warnings; no warnings 'redefine'; use strict; diff --git a/IkiWiki/Plugin/progress.pm b/IkiWiki/Plugin/progress.pm index 75da16d16..76d994acc 100644 --- a/IkiWiki/Plugin/progress.pm +++ b/IkiWiki/Plugin/progress.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::progress; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my $percentage_pattern = qr/[0-9]+\%?/; # pattern to validate percentages diff --git a/IkiWiki/Plugin/rawhtml.pm b/IkiWiki/Plugin/rawhtml.pm index 73093439d..ad8a610c1 100644 --- a/IkiWiki/Plugin/rawhtml.pm +++ b/IkiWiki/Plugin/rawhtml.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::rawhtml; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "rawhtml", call => \&getsetup); diff --git a/IkiWiki/Plugin/recentchanges.pm b/IkiWiki/Plugin/recentchanges.pm index 7071596e6..ef108b3f0 100644 --- a/IkiWiki/Plugin/recentchanges.pm +++ b/IkiWiki/Plugin/recentchanges.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::recentchanges; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use Encode; use HTML::Entities; diff --git a/IkiWiki/Plugin/recentchangesdiff.pm b/IkiWiki/Plugin/recentchangesdiff.pm index 4dea9c26b..e3ba9b8d8 100644 --- a/IkiWiki/Plugin/recentchangesdiff.pm +++ b/IkiWiki/Plugin/recentchangesdiff.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::recentchangesdiff; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use HTML::Entities; my $maxlines=200; diff --git a/IkiWiki/Plugin/relativedate.pm b/IkiWiki/Plugin/relativedate.pm index e5fa8e1a5..3e33cd5c3 100644 --- a/IkiWiki/Plugin/relativedate.pm +++ b/IkiWiki/Plugin/relativedate.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::relativedate; use warnings; no warnings 'redefine'; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use POSIX; use Encode; diff --git a/IkiWiki/Plugin/remove.pm b/IkiWiki/Plugin/remove.pm index 781501662..21989aff3 100644 --- a/IkiWiki/Plugin/remove.pm +++ b/IkiWiki/Plugin/remove.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::remove; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "remove", call => \&getsetup); diff --git a/IkiWiki/Plugin/rename.pm b/IkiWiki/Plugin/rename.pm index 227f59bfa..25ddd2d65 100644 --- a/IkiWiki/Plugin/rename.pm +++ b/IkiWiki/Plugin/rename.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::rename; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "rename", call => \&getsetup); diff --git a/IkiWiki/Plugin/search.pm b/IkiWiki/Plugin/search.pm index cc2130ad5..d79e3170e 100644 --- a/IkiWiki/Plugin/search.pm +++ b/IkiWiki/Plugin/search.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::search; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "search", call => \&getsetup); diff --git a/IkiWiki/Plugin/shortcut.pm b/IkiWiki/Plugin/shortcut.pm index 33d158d3e..0e7cbd4d1 100644 --- a/IkiWiki/Plugin/shortcut.pm +++ b/IkiWiki/Plugin/shortcut.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::shortcut; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "shortcut", call => \&getsetup); diff --git a/IkiWiki/Plugin/sidebar.pm b/IkiWiki/Plugin/sidebar.pm index 746fa93bb..41812e1c1 100644 --- a/IkiWiki/Plugin/sidebar.pm +++ b/IkiWiki/Plugin/sidebar.pm @@ -6,7 +6,7 @@ package IkiWiki::Plugin::sidebar; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "sidebar", call => \&getsetup); diff --git a/IkiWiki/Plugin/signinedit.pm b/IkiWiki/Plugin/signinedit.pm index 321c93ed5..032a0034c 100644 --- a/IkiWiki/Plugin/signinedit.pm +++ b/IkiWiki/Plugin/signinedit.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::signinedit; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "signinedit", call => \&getsetup); diff --git a/IkiWiki/Plugin/smiley.pm b/IkiWiki/Plugin/smiley.pm index 70b8cef74..1697a37c1 100644 --- a/IkiWiki/Plugin/smiley.pm +++ b/IkiWiki/Plugin/smiley.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::smiley; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my %smileys; my $smiley_regexp; diff --git a/IkiWiki/Plugin/sparkline.pm b/IkiWiki/Plugin/sparkline.pm index dca755c63..1ed65e5b7 100644 --- a/IkiWiki/Plugin/sparkline.pm +++ b/IkiWiki/Plugin/sparkline.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::sparkline; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use IPC::Open2; my $match_num=qr/[-+]?[0-9]+(?:\.[0-9]+)?/; diff --git a/IkiWiki/Plugin/table.pm b/IkiWiki/Plugin/table.pm index b6f53f607..479f3d745 100644 --- a/IkiWiki/Plugin/table.pm +++ b/IkiWiki/Plugin/table.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::table; use warnings; use strict; use Encode; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "table", call => \&getsetup); diff --git a/IkiWiki/Plugin/tag.pm b/IkiWiki/Plugin/tag.pm index ecc77cbb1..d43910910 100644 --- a/IkiWiki/Plugin/tag.pm +++ b/IkiWiki/Plugin/tag.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::tag; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; my %tags; diff --git a/IkiWiki/Plugin/template.pm b/IkiWiki/Plugin/template.pm index 1b7eb91bf..57bff20ff 100644 --- a/IkiWiki/Plugin/template.pm +++ b/IkiWiki/Plugin/template.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::template; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use HTML::Template; use Encode; diff --git a/IkiWiki/Plugin/testpagespec.pm b/IkiWiki/Plugin/testpagespec.pm index a6e94dbbb..440fca33b 100644 --- a/IkiWiki/Plugin/testpagespec.pm +++ b/IkiWiki/Plugin/testpagespec.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::testpagespec; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "testpagespec", call => \&getsetup); diff --git a/IkiWiki/Plugin/teximg.pm b/IkiWiki/Plugin/teximg.pm index 57b23147e..dba5372b5 100644 --- a/IkiWiki/Plugin/teximg.pm +++ b/IkiWiki/Plugin/teximg.pm @@ -8,7 +8,7 @@ use strict; use Digest::MD5 qw(md5_hex); use File::Temp qw(tempdir); use HTML::Entities; -use IkiWiki 2.00; +use IkiWiki 3.00; my $default_prefix = <<EOPREFIX; \\documentclass{article} diff --git a/IkiWiki/Plugin/textile.pm b/IkiWiki/Plugin/textile.pm index d1b927b74..b604aa3c5 100644 --- a/IkiWiki/Plugin/textile.pm +++ b/IkiWiki/Plugin/textile.pm @@ -6,7 +6,7 @@ package IkiWiki::Plugin::textile; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use Encode; sub import { diff --git a/IkiWiki/Plugin/toc.pm b/IkiWiki/Plugin/toc.pm index 460837b1d..a585564e7 100644 --- a/IkiWiki/Plugin/toc.pm +++ b/IkiWiki/Plugin/toc.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::toc; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use HTML::Parser; sub import { diff --git a/IkiWiki/Plugin/toggle.pm b/IkiWiki/Plugin/toggle.pm index 967b07fcc..aae8cdf84 100644 --- a/IkiWiki/Plugin/toggle.pm +++ b/IkiWiki/Plugin/toggle.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::toggle; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { add_underlay("javascript"); diff --git a/IkiWiki/Plugin/txt.pm b/IkiWiki/Plugin/txt.pm index d65bb2036..8599bdc8e 100644 --- a/IkiWiki/Plugin/txt.pm +++ b/IkiWiki/Plugin/txt.pm @@ -8,7 +8,7 @@ package IkiWiki::Plugin::txt; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; use HTML::Entities; my $findurl=0; diff --git a/IkiWiki/Plugin/typography.pm b/IkiWiki/Plugin/typography.pm index e395b2143..f62be82bb 100644 --- a/IkiWiki/Plugin/typography.pm +++ b/IkiWiki/Plugin/typography.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::typography; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getopt", id => "typography", call => \&getopt); diff --git a/IkiWiki/Plugin/version.pm b/IkiWiki/Plugin/version.pm index 3526dafde..587cd55fa 100644 --- a/IkiWiki/Plugin/version.pm +++ b/IkiWiki/Plugin/version.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::version; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "version", call => \&getsetup); diff --git a/IkiWiki/Plugin/websetup.pm b/IkiWiki/Plugin/websetup.pm index 66dacfde3..95d044c08 100644 --- a/IkiWiki/Plugin/websetup.pm +++ b/IkiWiki/Plugin/websetup.pm @@ -3,7 +3,7 @@ package IkiWiki::Plugin::websetup; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "websetup", call => \&getsetup); @@ -139,7 +139,7 @@ sub showfields ($$$@) { my $value=$config{$key}; if ($info{safe} && (ref $value eq 'ARRAY' || ref $info{example} eq 'ARRAY')) { - $value=[@{$value}, "", ""]; # blank items for expansion + $value=[(ref $value eq 'ARRAY' ? @{$value} : ""), "", ""]; # blank items for expansion } if ($info{type} eq "string") { diff --git a/IkiWiki/Plugin/wikitext.pm b/IkiWiki/Plugin/wikitext.pm index 50571e524..accb03bbe 100644 --- a/IkiWiki/Plugin/wikitext.pm +++ b/IkiWiki/Plugin/wikitext.pm @@ -4,7 +4,7 @@ package IkiWiki::Plugin::wikitext; use warnings; use strict; -use IkiWiki 2.00; +use IkiWiki 3.00; sub import { hook(type => "getsetup", id => "wiki", call => \&getsetup); diff --git a/IkiWiki/UserInfo.pm b/IkiWiki/UserInfo.pm index 3423dc923..0bf100a95 100644 --- a/IkiWiki/UserInfo.pm +++ b/IkiWiki/UserInfo.pm @@ -74,24 +74,4 @@ sub is_admin ($) { return grep { $_ eq $user_name } @{$config{adminuser}}; } -# XXX deprecated, should be removed eventually -sub get_banned_users () { - my @ret; - my $userinfo=userinfo_retrieve(); - foreach my $user (keys %{$userinfo}) { - push @ret, $user if $userinfo->{$user}->{banned}; - } - return @ret; -} - -# XXX deprecated, should be removed eventually -sub set_banned_users (@) { - my %banned=map { $_ => 1 } @_; - my $userinfo=userinfo_retrieve(); - foreach my $user (keys %{$userinfo}) { - $userinfo->{$user}->{banned} = $banned{$user}; - } - return userinfo_store($userinfo); -} - 1 diff --git a/auto.setup b/auto.setup index ef0f1723c..9cf5e7725 100644 --- a/auto.setup +++ b/auto.setup @@ -40,6 +40,5 @@ IkiWiki::Setup::Automator->import( rss => 1, atom => 1, syslog => 1, - prefix_directives => 1, hardlink => 1, ) diff --git a/debian/NEWS b/debian/NEWS index a7a145d9b..6fe70c9e4 100644 --- a/debian/NEWS +++ b/debian/NEWS @@ -1,3 +1,12 @@ +ikiwiki (3.00) unstable; urgency=low + + The 3.0 release of ikiwiki changes several defaults and finishes + some transitions. You will need to modify your wikis to work with + ikiwiki 3.0. A document explaining the process is available + in </usr/share/doc/ikiwiki/html/tips/upgrade_to_3.0.html> + + -- Joey Hess <joeyh@debian.org> Tue, 23 Dec 2008 16:14:18 -0500 + ikiwiki (2.62) unstable; urgency=low TexImg standard preamble changed @@ -101,10 +110,7 @@ ikiwiki (2.40) unstable; urgency=low in their setup files. To convert your wiki to the new syntax, ikiwiki provides a new script - ikiwiki-transition. It will convert preprocessor directives in - all files given on the command line. To convert an entire wiki: - - find wikidir/ -type f -name '*.mdwn' -print0 | xargs -0 ikiwiki-transition prefix_directives + ikiwiki-transition. Even with prefix_directives disabled, ikiwiki now allows an optional '!' prefix on preprocessor directives (but still requires a space). Thus, a diff --git a/debian/changelog b/debian/changelog index 7875d425b..07062b04a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,30 @@ +ikiwiki (3.00) unstable; urgency=low + + * Remove support for GlobLists. + * Remove support for configuring allowed attachments, locked pages, + and banned users from the admin preferences page. These can only be + controlled via the setup file now. + * ikiwiki-transition moveprefs can be used to move the above + admin preferences into a setup file. + * prefix_directives and aggregate_internal are now turned on by default. + * ikiwiki-transition prefix_directives syntax changed + * googlecalendar: removed this deprecated plugin. Use htmlscrubber_skip + instead. + * embed: This plugin is deprecated, use htmlscrubber_skip instead. + Closes: ##462970. + * Version 3.00 of the plugin API. + * Replace blank OpenID placeholder logo with an unofficial OpenID + logo developed by Anna Hess. The official logo does not seem destined to + be free. + * comments: Add cache avoidance. + * htmlbalance: Demand-load HTML::TreeBuilder to avoid failing test suite + if it is not present. + * French translation update from Philippe Batailler. Closes: #510216 + * websetup: Avoid a crash when a new array setup item has been added in + a new ikiwiki release, and is thus not present in the setup file yet. + + -- Joey Hess <joeyh@debian.org> Wed, 31 Dec 2008 15:17:47 -0500 + ikiwiki (2.72) unstable; urgency=low * Avoid comments in recentchanges being broken links (smcv) diff --git a/doc/download.mdwn b/doc/download.mdwn index 1099045b5..067938f87 100644 --- a/doc/download.mdwn +++ b/doc/download.mdwn @@ -26,7 +26,7 @@ There is a backport of a recent version of ikiwiki for Debian 4.0 at Fedora versions 8 and newer have RPMs of ikiwiki available. -There is also an unofficial backport of ikiwiki for Ubuntu Hardy, provided by +There is also an unofficial backport of ikiwiki for Ubuntu Intrepid, provided by [[Paweł_Tęcza|users/ptecza]], at [http://gpa.net.icm.edu.pl/ubuntu/](http://gpa.net.icm.edu.pl/ubuntu/index-en.html). diff --git a/doc/ikiwiki-transition.mdwn b/doc/ikiwiki-transition.mdwn index 8b7c3579f..18836d5f5 100644 --- a/doc/ikiwiki-transition.mdwn +++ b/doc/ikiwiki-transition.mdwn @@ -8,24 +8,23 @@ ikiwiki-transition type ... # DESCRIPTION -`ikiwiki-transition` aids in converting wiki pages when -there's a major change in ikiwiki syntax. It also handles other transitions -not involving wiki pages. +`ikiwiki-transition` aids in converting wiki pages when there's a major +change in ikiwiki syntax. It also handles other transitions not involving +wiki pages. -# prefix_directives +# prefix_directives your.setup -The `prefix_directives` mode converts the specified ikiwiki page from -the old preprocessor directive syntax, requiring a space, to the new -syntax, prefixed by '!'. +The `prefix_directives` mode converts all pages from the old preprocessor +directive syntax, requiring a space, to the new syntax, prefixed by '!'. Preprocessor directives which already use the new syntax will remain unchanged. -Note that if the page contains wiki links with spaces, which some +Note that if a page contains wiki links with spaces, which some older versions of ikiwiki accepted, the prefix_directives transition will treat these as preprocessor directives and convert them. -# setupformat +# setupformat your.setup The `setupformat` mode converts a setup file from using a single `wrappers` block to using `cgi_wrapper`, `git_wrapper`, etc. @@ -33,25 +32,30 @@ to using `cgi_wrapper`, `git_wrapper`, etc. Note that all comments and any unusual stuff like perl code in the setup file will be lost, as it is entirely rewritten by the transition. -# aggregateinternal +# aggregateinternal your.setup The `aggregateinternal` mode moves pages aggregated by the aggregate plugin so that the `aggregateinternal` option can be enabled. -# indexdb +# moveprefs your.setup + +Moves values that used to be admin preferences into the setup file. + +Note that all comments and any unusual stuff like perl code in the setup +file will be lost, as it is entirely rewritten by the move. + +# indexdb srcdir The `indexdb` mode handles converting a plain text `.ikiwiki/index` file to -a binary `.ikiwiki/indexdb`. In this mode, you should specify the srcdir of -the wiki as the second parameter. You do not normally need to run +a binary `.ikiwiki/indexdb`. You do not normally need to run `ikiwiki-transition indexdb`; ikiwiki will automatically run it as necessary. -# hashpassword +# hashpassword srcdir The `hashpassword` mode forces any plaintext passwords stored in the `.ikiwiki/userdb` file to be replaced with password hashes. (The -Authen::Passphrase perl module is needed to do this.) In this mode, you -should specify the srcdir of the wiki as the second parameter. +Authen::Passphrase perl module is needed to do this.) If this is not done explicitly, a user's plaintext password will be automatically converted to a hash when a user logs in for the first time diff --git a/doc/ikiwiki/directive.mdwn b/doc/ikiwiki/directive.mdwn index c4342dee8..fb88aa72d 100644 --- a/doc/ikiwiki/directive.mdwn +++ b/doc/ikiwiki/directive.mdwn @@ -28,15 +28,13 @@ of text with triple-quotes: 3. "baz" """]] -ikiwiki also has an older syntax for directives, which requires a -space in directives to distinguish them from [[wikilinks|ikiwiki/wikilink]]. -This syntax has several disadvantages: it requires a space after directives -with no parameters (such as `\[[pagecount ]]`), and it prohibits spaces in -[[wikilinks|ikiwiki/wikilink]]. ikiwiki now provides the `!`-prefixed syntax -shown above as the preferred alternative. However, ikiwiki still supports -wikis using the older syntax, if the `prefix_directives` option is not enabled. -For backward compatibility with existing wikis, this option currently -defaults to off, so ikiwiki supports the old syntax. +ikiwiki also has an older syntax for directives, which requires a space in +directives to distinguish them from [[wikilinks|ikiwiki/wikilink]]. This +syntax has several disadvantages: it requires a space after directives with +no parameters (such as `\[[pagecount ]]`), and it prohibits spaces in +[[wikilinks|ikiwiki/wikilink]]. ikiwiki now provides the `!`-prefixed +syntax shown above as default. However, ikiwiki still supports wikis using +the older syntax, if the `prefix_directives` option is disabled. [[!if test="enabled(listdirectives)" then=""" Here is a list of currently available directives in this wiki: diff --git a/doc/ikiwiki/pagespec.mdwn b/doc/ikiwiki/pagespec.mdwn index d4dd265cc..86abe5745 100644 --- a/doc/ikiwiki/pagespec.mdwn +++ b/doc/ikiwiki/pagespec.mdwn @@ -72,22 +72,3 @@ filenames of the pages in the wiki, so a pagespec "foo" used on page "a/b" will not match a page named "a/foo" or "a/b/foo". To match relative to the directory of the page containing the pagespec, you can use "./". For example, "./foo" on page "a/b" matches page "a/foo". - -## Old syntax - -The old PageSpec syntax was called a "GlobList", and worked differently in -two ways: - -1. "and" and "or" were not used; any page matching any item from the list - matched. -2. If an item was prefixed with "`!`", then no page matching that item - matched, even if it matched an earlier list item. - -For example, here is the old way to match all pages except for the SandBox -and Discussion pages: - - * !SandBox !*/Discussion - -Using this old syntax is still supported. However, the old syntax is -deprecated and will be removed at some point, and using the new syntax is -recommended. diff --git a/doc/news/ikiwiki_version_3.0.mdwn b/doc/news/ikiwiki_version_3.0.mdwn new file mode 100644 index 000000000..7ca636cf2 --- /dev/null +++ b/doc/news/ikiwiki_version_3.0.mdwn @@ -0,0 +1,42 @@ +Ikiwiki has reached version 3.0 and entered a new phase in its +[[development_cycle|roadmap]]. + +The 3.0 release of ikiwiki changes several defaults and finishes +some transitions. You will need to modify your wikis to work with +ikiwiki 3.0. A document explaining the process is available +in [[tips/upgrade_to_3.0]]. + +The highlights of the changes in version 3.0 include: + +* Support for uploading [[attachments|plugins/attachment]]. +* Can [[plugins/rename]] and [[plugins/remove]] pages and files via the web. +* [[Web_based_setup|plugins/websetup]]. +* Blog-style [[plugins/comments]] as an alternative to Discussion pages. +* Many other new plugins including [[plugins/htmlbalance]], [[plugins/format]], + [[plugins/progress]], [[plugins/color]], [[plugins/autoindex]], + [[plugins/cutpaste]], [[plugins/hnb]], [[plugins/creole]], [[plugins/txt]], + [[plugins/amazon_s3]], [[plugins/pinger]], [[plugins/pingee]], + [[plugins/edittemplate]] +* The RecentChanges page is compiled statically, not generated from the CGI. +* Support for additional revision control systems: [[rcs/bzr]], + [[rcs/monotone]] +* Support for [[tips/untrusted_git_push]]. +* A new version (3.00) of the plugin API, exporting additional + commonly used functions from `IkiWiki.pm`. +* Nearly everything in ikiwiki is now a plugin, from WikiLinks to + page editing, to RecentChanges. +* Far too many bug fixes, features, and enhancements to list here. + +Thanks to the many contributors to ikiwiki 3.0, including: + + Jelmer Vernooij, Recai Oktaş, William Uther, Simon McVittie, Axel Beckert, + Bernd Zeimetz, Gabriel McManus, Paweł Tęcza, Peter Simons, Manoj + Srivastava, Patrick Winnertz, Jeremie Koenig, Josh Triplett, thm, Michael + Gold, Jason Blevins, Alexandre Dupas, Henrik Brix Andersen, Thomas Keller, + Enrico Zini, intrigeri, Scott Bronson, Brian May, Adeodato Simó, Brian + Downing, Nis Martensen. (And anyone I missed.) + +Also, thanks to the users, bug submitters, and documentation wiki editors. +Without you, ikiwiki would just be a little thing I use for my home page. + +--[[Joey]] diff --git a/doc/plugins/aggregate.mdwn b/doc/plugins/aggregate.mdwn index 6fc87853b..e2efcd83f 100644 --- a/doc/plugins/aggregate.mdwn +++ b/doc/plugins/aggregate.mdwn @@ -5,10 +5,6 @@ This plugin allows content from other feeds to be aggregated into the wiki. To specify feeds to aggregate, use the [[ikiwiki/directive/aggregate]] [[ikiwiki/directive]]. -New users of aggregate should enable the `aggregateinternal => 1` option in the -.setup file. If you don't do so, you will need to enable the [[html]] plugin -as well as aggregate itself, since feed entries will be stored as HTML. - The [[meta]] and [[tag]] plugins are also recommended. Either the [[htmltidy]] or [[htmlbalance]] plugin is suggested, since feeds can easily contain html problems, some of which these plugins can fix. @@ -27,37 +23,19 @@ visit is `http://whatever/ikiwiki.cgi?do=aggregate_webtrigger`. Anyone can visit the url to trigger an aggregation run, but it will only check each feed if its `updateinterval` has passed. -## internal pages and `aggregateinternal` +## aggregated pages This plugin creates a page for each aggregated item. If the `aggregateinternal` option is enabled in the setup file (which is -recommended), aggregated pages are stored in the source directory with a +the default), aggregated pages are stored in the source directory with a "._aggregated" extension. These pages cannot be edited by web users, and do not generate first-class wiki pages. They can still be inlined into a blog, but you have to use `internal` in [[PageSpecs|IkiWiki/PageSpec]], like `internal(blog/*)`. -For backward compatibility, the default is that these pages have the -".html" extension, and are first-class wiki pages -- each one generates -a separate HTML page in the output, and they can even be edited. - -That turns out to not be ideal for aggregated content, because publishing -files for each of those pages is a waste of disk space and CPU, and you -probably don't want to allow them to be edited. So, there is an alternative -method that can be used (and is recommended), turned on by the -`aggregateinternal` option in the setup file. - -If you are already using aggregate and want to enable `aggregateinternal`, -you should follow this process: - -1. Update all [[PageSpecs|ikiwiki/PageSpec]] that refer to the aggregated - pages -- such as those in inlines. Put "internal()" around globs - in those PageSpecs. For example, if the PageSpec was `foo/*`, it should - be changed to `internal(foo/*)`. This has to be done because internal - pages are not matched by regular globs. -2. Turn on `aggregateinternal` in the setup file. -3. Use [[ikiwiki-transition]] to rename all existing aggregated `.html` - files in the srcdir. The command to run is - `ikiwiki-transition aggregateinternal $setupfile`, -4. Refresh the wiki. (`ikiwiki -setup your.setup -refresh`) +If `aggregateinternal` is disabled, you will need to enable the [[html]] +plugin as well as aggregate itself, since feed entries will be stored as +HTML, and as first-class wiki pages -- each one generates +a separate HTML page in the output, and they can even be edited. This +option is provided only for backwards compatability. diff --git a/doc/plugins/contrib.mdwn b/doc/plugins/contrib.mdwn index 7a28edaba..e22b13f71 100644 --- a/doc/plugins/contrib.mdwn +++ b/doc/plugins/contrib.mdwn @@ -2,6 +2,6 @@ Contributed [[plugins]]: (See [[install]] for installation help.) -[[!inline pages="plugins/contrib/* !*/Discussion" +[[!inline pages="plugins/contrib/* and !*/Discussion" feedpages="created_after(plugins/contrib/navbar)" archive="yes" rootpage="plugins/contrib" postformtext="Add a new plugin named:" show=0]] diff --git a/doc/plugins/discussion.mdwn b/doc/plugins/discussion.mdwn index 70157f1e2..854307a98 100644 --- a/doc/plugins/discussion.mdwn +++ b/doc/plugins/discussion.mdwn @@ -34,12 +34,3 @@ Any objections to listing plugins alphabetically rather than by creation date? >> "recently changed" list with the 10 most recently changed plugins >> at the top. That would allow what you suggested, but still allow >> the main list to be alphabetical. -- [[Will]] - -How about adding a deprecated tag in order to clean up the plugin list? - -> AFAIK it's currently the only one. --[[Joey]] - -For instance [[googlecalendar]] is listed as plugin but should probably be removed from Ikiwiki in a future major version (v3?). - --- [[AlexandreDupas]] - diff --git a/doc/plugins/embed.mdwn b/doc/plugins/embed.mdwn index 1d43061e0..85592cb72 100644 --- a/doc/plugins/embed.mdwn +++ b/doc/plugins/embed.mdwn @@ -13,6 +13,14 @@ In the examples below, the parts of the html that you can change are denoted with "XXX"; everything else must appear exactly as shown to be accepted by the plugin. +**This plugin is deprecated.** Rather than relying on these complex lists +of safe content, which constantly fall out of date, you're recommended to +configure the [[htmlscrubber]] to not scrub some pages, which only trusted +users can edit. Then you can embed anything from anywhere on those pages. +See [[tips/embedding_content]] for details and examples. +This plugin's lists of safe embedded content will not be maintained, and +the plugin will be removed in a future release. + ## google maps Use html like this to embed a map: diff --git a/doc/plugins/googlecalendar.mdwn b/doc/plugins/googlecalendar.mdwn deleted file mode 100644 index bca2ae74f..000000000 --- a/doc/plugins/googlecalendar.mdwn +++ /dev/null @@ -1,20 +0,0 @@ -[[!template id=plugin name=googlecalendar author="[[Joey]]"]] -[[!tag type/special-purpose]] - -*Note*: This plugin is deprecated. Please switch to the [[embed]] plugin. - -This plugin allows embedding a google calendar iframe in the wiki. -Normally, if the [[htmlscrubber]] is enabled, such iframes are scrubbed out -of the wiki content since they're not very safe if created by malicious -users. But some iframes are legitimate, and safe, if you trust the embedded -content. This plugin is an example of how to deal with this in ikiwiki. - -Example use: - - \[[!googlecalendar html=""" - <iframe src="http://www.google.com/calendar/embed?src=adkrdken8mupngh13jshlbenoc%40group.calendar.google.com&title=OSEL%20Calendar&chrome=NAVIGATION&bgcolor=%2371d873&height=588" style=" border-width:0 " width="480" frameborder="0" height="588"></iframe> - """]] - -The iframe should be the one provided by google. Note that it's used in a -way that avoids cross-site scripting attacks, assuming you trust google's -content. diff --git a/doc/plugins/htmlscrubber.mdwn b/doc/plugins/htmlscrubber.mdwn index b9f7e6d22..c59b46e14 100644 --- a/doc/plugins/htmlscrubber.mdwn +++ b/doc/plugins/htmlscrubber.mdwn @@ -32,10 +32,10 @@ other HTML-related functionality, such as whether [[meta]] allows potentially unsafe HTML tags. The `htmlscrubber_skip` configuration setting can be used to skip scrubbing -of some pages. Set it to a [[ikiwiki/PageSpec]], such as "!*/Discussion", and pages -matching that can have all the evil CSS, JavsScript, and unsafe html -elements you like. One safe way to use this is to use [[lockedit]] to lock -those pages, so only admins can edit them. +of some pages. Set it to a [[ikiwiki/PageSpec]], such as "!*/Discussion", +and pages matching that can have all the evil CSS, JavsScript, and unsafe +html elements you like. One safe way to use this is to use [[lockedit]] to +lock those pages, so only admins can edit them. ---- diff --git a/doc/plugins/lockedit.mdwn b/doc/plugins/lockedit.mdwn index d2e98e07a..c8f64ea47 100644 --- a/doc/plugins/lockedit.mdwn +++ b/doc/plugins/lockedit.mdwn @@ -4,7 +4,7 @@ This plugin allows the administrator of a wiki to lock some pages, limiting who can edit them using the online interface. This doesn't prevent anyone who can commit to the underlying revision control system from editing the -pages, however. +pages, however. (Unless you set up [[tips/untrusted_git_push]].) The `locked_pages` setting configures what pages are locked. It is a [[ikiwiki/PageSpec]], so you have lots of control over what kind of pages diff --git a/doc/plugins/write.mdwn b/doc/plugins/write.mdwn index d024a5dd4..eb50ca4ef 100644 --- a/doc/plugins/write.mdwn +++ b/doc/plugins/write.mdwn @@ -19,7 +19,7 @@ that can be fleshed out to make a useful plugin. `IkiWiki::Plugin::pagecount` is another simple example. All perl plugins should `use IkiWiki` to import the ikiwiki plugin interface. It's a good idea to include the version number of the plugin interface that your plugin -expects: `use IkiWiki 2.00`. +expects: `use IkiWiki 3.00`. An external plugin is an executable program. It can be written in any language. Its interface to ikiwiki is via XML RPC, which it reads from @@ -442,7 +442,7 @@ describes the plugin as a whole. For example: To import the ikiwiki plugin interface: - use IkiWiki '2.00'; + use IkiWiki '3.00'; This will import several variables and functions into your plugin's namespace. These variables and functions are the ones most plugins need, @@ -497,7 +497,7 @@ use the following hashes, using a page name as the key: destination file. * `%pagesources` contains the name of the source file for each page. -Also, the %IkiWiki::version variable contains the version number for the +Also, the `%IkiWiki::version` variable contains the version number for the ikiwiki program. ### Library functions diff --git a/doc/plugins/write/tutorial.mdwn b/doc/plugins/write/tutorial.mdwn index e1b34b800..5345f71f2 100644 --- a/doc/plugins/write/tutorial.mdwn +++ b/doc/plugins/write/tutorial.mdwn @@ -27,7 +27,7 @@ important one is the IkiWiki module. use warnings; use strict; - use IkiWiki 2.00; + use IkiWiki 3.00; Ok, boilerplate is out of the way. Now to add the one function that ikiwiki expects to find in any module: `import`. The import function is called when diff --git a/doc/roadmap.mdwn b/doc/roadmap.mdwn index 9ed5742eb..2f79f7978 100644 --- a/doc/roadmap.mdwn +++ b/doc/roadmap.mdwn @@ -7,10 +7,7 @@ This is the roadmap for ikiwiki development. Released 29 April 2006. -The 1.x series changed a great deal over the more than 50 releases in its -lifetime. It is now in maintenance mode, only security issues or really bad -bugs will be fixed in 1.x going forward. 1.x will stop being supported with -the release of 3.0. +The 1.x series is no longer supported. ---- @@ -32,27 +29,43 @@ the release of 3.0. Released 30 April 2007. -The 2.x series is expected to undergo continuing development for some time, -adding improvements and new features, but avoiding changes that break -backwards compatability. +The 2.x series is now in maintenance mode. Only security fixes and fixes for +really bad bugs will be applied going forward. ---- # 3.0 -Version 3.0 will be an opportunity to make significant transitions. - -* Default to using `prefix_directives`. -* Default to using `aggregateinternal`. -* Remove deprecated prefs form settings for `allowed_attachments` and - `locked_pages`. -* Finalise a new version of the plugin API, exporting additional commonly - used functions from IkiWiki.pm. See [[todo/firm_up_plugin_interface]] - -It will include a vast number of new features, bugfixes, and other -improvements, far too many to list here. - -Release is planned for fall^Wlate, 2008. +Version 3.0 is an opportunity to make significant transitions. +Read [[tips/upgrade_to_3.0]] for the steps you will need to +follow when upgrading your wiki to this version. + +The highlights of the changes in version 3.0 include: + +* Support for uploading [[attachments|plugins/attachment]]. +* Can [[plugins/rename]] and [[plugins/remove]] pages and files via the web. +* [[Web_based_setup|plugins/websetup]]. +* Blog-style [[plugins/comments]] as an alternative to Discussion pages. +* Many other new plugins including [[plugins/htmlbalance]], [[plugins/format]], + [[plugins/progress]], [[plugins/color]], [[plugins/autoindex]], + [[plugins/cutpaste]], [[plugins/hnb]], [[plugins/creole]], [[plugins/txt]], + [[plugins/amazon_s3]], [[plugins/pinger]], [[plugins/pingee]], + [[plugins/edittemplate]] +* The RecentChanges page is compiled statically, not generated from the CGI. +* Support for additional revision control systems: [[rcs/bzr]], + [[rcs/monotone]] +* Support for [[tips/untrusted_git_push]]. +* A new version (3.00) of the plugin API, exporting additional + commonly used functions from `IkiWiki.pm`. +* Nearly everything in ikiwiki is now a plugin, from WikiLinks to page + editing, to RecentChanges. +* Far too many bug fixes, features, and enhancements to list here. + +Released 31 December, 2008. + +The 3.x series is expected to undergo continuing development for some time, +adding improvements and new features, but avoiding changes that break +backwards compatability. ---- diff --git a/doc/security.mdwn b/doc/security.mdwn index b067a8a16..939d65d01 100644 --- a/doc/security.mdwn +++ b/doc/security.mdwn @@ -416,4 +416,4 @@ attack. intrigeri discovered this problem on 12 Nov 2008 and a patch put in place later that day, in version 2.70. The fix was backported to testing as version -2.53.2, and to stable as version 1.33.7. +2.53.3, and to stable as version 1.33.7. diff --git a/doc/tips/embedding_content.mdwn b/doc/tips/embedding_content.mdwn new file mode 100644 index 000000000..142acd16e --- /dev/null +++ b/doc/tips/embedding_content.mdwn @@ -0,0 +1,35 @@ +Content from sites such as YouTube can be embedded into a web page. Maybe +you want to do this. But you'll find that the [[plugins/htmlscrubber]] +doesn't let you. It blocks the tags used to embed such content, because +they can be abused in many evil ways. + +Some plugins have been written to try to work around this problem, by +whitelisting the html needed to embed things from a few sites like Google +maps, calendar, videos, and YouTube. The problem with these plugins is that +they have to be kept up to date to add new sites, and follow changes to the +html such sites use for embedding. + +(Digression: The real problem with the plugins is that they hide the +underlying trust relationship. If you decide to embed html from a site, +you'd better trust that site. And if ikiwiki lets you enter such html, it +needs to trust you.) + +The [[plugins/htmlscrubber]] offers a different way around this problem. +You can configure it to skip scrubbing certian pages, so that content from +elsewhere can be embedded on those pages. Then use [[plugins/lockedit]] +to limit who can edit those unscrubbed pages. + +For example, suppose your blog is all under `blog/*`, and you want +only yourself to be able to post there, and you'd like to be able to embed +youtube videos etc in your blog. Other users can edit some pages in the +wiki (Discussion pages, say), but not your blog posts. Then you could configure +ikiwiki as follows: + + htmlscrubber_skip => 'blog/* and !*/Discussion', + locked_pages => '!*/Discussion', + +More simply, you might want to allow yourself to embed content anywhere +on the wiki, but scrub content written on Discussion pages: + + htmlscrubber_skip => '!*/Discussion', + locked_pages => '!*/Discussion', diff --git a/doc/tips/github.mdwn b/doc/tips/github.mdwn new file mode 100644 index 000000000..cd1b479d1 --- /dev/null +++ b/doc/tips/github.mdwn @@ -0,0 +1,67 @@ +Here's how to set up a static wiki or blog using ikiwiki with no hosting +feeds. Everything is hosted on github, both the git repository and the web +site. Your laptop is used to generate and publish changes to it. + +This is possible because github now supports +[github pages](http://github.com/blog/272-github-pages). + +Note that github limits free accounts to 100 mb of git storage. It's +unlikely that a small wiki or blog will outgrow this, but we are keeping +two copies of the website in git (source and the compiled site), and all +historical versions too. So it could happen. If it does, you can pay github +for more space, or you can migrate your site elsewhere. + +## github setup + +* Go to [github](http://github.com/) and sign up for an account, if you + haven't already. +* Be sure to add your laptop's ssh key to it so you can push + to github. +* Create a repository on githib named `$YOU.github.com`, substituting your + username. This repository will be used to publish your compiled website. +* Create a repository on github named `$YOU` (or anything else you like). + This repository will be used to publish the source of your website. + This is actually optional. + +## local setup + +* On your laptop, create two empty git repositories to correspond to the + github repositories: + YOU=# your github username here + mkdir ~/$YOU.github.com + cd ~/$YOU.github.com + git init + git remote add origin git@github.com:$YOU/$YOU.github.com.git + mkdir ~/$YOU + cd ~/$YOU + git init + git remote add origin git@github.com:$YOU/$YOU.git +* Add some wiki pages, such as an `index.mdwn`, to `~/$YOU`, and check them + in and commit them to git. You need something to push to github. Run + `git push origin master` to push the source pages to github. + +## publishing to github + +* Now build your wiki with a command such as: + ikiwiki ~/$YOU ~/$YOU.github.com --refresh +* Each time you build the wiki you will need to commit the changes + to git, and push the compiled pages to github: + cd ~/YOU.github.com + git add . + git commit -a -m update + git push origin master + +Your wiki will show up at `http://$YOU.github.com/` within ten +minutes after the first push, and changes you push to it from then on +should show up immediatly. + +## enhancements + +You can follow the instructions in [[laptop_wiki_with_git]] to set up an +editable version of your wiki on your laptop. Then you can use the web +interface for editing. You'll still need to follow the instructions above +to publish your changes to github. + +It would also be possible to teach ikiwiki to push compiled pages to github +itself via a plugin, as was done with the [[plugins/amazon_s3]] plugin. Not +done yet! diff --git a/doc/tips/upgrade_to_3.0.mdwn b/doc/tips/upgrade_to_3.0.mdwn new file mode 100644 index 000000000..b8a75aeca --- /dev/null +++ b/doc/tips/upgrade_to_3.0.mdwn @@ -0,0 +1,95 @@ +Version 3.0 of ikiwiki makes some significant changes, which +you will need to deal with when upgrading from ikiwiki 2.x. + +[[!toc ]] + +## setup file format change + +The layout of the setup file changed in a significant way in version 2.60 +of ikiwiki. If you have not changed yours to the new format, now would be a +good time to do so. Some new features, like the [[plugins/websetup]] +interface, need the new format setup file. + +You can convert old setup files into the new format by running +`ikiwiki-transition setupformat your.setup` + +## moving settings from Preferences page + +The admin preferences page used to have settings for allowed attachments, +locked pages, and banned users. These three settings have moved to the +setup file, and will no longer appear on the admin preferences page once +your wiki is upgraded to 3.0. + +You can move these preferences into the setup file by running +`ikiwiki-transition moveprefs your.setup; ikiwiki -setup your.setup -refresh -wrappers` + +(Make sure you have converted the setup file to the new format first.) + +## prefix directives + +In 3.0, the syntax ikiwiki uses for [[directives|ikiwiki/directive]] has +changed, requiring that the directive start with a bang: + + \[[!directive ...]] + +If you would like to keep the old syntax, it is still supported, add the +following to your setup file: + + prefix_directives => 0, + +To convert to the new syntax, run +`ikiwiki-transition prefix_directives your.setup` + +(And then commit the changes it makes to pages in your srcdir.) + +## GlobLists + +In 3.0, the old "GlobList" syntax for [[PageSpecs|ikiwiki/PageSpec]] is no +longer supported. A GlobList contains multiple term, but does not separate +them with "and" or "or": + + sandbox !*/Discussion + +To convert this to a modern PageSpec, simply add "and" or "or" as +appropriate between terms: + + sandbox and !*/Discussion + +GlobLists have been deprecated for more than two years. If your wiki dates +to the ikiwiki 1.0 era, you should check it for any that might have lurked +unnoticed in it since back then. Ikiwiki version 2.72 will print warnings +about any GlobLists it sees. + +## aggregateinternal + +If your wiki uses the [[aggregate|plugins/aggregate]] plugin, it will start +to aggregate feeds to special "internal" pages. + +If you don't want this change, you can add the following to your setup +file: + + aggregateinternal => 0, + +Otherwise, follow this procedure to upgrade a wiki using the aggregate plugin: + +1. Update all [[PageSpecs|ikiwiki/PageSpec]] that refer to the aggregated + pages -- such as those in inlines. Put "internal()" around globs + in those PageSpecs. For example, if the PageSpec was `foo/*`, it should + be changed to `internal(foo/*)`. This has to be done because internal + pages are not matched by regular globs. +2. Use [[ikiwiki-transition]] to rename all existing aggregated `.html` + files in the srcdir. The command to run is + `ikiwiki-transition aggregateinternal your.setup`, +3. Refresh the wiki. (`ikiwiki -setup your.setup -refresh`) + +## embed / googlecalendar + +The googlecalendar plugin has been deprecated for a long time, and is +removed in 3.0. + +The embed plugin is also now deprecated, though not yet removed. + +If you use either plugin to embed content from google, youtube, etc, +into your wiki, you should instead configure the [[plugins/htmlscrubber]] +to skip sanitising some pages, via the `htmlscrubber_skip` setting. +See [[embedding_content]] for examples. diff --git a/doc/todo/firm_up_plugin_interface.mdwn b/doc/todo/firm_up_plugin_interface.mdwn index c2e190884..c7553f7dd 100644 --- a/doc/todo/firm_up_plugin_interface.mdwn +++ b/doc/todo/firm_up_plugin_interface.mdwn @@ -92,3 +92,5 @@ Probably needs to evolve more and be more widely used before being exported. * %IkiWiki::pagecase (aggregate) * %IkiWiki::backlinks (pagestats) + +[[done]] (until 4.0).. diff --git a/doc/todo/need_global_renamepage_hook.mdwn b/doc/todo/need_global_renamepage_hook.mdwn index 8265497ae..f4e18baa2 100644 --- a/doc/todo/need_global_renamepage_hook.mdwn +++ b/doc/todo/need_global_renamepage_hook.mdwn @@ -25,7 +25,7 @@ It may seem like a corner case, but I want to be very careful when deleting files automatically in `srcdir`, which is not always under version control. -As an sad workaround, I can still disable any deletion in `srcdir` +As a sad workaround, I can still disable any deletion in `srcdir` when it is not under version control. But I think ikiwiki deserves a global `renamepage` hook that would be run once per rename operation. @@ -51,3 +51,7 @@ would solve my problem. Hmmm? --[[intrigeri]] > It might make sense to rename `renamepage` to `renamelink` to make it > clearer what it does. (I'm not very worried about this breaking things, at > this point.) --[[Joey]] + +>> In my `po` branch, I renamed `renamepage` to `renamelink`, and +>> created a `rename` hook that is passed a reference to `@torename`. +>> --[[intrigeri]] diff --git a/doc/users/smcv/gallery.mdwn b/doc/users/smcv/gallery.mdwn new file mode 100644 index 000000000..40e9f6279 --- /dev/null +++ b/doc/users/smcv/gallery.mdwn @@ -0,0 +1,266 @@ +[[!template id=plugin name=smcvgallery author="[[Simon_McVittie|smcv]]"]] +[[!tag type/chrome]] + +This plugin has not yet been written; this page is an experiment in +design-by-documentation :-) + +## Requirements + +This plugin formats a collection of images into a photo gallery, +in the same way as many websites: good examples include the +PHP application [Gallery](http://gallery.menalto.com/), Flickr, +and Facebook's Photos "application". + +The web UI I'm trying to achieve consists of one +[HTML page of thumbnails](http://www.pseudorandom.co.uk/2008/2008-03-08-panic-cell-gig/) +as an entry point to the gallery, where each thumbnail +links to +[a "viewer" HTML page](http://www.pseudorandom.co.uk/2008/2008-03-08-panic-cell-gig/img_0068/) +with a full size image, next/previous thumbnail links, and [[plugins/comments]]. + +(The Summer of Code [[plugins/contrib/gallery]] plugin does the +next/previous UI in Javascript using Lightbox, which means that +individual photos can't be bookmarked in a meaningful way, and +the best it can do as a fallback for non-Javascript browsers +is to provide a direct link to the image.) + +Other features that would be good to have: + +* minimizing the number of separate operations needed to make a gallery - + editing one source file per gallery is acceptable, editing one + source file per photo is not + +* keeping photos outside source code control, for instance in an + underlay + +* assigning [[tags|ikiwiki/directive/tag]] to photos, providing a + superset of Facebook's "show tagged photos of this person" functionality + +* constructing galleries entirely via the web by uploading attachments + +* inserting grouping (section headings) within a gallery; as in the example + linked above, I'd like this to split up the thumbnails but not the + next/previous trail + +* rendering an `<object>/<embed>` arrangement to display videos, and possibly + thumbnailing them in the same way as totem-video-thumbnailer + (my camera can record short videos, so some of my web photo galleries contain + them) + +My plan is to have these directives: + +* \[[!gallery]] registers the page it's on as a gallery, and displays all photos + that are part of this gallery but not part of a \[[!gallerysection]] (below). + + All images (i.e. `*.png *.jpg *.gif`) that are attachments to the gallery page + or its subpages are considered to be part of the gallery. + + Optional arguments: + + * filter="[[ikiwiki/PageSpec]]": only consider images to be part of the + gallery if they also match this filter + + * sort="date|filename": order in which to sort the images + +* \[[!gallerysection filter="[[ikiwiki/PageSpec]]"]] displays all photos in the + gallery that match the filter + +So, [the gallery I'm using as an example](http://www.pseudorandom.co.uk/2008/2008-03-08-panic-cell-gig/) +could look something like this: + + \[[!gallery]] + <!-- replaced with one uncategorized photo --> + + # Gamarra + + \[[!gallerysection filter="link(sometag)"]] + <!-- all the Gamarra photos --> + + # Smokescreen + + \[[!gallerysection filter="link(someothertag)"]] + <!-- all the Smokescreen photos --> + + <!-- ... --> + +## Implementation ideas + +The photo galleries I have at the moment, like the Panic Cell example above, +are made by using an external script to parse XML gallery descriptions (lists +of image filenames, with metadata such as titles), and using this to write IkiWiki +markup into a directory which is then used as an underlay. This is a hack, but it +works. The use of XML is left over from a previous attempt at solving the same +problem using Django. + +The next/previous part this plugin overlaps with [[todo/wikitrails]]. + +A \[[!galleryimg]] directive to assign metadata to images is probably necessary, so +the gallery page can contain something like: + + \[[!galleryimg p1010001.jpg title="..." caption="..." tags="foo"]] + \[[!galleryimg p1010002.jpg title="..." caption="..." tags="foo bar"]] + +Making the viewer pages could be rather tricky. + +One possibility is to write out the viewer pages as a side-effect of preprocessing +the \[[!gallery]] directive. The proof-of-concept implementation below does this. +However, this does mean the viewer pages can't have tags or metadata of their own +and can't be matched by [[pagespecs|ikiwiki/pagespec]] or +[[wikilinks|ikiwiki/wikilink]]. It might be possible to implement tagging by +using \[[!galleryimg]] to assign the metadata to the *images* instead of their +viewers, + +Another is to synthesize source pages for the viewers. This means they can have +tags and metadata, but trying to arrange for them to be scanned etc. correctly +without needing another refresh run is somewhat terrifying. +[[plugins/autoindex]] can safely create source pages because it runs in +the refresh hook, but I don't really like the idea of a refresh hook that scans +all source pages to see if they contain \[[!gallery]]... + +Making the image be the source page (and generate HTML itself) would be possible, +but I wouldn't want to generate a HTML viewer for every `.jpg` on a site, so +either the images would have to have a special extension (awkward for uploads from +Windows users) or the plugin would have to be able to change whether HTML was +generated in some way (not currently possible). + +## Proof-of-concept + + #!/usr/bin/perl + package IkiWiki::Plugin::gallery; + + use warnings; + use strict; + use IkiWiki 2.00; + + sub import { + hook(type => "getsetup", id => "gallery", call => \&getsetup); + hook(type => "checkconfig", id => "gallery", call => \&checkconfig); + hook(type => "preprocess", id => "gallery", + call => \&preprocess_gallery, scan => 1); + hook(type => "preprocess", id => "gallerysection", + call => \&preprocess_gallerysection, scan => 1); + hook(type => "preprocess", id => "galleryimg", + call => \&preprocess_galleryimg, scan => 1); + } + + sub getsetup () { + return + plugin => { + safe => 1, + rebuild => undef, + }, + } + + sub checkconfig () { + } + + # page that is a gallery => array of images + my %galleries; + # page that is a gallery => array of filters + my %sections; + # page that is an image => page name of generated "viewer" + my %viewers; + + sub preprocess_gallery { + # \[[!gallery filter="!*/cover.jpg"]] + my %params=@_; + + my $subpage = qr/^\Q$params{page}\E\//; + + my @images; + + foreach my $page (keys %pagesources) { + # Reject anything not a subpage or attachment of this page + next unless $page =~ $subpage; + + # Reject non-images + # FIXME: hard-coded list of extensions + next unless $page =~ /\.(jpg|gif|png|mov)$/; + + # Reject according to the filter, if any + next if (exists $params{filter} && + !pagespec_match($page, $params{filter}, + location => $params{page})); + + # OK, we'll have that one + push @images, $page; + + my $viewername = $page; + $viewername =~ s/\.[^.]+$//; + $viewers{$page} = $viewername; + + my $filename = htmlpage($viewername); + will_render($params{page}, $filename); + } + + $galleries{$params{page}} = \@images; + + # If we're just scanning, don't bother producing output + return unless defined wantarray; + + # actually render the viewers + foreach my $img (@images) { + my $filename = htmlpage($viewers{$img}); + debug("rendering image viewer $filename for $img"); + writefile($filename, $config{destdir}, "# placeholder"); + } + + # display a list of "loose" images (those that are in no section); + # this works because we collected the sections' filters during the + # scan stage + + my @loose = @images; + + foreach my $filter (@{$sections{$params{page}}}) { + my $_; + @loose = grep { !pagespec_match($_, $filter, + location => $params{page}) } @loose; + } + + my $_; + my $ret = "<ul>\n"; + foreach my $img (@loose) { + $ret .= "<li>"; + $ret .= "<a href=\"" . urlto($viewers{$img}, $params{page}); + $ret .= "\">$img</a></li>\n" + } + return "$ret</ul>\n"; + } + + sub preprocess_gallerysection { + # \[[!gallerysection filter="friday/*"]] + my %params=@_; + + # remember the filter for this section so the "loose images" section + # won't include these images + push @{$sections{$params{page}}}, $params{filter}; + + # If we're just scanning, don't bother producing output + return unless defined wantarray; + + # this relies on the fact that we ran preprocess_gallery once + # already, during the scan stage + my @images = @{$galleries{$params{page}}}; + @images = grep { pagespec_match($_, $params{filter}, + location => $params{page}) } @images; + + my $_; + my $ret = "<ul>\n"; + foreach my $img (@images) { + $ret .= "<li>"; + $ret .= htmllink($params{page}, $params{destpage}, + $viewers{$img}); + $ret .= "</li>"; + } + return "$ret</ul>\n"; + } + + sub preprocess_galleryimg { + # \[[!galleryimg p1010001.jpg title="" caption="" tags=""]] + my $file = $_[0]; + my %params=@_; + + return ""; + } + + 1 diff --git a/doc/wikiicons/openidlogin-bg.gif b/doc/wikiicons/openidlogin-bg.gif Binary files differindex c8f43d08e..a3bfe1098 100644 --- a/doc/wikiicons/openidlogin-bg.gif +++ b/doc/wikiicons/openidlogin-bg.gif diff --git a/ikiwiki-transition b/ikiwiki-transition index e42a5137c..599261a09 100755 --- a/ikiwiki-transition +++ b/ikiwiki-transition @@ -1,4 +1,4 @@ -#!/usr/bin/perl -i +#!/usr/bin/perl use warnings; use strict; use IkiWiki; @@ -42,11 +42,33 @@ sub handle_directive { } sub prefix_directives { - $/=undef; # process whole files at once - - while (<>) { - s{$regex}{handle_directive($1, $2, $3, $4)}eg; - print; + my $setup=shift; + if (! defined $setup) { + usage(); + } + + require IkiWiki::Setup; + require IkiWiki::Plugin::aggregate; + + %config = IkiWiki::defaultconfig(); + IkiWiki::Setup::load($setup); + IkiWiki::loadplugins(); + IkiWiki::checkconfig(); + IkiWiki::loadindex(); + + if (! %pagesources) { + error "ikiwiki has not built this wiki yet, cannot transition"; + } + + foreach my $page (values %pagesources) { + next unless defined pagetype($page) && + -f $config{srcdir}."/".$page; + my $content=readfile($config{srcdir}."/".$page); + my $oldcontent=$content; + $content=~s{$regex}{handle_directive($1, $2, $3, $4)}eg; + if ($oldcontent ne $content) { + writefile($page, $config{srcdir}, $content); + } } } @@ -109,12 +131,10 @@ sub aggregateinternal { require IkiWiki::Plugin::aggregate; %config = IkiWiki::defaultconfig(); - IkiWiki::Setup::load(); + IkiWiki::Setup::load($setup); IkiWiki::checkconfig(); IkiWiki::Plugin::aggregate::migrate_to_internal(); - - print "... now add aggregateinternal => 1 to your .setup file\n"; } sub setupformat { @@ -161,14 +181,54 @@ sub setupformat { IkiWiki::Setup::dump($setup); } +sub moveprefs { + my $setup=shift; + if (! defined $setup) { + usage(); + } + + require IkiWiki::Setup; + + %config = IkiWiki::defaultconfig(); + IkiWiki::Setup::load($setup); + IkiWiki::checkconfig(); + + eval q{use IkiWiki::UserInfo}; + error $@ if $@; + + foreach my $field (qw{allowed_attachments locked_pages}) { + my $orig=$config{$field}; + foreach my $admin (@{$config{adminuser}}) { + my $a=IkiWiki::userinfo_get($admin, $field); + if (defined $a && length $a && + # might already have been moved + (! defined $orig || $a ne $orig)) { + if (defined $config{$field} && + length $config{$field}) { + $config{$field}=IkiWiki::pagespec_merge($config{$field}, $a); + } + else { + $config{$field}=$a; + } + } + } + } + + my %banned=map { $_ => 1 } @{$config{banned_users}}, IkiWiki::get_banned_users(); + $config{banned_users}=[sort keys %banned]; + + IkiWiki::Setup::dump($setup); +} + sub usage { print STDERR "Usage: ikiwiki-transition type ...\n"; print STDERR "Currently supported transition subcommands:\n"; - print STDERR "\tprefix_directives file\n"; - print STDERR "\tindexdb srcdir\n"; - print STDERR "\thashpassword srcdir\n"; + print STDERR "\tprefix_directives setupfile ...\n"; print STDERR "\taggregateinternal setupfile\n"; print STDERR "\tsetupformat setupfile\n"; + print STDERR "\tmoveprefs setupfile\n"; + print STDERR "\thashpassword srcdir\n"; + print STDERR "\tindexdb srcdir\n"; exit 1; } @@ -190,6 +250,9 @@ elsif ($mode eq 'aggregateinternal') { elsif ($mode eq 'setupformat') { setupformat(@ARGV); } +elsif ($mode eq 'moveprefs') { + moveprefs(@ARGV); +} else { usage(); } @@ -247,3 +310,15 @@ sub oldloadindex { return close($in); } + +# Used to be in IkiWiki/UserInfo, but only used here now. +sub get_banned_users () { + my @ret; + my $userinfo=userinfo_retrieve(); + foreach my $user (keys %{$userinfo}) { + push @ret, $user if $userinfo->{$user}->{banned}; + } + return @ret; +} + +1 @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: ikiwiki-bg\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-12-20 18:07-0500\n" +"POT-Creation-Date: 2008-12-26 21:41-0500\n" "PO-Revision-Date: 2007-01-12 01:19+0200\n" "Last-Translator: Damyan Ivanov <dam@modsodtsys.com>\n" "Language-Team: Bulgarian <dict@fsa-bg.org>\n" @@ -24,7 +24,7 @@ msgstr "Първо трябва да влезете." msgid "login failed, perhaps you need to turn on cookies?" msgstr "" -#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:310 +#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:280 msgid "Your login session has expired." msgstr "" @@ -41,88 +41,88 @@ msgstr "Предпочитанията са запазени." msgid "Admin" msgstr "" -#: ../IkiWiki/CGI.pm:253 +#: ../IkiWiki/CGI.pm:226 msgid "Preferences saved." msgstr "Предпочитанията са запазени." -#: ../IkiWiki/CGI.pm:271 +#: ../IkiWiki/CGI.pm:241 msgid "You are banned." msgstr "Достъпът ви е забранен." -#: ../IkiWiki/CGI.pm:401 ../IkiWiki/CGI.pm:402 ../IkiWiki.pm:1204 +#: ../IkiWiki/CGI.pm:371 ../IkiWiki/CGI.pm:372 ../IkiWiki.pm:1204 msgid "Error" msgstr "Грешка" -#: ../IkiWiki/Plugin/aggregate.pm:80 +#: ../IkiWiki/Plugin/aggregate.pm:84 msgid "Aggregation triggered via web." msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:89 +#: ../IkiWiki/Plugin/aggregate.pm:93 msgid "Nothing to do right now, all feeds are up-to-date!" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:216 +#: ../IkiWiki/Plugin/aggregate.pm:220 #, fuzzy, perl-format msgid "missing %s parameter" msgstr "липсващ параметър „id” на шаблона" -#: ../IkiWiki/Plugin/aggregate.pm:251 +#: ../IkiWiki/Plugin/aggregate.pm:255 msgid "new feed" msgstr "нов източник" -#: ../IkiWiki/Plugin/aggregate.pm:265 +#: ../IkiWiki/Plugin/aggregate.pm:269 msgid "posts" msgstr "съобщения" -#: ../IkiWiki/Plugin/aggregate.pm:267 +#: ../IkiWiki/Plugin/aggregate.pm:271 msgid "new" msgstr "ново" -#: ../IkiWiki/Plugin/aggregate.pm:431 +#: ../IkiWiki/Plugin/aggregate.pm:435 #, perl-format msgid "expiring %s (%s days old)" msgstr "премахване на „%s” (на %s дни)" -#: ../IkiWiki/Plugin/aggregate.pm:438 +#: ../IkiWiki/Plugin/aggregate.pm:442 #, perl-format msgid "expiring %s" msgstr "премахване на „%s”" -#: ../IkiWiki/Plugin/aggregate.pm:465 +#: ../IkiWiki/Plugin/aggregate.pm:469 #, perl-format msgid "last checked %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:469 +#: ../IkiWiki/Plugin/aggregate.pm:473 #, perl-format msgid "checking feed %s ..." msgstr "проверка на източника „%s”" -#: ../IkiWiki/Plugin/aggregate.pm:474 +#: ../IkiWiki/Plugin/aggregate.pm:478 #, perl-format msgid "could not find feed at %s" msgstr "не е намерен източник на адрес „%s”" -#: ../IkiWiki/Plugin/aggregate.pm:493 +#: ../IkiWiki/Plugin/aggregate.pm:497 #, fuzzy msgid "feed not found" msgstr "шаблонът „%s” не е намерен" -#: ../IkiWiki/Plugin/aggregate.pm:504 +#: ../IkiWiki/Plugin/aggregate.pm:508 #, perl-format msgid "(invalid UTF-8 stripped from feed)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:512 +#: ../IkiWiki/Plugin/aggregate.pm:516 #, perl-format msgid "(feed entities escaped)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:520 +#: ../IkiWiki/Plugin/aggregate.pm:524 msgid "feed crashed XML::Feed!" msgstr "данните от източника предизвикаха грешка в модула XML::Feed!" -#: ../IkiWiki/Plugin/aggregate.pm:601 +#: ../IkiWiki/Plugin/aggregate.pm:605 #, perl-format msgid "creating new page %s" msgstr "създаване на нова страницa „%s”" @@ -159,15 +159,15 @@ msgstr "грешка при запис на файла „%s”: %s" msgid "there is already a page named %s" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:82 +#: ../IkiWiki/Plugin/attachment.pm:65 msgid "prohibited by allowed_attachments" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:190 +#: ../IkiWiki/Plugin/attachment.pm:140 msgid "bad attachment filename" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:232 +#: ../IkiWiki/Plugin/attachment.pm:182 msgid "attachment upload" msgstr "" @@ -191,12 +191,12 @@ msgstr "" msgid "There are no broken links!" msgstr "Няма „счупени” връзки!" -#: ../IkiWiki/Plugin/comments.pm:119 ../IkiWiki/Plugin/format.pm:23 +#: ../IkiWiki/Plugin/comments.pm:120 ../IkiWiki/Plugin/format.pm:23 #, perl-format msgid "unsupported page format %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:124 +#: ../IkiWiki/Plugin/comments.pm:125 msgid "comment must have content" msgstr "" @@ -204,45 +204,45 @@ msgstr "" msgid "Anonymous" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:243 ../IkiWiki/Plugin/recentchanges.pm:101 +#: ../IkiWiki/Plugin/comments.pm:252 ../IkiWiki/Plugin/recentchanges.pm:110 #, fuzzy msgid "missing page" msgstr "липсващ параметър „id” на шаблона" -#: ../IkiWiki/Plugin/comments.pm:245 ../IkiWiki/Plugin/recentchanges.pm:103 +#: ../IkiWiki/Plugin/comments.pm:254 ../IkiWiki/Plugin/recentchanges.pm:112 #, perl-format msgid "The page %s does not exist." msgstr "" -#: ../IkiWiki/Plugin/comments.pm:334 ../IkiWiki/Plugin/editpage.pm:124 +#: ../IkiWiki/Plugin/comments.pm:343 ../IkiWiki/Plugin/editpage.pm:124 msgid "bad page name" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:341 +#: ../IkiWiki/Plugin/comments.pm:350 #, fuzzy, perl-format msgid "commenting on %s" msgstr "създаване на %s" -#: ../IkiWiki/Plugin/comments.pm:359 +#: ../IkiWiki/Plugin/comments.pm:368 #, perl-format msgid "page '%s' doesn't exist, so you can't comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:366 +#: ../IkiWiki/Plugin/comments.pm:375 #, perl-format msgid "comments on page '%s' are closed" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:468 +#: ../IkiWiki/Plugin/comments.pm:483 msgid "Added a comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:472 +#: ../IkiWiki/Plugin/comments.pm:487 #, perl-format msgid "Added a comment: %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:565 +#: ../IkiWiki/Plugin/comments.pm:598 msgid "Comments" msgstr "" @@ -336,11 +336,6 @@ msgstr "При използване на приеставката „search” msgid "Failed to parse url, cannot determine domain name" msgstr "" -#: ../IkiWiki/Plugin/googlecalendar.pm:32 -#, fuzzy -msgid "failed to find url in html" -msgstr "приставката „googlecalendar” не намери URL в HTML-кода" - #: ../IkiWiki/Plugin/graphviz.pm:67 #, fuzzy msgid "failed to run graphviz" @@ -419,7 +414,7 @@ msgstr "модулът „RPC::XML::Client” не е намерен; източ msgid "failed to run dot" msgstr "приставката „linkmap”: грешка при изпълнение на „dot”" -#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 +#: ../IkiWiki/Plugin/lockedit.pm:47 #, fuzzy, perl-format msgid "%s is locked and cannot be edited" msgstr "" @@ -1043,7 +1038,7 @@ msgstr "" msgid "preprocessing loop detected on %s at depth %i" msgstr "открита е циклична завидимост при %s на „%s” на дълбочина %i" -#: ../IkiWiki.pm:1688 +#: ../IkiWiki.pm:1661 msgid "yes" msgstr "" @@ -1067,6 +1062,10 @@ msgstr "" msgid "What is the domain name of the web server?" msgstr "" +#, fuzzy +#~ msgid "failed to find url in html" +#~ msgstr "приставката „googlecalendar” не намери URL в HTML-кода" + #~ msgid "processed ok at %s" #~ msgstr "е обработен нормално от %s" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: ikiwiki\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-12-20 18:07-0500\n" +"POT-Creation-Date: 2008-12-26 21:41-0500\n" "PO-Revision-Date: 2007-05-09 21:21+0200\n" "Last-Translator: Miroslav Kure <kurem@debian.cz>\n" "Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n" @@ -23,7 +23,7 @@ msgstr "Nejprve se musíte přihlásit." msgid "login failed, perhaps you need to turn on cookies?" msgstr "přihlášení selhalo; možná si musíte povolit cookies?" -#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:310 +#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:280 msgid "Your login session has expired." msgstr "" @@ -39,87 +39,87 @@ msgstr "Předvolby" msgid "Admin" msgstr "Správce" -#: ../IkiWiki/CGI.pm:253 +#: ../IkiWiki/CGI.pm:226 msgid "Preferences saved." msgstr "Nastavení uloženo." -#: ../IkiWiki/CGI.pm:271 +#: ../IkiWiki/CGI.pm:241 msgid "You are banned." msgstr "Jste vyhoštěni." -#: ../IkiWiki/CGI.pm:401 ../IkiWiki/CGI.pm:402 ../IkiWiki.pm:1204 +#: ../IkiWiki/CGI.pm:371 ../IkiWiki/CGI.pm:372 ../IkiWiki.pm:1204 msgid "Error" msgstr "Chyba" -#: ../IkiWiki/Plugin/aggregate.pm:80 +#: ../IkiWiki/Plugin/aggregate.pm:84 msgid "Aggregation triggered via web." msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:89 +#: ../IkiWiki/Plugin/aggregate.pm:93 msgid "Nothing to do right now, all feeds are up-to-date!" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:216 +#: ../IkiWiki/Plugin/aggregate.pm:220 #, perl-format msgid "missing %s parameter" msgstr "chybí parametr %s" -#: ../IkiWiki/Plugin/aggregate.pm:251 +#: ../IkiWiki/Plugin/aggregate.pm:255 msgid "new feed" msgstr "nový zdroj" -#: ../IkiWiki/Plugin/aggregate.pm:265 +#: ../IkiWiki/Plugin/aggregate.pm:269 msgid "posts" msgstr "příspěvky" -#: ../IkiWiki/Plugin/aggregate.pm:267 +#: ../IkiWiki/Plugin/aggregate.pm:271 msgid "new" msgstr "nový" -#: ../IkiWiki/Plugin/aggregate.pm:431 +#: ../IkiWiki/Plugin/aggregate.pm:435 #, perl-format msgid "expiring %s (%s days old)" msgstr "expiruji %s (stará %s dnů)" -#: ../IkiWiki/Plugin/aggregate.pm:438 +#: ../IkiWiki/Plugin/aggregate.pm:442 #, perl-format msgid "expiring %s" msgstr "expiruji %s" -#: ../IkiWiki/Plugin/aggregate.pm:465 +#: ../IkiWiki/Plugin/aggregate.pm:469 #, perl-format msgid "last checked %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:469 +#: ../IkiWiki/Plugin/aggregate.pm:473 #, perl-format msgid "checking feed %s ..." msgstr "kontroluji zdroj %s ..." -#: ../IkiWiki/Plugin/aggregate.pm:474 +#: ../IkiWiki/Plugin/aggregate.pm:478 #, perl-format msgid "could not find feed at %s" msgstr "nemohu najít zdroj na %s" -#: ../IkiWiki/Plugin/aggregate.pm:493 +#: ../IkiWiki/Plugin/aggregate.pm:497 msgid "feed not found" msgstr "zdroj nebyl nalezen" -#: ../IkiWiki/Plugin/aggregate.pm:504 +#: ../IkiWiki/Plugin/aggregate.pm:508 #, perl-format msgid "(invalid UTF-8 stripped from feed)" msgstr "(neplatné UTF-8 bylo ze zdroje odstraněno)" -#: ../IkiWiki/Plugin/aggregate.pm:512 +#: ../IkiWiki/Plugin/aggregate.pm:516 #, perl-format msgid "(feed entities escaped)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:520 +#: ../IkiWiki/Plugin/aggregate.pm:524 msgid "feed crashed XML::Feed!" msgstr "zdroj shodil XML::Feed!" -#: ../IkiWiki/Plugin/aggregate.pm:601 +#: ../IkiWiki/Plugin/aggregate.pm:605 #, perl-format msgid "creating new page %s" msgstr "vytvářím novou stránku %s" @@ -156,15 +156,15 @@ msgstr "nelze změnit velikost: %s" msgid "there is already a page named %s" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:82 +#: ../IkiWiki/Plugin/attachment.pm:65 msgid "prohibited by allowed_attachments" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:190 +#: ../IkiWiki/Plugin/attachment.pm:140 msgid "bad attachment filename" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:232 +#: ../IkiWiki/Plugin/attachment.pm:182 msgid "attachment upload" msgstr "" @@ -188,12 +188,12 @@ msgstr "" msgid "There are no broken links!" msgstr "Žádné porušené odkazy!" -#: ../IkiWiki/Plugin/comments.pm:119 ../IkiWiki/Plugin/format.pm:23 +#: ../IkiWiki/Plugin/comments.pm:120 ../IkiWiki/Plugin/format.pm:23 #, perl-format msgid "unsupported page format %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:124 +#: ../IkiWiki/Plugin/comments.pm:125 msgid "comment must have content" msgstr "" @@ -201,45 +201,45 @@ msgstr "" msgid "Anonymous" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:243 ../IkiWiki/Plugin/recentchanges.pm:101 +#: ../IkiWiki/Plugin/comments.pm:252 ../IkiWiki/Plugin/recentchanges.pm:110 #, fuzzy msgid "missing page" msgstr "chybí hodnoty" -#: ../IkiWiki/Plugin/comments.pm:245 ../IkiWiki/Plugin/recentchanges.pm:103 +#: ../IkiWiki/Plugin/comments.pm:254 ../IkiWiki/Plugin/recentchanges.pm:112 #, perl-format msgid "The page %s does not exist." msgstr "" -#: ../IkiWiki/Plugin/comments.pm:334 ../IkiWiki/Plugin/editpage.pm:124 +#: ../IkiWiki/Plugin/comments.pm:343 ../IkiWiki/Plugin/editpage.pm:124 msgid "bad page name" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:341 +#: ../IkiWiki/Plugin/comments.pm:350 #, fuzzy, perl-format msgid "commenting on %s" msgstr "vytvářím %s" -#: ../IkiWiki/Plugin/comments.pm:359 +#: ../IkiWiki/Plugin/comments.pm:368 #, perl-format msgid "page '%s' doesn't exist, so you can't comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:366 +#: ../IkiWiki/Plugin/comments.pm:375 #, perl-format msgid "comments on page '%s' are closed" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:468 +#: ../IkiWiki/Plugin/comments.pm:483 msgid "Added a comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:472 +#: ../IkiWiki/Plugin/comments.pm:487 #, perl-format msgid "Added a comment: %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:565 +#: ../IkiWiki/Plugin/comments.pm:598 msgid "Comments" msgstr "" @@ -333,10 +333,6 @@ msgstr "Při používání vyhledávacího modulu musíte zadat %s" msgid "Failed to parse url, cannot determine domain name" msgstr "" -#: ../IkiWiki/Plugin/googlecalendar.pm:32 -msgid "failed to find url in html" -msgstr "v html se nepodařilo nalézt url" - #: ../IkiWiki/Plugin/graphviz.pm:67 msgid "failed to run graphviz" msgstr "nepodařilo se spustit graphviz" @@ -411,7 +407,7 @@ msgstr "RPC::XML::Client nebyl nalezen, nepinkám" msgid "failed to run dot" msgstr "nepodařilo se spustit dot" -#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 +#: ../IkiWiki/Plugin/lockedit.pm:47 #, fuzzy, perl-format msgid "%s is locked and cannot be edited" msgstr "Stránka %s je zamknutá uživatelem %s a nelze ji měnit" @@ -1022,7 +1018,7 @@ msgstr "" msgid "preprocessing loop detected on %s at depth %i" msgstr "Byla rozpoznána smyčka direktivy %s na %s v hloubce %i" -#: ../IkiWiki.pm:1688 +#: ../IkiWiki.pm:1661 msgid "yes" msgstr "" @@ -1046,6 +1042,9 @@ msgstr "" msgid "What is the domain name of the web server?" msgstr "" +#~ msgid "failed to find url in html" +#~ msgstr "v html se nepodařilo nalézt url" + #~ msgid "processed ok at %s" #~ msgstr "zpracováno ok %s" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: ikiwiki\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-12-20 18:07-0500\n" +"POT-Creation-Date: 2008-12-26 21:41-0500\n" "PO-Revision-Date: 2008-10-22 19:13+0100\n" "Last-Translator: Jonas Smedegaard <dr@jones.dk>\n" "Language-Team: None\n" @@ -27,7 +27,7 @@ msgstr "Du skal først logge på." msgid "login failed, perhaps you need to turn on cookies?" msgstr "Pålogning mislykkedes, måske skal du tillade infokager (cookies)?" -#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:310 +#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:280 msgid "Your login session has expired." msgstr "Din kørsel (login session) er udløbet" @@ -43,87 +43,87 @@ msgstr "Indstillinger" msgid "Admin" msgstr "Admin" -#: ../IkiWiki/CGI.pm:253 +#: ../IkiWiki/CGI.pm:226 msgid "Preferences saved." msgstr "Indstillinger gemt" -#: ../IkiWiki/CGI.pm:271 +#: ../IkiWiki/CGI.pm:241 msgid "You are banned." msgstr "Du er banlyst." -#: ../IkiWiki/CGI.pm:401 ../IkiWiki/CGI.pm:402 ../IkiWiki.pm:1204 +#: ../IkiWiki/CGI.pm:371 ../IkiWiki/CGI.pm:372 ../IkiWiki.pm:1204 msgid "Error" msgstr "Fejl" -#: ../IkiWiki/Plugin/aggregate.pm:80 +#: ../IkiWiki/Plugin/aggregate.pm:84 msgid "Aggregation triggered via web." msgstr "Indsamling udløst via web." -#: ../IkiWiki/Plugin/aggregate.pm:89 +#: ../IkiWiki/Plugin/aggregate.pm:93 msgid "Nothing to do right now, all feeds are up-to-date!" msgstr "Intet at gøre lige nu, alle fødninger er tidssvarende!" -#: ../IkiWiki/Plugin/aggregate.pm:216 +#: ../IkiWiki/Plugin/aggregate.pm:220 #, perl-format msgid "missing %s parameter" msgstr "mangler parametren %s" -#: ../IkiWiki/Plugin/aggregate.pm:251 +#: ../IkiWiki/Plugin/aggregate.pm:255 msgid "new feed" msgstr "ny fødning" -#: ../IkiWiki/Plugin/aggregate.pm:265 +#: ../IkiWiki/Plugin/aggregate.pm:269 msgid "posts" msgstr "indlæg" -#: ../IkiWiki/Plugin/aggregate.pm:267 +#: ../IkiWiki/Plugin/aggregate.pm:271 msgid "new" msgstr "nyt" -#: ../IkiWiki/Plugin/aggregate.pm:431 +#: ../IkiWiki/Plugin/aggregate.pm:435 #, perl-format msgid "expiring %s (%s days old)" msgstr "udløber %s (%s dage gammel)" -#: ../IkiWiki/Plugin/aggregate.pm:438 +#: ../IkiWiki/Plugin/aggregate.pm:442 #, perl-format msgid "expiring %s" msgstr "udløber %s" -#: ../IkiWiki/Plugin/aggregate.pm:465 +#: ../IkiWiki/Plugin/aggregate.pm:469 #, perl-format msgid "last checked %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:469 +#: ../IkiWiki/Plugin/aggregate.pm:473 #, perl-format msgid "checking feed %s ..." msgstr "undersøger fødning %s ..." -#: ../IkiWiki/Plugin/aggregate.pm:474 +#: ../IkiWiki/Plugin/aggregate.pm:478 #, perl-format msgid "could not find feed at %s" msgstr "kunne ikke finde fødning ved %s" -#: ../IkiWiki/Plugin/aggregate.pm:493 +#: ../IkiWiki/Plugin/aggregate.pm:497 msgid "feed not found" msgstr "fødning ikke fundet" -#: ../IkiWiki/Plugin/aggregate.pm:504 +#: ../IkiWiki/Plugin/aggregate.pm:508 #, perl-format msgid "(invalid UTF-8 stripped from feed)" msgstr "(defekt UTF-8 fjernet fra fødning)" -#: ../IkiWiki/Plugin/aggregate.pm:512 +#: ../IkiWiki/Plugin/aggregate.pm:516 #, perl-format msgid "(feed entities escaped)" msgstr "(fødningselementer omgået (escaped))" -#: ../IkiWiki/Plugin/aggregate.pm:520 +#: ../IkiWiki/Plugin/aggregate.pm:524 msgid "feed crashed XML::Feed!" msgstr "fødning fik XML::Feed til at bryde sammen!" -#: ../IkiWiki/Plugin/aggregate.pm:601 +#: ../IkiWiki/Plugin/aggregate.pm:605 #, perl-format msgid "creating new page %s" msgstr "opretter ny side %s" @@ -158,15 +158,15 @@ msgstr "Sletning af fil fra S3 mislykkedes: " msgid "there is already a page named %s" msgstr "der er allerede en side ved navn %s" -#: ../IkiWiki/Plugin/attachment.pm:82 +#: ../IkiWiki/Plugin/attachment.pm:65 msgid "prohibited by allowed_attachments" msgstr "forhindret af allowed_attachments" -#: ../IkiWiki/Plugin/attachment.pm:190 +#: ../IkiWiki/Plugin/attachment.pm:140 msgid "bad attachment filename" msgstr "dårligt vedhæftningsfilnavn" -#: ../IkiWiki/Plugin/attachment.pm:232 +#: ../IkiWiki/Plugin/attachment.pm:182 msgid "attachment upload" msgstr "vedhæftningsoplægning" @@ -190,12 +190,12 @@ msgstr "%s fra %s" msgid "There are no broken links!" msgstr "Ingen henvisninger der ikker fungerer!" -#: ../IkiWiki/Plugin/comments.pm:119 ../IkiWiki/Plugin/format.pm:23 +#: ../IkiWiki/Plugin/comments.pm:120 ../IkiWiki/Plugin/format.pm:23 #, fuzzy, perl-format msgid "unsupported page format %s" msgstr "revisionskontrolsystem %s ikke understøttet" -#: ../IkiWiki/Plugin/comments.pm:124 +#: ../IkiWiki/Plugin/comments.pm:125 msgid "comment must have content" msgstr "" @@ -203,45 +203,45 @@ msgstr "" msgid "Anonymous" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:243 ../IkiWiki/Plugin/recentchanges.pm:101 +#: ../IkiWiki/Plugin/comments.pm:252 ../IkiWiki/Plugin/recentchanges.pm:110 msgid "missing page" msgstr "manglende side" -#: ../IkiWiki/Plugin/comments.pm:245 ../IkiWiki/Plugin/recentchanges.pm:103 +#: ../IkiWiki/Plugin/comments.pm:254 ../IkiWiki/Plugin/recentchanges.pm:112 #, perl-format msgid "The page %s does not exist." msgstr "Siden %s eksisterer ikke." -#: ../IkiWiki/Plugin/comments.pm:334 ../IkiWiki/Plugin/editpage.pm:124 +#: ../IkiWiki/Plugin/comments.pm:343 ../IkiWiki/Plugin/editpage.pm:124 #, fuzzy msgid "bad page name" msgstr "dårligt vedhæftningsfilnavn" -#: ../IkiWiki/Plugin/comments.pm:341 +#: ../IkiWiki/Plugin/comments.pm:350 #, fuzzy, perl-format msgid "commenting on %s" msgstr "opretter %s" -#: ../IkiWiki/Plugin/comments.pm:359 +#: ../IkiWiki/Plugin/comments.pm:368 #, perl-format msgid "page '%s' doesn't exist, so you can't comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:366 +#: ../IkiWiki/Plugin/comments.pm:375 #, perl-format msgid "comments on page '%s' are closed" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:468 +#: ../IkiWiki/Plugin/comments.pm:483 msgid "Added a comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:472 +#: ../IkiWiki/Plugin/comments.pm:487 #, perl-format msgid "Added a comment: %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:565 +#: ../IkiWiki/Plugin/comments.pm:598 msgid "Comments" msgstr "" @@ -333,10 +333,6 @@ msgstr "Skal angive %s når google søgeudvidelsen bruges" msgid "Failed to parse url, cannot determine domain name" msgstr "Tolkning af URL mislykkedes, kan ikke afgøre domænenavn" -#: ../IkiWiki/Plugin/googlecalendar.pm:32 -msgid "failed to find url in html" -msgstr "lokalisering af url i html mislykkedes" - #: ../IkiWiki/Plugin/graphviz.pm:67 msgid "failed to run graphviz" msgstr "graphviz-kørsel mislykkedes" @@ -408,7 +404,7 @@ msgstr "RPC::XML::Client ikke fundet, pinger ikke" msgid "failed to run dot" msgstr "dot-kørsel mislykkedes" -#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 +#: ../IkiWiki/Plugin/lockedit.pm:47 #, perl-format msgid "%s is locked and cannot be edited" msgstr "%s er låst og kan ikke redigeres" @@ -1021,7 +1017,7 @@ msgstr "" msgid "preprocessing loop detected on %s at depth %i" msgstr "forudberegningssløkke fundet på %s ved dybde %i" -#: ../IkiWiki.pm:1688 +#: ../IkiWiki.pm:1661 msgid "yes" msgstr "ja" @@ -1045,5 +1041,8 @@ msgstr "Hvilken wiki bruger (eller openid) skal være administrator?" msgid "What is the domain name of the web server?" msgstr "Hvad er domænenavnet på webserveren?" +#~ msgid "failed to find url in html" +#~ msgstr "lokalisering af url i html mislykkedes" + #~ msgid "processed ok at %s" #~ msgstr "korrekt dannet ved %s" @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: ikiwiki 2.70\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-12-20 18:07-0500\n" +"POT-Creation-Date: 2008-12-26 21:41-0500\n" "PO-Revision-Date: 2008-11-20 19:58+0100\n" "Last-Translator: Kai Wasserbäch <debian@carbon-project.org>\n" "Language-Team: German <debian-l10n-german@lists.debian.org>\n" @@ -23,7 +23,7 @@ msgid "login failed, perhaps you need to turn on cookies?" msgstr "" "Anmeldung fehlgeschlagen, möglicherweise müssen Sie zuvor Cookies aktivieren?" -#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:310 +#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:280 msgid "Your login session has expired." msgstr "Ihre Anmeldung für die aktuelle Sitzung ist abgelaufen." @@ -39,87 +39,87 @@ msgstr "Einstellungen" msgid "Admin" msgstr "Administrator" -#: ../IkiWiki/CGI.pm:253 +#: ../IkiWiki/CGI.pm:226 msgid "Preferences saved." msgstr "Einstellungen gespeichert." -#: ../IkiWiki/CGI.pm:271 +#: ../IkiWiki/CGI.pm:241 msgid "You are banned." msgstr "Sie sind ausgeschlossen worden." -#: ../IkiWiki/CGI.pm:401 ../IkiWiki/CGI.pm:402 ../IkiWiki.pm:1204 +#: ../IkiWiki/CGI.pm:371 ../IkiWiki/CGI.pm:372 ../IkiWiki.pm:1204 msgid "Error" msgstr "Fehler" -#: ../IkiWiki/Plugin/aggregate.pm:80 +#: ../IkiWiki/Plugin/aggregate.pm:84 msgid "Aggregation triggered via web." msgstr "Feed-Erstellung wurde über das Web ausgelöst." -#: ../IkiWiki/Plugin/aggregate.pm:89 +#: ../IkiWiki/Plugin/aggregate.pm:93 msgid "Nothing to do right now, all feeds are up-to-date!" msgstr "Derzeit nichts zu tun, alle Feeds sind auf dem neusten Stand!" -#: ../IkiWiki/Plugin/aggregate.pm:216 +#: ../IkiWiki/Plugin/aggregate.pm:220 #, perl-format msgid "missing %s parameter" msgstr "Parameter %s fehlt" -#: ../IkiWiki/Plugin/aggregate.pm:251 +#: ../IkiWiki/Plugin/aggregate.pm:255 msgid "new feed" msgstr "neuer Feed" -#: ../IkiWiki/Plugin/aggregate.pm:265 +#: ../IkiWiki/Plugin/aggregate.pm:269 msgid "posts" msgstr "Beiträge" -#: ../IkiWiki/Plugin/aggregate.pm:267 +#: ../IkiWiki/Plugin/aggregate.pm:271 msgid "new" msgstr "neu" -#: ../IkiWiki/Plugin/aggregate.pm:431 +#: ../IkiWiki/Plugin/aggregate.pm:435 #, perl-format msgid "expiring %s (%s days old)" msgstr "%s läuft aus (%s Tage alt)" -#: ../IkiWiki/Plugin/aggregate.pm:438 +#: ../IkiWiki/Plugin/aggregate.pm:442 #, perl-format msgid "expiring %s" msgstr "%s läuft aus" -#: ../IkiWiki/Plugin/aggregate.pm:465 +#: ../IkiWiki/Plugin/aggregate.pm:469 #, perl-format msgid "last checked %s" msgstr "zuletzt überprüft am %s" -#: ../IkiWiki/Plugin/aggregate.pm:469 +#: ../IkiWiki/Plugin/aggregate.pm:473 #, perl-format msgid "checking feed %s ..." msgstr "überprüfe Feed %s ..." -#: ../IkiWiki/Plugin/aggregate.pm:474 +#: ../IkiWiki/Plugin/aggregate.pm:478 #, perl-format msgid "could not find feed at %s" msgstr "konnte Feed unter %s nicht finden" -#: ../IkiWiki/Plugin/aggregate.pm:493 +#: ../IkiWiki/Plugin/aggregate.pm:497 msgid "feed not found" msgstr "Feed nicht gefunden" -#: ../IkiWiki/Plugin/aggregate.pm:504 +#: ../IkiWiki/Plugin/aggregate.pm:508 #, perl-format msgid "(invalid UTF-8 stripped from feed)" msgstr "(ungültiges UTF-8-Zeichen wurde aus dem Feed entfernt)" -#: ../IkiWiki/Plugin/aggregate.pm:512 +#: ../IkiWiki/Plugin/aggregate.pm:516 #, perl-format msgid "(feed entities escaped)" msgstr "(Feed-Entitäten maskiert)" -#: ../IkiWiki/Plugin/aggregate.pm:520 +#: ../IkiWiki/Plugin/aggregate.pm:524 msgid "feed crashed XML::Feed!" msgstr "Feed führte zum Absturz von XML::Feed!" -#: ../IkiWiki/Plugin/aggregate.pm:601 +#: ../IkiWiki/Plugin/aggregate.pm:605 #, perl-format msgid "creating new page %s" msgstr "erstelle neue Seite %s" @@ -154,15 +154,15 @@ msgstr "Konnte Datei nicht bei S3 löschen: " msgid "there is already a page named %s" msgstr "eine Seite mit dem Namen %s existiert bereits" -#: ../IkiWiki/Plugin/attachment.pm:82 +#: ../IkiWiki/Plugin/attachment.pm:65 msgid "prohibited by allowed_attachments" msgstr "durch allowed_attachements verboten" -#: ../IkiWiki/Plugin/attachment.pm:190 +#: ../IkiWiki/Plugin/attachment.pm:140 msgid "bad attachment filename" msgstr "fehlerhafter Dateiname für Anhang" -#: ../IkiWiki/Plugin/attachment.pm:232 +#: ../IkiWiki/Plugin/attachment.pm:182 msgid "attachment upload" msgstr "Anhang hochladen" @@ -186,12 +186,12 @@ msgstr "%s von %s" msgid "There are no broken links!" msgstr "Es gibt keine ungültigen Links!" -#: ../IkiWiki/Plugin/comments.pm:119 ../IkiWiki/Plugin/format.pm:23 +#: ../IkiWiki/Plugin/comments.pm:120 ../IkiWiki/Plugin/format.pm:23 #, perl-format msgid "unsupported page format %s" msgstr "nicht unterstütztes Seitenformat %s" -#: ../IkiWiki/Plugin/comments.pm:124 +#: ../IkiWiki/Plugin/comments.pm:125 msgid "comment must have content" msgstr "" @@ -199,44 +199,44 @@ msgstr "" msgid "Anonymous" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:243 ../IkiWiki/Plugin/recentchanges.pm:101 +#: ../IkiWiki/Plugin/comments.pm:252 ../IkiWiki/Plugin/recentchanges.pm:110 msgid "missing page" msgstr "fehlende Seite" -#: ../IkiWiki/Plugin/comments.pm:245 ../IkiWiki/Plugin/recentchanges.pm:103 +#: ../IkiWiki/Plugin/comments.pm:254 ../IkiWiki/Plugin/recentchanges.pm:112 #, perl-format msgid "The page %s does not exist." msgstr "Die Seite %s existiert nicht." -#: ../IkiWiki/Plugin/comments.pm:334 ../IkiWiki/Plugin/editpage.pm:124 +#: ../IkiWiki/Plugin/comments.pm:343 ../IkiWiki/Plugin/editpage.pm:124 msgid "bad page name" msgstr "fehlerhafter Seitenname" -#: ../IkiWiki/Plugin/comments.pm:341 +#: ../IkiWiki/Plugin/comments.pm:350 #, fuzzy, perl-format msgid "commenting on %s" msgstr "erstelle %s" -#: ../IkiWiki/Plugin/comments.pm:359 +#: ../IkiWiki/Plugin/comments.pm:368 #, perl-format msgid "page '%s' doesn't exist, so you can't comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:366 +#: ../IkiWiki/Plugin/comments.pm:375 #, perl-format msgid "comments on page '%s' are closed" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:468 +#: ../IkiWiki/Plugin/comments.pm:483 msgid "Added a comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:472 +#: ../IkiWiki/Plugin/comments.pm:487 #, perl-format msgid "Added a comment: %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:565 +#: ../IkiWiki/Plugin/comments.pm:598 msgid "Comments" msgstr "" @@ -329,10 +329,6 @@ msgid "Failed to parse url, cannot determine domain name" msgstr "" "Verarbeiten der URL fehlgeschlagen, konnte Domainnamen nicht feststellen" -#: ../IkiWiki/Plugin/googlecalendar.pm:32 -msgid "failed to find url in html" -msgstr "URL in HTML nicht gefunden" - #: ../IkiWiki/Plugin/graphviz.pm:67 msgid "failed to run graphviz" msgstr "konnte graphviz nicht ausführen" @@ -406,7 +402,7 @@ msgstr "RPC::XML::Client nicht gefunden, führe Ping nicht aus" msgid "failed to run dot" msgstr "dot konnte nicht ausgeführt werden" -#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 +#: ../IkiWiki/Plugin/lockedit.pm:47 #, perl-format msgid "%s is locked and cannot be edited" msgstr "%s wurde gesperrt und kann nicht bearbeitet werden" @@ -1025,7 +1021,7 @@ msgstr "Laden der für %s benötigten externen Erweiterung fehlgeschlagen: %s" msgid "preprocessing loop detected on %s at depth %i" msgstr "Präprozessorschleife auf %s in Tiefe %i erkannt" -#: ../IkiWiki.pm:1688 +#: ../IkiWiki.pm:1661 msgid "yes" msgstr "ja" @@ -1050,3 +1046,6 @@ msgstr "" #: ../auto.setup:23 msgid "What is the domain name of the web server?" msgstr "Wie lautet der Domainname des Webservers?" + +#~ msgid "failed to find url in html" +#~ msgstr "URL in HTML nicht gefunden" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: es\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-12-20 18:07-0500\n" +"POT-Creation-Date: 2008-12-26 21:41-0500\n" "PO-Revision-Date: 2008-12-19 08:10+0100\n" "Last-Translator: Víctor Moral <victor@taquiones.net>\n" "Language-Team: Spanish <es@li.org>\n" @@ -24,7 +24,7 @@ msgid "login failed, perhaps you need to turn on cookies?" msgstr "" "registro fallido, ¿ tal vez necesita activar las cookies en el navegador ?" -#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:310 +#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:280 msgid "Your login session has expired." msgstr "Su registro en el sistema ha expirado." @@ -40,88 +40,88 @@ msgstr "Preferencias" msgid "Admin" msgstr "Administración" -#: ../IkiWiki/CGI.pm:253 +#: ../IkiWiki/CGI.pm:226 msgid "Preferences saved." msgstr "Las preferencias se han guardado." -#: ../IkiWiki/CGI.pm:271 +#: ../IkiWiki/CGI.pm:241 msgid "You are banned." msgstr "Ha sido expulsado." -#: ../IkiWiki/CGI.pm:401 ../IkiWiki/CGI.pm:402 ../IkiWiki.pm:1204 +#: ../IkiWiki/CGI.pm:371 ../IkiWiki/CGI.pm:372 ../IkiWiki.pm:1204 msgid "Error" msgstr "Error" -#: ../IkiWiki/Plugin/aggregate.pm:80 +#: ../IkiWiki/Plugin/aggregate.pm:84 msgid "Aggregation triggered via web." msgstr "Contenido añadido activado vía web." -#: ../IkiWiki/Plugin/aggregate.pm:89 +#: ../IkiWiki/Plugin/aggregate.pm:93 msgid "Nothing to do right now, all feeds are up-to-date!" msgstr "" "¡ No hay nada que hacer, todas las fuentes de noticias están actualizadas !" -#: ../IkiWiki/Plugin/aggregate.pm:216 +#: ../IkiWiki/Plugin/aggregate.pm:220 #, perl-format msgid "missing %s parameter" msgstr "falta el parámetro %s" -#: ../IkiWiki/Plugin/aggregate.pm:251 +#: ../IkiWiki/Plugin/aggregate.pm:255 msgid "new feed" msgstr "nueva entrada" -#: ../IkiWiki/Plugin/aggregate.pm:265 +#: ../IkiWiki/Plugin/aggregate.pm:269 msgid "posts" msgstr "entradas" -#: ../IkiWiki/Plugin/aggregate.pm:267 +#: ../IkiWiki/Plugin/aggregate.pm:271 msgid "new" msgstr "nuevo" -#: ../IkiWiki/Plugin/aggregate.pm:431 +#: ../IkiWiki/Plugin/aggregate.pm:435 #, perl-format msgid "expiring %s (%s days old)" msgstr "%s caducada (%s días de antigüedad)" -#: ../IkiWiki/Plugin/aggregate.pm:438 +#: ../IkiWiki/Plugin/aggregate.pm:442 #, perl-format msgid "expiring %s" msgstr "%s caducada" -#: ../IkiWiki/Plugin/aggregate.pm:465 +#: ../IkiWiki/Plugin/aggregate.pm:469 #, perl-format msgid "last checked %s" msgstr "última comprobación el %s" -#: ../IkiWiki/Plugin/aggregate.pm:469 +#: ../IkiWiki/Plugin/aggregate.pm:473 #, perl-format msgid "checking feed %s ..." msgstr "comprobando fuente de datos %s ..." -#: ../IkiWiki/Plugin/aggregate.pm:474 +#: ../IkiWiki/Plugin/aggregate.pm:478 #, perl-format msgid "could not find feed at %s" msgstr "no puedo encontrar la fuente de datos en %s" -#: ../IkiWiki/Plugin/aggregate.pm:493 +#: ../IkiWiki/Plugin/aggregate.pm:497 msgid "feed not found" msgstr "fuente de datos no encontrada" -#: ../IkiWiki/Plugin/aggregate.pm:504 +#: ../IkiWiki/Plugin/aggregate.pm:508 #, perl-format msgid "(invalid UTF-8 stripped from feed)" msgstr "(una secuencia UTF-8 inválida ha sido eliminada de la fuente de datos)" -#: ../IkiWiki/Plugin/aggregate.pm:512 +#: ../IkiWiki/Plugin/aggregate.pm:516 #, perl-format msgid "(feed entities escaped)" msgstr "(los caracteres especiales de la fuente de datos están exceptuados)" -#: ../IkiWiki/Plugin/aggregate.pm:520 +#: ../IkiWiki/Plugin/aggregate.pm:524 msgid "feed crashed XML::Feed!" msgstr "¡ la fuente de datos ha provocado un error fatal en XML::Feed !" -#: ../IkiWiki/Plugin/aggregate.pm:601 +#: ../IkiWiki/Plugin/aggregate.pm:605 #, perl-format msgid "creating new page %s" msgstr "creando nueva página %s" @@ -156,15 +156,15 @@ msgstr "No puedo borrar archivo en S3: " msgid "there is already a page named %s" msgstr "ya existe una página de nombre %s" -#: ../IkiWiki/Plugin/attachment.pm:82 +#: ../IkiWiki/Plugin/attachment.pm:65 msgid "prohibited by allowed_attachments" msgstr "prohibido por la claúsula allowed_attachments" -#: ../IkiWiki/Plugin/attachment.pm:190 +#: ../IkiWiki/Plugin/attachment.pm:140 msgid "bad attachment filename" msgstr "nombre de archivo adjunto erróneo" -#: ../IkiWiki/Plugin/attachment.pm:232 +#: ../IkiWiki/Plugin/attachment.pm:182 msgid "attachment upload" msgstr "enviado el adjunto" @@ -188,12 +188,12 @@ msgstr "%s desde la página %s" msgid "There are no broken links!" msgstr "¡ No hay enlaces rotos !" -#: ../IkiWiki/Plugin/comments.pm:119 ../IkiWiki/Plugin/format.pm:23 +#: ../IkiWiki/Plugin/comments.pm:120 ../IkiWiki/Plugin/format.pm:23 #, perl-format msgid "unsupported page format %s" msgstr "formato de página %s no soportado" -#: ../IkiWiki/Plugin/comments.pm:124 +#: ../IkiWiki/Plugin/comments.pm:125 msgid "comment must have content" msgstr "Un comentario debe tener algún contenido" @@ -201,44 +201,44 @@ msgstr "Un comentario debe tener algún contenido" msgid "Anonymous" msgstr "Anónimo" -#: ../IkiWiki/Plugin/comments.pm:243 ../IkiWiki/Plugin/recentchanges.pm:101 +#: ../IkiWiki/Plugin/comments.pm:252 ../IkiWiki/Plugin/recentchanges.pm:110 msgid "missing page" msgstr "página no encontrada" -#: ../IkiWiki/Plugin/comments.pm:245 ../IkiWiki/Plugin/recentchanges.pm:103 +#: ../IkiWiki/Plugin/comments.pm:254 ../IkiWiki/Plugin/recentchanges.pm:112 #, perl-format msgid "The page %s does not exist." msgstr "No existe la página %s." -#: ../IkiWiki/Plugin/comments.pm:334 ../IkiWiki/Plugin/editpage.pm:124 +#: ../IkiWiki/Plugin/comments.pm:343 ../IkiWiki/Plugin/editpage.pm:124 msgid "bad page name" msgstr "nombre de página erróneo" -#: ../IkiWiki/Plugin/comments.pm:341 +#: ../IkiWiki/Plugin/comments.pm:350 #, perl-format msgid "commenting on %s" msgstr "creando comentarios en la página %s" -#: ../IkiWiki/Plugin/comments.pm:359 +#: ../IkiWiki/Plugin/comments.pm:368 #, perl-format msgid "page '%s' doesn't exist, so you can't comment" msgstr "la página '%s' no existe, así que no se puede comentar sobre ella" -#: ../IkiWiki/Plugin/comments.pm:366 +#: ../IkiWiki/Plugin/comments.pm:375 #, perl-format msgid "comments on page '%s' are closed" msgstr "los comentarios para la página '%s' están cerrados" -#: ../IkiWiki/Plugin/comments.pm:468 +#: ../IkiWiki/Plugin/comments.pm:483 msgid "Added a comment" msgstr "Añadir un comentario" -#: ../IkiWiki/Plugin/comments.pm:472 +#: ../IkiWiki/Plugin/comments.pm:487 #, perl-format msgid "Added a comment: %s" msgstr "Comentario añadido: %s" -#: ../IkiWiki/Plugin/comments.pm:565 +#: ../IkiWiki/Plugin/comments.pm:598 msgid "Comments" msgstr "Comentarios" @@ -332,11 +332,6 @@ msgid "Failed to parse url, cannot determine domain name" msgstr "" "Error en el análisis del URL, no puedo determinar el nombre del dominio" -#: ../IkiWiki/Plugin/googlecalendar.pm:32 -msgid "failed to find url in html" -msgstr "" -"El complemento googlecalendar no ha encontrado un URL en el código html " - #: ../IkiWiki/Plugin/graphviz.pm:67 msgid "failed to run graphviz" msgstr "no he podido ejecutar el programa graphviz " @@ -410,7 +405,7 @@ msgstr "No he encontrado el componente RPC::XML::Client, no envío señal alguna msgid "failed to run dot" msgstr "no he podido ejecutar el programa dot" -#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 +#: ../IkiWiki/Plugin/lockedit.pm:47 #, perl-format msgid "%s is locked and cannot be edited" msgstr "La página %s está bloqueada y no puede modificarse" @@ -1032,7 +1027,7 @@ msgstr "" "se ha detectado en la página %s un bucle de preprocesado en la iteración " "número %i" -#: ../IkiWiki.pm:1688 +#: ../IkiWiki.pm:1661 msgid "yes" msgstr "si" @@ -1058,6 +1053,10 @@ msgstr "" msgid "What is the domain name of the web server?" msgstr "¿ Cuál es el dominio para el servidor web ?" +#~ msgid "failed to find url in html" +#~ msgstr "" +#~ "El complemento googlecalendar no ha encontrado un URL en el código html " + #~ msgid "processed ok at %s" #~ msgstr "proceso completado con éxito a %s" @@ -7,10 +7,10 @@ # Cyril Brulebois <cyril.brulebois@enst-bretagne.fr>, 2007. msgid "" msgstr "" -"Project-Id-Version: ikiwiki 2.70 \n" +"Project-Id-Version: ikiwiki 2.71 \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-12-20 18:07-0500\n" -"PO-Revision-Date: 2008-11-19 21:53+0100\n" +"PO-Revision-Date: 2008-12-29 17:57+0100\n" "Last-Translator: Philippe Batailler <philippe.batailler@free.fr>\n" "Language-Team: French <debian-l10n-french@lists.debian.org>\n" "MIME-Version: 1.0\n" @@ -128,7 +128,7 @@ msgstr "Création de la nouvelle page %s" #: ../IkiWiki/Plugin/amazon_s3.pm:31 msgid "deleting bucket.." -msgstr "suppression du compartiment S3 (« bucket »)..." +msgstr "Suppression du compartiment S3 (« bucket »)..." #: ../IkiWiki/Plugin/amazon_s3.pm:38 ../ikiwiki.in:208 msgid "done" @@ -154,11 +154,11 @@ msgstr "Échec lors de la suppression du fichier sur S3 :" #: ../IkiWiki/Plugin/attachment.pm:49 #, perl-format msgid "there is already a page named %s" -msgstr "il existe déjà une page nommée %s" +msgstr "Il existe déjà une page nommée %s" #: ../IkiWiki/Plugin/attachment.pm:82 msgid "prohibited by allowed_attachments" -msgstr "action interdite par allowed_attachments" +msgstr "Action interdite par allowed_attachments" #: ../IkiWiki/Plugin/attachment.pm:190 msgid "bad attachment filename" @@ -166,11 +166,11 @@ msgstr "Nom de la pièce jointe incorrect" #: ../IkiWiki/Plugin/attachment.pm:232 msgid "attachment upload" -msgstr "envoi de la pièce jointe" +msgstr "Envoi de la pièce jointe" #: ../IkiWiki/Plugin/autoindex.pm:105 msgid "automatic index generation" -msgstr "génération de l'index automatique" +msgstr "Génération de l'index automatique" #: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:260 #: ../IkiWiki/Plugin/inline.pm:354 ../IkiWiki/Plugin/opendiscussion.pm:26 @@ -186,20 +186,20 @@ msgstr "%s sur %s" #: ../IkiWiki/Plugin/brokenlinks.pm:56 msgid "There are no broken links!" -msgstr "Il n'existe pas de lien cassé !" +msgstr "Aucun lien cassé !" #: ../IkiWiki/Plugin/comments.pm:119 ../IkiWiki/Plugin/format.pm:23 #, perl-format msgid "unsupported page format %s" -msgstr "format de page non reconnu %s" +msgstr "Format de page non reconnu %s" #: ../IkiWiki/Plugin/comments.pm:124 msgid "comment must have content" -msgstr "" +msgstr "Un commentaire doit avoir un contenu." #: ../IkiWiki/Plugin/comments.pm:181 msgid "Anonymous" -msgstr "" +msgstr "Anonyme" #: ../IkiWiki/Plugin/comments.pm:243 ../IkiWiki/Plugin/recentchanges.pm:101 msgid "missing page" @@ -212,46 +212,46 @@ msgstr "La page %s n'existe pas." #: ../IkiWiki/Plugin/comments.pm:334 ../IkiWiki/Plugin/editpage.pm:124 msgid "bad page name" -msgstr "nom de page incorrect" +msgstr "Nom de page incorrect" #: ../IkiWiki/Plugin/comments.pm:341 -#, fuzzy, perl-format +#, perl-format msgid "commenting on %s" -msgstr "Création de %s" +msgstr "Faire un commentaire sur %s" #: ../IkiWiki/Plugin/comments.pm:359 #, perl-format msgid "page '%s' doesn't exist, so you can't comment" -msgstr "" +msgstr "La page '%s' n'existe pas, commentaire impossible." #: ../IkiWiki/Plugin/comments.pm:366 #, perl-format msgid "comments on page '%s' are closed" -msgstr "" +msgstr "Le commentaire pour la page '%s' est terminé." #: ../IkiWiki/Plugin/comments.pm:468 msgid "Added a comment" -msgstr "" +msgstr "Commentaire ajouté" #: ../IkiWiki/Plugin/comments.pm:472 #, perl-format msgid "Added a comment: %s" -msgstr "" +msgstr "Commentaire ajouté : %s" #: ../IkiWiki/Plugin/comments.pm:565 msgid "Comments" -msgstr "" +msgstr "Commentaires" #: ../IkiWiki/Plugin/conditional.pm:27 ../IkiWiki/Plugin/cutpaste.pm:30 #: ../IkiWiki/Plugin/cutpaste.pm:45 ../IkiWiki/Plugin/cutpaste.pm:61 #: ../IkiWiki/Plugin/testpagespec.pm:26 #, perl-format msgid "%s parameter is required" -msgstr "le paramètre %s est obligatoire" +msgstr "Le paramètre %s est obligatoire" #: ../IkiWiki/Plugin/cutpaste.pm:66 msgid "no text was copied in this page" -msgstr "aucun texte n'a été copié dans cette page" +msgstr "Aucun texte n'a été copié dans cette page" #: ../IkiWiki/Plugin/cutpaste.pm:69 #, perl-format @@ -309,7 +309,7 @@ msgstr "Échec du lancement de « fortune »" #: ../IkiWiki/Receive.pm:129 #, perl-format msgid "you are not allowed to change %s" -msgstr "vous n'êtes pas autorisé à modifier %s" +msgstr "Vous n'êtes pas autorisé à modifier %s" #: ../IkiWiki/Plugin/git.pm:658 #, perl-format @@ -318,7 +318,7 @@ msgstr "Vous ne pouvez utiliser le mode %s pour les fichiers" #: ../IkiWiki/Plugin/git.pm:662 msgid "you are not allowed to change file modes" -msgstr "vous n'êtes pas autorisé à modifier le mode des fichiers" +msgstr "Vous n'êtes pas autorisé à modifier le mode des fichiers" #: ../IkiWiki/Plugin/google.pm:27 #, perl-format @@ -378,7 +378,7 @@ msgstr "Modification de page interdite" #: ../IkiWiki/Plugin/inline.pm:155 msgid "missing pages parameter" -msgstr "paramètre « pages » manquant" +msgstr "Paramètre « pages » manquant" #: ../IkiWiki/Plugin/inline.pm:204 #, perl-format @@ -662,7 +662,7 @@ msgstr "Aucun changement dans le nom du fichier n'a été spécifié" #: ../IkiWiki/Plugin/rename.pm:68 #, perl-format msgid "illegal name" -msgstr "appellation non autorisée" +msgstr "Appellation non autorisée" #: ../IkiWiki/Plugin/rename.pm:73 #, perl-format @@ -694,7 +694,7 @@ msgstr "Veuillez sélectionner la pièce jointe à renommer" #: ../IkiWiki/Plugin/rename.pm:338 #, perl-format msgid "rename %s to %s" -msgstr "renomme %s en %s" +msgstr "Renomme %s en %s" #: ../IkiWiki/Plugin/rename.pm:490 #, perl-format @@ -824,11 +824,11 @@ msgstr "activer %s ?" #: ../IkiWiki/Plugin/websetup.pm:236 msgid "you are not logged in as an admin" -msgstr "vous n'êtes pas authentifié comme administrateur" +msgstr "Vous n'êtes pas authentifié comme administrateur" #: ../IkiWiki/Plugin/websetup.pm:240 msgid "setup file for this wiki is not known" -msgstr "le fichier de configuration de ce wiki n'est pas connu" +msgstr "Le fichier de configuration de ce wiki n'est pas connu" #: ../IkiWiki/Plugin/websetup.pm:256 msgid "main" @@ -842,7 +842,7 @@ msgstr "Greffons" msgid "" "The configuration changes shown below require a wiki rebuild to take effect." msgstr "" -"les changements de configuration ci-dessous nécessitent une recompilation du " +"Les changements de configuration ci-dessous nécessitent une recompilation du " "wiki pour prendre effet" #: ../IkiWiki/Plugin/websetup.pm:399 @@ -868,7 +868,7 @@ msgstr "" #: ../IkiWiki/Receive.pm:85 #, perl-format msgid "bad file name %s" -msgstr "nom de fichier incorrect %s" +msgstr "Nom de fichier incorrect %s" #: ../IkiWiki/Render.pm:253 #, perl-format @@ -876,7 +876,7 @@ msgid "" "symlink found in srcdir path (%s) -- set allow_symlinks_before_srcdir to " "allow this" msgstr "" -"lien symbolique trouvé dans l'adresse de srcdir (%s) -- pour l'autoriser, " +"Lien symbolique trouvé dans l'adresse de srcdir (%s) -- pour l'autoriser, " "activez le paramètre « allow_symlinks_before_srcdir »." #: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:302 @@ -897,7 +897,7 @@ msgstr "Suppression de l'ancienne page %s" #: ../IkiWiki/Render.pm:400 #, perl-format msgid "scanning %s" -msgstr "Parcours de %s" +msgstr "Examen de %s" #: ../IkiWiki/Render.pm:405 #, perl-format @@ -1015,7 +1015,7 @@ msgstr "" #: ../IkiWiki.pm:526 msgid "cannot use multiple rcs plugins" -msgstr "impossible d'utiliser plusieurs systèmes de contrôle des versions" +msgstr "Impossible d'utiliser plusieurs systèmes de contrôle des versions" #: ../IkiWiki.pm:555 #, perl-format @@ -1025,7 +1025,7 @@ msgstr "Impossible de charger le greffon externe nécessaire au greffon %s : %s #: ../IkiWiki.pm:1187 #, perl-format msgid "preprocessing loop detected on %s at depth %i" -msgstr "une boucle de pré traitement a été détectée sur %s à hauteur de %i" +msgstr "Une boucle de pré traitement a été détectée sur %s à hauteur de %i" #: ../IkiWiki.pm:1688 msgid "yes" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: ikiwiki-gu\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-12-20 18:07-0500\n" +"POT-Creation-Date: 2008-12-26 21:41-0500\n" "PO-Revision-Date: 2007-01-11 16:05+0530\n" "Last-Translator: Kartik Mistry <kartik.mistry@gmail.com>\n" "Language-Team: Gujarati <team@utkarsh.org>\n" @@ -23,7 +23,7 @@ msgstr "તમારે પ્રથમ લોગ ઇન થવું પડશ msgid "login failed, perhaps you need to turn on cookies?" msgstr "પ્રવેશ નિષ્ફળ, કદાચ તમારી કુકીઓ સક્રિય બનાવવી પડશે?" -#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:310 +#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:280 msgid "Your login session has expired." msgstr "" @@ -40,87 +40,87 @@ msgstr "પ્રાથમિકતાઓ સંગ્રહાઇ." msgid "Admin" msgstr "" -#: ../IkiWiki/CGI.pm:253 +#: ../IkiWiki/CGI.pm:226 msgid "Preferences saved." msgstr "પ્રાથમિકતાઓ સંગ્રહાઇ." -#: ../IkiWiki/CGI.pm:271 +#: ../IkiWiki/CGI.pm:241 msgid "You are banned." msgstr "તમારા પર પ્રતિબંધ છે." -#: ../IkiWiki/CGI.pm:401 ../IkiWiki/CGI.pm:402 ../IkiWiki.pm:1204 +#: ../IkiWiki/CGI.pm:371 ../IkiWiki/CGI.pm:372 ../IkiWiki.pm:1204 msgid "Error" msgstr "ક્ષતિ" -#: ../IkiWiki/Plugin/aggregate.pm:80 +#: ../IkiWiki/Plugin/aggregate.pm:84 msgid "Aggregation triggered via web." msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:89 +#: ../IkiWiki/Plugin/aggregate.pm:93 msgid "Nothing to do right now, all feeds are up-to-date!" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:216 +#: ../IkiWiki/Plugin/aggregate.pm:220 #, perl-format msgid "missing %s parameter" msgstr "ખોવાયેલ %s વિકલ્પ" -#: ../IkiWiki/Plugin/aggregate.pm:251 +#: ../IkiWiki/Plugin/aggregate.pm:255 msgid "new feed" msgstr "નવું ફીડ" -#: ../IkiWiki/Plugin/aggregate.pm:265 +#: ../IkiWiki/Plugin/aggregate.pm:269 msgid "posts" msgstr "પોસ્ટ" -#: ../IkiWiki/Plugin/aggregate.pm:267 +#: ../IkiWiki/Plugin/aggregate.pm:271 msgid "new" msgstr "નવું" -#: ../IkiWiki/Plugin/aggregate.pm:431 +#: ../IkiWiki/Plugin/aggregate.pm:435 #, perl-format msgid "expiring %s (%s days old)" msgstr "જુનું કરે છે %s (%s દિવસો જુનું)" -#: ../IkiWiki/Plugin/aggregate.pm:438 +#: ../IkiWiki/Plugin/aggregate.pm:442 #, perl-format msgid "expiring %s" msgstr "જુનું કરે છે %s" -#: ../IkiWiki/Plugin/aggregate.pm:465 +#: ../IkiWiki/Plugin/aggregate.pm:469 #, perl-format msgid "last checked %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:469 +#: ../IkiWiki/Plugin/aggregate.pm:473 #, perl-format msgid "checking feed %s ..." msgstr "ફીડ %s ચકાસે છે ..." -#: ../IkiWiki/Plugin/aggregate.pm:474 +#: ../IkiWiki/Plugin/aggregate.pm:478 #, perl-format msgid "could not find feed at %s" msgstr "%s પર ફીડ મળી શક્યું નહી" -#: ../IkiWiki/Plugin/aggregate.pm:493 +#: ../IkiWiki/Plugin/aggregate.pm:497 msgid "feed not found" msgstr "ફીડ મળ્યું નહી" -#: ../IkiWiki/Plugin/aggregate.pm:504 +#: ../IkiWiki/Plugin/aggregate.pm:508 #, fuzzy, perl-format msgid "(invalid UTF-8 stripped from feed)" msgstr "ફીડમાંથી અયોગ્ય રીતે UTF-8 નીકાળેલ છે" -#: ../IkiWiki/Plugin/aggregate.pm:512 +#: ../IkiWiki/Plugin/aggregate.pm:516 #, perl-format msgid "(feed entities escaped)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:520 +#: ../IkiWiki/Plugin/aggregate.pm:524 msgid "feed crashed XML::Feed!" msgstr "ફીડ ભાંગી ગયું XML::Feed!" -#: ../IkiWiki/Plugin/aggregate.pm:601 +#: ../IkiWiki/Plugin/aggregate.pm:605 #, perl-format msgid "creating new page %s" msgstr "નવું પાનું %s બનાવે છે" @@ -157,15 +157,15 @@ msgstr "માપ બદલવામાં નિષ્ફળ: %s" msgid "there is already a page named %s" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:82 +#: ../IkiWiki/Plugin/attachment.pm:65 msgid "prohibited by allowed_attachments" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:190 +#: ../IkiWiki/Plugin/attachment.pm:140 msgid "bad attachment filename" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:232 +#: ../IkiWiki/Plugin/attachment.pm:182 msgid "attachment upload" msgstr "" @@ -189,12 +189,12 @@ msgstr "" msgid "There are no broken links!" msgstr "અહીં કોઇ તૂટેલ કડી નથી!" -#: ../IkiWiki/Plugin/comments.pm:119 ../IkiWiki/Plugin/format.pm:23 +#: ../IkiWiki/Plugin/comments.pm:120 ../IkiWiki/Plugin/format.pm:23 #, perl-format msgid "unsupported page format %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:124 +#: ../IkiWiki/Plugin/comments.pm:125 msgid "comment must have content" msgstr "" @@ -202,45 +202,45 @@ msgstr "" msgid "Anonymous" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:243 ../IkiWiki/Plugin/recentchanges.pm:101 +#: ../IkiWiki/Plugin/comments.pm:252 ../IkiWiki/Plugin/recentchanges.pm:110 #, fuzzy msgid "missing page" msgstr "ખોવાયેલ કિંમતો" -#: ../IkiWiki/Plugin/comments.pm:245 ../IkiWiki/Plugin/recentchanges.pm:103 +#: ../IkiWiki/Plugin/comments.pm:254 ../IkiWiki/Plugin/recentchanges.pm:112 #, perl-format msgid "The page %s does not exist." msgstr "" -#: ../IkiWiki/Plugin/comments.pm:334 ../IkiWiki/Plugin/editpage.pm:124 +#: ../IkiWiki/Plugin/comments.pm:343 ../IkiWiki/Plugin/editpage.pm:124 msgid "bad page name" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:341 +#: ../IkiWiki/Plugin/comments.pm:350 #, fuzzy, perl-format msgid "commenting on %s" msgstr "%s બનાવે છે" -#: ../IkiWiki/Plugin/comments.pm:359 +#: ../IkiWiki/Plugin/comments.pm:368 #, perl-format msgid "page '%s' doesn't exist, so you can't comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:366 +#: ../IkiWiki/Plugin/comments.pm:375 #, perl-format msgid "comments on page '%s' are closed" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:468 +#: ../IkiWiki/Plugin/comments.pm:483 msgid "Added a comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:472 +#: ../IkiWiki/Plugin/comments.pm:487 #, perl-format msgid "Added a comment: %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:565 +#: ../IkiWiki/Plugin/comments.pm:598 msgid "Comments" msgstr "" @@ -334,10 +334,6 @@ msgstr "જ્યારે શોધ પ્લગઇન ઉપયોગ કર msgid "Failed to parse url, cannot determine domain name" msgstr "" -#: ../IkiWiki/Plugin/googlecalendar.pm:32 -msgid "failed to find url in html" -msgstr "htmlમાં યુઆરએલ શોધવામાં નિષ્ફળ" - #: ../IkiWiki/Plugin/graphviz.pm:67 msgid "failed to run graphviz" msgstr "ગ્રાફવિઝ ચલાવવામાં નિષ્ફળ" @@ -412,7 +408,7 @@ msgstr "RPC::XML::Client મળ્યું નહી, પિંગ કરવા msgid "failed to run dot" msgstr "ડોટ ચલાવવામાં નિષ્ફળ" -#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 +#: ../IkiWiki/Plugin/lockedit.pm:47 #, fuzzy, perl-format msgid "%s is locked and cannot be edited" msgstr "%s એ %s દ્વારા તાળું મરાયેલ છે અને તેમાં સુધારો કરી શકાશે નહી" @@ -1022,7 +1018,7 @@ msgstr "" msgid "preprocessing loop detected on %s at depth %i" msgstr "%s પર શોધાયેલ લુપ %s પર ચલાવે છે %i ઉંડાણ પર" -#: ../IkiWiki.pm:1688 +#: ../IkiWiki.pm:1661 msgid "yes" msgstr "" @@ -1046,6 +1042,9 @@ msgstr "" msgid "What is the domain name of the web server?" msgstr "" +#~ msgid "failed to find url in html" +#~ msgstr "htmlમાં યુઆરએલ શોધવામાં નિષ્ફળ" + #~ msgid "processed ok at %s" #~ msgstr "આના પર બરાબર છે %s" diff --git a/po/ikiwiki.pot b/po/ikiwiki.pot index 1f59b99c7..7f664d111 100644 --- a/po/ikiwiki.pot +++ b/po/ikiwiki.pot @@ -24,7 +24,7 @@ msgstr "" msgid "login failed, perhaps you need to turn on cookies?" msgstr "" -#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:310 +#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:280 msgid "Your login session has expired." msgstr "" @@ -40,87 +40,87 @@ msgstr "" msgid "Admin" msgstr "" -#: ../IkiWiki/CGI.pm:253 +#: ../IkiWiki/CGI.pm:226 msgid "Preferences saved." msgstr "" -#: ../IkiWiki/CGI.pm:271 +#: ../IkiWiki/CGI.pm:241 msgid "You are banned." msgstr "" -#: ../IkiWiki/CGI.pm:401 ../IkiWiki/CGI.pm:402 ../IkiWiki.pm:1204 +#: ../IkiWiki/CGI.pm:371 ../IkiWiki/CGI.pm:372 ../IkiWiki.pm:1204 msgid "Error" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:80 +#: ../IkiWiki/Plugin/aggregate.pm:84 msgid "Aggregation triggered via web." msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:89 +#: ../IkiWiki/Plugin/aggregate.pm:93 msgid "Nothing to do right now, all feeds are up-to-date!" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:216 +#: ../IkiWiki/Plugin/aggregate.pm:220 #, perl-format msgid "missing %s parameter" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:251 +#: ../IkiWiki/Plugin/aggregate.pm:255 msgid "new feed" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:265 +#: ../IkiWiki/Plugin/aggregate.pm:269 msgid "posts" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:267 +#: ../IkiWiki/Plugin/aggregate.pm:271 msgid "new" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:431 +#: ../IkiWiki/Plugin/aggregate.pm:435 #, perl-format msgid "expiring %s (%s days old)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:438 +#: ../IkiWiki/Plugin/aggregate.pm:442 #, perl-format msgid "expiring %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:465 +#: ../IkiWiki/Plugin/aggregate.pm:469 #, perl-format msgid "last checked %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:469 +#: ../IkiWiki/Plugin/aggregate.pm:473 #, perl-format msgid "checking feed %s ..." msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:474 +#: ../IkiWiki/Plugin/aggregate.pm:478 #, perl-format msgid "could not find feed at %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:493 +#: ../IkiWiki/Plugin/aggregate.pm:497 msgid "feed not found" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:504 +#: ../IkiWiki/Plugin/aggregate.pm:508 #, perl-format msgid "(invalid UTF-8 stripped from feed)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:512 +#: ../IkiWiki/Plugin/aggregate.pm:516 #, perl-format msgid "(feed entities escaped)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:520 +#: ../IkiWiki/Plugin/aggregate.pm:524 msgid "feed crashed XML::Feed!" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:601 +#: ../IkiWiki/Plugin/aggregate.pm:605 #, perl-format msgid "creating new page %s" msgstr "" @@ -155,15 +155,15 @@ msgstr "" msgid "there is already a page named %s" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:82 +#: ../IkiWiki/Plugin/attachment.pm:65 msgid "prohibited by allowed_attachments" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:190 +#: ../IkiWiki/Plugin/attachment.pm:140 msgid "bad attachment filename" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:232 +#: ../IkiWiki/Plugin/attachment.pm:182 msgid "attachment upload" msgstr "" @@ -328,10 +328,6 @@ msgstr "" msgid "Failed to parse url, cannot determine domain name" msgstr "" -#: ../IkiWiki/Plugin/googlecalendar.pm:34 -msgid "failed to find url in html" -msgstr "" - #: ../IkiWiki/Plugin/graphviz.pm:67 msgid "failed to run graphviz" msgstr "" @@ -403,7 +399,7 @@ msgstr "" msgid "failed to run dot" msgstr "" -#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 +#: ../IkiWiki/Plugin/lockedit.pm:47 #, perl-format msgid "%s is locked and cannot be edited" msgstr "" @@ -1005,7 +1001,7 @@ msgstr "" msgid "preprocessing loop detected on %s at depth %i" msgstr "" -#: ../IkiWiki.pm:1695 +#: ../IkiWiki.pm:1661 msgid "yes" msgstr "" @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ikiwiki 1.51\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-12-20 18:07-0500\n" +"POT-Creation-Date: 2008-12-26 21:41-0500\n" "PO-Revision-Date: 2007-04-27 22:05+0200\n" "Last-Translator: Pawel Tecza <ptecza@net.icm.edu.pl>\n" "Language-Team: Debian L10n Polish <debian-l10n-polish@lists.debian.org>\n" @@ -26,7 +26,7 @@ msgstr "" "Nieudane logowanie. Proszę sprawdzić czy w przeglądarce włączone są " "ciasteczka (ang. cookies)" -#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:310 +#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:280 msgid "Your login session has expired." msgstr "" @@ -43,88 +43,88 @@ msgstr "Preferencje zapisane." msgid "Admin" msgstr "" -#: ../IkiWiki/CGI.pm:253 +#: ../IkiWiki/CGI.pm:226 msgid "Preferences saved." msgstr "Preferencje zapisane." -#: ../IkiWiki/CGI.pm:271 +#: ../IkiWiki/CGI.pm:241 msgid "You are banned." msgstr "Twój dostęp został zabroniony przez administratora." -#: ../IkiWiki/CGI.pm:401 ../IkiWiki/CGI.pm:402 ../IkiWiki.pm:1204 +#: ../IkiWiki/CGI.pm:371 ../IkiWiki/CGI.pm:372 ../IkiWiki.pm:1204 msgid "Error" msgstr "Błąd" -#: ../IkiWiki/Plugin/aggregate.pm:80 +#: ../IkiWiki/Plugin/aggregate.pm:84 msgid "Aggregation triggered via web." msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:89 +#: ../IkiWiki/Plugin/aggregate.pm:93 msgid "Nothing to do right now, all feeds are up-to-date!" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:216 +#: ../IkiWiki/Plugin/aggregate.pm:220 #, fuzzy, perl-format msgid "missing %s parameter" msgstr "brakujący parametr %s" -#: ../IkiWiki/Plugin/aggregate.pm:251 +#: ../IkiWiki/Plugin/aggregate.pm:255 msgid "new feed" msgstr "nowy kanał RSS" -#: ../IkiWiki/Plugin/aggregate.pm:265 +#: ../IkiWiki/Plugin/aggregate.pm:269 msgid "posts" msgstr "wpisy" -#: ../IkiWiki/Plugin/aggregate.pm:267 +#: ../IkiWiki/Plugin/aggregate.pm:271 msgid "new" msgstr "nowy wpis" -#: ../IkiWiki/Plugin/aggregate.pm:431 +#: ../IkiWiki/Plugin/aggregate.pm:435 #, perl-format msgid "expiring %s (%s days old)" msgstr "wygasający wpis %s (ma już %s dni)" -#: ../IkiWiki/Plugin/aggregate.pm:438 +#: ../IkiWiki/Plugin/aggregate.pm:442 #, perl-format msgid "expiring %s" msgstr "wygasający wpis %s" -#: ../IkiWiki/Plugin/aggregate.pm:465 +#: ../IkiWiki/Plugin/aggregate.pm:469 #, perl-format msgid "last checked %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:469 +#: ../IkiWiki/Plugin/aggregate.pm:473 #, perl-format msgid "checking feed %s ..." msgstr "sprawdzanie kanału RSS %s..." -#: ../IkiWiki/Plugin/aggregate.pm:474 +#: ../IkiWiki/Plugin/aggregate.pm:478 #, perl-format msgid "could not find feed at %s" msgstr "nie znaleziono kanału RSS pod adresem %s" -#: ../IkiWiki/Plugin/aggregate.pm:493 +#: ../IkiWiki/Plugin/aggregate.pm:497 #, fuzzy msgid "feed not found" msgstr "nieznaleziony kanał RSS" -#: ../IkiWiki/Plugin/aggregate.pm:504 +#: ../IkiWiki/Plugin/aggregate.pm:508 #, fuzzy, perl-format msgid "(invalid UTF-8 stripped from feed)" msgstr "Nieprawidłowe kodowanie UTF-8 usunięte z kanału RSS" -#: ../IkiWiki/Plugin/aggregate.pm:512 +#: ../IkiWiki/Plugin/aggregate.pm:516 #, perl-format msgid "(feed entities escaped)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:520 +#: ../IkiWiki/Plugin/aggregate.pm:524 msgid "feed crashed XML::Feed!" msgstr "awaria kanału RSS w module XML::Feed!" -#: ../IkiWiki/Plugin/aggregate.pm:601 +#: ../IkiWiki/Plugin/aggregate.pm:605 #, perl-format msgid "creating new page %s" msgstr "tworzenie nowej strony %s" @@ -161,15 +161,15 @@ msgstr "awaria w trakcie zmiany rozmiaru: %s" msgid "there is already a page named %s" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:82 +#: ../IkiWiki/Plugin/attachment.pm:65 msgid "prohibited by allowed_attachments" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:190 +#: ../IkiWiki/Plugin/attachment.pm:140 msgid "bad attachment filename" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:232 +#: ../IkiWiki/Plugin/attachment.pm:182 msgid "attachment upload" msgstr "" @@ -193,12 +193,12 @@ msgstr "" msgid "There are no broken links!" msgstr "Wszystkie odnośniki są aktualne!" -#: ../IkiWiki/Plugin/comments.pm:119 ../IkiWiki/Plugin/format.pm:23 +#: ../IkiWiki/Plugin/comments.pm:120 ../IkiWiki/Plugin/format.pm:23 #, perl-format msgid "unsupported page format %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:124 +#: ../IkiWiki/Plugin/comments.pm:125 msgid "comment must have content" msgstr "" @@ -206,45 +206,45 @@ msgstr "" msgid "Anonymous" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:243 ../IkiWiki/Plugin/recentchanges.pm:101 +#: ../IkiWiki/Plugin/comments.pm:252 ../IkiWiki/Plugin/recentchanges.pm:110 #, fuzzy msgid "missing page" msgstr "brakujące wartości" -#: ../IkiWiki/Plugin/comments.pm:245 ../IkiWiki/Plugin/recentchanges.pm:103 +#: ../IkiWiki/Plugin/comments.pm:254 ../IkiWiki/Plugin/recentchanges.pm:112 #, perl-format msgid "The page %s does not exist." msgstr "" -#: ../IkiWiki/Plugin/comments.pm:334 ../IkiWiki/Plugin/editpage.pm:124 +#: ../IkiWiki/Plugin/comments.pm:343 ../IkiWiki/Plugin/editpage.pm:124 msgid "bad page name" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:341 +#: ../IkiWiki/Plugin/comments.pm:350 #, fuzzy, perl-format msgid "commenting on %s" msgstr "tworzenie %s" -#: ../IkiWiki/Plugin/comments.pm:359 +#: ../IkiWiki/Plugin/comments.pm:368 #, perl-format msgid "page '%s' doesn't exist, so you can't comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:366 +#: ../IkiWiki/Plugin/comments.pm:375 #, perl-format msgid "comments on page '%s' are closed" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:468 +#: ../IkiWiki/Plugin/comments.pm:483 msgid "Added a comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:472 +#: ../IkiWiki/Plugin/comments.pm:487 #, perl-format msgid "Added a comment: %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:565 +#: ../IkiWiki/Plugin/comments.pm:598 msgid "Comments" msgstr "" @@ -338,11 +338,6 @@ msgstr "Wtyczka do wyszukiwarka wymaga podania %s" msgid "Failed to parse url, cannot determine domain name" msgstr "" -#: ../IkiWiki/Plugin/googlecalendar.pm:32 -#, fuzzy -msgid "failed to find url in html" -msgstr "awaria w trakcie wyszukiwania adresu URL na stronie HTML" - #: ../IkiWiki/Plugin/graphviz.pm:67 #, fuzzy msgid "failed to run graphviz" @@ -421,7 +416,7 @@ msgstr "Nieznaleziony moduł RPC::XML::Client, brak możliwości pingowania" msgid "failed to run dot" msgstr "awaria w trakcie uruchamiania dot" -#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 +#: ../IkiWiki/Plugin/lockedit.pm:47 #, fuzzy, perl-format msgid "%s is locked and cannot be edited" msgstr "" @@ -1049,7 +1044,7 @@ msgstr "" msgid "preprocessing loop detected on %s at depth %i" msgstr "polecenie preprocesora %s wykryte w %s na głębokości %i" -#: ../IkiWiki.pm:1688 +#: ../IkiWiki.pm:1661 msgid "yes" msgstr "" @@ -1073,6 +1068,10 @@ msgstr "" msgid "What is the domain name of the web server?" msgstr "" +#, fuzzy +#~ msgid "failed to find url in html" +#~ msgstr "awaria w trakcie wyszukiwania adresu URL na stronie HTML" + #~ msgid "processed ok at %s" #~ msgstr "kanał RSS przetworzony w dniu %s" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: ikiwiki\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-12-20 18:07-0500\n" +"POT-Creation-Date: 2008-12-26 21:41-0500\n" "PO-Revision-Date: 2007-01-10 23:47+0100\n" "Last-Translator: Daniel Nylander <po@danielnylander.se>\n" "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" @@ -23,7 +23,7 @@ msgstr "Du måste logga in först." msgid "login failed, perhaps you need to turn on cookies?" msgstr "" -#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:310 +#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:280 msgid "Your login session has expired." msgstr "" @@ -40,88 +40,88 @@ msgstr "Inställningar sparades." msgid "Admin" msgstr "" -#: ../IkiWiki/CGI.pm:253 +#: ../IkiWiki/CGI.pm:226 msgid "Preferences saved." msgstr "Inställningar sparades." -#: ../IkiWiki/CGI.pm:271 +#: ../IkiWiki/CGI.pm:241 msgid "You are banned." msgstr "Du är bannlyst." -#: ../IkiWiki/CGI.pm:401 ../IkiWiki/CGI.pm:402 ../IkiWiki.pm:1204 +#: ../IkiWiki/CGI.pm:371 ../IkiWiki/CGI.pm:372 ../IkiWiki.pm:1204 msgid "Error" msgstr "Fel" -#: ../IkiWiki/Plugin/aggregate.pm:80 +#: ../IkiWiki/Plugin/aggregate.pm:84 msgid "Aggregation triggered via web." msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:89 +#: ../IkiWiki/Plugin/aggregate.pm:93 msgid "Nothing to do right now, all feeds are up-to-date!" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:216 +#: ../IkiWiki/Plugin/aggregate.pm:220 #, fuzzy, perl-format msgid "missing %s parameter" msgstr "mall saknar id-parameter" -#: ../IkiWiki/Plugin/aggregate.pm:251 +#: ../IkiWiki/Plugin/aggregate.pm:255 msgid "new feed" msgstr "ny kanal" -#: ../IkiWiki/Plugin/aggregate.pm:265 +#: ../IkiWiki/Plugin/aggregate.pm:269 msgid "posts" msgstr "inlägg" -#: ../IkiWiki/Plugin/aggregate.pm:267 +#: ../IkiWiki/Plugin/aggregate.pm:271 msgid "new" msgstr "ny" -#: ../IkiWiki/Plugin/aggregate.pm:431 +#: ../IkiWiki/Plugin/aggregate.pm:435 #, perl-format msgid "expiring %s (%s days old)" msgstr "låter %s gå ut (%s dagar gammal)" -#: ../IkiWiki/Plugin/aggregate.pm:438 +#: ../IkiWiki/Plugin/aggregate.pm:442 #, perl-format msgid "expiring %s" msgstr "låter %s gå ut" -#: ../IkiWiki/Plugin/aggregate.pm:465 +#: ../IkiWiki/Plugin/aggregate.pm:469 #, perl-format msgid "last checked %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:469 +#: ../IkiWiki/Plugin/aggregate.pm:473 #, perl-format msgid "checking feed %s ..." msgstr "kontrollerar kanalen %s ..." -#: ../IkiWiki/Plugin/aggregate.pm:474 +#: ../IkiWiki/Plugin/aggregate.pm:478 #, perl-format msgid "could not find feed at %s" msgstr "kunde inte hitta kanalen på %s" -#: ../IkiWiki/Plugin/aggregate.pm:493 +#: ../IkiWiki/Plugin/aggregate.pm:497 #, fuzzy msgid "feed not found" msgstr "mallen %s hittades inte" -#: ../IkiWiki/Plugin/aggregate.pm:504 +#: ../IkiWiki/Plugin/aggregate.pm:508 #, perl-format msgid "(invalid UTF-8 stripped from feed)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:512 +#: ../IkiWiki/Plugin/aggregate.pm:516 #, perl-format msgid "(feed entities escaped)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:520 +#: ../IkiWiki/Plugin/aggregate.pm:524 msgid "feed crashed XML::Feed!" msgstr "kanalen kraschade XML::Feed!" -#: ../IkiWiki/Plugin/aggregate.pm:601 +#: ../IkiWiki/Plugin/aggregate.pm:605 #, perl-format msgid "creating new page %s" msgstr "skapar nya sidan %s" @@ -158,15 +158,15 @@ msgstr "misslyckades med att skriva %s: %s" msgid "there is already a page named %s" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:82 +#: ../IkiWiki/Plugin/attachment.pm:65 msgid "prohibited by allowed_attachments" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:190 +#: ../IkiWiki/Plugin/attachment.pm:140 msgid "bad attachment filename" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:232 +#: ../IkiWiki/Plugin/attachment.pm:182 msgid "attachment upload" msgstr "" @@ -190,12 +190,12 @@ msgstr "" msgid "There are no broken links!" msgstr "Det finns inga trasiga länkar!" -#: ../IkiWiki/Plugin/comments.pm:119 ../IkiWiki/Plugin/format.pm:23 +#: ../IkiWiki/Plugin/comments.pm:120 ../IkiWiki/Plugin/format.pm:23 #, perl-format msgid "unsupported page format %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:124 +#: ../IkiWiki/Plugin/comments.pm:125 msgid "comment must have content" msgstr "" @@ -203,45 +203,45 @@ msgstr "" msgid "Anonymous" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:243 ../IkiWiki/Plugin/recentchanges.pm:101 +#: ../IkiWiki/Plugin/comments.pm:252 ../IkiWiki/Plugin/recentchanges.pm:110 #, fuzzy msgid "missing page" msgstr "mall saknar id-parameter" -#: ../IkiWiki/Plugin/comments.pm:245 ../IkiWiki/Plugin/recentchanges.pm:103 +#: ../IkiWiki/Plugin/comments.pm:254 ../IkiWiki/Plugin/recentchanges.pm:112 #, perl-format msgid "The page %s does not exist." msgstr "" -#: ../IkiWiki/Plugin/comments.pm:334 ../IkiWiki/Plugin/editpage.pm:124 +#: ../IkiWiki/Plugin/comments.pm:343 ../IkiWiki/Plugin/editpage.pm:124 msgid "bad page name" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:341 +#: ../IkiWiki/Plugin/comments.pm:350 #, fuzzy, perl-format msgid "commenting on %s" msgstr "skapar %s" -#: ../IkiWiki/Plugin/comments.pm:359 +#: ../IkiWiki/Plugin/comments.pm:368 #, perl-format msgid "page '%s' doesn't exist, so you can't comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:366 +#: ../IkiWiki/Plugin/comments.pm:375 #, perl-format msgid "comments on page '%s' are closed" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:468 +#: ../IkiWiki/Plugin/comments.pm:483 msgid "Added a comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:472 +#: ../IkiWiki/Plugin/comments.pm:487 #, perl-format msgid "Added a comment: %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:565 +#: ../IkiWiki/Plugin/comments.pm:598 msgid "Comments" msgstr "" @@ -335,11 +335,6 @@ msgstr "Måste ange %s när sökinsticket används" msgid "Failed to parse url, cannot determine domain name" msgstr "" -#: ../IkiWiki/Plugin/googlecalendar.pm:32 -#, fuzzy -msgid "failed to find url in html" -msgstr "googlecalendar misslyckades med att hitta url i html" - #: ../IkiWiki/Plugin/graphviz.pm:67 #, fuzzy msgid "failed to run graphviz" @@ -416,7 +411,7 @@ msgstr "RPC::XML::Client hittades inte, pingar inte" msgid "failed to run dot" msgstr "linkmap misslyckades att köra dot" -#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 +#: ../IkiWiki/Plugin/lockedit.pm:47 #, fuzzy, perl-format msgid "%s is locked and cannot be edited" msgstr "%s är låst av %s och kan inte redigeras" @@ -1036,7 +1031,7 @@ msgstr "" msgid "preprocessing loop detected on %s at depth %i" msgstr "%s förbehandlingsslinga detekterades på %s, djup %i" -#: ../IkiWiki.pm:1688 +#: ../IkiWiki.pm:1661 msgid "yes" msgstr "" @@ -1060,6 +1055,10 @@ msgstr "" msgid "What is the domain name of the web server?" msgstr "" +#, fuzzy +#~ msgid "failed to find url in html" +#~ msgstr "googlecalendar misslyckades med att hitta url i html" + #~ msgid "processed ok at %s" #~ msgstr "behandlad ok på %s" @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: ikiwiki\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-12-20 18:07-0500\n" +"POT-Creation-Date: 2008-12-26 21:41-0500\n" "PO-Revision-Date: 2007-01-13 15:31+1030\n" "Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n" "Language-Team: Vietnamese <vi-VN@googlegroups.com>\n" @@ -24,7 +24,7 @@ msgstr "Trước tiên bạn cần phải đăng nhập." msgid "login failed, perhaps you need to turn on cookies?" msgstr "" -#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:310 +#: ../IkiWiki/CGI.pm:163 ../IkiWiki/CGI.pm:280 msgid "Your login session has expired." msgstr "" @@ -41,88 +41,88 @@ msgstr "Tùy thích đã được lưu." msgid "Admin" msgstr "" -#: ../IkiWiki/CGI.pm:253 +#: ../IkiWiki/CGI.pm:226 msgid "Preferences saved." msgstr "Tùy thích đã được lưu." -#: ../IkiWiki/CGI.pm:271 +#: ../IkiWiki/CGI.pm:241 msgid "You are banned." msgstr "Bạn bị cấm ra." -#: ../IkiWiki/CGI.pm:401 ../IkiWiki/CGI.pm:402 ../IkiWiki.pm:1204 +#: ../IkiWiki/CGI.pm:371 ../IkiWiki/CGI.pm:372 ../IkiWiki.pm:1204 msgid "Error" msgstr "Lỗi" -#: ../IkiWiki/Plugin/aggregate.pm:80 +#: ../IkiWiki/Plugin/aggregate.pm:84 msgid "Aggregation triggered via web." msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:89 +#: ../IkiWiki/Plugin/aggregate.pm:93 msgid "Nothing to do right now, all feeds are up-to-date!" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:216 +#: ../IkiWiki/Plugin/aggregate.pm:220 #, fuzzy, perl-format msgid "missing %s parameter" msgstr "mẫu thiếu tham số id" -#: ../IkiWiki/Plugin/aggregate.pm:251 +#: ../IkiWiki/Plugin/aggregate.pm:255 msgid "new feed" msgstr "nguồn tin mới" -#: ../IkiWiki/Plugin/aggregate.pm:265 +#: ../IkiWiki/Plugin/aggregate.pm:269 msgid "posts" msgstr "bài" -#: ../IkiWiki/Plugin/aggregate.pm:267 +#: ../IkiWiki/Plugin/aggregate.pm:271 msgid "new" msgstr "mới" -#: ../IkiWiki/Plugin/aggregate.pm:431 +#: ../IkiWiki/Plugin/aggregate.pm:435 #, perl-format msgid "expiring %s (%s days old)" msgstr "đang mãn hạn %s (cũ %s ngày)" -#: ../IkiWiki/Plugin/aggregate.pm:438 +#: ../IkiWiki/Plugin/aggregate.pm:442 #, perl-format msgid "expiring %s" msgstr "đang mãn hạn %s" -#: ../IkiWiki/Plugin/aggregate.pm:465 +#: ../IkiWiki/Plugin/aggregate.pm:469 #, perl-format msgid "last checked %s" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:469 +#: ../IkiWiki/Plugin/aggregate.pm:473 #, perl-format msgid "checking feed %s ..." msgstr "đang kiểm tra nguồn tin %s ..." -#: ../IkiWiki/Plugin/aggregate.pm:474 +#: ../IkiWiki/Plugin/aggregate.pm:478 #, perl-format msgid "could not find feed at %s" msgstr "không tìm thấy nguồn tin ở %s" -#: ../IkiWiki/Plugin/aggregate.pm:493 +#: ../IkiWiki/Plugin/aggregate.pm:497 #, fuzzy msgid "feed not found" msgstr "không tìm thấy mẫu %s" -#: ../IkiWiki/Plugin/aggregate.pm:504 +#: ../IkiWiki/Plugin/aggregate.pm:508 #, perl-format msgid "(invalid UTF-8 stripped from feed)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:512 +#: ../IkiWiki/Plugin/aggregate.pm:516 #, perl-format msgid "(feed entities escaped)" msgstr "" -#: ../IkiWiki/Plugin/aggregate.pm:520 +#: ../IkiWiki/Plugin/aggregate.pm:524 msgid "feed crashed XML::Feed!" msgstr "nguồn tin đã gây ra XML::Feed sụp đổ." -#: ../IkiWiki/Plugin/aggregate.pm:601 +#: ../IkiWiki/Plugin/aggregate.pm:605 #, perl-format msgid "creating new page %s" msgstr "đang tạo trang mới %s" @@ -159,15 +159,15 @@ msgstr "lỗi ghi %s: %s" msgid "there is already a page named %s" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:82 +#: ../IkiWiki/Plugin/attachment.pm:65 msgid "prohibited by allowed_attachments" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:190 +#: ../IkiWiki/Plugin/attachment.pm:140 msgid "bad attachment filename" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:232 +#: ../IkiWiki/Plugin/attachment.pm:182 msgid "attachment upload" msgstr "" @@ -191,12 +191,12 @@ msgstr "" msgid "There are no broken links!" msgstr "Không có liên kết bị ngắt nào." -#: ../IkiWiki/Plugin/comments.pm:119 ../IkiWiki/Plugin/format.pm:23 +#: ../IkiWiki/Plugin/comments.pm:120 ../IkiWiki/Plugin/format.pm:23 #, perl-format msgid "unsupported page format %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:124 +#: ../IkiWiki/Plugin/comments.pm:125 msgid "comment must have content" msgstr "" @@ -204,45 +204,45 @@ msgstr "" msgid "Anonymous" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:243 ../IkiWiki/Plugin/recentchanges.pm:101 +#: ../IkiWiki/Plugin/comments.pm:252 ../IkiWiki/Plugin/recentchanges.pm:110 #, fuzzy msgid "missing page" msgstr "mẫu thiếu tham số id" -#: ../IkiWiki/Plugin/comments.pm:245 ../IkiWiki/Plugin/recentchanges.pm:103 +#: ../IkiWiki/Plugin/comments.pm:254 ../IkiWiki/Plugin/recentchanges.pm:112 #, perl-format msgid "The page %s does not exist." msgstr "" -#: ../IkiWiki/Plugin/comments.pm:334 ../IkiWiki/Plugin/editpage.pm:124 +#: ../IkiWiki/Plugin/comments.pm:343 ../IkiWiki/Plugin/editpage.pm:124 msgid "bad page name" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:341 +#: ../IkiWiki/Plugin/comments.pm:350 #, fuzzy, perl-format msgid "commenting on %s" msgstr "đang tạo %s" -#: ../IkiWiki/Plugin/comments.pm:359 +#: ../IkiWiki/Plugin/comments.pm:368 #, perl-format msgid "page '%s' doesn't exist, so you can't comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:366 +#: ../IkiWiki/Plugin/comments.pm:375 #, perl-format msgid "comments on page '%s' are closed" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:468 +#: ../IkiWiki/Plugin/comments.pm:483 msgid "Added a comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:472 +#: ../IkiWiki/Plugin/comments.pm:487 #, perl-format msgid "Added a comment: %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:565 +#: ../IkiWiki/Plugin/comments.pm:598 msgid "Comments" msgstr "" @@ -336,11 +336,6 @@ msgstr "Cần phải xác định %s khi dùng bổ sung tìm kiếm" msgid "Failed to parse url, cannot determine domain name" msgstr "" -#: ../IkiWiki/Plugin/googlecalendar.pm:32 -#, fuzzy -msgid "failed to find url in html" -msgstr "googlecalendar không tìm thấy địa chỉ URL trong mã HTML" - #: ../IkiWiki/Plugin/graphviz.pm:67 #, fuzzy msgid "failed to run graphviz" @@ -419,7 +414,7 @@ msgstr "Không tìm thấy RPC::XML::Client nên không gửi gói tin ping" msgid "failed to run dot" msgstr "linkmap không chạy dot được" -#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 +#: ../IkiWiki/Plugin/lockedit.pm:47 #, fuzzy, perl-format msgid "%s is locked and cannot be edited" msgstr "%s bị %s khoá nên không thể sửa được" @@ -1037,7 +1032,7 @@ msgstr "" msgid "preprocessing loop detected on %s at depth %i" msgstr "vòng lặp tiền xử lý %s được phát hiện trên %s ở độ sâu %i" -#: ../IkiWiki.pm:1688 +#: ../IkiWiki.pm:1661 msgid "yes" msgstr "" @@ -1061,6 +1056,10 @@ msgstr "" msgid "What is the domain name of the web server?" msgstr "" +#, fuzzy +#~ msgid "failed to find url in html" +#~ msgstr "googlecalendar không tìm thấy địa chỉ URL trong mã HTML" + #~ msgid "processed ok at %s" #~ msgstr "đã xử lý được ở %s" diff --git a/t/basewiki_brokenlinks/index.mdwn b/t/basewiki_brokenlinks/index.mdwn index 0a6b2c39e..41768f782 100644 --- a/t/basewiki_brokenlinks/index.mdwn +++ b/t/basewiki_brokenlinks/index.mdwn @@ -1 +1 @@ -[[brokenlinks ]] +[[!brokenlinks ]] diff --git a/t/pagespec_match.t b/t/pagespec_match.t index 7c0ac235b..69cf361de 100755 --- a/t/pagespec_match.t +++ b/t/pagespec_match.t @@ -1,7 +1,7 @@ #!/usr/bin/perl use warnings; use strict; -use Test::More tests => 58; +use Test::More tests => 51; BEGIN { use_ok("IkiWiki"); } @@ -77,12 +77,3 @@ ok(! pagespec_match("foo", "no_such_function(foo)"), "foo"); my $ret=pagespec_match("foo", "(invalid"); ok(! $ret, "syntax error"); ok($ret =~ /syntax error/, "error message"); - -# old style globlists -ok(pagespec_match("foo", "foo bar"), "simple list"); -ok(pagespec_match("bar", "foo bar"), "simple list 2"); -ok(pagespec_match("foo", "f?? !foz")); -ok(! pagespec_match("foo", "f?? !foo")); -ok(! pagespec_match("foo", "* !foo")); -ok(! pagespec_match("foo", "foo !foo")); -ok(! pagespec_match("foo.png", "* !*.*")); diff --git a/t/pagespec_merge.t b/t/pagespec_merge.t index cbb06219c..9e38d5761 100755 --- a/t/pagespec_merge.t +++ b/t/pagespec_merge.t @@ -28,17 +28,17 @@ ok(same("!foo", "!bar", "foo"), "double inversion failed match"); ok(same("!foo", "!bar", "bar"), "double inversion failed match 2"); ok(same("*", "!bar", "foo"), "glob+inversion match"); ok(same("*", "!bar", "bar"), "matching glob and matching inversion"); -ok(same("* !foo", "!bar", "bar"), "matching glob and matching inversion"); -ok(same("* !foo", "!bar", "foo"), "matching glob with matching inversion and non-matching inversion"); -ok(same("* !foo", "!foo", "foo"), "matching glob with matching inversion and matching inversion"); +ok(same("* and !foo", "!bar", "bar"), "matching glob and matching inversion"); +ok(same("* and !foo", "!bar", "foo"), "matching glob with matching inversion and non-matching inversion"); +ok(same("* and !foo", "!foo", "foo"), "matching glob with matching inversion and matching inversion"); ok(same("b??", "!b??", "bar"), "matching glob and matching inverted glob"); ok(same("f?? !f??", "!bar", "bar"), "matching glob and matching inverted glob"); ok(same("b??", "!b?z", "bar"), "matching glob and non-matching inverted glob"); ok(same("f?? !f?z", "!bar", "bar"), "matching glob and non-matching inverted glob"); ok(same("!foo bar baz", "!bar", "bar"), "matching list and matching inversion"); ok(pagespec_match("foo/Discussion", - IkiWiki::pagespec_merge("* !*/Discussion", "*/Discussion")), "should match"); -ok(same("* !*/Discussion", "*/Discussion", "foo/Discussion"), "Discussion merge 1"); -ok(same("*/Discussion", "* !*/Discussion", "foo/Discussion"), "Discussion merge 2"); + IkiWiki::pagespec_merge("* and !*/Discussion", "*/Discussion")), "should match"); +ok(same("* and !*/Discussion", "*/Discussion", "foo/Discussion"), "Discussion merge 1"); +ok(same("*/Discussion", "* and !*/Discussion", "foo/Discussion"), "Discussion merge 2"); ok(same("*/Discussion !*/bar", "*/bar !*/Discussion", "foo/Discussion"), "bidirectional merge 1"); ok(same("*/Discussion !*/bar", "*/bar !*/Discussion", "foo/bar"), "bidirectional merge 2"); diff --git a/t/tinyblog/index.mdwn b/t/tinyblog/index.mdwn index 010c85de1..72ba7846a 100644 --- a/t/tinyblog/index.mdwn +++ b/t/tinyblog/index.mdwn @@ -1 +1 @@ -[[inline pages="post" rss=yes]] +[[!inline pages="post" rss=yes]] diff --git a/underlays/basewiki/directive.mdwn b/underlays/basewiki/directive.mdwn deleted file mode 120000 index e8ce42cba..000000000 --- a/underlays/basewiki/directive.mdwn +++ /dev/null @@ -1 +0,0 @@ -../../doc/ikiwiki/directive.mdwn
\ No newline at end of file |