Browse Source

doc: support multitable in texi2pod

Luca Barbato 13 years ago
parent
commit
5ea5ffc9ce
1 changed files with 18 additions and 2 deletions
  1. 18 2
      doc/texi2pod.pl

+ 18 - 2
doc/texi2pod.pl

@@ -161,7 +161,7 @@ INF: while(<$inf>) {
         } elsif ($ended =~ /^(?:example|smallexample|display)$/) {
         } elsif ($ended =~ /^(?:example|smallexample|display)$/) {
             $shift = "";
             $shift = "";
             $_ = "";        # need a paragraph break
             $_ = "";        # need a paragraph break
-        } elsif ($ended =~ /^(?:itemize|enumerate|[fv]?table)$/) {
+        } elsif ($ended =~ /^(?:itemize|enumerate|(?:multi|[fv])?table)$/) {
             $_ = "\n=back\n";
             $_ = "\n=back\n";
             $ic = pop @icstack;
             $ic = pop @icstack;
         } else {
         } else {
@@ -262,7 +262,7 @@ INF: while(<$inf>) {
         $endw = "enumerate";
         $endw = "enumerate";
     };
     };
 
 
-    /^\@([fv]?table)\s+(\@[a-z]+)/ and do {
+    /^\@((?:multi|[fv])?table)\s+(\@[a-z]+)/ and do {
         push @endwstack, $endw;
         push @endwstack, $endw;
         push @icstack, $ic;
         push @icstack, $ic;
         $endw = $1;
         $endw = $1;
@@ -271,6 +271,7 @@ INF: while(<$inf>) {
         $ic =~ s/\@(?:code|kbd)/C/;
         $ic =~ s/\@(?:code|kbd)/C/;
         $ic =~ s/\@(?:dfn|var|emph|cite|i)/I/;
         $ic =~ s/\@(?:dfn|var|emph|cite|i)/I/;
         $ic =~ s/\@(?:file)/F/;
         $ic =~ s/\@(?:file)/F/;
+        $ic =~ s/\@(?:columnfractions)//;
         $_ = "\n=over 4\n";
         $_ = "\n=over 4\n";
     };
     };
 
 
@@ -281,6 +282,21 @@ INF: while(<$inf>) {
         $_ = "";        # need a paragraph break
         $_ = "";        # need a paragraph break
     };
     };
 
 
+    /^\@item\s+(.*\S)\s*$/ and $endw eq "multitable" and do {
+        my $columns = $1;
+        $columns =~ s/\@tab/ : /;
+
+        $_ = "\n=item B&LT;". $columns ."&GT;\n";
+    };
+
+    /^\@tab\s+(.*\S)\s*$/ and $endw eq "multitable" and do {
+        my $columns = $1;
+        $columns =~ s/\@tab/ : /;
+
+        $_ = " : ". $columns;
+        $section =~ s/\n+\s+$//;
+    };
+
     /^\@itemx?\s*(.+)?$/ and do {
     /^\@itemx?\s*(.+)?$/ and do {
         if (defined $1) {
         if (defined $1) {
             # Entity escapes prevent munging by the <> processing below.
             # Entity escapes prevent munging by the <> processing below.