From: Joey Hess Date: Wed, 15 Oct 2008 23:36:48 +0000 (-0400) Subject: Merge branch 'master' into darcs X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/commitdiff_plain/1f7f5d5e0e21920c5f15290cd34594ad91077071?hp=917f54a777d152ee5963acd81bf8a2800a0507b1 Merge branch 'master' into darcs --- diff --git a/IkiWiki.pm b/IkiWiki.pm index 82370f430..633c51381 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -1919,4 +1919,61 @@ sub match_creation_year ($$;@) { #{{{ } } #}}} +sub match_user ($$;@) { #{{{ + shift; + my $user=shift; + my %params=@_; + + if (! exists $params{user}) { + return IkiWiki::FailReason->new("no user specified"); + } + + if (defined $params{user} && lc $params{user} eq lc $user) { + return IkiWiki::SuccessReason->new("user is $user"); + } + elsif (! defined $params{user}) { + return IkiWiki::FailReason->new("not logged in"); + } + else { + return IkiWiki::FailReason->new("user is $params{user}, not $user"); + } +} #}}} + +sub match_admin ($$;@) { #{{{ + shift; + shift; + my %params=@_; + + if (! exists $params{user}) { + return IkiWiki::FailReason->new("no user specified"); + } + + if (defined $params{user} && IkiWiki::is_admin($params{user})) { + return IkiWiki::SuccessReason->new("user is an admin"); + } + elsif (! defined $params{user}) { + return IkiWiki::FailReason->new("not logged in"); + } + else { + return IkiWiki::FailReason->new("user is not an admin"); + } +} #}}} + +sub match_ip ($$;@) { #{{{ + shift; + my $ip=shift; + my %params=@_; + + if (! exists $params{ip}) { + return IkiWiki::FailReason->new("no IP specified"); + } + + if (defined $params{ip} && lc $params{ip} eq lc $ip) { + return IkiWiki::SuccessReason->new("IP is $ip"); + } + else { + return IkiWiki::FailReason->new("IP is $params{ip}, not $ip"); + } +} #}}} + 1 diff --git a/IkiWiki/Plugin/attachment.pm b/IkiWiki/Plugin/attachment.pm index 837992841..dcac3e820 100644 --- a/IkiWiki/Plugin/attachment.pm +++ b/IkiWiki/Plugin/attachment.pm @@ -94,7 +94,8 @@ sub formbuilder_setup (@) { #{{{ my $form=$params{form}; my $q=$params{cgi}; - if (defined $form->field("do") && $form->field("do") eq "edit") { + if (defined $form->field("do") && ($form->field("do") eq "edit" || + $form->field("do") eq "create")) { # Add attachment field, set type to multipart. $form->enctype(&CGI::MULTIPART); $form->field(name => 'attachment', type => 'file'); @@ -158,7 +159,7 @@ sub formbuilder (@) { #{{{ my $form=$params{form}; my $q=$params{cgi}; - return if ! defined $form->field("do") || $form->field("do") ne "edit"; + return if ! defined $form->field("do") || ($form->field("do") ne "edit" && $form->field("do") ne "create") ; my $filename=$q->param('attachment'); if (defined $filename && length $filename && @@ -288,63 +289,4 @@ sub attachment_list ($) { #{{{ return sort { $b->{mtime_raw} <=> $a->{mtime_raw} || $a->{link} cmp $b->{link} } @ret; } #}}} -package IkiWiki::PageSpec; - -sub match_user ($$;@) { #{{{ - shift; - my $user=shift; - my %params=@_; - - if (! exists $params{user}) { - return IkiWiki::FailReason->new("no user specified"); - } - - if (defined $params{user} && lc $params{user} eq lc $user) { - return IkiWiki::SuccessReason->new("user is $user"); - } - elsif (! defined $params{user}) { - return IkiWiki::FailReason->new("not logged in"); - } - else { - return IkiWiki::FailReason->new("user is $params{user}, not $user"); - } -} #}}} - -sub match_admin ($$;@) { #{{{ - shift; - shift; - my %params=@_; - - if (! exists $params{user}) { - return IkiWiki::FailReason->new("no user specified"); - } - - if (defined $params{user} && IkiWiki::is_admin($params{user})) { - return IkiWiki::SuccessReason->new("user is an admin"); - } - elsif (! defined $params{user}) { - return IkiWiki::FailReason->new("not logged in"); - } - else { - return IkiWiki::FailReason->new("user is not an admin"); - } -} #}}} - -sub match_ip ($$;@) { #{{{ - shift; - my $ip=shift; - my %params=@_; - - if (! exists $params{ip}) { - return IkiWiki::FailReason->new("no IP specified"); - } - - if (defined $params{ip} && lc $params{ip} eq lc $ip) { - return IkiWiki::SuccessReason->new("IP is $ip"); - } - else { - return IkiWiki::FailReason->new("IP is $params{ip}, not $ip"); - } -} #}}} - 1 diff --git a/IkiWiki/Plugin/autoindex.pm b/IkiWiki/Plugin/autoindex.pm index a79a06314..d1b3edb1f 100644 --- a/IkiWiki/Plugin/autoindex.pm +++ b/IkiWiki/Plugin/autoindex.pm @@ -97,7 +97,9 @@ sub refresh () { #{{{ if ($config{rcs}) { IkiWiki::disable_commit_hook(); } - genindex($_) foreach @needed; + foreach my $page (@needed) { + genindex($page); + } if ($config{rcs}) { IkiWiki::rcs_commit_staged( gettext("automatic index generation"), diff --git a/IkiWiki/Plugin/editpage.pm b/IkiWiki/Plugin/editpage.pm index 794548c6d..30c93df20 100644 --- a/IkiWiki/Plugin/editpage.pm +++ b/IkiWiki/Plugin/editpage.pm @@ -250,7 +250,7 @@ sub cgi_editpage ($$) { #{{{ file_pruned($from, $config{srcdir}) || $from=~/^\// || $absolute || - $form->submitted eq "Preview") { + $form->submitted) { @page_locs=$best_loc=$page; } else { diff --git a/IkiWiki/Plugin/goodstuff.pm b/IkiWiki/Plugin/goodstuff.pm index 08ed960b4..ed1f4ddfc 100644 --- a/IkiWiki/Plugin/goodstuff.pm +++ b/IkiWiki/Plugin/goodstuff.pm @@ -27,7 +27,9 @@ my @bundle=qw{ sub import { #{{{ hook(type => "getsetup", id => "goodstuff", call => \&getsetup); - IkiWiki::loadplugin($_) foreach @bundle; + foreach my $plugin (@bundle) { + IkiWiki::loadplugin($plugin); + } } # }}} sub getsetup { #{{{ diff --git a/IkiWiki/Plugin/google.pm b/IkiWiki/Plugin/google.pm new file mode 100644 index 000000000..92b9b29eb --- /dev/null +++ b/IkiWiki/Plugin/google.pm @@ -0,0 +1,54 @@ +#!/usr/bin/perl +package IkiWiki::Plugin::google; + +use warnings; +use strict; +use IkiWiki 2.00; +use URI; + +my $host; + +sub import { #{{{ + hook(type => "getsetup", id => "google", call => \&getsetup); + hook(type => "checkconfig", id => "google", call => \&checkconfig); + hook(type => "pagetemplate", id => "google", call => \&pagetemplate); +} # }}} + +sub getsetup () { #{{{ + return + plugin => { + safe => 1, + rebuild => 1, + }, +} #}}} + +sub checkconfig () { #{{{ + if (! length $config{url}) { + error(sprintf(gettext("Must specify %s when using the google search plugin"), "url")); + } + my $uri=URI->new($config{url}); + if (! $uri || ! defined $uri->host) { + error(gettext("Failed to parse url, cannot determine domain name")); + } + $host=$uri->host; +} #}}} + +my $form; +sub pagetemplate (@) { #{{{ + my %params=@_; + my $page=$params{page}; + my $template=$params{template}; + + # Add search box to page header. + if ($template->query(name => "searchform")) { + if (! defined $form) { + my $searchform = template("googleform.tmpl", blind_cache => 1); + $searchform->param(sitefqdn => $host); + $form=$searchform->output; + } + + $template->param(searchform => $form); + } +} #}}} + +1 diff --git a/IkiWiki/Plugin/inline.pm b/IkiWiki/Plugin/inline.pm index e0f33ef31..6d88c2f15 100644 --- a/IkiWiki/Plugin/inline.pm +++ b/IkiWiki/Plugin/inline.pm @@ -114,7 +114,7 @@ sub format (@) { #{{{ return $params{content}; } #}}} -sub sessioncgi () { #{{{ +sub sessioncgi ($$) { #{{{ my $q=shift; my $session=shift; @@ -266,6 +266,9 @@ sub preprocess_inline (@) { #{{{ my $rootpage; if (exists $params{rootpage}) { $rootpage=bestlink($params{page}, $params{rootpage}); + if (!length $rootpage) { + $rootpage=$params{rootpage}; + } } else { $rootpage=$params{page}; @@ -313,6 +316,7 @@ sub preprocess_inline (@) { #{{{ $template->param(pageurl => urlto(bestlink($params{page}, $page), $params{destpage})); $template->param(title => pagetitle(basename($page))); $template->param(ctime => displaytime($pagectime{$page}, $params{timeformat})); + $template->param(mtime => displaytime($pagemtime{$page}, $params{timeformat})); $template->param(first => 1) if $page eq $list[0]; $template->param(last => 1) if $page eq $list[$#list]; @@ -372,7 +376,7 @@ sub preprocess_inline (@) { #{{{ genfeed("rss", $config{url}."/".$rssp, $desc, $params{guid}, $params{destpage}, @feedlist)); $toping{$params{destpage}}=1 unless $config{rebuild}; - $feedlinks{$params{destpage}}=qq{}; + $feedlinks{$params{destpage}}=qq{}; } } if ($atom) { @@ -382,7 +386,7 @@ sub preprocess_inline (@) { #{{{ writefile($atomp, $config{destdir}, genfeed("atom", $config{url}."/".$atomp, $desc, $params{guid}, $params{destpage}, @feedlist)); $toping{$params{destpage}}=1 unless $config{rebuild}; - $feedlinks{$params{destpage}}=qq{}; + $feedlinks{$params{destpage}}=qq{}; } } } diff --git a/IkiWiki/Plugin/lockedit.pm b/IkiWiki/Plugin/lockedit.pm index 7462de41c..f6cac6cdd 100644 --- a/IkiWiki/Plugin/lockedit.pm +++ b/IkiWiki/Plugin/lockedit.pm @@ -37,7 +37,10 @@ sub canedit ($$) { #{{{ return undef if defined $user && IkiWiki::is_admin($user); if (defined $config{locked_pages} && length $config{locked_pages} && - pagespec_match($page, $config{locked_pages})) { + pagespec_match($page, $config{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) }; @@ -51,7 +54,10 @@ sub canedit ($$) { #{{{ # XXX deprecated, should be removed eventually foreach my $admin (@{$config{adminuser}}) { - if (pagespec_match($page, IkiWiki::userinfo_get($admin, "locked_pages"))) { + 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) }; diff --git a/IkiWiki/Plugin/orphans.pm b/IkiWiki/Plugin/orphans.pm index b910758e0..32cbc5dd5 100644 --- a/IkiWiki/Plugin/orphans.pm +++ b/IkiWiki/Plugin/orphans.pm @@ -43,7 +43,7 @@ sub preprocess (@) { #{{{ next if grep { length $_ && ($_ !~ /\/\Q$discussion\E$/i || ! $config{discussion}) && - bestlink($page, $_) !~ /^($page|)$/ + bestlink($page, $_) !~ /^(\Q$page\E|)$/ } @{$links{$page}}; push @orphans, $page; } diff --git a/IkiWiki/Plugin/remove.pm b/IkiWiki/Plugin/remove.pm index c8d76368e..68bf9d1ee 100644 --- a/IkiWiki/Plugin/remove.pm +++ b/IkiWiki/Plugin/remove.pm @@ -61,9 +61,10 @@ sub formbuilder_setup (@) { #{{{ my $form=$params{form}; my $q=$params{cgi}; - if (defined $form->field("do") && $form->field("do") eq "edit") { + if (defined $form->field("do") && ($form->field("do") eq "edit" || + $form->field("do") eq "create")) { # Removal button for the page, and also for attachments. - push @{$params{buttons}}, "Remove"; + push @{$params{buttons}}, "Remove" if $form->field("do") eq "edit"; $form->tmpl_param("field-remove" => ''); } } #}}} @@ -97,7 +98,9 @@ sub removal_confirm ($$@) { #{{{ my $attachment=shift; my @pages=@_; - check_canremove($_, $q, $session) foreach @pages; + foreach my $page (@pages) { + check_canremove($page, $q, $session); + } # Save current form state to allow returning to it later # without losing any edits. @@ -135,11 +138,12 @@ sub formbuilder (@) { #{{{ my %params=@_; my $form=$params{form}; - if (defined $form->field("do") && $form->field("do") eq "edit") { + if (defined $form->field("do") && ($form->field("do") eq "edit" || + $form->field("do") eq "create")) { my $q=$params{cgi}; my $session=$params{session}; - if ($form->submitted eq "Remove") { + if ($form->submitted eq "Remove" && $form->field("do") eq "edit") { removal_confirm($q, $session, 0, $form->field("page")); } elsif ($form->submitted eq "Remove Attachments") { diff --git a/IkiWiki/Plugin/rename.pm b/IkiWiki/Plugin/rename.pm index 6c131487a..7e55e271c 100644 --- a/IkiWiki/Plugin/rename.pm +++ b/IkiWiki/Plugin/rename.pm @@ -210,11 +210,12 @@ sub formbuilder (@) { #{{{ my %params=@_; my $form=$params{form}; - if (defined $form->field("do") && $form->field("do") eq "edit") { + if (defined $form->field("do") && ($form->field("do") eq "edit" || + $form->field("do") eq "create")) { my $q=$params{cgi}; my $session=$params{session}; - if ($form->submitted eq "Rename") { + if ($form->submitted eq "Rename" && $form->field("do") eq "edit") { rename_start($q, $session, 0, $form->field("page")); } elsif ($form->submitted eq "Rename Attachment") { @@ -237,9 +238,10 @@ sub formbuilder_setup (@) { #{{{ my $form=$params{form}; my $q=$params{cgi}; - if (defined $form->field("do") && $form->field("do") eq "edit") { + if (defined $form->field("do") && ($form->field("do") eq "edit" || + $form->field("do") eq "create")) { # Rename button for the page, and also for attachments. - push @{$params{buttons}}, "Rename"; + push @{$params{buttons}}, "Rename" if $form->field("do") eq "edit"; $form->tmpl_param("field-rename" => ''); if (defined $renamesummary) { diff --git a/IkiWiki/Wrapper.pm b/IkiWiki/Wrapper.pm index 6dc25403e..187314d16 100644 --- a/IkiWiki/Wrapper.pm +++ b/IkiWiki/Wrapper.pm @@ -28,7 +28,7 @@ sub gen_wrapper () { #{{{ my @envsave; push @envsave, qw{REMOTE_ADDR QUERY_STRING REQUEST_METHOD REQUEST_URI CONTENT_TYPE CONTENT_LENGTH GATEWAY_INTERFACE - HTTP_COOKIE REMOTE_USER} if $config{cgi}; + HTTP_COOKIE REMOTE_USER HTTPS} if $config{cgi}; my $envsave=""; foreach my $var (@envsave) { $envsave.=<<"EOF" diff --git a/debian/changelog b/debian/changelog index 1320e4f41..ecef4f158 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,22 @@ -ikiwiki (2.66) UNRELEASED; urgency=low +ikiwiki (2.67) UNRELEASED; urgency=low + + * remove: Avoid $_ breakage. (Stupid, stupid perl.) + * Updated Spanish translation from Victor Moral. + * lockedit: Support specifying which users (and IP addresses) a page + is locked for. This supports most of the ACL type things users have been + wanting to be done. Closes: #443346 (It does not control who can read a + page, but that's out of scope for ikiwiki.) + * orphans: Fix unquoted page name in regexp. + * google: Plugin provides google site search, contributed by Peter Simons. + * Pass HTTPS variable through the wrapper so that CGI->https can be used + by plugins. Closes: #502047 + * inline: Allow MTIME to be used in inlinepage.tmpl. + * inline: Use the feed's description in the rss and atom links. + Closes: #502113 + + -- Joey Hess Mon, 06 Oct 2008 16:07:50 -0400 + +ikiwiki (2.66) unstable; urgency=low * recentchanges: Fix redirects to non-page files. * aggregate: Avoid uninitialized value warnings for pages with no recorded @@ -32,8 +50,13 @@ ikiwiki (2.66) UNRELEASED; urgency=low (Sponsored by The TOVA Company.) * httpauth: Document that ikiwiki.cgi has to be in a directory subject to authentication. Closes: #500524 + * inline: Fix handling of rootpage that doesn't exist. + * attachment: Support adding attachments to pages even as they are being + created. + * remove, rename: Allow acting on attachments as a page is being created. + * Updated French translation. Closes: #500929 - -- Joey Hess Thu, 25 Sep 2008 13:45:55 -0400 + -- Joey Hess Sun, 05 Oct 2008 19:11:08 -0400 ikiwiki (2.65) unstable; urgency=low diff --git a/debian/control b/debian/control index b900052dc..fdf2a3a36 100644 --- a/debian/control +++ b/debian/control @@ -4,7 +4,7 @@ Priority: optional Build-Depends: perl, debhelper (>= 5) Build-Depends-Indep: dpkg-dev (>= 1.9.0), libxml-simple-perl, libtext-markdown-perl | markdown, libtimedate-perl, libhtml-template-perl, libhtml-scrubber-perl, wdg-html-validator, libhtml-parser-perl, liburi-perl, perlmagick Maintainer: Joey Hess -Uploaders: Joey Hess , Josh Triplett +Uploaders: Josh Triplett Standards-Version: 3.8.0 Homepage: http://ikiwiki.info/ Vcs-Git: git://git.ikiwiki.info/ diff --git a/debian/copyright b/debian/copyright index 87f3cac89..f257234dd 100644 --- a/debian/copyright +++ b/debian/copyright @@ -104,6 +104,10 @@ Files: color.pm Copyright: Copyright (C) 2008 Paweł Tęcza License: GPL-2+ +Files: google.pm +Copyright: Copyright (C) 2008 Peter Simons +License: GPL-2+ + Files: doc/logo/* Copyright: © 2006 Recai Oktaş License: GPL-2+ diff --git a/debian/preinst b/debian/preinst index 12d3d83af..c588901df 100755 --- a/debian/preinst +++ b/debian/preinst @@ -1,5 +1,5 @@ #!/bin/sh - +set -e #DEBHELPER# if [ "$1" = upgrade ] && dpkg --compare-versions "$2" lt 1.2; then diff --git a/doc/bugs/Cannot_inline_pages_with_apostrophes_in_title.mdwn b/doc/bugs/Cannot_inline_pages_with_apostrophes_in_title.mdwn index a95378851..7daf52f2a 100644 --- a/doc/bugs/Cannot_inline_pages_with_apostrophes_in_title.mdwn +++ b/doc/bugs/Cannot_inline_pages_with_apostrophes_in_title.mdwn @@ -1,3 +1,5 @@ -If I create a page whose title contains an apostrophe, then inlining that page produces nothing. It looks like the inline plugin is failing to do the translation from apostrophe to "_39_" that other parts of the system do, so although one can make wikilinks to such pages and have them detected as existing (for instance, by the conditional plugin), inline looks in the wrong place and doesn't see the page. +If I create a page whose title contains an apostrophe, then inlining that +page produces nothing. It looks like the inline plugin is failing to do +the translation from apostrophe to `_39_` that other parts of the system do, so although one can make wikilinks to such pages and have them detected as existing (for instance, by the conditional plugin), inline looks in the wrong place and doesn't see the page. > I can't reproduce that (btw, an apostrophe would be `__39__`) --[[Joey]] diff --git a/doc/bugs/MTIME_not_set_for_inline_or_archive_entries.mdwn b/doc/bugs/MTIME_not_set_for_inline_or_archive_entries.mdwn new file mode 100644 index 000000000..89947b544 --- /dev/null +++ b/doc/bugs/MTIME_not_set_for_inline_or_archive_entries.mdwn @@ -0,0 +1,22 @@ +My page.tmpl can contain: + + Created . Last edited . + +and that works. However, if I have the same line in inlinepage.tmpl +or archivepage.tmpl, then only the CTIME works - the MTIME is blank. +This leads to an annoying inconsistency. + +Update - even though I'm not a Perl programmer, this patch seems right: + + --- /home/bothner/ikiwiki/ikiwiki/IkiWiki/Plugin/inline.pm 2008-10-01 14:29:11.000000000 -0700 + +++ ./inline.pm 2008-10-12 13:26:11.000000000 -0700 + @@ -316,6 +316,7 @@ + $template->param(pageurl => urlto(bestlink($params{page}, $page), $params{destpage})); + $template->param(title => pagetitle(basename($page))); + $template->param(ctime => displaytime($pagectime{$page}, $params{timeformat})); + + $template->param(mtime => displaytime($pagemtime{$page}, $params{timeformat})); + $template->param(first => 1) if $page eq $list[0]; + $template->param(last => 1) if $page eq $list[$#list]; + + +> [[done]], thanks diff --git a/doc/bugs/__38__uuml__59___in_markup_makes_ikiwiki_not_un-escape_HTML_at_all.mdwn b/doc/bugs/__38__uuml__59___in_markup_makes_ikiwiki_not_un-escape_HTML_at_all.mdwn index 94a0e5445..eb3450a7e 100644 --- a/doc/bugs/__38__uuml__59___in_markup_makes_ikiwiki_not_un-escape_HTML_at_all.mdwn +++ b/doc/bugs/__38__uuml__59___in_markup_makes_ikiwiki_not_un-escape_HTML_at_all.mdwn @@ -44,3 +44,4 @@ unless that has security implications. >> >> I hope that's just a minor blemish. --liw +>>> Sounds like this is [[done]] --[[Joey]] diff --git a/doc/bugs/aggregate_plugin_should_honour_a_post__39__s_mctime.mdwn b/doc/bugs/aggregate_plugin_should_honour_a_post__39__s_mctime.mdwn index 61f6f733a..865637ea4 100644 --- a/doc/bugs/aggregate_plugin_should_honour_a_post__39__s_mctime.mdwn +++ b/doc/bugs/aggregate_plugin_should_honour_a_post__39__s_mctime.mdwn @@ -11,3 +11,5 @@ appropriately, so that ikiwiki reflects the actual time of the post via the if defined $mtime && $mtime <= time; >> I'll have to debug this, it's not working here... and this is an ikiwiki aggregator scraping another ikiwiki site. + +>>> Any news about this? --[[Joey]] diff --git a/doc/bugs/blog_posts_not_added_to_mercurial_repo.mdwn b/doc/bugs/blog_posts_not_added_to_mercurial_repo.mdwn index c57c20065..eead716d5 100644 --- a/doc/bugs/blog_posts_not_added_to_mercurial_repo.mdwn +++ b/doc/bugs/blog_posts_not_added_to_mercurial_repo.mdwn @@ -28,3 +28,23 @@ If I then edit the blog post, **then** the file gets commited and I can see the >>>> However, the part that seems a bit wrong to me, is this: even if my locale is utf8, I have to explicitly set a utf8 locale in the wiki's setup file, or the commit fails. It looks like ikiwiki is not using this machine's default locale, which is utf8. Also, I'm not getting any errors on apache's error log. >>>> Wouldn't it make sense to use the machine's default locale if 'locale' is commented out in the setup file? + +>>>>> Ikiwiki wrappers only allow whitelisted environment variables +>>>>> through, and the locale environment variables are not included +>>>>> currently. +>>>>> +>>>>> But that's not the whole story, because "machine's default locale" +>>>>> is not very well defined. For example, my laptop is a Debian system. +>>>>> It has a locale setting in /etc/environment (`LANG="en_US.UTF-8"`). +>>>>> But even if I start apache, making sure that LANG is set and exported +>>>>> in the environment, CGI scripts apache runs do not see LANG in their +>>>>> environment. (I notice that `/etc/init.d/apache` explocitly +>>>>> forces LANG=C. But CGI scripts don't see the C value either.) +>>>>> Apache simply does not propigate its runtime environment to CGI +>>>>> scripts, and this is probably to comply with the CGI specification +>>>>> (although it doesn't seem to completly rule out CGI's being passed +>>>>> other variables). +>>>>> +>>>>> If mercurial needs a utf-8 locale, I guess the mercurial plugin needs +>>>>> to check if it's not in one, and do something sane (either fail +>>>>> earlier, or complain, or strip utf-8 out of comments). --[[Joey]] diff --git a/doc/bugs/ddate_plugin_causes_websetup_to_change_timeformat__44___even_when_disabled.mdwn b/doc/bugs/ddate_plugin_causes_websetup_to_change_timeformat__44___even_when_disabled.mdwn index b195f48ee..a74f6fcc7 100644 --- a/doc/bugs/ddate_plugin_causes_websetup_to_change_timeformat__44___even_when_disabled.mdwn +++ b/doc/bugs/ddate_plugin_causes_websetup_to_change_timeformat__44___even_when_disabled.mdwn @@ -4,4 +4,4 @@ Presumably this is because websetup loads all plugins, so IkiWiki::plugin::ddate (This bug seems oddly appropriate. Hail Eris) -[[done fnord|done]] +[[done_fnord|done]] diff --git a/doc/bugs/disabling_backlinks.mdwn b/doc/bugs/disabling_backlinks.mdwn index 74b25f0f0..ba96a4e2b 100644 --- a/doc/bugs/disabling_backlinks.mdwn +++ b/doc/bugs/disabling_backlinks.mdwn @@ -12,3 +12,19 @@ My first reading (and second and third) of this was that backlinks would be disa > Yes, it only controls the number of backlinks that are shown at the > bottom of the page vs how many are moved to the popup. I've tried to > improve the documentation for this. [[done]] --[[Joey]] + + +I notice that there is quite a bit of redundancy when both tags and +backlinks are used extensively. On most pages, the set of links features in +both categories is almost identical because a tag's index page is shown +both as a tag link and as a backlink. Is there a way to improve that +situation somehow? I realise that backlinks aren't generated when the tag +index page refers to its contents by \[\[!map ...]], etc., but sometimes an +auto-generated index is insufficient. + + --Peter + +> Um, if you're manually linking from the tag's page to each page so +> tagged, I think you have larger problems than tags and backlinks being +> the same. Like keeping that list of links up to date as tags are added +> and changed. --[[Joey]] diff --git a/doc/bugs/images_in_inlined_pages_have_wrong_relative_URL.mdwn b/doc/bugs/images_in_inlined_pages_have_wrong_relative_URL.mdwn new file mode 100644 index 000000000..8cfd42e78 --- /dev/null +++ b/doc/bugs/images_in_inlined_pages_have_wrong_relative_URL.mdwn @@ -0,0 +1,13 @@ +I can make an image link, such as: + + ![image](image.jpg) + +That will render as ![image](image.jpg). + +If I then inline that page, the (relative) URL no longer points to the right place. The fix for this promises to be hairy. + +> Similarly, if you insert a relative link using the markdown link syntax, +> it will tend to break when the page is inlined. +> +> However, there is a simple way to avoid both problems: Use WikiLinks +> and/or the [[img_directive|ikiwiki/directive/img]]. --[[Joey]] diff --git a/doc/bugs/inline_from_field_empty_if_rootpage_doesn__39__t_exist.mdwn b/doc/bugs/inline_from_field_empty_if_rootpage_doesn__39__t_exist.mdwn new file mode 100644 index 000000000..61aeff244 --- /dev/null +++ b/doc/bugs/inline_from_field_empty_if_rootpage_doesn__39__t_exist.mdwn @@ -0,0 +1,20 @@ +If I put something like the below in my index.mdwn + + <> + +But posts doesn't exist, I get the following in index.html + + + + + +When I create posts (touch posts.mdwn), I get the following in index.html + + + + + +Bug? + +> Yes, thanks for reminding me I need to do something about that... [[done]] +> --[[Joey]] diff --git a/doc/bugs/lockedit_plugin_should_alert_user_about_an_invalid_pagespec_in_preferences.mdwn b/doc/bugs/lockedit_plugin_should_alert_user_about_an_invalid_pagespec_in_preferences.mdwn index 63c5b5e08..c835d9f98 100644 --- a/doc/bugs/lockedit_plugin_should_alert_user_about_an_invalid_pagespec_in_preferences.mdwn +++ b/doc/bugs/lockedit_plugin_should_alert_user_about_an_invalid_pagespec_in_preferences.mdwn @@ -1,3 +1,17 @@ [[plugins/lockedit]] adds the form fields for a [[pagespec]] to preferences. This pagespec should be supplied "raw"; i.e., without quotes around it. Inexperienced users (such as [[myself|jondowland]]) may provide an invalid pagespec, such as one with quotes on it. This will be merrily accepted by the form, but will cause no locking to take place. Perhaps some validation should be performed on the pagespec and the form-submission return include "warning: this pagespec is invalid" or "warning: this pagespec does not match any existing pages" or similar. + +> The pagespec is no longer in the preferences and instead in the setup +> file now. That makes warning about a problem with it harder. +> +> Ikiwiki could try to detect this problem and warn at setup time to +> stderr, I guess. +> +> Main problem is I see little way to actually detect the problem you +> described. A pagespec with quotes around it is valid. For example, the +> pagespec `"foo or bar"` matches a page named `"foo` or a page named `bar"`. +> +> There are small classes of invalid pagespecs. For example, `(foo or bar` +> is invalid due to having unbalanced parens, while `foo or and bar` +> has invalid syntax. It's possible to detect these, I guess ... --[[Joey]] diff --git a/doc/bugs/rst_tweak.mdwn b/doc/bugs/rst_tweak.mdwn index 8348ed470..8c7d8134d 100644 --- a/doc/bugs/rst_tweak.mdwn +++ b/doc/bugs/rst_tweak.mdwn @@ -20,3 +20,10 @@ Index: IkiWiki/Plugin/rst.pm print html[html.find('')+6:html.find('')].strip(); "; + +---- + +Does the Perl version of this plugin still exist? There appears to be no "rst.pm" in the current distribution; all there is is the python version. --Peter + +> No, only the python version exists. It does have `raw_enabled` set. +> --[[Joey]] diff --git a/doc/bugs/ikiwiki_is_not_truly_localizable.mdwn b/doc/bugs/some_strings_are_not_internationalized.mdwn similarity index 100% rename from doc/bugs/ikiwiki_is_not_truly_localizable.mdwn rename to doc/bugs/some_strings_are_not_internationalized.mdwn diff --git a/doc/features.mdwn b/doc/features.mdwn index e9be02be4..ff341d2cc 100644 --- a/doc/features.mdwn +++ b/doc/features.mdwn @@ -4,9 +4,10 @@ An overview of some of ikiwiki's features: ## Uses a real RCS Rather than implement its own system for storing page histories etc, -ikiwiki uses a real Revision Control System. This isn't (just) because we're -lazy, it's because a real RCS is a good thing to have, and there are -advantages to using one that are not possible with a standard wiki. +ikiwiki uses a real [[Revision_Control_System|rcs]]. This isn't (just) +because we're lazy, it's because a real RCS is a good thing to have, and +there are advantages to using one that are not possible with a standard +wiki. Instead of editing pages in a stupid web form, you can use vim and commit changes via [[Subversion|rcs/svn]], [[rcs/git]], or any of a number of other @@ -72,12 +73,11 @@ can change the look and layout of all pages in any way you would like. ## [[Plugins]] -Plugins can be used to add additional features to ikiwiki. The interface -is quite flexible, allowing plugins to implement additional markup -languages, register [[directives|ikiwiki/directive]], hook into [[CGI]] mode, -and more. Most of ikiwiki's features are actually provided by plugins. -Ikiwiki's backend RCS support is also pluggable, so support for new -revision control systems can be added to ikiwiki. +Plugins can be used to add additional features to ikiwiki. The interface is +quite flexible, allowing plugins to implement additional markup languages, +register [[directives|ikiwiki/directive]], provide a [[RCS]] backend, hook +into [[CGI]] mode, and much more. Most of ikiwiki's features are actually +provided by plugins. The standard language for ikiwiki plugins is perl, but ikiwiki also supports [[plugins/write/external]] plugins: Standalone programs that can be written in @@ -146,10 +146,10 @@ Thanks to subpages, every page can easily and automatically have a ### Edit controls -Wiki admins can [[lock_pages|page_locking]] so that only other admins can -edit them. Or a wiki can be set up to allow anyone to edit Discussion -pages, but only registered users to edit other pages. These are just two -possibilities, since page edit controls can be changed via plugins. +Wiki admins can lock pages so that only other admins can edit them. Or a +wiki can be set up to allow anyone to edit Discussion pages, but only +registered users to edit other pages. These are just two possibilities, +since page edit controls can be changed via plugins. ### [[PageHistory]] diff --git a/doc/forum/Is_there_a_pagespec_for_creation_dates_relative_to_today__63__.mdwn b/doc/forum/Is_there_a_pagespec_for_creation_dates_relative_to_today__63__.mdwn new file mode 100644 index 000000000..e88400cd4 --- /dev/null +++ b/doc/forum/Is_there_a_pagespec_for_creation_dates_relative_to_today__63__.mdwn @@ -0,0 +1,22 @@ +Dear users, + + +using the directive inline, I want to show all pages (for example named 2008.10.2:foo.mdwn or 2009.12.3:bar.mdwn), whose date in the title are in the future. So in this example only the second one. + +I did not find a directive doing this in [[/ikiwiki/PageSpec]]. + +Does somebody have an idea? I just came up with using a tag “recent” or using a separate folder. But this would be a quite some work to maintain this setup. + + +Thanks, + +Paul + +> There's no such pagespec, and doing one is difficult, because such a +> pagespec will change what it matches over time. So ikiwiki would have to +> somehow figure out that pages matched by it yesterday no longer match, +> and that pages containing the pagespec need to be rebuilt. Which means +> you'd also need a cron job. +> +> I suspect what you're trying to accomplish is +> [[todo/tagging_with_a_publication_date]]? --[[Joey]] diff --git a/doc/git.mdwn b/doc/git.mdwn index fc702b325..e5fef6a5a 100644 --- a/doc/git.mdwn +++ b/doc/git.mdwn @@ -29,8 +29,10 @@ Some of the branches included in the main repository include: instead of xhtml. * `wikiwyg` adds [[todo/wikiwyg]] support. It is unmerged pending some changes. +* `darcs` is being used to add darcs support. * `pristine-tar` contains deltas that [pristine-tar](http://kitenet.net/~joey/code/pristine-tar) can use to recreate released tarballs of ikiwiki * `debian-stable` is used for updates to the old version included in - Debian's stable release. + Debian's stable release, and `debian-testing` is used for updates to + Debian's testing release. diff --git a/doc/ikiwiki/directive/map/discussion.mdwn b/doc/ikiwiki/directive/map/discussion.mdwn new file mode 100644 index 000000000..808930fa4 --- /dev/null +++ b/doc/ikiwiki/directive/map/discussion.mdwn @@ -0,0 +1,13 @@ +Question: Is there a way to generate a listing that shows *both* title and description meta information? Currently, a \[\[!map ...]] shows only one of the two, but I'd like to generate a navigation that looks like a description list. For example: + + * This is the title meta information. + + This is the description meta information + + * This is another title. + + And so on ... + +Is that possible? + +--Peter diff --git a/doc/ikiwiki/pagespec.mdwn b/doc/ikiwiki/pagespec.mdwn index 156e3f6ca..c78666c40 100644 --- a/doc/ikiwiki/pagespec.mdwn +++ b/doc/ikiwiki/pagespec.mdwn @@ -22,8 +22,7 @@ match all pages except for Discussion pages and the SandBox: * and !SandBox and !*/Discussion -Some more elaborate limits can be added to what matches using any of these -functions: +Some more elaborate limits can be added to what matches using these functions: * "`link(page)`" - match only pages that link to a given page (or glob) * "`backlink(page)`" - match only pages that a given page links to @@ -41,6 +40,13 @@ functions: * "`title(glob)`", "`author(glob)`", "`authorurl(glob)`", "`license(glob)`", "`copyright(glob)`" - match pages that have the given metadata, matching the specified glob. +* "`user(username)`" - tests whether a modification is being made by a + user with the specified username. If openid is enabled, an openid can also + be put here. +* "`admin()`" - tests whether a modification is being made by one of the + wiki admins. +* "`ip(address)`" - tests whether a modification is being made from the + specified IP address. For example, to match all pages in a blog that link to the page about music and were written in 2005: diff --git a/doc/ikiwiki/pagespec/attachment.mdwn b/doc/ikiwiki/pagespec/attachment.mdwn index 234fcdf02..2d33db748 100644 --- a/doc/ikiwiki/pagespec/attachment.mdwn +++ b/doc/ikiwiki/pagespec/attachment.mdwn @@ -16,45 +16,22 @@ check all attachments for virii, something like this could be used: The regular [[ikiwiki/PageSpec]] syntax is expanded with the following additional tests: -* maxsize(size) - - Tests whether the attachment is no larger than the specified size. - The size defaults to being in bytes, but "kb", "mb", "gb" etc can be - used to specify the units. +* "`maxsize(size)`" - Tests whether the attachment is no larger than the + specified size. The size defaults to being in bytes, but "kb", "mb", "gb" + etc can be used to specify the units. -* minsize(size) - - Tests whether the attachment is no smaller than the specified size. - -* ispage() +* "`minsize(size)`" - Tests whether the attachment is no smaller than the + specified size. - Tests whether the attachment will be treated by ikiwiki as a wiki page. - (Ie, if it has an extension of ".mdwn", or of any other enabled page - format). +* "`ispage()`" - Tests whether the attachment will be treated by ikiwiki as a + wiki page. (Ie, if it has an extension of ".mdwn", or of any other enabled + page format). So, if you don't want to allow wiki pages to be uploaded as attachments, use `!ispage()` ; if you only want to allow wiki pages to be uploaded as attachments, use `ispage()`. -* user(username) - - Tests whether the attachment is being uploaded by a user with the - specified username. If openid is enabled, an openid can also be put here. - -* adminuser() - - Tests whether the attachment is being uploded by one of the wiki admins. - -* ip(address) - - Tests whether the attacment is being uploaded from the specified IP - address. - -* mimetype(foo/bar) - - This checks the MIME type of the attachment. You can include a glob - in the type, for example `mimetype(image/*)`. - -* virusfree() +* "`mimetype(foo/bar)`" - This checks the MIME type of the attachment. You can + include a glob in the type, for example `mimetype(image/*)`. - Checks the attachment with an antiviral program. +* "`virusfree()`" - Checks the attachment with an antiviral program. diff --git a/doc/ikiwiki/wikilink/discussion.mdwn b/doc/ikiwiki/wikilink/discussion.mdwn index e4b1f933f..b5cb848ed 100644 --- a/doc/ikiwiki/wikilink/discussion.mdwn +++ b/doc/ikiwiki/wikilink/discussion.mdwn @@ -58,3 +58,9 @@ How do I make images clickable? The obvious guess, \[[foo.png|/index]], doesn't > You can do it using the img plugin. The syntax you suggested would be ambiguous, > as there's no way to tell if the text is meant to be an image or displayed as-is. > --[[Joey]] + +---- + +Is it possible to refer to a page, say \[[foobar]], such that the link text is taken from foobar's title [[directive/meta]] tag? --Peter + +> Not yet. :-) Any suggestion for a syntax for it? Maybe something like \[[|foobar]] ? --[[Joey]] diff --git a/doc/ikiwikiusers.mdwn b/doc/ikiwikiusers.mdwn index 6e234ceed..e5f978e12 100644 --- a/doc/ikiwikiusers.mdwn +++ b/doc/ikiwikiusers.mdwn @@ -100,7 +100,8 @@ Personal sites and blogs * [Olivier Berger's professional homepage](http://www-public.it-sudparis.eu/~berger_o/) * [Andrey Tarantsov's homepage](http://www.tarantsov.com/) * [Don Marti's blog](http://zgp.org/~dmarti/) - +* [[JonDowland]]'s [homepage](http://jmtd.net/) + Please feel free to add your own ikiwiki site! See also: [Debian ikiwiki popcon graph](http://people.debian.org/~igloo/popcon-graphs/index.php?packages=ikiwiki) diff --git a/doc/news/version_2.62.mdwn b/doc/news/version_2.62.mdwn deleted file mode 100644 index e91c9a2ab..000000000 --- a/doc/news/version_2.62.mdwn +++ /dev/null @@ -1,41 +0,0 @@ -News for ikiwiki 2.62: - - The teximg plugin now has a configurable LaTeX preamble. - - As part of this change the `mchem` LaTeX package has been removed from - the default LaTeX preamble as it wasn't included in many TeX installations. - The previous behaviour can be restored by adding the following to your - ikiwiki setup: - - teximg_prefix => '\documentclass{scrartcl} - \usepackage[version=3]{mhchem} - \usepackage{amsmath} - \usepackage{amsfonts} - \usepackage{amssymb} - \pagestyle{empty} - \begin{document}', - - In addition, the rendering mechanism has been changed to use `dvipng` by - default, if available. - -ikiwiki 2.62 released with [[!toggle text="these changes"]] -[[!toggleable text=""" - * Avoid using cp -a (again). (HenrikBrixAndersen) - * Avoid using hostname -f for portability to eg, OS X, use Net::Domain - instead, and prompt if it fails. - * Fix bug in wikiname sanitisation in the setup automator. - * ikiwiki-makerepo: Added support for monotone. (Thomas Keller) - * map: The fix for #449285 was buggy and broke display of parents in certian - circumstances. - * teximg: The prefix is configurable, and has changed to not include the - nonstandard mhchem by default. (willu) - * teximg: dvipng is used if available to render images. Its output is - antialiased and better than dvips. If not available, the old dvips+convert - chain will be used. (willu) - * Drop suggests on texlive-science, add suggests on dvipng. - * listdirectives: New plugin. (willu) - * filecheck: New plugin factoring out the PageSpec additions that were - originally part of the attachment plugin. - * edittemplate: Don't wipe out edits on preview. - * color: New plugin from ptecza. - * autoindex: Avoid re-adding previously deleted (or renamed) pages."""]] diff --git a/doc/news/version_2.66.mdwn b/doc/news/version_2.66.mdwn new file mode 100644 index 000000000..029c7a1b9 --- /dev/null +++ b/doc/news/version_2.66.mdwn @@ -0,0 +1,39 @@ +ikiwiki 2.66 released with [[!toggle text="these changes"]] +[[!toggleable text=""" + * recentchanges: Fix redirects to non-page files. + * aggregate: Avoid uninitialized value warnings for pages with no recorded + ctime. + * attachment: Add admin() pagespec to test if the uploading user is a wiki + admin. + * git: Fix handling of utf-8 filenames in recentchanges. + * tag: Make edit link for new tags ensure that the tags are created + inside tagbase, when it's set. + * template: Make edit link for new templates ensure the page is located + under toplevel templates directory. + * htmlscrubber: Add a config setting that can be used to disable the + scrubber acting on a set of pages. + * Expand usage message and add --help. Closes: #[500344](http://bugs.debian.org/500344) + * Beautify urls used in various places. (smcv) + * Export pagetitle, titlepage, linkpage. + * htmltidy: Avoid returning undef if tidy fails. Also avoid returning the + untidied content if tidy crashes. In either case, it seems best to tidy + the content to nothing. + * htmltidy: Avoid spewing tidy errors to stderr. + * Reorganize index file, add a format version field. Upgrades to the new + index format should be transparent. + * Add %wikistate, which is like %pagestate except not specific to a given + page, and is preserved across rebuilds. + * editpage: Be more aggressive (and less buggy) about cleaning up + temporary files rendered during page preview. + * Add an indexpages option, which causes foo/index.mdwn to be the source + for page foo when foo.mdwn doesn't exist. Also, when it's enabled, + creating a new page will save it to foo/index.mdwn by default. + Closes: #[474611](http://bugs.debian.org/474611) + (Sponsored by The TOVA Company.) + * httpauth: Document that ikiwiki.cgi has to be in a directory subject to + authentication. Closes: #[500524](http://bugs.debian.org/500524) + * inline: Fix handling of rootpage that doesn't exist. + * attachment: Support adding attachments to pages even as they are being + created. + * remove, rename: Allow acting on attachments as a page is being created. + * Updated French translation. Closes: #[500929](http://bugs.debian.org/500929)"""]] \ No newline at end of file diff --git a/doc/page_locking.mdwn b/doc/page_locking.mdwn deleted file mode 100644 index 21f4fb027..000000000 --- a/doc/page_locking.mdwn +++ /dev/null @@ -1,17 +0,0 @@ -The administrator of a wiki can choose to lock some pages, which allows -only the admin to 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. - -To lock a page, log into the wiki as whatever user is configured as the -admin, and in your Preferences page, you'll find a field listing locked -pages. This is a [[ikiwiki/PageSpec]], so you have a fair bit of control -over what kinds of pages to lock. For example, you could choose to lock all -pages created before 2006, or all pages that are linked to from the page -named "locked". More usually though, you'll just list some names of pages -to lock. - -One handy thing to do if you're using ikiwiki for your blog is to lock -"* and !*/Discussion". This prevents others from adding to or modifying -posts in your blog, while still letting them comment via the Discussion -pages. diff --git a/doc/plugins/attachment.mdwn b/doc/plugins/attachment.mdwn index 2aa8490ed..4fcd714f8 100644 --- a/doc/plugins/attachment.mdwn +++ b/doc/plugins/attachment.mdwn @@ -1,5 +1,5 @@ [[!template id=plugin name=attachment core=0 author="[[Joey]]"]] -[[!tag type/useful]] +[[!tag type/web]] This plugin allows files to be uploaded to the wiki over the web. diff --git a/doc/plugins/contrib/gallery.mdwn b/doc/plugins/contrib/gallery.mdwn index ed9e17f32..7148de3ef 100644 --- a/doc/plugins/contrib/gallery.mdwn +++ b/doc/plugins/contrib/gallery.mdwn @@ -32,6 +32,7 @@ It uses templated named [Lightbox](http://www.hudddletogether.com). For any feedback or query, feel free to mail me at arpitjain11 [AT] gmail.com Additional details are available [here](http://myweb.unomaha.edu/~ajain/ikiwikigallery.html). +> That link is broken. --[[JosephTurian]] -- [[arpitjain]] diff --git a/doc/plugins/contrib/sourcehighlight.mdwn b/doc/plugins/contrib/sourcehighlight.mdwn index 0f1ab1b21..2eb22e6ed 100644 --- a/doc/plugins/contrib/sourcehighlight.mdwn +++ b/doc/plugins/contrib/sourcehighlight.mdwn @@ -17,4 +17,6 @@ because they both generate page working/dir/foo. It looks to me like ikiwiki is hardcoded to strip the extension in `pagename()` (IkiWiki.pm). This problem with sourcehighlight needs to be fixed before it is very useful. -[[DavidBremner]] +- Is there a way to configure the colors used by source-highlight (other than editing the globally installed "default.style" file)? It would help if I could pass the command arbitrary command-line arguments; then I could configure which config file it's supposed to use. For instance, I'm not a fan of hard-coding the colors into the HTML output. IMHO, css-style formatting should be preferred. All that can be set via the command line ... --Peter + +> I don't really have time right now, but it should be easy to add, if you look at how src-lang is handled. Patches are welcome :-) --[[DavidBremner]] diff --git a/doc/plugins/editdiff.mdwn b/doc/plugins/editdiff.mdwn index 6351c563f..8d9daa0ff 100644 --- a/doc/plugins/editdiff.mdwn +++ b/doc/plugins/editdiff.mdwn @@ -1,5 +1,5 @@ [[!template id=plugin name=editdiff author="[[JeremieKoenig]]"]] -[[!tag type/useful]] +[[!tag type/web]] This plugin adds a "Diff" button when a page is being edited. When clicked, a diff between the stored page and provided content diff --git a/doc/plugins/edittemplate.mdwn b/doc/plugins/edittemplate.mdwn index ca4a9ac45..85dfdfc2d 100644 --- a/doc/plugins/edittemplate.mdwn +++ b/doc/plugins/edittemplate.mdwn @@ -1,5 +1,5 @@ [[!template id=plugin name=edittemplate author="[[Joey]]"]] -[[!tag type/useful]] +[[!tag type/web]] This plugin provides the [[ikiwiki/directive/edittemplate]] [[ikiwiki/directive]]. This directive allows registering template pages, that provide default diff --git a/doc/plugins/google.mdwn b/doc/plugins/google.mdwn new file mode 100644 index 000000000..7c61e637b --- /dev/null +++ b/doc/plugins/google.mdwn @@ -0,0 +1,12 @@ +[[!template id=plugin name=google author="Peter Simons"]] +[[!tag type/web]] + +This plugin adds a search form to the wiki, using google's site search. + +Google is asked to search for pages in the domain specified in the wiki's +`url` configuration parameter. Results will depend on whether google has +indexed the site, and how recently. Also, if the same domain has other +content, outside the wiki's content, it will be searched as well. + +The [[search]] plugin offers full text search of only the wiki, but +requires that a search engine be installed on your site. diff --git a/doc/plugins/lockedit.mdwn b/doc/plugins/lockedit.mdwn index 01b0f157d..71bf232ab 100644 --- a/doc/plugins/lockedit.mdwn +++ b/doc/plugins/lockedit.mdwn @@ -1,4 +1,24 @@ [[!template id=plugin name=lockedit core=1 author="[[Joey]]"]] [[!tag type/auth]] -This plugin enables [[page_locking]]. It is enabled by default. +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. + +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 +to lock. For example, you could choose to lock all pages created before +2006, or all pages that are linked to from the page named "locked". More +usually though, you'll just list some names of pages to lock. + +One handy thing to do if you're using ikiwiki for your blog is to lock +"* and !*/Discussion". This prevents others from adding to or modifying +posts in your blog, while still letting them comment via the Discussion +pages. + +Wiki administrators can always edit locked pages. The [[ikiwiki/PageSpec]] +can specify that some pages are not locked for some users. For example, +"important_page and !user(joey)" locks `important_page` while still +allowing joey to edit it, while "!*/Discussion and user(bob)" prevents bob +from editing pages except for Discussion pages. diff --git a/doc/plugins/orphans/discussion.mdwn b/doc/plugins/orphans/discussion.mdwn index 2b2532bfe..3165e5968 100644 --- a/doc/plugins/orphans/discussion.mdwn +++ b/doc/plugins/orphans/discussion.mdwn @@ -9,3 +9,14 @@ In my wiki, the page "realname" shows up as an orphan although it's being linked > reason to use other link mechanisms provided by eg, markdown for internal > links in the wiki (indeed, using them is likely to cause broken links > when doing things like inlining or renaming pages). --[[Joey]] + + +The orphans plugin fails with an error when it has to deal with a page that contains '+' characters as part of the filename. Apparently the code uses regular expressions and forgets to quote that string at some cruicial point. The error message I see is: + + \[[!orphans Error: Nested quantifiers in regex; + marked by <-- HERE in m/^(c++ <-- HERE |)$/ at + /usr/lib/perl5/vendor_perl/5.8.8/IkiWiki/Plugin/orphans.pm line 43.]] + +--Peter + +> Fixed. BTW, for an important bug like this, use [[bugs]]. --[[Joey]] diff --git a/doc/plugins/poll.mdwn b/doc/plugins/poll.mdwn index 160fd2ffa..510f67798 100644 --- a/doc/plugins/poll.mdwn +++ b/doc/plugins/poll.mdwn @@ -1,5 +1,5 @@ [[!template id=plugin name=poll author="[[Joey]]"]] -[[!tag type/useful]] +[[!tag type/web]] This plugin provides the [[ikiwiki/directive/poll]] [[ikiwiki/directive]], which allows inserting an online poll into a page. diff --git a/doc/plugins/remove.mdwn b/doc/plugins/remove.mdwn index be382e1d8..47993f44b 100644 --- a/doc/plugins/remove.mdwn +++ b/doc/plugins/remove.mdwn @@ -1,5 +1,5 @@ [[!template id=plugin name=remove core=0 author="[[Joey]]"]] -[[!tag type/useful]] +[[!tag type/web]] This plugin allows pages or other files to be removed using the web interface. diff --git a/doc/plugins/rename.mdwn b/doc/plugins/rename.mdwn index dcb569b31..ddaede8b0 100644 --- a/doc/plugins/rename.mdwn +++ b/doc/plugins/rename.mdwn @@ -1,5 +1,5 @@ [[!template id=plugin name=rename core=0 author="[[Joey]]"]] -[[!tag type/useful]] +[[!tag type/web]] This plugin allows pages or other files to be renamed using the web interface. diff --git a/doc/plugins/search.mdwn b/doc/plugins/search.mdwn index cc8190567..92cc5945a 100644 --- a/doc/plugins/search.mdwn +++ b/doc/plugins/search.mdwn @@ -1,5 +1,5 @@ [[!template id=plugin name=search author="[[Joey]]"]] -[[!tag type/useful]] +[[!tag type/web]] This plugin adds full text search to ikiwiki, using the [xapian](http://xapian.org/) engine, its diff --git a/doc/plugins/type/web.mdwn b/doc/plugins/type/web.mdwn new file mode 100644 index 000000000..b60e26a29 --- /dev/null +++ b/doc/plugins/type/web.mdwn @@ -0,0 +1 @@ +These plugins enhance the web interface. diff --git a/doc/plugins/version.mdwn b/doc/plugins/version.mdwn index 257f8f303..43027bdd7 100644 --- a/doc/plugins/version.mdwn +++ b/doc/plugins/version.mdwn @@ -1,5 +1,5 @@ [[!template id=plugin name=version author="[[Joey]]"]] -[[!tag type/useful]] +[[!tag type/meta]] This plugin provides the [[ikiwiki/directive/version]] [[ikiwiki/directive]], which inserts the current version diff --git a/doc/plugins/websetup.mdwn b/doc/plugins/websetup.mdwn index 694429fe1..f1756ba8f 100644 --- a/doc/plugins/websetup.mdwn +++ b/doc/plugins/websetup.mdwn @@ -1,5 +1,5 @@ [[!template id=plugin name=websetup core=0 author="[[Joey]]"]] -[[!tag type/useful]] +[[!tag type/web]] This plugin allows wiki admins to configure the wiki using a web interface, rather than editing the setup file directly. A "Wiki Setup" button is added diff --git a/doc/sandbox/Blagging_is_cool.mdwn b/doc/sandbox/Blagging_is_cool.mdwn new file mode 100644 index 000000000..16aafa304 --- /dev/null +++ b/doc/sandbox/Blagging_is_cool.mdwn @@ -0,0 +1,6 @@ +This is a testing Blag-Entry. +/me loves blagging. + + * Entry one + * entry two + diff --git a/doc/shortcuts.mdwn b/doc/shortcuts.mdwn index 4bb677489..14cd5ff2b 100644 --- a/doc/shortcuts.mdwn +++ b/doc/shortcuts.mdwn @@ -27,7 +27,7 @@ This page controls what shortcut links the wiki supports. * [[!shortcut name=debrt url="https://rt.debian.org/Ticket/Display.html?id=%s"]] * [[!shortcut name=debss url="http://snapshot.debian.net/package/%s"]] * Usage: `\[[!debss package]]`, `\[[!debss package#version]]`, or `\[[!debss package/version]]`. See http://snapshot.debian.net for details. - [[!shortcut name=debwiki url="http://wiki.debian.org/%s"]] +* [[!shortcut name=debwiki url="http://wiki.debian.org/%s"]] * [[!shortcut name=fdobug url="https://bugs.freedesktop.org/show_bug.cgi?id=%s" desc="freedesktop.org bug #%s"]] * [[!shortcut name=fdolist url="http://lists.freedesktop.org/mailman/listinfo/%s" desc="%s@lists.freedesktop.org"]] * [[!shortcut name=gnomebug url="http://bugzilla.gnome.org/show_bug.cgi?id=%s" desc="GNOME bug #%s"]] diff --git a/doc/tips/Importing_posts_from_Wordpress/discussion.mdwn b/doc/tips/Importing_posts_from_Wordpress/discussion.mdwn new file mode 100644 index 000000000..3b328649e --- /dev/null +++ b/doc/tips/Importing_posts_from_Wordpress/discussion.mdwn @@ -0,0 +1,4 @@ +When I attempt to use this script, I get the following error: +warning: Not updating refs/heads/master (new tip 26b1787fca04f2f9772b6854843fe99fe06e6088 does not contain fc0ad65d14d88fd27a6cee74c7cef3176f6900ec). I have git 1.5.6.5, any ideas? + +Thanks!! diff --git a/doc/todo/ACL.mdwn b/doc/todo/ACL.mdwn index fb496c518..e9fb2717f 100644 --- a/doc/todo/ACL.mdwn +++ b/doc/todo/ACL.mdwn @@ -32,7 +32,7 @@ Also see [[!debbug 443346]]. > defined in the wiki pages (although they could be). >* Given the previous two points, can't this be done with the `match_user()` > function defined by the [[plugins/attachment]] plugin (see the [[ikiwiki/pagespec/attachment]] pagespec info) -> and the [[plugins/lockedit]] plugin (see [[page_locking]])? +> and the [[plugins/lockedit]] plugin? > > For example, add the following to your config file: > @@ -44,7 +44,8 @@ Also see [[!debbug 443346]]. >> Yes, writing per-user commit ACLs has become somewhat easier with recent >> features. Breaking `match_user` out of attachment, and making the >> lockedit plugin pass`user` and `ip` params when it calls `pagespec_match` ->> would be sufficient. --[[Joey]] +>> would be sufficient. And [[done]], configurable via +>> [[plugin/lockedit]]'s `locked_pages`. --[[Joey]] I am considering giving this a try, implementing it as a module. Here is how I see it: diff --git a/doc/todo/Add_space_before_slash_in_parent_links.mdwn b/doc/todo/Add_space_before_slash_in_parent_links.mdwn index 0dbcef68d..40a334032 100644 --- a/doc/todo/Add_space_before_slash_in_parent_links.mdwn +++ b/doc/todo/Add_space_before_slash_in_parent_links.mdwn @@ -1,4 +1,4 @@ -This patch adds a space before the forward-slash in the the parent links. There is already a space after the slash. +This [[patch]] adds a space before the forward-slash in the the parent links. There is already a space after the slash. > I intentionally put the space after the slash and not before, because I > like how it looks that way. So I don't plan to apply this patch unless a diff --git a/doc/todo/CVS_backend.mdwn b/doc/todo/CVS_backend.mdwn index c14d8af4f..f99d09b22 100644 --- a/doc/todo/CVS_backend.mdwn +++ b/doc/todo/CVS_backend.mdwn @@ -8,3 +8,5 @@ Original discussion: > >> No, although the existing svn backend could fairly esily be modified into >> a CVS backend, by someone who doesn't mind working with CVS. --[[Joey]] + +[[!tag wishlist]] diff --git a/doc/todo/Mailing_list.mdwn b/doc/todo/Mailing_list.mdwn new file mode 100644 index 000000000..b6a207420 --- /dev/null +++ b/doc/todo/Mailing_list.mdwn @@ -0,0 +1,20 @@ +Please don't shoot me for asking: + +Could we have an ikiwiki mailing list? + +Here's an example use case: +I want to discuss building a feature. Such discussion could happen on the wiki, but I would prefer to---at the least---be able to email ikiwiki developers and ask them to participate in this particular discussion. + +Does this sound okay? + +---[[JosephTurian]] + +[[!tag wishlist]] + +> People ask for this from time to time, but I personally prefer not to be +> on an ikiwiki mailing list, because limiting public ikiwiki discussion to +> this wiki helps make ikiwiki a better platform for discussion. So some +> (most?) active ikiwiki people subscribe to recentchanges, or to the +> todo/bugs/forum feeds, or to some other feed they create on their user page. +> And there's work on making the discussion pages more structured, on +> accepting comments sent via mail, etc. --[[Joey]] diff --git a/doc/todo/Separate_OpenIDs_and_usernames.mdwn b/doc/todo/Separate_OpenIDs_and_usernames.mdwn index 3dd48767e..2cd52e8c4 100644 --- a/doc/todo/Separate_OpenIDs_and_usernames.mdwn +++ b/doc/todo/Separate_OpenIDs_and_usernames.mdwn @@ -7,3 +7,5 @@ I see this being implemented in one of two possible ways. The easiest seems like A slightly more complex next step would be to request sreg from the provider and, if provided, automatically set the identity's username and email address from the provided persona. If username login to accounts with blank passwords is disabled, then you have the best of both worlds. Passwordless signin, human-friendly attribution, automatic setting of preferences. Unfortunately I don't speak Perl, so hopefully someone thinks these suggestions are good enough to code up. I've hacked on openid code in Ruby before, so hopefully these changes aren't all that difficult to implement. Even if you don't get any data via sreg, you're no worse off than where you are now, so I don't think there'd need to be much in the way of error/sanity-checking of returned data. If it's null or not available then no big deal, typing in a username is no sweat. + +[[!tag wishlist]] diff --git a/doc/bugs/Tags_list_in_page_footer_uses_basename.mdwn b/doc/todo/Tags_list_in_page_footer_uses_basename.mdwn similarity index 77% rename from doc/bugs/Tags_list_in_page_footer_uses_basename.mdwn rename to doc/todo/Tags_list_in_page_footer_uses_basename.mdwn index 65406680a..e2221bb84 100644 --- a/doc/bugs/Tags_list_in_page_footer_uses_basename.mdwn +++ b/doc/todo/Tags_list_in_page_footer_uses_basename.mdwn @@ -3,3 +3,6 @@ Page footers contain a list of links to the page and a list of tags applied to t I think the tag list should always contain the full path to the tag, with the tagbase value removed. --[[JoshTriplett]] + +> What if tagbase is not used? I know this would clutter up the display of +> my tags on several wikis, including this one. --[[Joey]] diff --git a/doc/todo/access_keys.mdwn b/doc/todo/access_keys.mdwn index ea367a197..52031ffc1 100644 --- a/doc/todo/access_keys.mdwn +++ b/doc/todo/access_keys.mdwn @@ -66,3 +66,5 @@ Tabbing isn't quite the same as a nice shortcut key. There's always Conkeror... --[[JasonBlevins]], March 22, 2008 10:35 EDT + +[[!tag wishlist]] diff --git a/doc/todo/darcs.mdwn b/doc/todo/darcs.mdwn index a410f5ecf..b8ddfd485 100644 --- a/doc/todo/darcs.mdwn +++ b/doc/todo/darcs.mdwn @@ -486,11 +486,14 @@ It's got couple of FIXMEs, and a very site-specific filter for recentchanges. No --- -And here's yet another one. :) +And here's yet another one, including an updated `ikiwiki-makerepo`. :) - + (now a darcs repo) -I've taken all the good stuff from the above and added the missing hooks. Some of them I haven't had a chance to test, namely `rcs_rename`, `rcs_remove`, `rcs_commit_staged`, and `rcs_diff`. Also, I'm not experienced with perl and don't know where I should have used the function `possibly_foolish_untaint`. +> Note that there's a 'darcs' branch in git that I'm keeping a copy of your +> code in. Just in case. :-) + +I've taken all the good stuff from the above and added the missing hooks. The code hasn't seen a lot of testing, so some bugs are likely yet to surface. Also, I'm not experienced with perl and don't know where I should have used the function `possibly_foolish_untaint`. Regarding the repository layout: There are two darcs repositories. One is the `srcdir`, the other we'll call `master`. @@ -523,4 +526,24 @@ Regarding the repository layout: There are two darcs repositories. One is the `s > * Is the the darcs info in [[details]] still up-to-date re this version? > --[[Joey]] +> Update: +> +> I think I've addressed all of the above except for the XML parsing in `darcs_info`. +> The function determines the md5 hash of the last patch the given file appears in. +> That's indeed being done with regexps but my Perl isn't good enough for a quick recode +> right now. +> +> As for the darcs info in [[rcs/details]], it does not accurately describe the way +> this version works. It's similar, but the details differ slightly. +> You could copy my description above to replace it. +> +> There is still some ironing to do, for instance the current version doesn't allow for +> modifying attachments by re-uploading them via CGI ("darcs add failed"). Am I assuming +> correctly that "adding" a file that's already in the repo should just be a no-op? +> --pesco + +>> It should result in the new file contents being committed by +>> `rcs_commit_staged`. For some revision control systems, which +>> automatically commit modifications, it would be a no-op. --[[Joey]] + [[!tag patch]] diff --git a/doc/todo/else_parameter_for_map_plugin.mdwn b/doc/todo/else_parameter_for_map_plugin.mdwn index 12a91b4ee..981e50d43 100644 --- a/doc/todo/else_parameter_for_map_plugin.mdwn +++ b/doc/todo/else_parameter_for_map_plugin.mdwn @@ -1,4 +1,4 @@ -[[!tag patch]] +[[!tag patch done]] [[plugins/map]] (and I) could benefit from a bonus parameter: @@ -45,3 +45,12 @@ documentation yet, I'm waiting for feedback first, but I'll do it for sure. -- [ >>>> someone might want to be able to handle an "else" case where a >>>> pagespec expands to nothing. And adding else cases for all of them >>>> could be a bit much. --[[Joey]] + +>>>>> Agreed, and tagging as done. For the record, here is the [[plugins/template]] I use: + + \[[!if test="" + then=""" + [[!map pages=""]]""" + else=""]] + +>>>>> --[[intrigeri]] diff --git a/doc/todo/fastcgi_or_modperl_installation_instructions.mdwn b/doc/todo/fastcgi_or_modperl_installation_instructions.mdwn index 2d3805394..74dcaeb61 100644 --- a/doc/todo/fastcgi_or_modperl_installation_instructions.mdwn +++ b/doc/todo/fastcgi_or_modperl_installation_instructions.mdwn @@ -8,3 +8,5 @@ There has got to be a way to run the CGI wrapper under fastcgi or modperl (apach > > I've not looked at what code changes fastcgi or modperl would require in > ikiwiki. --[[Joey]] + +[[!tag wishlist]] diff --git a/doc/todo/improved_parentlinks_styling.mdwn b/doc/todo/improved_parentlinks_styling.mdwn index fc2d7f986..64130a616 100644 --- a/doc/todo/improved_parentlinks_styling.mdwn +++ b/doc/todo/improved_parentlinks_styling.mdwn @@ -5,3 +5,5 @@ usable in browsers like w3m that don't support styled uls. ikiwiki does use styled uls for other things, such as the action bar, but displaying that as a simple unstyled list in a simple browser works well and makes sense. For parent links, it does not. --[[Joey]] + +[[done]] diff --git a/doc/todo/latex.mdwn b/doc/todo/latex.mdwn index 56d3b1c0c..eb53538b4 100644 --- a/doc/todo/latex.mdwn +++ b/doc/todo/latex.mdwn @@ -23,6 +23,8 @@ Conversely, how about adding a plugin to support exporting to LaTeX? >>> Have a look at [pandoc](http://code.google.com/p/pandoc/). It can make PDFs via pdflatex. --[[roktas]] +>>>> Interesting, just yesterday I was playing with pandoc to make PDFs from my Markdown. Could someone advise me on how to embed these PDFs into ikiwiki? I need some guidance in implementing this. --[[JosephTurian]] + ---- [here](http://ng.l4x.org/gitweb/gitweb.cgi?p=ikiwiki.git/.git;a=blob;f=IkiWiki/Plugin/latex.pm) is a first stab at diff --git a/doc/todo/modify_page_filename_in_plugin.mdwn b/doc/todo/modify_page_filename_in_plugin.mdwn new file mode 100644 index 000000000..7c0a909eb --- /dev/null +++ b/doc/todo/modify_page_filename_in_plugin.mdwn @@ -0,0 +1,33 @@ +I'm writing a plugin to wikify c/c++ code. + +By default ikiwiki generates xxx.html for a file called xxx.c. + +The problem is that I occasionally have xxx.c and xxx.h in the same directory and there's a filename collision. + +My solution is to allow plugins to provide a hook that sets the pagename. --[[/users/bstpierre]] + + --- /usr/share/perl5/IkiWiki.pm.ORIG 2008-10-03 14:12:50.000000000 -0400 + +++ /usr/share/perl5/IkiWiki.pm 2008-10-07 11:57:26.000000000 -0400 + @@ -196,11 +196,32 @@ + + sub pagename ($) { #{{{ + my $file=shift; + + my $type=pagetype($file); + + + + if(defined $type && + + exists $hooks{pagename} && + + exists $hooks{pagename}{$type}) { + + + + return $hooks{pagename}{$type}{call}($file); + + + + } else { + + + my $page=$file; + $page=~s/\Q.$type\E*$// if defined $type; + return $page; + + } + } #}}} + + sub htmlpage ($) { #{{{ + diff --git a/doc/todo/mtime.mdwn b/doc/todo/mtime.mdwn index 92cbe84ff..22d4cd4ff 100644 --- a/doc/todo/mtime.mdwn +++ b/doc/todo/mtime.mdwn @@ -12,3 +12,5 @@ plugin changes page content without any younger page being involved. And editing one of the html templates and rebuilding the wiki can change every page. All of these need to be reflected in the file mtime to avoid caching problems. + +[[!tag wishlist]] diff --git a/doc/todo/optimisations.mdwn b/doc/todo/optimisations.mdwn index 582c03ef1..b8c4fa0da 100644 --- a/doc/todo/optimisations.mdwn +++ b/doc/todo/optimisations.mdwn @@ -3,6 +3,13 @@ Ikiwiki has already been optimised a lot, however.. * Look at splitting up CGI.pm. But note that too much splitting can slow perl down. + > It's split enough, or possibly more than enough, now. :-) + * The backlinks calculation code is still O(N^2) on the number of pages. If backlinks info were stored in the index file, it would go down to constant time for iterative builds, though still N^2 for rebuilds. + + > Seems to be O(Num Pages * Num Links in Page), or effectively O(N) + > pages for most wikis. + +[[done]] diff --git a/doc/todo/remove_basewiki_redir_pages.mdwn b/doc/todo/remove_basewiki_redir_pages.mdwn index 247801a8d..fe9e49ce2 100644 --- a/doc/todo/remove_basewiki_redir_pages.mdwn +++ b/doc/todo/remove_basewiki_redir_pages.mdwn @@ -1,2 +1,4 @@ In version 2.16, several redir pages were put in for [[basewiki]] pages that were moved. These redirs should be removed later. --[[Joey]] + +[[done]] diff --git a/doc/todo/tmplvars_plugin.mdwn b/doc/todo/tmplvars_plugin.mdwn index fe163fb5f..f7d06a579 100644 --- a/doc/todo/tmplvars_plugin.mdwn +++ b/doc/todo/tmplvars_plugin.mdwn @@ -1,6 +1,6 @@ A simple plugin to allow per-page customization of a template by passing paramaters to HTML::Template. For those times when a whole pagetemplate is too much work. --Ethan -[[!tags patch]] +[[!tag patch]] #!/usr/bin/perl package IkiWiki::Plugin::tmplvars; diff --git a/doc/todo/using_meta_titles_for_parentlinks.html b/doc/todo/using_meta_titles_for_parentlinks.html index 8a42bf4a8..651b7fa0f 100644 --- a/doc/todo/using_meta_titles_for_parentlinks.html +++ b/doc/todo/using_meta_titles_for_parentlinks.html @@ -1,5 +1,5 @@ It is possible to set a Page-Title in the meta-plugin, but that one isn't -reused in parentlinks. This patch may fix it. +reused in parentlinks. This [[patch]] may fix it.
  • I give pagetitle the full path to a page. diff --git a/doc/bugs/relative_links.mdwn b/doc/todo/want_to_avoid_ikiwiki_using_http_or_https_in_urls_to_allow_serving_both.mdwn similarity index 99% rename from doc/bugs/relative_links.mdwn rename to doc/todo/want_to_avoid_ikiwiki_using_http_or_https_in_urls_to_allow_serving_both.mdwn index a1dc8f373..65b7cd96a 100644 --- a/doc/bugs/relative_links.mdwn +++ b/doc/todo/want_to_avoid_ikiwiki_using_http_or_https_in_urls_to_allow_serving_both.mdwn @@ -25,3 +25,5 @@ I noticed the links to the images on are al which seems to do the right thing in page.tmpl, but not for change.tmpl. Where is BASEURL set? -- Brian May > The use of an absolute baseurl in change.tmpl is a special case. --[[Joey]] + +[[wishlist]] diff --git a/doc/users/bstpierre.mdwn b/doc/users/bstpierre.mdwn new file mode 100644 index 000000000..327d25016 --- /dev/null +++ b/doc/users/bstpierre.mdwn @@ -0,0 +1 @@ +Brian St. Pierre is **** diff --git a/doc/todo/donmarti.mdwn b/doc/users/donmarti.mdwn similarity index 100% rename from doc/todo/donmarti.mdwn rename to doc/users/donmarti.mdwn diff --git a/doc/users/jondowland.mdwn b/doc/users/jondowland.mdwn index d5aa6d0be..c6302616f 100644 --- a/doc/users/jondowland.mdwn +++ b/doc/users/jondowland.mdwn @@ -1,4 +1,5 @@ A new ikiwiki user, looking at ikiwiki both for his personal site but also as a team-documentation management system for a small-sized group of UNIX sysadmins. -* (currently non-ikiwiki) Homepage: -* potential future (ikiwiki) Homepage: +* My [homepage](http://jmtd.net/) is powered by ikiwiki (replacing my [older homepage](http://alcopop.org/), which was a mess of scripts) + +I am giving a talk at the [UK UNIX User's Group](http://www.ukuug.org/) annual [Linux conference](http://www.ukuug.org/events/linux2008/) about organising system administrator documentation which will feature IkiWiki. diff --git a/doc/users/josephturian.mdwn b/doc/users/josephturian.mdwn index f055f951c..5ad68290d 100644 --- a/doc/users/josephturian.mdwn +++ b/doc/users/josephturian.mdwn @@ -1,8 +1,10 @@ -Joseph Turian is a scientist. +Joseph Turian is a scientist. You can email him at + lastname at gmail dot com * Academic: He hopes to set up ikiwiki and organize his thoughts. -In more distant dreams, he hopes that ikiwiki is someday ported to python. He also imagines adding wacky NLP and machine learning to ikiwiki. + +In more hazy dreams, he hopes that ikiwiki is someday ported to python. diff --git a/po/es.po b/po/es.po index e0a355fc0..ff02ea86a 100644 --- a/po/es.po +++ b/po/es.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: es\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-09-29 17:12-0400\n" -"PO-Revision-Date: 2008-03-06 11:07+0100\n" +"POT-Creation-Date: 2008-10-08 17:34-0400\n" +"PO-Revision-Date: 2008-10-07 12:44+0200\n" "Last-Translator: Víctor Moral \n" "Language-Team: Spanish \n" "MIME-Version: 1.0\n" @@ -26,7 +26,7 @@ msgstr "" #: ../IkiWiki/CGI.pm:163 ../IkiWiki/Plugin/editpage.pm:350 msgid "Your login session has expired." -msgstr "" +msgstr "Su registro en el sistema ha expirado." #: ../IkiWiki/CGI.pm:184 msgid "Login" @@ -48,17 +48,18 @@ msgstr "Las preferencias se han guardado." msgid "You are banned." msgstr "Ha sido expulsado." -#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1153 +#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1166 msgid "Error" msgstr "Error" #: ../IkiWiki/Plugin/aggregate.pm:80 msgid "Aggregation triggered via web." -msgstr "" +msgstr "Contenido añadido activado vía web." #: ../IkiWiki/Plugin/aggregate.pm:89 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 #, perl-format @@ -127,7 +128,7 @@ msgstr "creando nueva página %s" #: ../IkiWiki/Plugin/amazon_s3.pm:31 msgid "deleting bucket.." -msgstr "" +msgstr "borrando el directorio.." #: ../IkiWiki/Plugin/amazon_s3.pm:38 ../ikiwiki.in:199 msgid "done" @@ -136,45 +137,43 @@ msgstr "completado" #: ../IkiWiki/Plugin/amazon_s3.pm:97 #, perl-format msgid "Must specify %s" -msgstr "" +msgstr "Debe especificar %s" #: ../IkiWiki/Plugin/amazon_s3.pm:136 msgid "Failed to create bucket in S3: " -msgstr "" +msgstr "Creación de directorio en S3 fallida: " #: ../IkiWiki/Plugin/amazon_s3.pm:221 -#, fuzzy msgid "Failed to save file to S3: " -msgstr "No he podido enviar el mensaje de correo electrónico" +msgstr "No puedo guardar el archivo en S3: " #: ../IkiWiki/Plugin/amazon_s3.pm:243 -#, fuzzy msgid "Failed to delete file from S3: " -msgstr "no he podido crear la imagen desde el código" +msgstr "No puedo borrar archivo en S3: " #: ../IkiWiki/Plugin/attachment.pm:48 #, perl-format msgid "there is already a page named %s" -msgstr "" +msgstr "ya existe una página de nombre %s" #: ../IkiWiki/Plugin/attachment.pm:81 msgid "prohibited by allowed_attachments" -msgstr "" +msgstr "prohibido por la claúsula allowed_attachments" -#: ../IkiWiki/Plugin/attachment.pm:188 +#: ../IkiWiki/Plugin/attachment.pm:189 msgid "bad attachment filename" -msgstr "" +msgstr "nombre de archivo adjunto erróneo" -#: ../IkiWiki/Plugin/attachment.pm:230 +#: ../IkiWiki/Plugin/attachment.pm:231 msgid "attachment upload" -msgstr "" +msgstr "enviado el adjunto" -#: ../IkiWiki/Plugin/autoindex.pm:103 +#: ../IkiWiki/Plugin/autoindex.pm:105 msgid "automatic index generation" -msgstr "" +msgstr "creación de índice automática" #: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:261 -#: ../IkiWiki/Plugin/inline.pm:323 ../IkiWiki/Plugin/opendiscussion.pm:26 +#: ../IkiWiki/Plugin/inline.pm:326 ../IkiWiki/Plugin/opendiscussion.pm:26 #: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79 #: ../IkiWiki/Render.pm:149 msgid "discussion" @@ -198,17 +197,17 @@ msgstr "el parámetro %s es obligatorio" #: ../IkiWiki/Plugin/cutpaste.pm:66 msgid "no text was copied in this page" -msgstr "" +msgstr "no se ha copiado ningún texto en esta página" #: ../IkiWiki/Plugin/cutpaste.pm:69 #, perl-format msgid "no text was copied in this page with id %s" -msgstr "" +msgstr "no se ha copiado ningún texto con el identificador %s en esta pagina" #: ../IkiWiki/Plugin/editpage.pm:40 -#, fuzzy, perl-format +#, perl-format msgid "removing old preview %s" -msgstr "eliminando la antigua página %s" +msgstr "eliminando la antigua previsualización %s" #: ../IkiWiki/Plugin/editpage.pm:141 #, perl-format @@ -262,9 +261,8 @@ msgid "prog not a valid graphviz program" msgstr "prog no es un programa graphviz válido " #: ../IkiWiki/Plugin/img.pm:62 -#, fuzzy msgid "Image::Magick is not installed" -msgstr "El complemento polygen no ha sido instalado" +msgstr "El complemento Image::Magick no ha sido instalado" #: ../IkiWiki/Plugin/img.pm:69 #, perl-format @@ -294,34 +292,32 @@ msgstr "" "--atom" #: ../IkiWiki/Plugin/inline.pm:139 -#, fuzzy msgid "page editing not allowed" -msgstr "ciclo de redirección no permitido" +msgstr "no está permitida la modificación de páginas" #: ../IkiWiki/Plugin/inline.pm:156 -#, fuzzy msgid "missing pages parameter" -msgstr "falta el parámetro %s" +msgstr "falta el parámetro pages" #: ../IkiWiki/Plugin/inline.pm:204 #, perl-format msgid "unknown sort type %s" msgstr "no conozco este tipo de ordenación %s" -#: ../IkiWiki/Plugin/inline.pm:282 +#: ../IkiWiki/Plugin/inline.pm:285 msgid "Add a new post titled:" msgstr "Añadir una entrada nueva titulada:" -#: ../IkiWiki/Plugin/inline.pm:298 +#: ../IkiWiki/Plugin/inline.pm:301 #, perl-format msgid "nonexistant template %s" msgstr "la plantilla %s no existe " -#: ../IkiWiki/Plugin/inline.pm:331 ../IkiWiki/Render.pm:83 +#: ../IkiWiki/Plugin/inline.pm:334 ../IkiWiki/Render.pm:83 msgid "Discussion" msgstr "Comentarios" -#: ../IkiWiki/Plugin/inline.pm:568 +#: ../IkiWiki/Plugin/inline.pm:571 msgid "RPC::XML::Client not found, not pinging" msgstr "No he encontrado el componente RPC::XML::Client, no envío señal alguna" @@ -329,14 +325,15 @@ 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:46 ../IkiWiki/Plugin/lockedit.pm:60 -#, fuzzy, perl-format +#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 +#, perl-format msgid "%s is locked and cannot be edited" -msgstr "La página %s está bloqueada por %s y no puede modificarse" +msgstr "La página %s está bloqueada y no puede modificarse" #: ../IkiWiki/Plugin/mdwn.pm:44 msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed" msgstr "" +"el modo multimarkdown está activo, pero no está instalado Text::MultiMarkdown" #: ../IkiWiki/Plugin/mdwn.pm:67 #, perl-format @@ -400,6 +397,8 @@ msgstr "Error creando la cuenta de usuario." #: ../IkiWiki/Plugin/passwordauth.pm:257 msgid "No email address, so cannot email password reset instructions." msgstr "" +"No tengo dirección de correo electrónica, así que no puedo enviar " +"instrucciones para reiniciar la contraseña" #: ../IkiWiki/Plugin/passwordauth.pm:291 msgid "Failed to send mail" @@ -408,37 +407,38 @@ msgstr "No he podido enviar el mensaje de correo electrónico" #: ../IkiWiki/Plugin/passwordauth.pm:293 msgid "You have been mailed password reset instructions." msgstr "" +"Las instrucciones para reinicar la contraseña se le han enviado por correo " +"electrónico" #: ../IkiWiki/Plugin/passwordauth.pm:328 msgid "incorrect password reset url" -msgstr "" +msgstr "el url para reiniciar la contraseña es incorrecto" #: ../IkiWiki/Plugin/passwordauth.pm:331 msgid "password reset denied" -msgstr "" +msgstr "reinicio de contraseña denegado" #: ../IkiWiki/Plugin/pingee.pm:30 msgid "Ping received." -msgstr "" +msgstr "Recibida una señal ping." #: ../IkiWiki/Plugin/pinger.pm:53 msgid "requires 'from' and 'to' parameters" -msgstr "" +msgstr "los parámetros 'from' y 'to' son obligatorios" #: ../IkiWiki/Plugin/pinger.pm:58 -#, fuzzy, perl-format +#, perl-format msgid "Will ping %s" -msgstr "modificando página %s" +msgstr "Informaremos a %s" #: ../IkiWiki/Plugin/pinger.pm:61 #, perl-format msgid "Ignoring ping directive for wiki %s (this wiki is %s)" -msgstr "" +msgstr "Ignorando directiva 'ping' para el wiki %s (este wiki es %s)" #: ../IkiWiki/Plugin/pinger.pm:77 -#, fuzzy msgid "LWP not found, not pinging" -msgstr "No he encontrado el componente RPC::XML::Client, no envío señal alguna" +msgstr "No he encontrado el componente LWP, no envío señal alguna" #: ../IkiWiki/Plugin/poll.pm:69 msgid "vote" @@ -453,9 +453,8 @@ msgid "polygen not installed" msgstr "El complemento polygen no ha sido instalado" #: ../IkiWiki/Plugin/polygen.pm:60 -#, fuzzy msgid "command failed" -msgstr "el programa fortune ha fallado" +msgstr "la ejecución del programa ha fallado" #: ../IkiWiki/Plugin/postsparkline.pm:41 msgid "missing formula" @@ -532,11 +531,11 @@ msgstr "el %A a media tarde" #: ../IkiWiki/Plugin/progress.pm:34 #, perl-format msgid "illegal percent value %s" -msgstr "" +msgstr "%s es un valor erróneo para un porcentaje" #: ../IkiWiki/Plugin/progress.pm:59 msgid "need either `percent` or `totalpages` and `donepages` parameters" -msgstr "" +msgstr "son necesarios los parámetros 'donepages' y 'percent' ó 'totalpages'" #: ../IkiWiki/Plugin/recentchanges.pm:100 msgid "missing page" @@ -549,87 +548,86 @@ msgstr "No existe la página %s." #: ../IkiWiki/Plugin/recentchangesdiff.pm:36 msgid "(Diff truncated)" -msgstr "" +msgstr "(Lista de diferencias truncada)" #: ../IkiWiki/Plugin/remove.pm:31 ../IkiWiki/Plugin/rename.pm:36 -#, fuzzy, perl-format +#, perl-format msgid "%s does not exist" msgstr "No existe la página %s." #: ../IkiWiki/Plugin/remove.pm:38 -#, fuzzy, perl-format +#, perl-format msgid "%s is not in the srcdir, so it cannot be deleted" -msgstr "La página %s está bloqueada por %s y no puede modificarse" +msgstr "%s no está en el directorio fuente por lo que no puede ser borrada" #: ../IkiWiki/Plugin/remove.pm:41 ../IkiWiki/Plugin/rename.pm:45 -#, fuzzy, perl-format +#, perl-format msgid "%s is not a file" -msgstr "la página %s no es modificable" +msgstr "%s no es un archivo" -#: ../IkiWiki/Plugin/remove.pm:112 +#: ../IkiWiki/Plugin/remove.pm:115 #, perl-format msgid "confirm removal of %s" -msgstr "" +msgstr "confirme el borrado de %s" -#: ../IkiWiki/Plugin/remove.pm:148 +#: ../IkiWiki/Plugin/remove.pm:152 msgid "Please select the attachments to remove." -msgstr "" +msgstr "Por favor seleccione los adjuntos que serán borrados." -#: ../IkiWiki/Plugin/remove.pm:188 +#: ../IkiWiki/Plugin/remove.pm:192 msgid "removed" -msgstr "" +msgstr "borrado" #: ../IkiWiki/Plugin/rename.pm:42 #, perl-format msgid "%s is not in the srcdir, so it cannot be renamed" -msgstr "" +msgstr "%s no está en el directorio fuente por lo que no puede ser renombrado" #: ../IkiWiki/Plugin/rename.pm:62 -#, fuzzy msgid "no change to the file name was specified" -msgstr "el programa envoltorio no ha sido especificado" +msgstr "no se ha indicado cambio alguno en el nombre del archivo" #: ../IkiWiki/Plugin/rename.pm:68 #, perl-format msgid "illegal name" -msgstr "" +msgstr "nombre no válido" #: ../IkiWiki/Plugin/rename.pm:73 #, perl-format msgid "%s already exists" -msgstr "" +msgstr "%s ya existe" #: ../IkiWiki/Plugin/rename.pm:79 #, perl-format msgid "%s already exists on disk" -msgstr "" +msgstr "%s ya existe en el disco" #: ../IkiWiki/Plugin/rename.pm:101 -#, fuzzy, perl-format +#, perl-format msgid "rename %s" -msgstr "convirtiendo %s" +msgstr "cambiando de nombre %s" #: ../IkiWiki/Plugin/rename.pm:138 msgid "Also rename SubPages and attachments" -msgstr "" +msgstr "También cambia de nombre las subpáginas y los adjuntos" -#: ../IkiWiki/Plugin/rename.pm:223 +#: ../IkiWiki/Plugin/rename.pm:224 msgid "Only one attachment can be renamed at a time." -msgstr "" +msgstr "Únicamente un adjunto puede ser renombrado a la vez." -#: ../IkiWiki/Plugin/rename.pm:226 +#: ../IkiWiki/Plugin/rename.pm:227 msgid "Please select the attachment to rename." -msgstr "" +msgstr "Por favor, seleccione el adjunto al que cambiar el nombre." -#: ../IkiWiki/Plugin/rename.pm:332 +#: ../IkiWiki/Plugin/rename.pm:338 #, perl-format msgid "rename %s to %s" -msgstr "" +msgstr "%s cambia de nombre a %s" -#: ../IkiWiki/Plugin/rename.pm:484 -#, fuzzy, perl-format +#: ../IkiWiki/Plugin/rename.pm:490 +#, perl-format msgid "update for rename of %s to %s" -msgstr "actualizado el wiki %s y la página %s por el usuario %s" +msgstr "actualizado el cambio de nombre de %s a %s" #: ../IkiWiki/Plugin/search.pm:36 #, perl-format @@ -639,11 +637,11 @@ msgstr "Es obligatorio indicar %s cuando se utiliza el complemento de búsqueda" #: ../IkiWiki/Plugin/search.pm:182 #, perl-format msgid "need Digest::SHA1 to index %s" -msgstr "" +msgstr "se necesita la instalación de Digest::SHA1 para indexar %s" #: ../IkiWiki/Plugin/search.pm:217 msgid "search" -msgstr "" +msgstr "buscar" #: ../IkiWiki/Plugin/shortcut.pm:27 msgid "shortcut plugin will not work without a shortcuts.mdwn" @@ -745,45 +743,48 @@ msgstr "no he podido crear la imagen desde el código" #: ../IkiWiki/Plugin/websetup.pm:89 msgid "plugin" -msgstr "" +msgstr "complemento" #: ../IkiWiki/Plugin/websetup.pm:108 #, perl-format msgid "enable %s?" -msgstr "" +msgstr "¿ activar %s ?" #: ../IkiWiki/Plugin/websetup.pm:236 msgid "you are not logged in as an admin" -msgstr "" +msgstr "No está registrado como un administrador" #: ../IkiWiki/Plugin/websetup.pm:240 msgid "setup file for this wiki is not known" -msgstr "" +msgstr "El archivo de configuración para este wiki es desconocido" #: ../IkiWiki/Plugin/websetup.pm:256 -#, fuzzy msgid "main" -msgstr "Administración" +msgstr "principal" #: ../IkiWiki/Plugin/websetup.pm:257 msgid "plugins" -msgstr "" +msgstr "complementos" #: ../IkiWiki/Plugin/websetup.pm:395 msgid "" "The configuration changes shown below require a wiki rebuild to take effect." msgstr "" +"Los cambios en la configuración que se muestran más abajo precisan una " +"reconstrucción del wiki para tener efecto." #: ../IkiWiki/Plugin/websetup.pm:399 msgid "" "For the configuration changes shown below to fully take effect, you may need " "to rebuild the wiki." msgstr "" +"Para que los cambios en la configuración mostrados más abajo tengan efecto, " +"es posible que necesite reconstruir el wiki." #: ../IkiWiki/Plugin/websetup.pm:433 #, perl-format msgid "

    Error: %s exited nonzero (%s)" -msgstr "" +msgstr "

    Error: %s finaliza con código distinto de cero (%s)" #: ../IkiWiki/Render.pm:253 #, perl-format @@ -791,6 +792,8 @@ msgid "" "symlink found in srcdir path (%s) -- set allow_symlinks_before_srcdir to " "allow this" msgstr "" +"encontrado un enlace simbólico en la ruta del directorio fuente (%s) -- use " +"la directiva allow_symlinks_before_srcdir para permitir la acción" #: ../IkiWiki/Render.pm:277 ../IkiWiki/Render.pm:302 #, perl-format @@ -800,7 +803,7 @@ msgstr "ignorando el archivo %s porque su nombre no es correcto" #: ../IkiWiki/Render.pm:284 #, perl-format msgid "%s has multiple possible source pages" -msgstr "" +msgstr "%s tiene mútiples páginas fuente posibles" #: ../IkiWiki/Render.pm:360 #, perl-format @@ -853,16 +856,16 @@ msgstr "no puedo leer el archivo %s: %s" #: ../IkiWiki/Setup/Automator.pm:33 msgid "you must enter a wikiname (that contains alphanumerics)" -msgstr "" +msgstr "debe escribir un nombre wiki (que contiene caracteres alfanuméricos)" #: ../IkiWiki/Setup/Automator.pm:67 #, perl-format msgid "unsupported revision control system %s" -msgstr "" +msgstr "el sistema de control de versiones %s no está soportado" #: ../IkiWiki/Setup/Automator.pm:83 msgid "failed to set up the repository with ikiwiki-makerepo" -msgstr "" +msgstr "no he podido crear un repositorio con el programa ikiwiki-makerepo" #: ../IkiWiki/Wrapper.pm:16 #, perl-format @@ -903,7 +906,7 @@ msgstr "uso: ikiwiki [opciones] origen destino" #: ../ikiwiki.in:14 msgid " ikiwiki --setup configfile" -msgstr "" +msgstr " ikiwiki --setup archivo_de_configuración" #: ../ikiwiki.in:90 msgid "usage: --set var=value" @@ -929,43 +932,45 @@ msgstr "" #: ../IkiWiki.pm:504 msgid "cannot use multiple rcs plugins" -msgstr "" +msgstr "no puedo emplear varios complementos rcs" #: ../IkiWiki.pm:533 #, perl-format msgid "failed to load external plugin needed for %s plugin: %s" -msgstr "" +msgstr "no he podido cargar el complemento externo %s necesario para %s" -#: ../IkiWiki.pm:1136 -#, fuzzy, perl-format +#: ../IkiWiki.pm:1149 +#, perl-format msgid "preprocessing loop detected on %s at depth %i" msgstr "" -"se ha detectado un bucle de preprocesado %s en la página %s en la vuelta " +"se ha detectado en la página %s un bucle de preprocesado en la iteración " "número %i" -#: ../IkiWiki.pm:1645 +#: ../IkiWiki.pm:1658 msgid "yes" -msgstr "" +msgstr "si" #: ../auto.setup:16 msgid "What will the wiki be named?" -msgstr "" +msgstr "¿ Qué nombre tendrá el wiki ?" #: ../auto.setup:16 msgid "wiki" -msgstr "" +msgstr "wiki" #: ../auto.setup:18 msgid "What revision control system to use?" -msgstr "" +msgstr "¿ Qué sistema de control de versiones empleará ?" #: ../auto.setup:20 msgid "What wiki user (or openid) will be wiki admin?" msgstr "" +"¿ Qué usuario del wiki (ó identificador openid) será el administrador del " +"wiki ? " #: ../auto.setup:23 msgid "What is the domain name of the web server?" -msgstr "" +msgstr "¿ Cuál es el dominio para el servidor web ?" #~ msgid "Your password has been emailed to you." #~ msgstr "Se le ha enviado su contraseña por correo electrónico." diff --git a/po/fr.po b/po/fr.po index b935bd420..0c8406381 100644 --- a/po/fr.po +++ b/po/fr.po @@ -9,9 +9,9 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-09-29 17:12-0400\n" -"PO-Revision-Date: 2008-04-29 17:46+0200\n" -"Last-Translator: Christian Perrier \n" +"POT-Creation-Date: 2008-10-05 19:11-0400\n" +"PO-Revision-Date: 2008-09-23 10:00+0100\n" +"Last-Translator: Julien Patriarca \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -51,17 +51,17 @@ msgstr "Les préférences ont été enregistrées." msgid "You are banned." msgstr "Vous avez été banni." -#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1153 +#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1166 msgid "Error" msgstr "Erreur" #: ../IkiWiki/Plugin/aggregate.pm:80 msgid "Aggregation triggered via web." -msgstr "" +msgstr "Agrégation déclenchée via Internet" #: ../IkiWiki/Plugin/aggregate.pm:89 msgid "Nothing to do right now, all feeds are up-to-date!" -msgstr "" +msgstr "Rien à faire pour le moment, tous les flux sont à jour!" #: ../IkiWiki/Plugin/aggregate.pm:216 #, perl-format @@ -130,7 +130,7 @@ msgstr "Création de la nouvelle page %s" #: ../IkiWiki/Plugin/amazon_s3.pm:31 msgid "deleting bucket.." -msgstr "" +msgstr "vidage du panier..." #: ../IkiWiki/Plugin/amazon_s3.pm:38 ../ikiwiki.in:199 msgid "done" @@ -139,45 +139,43 @@ msgstr "Terminé" #: ../IkiWiki/Plugin/amazon_s3.pm:97 #, perl-format msgid "Must specify %s" -msgstr "" +msgstr "Vous devez spécifier %s" #: ../IkiWiki/Plugin/amazon_s3.pm:136 msgid "Failed to create bucket in S3: " -msgstr "" +msgstr "Echec lors de la création du panier en S3:" #: ../IkiWiki/Plugin/amazon_s3.pm:221 -#, fuzzy msgid "Failed to save file to S3: " -msgstr "Échec de l'envoi du courriel" +msgstr "Echec lors de la création du fichier en S3:" #: ../IkiWiki/Plugin/amazon_s3.pm:243 -#, fuzzy msgid "Failed to delete file from S3: " -msgstr "Échec de la création de l'image à partir du code" +msgstr "Echec lors de la suppression du fichier de S3:" #: ../IkiWiki/Plugin/attachment.pm:48 #, perl-format msgid "there is already a page named %s" -msgstr "" +msgstr "il existe déjà une page nommée %s" #: ../IkiWiki/Plugin/attachment.pm:81 msgid "prohibited by allowed_attachments" -msgstr "" +msgstr "action interdite par pièces jointes autorisées" -#: ../IkiWiki/Plugin/attachment.pm:188 +#: ../IkiWiki/Plugin/attachment.pm:189 msgid "bad attachment filename" -msgstr "" +msgstr "Mauvais nom de la pièce jointe" -#: ../IkiWiki/Plugin/attachment.pm:230 +#: ../IkiWiki/Plugin/attachment.pm:231 msgid "attachment upload" -msgstr "" +msgstr "envoi de la pièce jointe" #: ../IkiWiki/Plugin/autoindex.pm:103 msgid "automatic index generation" -msgstr "" +msgstr "génération de l'index automatique" #: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:261 -#: ../IkiWiki/Plugin/inline.pm:323 ../IkiWiki/Plugin/opendiscussion.pm:26 +#: ../IkiWiki/Plugin/inline.pm:326 ../IkiWiki/Plugin/opendiscussion.pm:26 #: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79 #: ../IkiWiki/Render.pm:149 msgid "discussion" @@ -201,12 +199,12 @@ msgstr "le paramètre %s est obligatoire" #: ../IkiWiki/Plugin/cutpaste.pm:66 msgid "no text was copied in this page" -msgstr "" +msgstr "aucun texte n'a été copié dans cette page" #: ../IkiWiki/Plugin/cutpaste.pm:69 #, perl-format msgid "no text was copied in this page with id %s" -msgstr "" +msgstr "Aucun texte n'a été copié dans cette page avec l'identifiant %s" #: ../IkiWiki/Plugin/editpage.pm:40 #, fuzzy, perl-format @@ -264,9 +262,8 @@ msgid "prog not a valid graphviz program" msgstr "Ce programme n'est pas un programme graphviz valable" #: ../IkiWiki/Plugin/img.pm:62 -#, fuzzy msgid "Image::Magick is not installed" -msgstr "polygen n'est pas installé" +msgstr "Image::Magick n'est pas installé" #: ../IkiWiki/Plugin/img.pm:69 #, perl-format @@ -301,29 +298,28 @@ msgid "page editing not allowed" msgstr "Redirection cyclique non autorisée" #: ../IkiWiki/Plugin/inline.pm:156 -#, fuzzy msgid "missing pages parameter" -msgstr "Paramètre %s manquant" +msgstr "paramètres de la page manquants" #: ../IkiWiki/Plugin/inline.pm:204 #, perl-format msgid "unknown sort type %s" msgstr "Type de tri %s inconnu" -#: ../IkiWiki/Plugin/inline.pm:282 +#: ../IkiWiki/Plugin/inline.pm:285 msgid "Add a new post titled:" msgstr "Ajouter un nouvel article dont le titre est :" -#: ../IkiWiki/Plugin/inline.pm:298 +#: ../IkiWiki/Plugin/inline.pm:301 #, perl-format msgid "nonexistant template %s" msgstr "Le modèle (« template ») %s n'existe pas" -#: ../IkiWiki/Plugin/inline.pm:331 ../IkiWiki/Render.pm:83 +#: ../IkiWiki/Plugin/inline.pm:334 ../IkiWiki/Render.pm:83 msgid "Discussion" msgstr "Discussion" -#: ../IkiWiki/Plugin/inline.pm:568 +#: ../IkiWiki/Plugin/inline.pm:571 msgid "RPC::XML::Client not found, not pinging" msgstr "RPC::XML::Client introuvable, pas de réponse au ping" @@ -332,13 +328,13 @@ msgid "failed to run dot" msgstr "Échec du lancement de dot" #: ../IkiWiki/Plugin/lockedit.pm:46 ../IkiWiki/Plugin/lockedit.pm:60 -#, fuzzy, perl-format +#, perl-format msgid "%s is locked and cannot be edited" -msgstr "%s est verrouillé par %s et ne peut être édité" +msgstr "%s est verouillé et ne peut être édité" #: ../IkiWiki/Plugin/mdwn.pm:44 msgid "multimarkdown is enabled, but Text::MultiMarkdown is not installed" -msgstr "" +msgstr "mulitmarkdown est activé mais Text::Multimarkdown n'est pas installé" #: ../IkiWiki/Plugin/mdwn.pm:67 #, perl-format @@ -402,6 +398,8 @@ msgstr "Erreur lors de la création du compte." #: ../IkiWiki/Plugin/passwordauth.pm:257 msgid "No email address, so cannot email password reset instructions." msgstr "" +"Pas d'adresse email spécifiée. Impossible d'envoyer les instructions de " +"remise à zéro du mot de passe" #: ../IkiWiki/Plugin/passwordauth.pm:291 msgid "Failed to send mail" @@ -410,37 +408,38 @@ msgstr "Échec de l'envoi du courriel" #: ../IkiWiki/Plugin/passwordauth.pm:293 msgid "You have been mailed password reset instructions." msgstr "" +"Vous avez reçu un message contenant les instructions de remise à zéro du mot " +"de passe" #: ../IkiWiki/Plugin/passwordauth.pm:328 msgid "incorrect password reset url" -msgstr "" +msgstr "Adresse de remise à zéro du mot de passe incorrecte" #: ../IkiWiki/Plugin/passwordauth.pm:331 msgid "password reset denied" -msgstr "" +msgstr "remise à zéro du mot de passe refusée" #: ../IkiWiki/Plugin/pingee.pm:30 msgid "Ping received." -msgstr "" +msgstr "Ping reçu" #: ../IkiWiki/Plugin/pinger.pm:53 msgid "requires 'from' and 'to' parameters" -msgstr "" +msgstr "les paramètres 'de' et 'à' sont nécessaires" #: ../IkiWiki/Plugin/pinger.pm:58 -#, fuzzy, perl-format +#, perl-format msgid "Will ping %s" -msgstr "Édition de %s" +msgstr "va envoyer un ping à %s" #: ../IkiWiki/Plugin/pinger.pm:61 #, perl-format msgid "Ignoring ping directive for wiki %s (this wiki is %s)" -msgstr "" +msgstr "les instructions du wiki %s sont ignorées (ce wiki est %s)" #: ../IkiWiki/Plugin/pinger.pm:77 -#, fuzzy msgid "LWP not found, not pinging" -msgstr "RPC::XML::Client introuvable, pas de réponse au ping" +msgstr "LWP est introuvable. Pas de réponse au ping" #: ../IkiWiki/Plugin/poll.pm:69 msgid "vote" @@ -455,9 +454,8 @@ msgid "polygen not installed" msgstr "polygen n'est pas installé" #: ../IkiWiki/Plugin/polygen.pm:60 -#, fuzzy msgid "command failed" -msgstr "Échec du lancement de « fortune »" +msgstr "Echec lors du lancement de la commande" #: ../IkiWiki/Plugin/postsparkline.pm:41 msgid "missing formula" @@ -532,9 +530,9 @@ msgid "at noon on %A" msgstr "%A, à midi" #: ../IkiWiki/Plugin/progress.pm:34 -#, perl-format +#, fuzzy, perl-format msgid "illegal percent value %s" -msgstr "" +msgstr "appellation non autorisé" #: ../IkiWiki/Plugin/progress.pm:59 msgid "need either `percent` or `totalpages` and `donepages` parameters" @@ -554,84 +552,83 @@ msgid "(Diff truncated)" msgstr "(fichier de différences tronqué)" #: ../IkiWiki/Plugin/remove.pm:31 ../IkiWiki/Plugin/rename.pm:36 -#, fuzzy, perl-format +#, perl-format msgid "%s does not exist" -msgstr "La page %s n'existe pas." +msgstr "%s n'existe pas" #: ../IkiWiki/Plugin/remove.pm:38 -#, fuzzy, perl-format +#, perl-format msgid "%s is not in the srcdir, so it cannot be deleted" -msgstr "%s est verrouillé par %s et ne peut être édité" +msgstr "%s n'est pas dans srcdir et ne peut donc pas être supprimé" #: ../IkiWiki/Plugin/remove.pm:41 ../IkiWiki/Plugin/rename.pm:45 -#, fuzzy, perl-format +#, perl-format msgid "%s is not a file" -msgstr "%s n'est pas une page éditable" +msgstr "%s n'est pas un fichier" -#: ../IkiWiki/Plugin/remove.pm:112 +#: ../IkiWiki/Plugin/remove.pm:113 #, perl-format msgid "confirm removal of %s" -msgstr "" +msgstr "Suppression de %s confirmée" -#: ../IkiWiki/Plugin/remove.pm:148 +#: ../IkiWiki/Plugin/remove.pm:150 msgid "Please select the attachments to remove." -msgstr "" +msgstr "Veuillez choisir la pièce jointe à supprimer" -#: ../IkiWiki/Plugin/remove.pm:188 +#: ../IkiWiki/Plugin/remove.pm:190 msgid "removed" -msgstr "" +msgstr "supprimé" #: ../IkiWiki/Plugin/rename.pm:42 #, perl-format msgid "%s is not in the srcdir, so it cannot be renamed" -msgstr "" +msgstr "%s n'est pas dans srcdir. Impossible de le renommer" #: ../IkiWiki/Plugin/rename.pm:62 -#, fuzzy msgid "no change to the file name was specified" -msgstr "Le nom de fichier de l'enrobage n'a pas été indiqué" +msgstr "Aucun changement dans le nom du fichier n'a été spécifié" #: ../IkiWiki/Plugin/rename.pm:68 #, perl-format msgid "illegal name" -msgstr "" +msgstr "appellation non autorisé" #: ../IkiWiki/Plugin/rename.pm:73 #, perl-format msgid "%s already exists" -msgstr "" +msgstr "%s existe déjà" #: ../IkiWiki/Plugin/rename.pm:79 #, perl-format msgid "%s already exists on disk" -msgstr "" +msgstr "%s existe déjà sur le disque" #: ../IkiWiki/Plugin/rename.pm:101 -#, fuzzy, perl-format +#, perl-format msgid "rename %s" -msgstr "Affichage de %s" +msgstr "%s renommé" #: ../IkiWiki/Plugin/rename.pm:138 msgid "Also rename SubPages and attachments" msgstr "" -#: ../IkiWiki/Plugin/rename.pm:223 +#: ../IkiWiki/Plugin/rename.pm:224 msgid "Only one attachment can be renamed at a time." -msgstr "" +msgstr "Seule une pièce jointe peut être renommée à la fois" -#: ../IkiWiki/Plugin/rename.pm:226 +#: ../IkiWiki/Plugin/rename.pm:227 msgid "Please select the attachment to rename." -msgstr "" +msgstr "Veuillez sélectionner la pièce jointe à renommer" -#: ../IkiWiki/Plugin/rename.pm:332 +#: ../IkiWiki/Plugin/rename.pm:338 #, perl-format msgid "rename %s to %s" -msgstr "" +msgstr "renomme %s en %s" -#: ../IkiWiki/Plugin/rename.pm:484 +#: ../IkiWiki/Plugin/rename.pm:490 #, perl-format msgid "update for rename of %s to %s" -msgstr "" +msgstr "du nouveau nom de %s en %s" #: ../IkiWiki/Plugin/search.pm:36 #, perl-format @@ -641,11 +638,11 @@ msgstr "Vous devez indiquer %s lors de l'utilisation du greffon de recherche" #: ../IkiWiki/Plugin/search.pm:182 #, perl-format msgid "need Digest::SHA1 to index %s" -msgstr "" +msgstr "Digest::SHA1 est nécessaire pour indexer %s" #: ../IkiWiki/Plugin/search.pm:217 msgid "search" -msgstr "" +msgstr "recherche" #: ../IkiWiki/Plugin/shortcut.pm:27 msgid "shortcut plugin will not work without a shortcuts.mdwn" @@ -748,45 +745,48 @@ msgstr "Échec de la création de l'image à partir du code" #: ../IkiWiki/Plugin/websetup.pm:89 msgid "plugin" -msgstr "" +msgstr "module complémentaire" #: ../IkiWiki/Plugin/websetup.pm:108 #, perl-format msgid "enable %s?" -msgstr "" +msgstr "activer %s?" #: ../IkiWiki/Plugin/websetup.pm:236 msgid "you are not logged in as an admin" -msgstr "" +msgstr "vous n'êtes pas authentifié comme administrateur" #: ../IkiWiki/Plugin/websetup.pm:240 msgid "setup file for this wiki is not known" -msgstr "" +msgstr "le fichier de configuration de ce wiki n'est pas connu" #: ../IkiWiki/Plugin/websetup.pm:256 -#, fuzzy msgid "main" -msgstr "Administrateur" +msgstr "principal" #: ../IkiWiki/Plugin/websetup.pm:257 msgid "plugins" -msgstr "" +msgstr "modules complémentaires" #: ../IkiWiki/Plugin/websetup.pm:395 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 " +"wiki pour prendre effet" #: ../IkiWiki/Plugin/websetup.pm:399 msgid "" "For the configuration changes shown below to fully take effect, you may need " "to rebuild the wiki." msgstr "" +"Pour que les changements de configuration ci dessous prennent effet vous " +"devez recompiler le wiki" #: ../IkiWiki/Plugin/websetup.pm:433 #, perl-format msgid "

    Error: %s exited nonzero (%s)" -msgstr "" +msgstr "

    Erreur: %s a quitté nonzero (%s)" #: ../IkiWiki/Render.pm:253 #, perl-format @@ -855,15 +855,17 @@ msgstr "Lecture impossible de %s : %s" #: ../IkiWiki/Setup/Automator.pm:33 msgid "you must enter a wikiname (that contains alphanumerics)" msgstr "" +"Vous devez spécifier un nom de wiki (contenant des caractères " +"alphanumériques)" #: ../IkiWiki/Setup/Automator.pm:67 #, perl-format msgid "unsupported revision control system %s" -msgstr "" +msgstr "Système de contôles des version non supporté" #: ../IkiWiki/Setup/Automator.pm:83 msgid "failed to set up the repository with ikiwiki-makerepo" -msgstr "" +msgstr "Echec lors de la création du dépôt avec ikiwiki-makerepo" #: ../IkiWiki/Wrapper.pm:16 #, perl-format @@ -931,41 +933,42 @@ msgstr "" #: ../IkiWiki.pm:504 msgid "cannot use multiple rcs plugins" msgstr "" +"impossible d'utiliser plusieurs modules complémentaires dans le système de " +"contrôle des versions" #: ../IkiWiki.pm:533 #, perl-format msgid "failed to load external plugin needed for %s plugin: %s" msgstr "" -#: ../IkiWiki.pm:1136 -#, fuzzy, perl-format +#: ../IkiWiki.pm:1149 +#, perl-format msgid "preprocessing loop detected on %s at depth %i" -msgstr "" -"%s une boucle a été détectée dans le prétraitement de %s, à la profondeur %i" +msgstr "une boucle de pré traitement a été detectée sur %s à hauteur de %i" -#: ../IkiWiki.pm:1645 +#: ../IkiWiki.pm:1658 msgid "yes" -msgstr "" +msgstr "oui" #: ../auto.setup:16 msgid "What will the wiki be named?" -msgstr "" +msgstr "Nom du wiki" #: ../auto.setup:16 msgid "wiki" -msgstr "" +msgstr "wiki" #: ../auto.setup:18 msgid "What revision control system to use?" -msgstr "" +msgstr "Système de contrôle de version utilisé?" #: ../auto.setup:20 msgid "What wiki user (or openid) will be wiki admin?" -msgstr "" +msgstr "Identifiant de l'administrateur?" #: ../auto.setup:23 msgid "What is the domain name of the web server?" -msgstr "" +msgstr "Nom de domaine du serveur HTTP?" #~ msgid "Your password has been emailed to you." #~ msgstr "Votre mot de passe vous a été envoyé par courriel." diff --git a/po/ikiwiki.pot b/po/ikiwiki.pot index 6f8136413..f07f2bf62 100644 --- a/po/ikiwiki.pot +++ b/po/ikiwiki.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-09-30 15:31-0400\n" +"POT-Creation-Date: 2008-10-08 17:34-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -48,7 +48,7 @@ msgstr "" msgid "You are banned." msgstr "" -#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1143 +#: ../IkiWiki/CGI.pm:385 ../IkiWiki/CGI.pm:386 ../IkiWiki.pm:1166 msgid "Error" msgstr "" @@ -159,20 +159,20 @@ msgstr "" msgid "prohibited by allowed_attachments" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:188 +#: ../IkiWiki/Plugin/attachment.pm:189 msgid "bad attachment filename" msgstr "" -#: ../IkiWiki/Plugin/attachment.pm:230 +#: ../IkiWiki/Plugin/attachment.pm:231 msgid "attachment upload" msgstr "" -#: ../IkiWiki/Plugin/autoindex.pm:103 +#: ../IkiWiki/Plugin/autoindex.pm:105 msgid "automatic index generation" msgstr "" #: ../IkiWiki/Plugin/brokenlinks.pm:33 ../IkiWiki/Plugin/editpage.pm:261 -#: ../IkiWiki/Plugin/inline.pm:323 ../IkiWiki/Plugin/opendiscussion.pm:26 +#: ../IkiWiki/Plugin/inline.pm:326 ../IkiWiki/Plugin/opendiscussion.pm:26 #: ../IkiWiki/Plugin/orphans.pm:37 ../IkiWiki/Render.pm:79 #: ../IkiWiki/Render.pm:149 msgid "discussion" @@ -300,20 +300,20 @@ msgstr "" msgid "unknown sort type %s" msgstr "" -#: ../IkiWiki/Plugin/inline.pm:282 +#: ../IkiWiki/Plugin/inline.pm:285 msgid "Add a new post titled:" msgstr "" -#: ../IkiWiki/Plugin/inline.pm:298 +#: ../IkiWiki/Plugin/inline.pm:301 #, perl-format msgid "nonexistant template %s" msgstr "" -#: ../IkiWiki/Plugin/inline.pm:331 ../IkiWiki/Render.pm:83 +#: ../IkiWiki/Plugin/inline.pm:334 ../IkiWiki/Render.pm:83 msgid "Discussion" msgstr "" -#: ../IkiWiki/Plugin/inline.pm:568 +#: ../IkiWiki/Plugin/inline.pm:571 msgid "RPC::XML::Client not found, not pinging" msgstr "" @@ -321,7 +321,7 @@ msgstr "" msgid "failed to run dot" msgstr "" -#: ../IkiWiki/Plugin/lockedit.pm:46 ../IkiWiki/Plugin/lockedit.pm:60 +#: ../IkiWiki/Plugin/lockedit.pm:49 ../IkiWiki/Plugin/lockedit.pm:66 #, perl-format msgid "%s is locked and cannot be edited" msgstr "" @@ -554,16 +554,16 @@ msgstr "" msgid "%s is not a file" msgstr "" -#: ../IkiWiki/Plugin/remove.pm:112 +#: ../IkiWiki/Plugin/remove.pm:115 #, perl-format msgid "confirm removal of %s" msgstr "" -#: ../IkiWiki/Plugin/remove.pm:148 +#: ../IkiWiki/Plugin/remove.pm:152 msgid "Please select the attachments to remove." msgstr "" -#: ../IkiWiki/Plugin/remove.pm:188 +#: ../IkiWiki/Plugin/remove.pm:192 msgid "removed" msgstr "" @@ -600,20 +600,20 @@ msgstr "" msgid "Also rename SubPages and attachments" msgstr "" -#: ../IkiWiki/Plugin/rename.pm:223 +#: ../IkiWiki/Plugin/rename.pm:224 msgid "Only one attachment can be renamed at a time." msgstr "" -#: ../IkiWiki/Plugin/rename.pm:226 +#: ../IkiWiki/Plugin/rename.pm:227 msgid "Please select the attachment to rename." msgstr "" -#: ../IkiWiki/Plugin/rename.pm:332 +#: ../IkiWiki/Plugin/rename.pm:338 #, perl-format msgid "rename %s to %s" msgstr "" -#: ../IkiWiki/Plugin/rename.pm:484 +#: ../IkiWiki/Plugin/rename.pm:490 #, perl-format msgid "update for rename of %s to %s" msgstr "" @@ -904,25 +904,25 @@ msgstr "" msgid "refreshing wiki.." msgstr "" -#: ../IkiWiki.pm:451 +#: ../IkiWiki.pm:458 msgid "Must specify url to wiki with --url when using --cgi" msgstr "" -#: ../IkiWiki.pm:497 +#: ../IkiWiki.pm:504 msgid "cannot use multiple rcs plugins" msgstr "" -#: ../IkiWiki.pm:526 +#: ../IkiWiki.pm:533 #, perl-format msgid "failed to load external plugin needed for %s plugin: %s" msgstr "" -#: ../IkiWiki.pm:1126 +#: ../IkiWiki.pm:1149 #, perl-format msgid "preprocessing loop detected on %s at depth %i" msgstr "" -#: ../IkiWiki.pm:1635 +#: ../IkiWiki.pm:1658 msgid "yes" msgstr "" diff --git a/templates/googleform.tmpl b/templates/googleform.tmpl new file mode 100644 index 000000000..523cff001 --- /dev/null +++ b/templates/googleform.tmpl @@ -0,0 +1,6 @@ +

    +
    + + +
    +