texinfo-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

texinfo/tp Texinfo/Parser.pm t/results/macro/ma...


From: Patrice Dumas
Subject: texinfo/tp Texinfo/Parser.pm t/results/macro/ma...
Date: Tue, 01 Feb 2011 23:34:59 +0000

CVSROOT:        /sources/texinfo
Module name:    texinfo
Changes by:     Patrice Dumas <pertusus>        11/02/01 23:34:59

Modified files:
        tp/Texinfo     : Parser.pm 
        tp/t/results/macro: macro_in_menu.pl 
        tp/t/results/menu: bad_beginning.pl example_in_menu_comment.pl 
                           menu_entry_no_entry.pl 
                           menu_no_closed_after_empty_line.pl 
                           menu_no_closed_entry_beginning.pl 
                           menu_no_closed_star.pl simple.pl 

Log message:
        Put things in menu comment in preformatted.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Parser.pm?cvsroot=texinfo&r1=1.185&r2=1.186
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/macro/macro_in_menu.pl?cvsroot=texinfo&r1=1.22&r2=1.23
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/menu/bad_beginning.pl?cvsroot=texinfo&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/menu/example_in_menu_comment.pl?cvsroot=texinfo&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/menu/menu_entry_no_entry.pl?cvsroot=texinfo&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/menu/menu_no_closed_after_empty_line.pl?cvsroot=texinfo&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/menu/menu_no_closed_entry_beginning.pl?cvsroot=texinfo&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/menu/menu_no_closed_star.pl?cvsroot=texinfo&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/menu/simple.pl?cvsroot=texinfo&r1=1.19&r2=1.20

Patches:
Index: Texinfo/Parser.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Parser.pm,v
retrieving revision 1.185
retrieving revision 1.186
diff -u -b -r1.185 -r1.186
--- Texinfo/Parser.pm   31 Jan 2011 00:37:21 -0000      1.185
+++ Texinfo/Parser.pm   1 Feb 2011 23:34:58 -0000       1.186
@@ -1120,6 +1120,10 @@
                                              ord('{')), $line_nr);
       $current = $current->{'parent'};
     } else {
+      if ($current->{'type'} eq 'menu_comment') {
+        #print STDERR "Closing MENU_COMMENT when closing\n";
+        pop @{$self->{'context_stack'}};
+      }
       $current = $current->{'parent'} if ($current->{'parent'});
     }
   } else { # Should never go here.
@@ -1815,6 +1819,11 @@
                                         'parent' => $current,
                                         'contents' => [] };
       $current = $current->{'contents'}->[-1];
+      push @{$current->{'contents'}}, { 'type' => 'preformatted',
+                                        'parent' => $current,
+                                        'contents' => [] };
+      $current = $current->{'contents'}->[-1];
+      push @{$self->{'context_stack'}}, 'preformatted';
       print STDERR "MENU: END DESCRIPTION, OPEN COMMENT\n" if 
($self->{'DEBUG'});
     } elsif (!$no_paragraph_contexts{$self->{'context_stack'}->[-1]}) {
             # FIXME remove this if an empty line in a brace command
@@ -1853,11 +1862,24 @@
       if (@{$menu->{'contents'}} and $menu->{'contents'}->[-1]->{'type'}
          and $menu->{'contents'}->[-1]->{'type'} eq 'menu_comment') {
         $current = $menu->{'contents'}->[-1];
+        if ($current->{'contents'}->[-1] and 
$current->{'contents'}->[-1]->{'type'}
+          and $current->{'contents'}->[-1]->{'type'} eq 'preformatted') {
+          $current = $current->{'contents'}->[-1];
+        } else {
+          push @{$current->{'contents'}}, {'type' => 'preformatted',
+                                    'parent' => $current,
+                                    'contents' => [] };
+          $current = $current->{'contents'}->[-1];
+        }
       } else {
         push @{$menu->{'contents'}}, {'type' => 'menu_comment',
                                     'parent' => $menu,
                                     'contents' => [] };
         $current = $menu->{'contents'}->[-1];
+        push @{$current->{'contents'}}, {'type' => 'preformatted',
+                                  'parent' => $current,
+                                  'contents' => [] };
+        $current = $current->{'contents'}->[-1];
         print STDERR "THEN MENU_COMMENT OPEN\n" if ($self->{'DEBUG'});
       }
       while (@{$menu_entry->{'args'}}) {
@@ -1879,6 +1901,8 @@
         }
         $arg = undef;
       }
+      push @{$self->{'context_stack'}}, 'preformatted';
+      # MENU_COMMENT open
       $menu_entry = undef;
     } else {
       print STDERR "MENU ENTRY END LINE\n" if ($self->{'DEBUG'});
@@ -2248,27 +2272,35 @@
     }
    # do that last in order to have the line processed if one of the above
    # case is also set.
-  } elsif ($current->{'contents'} and @{$current->{'contents'}}
-      and $current->{'contents'}->[-1]->{'type'}
-      and $current->{'contents'}->[-1]->{'type'} eq 
'empty_line_after_command') {
+  } elsif (
+      $current->{'contents'} 
+      and (scalar(@{$current->{'contents'}}) == 1
+           and (($current->{'contents'}->[-1]->{'type'}
+               and $current->{'contents'}->[-1]->{'type'} eq 
'empty_line_after_command'))
+          or (scalar(@{$current->{'contents'}}) == 2
+               and $current->{'contents'}->[-1]->{'cmdname'}
+               and ($current->{'contents'}->[-1]->{'cmdname'} eq 'c'
+                    or $current->{'contents'}->[-1]->{'cmdname'} eq 'comment')
+               and $current->{'contents'}->[-2] 
+               and $current->{'contents'}->[-2]->{'type'}
+               and $current->{'contents'}->[-2]->{'type'} eq 
'empty_line_after_command'))) {
+    # empty line after a @menu or before a preformatted. Reparent to the menu
+    # or other format
     if ($current->{'type'}
         and $current->{'type'} eq 'preformatted') {
-      print STDERR "LINE AFTER COMMAND IN PREFORMATTED\n" if 
($self->{'DEBUG'});
-      my $empty_line = pop @{$current->{'contents'}};
-      $empty_line->{'parent'} = $current->{'parent'};
-      my $preformatted = pop @{$current->{'parent'}->{'contents'}};
-      push @{$current->{'parent'}->{'contents'}}, $empty_line;
-      push @{$current->{'parent'}->{'contents'}}, $preformatted;
+      my $parent = $current->{'parent'};
+      if ($parent->{'type'} and $parent->{'type'} eq 'menu_comment'
+          and scalar(@{$parent->{'contents'}}) == 1) {
+        $parent = $parent->{'parent'};
     }
-    # empty line after a @menu. Reparent to the menu
-    if ($current->{'type'} 
-        and $current->{'type'} eq 'menu_comment') {
-      print STDERR "EMPTY LINE AFTER MENU\n" if ($self->{'DEBUG'});
-      my $empty_line = pop @{$current->{'contents'}};
-      $empty_line->{'parent'} = $current->{'parent'};
-      my $menu_comment = pop @{$current->{'parent'}->{'contents'}};
-      push @{$current->{'parent'}->{'contents'}}, $empty_line;
-      push @{$current->{'parent'}->{'contents'}}, $menu_comment;
+      my $to_reparent = pop @{$parent->{'contents'}};
+      print STDERR "LINE AFTER COMMAND IN PREFORMATTED 
($to_reparent->{'type'})\n" if ($self->{'DEBUG'});
+      while (@{$current->{'contents'}}) {
+        my $content = shift @{$current->{'contents'}};
+        $content->{'parent'} = $parent;
+        push @{$parent->{'contents'}}, $content;
+      }
+      push @{$parent->{'contents'}}, $to_reparent;
     }
   }
 
@@ -2741,7 +2773,9 @@
         }
       # maybe a menu entry beginning: a * at the beginning of a menu line
       } elsif ($line =~ /^\*/ and $current->{'type'}
-                and ($current->{'type'} eq 'menu_comment'
+                and (($current->{'type'} eq 'preformatted'
+                      and $current->{'parent'}->{'type'} 
+                      and $current->{'parent'}->{'type'} eq 'menu_comment')
                     or $current->{'type'} eq 'menu_entry_description')
                 and @{$current->{'contents'}} 
                 and $current->{'contents'}->[-1]->{'type'}
@@ -2762,10 +2796,16 @@
         pop @{$current->{'contents'}};
         $line =~ s/^(\s+)//;
         my $leading_text = '*' . $1;
-        if ($current->{'type'} eq 'menu_comment') {
-          my $menu = $current->{'parent'};
-          pop @{$menu->{'contents'}} if (address@hidden>{'contents'}});
+        if ($current->{'type'} eq 'preformatted'
+            and $current->{'parent'}->{'type'} 
+            and $current->{'parent'}->{'type'} eq 'menu_comment') {
+          my $menu = $current->{'parent'}->{'parent'};
+          pop @{$menu->{'contents'}} 
+            if (address@hidden>{'contents'}} 
+                and scalar(@{$current->{'parent'}->{'contents'}}) == 1);
           $current = $menu;
+          #print STDERR "Close MENU_COMMENT because new menu entry\n";
+          pop @{$self->{'context_stack'}};
         } else {
           # first parent is menu_entry
           $current = $current->{'parent'}->{'parent'};
@@ -3302,12 +3342,28 @@
             # block commands. This won't catch menu commands buried in 
             # other formats (that are incorrect anyway).
             if ($menu_commands{$command} and $current->{'type'} 
-                   and $current->{'type'} eq 'menu_comment') {
-              $current = $current->{'parent'};
+                and (($current->{'type'} eq 'preformatted'
+                     and $current->{'parent'}->{'type'} 
+                     and $current->{'parent'}->{'type'} eq 'menu_comment')
+                   or ($current->{'type'} eq 'menu_comment'))) {
+
+              my $menu;
+              if ($current->{'type'} eq 'preformatted') {
+                $menu = $current->{'parent'}->{'parent'};
               # don't keep empty menu_comment
-              if (address@hidden>{'contents'}->[-1]->{'contents'}}) {
-                pop @{$current->{'contents'}};
+                if (address@hidden>{'contents'}} and
+                     scalar(@{$current->{'parent'}->{'contents'}}) == 1) {
+                  pop @{$menu->{'contents'}};
               }
+              } else {
+                $menu = $current->{'parent'};
+                pop @{$menu->{'contents'}}
+                  if (address@hidden>{'contents'}});
+              }
+              #print STDERR "new menu cmd $command close MENU_COMMENT\n";
+              pop @{$self->{'context_stack'}};
+
+              $current = $menu;
             }
             # the def command holds a line_def* which corresponds with the
             # definition line.  This allows to have a treatement similar
@@ -3371,7 +3427,12 @@
                                                  'parent' => $current,
                                                  'contents' => [] };
                 $current = $current->{'contents'}->[-1];
+                #push @{$current->{'contents'}}, {'type' => 'preformatted',
+                #                                 'parent' => $current,
+                #                                 'contents' => [] };
+                #$current = $current->{'contents'}->[-1];
                 print STDERR "MENU_COMMENT OPEN\n" if ($self->{'DEBUG'});
+                push @{$self->{'context_stack'}}, 'preformatted';
               }
               $current = $self->_begin_preformatted($current);
             }

Index: t/results/macro/macro_in_menu.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/macro/macro_in_menu.pl,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -b -r1.22 -r1.23
--- t/results/macro/macro_in_menu.pl    7 Dec 2010 20:34:30 -0000       1.22
+++ t/results/macro/macro_in_menu.pl    1 Feb 2011 23:34:59 -0000       1.23
@@ -330,12 +330,18 @@
         {
           'contents' => [
             {
+              'contents' => [
+                {
               'parent' => {},
               'text' => 'menu comment
 '
             }
           ],
           'parent' => {},
+              'type' => 'preformatted'
+            }
+          ],
+          'parent' => {},
           'type' => 'menu_comment'
         },
         {
@@ -606,6 +612,7 @@
 
$result_trees{'macro_in_menu'}{'contents'}[19]{'contents'}[1]{'extra'}{'menu_entry_node'}{'node_content'}[0]
 = 
$result_trees{'macro_in_menu'}{'contents'}[19]{'contents'}[1]{'args'}[1]{'contents'}[0];
 $result_trees{'macro_in_menu'}{'contents'}[19]{'contents'}[1]{'parent'} = 
$result_trees{'macro_in_menu'}{'contents'}[19];
 $result_trees{'macro_in_menu'}{'contents'}[19]{'contents'}[2]{'parent'} = 
$result_trees{'macro_in_menu'}{'contents'}[19];
+$result_trees{'macro_in_menu'}{'contents'}[19]{'contents'}[3]{'contents'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'macro_in_menu'}{'contents'}[19]{'contents'}[3]{'contents'}[0];
 
$result_trees{'macro_in_menu'}{'contents'}[19]{'contents'}[3]{'contents'}[0]{'parent'}
 = $result_trees{'macro_in_menu'}{'contents'}[19]{'contents'}[3];
 $result_trees{'macro_in_menu'}{'contents'}[19]{'contents'}[3]{'parent'} = 
$result_trees{'macro_in_menu'}{'contents'}[19];
 
$result_trees{'macro_in_menu'}{'contents'}[19]{'contents'}[4]{'args'}[0]{'parent'}
 = $result_trees{'macro_in_menu'}{'contents'}[19]{'contents'}[4];

Index: t/results/menu/bad_beginning.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/menu/bad_beginning.pl,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- t/results/menu/bad_beginning.pl     7 Dec 2010 20:34:30 -0000       1.14
+++ t/results/menu/bad_beginning.pl     1 Feb 2011 23:34:59 -0000       1.15
@@ -16,6 +16,8 @@
         {
           'contents' => [
             {
+              'contents' => [
+                {
               'parent' => {},
               'text' => '*   
 '
@@ -56,6 +58,10 @@
             }
           ],
           'parent' => {},
+              'type' => 'preformatted'
+            }
+          ],
+          'parent' => {},
           'type' => 'menu_comment'
         }
       ],
@@ -70,12 +76,13 @@
   'type' => 'text_root'
 };
 $result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[0]{'parent'} = 
$result_trees{'bad_beginning'}{'contents'}[0];
+$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[1]{'parent'}
 = $result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[4]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[4]{'args'}[0];
+$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[4]{'args'}[0]{'parent'}
 = 
$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[4];
+$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[4]{'parent'}
 = $result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[5]{'parent'}
 = $result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
 
$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'parent'}
 = $result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1];
-$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[1]{'parent'}
 = $result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1];
-$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[4]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[4]{'args'}[0];
-$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[4]{'args'}[0]{'parent'}
 = $result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[4];
-$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[4]{'parent'}
 = $result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1];
-$result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[5]{'parent'}
 = $result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1];
 $result_trees{'bad_beginning'}{'contents'}[0]{'contents'}[1]{'parent'} = 
$result_trees{'bad_beginning'}{'contents'}[0];
 $result_trees{'bad_beginning'}{'contents'}[0]{'parent'} = 
$result_trees{'bad_beginning'};
 $result_trees{'bad_beginning'}{'contents'}[1]{'parent'} = 
$result_trees{'bad_beginning'};

Index: t/results/menu/example_in_menu_comment.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/menu/example_in_menu_comment.pl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- t/results/menu/example_in_menu_comment.pl   30 Jan 2011 17:41:16 -0000      
1.1
+++ t/results/menu/example_in_menu_comment.pl   1 Feb 2011 23:34:59 -0000       
1.2
@@ -70,12 +70,6 @@
           'type' => 'after_description_line'
         },
         {
-          'parent' => {},
-          'text' => '
-',
-          'type' => 'empty_line_after_command'
-        },
-        {
           'contents' => [
             {
               'cmdname' => 'example',
@@ -115,6 +109,14 @@
               'parent' => {},
               'text' => '
 ',
+              'type' => 'empty_line_after_command'
+            },
+            {
+              'contents' => [
+                {
+                  'parent' => {},
+                  'text' => '
+',
               'type' => 'empty_line'
             },
             {
@@ -130,6 +132,10 @@
             }
           ],
           'parent' => {},
+              'type' => 'preformatted'
+            }
+          ],
+          'parent' => {},
           'type' => 'menu_comment'
         }
       ],
@@ -154,29 +160,30 @@
 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[1]{'extra'}{'menu_entry_node'}{'node_content'}[0]
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[1]{'args'}[1]{'contents'}[0];
 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[1]{'parent'}
 = $result_trees{'example_in_menu_comment'}{'contents'}[0];
 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[2]{'parent'}
 = $result_trees{'example_in_menu_comment'}{'contents'}[0];
+$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[0];
+$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[0]{'contents'}[1]{'contents'}[0]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[0]{'contents'}[1];
+$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[0]{'contents'}[1]{'contents'}[1]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[0]{'contents'}[1];
+$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[0]{'contents'}[1]{'contents'}[2]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[0]{'contents'}[1];
+$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[0]{'contents'}[1]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[0];
+$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[0]{'parent'}
 = $result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3];
+$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[1]{'parent'}
 = $result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3];
+$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[2]{'contents'}[0]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[2];
+$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[2]{'contents'}[1]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[2];
+$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[2]{'contents'}[2]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[2];
+$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'contents'}[2]{'parent'}
 = $result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3];
 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[3]{'parent'}
 = $result_trees{'example_in_menu_comment'}{'contents'}[0];
-$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[0];
-$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[0]{'contents'}[1]{'contents'}[0]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[0]{'contents'}[1];
-$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[0]{'contents'}[1]{'contents'}[1]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[0]{'contents'}[1];
-$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[0]{'contents'}[1]{'contents'}[2]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[0]{'contents'}[1];
-$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[0]{'contents'}[1]{'parent'}
 = 
$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[0];
-$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[0]{'parent'}
 = $result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4];
-$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[1]{'parent'}
 = $result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4];
-$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[2]{'parent'}
 = $result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4];
-$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'contents'}[3]{'parent'}
 = $result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4];
-$result_trees{'example_in_menu_comment'}{'contents'}[0]{'contents'}[4]{'parent'}
 = $result_trees{'example_in_menu_comment'}{'contents'}[0];
 $result_trees{'example_in_menu_comment'}{'contents'}[0]{'parent'} = 
$result_trees{'example_in_menu_comment'};
 $result_trees{'example_in_menu_comment'}{'contents'}[1]{'parent'} = 
$result_trees{'example_in_menu_comment'};
 
 $result_texis{'example_in_menu_comment'} = '@menu
 * entry::
 
-
 @example
 in 
 
 example
 @end example
+
 menu comment.
 
 @end menu

Index: t/results/menu/menu_entry_no_entry.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/menu/menu_entry_no_entry.pl,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- t/results/menu/menu_entry_no_entry.pl       31 Jan 2011 00:37:23 -0000      
1.17
+++ t/results/menu/menu_entry_no_entry.pl       1 Feb 2011 23:34:59 -0000       
1.18
@@ -16,6 +16,8 @@
         {
           'contents' => [
             {
+              'contents' => [
+                {
               'parent' => {},
               'text' => '* a1:
 '
@@ -122,6 +124,10 @@
             }
           ],
           'parent' => {},
+              'type' => 'preformatted'
+            }
+          ],
+          'parent' => {},
           'type' => 'menu_comment'
         }
       ],
@@ -137,26 +143,27 @@
   'type' => 'text_root'
 };
 $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[0]{'parent'} = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[1]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[2]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[3]{'args'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[3];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[3]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[4]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[5]{'args'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[5];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[5]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[6]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[7]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[7]{'args'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[7]{'args'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[7];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[7]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[8]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[9]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[10]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[10]{'args'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[10]{'args'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[10];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[10]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[11]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[12]{'args'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[12];
+$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[12]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[1]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[2]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[3]{'args'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[3];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[3]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[4]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[5]{'args'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[5];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[5]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[6]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[7]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[7]{'args'}[0];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[7]{'args'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[7];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[7]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[8]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[9]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[10]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[10]{'args'}[0];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[10]{'args'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[10];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[10]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[11]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[12]{'args'}[0]{'parent'}
 = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[12];
-$result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'contents'}[12]{'parent'}
 = $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1];
 $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'contents'}[1]{'parent'} = 
$result_trees{'menu_entry_no_entry'}{'contents'}[0];
 $result_trees{'menu_entry_no_entry'}{'contents'}[0]{'parent'} = 
$result_trees{'menu_entry_no_entry'};
 $result_trees{'menu_entry_no_entry'}{'contents'}[1]{'parent'} = 
$result_trees{'menu_entry_no_entry'};

Index: t/results/menu/menu_no_closed_after_empty_line.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/menu/menu_no_closed_after_empty_line.pl,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- t/results/menu/menu_no_closed_after_empty_line.pl   7 Dec 2010 20:34:30 
-0000       1.11
+++ t/results/menu/menu_no_closed_after_empty_line.pl   1 Feb 2011 23:34:59 
-0000       1.12
@@ -74,6 +74,8 @@
         {
           'contents' => [
             {
+              'contents' => [
+                {
               'parent' => {},
               'text' => '
 ',
@@ -81,6 +83,10 @@
             }
           ],
           'parent' => {},
+              'type' => 'preformatted'
+            }
+          ],
+          'parent' => {},
           'type' => 'menu_comment'
         }
       ],
@@ -99,6 +105,7 @@
 
$result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0]{'contents'}[1]{'extra'}{'menu_entry_node'}{'manual_content'}[0]{'parent'}
 = 
$result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0]{'contents'}[1]{'args'}[1];
 
$result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0]{'contents'}[1]{'parent'}
 = $result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0];
 
$result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0]{'contents'}[2]{'parent'}
 = $result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0];
+$result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0]{'contents'}[3]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0]{'contents'}[3]{'contents'}[0];
 
$result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0]{'contents'}[3]{'contents'}[0]{'parent'}
 = 
$result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0]{'contents'}[3];
 
$result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0]{'contents'}[3]{'parent'}
 = $result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0];
 $result_trees{'menu_no_closed_after_empty_line'}{'contents'}[0]{'parent'} = 
$result_trees{'menu_no_closed_after_empty_line'};

Index: t/results/menu/menu_no_closed_entry_beginning.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/menu/menu_no_closed_entry_beginning.pl,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- t/results/menu/menu_no_closed_entry_beginning.pl    7 Dec 2010 20:34:30 
-0000       1.9
+++ t/results/menu/menu_no_closed_entry_beginning.pl    1 Feb 2011 23:34:59 
-0000       1.10
@@ -16,11 +16,17 @@
         {
           'contents' => [
             {
+              'contents' => [
+                {
               'parent' => {},
               'text' => '* node'
             }
           ],
           'parent' => {},
+              'type' => 'preformatted'
+            }
+          ],
+          'parent' => {},
           'type' => 'menu_comment'
         }
       ],
@@ -30,6 +36,7 @@
   'type' => 'text_root'
 };
 
$result_trees{'menu_no_closed_entry_beginning'}{'contents'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'menu_no_closed_entry_beginning'}{'contents'}[0];
+$result_trees{'menu_no_closed_entry_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'menu_no_closed_entry_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
 
$result_trees{'menu_no_closed_entry_beginning'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'parent'}
 = 
$result_trees{'menu_no_closed_entry_beginning'}{'contents'}[0]{'contents'}[1];
 
$result_trees{'menu_no_closed_entry_beginning'}{'contents'}[0]{'contents'}[1]{'parent'}
 = $result_trees{'menu_no_closed_entry_beginning'}{'contents'}[0];
 $result_trees{'menu_no_closed_entry_beginning'}{'contents'}[0]{'parent'} = 
$result_trees{'menu_no_closed_entry_beginning'};

Index: t/results/menu/menu_no_closed_star.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/menu/menu_no_closed_star.pl,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- t/results/menu/menu_no_closed_star.pl       7 Dec 2010 20:34:30 -0000       
1.9
+++ t/results/menu/menu_no_closed_star.pl       1 Feb 2011 23:34:59 -0000       
1.10
@@ -16,11 +16,17 @@
         {
           'contents' => [
             {
+              'contents' => [
+                {
               'parent' => {},
               'text' => '* '
             }
           ],
           'parent' => {},
+              'type' => 'preformatted'
+            }
+          ],
+          'parent' => {},
           'type' => 'menu_comment'
         }
       ],
@@ -30,6 +36,7 @@
   'type' => 'text_root'
 };
 $result_trees{'menu_no_closed_star'}{'contents'}[0]{'contents'}[0]{'parent'} = 
$result_trees{'menu_no_closed_star'}{'contents'}[0];
+$result_trees{'menu_no_closed_star'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'menu_no_closed_star'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
 
$result_trees{'menu_no_closed_star'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'parent'}
 = $result_trees{'menu_no_closed_star'}{'contents'}[0]{'contents'}[1];
 $result_trees{'menu_no_closed_star'}{'contents'}[0]{'contents'}[1]{'parent'} = 
$result_trees{'menu_no_closed_star'}{'contents'}[0];
 $result_trees{'menu_no_closed_star'}{'contents'}[0]{'parent'} = 
$result_trees{'menu_no_closed_star'};

Index: t/results/menu/simple.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/menu/simple.pl,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- t/results/menu/simple.pl    7 Dec 2010 20:34:30 -0000       1.19
+++ t/results/menu/simple.pl    1 Feb 2011 23:34:59 -0000       1.20
@@ -22,12 +22,18 @@
         {
           'contents' => [
             {
+              'contents' => [
+                {
               'parent' => {},
               'text' => 'comment
 '
             }
           ],
           'parent' => {},
+              'type' => 'preformatted'
+            }
+          ],
+          'parent' => {},
           'type' => 'menu_comment'
         },
         {
@@ -279,12 +285,18 @@
         {
           'contents' => [
             {
+              'contents' => [
+                {
               'parent' => {},
               'text' => 'new comment
 '
             }
           ],
           'parent' => {},
+              'type' => 'preformatted'
+            }
+          ],
+          'parent' => {},
           'type' => 'menu_comment'
         },
         {
@@ -357,6 +369,7 @@
 };
 $result_trees{'simple'}{'contents'}[0]{'parent'} = $result_trees{'simple'};
 $result_trees{'simple'}{'contents'}[1]{'contents'}[0]{'parent'} = 
$result_trees{'simple'}{'contents'}[1];
+$result_trees{'simple'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'simple'}{'contents'}[1]{'contents'}[1]{'contents'}[0];
 $result_trees{'simple'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'parent'} 
= $result_trees{'simple'}{'contents'}[1]{'contents'}[1];
 $result_trees{'simple'}{'contents'}[1]{'contents'}[1]{'parent'} = 
$result_trees{'simple'}{'contents'}[1];
 $result_trees{'simple'}{'contents'}[1]{'contents'}[2]{'args'}[0]{'parent'} = 
$result_trees{'simple'}{'contents'}[1]{'contents'}[2];
@@ -400,6 +413,7 @@
 
$result_trees{'simple'}{'contents'}[1]{'contents'}[5]{'extra'}{'menu_entry_node'}{'node_content'}[0]
 = 
$result_trees{'simple'}{'contents'}[1]{'contents'}[5]{'args'}[1]{'contents'}[0];
 $result_trees{'simple'}{'contents'}[1]{'contents'}[5]{'parent'} = 
$result_trees{'simple'}{'contents'}[1];
 $result_trees{'simple'}{'contents'}[1]{'contents'}[6]{'parent'} = 
$result_trees{'simple'}{'contents'}[1];
+$result_trees{'simple'}{'contents'}[1]{'contents'}[7]{'contents'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'simple'}{'contents'}[1]{'contents'}[7]{'contents'}[0];
 $result_trees{'simple'}{'contents'}[1]{'contents'}[7]{'contents'}[0]{'parent'} 
= $result_trees{'simple'}{'contents'}[1]{'contents'}[7];
 $result_trees{'simple'}{'contents'}[1]{'contents'}[7]{'parent'} = 
$result_trees{'simple'}{'contents'}[1];
 $result_trees{'simple'}{'contents'}[1]{'contents'}[8]{'args'}[0]{'parent'} = 
$result_trees{'simple'}{'contents'}[1]{'contents'}[8];



reply via email to

[Prev in Thread] Current Thread [Next in Thread]