texinfo-commits
[Top][All Lists]
Advanced

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

texinfo/tp TODO Texinfo/Parser.pm t/22xtable.t ...


From: Patrice Dumas
Subject: texinfo/tp TODO Texinfo/Parser.pm t/22xtable.t ...
Date: Mon, 19 Sep 2011 19:29:04 +0000

CVSROOT:        /sources/texinfo
Module name:    texinfo
Changes by:     Patrice Dumas <pertusus>        11/09/19 19:29:04

Modified files:
        tp             : TODO 
        tp/Texinfo     : Parser.pm 
        tp/t           : 22xtable.t 
        tp/t/results/xtable: itemx_before_item.pl 
                             title_and_itemx_before_item.pl 
Added files:
        tp/t/results/xtable: comment_and_itemx_before_item.pl 

Log message:
        Error if a @*table begins with an @itemx.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/TODO?cvsroot=texinfo&r1=1.171&r2=1.172
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/Texinfo/Parser.pm?cvsroot=texinfo&r1=1.297&r2=1.298
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/22xtable.t?cvsroot=texinfo&r1=1.12&r2=1.13
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/xtable/itemx_before_item.pl?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/xtable/title_and_itemx_before_item.pl?cvsroot=texinfo&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texinfo/tp/t/results/xtable/comment_and_itemx_before_item.pl?cvsroot=texinfo&rev=1.1

Patches:
Index: TODO
===================================================================
RCS file: /sources/texinfo/texinfo/tp/TODO,v
retrieving revision 1.171
retrieving revision 1.172
diff -u -b -r1.171 -r1.172
--- TODO        19 Sep 2011 19:10:20 -0000      1.171
+++ TODO        19 Sep 2011 19:29:03 -0000      1.172
@@ -36,8 +36,6 @@
 
 remove _*directions('This' and replace with new API. Done?
 
-There should be a warning when beginning a table item with @itemx.
-
 There should be a warning with something like
 @example text
 ...

Index: Texinfo/Parser.pm
===================================================================
RCS file: /sources/texinfo/texinfo/tp/Texinfo/Parser.pm,v
retrieving revision 1.297
retrieving revision 1.298
diff -u -b -r1.297 -r1.298
--- Texinfo/Parser.pm   19 Sep 2011 19:10:20 -0000      1.297
+++ Texinfo/Parser.pm   19 Sep 2011 19:29:03 -0000      1.298
@@ -1162,6 +1162,10 @@
   # nothing to do in that case.
   if ($current->{'contents'}->[-1]->{'type'}
       and $current->{'contents'}->[-1]->{'type'} eq 'before_item') {
+    if ($next_command and $next_command eq 'itemx') {
+      $self->line_error(sprintf($self->__("address@hidden should not begin 
address@hidden"), 
+                                $current->{'cmdname'}), $line_nr);
+    }
     return;
   }
   #print STDERR "GATHER "._print_current($current)."\n";
@@ -1191,6 +1195,7 @@
     }
   }
   if ($type eq 'table_item') {
+  # FIXME keep table_item with only comments and/or empty lines?
     my $table_entry = {'type' => 'table_entry',
                     'parent' => $current,
                     'contents' => []};
@@ -1225,7 +1230,6 @@
       $table_gathered->{'parent'} = $table_entry;
     }
   } else {
-  # FIXME keep table_item with only comments and/or empty lines?
     my $after_paragraph = _check_no_text($table_gathered);
     if ($after_paragraph) {
       $self->line_error($self->__("address@hidden must follow 
address@hidden"), $line_nr);

Index: t/22xtable.t
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/22xtable.t,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -b -r1.12 -r1.13
--- t/22xtable.t        8 Sep 2011 22:53:10 -0000       1.12
+++ t/22xtable.t        19 Sep 2011 19:29:04 -0000      1.13
@@ -175,6 +175,12 @@
 @itemx in itemx
 @end table
 '],
+['comment_and_itemx_before_item',
+'@table @code
address@hidden comment
address@hidden in itemx
address@hidden table
+'],
 );
 
 foreach my $test (@test_cases) {

Index: t/results/xtable/itemx_before_item.pl
===================================================================
RCS file: /sources/texinfo/texinfo/tp/t/results/xtable/itemx_before_item.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/xtable/itemx_before_item.pl       3 Sep 2011 10:29:41 -0000       
1.2
+++ t/results/xtable/itemx_before_item.pl       19 Sep 2011 19:29:04 -0000      
1.3
@@ -184,7 +184,17 @@
 $result_texts{'itemx_before_item'} = 'in itemx
 ';
 
-$result_errors{'itemx_before_item'} = [];
+$result_errors{'itemx_before_item'} = [
+  {
+    'error_line' => ':2: @itemx should not begin @table
+',
+    'file_name' => '',
+    'line_nr' => 2,
+    'macro' => '',
+    'text' => '@itemx should not begin @table',
+    'type' => 'error'
+  }
+];
 
 
 1;

Index: t/results/xtable/title_and_itemx_before_item.pl
===================================================================
RCS file: 
/sources/texinfo/texinfo/tp/t/results/xtable/title_and_itemx_before_item.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- t/results/xtable/title_and_itemx_before_item.pl     3 Sep 2011 10:29:44 
-0000       1.2
+++ t/results/xtable/title_and_itemx_before_item.pl     19 Sep 2011 19:29:04 
-0000      1.3
@@ -206,7 +206,17 @@
 in itemx
 ';
 
-$result_errors{'title_and_itemx_before_item'} = [];
+$result_errors{'title_and_itemx_before_item'} = [
+  {
+    'error_line' => ':3: @itemx should not begin @table
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@itemx should not begin @table',
+    'type' => 'error'
+  }
+];
 
 
 1;

Index: t/results/xtable/comment_and_itemx_before_item.pl
===================================================================
RCS file: t/results/xtable/comment_and_itemx_before_item.pl
diff -N t/results/xtable/comment_and_itemx_before_item.pl
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ t/results/xtable/comment_and_itemx_before_item.pl   19 Sep 2011 19:29:04 
-0000      1.1
@@ -0,0 +1,222 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors 
+   %result_indices %result_sectioning %result_nodes %result_menus
+   %result_floats %result_converted %result_converted_errors 
+   %result_elements %result_directions_text);
+
+use utf8;
+
+$result_trees{'comment_and_itemx_before_item'} = {
+  'contents' => [
+    {
+      'args' => [
+        {
+          'contents' => [
+            {
+              'extra' => {
+                'command' => {}
+              },
+              'parent' => {},
+              'text' => ' ',
+              'type' => 'empty_spaces_after_command'
+            },
+            {
+              'cmdname' => 'code',
+              'parent' => {},
+              'type' => 'command_as_argument'
+            },
+            {
+              'parent' => {},
+              'text' => '
+',
+              'type' => 'space_at_end_block_command'
+            }
+          ],
+          'parent' => {},
+          'type' => 'block_line_arg'
+        }
+      ],
+      'cmdname' => 'table',
+      'contents' => [
+        {
+          'contents' => [
+            {
+              'args' => [
+                {
+                  'parent' => {},
+                  'text' => ' comment
+',
+                  'type' => 'misc_arg'
+                }
+              ],
+              'cmdname' => 'c',
+              'parent' => {}
+            }
+          ],
+          'parent' => {},
+          'type' => 'before_item'
+        },
+        {
+          'contents' => [
+            {
+              'contents' => [
+                {
+                  'args' => [
+                    {
+                      'contents' => [
+                        {
+                          'extra' => {
+                            'command' => {}
+                          },
+                          'parent' => {},
+                          'text' => ' ',
+                          'type' => 'empty_spaces_after_command'
+                        },
+                        {
+                          'parent' => {},
+                          'text' => 'in itemx'
+                        },
+                        {
+                          'parent' => {},
+                          'text' => '
+',
+                          'type' => 'spaces_at_end'
+                        }
+                      ],
+                      'parent' => {},
+                      'type' => 'misc_line_arg'
+                    }
+                  ],
+                  'cmdname' => 'itemx',
+                  'extra' => {
+                    'misc_content' => [
+                      {}
+                    ]
+                  },
+                  'line_nr' => {
+                    'file_name' => '',
+                    'line_nr' => 3,
+                    'macro' => ''
+                  },
+                  'parent' => {}
+                }
+              ],
+              'parent' => {},
+              'type' => 'table_term'
+            }
+          ],
+          'parent' => {},
+          'type' => 'table_entry'
+        },
+        {
+          'args' => [
+            {
+              'contents' => [
+                {
+                  'extra' => {
+                    'command' => {}
+                  },
+                  'parent' => {},
+                  'text' => ' ',
+                  'type' => 'empty_spaces_after_command'
+                },
+                {
+                  'parent' => {},
+                  'text' => 'table'
+                },
+                {
+                  'parent' => {},
+                  'text' => '
+',
+                  'type' => 'spaces_at_end'
+                }
+              ],
+              'parent' => {},
+              'type' => 'misc_line_arg'
+            }
+          ],
+          'cmdname' => 'end',
+          'extra' => {
+            'command' => {},
+            'command_argument' => 'table',
+            'text_arg' => 'table'
+          },
+          'line_nr' => {
+            'file_name' => '',
+            'line_nr' => 4,
+            'macro' => ''
+          },
+          'parent' => {}
+        }
+      ],
+      'extra' => {
+        'block_command_line_contents' => [
+          [
+            {}
+          ]
+        ],
+        'command_as_argument' => {},
+        'end_command' => {}
+      },
+      'line_nr' => {
+        'file_name' => '',
+        'line_nr' => 1,
+        'macro' => ''
+      },
+      'parent' => {}
+    }
+  ],
+  'type' => 'text_root'
+};
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'extra'}{'command'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'args'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'args'}[0]{'contents'}[1]{'parent'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'args'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'args'}[0]{'contents'}[2]{'parent'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'args'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'args'}[0]{'parent'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[0]{'contents'}[0]{'args'}[0]{'parent'}
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[0]{'contents'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[0]{'parent'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'extra'}{'command'}
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[1]{'parent'}
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[2]{'parent'}
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'args'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'args'}[0]{'parent'}
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'extra'}{'misc_content'}[0]
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[1];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'contents'}[0]{'parent'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[1]{'parent'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2]{'args'}[0]{'contents'}[0]{'extra'}{'command'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2]{'args'}[0]{'contents'}[0]{'parent'}
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2]{'args'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2]{'args'}[0]{'contents'}[1]{'parent'}
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2]{'args'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2]{'args'}[0]{'contents'}[2]{'parent'}
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2]{'args'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2]{'args'}[0]{'parent'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2]{'extra'}{'command'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2]{'parent'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'extra'}{'block_command_line_contents'}[0][0]
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'args'}[0]{'contents'}[1];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'extra'}{'command_as_argument'}
 = 
$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'args'}[0]{'contents'}[1];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'extra'}{'end_command'}
 = $result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'contents'}[2];
+$result_trees{'comment_and_itemx_before_item'}{'contents'}[0]{'parent'} = 
$result_trees{'comment_and_itemx_before_item'};
+
+$result_texis{'comment_and_itemx_before_item'} = '@table @code
address@hidden comment
address@hidden in itemx
address@hidden table
+';
+
+
+$result_texts{'comment_and_itemx_before_item'} = 'in itemx
+';
+
+$result_errors{'comment_and_itemx_before_item'} = [
+  {
+    'error_line' => ':3: @itemx should not begin @table
+',
+    'file_name' => '',
+    'line_nr' => 3,
+    'macro' => '',
+    'text' => '@itemx should not begin @table',
+    'type' => 'error'
+  }
+];
+
+
+1;



reply via email to

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