[Po4a-commits] r2677 - in /trunk: lib/Locale/Po4a/AsciiDoc.pm t/data-30/Attributes.asciidoc t/data-30/Attributes.po t/data-30/DelimitedBlocks.asciidoc t/data-30/DelimitedBlocks.po
barbier at users.alioth.debian.org
barbier at users.alioth.debian.org
Fri Oct 26 22:19:22 UTC 2012
Author: barbier
Date: Fri Oct 26 22:19:21 2012
New Revision: 2677
URL: http://svn.debian.org/wsvn/po4a/?sc=1&rev=2677
Log:
AsciiDoc: Allow customization of attribute entries and lists
Modified:
trunk/lib/Locale/Po4a/AsciiDoc.pm
trunk/t/data-30/Attributes.asciidoc
trunk/t/data-30/Attributes.po
trunk/t/data-30/DelimitedBlocks.asciidoc
trunk/t/data-30/DelimitedBlocks.po
Modified: trunk/lib/Locale/Po4a/AsciiDoc.pm
URL: http://svn.debian.org/wsvn/po4a/trunk/lib/Locale/Po4a/AsciiDoc.pm?rev=2677&op=diff
==============================================================================
--- trunk/lib/Locale/Po4a/AsciiDoc.pm (original)
+++ trunk/lib/Locale/Po4a/AsciiDoc.pm Fri Oct 26 22:19:21 2012
@@ -14,7 +14,6 @@
Locale::Po4a::AsciiDoc is a module to help the translation of documentation in
the AsciiDoc format.
-languages.
=cut
@@ -38,22 +37,59 @@
=over
-=item B<nobullets>
-
-Deactivate detection of bullets.
-
-By default, when a bullet is detected, the bullet paragraph is not considered
-as a verbatim paragraph (with the no-wrap flag in the PO file), but the module
-rewraps this paragraph in the generated PO file and in the translation.
+=item B<attributeentry>
+
+Space-separated list of attribute entries you want to translate. By default,
+no attribute entries are translatable.
+
+=item B<definitions>
+
+The name of a file containing definitions for po4a, as defined in the
+B<INLINE CUSTOMIZATION> section.
+You can use this option if it is not possible to put the definitions in
+the document being translated.
+
+=head1 INLINE CUSTOMIZATION
+
+The AsciiDoc module can be customized with lines starting by B<//po4a:>.
+These lines are interpreted as commands to the parser.
+The following commands are recognized:
+
+=over 4
+
+=item B<//po4a: macro >I<name>B<[>I<attribute list>B<]>
+
+This permits to describe in detail the parameters of a I<macro>;
+I<name> must be a valid macro name, and it ends with an underscore
+if the target must be translated.
+
+The I<attribute list> argument is a comma separated list which
+contains informations about translatable arguments. This list contains
+either numbers, to define positional parameters, or named attributes.
+
+=item B<//po4a: style >B<[>I<attribute list>B<]>
+
+This permits to describe in detail which attributes of a style must
+be translated.
+
+The I<attribute list> argument is a comma separated list which
+contains informations about translatable arguments. This list contains
+either numbers, to define positional parameters, or named attributes.
+The first attribute is the style name, it will not be translated.
+
+=item B<//po4a: entry >I<name>
+
+This declares an attribute entry as being translatable. By default,
+they are not translated.
+
+=back
=cut
-my $bullets = 1;
-
my @comments = ();
-my %debug=('split_attributes' => 0,
- 'join_attributes' => 0
+my %debug=('split_attributelist' => 0,
+ 'join_attributelist' => 0
);
sub initialize {
@@ -78,14 +114,86 @@
}
}
+ $self->{translate} = {
+ macro => {},
+ style => {},
+ attributeentry => {}
+ };
+
+ if ($options{'definitions'}) {
+ $self->parse_definition_file($options{'definitions'})
+ }
$self->{options}{attributeentry} =~ /^\s*(.*?)\s*$/s;
foreach my $attr (split(/\s+/s,$1)) {
- $self->{attributeentry}->{$attr} = 1;
- }
-
- if (defined $options{'nobullets'}) {
- $bullets = 0;
- }
+ $self->{translate}->{attributeentry}->{$attr} = 1;
+ }
+
+ $self->register_attributelist('[verse,2,3,attribution,citetitle]');
+ $self->register_attributelist('[quote,2,3,attribution,citetitle]');
+ $self->register_macro('image_[1,alt,title,link]');
+}
+
+sub register_attributelist {
+ my $self = shift;
+ my $list = shift;
+ my $type = shift || 'style';
+ $list =~ s/^\[//;
+ $list =~ s/\]$//;
+ $list =~ s/\s+//;
+ $list .= ",";
+ $list =~ s/^([^,]*)//;
+ my $command = $1;
+ $self->{translate}->{$type}->{$command} = $list;
+ print STDERR "Definition: $type $command: $list\n" if $debug{definitions};
+}
+
+sub register_macro {
+ my $self = shift;
+ my $text = shift;
+ die wrap_mod("po4a::asciidoc",
+ dgettext("po4a", "Unable to parse macro definition: %s"), $text)
+ unless $text =~ m/^([\w\d][\w\d-]*)(_?)\[(.*)\]$/;
+ my $macroname = $1;
+ my $macrotarget = $2;
+ my $macroparam = $macroname.",".$3;
+ $self->register_attributelist($macroparam, 'macro');
+ if ($macrotarget eq '_') {
+ $self->{translate}->{macro}->{$macroname} .= '_';
+ }
+}
+
+sub is_translated_target {
+ my $self = shift;
+ my $macroname = shift;
+ return defined($self->{translate}->{macro}->{$macroname}) &&
+ $self->{translate}->{macro}->{$macroname} =~ m/_$/;
+}
+
+sub process_definition {
+ my $self = shift;
+ my $command = shift;
+ if ($command =~ m/^po4a: macro\s+(\w+\[.*\])\s*$/) {
+ $self->register_macro($1);
+ } elsif ($command =~ m/^po4a: style\s*(\[.*\])\s*$/) {
+ $self->register_attributelist($1);
+ } elsif ($command =~ m/^po4a: entry\s+(.+?)\s*$/) {
+ $self->{translate}->{attributeentry}->{$1} = 1;
+ }
+}
+
+sub parse_definition_file {
+ my $self = shift;
+ my $filename = shift;
+ if (! open (IN,"<", $filename)) {
+ die wrap_mod("po4a::asciidoc",
+ dgettext("po4a", "Can't open %s: %s"), $filename, $!);
+ }
+ while (<IN>) {
+ if (m,^\s*//po4a: ,) {
+ process_definition($self, $_);
+ }
+ }
+ close IN;
}
my $RE_SECTION_TEMPLATES = "sect1|sect2|sect3|sect4|preface|colophon|dedication|synopsis|index";
@@ -248,8 +356,14 @@
$self->pushline($line."\n") unless defined($self->{verbatim}) && $self->{verbatim} == 2;
}
} elsif ((not defined($self->{verbatim})) and ($line =~ m/^\/\/(.*)/)) {
- # Comment line
- push @comments, $1;
+ my $comment = $1;
+ if ($comment =~ m/^po4a: /) {
+ # Po4a command line
+ $self->process_definition($comment);
+ } else {
+ # Comment line
+ push @comments, $comment;
+ }
} elsif (not defined $self->{verbatim} and
($line =~ m/^\[\[([^\]]*)\]\]$/)) {
# Found BlockId
@@ -337,8 +451,8 @@
($line =~ m/^\[.*\]$/)) {
do_paragraph($self,$paragraph,$wrapped_mode);
$paragraph="";
- my ($t) = $self->parse_style($line);
- $self->pushline("[$t]\n");
+ my $t = $self->parse_style($line);
+ $self->pushline("$t\n");
@comments=();
$wrapped_mode = 1;
undef $self->{bullet};
@@ -391,13 +505,13 @@
$line =~ s/^\s+//;
$attrvalue .= $line;
}
- # Found a Attribute entry
- do_paragraph($self,$paragraph,$wrapped_mode);
- $paragraph="";
- $wrapped_mode = 1;
- undef $self->{bullet};
- undef $self->{indent};
- if (defined($self->{attributeentry}->{$attrname})) {
+ # Found an Attribute entry
+ do_paragraph($self,$paragraph,$wrapped_mode);
+ $paragraph="";
+ $wrapped_mode = 1;
+ undef $self->{bullet};
+ undef $self->{indent};
+ if (defined($self->{translate}->{attributeentry}->{$attrname})) {
my $t = $self->translate($attrvalue,
$self->{ref},
"Attribute :$attrname:",
@@ -407,6 +521,23 @@
} else {
$self->pushline(":$attrname$attrsep$attrvalue\n");
}
+ @comments=();
+ } elsif (not defined $self->{verbatim} and
+ ($line =~ m/^([\w\d][\w\d-]*)(::)(\S+)\[(.*)\]$/)) {
+ my $macroname = $1;
+ my $macrotype = $2;
+ my $macrotarget = $3;
+ my $macroparam = $4;
+ # Found a macro
+ if ($macrotype eq '::') {
+ do_paragraph($self,$paragraph,$wrapped_mode);
+ $paragraph="";
+ $wrapped_mode = 1;
+ undef $self->{bullet};
+ undef $self->{indent};
+ }
+ my $t = $self->parse_macro($macroname, $macrotype, $macrotarget, $macroparam);
+ $self->pushline("$t\n");
@comments=();
} elsif (not defined $self->{verbatim} and
($line !~ m/^\.\./) and ($line =~ m/^\.(\S.*)$/)) {
@@ -515,7 +646,7 @@
# }
# $type .= " verbatim: '".($self->{verbatim}||"NONE")."' bullet: '$b' indent: '".($self->{indent}||"NONE")."' type: '".($self->{type}||"NONE")."'";
- if ($bullets and not $wrap and not defined $self->{verbatim}) {
+ if (not $wrap and not defined $self->{verbatim}) {
# Detect bullets
# | * blah blah
# |<spaces> blah
@@ -586,39 +717,119 @@
my ($self, $text) = (shift, shift);
$text =~ s/^\[//;
$text =~ s/\]$//;
- my ($command, @attributes) = $self->split_attributes($text);
- return "[".$self->join_attributes($command, @attributes)."]";
-}
-
-sub split_attributes {
+ my @attributes = $self->split_attributelist($text);
+ return "[".join(", ", $self->join_attributelist("style", @attributes))."]";
+}
+
+sub parse_macro {
+ my ($self, $macroname, $macrotype, $macrotarget, $macroparam) = (shift, shift, shift, shift, shift);
+ my @attributes = $self->split_attributelist($macroparam);
+ unshift @attributes, $macroname;
+ my @translated_attributes = $self->join_attributelist("macro", @attributes);
+ shift @translated_attributes;
+ if ($self->is_translated_target($macroname)) {
+ my $target = unquote_space($macrotarget);
+ my $t = $self->translate($target,
+ $self->{ref},
+ "Target for macro $macroname",
+ "comment" => join("\n", @comments),
+ "wrap" => 0);
+ $macrotarget = quote_space($t);
+ }
+ return "$macroname$macrotype$macrotarget\[".join(", ", @translated_attributes)."]";
+}
+
+sub split_attributelist {
my ($self, $text) = (shift, shift);
- print STDERR "Splitting attributes in: $text\n" if $debug{split_attributes};
+ print STDERR "Splitting attributes in: $text\n" if $debug{split_attributelist};
my @attributes = ();
while ($text =~ m/\G(
[^\W\d][-\w]*="(?:[^"\\]++|\\.)*+" # named attribute
| [^\W\d][-\w]*=None # undefined named attribute
+ | [^\W\d][-\w]*=\S+ # invalid, but accept it anyway
| "(?:[^"\\]++|\\.)*+" # quoted attribute
| (?:[^,\\]++|\\.)++ # unquoted attribute
)(?:,\s*+)?/gx) {
- print STDERR " -> $1\n" if $debug{split_attributes};
+ print STDERR " -> $1\n" if $debug{split_attributelist};
push @attributes, $1;
}
die wrap_mod("po4a::asciidoc",
dgettext("po4a", "Unable to parse attribute list: [%s]"), $text)
unless length(@attributes);
- my $command = shift @attributes;
- return ($command, @attributes);
-}
-
-sub join_attributes {
- my ($self, $command) = (shift, shift);
- my (@attributes) = @_;
- my $text = $command;
- if (length(@attributes)) {
- $text .= ", ".join(", ", @attributes);
- }
- print STDERR "Joined attributes: $text\n" if $debug{join_attributes};
+ return @attributes;
+}
+
+sub join_attributelist {
+ my ($self, $type) = (shift, shift);
+ my @attributes = @_;
+ my $command = shift(@attributes);
+ if ($command =~ m/=/) {
+ unshift @attributes, $command;
+ $command = '';
+ }
+ my @text = ($command);
+ my $count = 0;
+ foreach my $attr (@attributes) {
+ $count++;
+ push @text, $self->translate_attributelist($type, $command, $count, $attr);
+ }
+ shift(@text) if $text[0] eq '';
+ print STDERR "Joined attributes: ".join(", ", @text)."\n" if $debug{join_attributelist};
+ return @text;
+}
+
+sub translate_attributelist {
+ my ($self, $type, $command, $count, $attr) = (shift, shift, shift, shift, shift);
+ return $attr unless defined $self->{translate}->{$type}->{$command};
+ if ($attr =~ m/^([^\W\d][-\w]*)=(.*)/) {
+ my $attrname = $1;
+ my $attrvalue = $2;
+ if ($self->{translate}->{$type}->{$command} =~ m/,$attrname,/) {
+ my $attrvalue = unquote($attrvalue);
+ my $t = $self->translate($attrvalue,
+ $self->{ref},
+ "Named '$attrname' AttributeList argument for $type $command",
+ "comment" => join("\n", @comments),
+ "wrap" => 0);
+ $attr = $attrname."=".quote($t);
+ }
+ } else {
+ if ($self->{translate}->{$type}->{$command} =~ m/,$count,/) {
+ my $attrvalue = unquote($attr);
+ my $t = $self->translate($attrvalue,
+ $self->{ref},
+ "Positional (\$$count) AttributeList argument for $type $command",
+ "comment" => join("\n", @comments),
+ "wrap" => 0);
+ $attr = quote($t);
+ }
+ }
+ return $attr;
+}
+
+sub unquote {
+ my ($text) = shift;
+ return $text unless $text =~ s/^"(.*)"$/$1/;
+ $text =~ s/\\"/"/g;
+ return $text;
+}
+
+sub quote {
+ my $text = shift;
+ $text =~ s/"/\\"/g;
+ return '"'.$text.'"';
+}
+
+sub quote_space {
+ my $text = shift;
+ $text =~ s/ /%20/g;
+ return $text;
+}
+
+sub unquote_space {
+ my $text = shift;
+ $text =~ s/%20/ /g;
return $text;
}
Modified: trunk/t/data-30/Attributes.asciidoc
URL: http://svn.debian.org/wsvn/po4a/trunk/t/data-30/Attributes.asciidoc?rev=2677&op=diff
==============================================================================
--- trunk/t/data-30/Attributes.asciidoc (original)
+++ trunk/t/data-30/Attributes.asciidoc Fri Oct 26 22:19:21 2012
@@ -1,3 +1,9 @@
+//po4a: entry Author
+//po4a: entry Email
+//po4a: entry Date
+//po4a: entry Revision
+//po4a: entry Key words
+//po4a: entry Revision history
Test Attributes
===============
:Author: Stuart Rackham
Modified: trunk/t/data-30/Attributes.po
URL: http://svn.debian.org/wsvn/po4a/trunk/t/data-30/Attributes.po?rev=2677&op=diff
==============================================================================
--- trunk/t/data-30/Attributes.po (original)
+++ trunk/t/data-30/Attributes.po Fri Oct 26 22:19:21 2012
@@ -7,46 +7,47 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2008-10-12 19:29+0300\n"
-"PO-Revision-Date: 2008-10-12 22:05+0200\n"
+"POT-Creation-Date: 2012-10-09 01:30+0300\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
"Language-Team: LANGUAGE <LL at li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
-"Content-Transfer-Encoding: ENCODING"
+"Content-Transfer-Encoding: 8bit\n"
#. type: Title =
-#: ../data-30/Attributes.asciidoc:2
+#: ../data-30/Attributes.asciidoc:8
#, no-wrap
msgid "Test Attributes"
msgstr ""
#. type: Attribute :Author:
-#: ../data-30/Attributes.asciidoc:3
+#: ../data-30/Attributes.asciidoc:9
#, no-wrap
msgid "Stuart Rackham"
msgstr ""
#. type: Attribute :Email:
-#: ../data-30/Attributes.asciidoc:4
+#: ../data-30/Attributes.asciidoc:10
#, no-wrap
msgid "srackham at gmail.com"
msgstr ""
#. type: Attribute :Date:
-#: ../data-30/Attributes.asciidoc:5
+#: ../data-30/Attributes.asciidoc:11
#, no-wrap
msgid "April 23, 2004"
msgstr ""
#. type: Attribute :Revision:
-#: ../data-30/Attributes.asciidoc:6
+#: ../data-30/Attributes.asciidoc:12
#, no-wrap
msgid "5.1.1"
msgstr ""
#. type: Attribute :Key words:
-#: ../data-30/Attributes.asciidoc:7
+#: ../data-30/Attributes.asciidoc:13
#, no-wrap
msgid "linux, ralink, debian, wireless"
msgstr ""
Modified: trunk/t/data-30/DelimitedBlocks.asciidoc
URL: http://svn.debian.org/wsvn/po4a/trunk/t/data-30/DelimitedBlocks.asciidoc?rev=2677&op=diff
==============================================================================
--- trunk/t/data-30/DelimitedBlocks.asciidoc (original)
+++ trunk/t/data-30/DelimitedBlocks.asciidoc Fri Oct 26 22:19:21 2012
@@ -1,3 +1,4 @@
+//po4a: style[,caption]
Test Delimited Blocks
=====================
Modified: trunk/t/data-30/DelimitedBlocks.po
URL: http://svn.debian.org/wsvn/po4a/trunk/t/data-30/DelimitedBlocks.po?rev=2677&op=diff
==============================================================================
--- trunk/t/data-30/DelimitedBlocks.po (original)
+++ trunk/t/data-30/DelimitedBlocks.po Fri Oct 26 22:19:21 2012
@@ -7,7 +7,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2012-10-04 00:27+0300\n"
+"POT-Creation-Date: 2012-10-09 01:33+0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
"Language-Team: LANGUAGE <LL at li.org>\n"
@@ -17,19 +17,19 @@
"Content-Transfer-Encoding: 8bit\n"
#. type: Title =
-#: ../data-30/DelimitedBlocks.asciidoc:2
+#: ../data-30/DelimitedBlocks.asciidoc:3
#, no-wrap
msgid "Test Delimited Blocks"
msgstr ""
#. type: Title -
-#: ../data-30/DelimitedBlocks.asciidoc:5
+#: ../data-30/DelimitedBlocks.asciidoc:6
#, no-wrap
msgid "Predefined Delimited Blocks"
msgstr ""
#. type: Plain text
-#: ../data-30/DelimitedBlocks.asciidoc:8
+#: ../data-30/DelimitedBlocks.asciidoc:9
msgid "CommentBlock"
msgstr ""
@@ -42,12 +42,12 @@
#. - This is a Comment block.
#. This is a Comment block.
#. type: Plain text
-#: ../data-30/DelimitedBlocks.asciidoc:21
+#: ../data-30/DelimitedBlocks.asciidoc:22
msgid "PassthroughBlock"
msgstr ""
#. type: delimited block +
-#: ../data-30/DelimitedBlocks.asciidoc:25
+#: ../data-30/DelimitedBlocks.asciidoc:26
#, no-wrap
msgid ""
"This is a Passthrough block.\n"
@@ -55,7 +55,7 @@
msgstr ""
#. type: delimited block +
-#: ../data-30/DelimitedBlocks.asciidoc:28
+#: ../data-30/DelimitedBlocks.asciidoc:29
#, no-wrap
msgid ""
" This is a Passthrough block.\n"
@@ -63,7 +63,7 @@
msgstr ""
#. type: delimited block +
-#: ../data-30/DelimitedBlocks.asciidoc:31
+#: ../data-30/DelimitedBlocks.asciidoc:32
#, no-wrap
msgid ""
" - This is a Passthrough block.\n"
@@ -71,12 +71,12 @@
msgstr ""
#. type: Plain text
-#: ../data-30/DelimitedBlocks.asciidoc:34
+#: ../data-30/DelimitedBlocks.asciidoc:35
msgid "ListingBlock"
msgstr ""
#. type: delimited block -
-#: ../data-30/DelimitedBlocks.asciidoc:38
+#: ../data-30/DelimitedBlocks.asciidoc:39
#, no-wrap
msgid ""
"This is a Listing block.\n"
@@ -84,7 +84,7 @@
msgstr ""
#. type: delimited block -
-#: ../data-30/DelimitedBlocks.asciidoc:41
+#: ../data-30/DelimitedBlocks.asciidoc:42
#, no-wrap
msgid ""
" This is a Listing block.\n"
@@ -92,7 +92,7 @@
msgstr ""
#. type: delimited block -
-#: ../data-30/DelimitedBlocks.asciidoc:44
+#: ../data-30/DelimitedBlocks.asciidoc:45
#, no-wrap
msgid ""
" - This is a Listing block.\n"
@@ -100,12 +100,12 @@
msgstr ""
#. type: Plain text
-#: ../data-30/DelimitedBlocks.asciidoc:47
+#: ../data-30/DelimitedBlocks.asciidoc:48
msgid "LiteralBlock"
msgstr ""
#. type: delimited block .
-#: ../data-30/DelimitedBlocks.asciidoc:51
+#: ../data-30/DelimitedBlocks.asciidoc:52
#, no-wrap
msgid ""
"This is a Literal block.\n"
@@ -113,7 +113,7 @@
msgstr ""
#. type: delimited block .
-#: ../data-30/DelimitedBlocks.asciidoc:54
+#: ../data-30/DelimitedBlocks.asciidoc:55
#, no-wrap
msgid ""
" This is a Literal block.\n"
@@ -121,7 +121,7 @@
msgstr ""
#. type: delimited block .
-#: ../data-30/DelimitedBlocks.asciidoc:57
+#: ../data-30/DelimitedBlocks.asciidoc:58
#, no-wrap
msgid ""
" - This is a Literal block.\n"
@@ -129,17 +129,17 @@
msgstr ""
#. type: Plain text
-#: ../data-30/DelimitedBlocks.asciidoc:60
+#: ../data-30/DelimitedBlocks.asciidoc:61
msgid "SidebarBlock"
msgstr ""
#. type: delimited block *
-#: ../data-30/DelimitedBlocks.asciidoc:64 ../data-30/DelimitedBlocks.asciidoc:70
+#: ../data-30/DelimitedBlocks.asciidoc:65 ../data-30/DelimitedBlocks.asciidoc:71
msgid "This is a Sidebar block. This is a Sidebar block."
msgstr ""
#. type: delimited block *
-#: ../data-30/DelimitedBlocks.asciidoc:67
+#: ../data-30/DelimitedBlocks.asciidoc:68
#, no-wrap
msgid ""
" This is a Sidebar block.\n"
@@ -147,17 +147,17 @@
msgstr ""
#. type: Plain text
-#: ../data-30/DelimitedBlocks.asciidoc:73
+#: ../data-30/DelimitedBlocks.asciidoc:74
msgid "QuoteBlock"
msgstr ""
#. type: delimited block _
-#: ../data-30/DelimitedBlocks.asciidoc:77 ../data-30/DelimitedBlocks.asciidoc:83
+#: ../data-30/DelimitedBlocks.asciidoc:78 ../data-30/DelimitedBlocks.asciidoc:84
msgid "This is a Quote block. This is a Quote block."
msgstr ""
#. type: delimited block _
-#: ../data-30/DelimitedBlocks.asciidoc:80
+#: ../data-30/DelimitedBlocks.asciidoc:81
#, no-wrap
msgid ""
" This is a Quote block.\n"
@@ -165,26 +165,26 @@
msgstr ""
#. type: quote
-#: ../data-30/DelimitedBlocks.asciidoc:86
+#: ../data-30/DelimitedBlocks.asciidoc:87
#, no-wrap
msgid "Bertrand Russell, The World of Mathematics (1956)"
msgstr ""
#. type: delimited block _
-#: ../data-30/DelimitedBlocks.asciidoc:90
+#: ../data-30/DelimitedBlocks.asciidoc:91
msgid ""
"A good notation has subtlety and suggestiveness which at times makes it "
"almost seem like a live teacher."
msgstr ""
#. type: verse
-#: ../data-30/DelimitedBlocks.asciidoc:92
+#: ../data-30/DelimitedBlocks.asciidoc:93
#, no-wrap
msgid "William Blake, from Auguries of Innocence"
msgstr ""
#. type: delimited block _
-#: ../data-30/DelimitedBlocks.asciidoc:98
+#: ../data-30/DelimitedBlocks.asciidoc:99
#, no-wrap
msgid ""
"To see a world in a grain of sand,\n"
@@ -194,17 +194,17 @@
msgstr ""
#. type: Plain text
-#: ../data-30/DelimitedBlocks.asciidoc:101
+#: ../data-30/DelimitedBlocks.asciidoc:102
msgid "ExampleBlock"
msgstr ""
#. type: delimited block =
-#: ../data-30/DelimitedBlocks.asciidoc:105 ../data-30/DelimitedBlocks.asciidoc:111
+#: ../data-30/DelimitedBlocks.asciidoc:106 ../data-30/DelimitedBlocks.asciidoc:112
msgid "This is a Example block. This is a Example block."
msgstr ""
#. type: delimited block =
-#: ../data-30/DelimitedBlocks.asciidoc:108
+#: ../data-30/DelimitedBlocks.asciidoc:109
#, no-wrap
msgid ""
" This is a Example block.\n"
@@ -212,63 +212,64 @@
msgstr ""
#. type: Block title
-#: ../data-30/DelimitedBlocks.asciidoc:113
+#: ../data-30/DelimitedBlocks.asciidoc:114
#, no-wrap
msgid "An example"
msgstr ""
#. type: delimited block =
-#: ../data-30/DelimitedBlocks.asciidoc:117 ../data-30/DelimitedBlocks.asciidoc:124 ../data-30/DelimitedBlocks.asciidoc:131
+#: ../data-30/DelimitedBlocks.asciidoc:118 ../data-30/DelimitedBlocks.asciidoc:125 ../data-30/DelimitedBlocks.asciidoc:132
msgid ""
"Qui in magna commodo, est labitur dolorum an. Est ne magna primis "
"adolescens."
msgstr ""
-#. type: Plain text
+#. type: Named 'caption' AttributeList argument for style
#: ../data-30/DelimitedBlocks.asciidoc:120
-msgid "[caption=\"Example 1: \"]"
+#, no-wrap
+msgid "Example 1: "
msgstr ""
#. type: Block title
-#: ../data-30/DelimitedBlocks.asciidoc:120
+#: ../data-30/DelimitedBlocks.asciidoc:121
#, no-wrap
msgid "An example with a custom caption"
msgstr ""
#. type: Block title
-#: ../data-30/DelimitedBlocks.asciidoc:127
+#: ../data-30/DelimitedBlocks.asciidoc:128
#, no-wrap
msgid "A NOTE block"
msgstr ""
#. type: delimited block =
-#: ../data-30/DelimitedBlocks.asciidoc:133 ../data-30/DelimitedBlocks.asciidoc:135
+#: ../data-30/DelimitedBlocks.asciidoc:134 ../data-30/DelimitedBlocks.asciidoc:136
msgid "Fusce euismod commodo velit."
msgstr ""
#. type: delimited block =
-#: ../data-30/DelimitedBlocks.asciidoc:134 ../data-30/DelimitedBlocks.asciidoc:136
+#: ../data-30/DelimitedBlocks.asciidoc:135 ../data-30/DelimitedBlocks.asciidoc:137
msgid "Vivamus fringilla mi eu lacus."
msgstr ""
#. type: delimited block =
-#: ../data-30/DelimitedBlocks.asciidoc:138
+#: ../data-30/DelimitedBlocks.asciidoc:139
msgid "Donec eget arcu bibendum nunc consequat lobortis."
msgstr ""
#. type: Plain text
-#: ../data-30/DelimitedBlocks.asciidoc:141
+#: ../data-30/DelimitedBlocks.asciidoc:142
msgid "Filter blocks"
msgstr ""
#. type: delimited block -
-#: ../data-30/DelimitedBlocks.asciidoc:167 ../data-30/DelimitedBlocks.asciidoc:177
+#: ../data-30/DelimitedBlocks.asciidoc:168 ../data-30/DelimitedBlocks.asciidoc:178
#, no-wrap
msgid "test\n"
msgstr ""
#. type: delimited block +
-#: ../data-30/DelimitedBlocks.asciidoc:171
+#: ../data-30/DelimitedBlocks.asciidoc:172
#, no-wrap
msgid ""
"--------------------------\n"
@@ -277,13 +278,13 @@
msgstr ""
#. type: delimited block -
-#: ../data-30/DelimitedBlocks.asciidoc:173 ../data-30/DelimitedBlocks.asciidoc:183
+#: ../data-30/DelimitedBlocks.asciidoc:174 ../data-30/DelimitedBlocks.asciidoc:184
#, no-wrap
msgid "end of test\n"
msgstr ""
#. type: delimited block -
-#: ../data-30/DelimitedBlocks.asciidoc:181
+#: ../data-30/DelimitedBlocks.asciidoc:182
#, no-wrap
msgid ""
"__________________________\n"
More information about the Po4a-commits
mailing list