]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/commitdiff
* Add a table plugin, derived from the one written by Victor Moral.
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>
Wed, 7 Mar 2007 11:40:22 +0000 (11:40 +0000)
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>
Wed, 7 Mar 2007 11:40:22 +0000 (11:40 +0000)
15 files changed:
IkiWiki/Plugin/table.pm [new file with mode: 0644]
debian/changelog
doc/plugins/contrib/table.mdwn [deleted file]
doc/plugins/contrib/table/discussion.mdwn [deleted file]
doc/plugins/table.mdwn [new file with mode: 0644]
doc/plugins/table/discussion.mdwn [new file with mode: 0644]
po/bg.po
po/cs.po
po/es.po
po/fr.po
po/gu.po
po/ikiwiki.pot
po/pl.po
po/sv.po
po/vi.po

diff --git a/IkiWiki/Plugin/table.pm b/IkiWiki/Plugin/table.pm
new file mode 100644 (file)
index 0000000..e4d987d
--- /dev/null
@@ -0,0 +1,200 @@
+package IkiWiki::Plugin::table;
+# by Victor Moral <victor@taquiones.net>
+
+use warnings;
+use strict;
+
+use IkiWiki;
+use IkiWiki::Plugin::mdwn;
+
+my %defaults = (
+       data    => undef,
+       file    => undef,
+       format  => 'auto',
+       sep_char        =>  {
+               'csv'   => ',',
+               'dsv'   => '\|',
+       },
+       class   =>  undef,
+       header  =>  1,
+);
+                            
+sub import { #{{{
+       hook(type => "preprocess", id => "table", call => \&preprocess);
+} # }}}
+
+sub preprocess (@) { #{{{
+       my %params = (%defaults, @_);
+
+       if (defined $params{delimiter}) {
+               $params{sep_char}->{$params{format}} = $params{delimiter};
+       }
+       if (defined $params{file}) {
+               if (! $pagesources{$params{file}}) {
+                       return "[[table cannot find file]]";
+               }
+               $params{data} = readfile(srcfile($params{file}));
+       }
+
+       if (lc $params{format} eq 'auto') {
+               # first try the more simple format
+               if (is_dsv_data($params{data})) {
+                       $params{format} = 'dsv';
+                       $params{sep_char}->{dsv} = '\|';
+               }
+               else {
+                       $params{format} = 'csv';
+                       $params{sep_char}->{csv} = ',';
+               }
+       }
+
+       my @data;
+       if (lc $params{format} eq 'csv') {
+               @data=read_csv(\%params);
+       }
+       elsif (lc $params{format} eq 'dsv') {
+               @data=read_dsv(\%params);
+       }
+       else {
+               return "[[table unknown data format]]";
+       }
+       
+       my $header;
+       if ($params{header} != 1) {
+               $header=shift @data;
+       }
+       if (! @data) {
+               return "[[table has empty data]]";
+       }
+
+       my $html = tidy_up(open_table(\%params, $header),
+                       build_rows(\%params, @data),
+                       close_table(\%params, $header));
+
+       if (defined $params{file}) {
+               return $html."\n\n".
+                       htmllink($params{page}, $params{destpage}, $params{file},
+                               linktext => gettext('Direct data download'));
+       }
+       else {  
+               return $html;
+       }            
+} #}}}
+
+sub tidy_up (@) { #{{{
+       my $html="";
+
+       foreach my $text (@_) {
+               my $indentation = $text =~ m{thead>|tbody>}   ? 0 :
+                                 $text =~ m{tr>}             ? 4 :
+                                 $text =~ m{td>|th>}         ? 8 :
+                                                               0;
+               $html .= (' ' x $indentation)."$text\n";
+       }
+
+       return $html;
+} #}}}
+
+sub is_dsv_data ($) { #{{{
+       my $text = shift;
+
+       my ($line) = split(/\n/, $text);
+       return $line =~ m{.+\|};
+}
+
+sub read_csv ($) { #{{{
+       my $params=shift;
+       my @text_lines = split(/\n/, $params->{data});
+
+       eval q{use Text::CSV};
+       error($@) if $@;
+       my $csv = Text::CSV->new({ 
+               sep_char        => $params->{sep_char}->{csv},
+               binary          => 1,
+       }) || error("could not create a Text::CSV object");
+       
+       my $l=0;
+       my @data;
+       foreach my $line (@text_lines) {
+               $l++;
+               if ($csv->parse($line)) {
+                       push(@data, [ $csv->fields() ]);
+               }
+               else {
+                       debug(sprintf(gettext('parse fail at line %d: %s'), 
+                               $l, $csv->error_input()));
+               }
+       }
+
+       return @data;
+} #}}}
+
+sub read_dsv ($) { #{{{
+       my $params = shift;
+       my @text_lines = split(/\n/, $params->{data});
+
+       my @data;
+       my $splitter = qr{$params->{sep_char}->{dsv}};
+       foreach my $line (@text_lines) {
+               push @data, [ split($splitter, $line) ];
+       }
+    
+       return @data;
+} #}}}
+
+sub open_table ($$) { #{{{
+       my $params = shift;
+       my $header = shift;
+
+       my @items;
+       push @items, defined $params->{class}
+                       ? "<table class=\"".$params->{class}.'">'
+                       : '<table>';
+        push @items, '<thead>','<tr>',
+                    (map { "<th>".htmlize($params, $_)."</th>" } @$header),
+                     '</tr>','</thead>' if defined $header;
+       push @items, '<tbody>';
+       
+       return @items;
+}
+
+sub build_rows ($@) { #{{{
+       my $params = shift;
+
+       my @items;
+       foreach my $record (@_) {
+               push @items, '<tr>',
+                            (map { "<td>".htmlize($params, $_)."</td>" } @$record),
+                            '</tr>';
+       }
+       return @items;
+} #}}}
+                 
+sub close_table ($$) { #{{{
+       my $params = shift;
+       my $header = shift;
+
+       my @items;
+       push @items, '</tbody>' if defined $header;
+       push @items, '</table>';
+       return @items;
+} #}}}
+
+sub htmlize { #{{{
+       my $params = shift;
+       my $text = shift;
+
+       $text=IkiWiki::preprocess($params->{page},
+               $params->{destpage}, $text);
+       $text=IkiWiki::htmlize($params->{page},
+               pagetype($pagesources{$params->{page}}), $text);
+
+       # hack to get rid of enclosing junk added by markdown
+       $text=~s!^<p>!!;
+       $text=~s!</p>$!!;
+       chomp $text;
+
+       return $text;
+}
+
+1
index 4243e527cb7f23c666303d987fb0f95f1ff7a91d..6a9972952b7a876431e6f948762583f457ec973d 100644 (file)
@@ -17,8 +17,9 @@ ikiwiki (1.45) UNRELEASED; urgency=low
     since it ended up being double-escaped. Instead, just remove slashes.
   * Fix some nasty issues with page name escaping during previewing
     (introduced in 1.44).
+  * Add a table plugin, derived from the one written by Victor Moral.
 
- -- Joey Hess <joeyh@debian.org>  Wed,  7 Mar 2007 04:47:40 -0500
+ -- Joey Hess <joeyh@debian.org>  Wed,  7 Mar 2007 06:26:51 -0500
 
 ikiwiki (1.44) unstable; urgency=low
 
diff --git a/doc/plugins/contrib/table.mdwn b/doc/plugins/contrib/table.mdwn
deleted file mode 100644 (file)
index 46f7b09..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-[[template id=plugin name=table author="[[VictorMoral]]"]]
-[[tag type/format]]
-
-This plugin supplies a `table` [[PreprocessorDirective]] to build html tables from data in CSV (comma-separated values) or DSV (delimiter-separated values) format.
-
-It needs the perl module [[cpan Text::CSV]] for the CSV data.
-
-## Usage
-
-In any source page include the following:
-
-    The next table shows the results:
-
-    \[[table class="myclass" format=dsv data="""
-    Custom|Amount|
-    Fulanito|134,34|
-    Menganito|234,56|
-    """]]
-
-    This is my last acquisition:
-
-    [[table class="book_record" format=csv file="data/books/record1"]]
-
-    And the record1 page should be similar to:
-
-    "Title","Perl Best Practices"
-    "Author","Damian Conway"
-    "Publisher","O’Reilly"
-
-The parameters are:
-
-- _data_: Values for the table
-- _file_: Wiki page containing the data.
-- _format_ (optional): format name of the data. By default is `auto` and the options are `csv` or `dsv`.
-- _delimiter_ (optional): The character used to separate fields. By default, DSV format uses a pipe (`|`), and CSV uses a comma (`,`).
-- _class_ (optional): CSS class for the table html element
-- _caption_ (optional): Text string for the table caption.
-- _no\_header_: This switch disables the generation of table header (`<th>`) elements. By default, the `table` directive uses the first data line as column headers.
-
-The _data_ and _file_ parameters are mutually exclusive.
-
-Note: the automatic format detection mechanism is still very rudimentary.
-
-## Changelog
-
-### version 0.5
-
-* Remove a call to an inexistent [[cpan Text::CSV]] method.
-* Added the sep_char parameter.
-* Parse CSV data in binary mode.
-* Added a format detection mechanism.
-* Default format now is 'auto'.
-
-## Links
-
-- Information about the formats in Wikipedia:
-    - [[wikipedia CSV]]
-    - [[wikipedia DSV]]
-
-- Download the tar file from <http://taquiones.net/files/misc/>
-- Debian package in <http://taquiones.net/files/debian/>
diff --git a/doc/plugins/contrib/table/discussion.mdwn b/doc/plugins/contrib/table/discussion.mdwn
deleted file mode 100644 (file)
index f0ebb6d..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-Well, that's an one workaround for (some versions of) markdown's
-lack of tables..
-
-Interesting that you chose to use CSV format. Seems there are advantages
-(standardisation) and disadvantages (limited to simple tables).
-
---[[Joey]]
diff --git a/doc/plugins/table.mdwn b/doc/plugins/table.mdwn
new file mode 100644 (file)
index 0000000..88b5090
--- /dev/null
@@ -0,0 +1,35 @@
+[[template id=plugin name=table author="[[VictorMoral]]"]]
+[[tag type/format]]
+
+This plugin can build html tables from data in CSV (comma-separated values)
+or DSV (delimiter-separated values) format.
+
+It needs the perl module [[cpan Text::CSV]] for the CSV data.
+
+## examples
+
+       \[[table data="""
+       Customer|Amount|
+       Fulanito|134,34|
+       Menganito|234,56|
+       """]]
+    
+       \[[table class="book_record" format=csv file="data/books/record1"]]
+
+In this second example the `record1` page should be similar to:
+
+       "Title","Perl Best Practices"
+       "Author","Damian Conway"
+       "Publisher","O’Reilly"
+
+## usage
+
+* `data` - Values for the table.
+* `file` - A file in the wiki containing the data.
+* `format` - The format of the data, either "csv", "dsv", or "auto"
+  (the default).
+* `delimiter` - The character used to separate fields. By default,
+   DSV format uses a pipe (`|`), and CSV uses a comma (`,`).
+* `class` - A CSS class for the table html element.
+* `header` - Set to 0 to make a table without a header. By default,
+  the first data line is used as the table header.
diff --git a/doc/plugins/table/discussion.mdwn b/doc/plugins/table/discussion.mdwn
new file mode 100644 (file)
index 0000000..f0ebb6d
--- /dev/null
@@ -0,0 +1,7 @@
+Well, that's an one workaround for (some versions of) markdown's
+lack of tables..
+
+Interesting that you chose to use CSV format. Seems there are advantages
+(standardisation) and disadvantages (limited to simple tables).
+
+--[[Joey]]
index 05603d833f5556e29b547760d369f4a7c72c7843..7af9143c8768bf46d0f355d4a7c67622567b492f 100644 (file)
--- a/po/bg.po
+++ b/po/bg.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki-bg\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-07 02:29-0500\n"
+"POT-Creation-Date: 2007-03-07 06:39-0500\n"
 "PO-Revision-Date: 2007-01-12 01:19+0200\n"
 "Last-Translator: Damyan Ivanov <dam@modsodtsys.com>\n"
 "Language-Team: Bulgarian <dict@fsa-bg.org>\n"
@@ -24,33 +24,33 @@ msgstr "Първо трябва да влезете."
 msgid "Preferences saved."
 msgstr "Предпочитанията са запазени."
 
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:344
 #, perl-format
 msgid "%s is not an editable page"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:431 ../IkiWiki/Plugin/brokenlinks.pm:24
 #: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
 #: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
 #: ../IkiWiki/Render.pm:165
 msgid "discussion"
 msgstr "дискусия"
 
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:477
 #, perl-format
 msgid "creating %s"
 msgstr "създаване на %s"
 
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:494 ../IkiWiki/CGI.pm:530 ../IkiWiki/CGI.pm:574
 #, perl-format
 msgid "editing %s"
 msgstr "промяна на %s"
 
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:671
 msgid "You are banned."
 msgstr "Достъпът ви е забранен."
 
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:702
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 
@@ -348,6 +348,15 @@ msgstr "приставката „linkmap”: грешка при изпълне
 msgid "sparkline failed to run php"
 msgstr "приставката „linkmap”: грешка при изпълнение на „dot”"
 
+#: ../IkiWiki/Plugin/table.pm:77
+msgid "Direct data download"
+msgstr ""
+
+#: ../IkiWiki/Plugin/table.pm:124
+#, fuzzy, perl-format
+msgid "parse fail at line %d: %s"
+msgstr "грешка при запис на файла „%s”: %s"
+
 #: ../IkiWiki/Plugin/template.pm:19
 msgid "template missing id parameter"
 msgstr "липсващ параметър „id” на шаблона"
@@ -500,7 +509,7 @@ msgstr "Грешка"
 #. translators: preprocessor directive name,
 #. translators: the second a page name, the
 #. translators: third a number.
-#: ../IkiWiki.pm:561
+#: ../IkiWiki.pm:567
 #, perl-format
 msgid "%s preprocessing loop detected on %s at depth %i"
 msgstr "открита е циклична завидимост при %s на „%s” на дълбочина %i"
index 3197174cf3d1befb42e2a4529fd50fe499b6b47e..628d08db632e2a9cca888ff7bfc21f0e65884334 100644 (file)
--- a/po/cs.po
+++ b/po/cs.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-07 02:29-0500\n"
+"POT-Creation-Date: 2007-03-07 06:39-0500\n"
 "PO-Revision-Date: 2007-02-17 12:07+0100\n"
 "Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
 "Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
@@ -23,33 +23,33 @@ msgstr "Nejprve se musíte přihlásit."
 msgid "Preferences saved."
 msgstr "Nastavení uloženo."
 
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:344
 #, perl-format
 msgid "%s is not an editable page"
 msgstr "%s není editovatelná stránka"
 
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:431 ../IkiWiki/Plugin/brokenlinks.pm:24
 #: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
 #: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
 #: ../IkiWiki/Render.pm:165
 msgid "discussion"
 msgstr "diskuse"
 
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:477
 #, perl-format
 msgid "creating %s"
 msgstr "vytvářím %s"
 
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:494 ../IkiWiki/CGI.pm:530 ../IkiWiki/CGI.pm:574
 #, perl-format
 msgid "editing %s"
 msgstr "upravuji %s"
 
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:671
 msgid "You are banned."
 msgstr "Jste vyhoštěni."
 
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:702
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr "přihlášení selhalo; možná si musíte povolit cookies?"
 
@@ -344,6 +344,15 @@ msgstr "linkmapu se nepodařilo spustit dot"
 msgid "sparkline failed to run php"
 msgstr "linkmapu se nepodařilo spustit dot"
 
+#: ../IkiWiki/Plugin/table.pm:77
+msgid "Direct data download"
+msgstr ""
+
+#: ../IkiWiki/Plugin/table.pm:124
+#, fuzzy, perl-format
+msgid "parse fail at line %d: %s"
+msgstr "nelze zapsat %s: %s"
+
 #: ../IkiWiki/Plugin/template.pm:19
 msgid "template missing id parameter"
 msgstr "šabloně chybí parametr id"
@@ -493,7 +502,7 @@ msgstr "Chyba"
 #. translators: preprocessor directive name,
 #. translators: the second a page name, the
 #. translators: third a number.
-#: ../IkiWiki.pm:561
+#: ../IkiWiki.pm:567
 #, perl-format
 msgid "%s preprocessing loop detected on %s at depth %i"
 msgstr "Byla rozpoznána smyčka direktivy %s na %s v hloubce %i"
index 73cd380dbac22f941f98ba053b206ecf7f8f6e22..8ed5062bc118b04ad348d722d42ff7d6173da872 100644 (file)
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: es\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-07 02:29-0500\n"
+"POT-Creation-Date: 2007-03-07 06:39-0500\n"
 "PO-Revision-Date: 2007-02-12 10:31+0100\n"
 "Last-Translator: Víctor Moral <victor@taquiones.net>\n"
 "Language-Team: spanish <es@li.org>\n"
@@ -24,33 +24,33 @@ msgstr "Antes es necesario identificarse."
 msgid "Preferences saved."
 msgstr "Las preferencias se han guardado."
 
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:344
 #, perl-format
 msgid "%s is not an editable page"
 msgstr "la página %s no es modificable"
 
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:431 ../IkiWiki/Plugin/brokenlinks.pm:24
 #: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
 #: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
 #: ../IkiWiki/Render.pm:165
 msgid "discussion"
 msgstr "comentarios"
 
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:477
 #, perl-format
 msgid "creating %s"
 msgstr "creando página %s"
 
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:494 ../IkiWiki/CGI.pm:530 ../IkiWiki/CGI.pm:574
 #, perl-format
 msgid "editing %s"
 msgstr "modificando página %s"
 
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:671
 msgid "You are banned."
 msgstr "Ha sido expulsado."
 
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:702
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 "registro fallido, ¿ tal vez es necesario activar las cookies en el "
@@ -350,6 +350,15 @@ msgstr "El complemento linkmap no ha podido ejecutar el programa dot"
 msgid "sparkline failed to run php"
 msgstr "El complemento linkmap no ha podido ejecutar el programa dot"
 
+#: ../IkiWiki/Plugin/table.pm:77
+msgid "Direct data download"
+msgstr ""
+
+#: ../IkiWiki/Plugin/table.pm:124
+#, fuzzy, perl-format
+msgid "parse fail at line %d: %s"
+msgstr "no puedo escribir en %s: %s"
+
 #: ../IkiWiki/Plugin/template.pm:19
 msgid "template missing id parameter"
 msgstr "A el complemento template le falta el parámetro id"
@@ -505,7 +514,7 @@ msgstr "Error"
 #. translators: preprocessor directive name,
 #. translators: the second a page name, the
 #. translators: third a number.
-#: ../IkiWiki.pm:561
+#: ../IkiWiki.pm:567
 #, perl-format
 msgid "%s preprocessing loop detected on %s at depth %i"
 msgstr ""
index 2a61182ab83a96036e09007df632ed853445a9d9..b5dd56a876d01c6e296e4c25295941e19f373185 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-07 02:29-0500\n"
+"POT-Creation-Date: 2007-03-07 06:39-0500\n"
 "PO-Revision-Date: 2007-02-13 13:02+0100\n"
 "Last-Translator: Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>\n"
 "Language-Team: French <debian-l10n-french@lists.debian.org>\n"
@@ -25,33 +25,33 @@ msgstr "Vous devez d'abord vous identifier."
 msgid "Preferences saved."
 msgstr "Les préférences ont été enregistrées."
 
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:344
 #, perl-format
 msgid "%s is not an editable page"
 msgstr "%s n'est pas une page éditable"
 
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:431 ../IkiWiki/Plugin/brokenlinks.pm:24
 #: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
 #: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
 #: ../IkiWiki/Render.pm:165
 msgid "discussion"
 msgstr "Discussion"
 
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:477
 #, perl-format
 msgid "creating %s"
 msgstr "Création de %s"
 
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:494 ../IkiWiki/CGI.pm:530 ../IkiWiki/CGI.pm:574
 #, perl-format
 msgid "editing %s"
 msgstr "Édition de %s"
 
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:671
 msgid "You are banned."
 msgstr "Vous avez été banni."
 
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:702
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 "Échec de l'identification, vous devriez peut-être autoriser les cookies."
@@ -349,6 +349,15 @@ msgstr "Échec de lancement de dot par linkmap"
 msgid "sparkline failed to run php"
 msgstr "Échec de lancement de dot par linkmap"
 
+#: ../IkiWiki/Plugin/table.pm:77
+msgid "Direct data download"
+msgstr ""
+
+#: ../IkiWiki/Plugin/table.pm:124
+#, fuzzy, perl-format
+msgid "parse fail at line %d: %s"
+msgstr "Échec de l'écriture de %s : %s"
+
 #: ../IkiWiki/Plugin/template.pm:19
 msgid "template missing id parameter"
 msgstr "Paramètre d'identification manquant dans le modèle"
@@ -503,7 +512,7 @@ msgstr "Erreur"
 #. translators: preprocessor directive name,
 #. translators: the second a page name, the
 #. translators: third a number.
-#: ../IkiWiki.pm:561
+#: ../IkiWiki.pm:567
 #, perl-format
 msgid "%s preprocessing loop detected on %s at depth %i"
 msgstr ""
index 53914d1b1e82b6909c5a282958a1429c393db0a6..bf5506ff6fd38eef623b874447282e27d28f6f0b 100644 (file)
--- a/po/gu.po
+++ b/po/gu.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki-gu\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-07 02:29-0500\n"
+"POT-Creation-Date: 2007-03-07 06:39-0500\n"
 "PO-Revision-Date: 2007-01-11 16:05+0530\n"
 "Last-Translator: Kartik Mistry <kartik.mistry@gmail.com>\n"
 "Language-Team: Gujarati <team@utkarsh.org>\n"
@@ -23,33 +23,33 @@ msgstr "તમારે પ્રથમ લોગ ઇન થવું પડશ
 msgid "Preferences saved."
 msgstr "પ્રાથમિકતાઓ સંગ્રહાઇ."
 
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:344
 #, perl-format
 msgid "%s is not an editable page"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:431 ../IkiWiki/Plugin/brokenlinks.pm:24
 #: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
 #: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
 #: ../IkiWiki/Render.pm:165
 msgid "discussion"
 msgstr "ચર્ચા"
 
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:477
 #, perl-format
 msgid "creating %s"
 msgstr "%s બનાવે છે"
 
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:494 ../IkiWiki/CGI.pm:530 ../IkiWiki/CGI.pm:574
 #, perl-format
 msgid "editing %s"
 msgstr "%s સુધારે છે"
 
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:671
 msgid "You are banned."
 msgstr "તમારા પર પ્રતિબંધ છે."
 
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:702
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 
@@ -342,6 +342,15 @@ msgstr "લીંકમેપ ડોટ ચલાવવામાં નિષ્
 msgid "sparkline failed to run php"
 msgstr "લીંકમેપ ડોટ ચલાવવામાં નિષ્ફળ"
 
+#: ../IkiWiki/Plugin/table.pm:77
+msgid "Direct data download"
+msgstr ""
+
+#: ../IkiWiki/Plugin/table.pm:124
+#, fuzzy, perl-format
+msgid "parse fail at line %d: %s"
+msgstr "%s લખવામાં નિષ્ફળ: %s"
+
 #: ../IkiWiki/Plugin/template.pm:19
 msgid "template missing id parameter"
 msgstr "ટેમ્પલેટને આઇડી વિકલ્પ મળતો નથી"
@@ -490,7 +499,7 @@ msgstr "ક્ષતિ"
 #. translators: preprocessor directive name,
 #. translators: the second a page name, the
 #. translators: third a number.
-#: ../IkiWiki.pm:561
+#: ../IkiWiki.pm:567
 #, perl-format
 msgid "%s preprocessing loop detected on %s at depth %i"
 msgstr "%s પર શોધાયેલ લુપ  %s પર ચલાવે છે %i ઉંડાણ પર"
index 4e70f520c2587edec0c6ddef3b4e05ef582f0fe8..20b82da67fd54688c4ecffdf9ed79d939954c4e5 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-07 04:47-0500\n"
+"POT-Creation-Date: 2007-03-07 06:39-0500\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -338,6 +338,15 @@ msgstr ""
 msgid "sparkline failed to run php"
 msgstr ""
 
+#: ../IkiWiki/Plugin/table.pm:77
+msgid "Direct data download"
+msgstr ""
+
+#: ../IkiWiki/Plugin/table.pm:124
+#, perl-format
+msgid "parse fail at line %d: %s"
+msgstr ""
+
 #: ../IkiWiki/Plugin/template.pm:19
 msgid "template missing id parameter"
 msgstr ""
@@ -486,7 +495,7 @@ msgstr ""
 #. translators: preprocessor directive name,
 #. translators: the second a page name, the
 #. translators: third a number.
-#: ../IkiWiki.pm:569
+#: ../IkiWiki.pm:567
 #, perl-format
 msgid "%s preprocessing loop detected on %s at depth %i"
 msgstr ""
index ffbb4b58675f8cb5c62a791286746861a82ca3a1..f6ea6343cb84a7bf1932bd77843f08f02c417c0b 100644 (file)
--- a/po/pl.po
+++ b/po/pl.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki 1.37\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-07 02:29-0500\n"
+"POT-Creation-Date: 2007-03-07 06:39-0500\n"
 "PO-Revision-Date: 2007-01-05 16:33+100\n"
 "Last-Translator: Paweł Tęcza <ptecza@net.icm.edu.pl>\n"
 "Language-Team: Debian L10n Polish <debian-l10n-polish@lists.debian.org>\n"
@@ -24,33 +24,33 @@ msgstr "Konieczne jest zalogowanie się."
 msgid "Preferences saved."
 msgstr "Ustawienia zostały zapisane."
 
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:344
 #, perl-format
 msgid "%s is not an editable page"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:431 ../IkiWiki/Plugin/brokenlinks.pm:24
 #: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
 #: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
 #: ../IkiWiki/Render.pm:165
 msgid "discussion"
 msgstr "dyskusja"
 
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:477
 #, perl-format
 msgid "creating %s"
 msgstr "tworzenie strony %s"
 
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:494 ../IkiWiki/CGI.pm:530 ../IkiWiki/CGI.pm:574
 #, perl-format
 msgid "editing %s"
 msgstr "edycja strony %s"
 
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:671
 msgid "You are banned."
 msgstr "Dostęp został zabroniony przez administratora."
 
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:702
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 
@@ -352,6 +352,15 @@ msgstr "awaria wtyczki linkmap"
 msgid "sparkline failed to run php"
 msgstr "awaria wtyczki linkmap"
 
+#: ../IkiWiki/Plugin/table.pm:77
+msgid "Direct data download"
+msgstr ""
+
+#: ../IkiWiki/Plugin/table.pm:124
+#, fuzzy, perl-format
+msgid "parse fail at line %d: %s"
+msgstr "awaria w trakcie zapisu strony %s: %s"
+
 #: ../IkiWiki/Plugin/template.pm:19
 msgid "template missing id parameter"
 msgstr "brakujący parametr id we wtyczce template"
@@ -504,7 +513,7 @@ msgstr "Błąd"
 #. translators: preprocessor directive name,
 #. translators: the second a page name, the
 #. translators: third a number.
-#: ../IkiWiki.pm:561
+#: ../IkiWiki.pm:567
 #, perl-format
 msgid "%s preprocessing loop detected on %s at depth %i"
 msgstr "polecenie preprocesora %s wykryte w %s na głębokości %i"
index 8800177f2133c05dfaef6060c2855189a02dbba4..71ba6079e1db44cef7a6bb60e97f75a15d60a11e 100644 (file)
--- a/po/sv.po
+++ b/po/sv.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-07 02:29-0500\n"
+"POT-Creation-Date: 2007-03-07 06:39-0500\n"
 "PO-Revision-Date: 2007-01-10 23:47+0100\n"
 "Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
@@ -23,33 +23,33 @@ msgstr "Du måste logga in först."
 msgid "Preferences saved."
 msgstr "Inställningar sparades."
 
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:344
 #, perl-format
 msgid "%s is not an editable page"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:431 ../IkiWiki/Plugin/brokenlinks.pm:24
 #: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
 #: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
 #: ../IkiWiki/Render.pm:165
 msgid "discussion"
 msgstr "diskussion"
 
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:477
 #, perl-format
 msgid "creating %s"
 msgstr "skapar %s"
 
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:494 ../IkiWiki/CGI.pm:530 ../IkiWiki/CGI.pm:574
 #, perl-format
 msgid "editing %s"
 msgstr "redigerar %s"
 
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:671
 msgid "You are banned."
 msgstr "Du är bannlyst."
 
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:702
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 
@@ -344,6 +344,15 @@ msgstr "linkmap misslyckades att köra dot"
 msgid "sparkline failed to run php"
 msgstr "linkmap misslyckades att köra dot"
 
+#: ../IkiWiki/Plugin/table.pm:77
+msgid "Direct data download"
+msgstr ""
+
+#: ../IkiWiki/Plugin/table.pm:124
+#, fuzzy, perl-format
+msgid "parse fail at line %d: %s"
+msgstr "misslyckades med att skriva %s: %s"
+
 #: ../IkiWiki/Plugin/template.pm:19
 msgid "template missing id parameter"
 msgstr "mall saknar id-parameter"
@@ -494,7 +503,7 @@ msgstr "Fel"
 #. translators: preprocessor directive name,
 #. translators: the second a page name, the
 #. translators: third a number.
-#: ../IkiWiki.pm:561
+#: ../IkiWiki.pm:567
 #, perl-format
 msgid "%s preprocessing loop detected on %s at depth %i"
 msgstr "%s förbehandlingsslinga detekterades på %s, djup %i"
index ea96c3d888b326cd7f2855dae0f32977ba76239c..29fbcd0266f4702fe97fe65741ee3b65f8d0c85a 100644 (file)
--- a/po/vi.po
+++ b/po/vi.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ikiwiki\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-07 02:29-0500\n"
+"POT-Creation-Date: 2007-03-07 06:39-0500\n"
 "PO-Revision-Date: 2007-01-13 15:31+1030\n"
 "Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
 "Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
@@ -24,33 +24,33 @@ msgstr "Trước tiên bạn cần phải đăng nhập."
 msgid "Preferences saved."
 msgstr "Tùy thích đã được lưu."
 
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:344
 #, perl-format
 msgid "%s is not an editable page"
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:431 ../IkiWiki/Plugin/brokenlinks.pm:24
 #: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
 #: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
 #: ../IkiWiki/Render.pm:165
 msgid "discussion"
 msgstr "thảo luận"
 
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:477
 #, perl-format
 msgid "creating %s"
 msgstr "đang tạo %s"
 
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:494 ../IkiWiki/CGI.pm:530 ../IkiWiki/CGI.pm:574
 #, perl-format
 msgid "editing %s"
 msgstr "đang sửa %s"
 
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:671
 msgid "You are banned."
 msgstr "Bạn bị cấm ra."
 
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:702
 msgid "login failed, perhaps you need to turn on cookies?"
 msgstr ""
 
@@ -345,6 +345,15 @@ msgstr "linkmap không chạy dot được"
 msgid "sparkline failed to run php"
 msgstr "linkmap không chạy dot được"
 
+#: ../IkiWiki/Plugin/table.pm:77
+msgid "Direct data download"
+msgstr ""
+
+#: ../IkiWiki/Plugin/table.pm:124
+#, fuzzy, perl-format
+msgid "parse fail at line %d: %s"
+msgstr "lỗi ghi %s: %s"
+
 #: ../IkiWiki/Plugin/template.pm:19
 msgid "template missing id parameter"
 msgstr "mẫu thiếu tham số id"
@@ -495,7 +504,7 @@ msgstr "Lỗi"
 #. translators: preprocessor directive name,
 #. translators: the second a page name, the
 #. translators: third a number.
-#: ../IkiWiki.pm:561
+#: ../IkiWiki.pm:567
 #, perl-format
 msgid "%s preprocessing loop detected on %s at depth %i"
 msgstr "vòng lặp tiền xử lý %s được phát hiện trên %s ở độ sâu %i"