texi2html-cvs
[Top][All Lists]
Advanced

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

[Texi2html-cvs] texi2html ChangeLog NEWS T2h_i18n.pm TODO texi2...


From: Patrice Dumas
Subject: [Texi2html-cvs] texi2html ChangeLog NEWS T2h_i18n.pm TODO texi2...
Date: Fri, 05 Oct 2007 12:10:59 +0000

CVSROOT:        /cvsroot/texi2html
Module name:    texi2html
Changes by:     Patrice Dumas <pertusus>        07/10/05 12:10:59

Modified files:
        .              : ChangeLog NEWS T2h_i18n.pm TODO texi2html.init 
                         texi2html.pl 
        Tests/formatting_res: clean.html def_cmds.2 exotic_formatting.2 
                              exotic_formatting.html formatting.2 
                              formatting.html formatting_html32.2 
                              formatting_html32.html fr_formatting.2 
                              fr_formatting.html icons_fr_formatting.2 
                              icons_fr_formatting.html 
                              to_utf8_formatting.2 
                              to_utf8_formatting.html 
                              weird_quotes_formatting.2 
                              weird_quotes_formatting.html 
        Tests/index_table_res: index_special_region_1.html 
                               index_special_region_fot.html 
        doc            : texi2html.html texi2html.texi 
        examples       : roff.init 

Log message:
                * texi2html.pl: separate global variables of pass_structure and
                pass_texi, prefix some of those vaiables, and clean variable 
and 
                function names.
                add more information relative to the special regions.
                Treat more systematically the special regions with an 
initialization
                code allowing to fill the state with relevant information.
                * texi2html.pl, texi2html.init: use a formatting function for 
                documentdescription and give more arguments to copying_comment.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texi2html/ChangeLog?cvsroot=texi2html&r1=1.279&r2=1.280
http://cvs.savannah.gnu.org/viewcvs/texi2html/NEWS?cvsroot=texi2html&r1=1.67&r2=1.68
http://cvs.savannah.gnu.org/viewcvs/texi2html/T2h_i18n.pm?cvsroot=texi2html&r1=1.21&r2=1.22
http://cvs.savannah.gnu.org/viewcvs/texi2html/TODO?cvsroot=texi2html&r1=1.37&r2=1.38
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html.init?cvsroot=texi2html&r1=1.126&r2=1.127
http://cvs.savannah.gnu.org/viewcvs/texi2html/texi2html.pl?cvsroot=texi2html&r1=1.193&r2=1.194
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/clean.html?cvsroot=texi2html&r1=1.29&r2=1.30
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/def_cmds.2?cvsroot=texi2html&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/exotic_formatting.2?cvsroot=texi2html&r1=1.28&r2=1.29
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/exotic_formatting.html?cvsroot=texi2html&r1=1.64&r2=1.65
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/formatting.2?cvsroot=texi2html&r1=1.28&r2=1.29
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/formatting.html?cvsroot=texi2html&r1=1.65&r2=1.66
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/formatting_html32.2?cvsroot=texi2html&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/formatting_html32.html?cvsroot=texi2html&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/fr_formatting.2?cvsroot=texi2html&r1=1.27&r2=1.28
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/fr_formatting.html?cvsroot=texi2html&r1=1.58&r2=1.59
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/icons_fr_formatting.2?cvsroot=texi2html&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/icons_fr_formatting.html?cvsroot=texi2html&r1=1.20&r2=1.21
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/to_utf8_formatting.2?cvsroot=texi2html&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/to_utf8_formatting.html?cvsroot=texi2html&r1=1.13&r2=1.14
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/weird_quotes_formatting.2?cvsroot=texi2html&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/formatting_res/weird_quotes_formatting.html?cvsroot=texi2html&r1=1.13&r2=1.14
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/index_table_res/index_special_region_1.html?cvsroot=texi2html&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texi2html/Tests/index_table_res/index_special_region_fot.html?cvsroot=texi2html&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/texi2html/doc/texi2html.html?cvsroot=texi2html&r1=1.58&r2=1.59
http://cvs.savannah.gnu.org/viewcvs/texi2html/doc/texi2html.texi?cvsroot=texi2html&r1=1.58&r2=1.59
http://cvs.savannah.gnu.org/viewcvs/texi2html/examples/roff.init?cvsroot=texi2html&r1=1.14&r2=1.15

Patches:
Index: ChangeLog
===================================================================
RCS file: /cvsroot/texi2html/texi2html/ChangeLog,v
retrieving revision 1.279
retrieving revision 1.280
diff -u -b -r1.279 -r1.280
--- ChangeLog   4 Oct 2007 11:47:56 -0000       1.279
+++ ChangeLog   5 Oct 2007 12:10:55 -0000       1.280
@@ -1,3 +1,14 @@
+2007-10-05  Patrice Dumas  <address@hidden>
+
+       * texi2html.pl: separate global variables of pass_structure and
+       pass_texi, prefix some of those vaiables, and clean variable and 
+       function names.
+       add more information relative to the special regions.
+       Treat more systematically the special regions with an initialization
+       code allowing to fill the state with relevant information.
+       * texi2html.pl, texi2html.init: use a formatting function for 
+       documentdescription and give more arguments to copying_comment.
+
 2007-10-04  Patrice Dumas  <address@hidden>
 
        * texi2html.pl, texi2html.init: handle headings more like normal

Index: NEWS
===================================================================
RCS file: /cvsroot/texi2html/texi2html/NEWS,v
retrieving revision 1.67
retrieving revision 1.68
diff -u -b -r1.67 -r1.68
--- NEWS        3 Oct 2007 07:39:29 -0000       1.67
+++ NEWS        5 Oct 2007 12:10:55 -0000       1.68
@@ -30,6 +30,8 @@
 * change in the normal_text function reference API, now there is an 
   input variable true if in simple text.
 
+* $Texi2HTML::THISDOC{copying} is now $Texi2HTML::THISDOC{copying_comment}.
+
 * BUG FIXES
   ---------
 

Index: T2h_i18n.pm
===================================================================
RCS file: /cvsroot/texi2html/texi2html/T2h_i18n.pm,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -b -r1.21 -r1.22
--- T2h_i18n.pm 3 Oct 2007 07:39:29 -0000       1.21
+++ T2h_i18n.pm 5 Oct 2007 12:10:56 -0000       1.22
@@ -314,7 +314,7 @@
     my $state = shift;
     if (!defined($state) and defined($Texi2HTML::THISDOC{'state'}))
     {
-        $state = main::duplicate_state($Texi2HTML::THISDOC{'state'});
+        $state = 
main::duplicate_formatting_state($Texi2HTML::THISDOC{'state'});
     }
 
     my $T2H_LANGUAGES = $Texi2HTML::Config::LANGUAGES;

Index: TODO
===================================================================
RCS file: /cvsroot/texi2html/texi2html/TODO,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -b -r1.37 -r1.38
--- TODO        30 Sep 2007 12:47:11 -0000      1.37
+++ TODO        5 Oct 2007 12:10:56 -0000       1.38
@@ -120,3 +120,12 @@
   Documentation should only done once the interface is stable.
 
 * roff is certainly not uptodate. At least the @quote* and @guillem*
+
+* ducument $documentdescription and $copying_comment. enhance titlepage
+  handling
+
+* test @anchor, @*index and @footnote in titlepage. Fix footnote handling
+  in special regions.
+
+* maybe be quiet during specail region expansion outside of document. It
+  is not very clear that it is wrong, though.

Index: texi2html.init
===================================================================
RCS file: /cvsroot/texi2html/texi2html/texi2html.init,v
retrieving revision 1.126
retrieving revision 1.127
diff -u -b -r1.126 -r1.127
--- texi2html.init      3 Oct 2007 23:56:51 -0000       1.126
+++ texi2html.init      5 Oct 2007 12:10:56 -0000       1.127
@@ -12,7 +12,7 @@
 # Afterwards, load the file with command-line 
 # option -init-file <your_init_file>
 #
-# $Id: texi2html.init,v 1.126 2007/10/03 23:56:51 pertusus Exp $
+# $Id: texi2html.init,v 1.127 2007/10/05 12:10:56 pertusus Exp $
 
 ######################################################################
 # The following variables can also be set by command-line options
@@ -748,7 +748,7 @@
 # $Texi2HTML::THISDOC{fulltitle}      -- full title as set by @title...
 # $Texi2HTML::THISDOC{subtitle}       -- subtitle as set by @subtitle
 # $Texi2HTML::THISDOC{author}         -- author as set by @author
-# $Texi2HTML::THISDOC{copying}        -- text of @copying and @end copying in 
comment
+# $Texi2HTML::THISDOC{copying_comment}  -- text of @copying and @end copying 
in comment
 #
 # $Texi2HTML::THISDOC{program}          -- name and version of texi2html
 # $Texi2HTML::THISDOC{program_homepage} -- homepage for texi2html
@@ -1057,7 +1057,7 @@
     print $fh <<EOT;
 $DOCTYPE
 <html>
-$Texi2HTML::THISDOC{'copying'}<!-- Created on $Texi2HTML::THISDOC{today} by 
$Texi2HTML::THISDOC{program} -->
+$Texi2HTML::THISDOC{'copying_comment'}<!-- Created on 
$Texi2HTML::THISDOC{today} by $Texi2HTML::THISDOC{program} -->
 <!--
 $Texi2HTML::THISDOC{program_authors}
 -->
@@ -3330,6 +3330,7 @@
 $sp                = \&t2h_default_sp;
 $definition_category      = \&t2h_default_definition_category;
 $copying_comment          = \&t2h_default_copying_comment;
+$documentdescription      = \&t2h_default_documentdescription;
 $index_summary_file_entry = \&t2h_default_index_summary_file_entry;
 $index_summary_file_end   = \&t2h_default_index_summary_file_end;
 $index_summary_file_begin = \&t2h_default_index_summary_file_begin;
@@ -4991,12 +4992,34 @@
 }
 
 
-sub t2h_default_copying_comment($)
+sub t2h_default_copying_comment($$$)
 {
     my $copying_lines = shift;
-    my $text = &$comment(main::remove_texi(@$copying_lines));
+    my $copying_text = shift;
+    my $copying_no_texi = shift;
+    return '' if ($copying_no_texi eq '');
+    my $text = &$comment($copying_no_texi);
     return $text;
 }
+
+sub t2h_default_documentdescription($$$)
+{
+    my $decription_lines = shift;
+    my $description_text = shift;
+    my $description_no_texi = shift;
+    return $DOCUMENT_DESCRIPTION if (defined($DOCUMENT_DESCRIPTION));
+    return '' if ($description_no_texi eq ''); 
+    my @documentdescription = split (/\n/, $description_no_texi);
+    $DOCUMENT_DESCRIPTION = shift @documentdescription;
+    chomp $DOCUMENT_DESCRIPTION;
+    foreach my $line (@documentdescription)
+    {
+        chomp $line;
+        $DOCUMENT_DESCRIPTION .= ' ' . $line;
+    }
+    return $DOCUMENT_DESCRIPTION;
+}
+
 # format a letter appearing in a summary for an index. The letter links to
 # the place where the index elements beginning with this letter are (called
 # a letter entry).

Index: texi2html.pl
===================================================================
RCS file: /cvsroot/texi2html/texi2html/texi2html.pl,v
retrieving revision 1.193
retrieving revision 1.194
diff -u -b -r1.193 -r1.194
--- texi2html.pl        4 Oct 2007 11:47:56 -0000       1.193
+++ texi2html.pl        5 Oct 2007 12:10:56 -0000       1.194
@@ -60,7 +60,7 @@
 #--##########################################################################
 
 # CVS version:
-# $Id: texi2html.pl,v 1.193 2007/10/04 11:47:56 pertusus Exp $
+# $Id: texi2html.pl,v 1.194 2007/10/05 12:10:56 pertusus Exp $
 
 # Homepage:
 my $T2H_HOMEPAGE = "http://www.nongnu.org/texi2html/";;
@@ -406,6 +406,7 @@
 $definition_category
 $table_list
 $copying_comment
+$documentdescription
 $index_summary_file_entry
 $index_summary_file_end
 $index_summary_file_begin
@@ -1113,6 +1114,30 @@
           'copying'              => [ ],
 );
 
+my %region_initial_state = (
+          'titlepage'            => { },
+          'documentdescription'  => { },
+          'copying'              => { },
+);
+
+# to determine if a command has to be processed the following are interesting 
+# (and can be faked):
+# 'region': the name of the special region we are processing
+# 'region_pass': the number of passes in that specific region (both outside
+#                of the main document, and in the main document)
+# 'multiple_pass': the number of pass in the formatting of the region in the
+#                  main document
+# 'outside_document': set to 1 if outside of the main document formatting
+foreach my $key (keys(%region_initial_state))
+{
+   $region_initial_state{$key}->{'multiple_pass'} = -1;
+   $region_initial_state{$key}->{'region_pass'} = 0;
+   $region_initial_state{$key}->{'num_head'} = 0;
+   $region_initial_state{$key}->{'foot_num'} = 0;
+   $region_initial_state{$key}->{'relative_foot_num'} = 0;
+   $region_initial_state{$key}->{'region'} = $key;
+}
+
 # those macros aren't considered as beginning a paragraph
 my %no_line_macros = (
     'alias' => 1,
@@ -2973,14 +2998,12 @@
                                    # constructed during pass_texi, used to
                                    # put labels in pass_text
 #
-# initial counters
+# initial counters. Global variables for pass_structure.
 #
-my $foot_num = 0;
-my $relative_foot_num = 0;
-my $idx_num = 0;
-my $sec_num = 0;
-my $head_num = 0;
-my $anchor_num = 0;
+my $document_idx_num = 0;
+my $document_sec_num = 0;
+my $document_head_num = 0;
+my $document_anchor_num = 0;
 
 #
 # can I use ISO8859 characters? (HTML+)
@@ -3188,7 +3211,7 @@
     }
     # reset the @set/@clear values
     %value = %value_initial;
-    set_special_names();
+#    set_special_names();
     foreach my $init_mac ('everyheading', 'everyfooting', 'evenheading', 
         'evenfooting', 'oddheading', 'oddfooting', 'headings', 
         'allowcodebreaks', 'frenchspacing', 'exampleindent', 
@@ -3460,23 +3483,10 @@
     my $docid;
     my $num;
 
-#    if ($state->{'place'} eq $no_element_associated_place)
-#    {
-#        $docid = "SEC_hidden";
-#        $num = "hidden";
-#    }
-#    else
-#    {
-#        $sec_num++ if($command ne 'top');
-#        $num = $sec_num;
-#        $docid = "SEC$sec_num";
-#    }
     my $section_ref = { 'texi' => $name,
        'level' => $sec2level{$command},
        'tag' => $command,
     };
-#       'sec_num' => $num,
-#       'id' => $docid,
     return $section_ref;
 }
 
@@ -3633,10 +3643,10 @@
                         my $section_ref = new_section_heading($tag, $name, 
$state);
                         $state->{'after_element'} = 1;
 
-                        $sec_num++ if($tag ne 'top');
+                        $document_sec_num++ if($tag ne 'top');
                         
-                        $section_ref->{'sec_num'} = $sec_num;
-                        $section_ref->{'id'} = "SEC$sec_num";
+                        $section_ref->{'sec_num'} = $document_sec_num;
+                        $section_ref->{'id'} = "SEC$document_sec_num";
                         $section_ref->{'seen'} = 1;
                         $section_ref->{'index_names'} = [];
                         $section_ref->{'current_place'} = [];
@@ -3654,7 +3664,7 @@
                         }
                         else
                         {
-                            $sections{$sec_num} = $section_ref;
+                            $sections{$section_ref->{'sec_num'}} = 
$section_ref;
                         }
                         merge_element_before_anything($section_ref);
                         if ($state->{'node_ref'} and 
!exists($state->{'node_ref'}->{'with_section'}))
@@ -5796,7 +5806,7 @@
 {
     print STDERR "# Doing ". scalar(keys(%nodes)) . " nodes, ".
         scalar(keys(%sections)) . " sections, " .
-        scalar(keys(%headings)) . "headings in ". $#elements_list . 
+        scalar(keys(%headings)) . " headings in ". $#elements_list . 
         " elements\n" if ($T2H_DEBUG);
     # for nodes and anchors we haven't any state defined
     # This seems right, however, as we don't want @refs or @footnotes
@@ -5887,13 +5897,14 @@
     $key =~ s/^\s*//;
     my $entry = $key;
     # The $key is mostly usefull for alphabetical sorting
+    # FIXME this should be done later, during formatting.
     $key = remove_texi($key);
     my $id = '';
     # don't add a specific index target if after a section or the index
     # entry is in @copying or the like
     unless ($use_section_id or ($place eq $no_element_associated_place))
     {
-        $id = 'IDX' . ++$idx_num;
+        $id = 'IDX' . ++$document_idx_num;
     }
     my $index_entry = {
            'entry'    => $entry,
@@ -6073,6 +6084,13 @@
     return ($pages, $entries);
 }
 
+# these variables are global, so great care should be taken with
+# state->{'multiple_state'}, ->{'region'}, ->{'region_pass'} and
+# {'outside_document'}.
+my $global_head_num = 0;       # heading index. it is global for the main doc, 
+                               # and taken from the state if in multiple_pass.
+my $global_foot_num = 0;
+my $global_relative_foot_num = 0;
 my @foot_lines = ();           # footnotes
 my $copying_comment = '';      # comment constructed from text between
                                # @copying and @end copying with licence
@@ -6082,7 +6100,7 @@
                                # hash references associating shorthands to
                                # texts.
 
-sub initialise_state($)
+sub fill_state($)
 {
     my $state = shift;
     $state->{'preformatted'} = 0 unless exists($state->{'preformatted'}); 
@@ -6091,6 +6109,7 @@
     $state->{'keep_texi'} = 0 unless exists($state->{'keep_texi'});
     $state->{'keep_nr'} = 0 unless exists($state->{'keep_nr'});
     $state->{'detailmenu'} = 0 unless exists($state->{'detailmenu'});     # 
number of opened detailed menus      
+    $state->{'sec_num'} = 0 unless exists($state->{'sec_num'});
     $state->{'table_list_stack'} = [ {'format' => "noformat"} ] unless 
exists($state->{'table_list_stack'});
     $state->{'paragraph_style'} = [ '' ] unless 
exists($state->{'paragraph_style'}); 
     $state->{'preformatted_stack'} = [ '' ] unless 
exists($state->{'preformatted_stack'}); 
@@ -6098,13 +6117,17 @@
     $state->{'command_stack'} = [] unless exists($state->{'command_stack'});
     $state->{'quotation_stack'} = [] unless 
exists($state->{'quotation_stack'});
     # if there is no $state->{'element'} the first element is used
-    $state->{'element'} = $elements_list[0] unless 
(exists($state->{'element'}) and !$state->{'element'}->{'before_anything'});
+    if ((!$state->{'element'} or $state->{'element'}->{'before_anything'}) and 
(@elements_list))
+    {
+        $state->{'element'} = $elements_list[0];
+    }
+        #$state->{'element'} = $elements_list[0] unless ((address@hidden) or 
(exists($state->{'element'}) and !$state->{'element'}->{'before_anything'}));
 }
 
 sub pass_text()
 {
     my %state;
-    initialise_state(\%state);
+    fill_state(\%state);
     my @stack;
     my $text;
     my $doc_nr;
@@ -6123,6 +6146,7 @@
         exit (0);
     }
 
+    set_special_names();
     # We set titlefont only if the titlefont appeared in the top element
     if (defined($element_top->{'titlefont'}))
     {
@@ -6246,7 +6270,6 @@
     $Texi2HTML::THISDOC{'user'} = $T2H_USER;
     $Texi2HTML::THISDOC{'user'} = $Texi2HTML::Config::USER if 
(defined($Texi2HTML::Config::USER));
 #    $Texi2HTML::THISDOC{'documentdescription'} = $documentdescription;
-    $Texi2HTML::THISDOC{'copying'} = $copying_comment;
     $Texi2HTML::THISDOC{'destination_directory'} = $docu_rdir;
     $Texi2HTML::THISDOC{'authors'} = [] if 
(!defined($Texi2HTML::THISDOC{'authors'}));
     $Texi2HTML::THISDOC{'subtitles'} = [] if 
(!defined($Texi2HTML::THISDOC{'subtitles'}));
@@ -6298,6 +6321,8 @@
     $Texi2HTML::SIMPLE_TEXT{'Top'} = $top_simple_format;
     $Texi2HTML::SIMPLE_TEXT{'Index'} = 
$element_chapter_index->{'simple_format'} if (defined($element_chapter_index));
 
+# FIXME format copying_comment, documentdescrition here?
+    $Texi2HTML::THISDOC{'copying_comment'} = $copying_comment;
     # must be after toc_body, but before titlepage
     foreach my $element_tag ('contents', 'shortcontents')
     {
@@ -6375,7 +6400,7 @@
                     push @section_lines, $text;
                     $text = '';
                 }
-                $sec_num++ if ($sec2level{$tag} and ($tag ne 'top'));
+                $state{'sec_num'}++ if ($sec2level{$tag} and ($tag ne 'top'));
                 my $new_element;
                 my $current_element;
 
@@ -6776,7 +6801,7 @@
         if ($files{$element->{'file'}}->{'counter'})
         {# there are other elements in that page we are not on its foot
             $files{$element->{'file'}}->{'relative_foot_num'} 
-               = $relative_foot_num;
+               = $global_relative_foot_num;
             push @{$files{$element->{'file'}}->{'foot_lines'}},
                 @foot_lines;
         }
@@ -6788,7 +6813,7 @@
         }
         if ($new_element)
         {
-            $relative_foot_num = 
+            $global_relative_foot_num = 
                $files{$new_element->{'file'}}->{'relative_foot_num'};
         }
         @foot_lines = ();
@@ -7189,7 +7214,7 @@
     my $state = shift;
     my $line_nr = shift;
 
-    return '' if ($state->{'multiple_pass'});
+    return '' if ($state->{'region_pass'});
     $anchor = normalise_node($anchor);
     if (!exists($nodes{$anchor}) or !defined($nodes{$anchor}->{'id'}))
     {
@@ -7487,13 +7512,53 @@
     }
 }
 
+# FIXME we cannot go through the commands too 'often'. The error messages
+# are duplicated and global stuff is changed.
+# -> identify what is global
+# -> use local state
+sub do_special_region_lines($;$)
+{
+    my $region = shift;
+    my $state = shift;
+    if (!defined($state))
+    {
+        fill_state($state);
+        $state->{'outside_document'} = 1;
+    }
+    else
+    {
+        $region_initial_state{$region}->{'multiple_pass'}++;
+    }
+    return ('','') unless @{$region_lines{$region}};
+    my $new_state = duplicate_formatting_state($state);
+    foreach my $key (keys(%{$region_initial_state{$region}}))
+    {
+        $new_state->{$key} = $region_initial_state{$region}->{$key};
+    }
+    my $text = substitute_text($new_state, @{$region_lines{$region}});
+
+    $region_initial_state{$region}->{'region_pass'}++;
+
+    my $remove_texi_state = duplicate_formatting_state($state);
+    $remove_texi_state->{'remove_texi'} = 1;
+    foreach my $key (keys(%{$region_initial_state{$region}}))
+    {
+        $remove_texi_state->{$key} = $region_initial_state{$region}->{$key};
+    }
+    my $removed_texi = substitute_text($remove_texi_state, 
@{$region_lines{$region}});
+    $region_initial_state{$region}->{'region_pass'}++;
+    return ($text, $removed_texi);
+}
+
 sub do_insertcopying($)
 {
     my $state = shift;
-    return '' unless @{$region_lines{'copying'}};
-    my $insert_copying_state = duplicate_state($state);
-    $insert_copying_state->{'multiple_pass'} = 1;
-    return substitute_text($insert_copying_state, @{$region_lines{'copying'}});
+#    return '' unless @{$region_lines{'copying'}};
+#    my $insert_copying_state = duplicate_formatting_state($state);
+#    $insert_copying_state->{'multiple_pass'} = 1;
+#    return substitute_text($insert_copying_state, 
@{$region_lines{'copying'}});
+    my ($text, $comment) = do_special_region_lines('copying', $state);
+    return $text;
 }
 
 sub get_deff_index($$$)
@@ -7773,8 +7838,8 @@
         }
         my ($caption_lines, $shortcaption_lines) = 
&$Texi2HTML::Config::caption_shortcaption($state->{'float'});
         my ($caption_text, $shortcaption_text);
-        $caption_text = substitute_text(duplicate_state($state), 
@$caption_lines) if (defined($caption_lines));
-        $shortcaption_text = substitute_text(duplicate_state($state), 
@$shortcaption_lines) if (defined($shortcaption_lines));
+        $caption_text = substitute_text(duplicate_formatting_state($state), 
@$caption_lines) if (defined($caption_lines));
+        $shortcaption_text = 
substitute_text(duplicate_formatting_state($state), @$shortcaption_lines) if 
(defined($shortcaption_lines));
         add_prev($text, $stack, 
&$Texi2HTML::Config::float($format_ref->{'text'}, $state->{'float'}, 
$caption_text, $shortcaption_text));
         delete $state->{'float'};
     }
@@ -7931,7 +7996,7 @@
     my $file = $state->{'element'}->{'file'};
     my $node_name = normalise_node($menu_entry->{'node'});
 
-    my $substitution_state = duplicate_state($state);
+    my $substitution_state = duplicate_formatting_state($state);
     my $name = substitute_line($menu_entry->{'name'}, $substitution_state);
     my $node_formatted = substitute_line($menu_entry->{'node'}, 
$substitution_state);
 
@@ -8002,7 +8067,7 @@
 
     my $element = $menu_entry->{'menu_reference_element'};
 
-    return &$Texi2HTML::Config::menu_description($descr, 
duplicate_state($state),$element->{'text_nonumber'});
+    return &$Texi2HTML::Config::menu_description($descr, 
duplicate_formatting_state($state),$element->{'text_nonumber'});
 }
 
 sub do_xref($$$$)
@@ -8058,7 +8123,7 @@
     }
     
     my $i;
-    my $new_state = duplicate_state($state);
+    my $new_state = duplicate_formatting_state($state);
     $new_state->{'keep_texi'} = 0;
     $new_state->{'keep_nr'} = 0;
     for ($i = 0; $i < 5; $i++)
@@ -8200,9 +8265,9 @@
          }
          $text =~ s/ $//;
          $explanation_simple_format = simple_format($state, $text);
-         $explanation_text = substitute_line($text, duplicate_state($state));
+         $explanation_text = substitute_line($text, 
duplicate_formatting_state($state));
     }
-    return &$Texi2HTML::Config::acronym_like($command, $acronym_texi, 
substitute_line($acronym_texi, duplicate_state($state)), 
+    return &$Texi2HTML::Config::acronym_like($command, $acronym_texi, 
substitute_line($acronym_texi, duplicate_formatting_state($state)), 
        $with_explanation, $explanation_lines, $explanation_text, 
$explanation_simple_format);
 }
 
@@ -8278,7 +8343,7 @@
     $text_texi = undef if (defined($text_texi) and $text_texi=~/^\s*$/);
     if (defined($text_texi))
     {
-         $text = substitute_line($text_texi, duplicate_state($state));
+         $text = substitute_line($text_texi, 
duplicate_formatting_state($state));
          $text =~ s/\s*$//;
     }
     my $quotation_args = { 'text' => $text, 'text_texi' => $text_texi };
@@ -8307,36 +8372,48 @@
     my $args = shift;
     my $text = $args->[0];
     my $style_stack = shift;
-    my $state = shift;
+    my $doc_state = shift;
     my $line_nr = shift;
 
     $text .= "\n";
-    $foot_num++;
-    $relative_foot_num++;
-    my $docid  = "DOCF$foot_num";
-    my $footid = "FOOT$foot_num";
-    my $from_file = '';
-    if ($state->{'element'} and $Texi2HTML::Config::SPLIT and 
$Texi2HTML::Config::SEPARATED_FOOTNOTES)
+
+    my $foot_state = duplicate_state($doc_state);
+    fill_state($foot_state);
+
+    my ($foot_num, $relative_foot_num);
+    if (!$foot_state->{'region'})
     { 
-        $from_file = $state->{'element'}->{'file'};
+        $foot_num = \$global_foot_num;
+        $relative_foot_num = \$global_relative_foot_num;
     }
-    my %state;
-    initialise_state(\%state); 
-    if ($Texi2HTML::Config::SEPARATED_FOOTNOTES)
+    else
+    # FIXME when in multiple pass do more intelligent formatting
     {
-        $state{'element'} = $footnote_element;
+        $foot_num = \$doc_state->{'foot_num'};
+        $relative_foot_num = \$doc_state->{'relative_foot_num'};
     }
-    else
+    $$foot_num++;
+    $$relative_foot_num++;   
+ 
+    my $docid  = "DOCF$$foot_num";
+    my $footid = "FOOT$$foot_num";
+    my $from_file = '';
+    if ($doc_state->{'element'} and $Texi2HTML::Config::SPLIT and 
$Texi2HTML::Config::SEPARATED_FOOTNOTES)
+    { 
+        $from_file = $doc_state->{'element'}->{'file'};
+    }
+    
+    if ($Texi2HTML::Config::SEPARATED_FOOTNOTES)
     {
-        $state{'element'} = $state->{'element'};
+        $foot_state->{'element'} = $footnote_element;
     }
     my $file = '';
     $file = $docu_foot if ($Texi2HTML::Config::SPLIT and 
$Texi2HTML::Config::SEPARATED_FOOTNOTES);
     
     # FIXME use split_lines ? It seems to work like it is now ?
-    my @lines = substitute_text(\%state, map {$_ = $_."\n"} split (/\n/, 
$text));
-    my ($foot_lines, $foot_label) = &$Texi2HTML::Config::foot_line_and_ref 
($foot_num,
-         $relative_foot_num, $footid, $docid, $from_file, $file, 
address@hidden, $state);
+    my @lines = substitute_text($foot_state, map {$_ = $_."\n"} split (/\n/, 
$text));
+    my ($foot_lines, $foot_label) = 
&$Texi2HTML::Config::foot_line_and_ref($$foot_num,
+         $$relative_foot_num, $footid, $docid, $from_file, $file, 
address@hidden, $doc_state);
     push(@foot_lines, @{$foot_lines});
     return $foot_label;
 }
@@ -8388,17 +8465,31 @@
         $args[3], $args[4], $path_to_working_dir, $image);
 }
 
+# usefull if we want to duplicate only the global state, nothing related with
+# formatting
 sub duplicate_state($)
 {
     my $state = shift;
     my $new_state = { 'element' => $state->{'element'}, 
-           'preformatted' => $state->{'preformatted'}, 
-           'code_style' => $state->{'code_style'}, 
-           'keep_texi' => $state->{'keep_texi'}, 
-           'keep_nr' => $state->{'keep_nr'}, 
-           'preformatted_stack' => $state->{'preformatted_stack'},
-           'multiple_pass' => $state->{'multiple_pass'}
+         'multiple_pass' => $state->{'multiple_pass'},
+         'region_pass' => $state->{'region_pass'},
+         'region' => $state->{'region'},
+         'sec_num' => $state->{'sec_num'},
     };
+    return $new_state;
+}
+
+# duplicate global and formatting state.
+sub duplicate_formatting_state($)
+{
+    my $state = shift;
+    my $new_state = duplicate_state($state);
+
+    foreach my $format_key ('preformatted', 'code_style', 'keep_texi',
+          'keep_nr', 'preformatted_stack')
+    {
+        $new_state->{$format_key} = $state->{$format_key}; 
+    }
 # this is needed for preformatted
     my $command_stack = $state->{'command_stack'};
     $command_stack = [] if (!defined($command_stack));
@@ -8663,7 +8754,7 @@
     }
     else
     {
-        $state = duplicate_state($state);
+        $state = duplicate_formatting_state($state);
     }
     $state->{'remove_texi'} = 1;
     $state->{'simple_format'} = 1;
@@ -9391,8 +9482,8 @@
             echo_error ("Duplicate node for anchor found: $anchor", $line_nr);
             return '';
         }
-        $anchor_num++;
-        $nodes{$anchor} = { 'anchor' => 1, 'seen' => 1, 'texi' => $anchor, 
'id' => 'ANC' . $anchor_num};
+        $document_anchor_num++;
+        $nodes{$anchor} = { 'anchor' => 1, 'seen' => 1, 'texi' => $anchor, 
'id' => 'ANC' . $document_anchor_num};
         push @{$state->{'place'}}, $nodes{$anchor};
     }
     elsif ($cmd_ref->{'style'} eq 'footnote')
@@ -9651,25 +9742,25 @@
                 if (/^\s*(.*)$/)
                 {
                     my $name = $1;
-                    my $section_ref = new_section_heading($macro, $name, 
$state);
+                    my $heading_ref = new_section_heading($macro, $name, 
$state);
                     if ($state->{'place'} eq $no_element_associated_place)
                     {
-                        $section_ref->{'id'} = "SEC_hidden";
-                        $section_ref->{'sec_num'} = "hidden";
+                        $heading_ref->{'id'} = "SEC_hidden";
+                        $heading_ref->{'sec_num'} = "hidden";
                     }
                     else
                     {
-                        $head_num++;
-                        $section_ref->{'id'} = "HEAD$head_num";
-                        $section_ref->{'sec_num'} = $head_num;
+                        $document_head_num++;
+                        $heading_ref->{'id'} = "HEAD$document_head_num";
+                        $heading_ref->{'sec_num'} = $document_head_num;
                     }
-                    $section_ref->{'heading'} = 1;
-                    $section_ref->{'tag_level'} = $macro;
-                    $section_ref->{'number'} = '';
+                    $heading_ref->{'heading'} = 1;
+                    $heading_ref->{'tag_level'} = $macro;
+                    $heading_ref->{'number'} = '';
 
-                    $state->{'element'} = $section_ref;
-                    push @{$state->{'place'}}, $section_ref;
-                    $headings{$section_ref->{'sec_num'}} = $section_ref;
+                    $state->{'element'} = $heading_ref;
+                    push @{$state->{'place'}}, $heading_ref;
+                    $headings{$heading_ref->{'sec_num'}} = $heading_ref;
                 }
                 add_prev ($text, $stack, "address@hidden" .  $_);
                 last;
@@ -10374,11 +10465,13 @@
                          {
                               my $float_style = 
substitute_line(&$Texi2HTML::Config::listoffloats_float_style($arg, $float));
                               my $caption_lines = 
&$Texi2HTML::Config::listoffloats_caption($float);
-                              # we set 'multiple_pass' such that index entries
+                              # we set 'multiple_pass', 'region' and 
+                              # 'region_pass'such that index entries
                               # and anchors are not handled one more time;
                               # the caption has allready been formatted, 
                               # and these have been handled at the right place
-                              my $caption = substitute_text({ 'multiple_pass' 
=> 1 }, @$caption_lines);
+                              # FIXME footnotes?
+                              my $caption = substitute_text({ 'multiple_pass' 
=> 1, 'region' => 'listoffloats', 'region_pass' => 1 }, @$caption_lines);
                               push @listoffloats_entries, 
&$Texi2HTML::Config::listoffloats_entry($arg, $float, $float_style, $caption, 
href($float, $state->{'element'}->{'file'}));
                          }
                          add_prev($text, $stack, 
&$Texi2HTML::Config::listoffloats($arg, $style, address@hidden));
@@ -10554,16 +10647,18 @@
                      return;
                 }
                 elsif (defined($sec2level{$macro}))
-                {
+                { #FIXME  there is certainly more intelligent stuff to do
                     my $num;
-                    if ($state->{'multiple_pass'})
+                    if ($state->{'region'})
                     {
                         $num = "hidden";
+                        $state->{'head_num'}++;
+                        #$num = $state->{'head_num'};
                     }
                     else
                     {
-                        $head_num++;
-                        $num = $head_num;
+#                        $global_head_num++;
+                        $num = $global_head_num;
                     }
                     my $heading_element = $headings{$num};
                     add_prev($text, $stack, 
&$Texi2HTML::Config::heading_no_texi($heading_element, $macro, $_));
@@ -10579,14 +10674,16 @@
             {
                  #dump_stack($text, $stack, $state);
                  my $num;
-                 if ($state->{'multiple_pass'})
+                 if ($state->{'region'})
                  {
                     $num = "hidden";
+                     $state->{'head_num'}++;
+                     #$num = $state->{'head_num'};
                  }
                  else
                  {
-                     $head_num++;
-                     $num = $head_num;
+                     $global_head_num++;
+                     $num = $global_head_num;
                  }
                  my $heading_element = $headings{$num};
                  add_prev($text, $stack, 
&$Texi2HTML::Config::anchor($heading_element->{'id'}) . "\n");
@@ -12127,7 +12224,8 @@
     }
     else
     {
-        initialise_state($state);
+#print STDERR "FILL_STATE substitute_text ($state->{'preformatted'}): @_\n";
+        fill_state($state);
     }
     $state->{'spool'} = [];
     #print STDERR "SUBST_TEXT begin\n";
@@ -12145,6 +12243,7 @@
             $line = shift @_;
         }
         next unless (defined($line));
+        #{ my $p_line = $line; chomp($p_line); print STDERR "SUBST_TEXT 
$p_line\n"; }
         if ($state->{'structure'})
         {
             scan_structure ($line, \$text, address@hidden, $state);
@@ -12223,7 +12322,9 @@
     my $command = shift;
     my $state = shift;
     my $line_nr = shift;
-    return '' if ($state->{'multiple_pass'});
+    # index entries are not entered in special regions
+    return '' if ($state->{'region'});
+#    return '' if ($state->{'multiple_pass'} or $state->{'outside_document'});
     my $entry = shift @index_labels;
     if (!defined($entry))
     {
@@ -12404,32 +12505,27 @@
     &$handler;
 }
 
-if (@{$region_lines{'documentdescription'}} and 
(!defined($Texi2HTML::Config::DOCUMENT_DESCRIPTION)))
-{
-    my $documentdescription = 
remove_texi(@{$region_lines{'documentdescription'}}); 
-    my @documentdescription = split (/\n/, $documentdescription);
-    $Texi2HTML::Config::DOCUMENT_DESCRIPTION = shift @documentdescription;
-    chomp $Texi2HTML::Config::DOCUMENT_DESCRIPTION;
-    foreach my $line (@documentdescription)
-    {
-        chomp $line;
-        $Texi2HTML::Config::DOCUMENT_DESCRIPTION .= ' ' . $line;
-    }
-}
-$sec_num = 0;
-$head_num = 0;
+# FIXME we do the regions formatting here, even if they never appear.
+# so we should be very carefull to take into accout 'outside_document' to
+# avoid messing with information that has to be set in the main document.
+# also the error messages will appear even though the corresponding 
+# texinfo is never used.
+# also the titlepage should be done here, and/or these should be moved
+# down in pass_text to have more information available when formatted,
+# like for titlepage.
+my ($region_text, $region_no_texi);
+($region_text, $region_no_texi) = 
do_special_region_lines('documentdescription');
+$documentdescription = 
&$Texi2HTML::Config::documentdescription($region_lines{'documentdescription'},$region_text,
 $region_no_texi);
+
 # do copyright notice inserted in comment at the beginning of the files
-if (@{$region_lines{'copying'}})
-{
-    $copying_comment = 
&$Texi2HTML::Config::copying_comment($region_lines{'copying'});
-}
+($region_text, $region_no_texi) = do_special_region_lines('copying');
+$copying_comment = 
&$Texi2HTML::Config::copying_comment($region_lines{'copying'}, $region_text, 
$region_no_texi);
 &$Texi2HTML::Config::toc_body(address@hidden);
-$sec_num = 0;
-$head_num = 0;
 
 
 &$Texi2HTML::Config::css_lines(address@hidden, address@hidden);
 
+
 pass_text();
 print STDERR "BUG: " . scalar(@index_labels) . " index entries pending\n" 
    if (scalar(@index_labels));

Index: Tests/formatting_res/clean.html
===================================================================
RCS file: /cvsroot/texi2html/texi2html/Tests/formatting_res/clean.html,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -b -r1.29 -r1.30
--- Tests/formatting_res/clean.html     3 Oct 2007 09:34:38 -0000       1.29
+++ Tests/formatting_res/clean.html     5 Oct 2007 12:10:56 -0000       1.30
@@ -2287,6 +2287,10 @@
 <p>in footnote
 </p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
 <p>in footnote2
+</p><h3><a name="FOOT1" href="#DOCF1">(1)</a></h3>
+<p>in footnote
+</p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
+<p>in footnote2
 </p><h3><a name="FOOT3" href="#DOCF3">(3)</a></h3>
 <p>in footnote
 </p><h3><a name="FOOT4" href="#DOCF4">(4)</a></h3>

Index: Tests/formatting_res/def_cmds.2
===================================================================
RCS file: /cvsroot/texi2html/texi2html/Tests/formatting_res/def_cmds.2,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- Tests/formatting_res/def_cmds.2     17 May 2006 01:51:46 -0000      1.1
+++ Tests/formatting_res/def_cmds.2     5 Oct 2007 12:10:57 -0000       1.2
@@ -24,6 +24,14 @@
 ** Empty index entry for @deffn (l. 145 in mymacro)
 *** '}' without opening '{' before:  
 *** '}' without opening '{' before:  after 
+*** '{' without macro. Before:  
+*** '{' without macro. Before:  and after 
+*** '{' without macro. Before:  @
+  more args 
+*** '}' without opening '{' before:  @
+  more args 
+*** '}' without opening '{' before:  
+*** '}' without opening '{' before:  after 
 *** '}' without opening '{' before:  @ 
 *** '}' without opening '{' before:  
 *** '}' without opening '{' before:  after 

Index: Tests/formatting_res/exotic_formatting.2
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/formatting_res/exotic_formatting.2,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -b -r1.28 -r1.29
--- Tests/formatting_res/exotic_formatting.2    30 Sep 2007 12:47:15 -0000      
1.28
+++ Tests/formatting_res/exotic_formatting.2    5 Oct 2007 12:10:57 -0000       
1.29
@@ -26,6 +26,27 @@
 ** `Top' is up for `chapter2', but has no menu entry for this node
 ** Unknown command address@hidden' (left as is) 
 ** TeX requires {} 
+** no image file for f-ile, (using f-ile.jpg) 
+*** no file argument for @image 
+*** no file argument for @image 
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _" 
%@:}.jpg) 
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden 
ext} address@hidden) 
+*** '}' without opening '{' before:  
+*** '}' without opening '{' before:  after 
+*** '{' without macro. Before:  
+*** '{' without macro. Before:  and after 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+** Unknown command address@hidden' (left as is) 
+** TeX requires {} 
 *** '}' without opening '{' before:  
 *** '}' without opening '{' before:  after 
 *** Unknown node in menu entry `description' (l. 11)

Index: Tests/formatting_res/exotic_formatting.html
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/formatting_res/exotic_formatting.html,v
retrieving revision 1.64
retrieving revision 1.65
diff -u -b -r1.64 -r1.65
--- Tests/formatting_res/exotic_formatting.html 3 Oct 2007 09:34:38 -0000       
1.64
+++ Tests/formatting_res/exotic_formatting.html 5 Oct 2007 12:10:57 -0000       
1.65
@@ -2388,6 +2388,10 @@
 <p>in footnote
 </p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
 <p>in footnote2
+</p><h3><a name="FOOT1" href="#DOCF1">(1)</a></h3>
+<p>in footnote
+</p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
+<p>in footnote2
 </p><h3><a name="FOOT3" href="#DOCF3">(3)</a></h3>
 <p>in footnote
 </p><h3><a name="FOOT4" href="#DOCF4">(4)</a></h3>

Index: Tests/formatting_res/formatting.2
===================================================================
RCS file: /cvsroot/texi2html/texi2html/Tests/formatting_res/formatting.2,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -b -r1.28 -r1.29
--- Tests/formatting_res/formatting.2   30 Sep 2007 12:47:16 -0000      1.28
+++ Tests/formatting_res/formatting.2   5 Oct 2007 12:10:57 -0000       1.29
@@ -26,6 +26,27 @@
 ** `Top' is up for `chapter2', but has no menu entry for this node
 ** Unknown command address@hidden' (left as is) 
 ** TeX requires {} 
+** no image file for f-ile, (using f-ile.jpg) 
+*** no file argument for @image 
+*** no file argument for @image 
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _" 
%@:}.jpg) 
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden 
ext} address@hidden) 
+*** '}' without opening '{' before:  
+*** '}' without opening '{' before:  after 
+*** '{' without macro. Before:  
+*** '{' without macro. Before:  and after 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+** Unknown command address@hidden' (left as is) 
+** TeX requires {} 
 *** '}' without opening '{' before:  
 *** '}' without opening '{' before:  after 
 *** Unknown node in menu entry `description' (l. 11)

Index: Tests/formatting_res/formatting.html
===================================================================
RCS file: /cvsroot/texi2html/texi2html/Tests/formatting_res/formatting.html,v
retrieving revision 1.65
retrieving revision 1.66
diff -u -b -r1.65 -r1.66
--- Tests/formatting_res/formatting.html        3 Oct 2007 09:34:38 -0000       
1.65
+++ Tests/formatting_res/formatting.html        5 Oct 2007 12:10:57 -0000       
1.66
@@ -2412,6 +2412,10 @@
 <p>in footnote
 </p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
 <p>in footnote2
+</p><h3><a name="FOOT1" href="#DOCF1">(1)</a></h3>
+<p>in footnote
+</p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
+<p>in footnote2
 </p><h3><a name="FOOT3" href="#DOCF3">(3)</a></h3>
 <p>in footnote
 </p><h3><a name="FOOT4" href="#DOCF4">(4)</a></h3>

Index: Tests/formatting_res/formatting_html32.2
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/formatting_res/formatting_html32.2,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- Tests/formatting_res/formatting_html32.2    30 Sep 2007 12:47:16 -0000      
1.1
+++ Tests/formatting_res/formatting_html32.2    5 Oct 2007 12:10:57 -0000       
1.2
@@ -26,6 +26,27 @@
 ** `Top' is up for `chapter2', but has no menu entry for this node
 ** Unknown command address@hidden' (left as is) 
 ** TeX requires {} 
+** no image file for f-ile, (using f-ile.jpg) 
+*** no file argument for @image 
+*** no file argument for @image 
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _" 
%@:}.jpg) 
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden 
ext} address@hidden) 
+*** '}' without opening '{' before:  
+*** '}' without opening '{' before:  after 
+*** '{' without macro. Before:  
+*** '{' without macro. Before:  and after 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+** Unknown command address@hidden' (left as is) 
+** TeX requires {} 
 *** '}' without opening '{' before:  
 *** '}' without opening '{' before:  after 
 *** Unknown node in menu entry `description' (l. 11)

Index: Tests/formatting_res/formatting_html32.html
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/formatting_res/formatting_html32.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- Tests/formatting_res/formatting_html32.html 3 Oct 2007 07:39:31 -0000       
1.2
+++ Tests/formatting_res/formatting_html32.html 5 Oct 2007 12:10:57 -0000       
1.3
@@ -2396,6 +2396,10 @@
 <p>in footnote
 </p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
 <p>in footnote2
+</p><h3><a name="FOOT1" href="#DOCF1">(1)</a></h3>
+<p>in footnote
+</p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
+<p>in footnote2
 </p><h3><a name="FOOT3" href="#DOCF3">(3)</a></h3>
 <p>in footnote
 </p><h3><a name="FOOT4" href="#DOCF4">(4)</a></h3>

Index: Tests/formatting_res/fr_formatting.2
===================================================================
RCS file: /cvsroot/texi2html/texi2html/Tests/formatting_res/fr_formatting.2,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -b -r1.27 -r1.28
--- Tests/formatting_res/fr_formatting.2        30 Sep 2007 12:47:17 -0000      
1.27
+++ Tests/formatting_res/fr_formatting.2        5 Oct 2007 12:10:57 -0000       
1.28
@@ -26,6 +26,27 @@
 ** `Top' is up for `chapter2', but has no menu entry for this node
 ** Unknown command address@hidden' (left as is) 
 ** TeX requires {} 
+** no image file for f-ile, (using f-ile.jpg) 
+*** no file argument for @image 
+*** no file argument for @image 
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _" 
%@:}.jpg) 
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden 
ext} address@hidden) 
+*** '}' without opening '{' before:  
+*** '}' without opening '{' before:  after 
+*** '{' without macro. Before:  
+*** '{' without macro. Before:  and after 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+** Unknown command address@hidden' (left as is) 
+** TeX requires {} 
 *** '}' without opening '{' before:  
 *** '}' without opening '{' before:  after 
 *** Unknown node in menu entry `description' (l. 11)

Index: Tests/formatting_res/fr_formatting.html
===================================================================
RCS file: /cvsroot/texi2html/texi2html/Tests/formatting_res/fr_formatting.html,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -b -r1.58 -r1.59
--- Tests/formatting_res/fr_formatting.html     3 Oct 2007 09:34:38 -0000       
1.58
+++ Tests/formatting_res/fr_formatting.html     5 Oct 2007 12:10:57 -0000       
1.59
@@ -2412,6 +2412,10 @@
 <p>in footnote
 </p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
 <p>in footnote2
+</p><h3><a name="FOOT1" href="#DOCF1">(1)</a></h3>
+<p>in footnote
+</p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
+<p>in footnote2
 </p><h3><a name="FOOT3" href="#DOCF3">(3)</a></h3>
 <p>in footnote
 </p><h3><a name="FOOT4" href="#DOCF4">(4)</a></h3>

Index: Tests/formatting_res/icons_fr_formatting.2
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/formatting_res/icons_fr_formatting.2,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- Tests/formatting_res/icons_fr_formatting.2  30 Sep 2007 12:47:17 -0000      
1.8
+++ Tests/formatting_res/icons_fr_formatting.2  5 Oct 2007 12:10:57 -0000       
1.9
@@ -26,6 +26,27 @@
 ** `Top' is up for `chapter2', but has no menu entry for this node
 ** Unknown command address@hidden' (left as is) 
 ** TeX requires {} 
+** no image file for f-ile, (using f-ile.jpg) 
+*** no file argument for @image 
+*** no file argument for @image 
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _" 
%@:}.jpg) 
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden 
ext} address@hidden) 
+*** '}' without opening '{' before:  
+*** '}' without opening '{' before:  after 
+*** '{' without macro. Before:  
+*** '{' without macro. Before:  and after 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+** Unknown command address@hidden' (left as is) 
+** TeX requires {} 
 *** '}' without opening '{' before:  
 *** '}' without opening '{' before:  after 
 *** Unknown node in menu entry `description' (l. 11)

Index: Tests/formatting_res/icons_fr_formatting.html
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/formatting_res/icons_fr_formatting.html,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -b -r1.20 -r1.21
--- Tests/formatting_res/icons_fr_formatting.html       3 Oct 2007 09:34:38 
-0000       1.20
+++ Tests/formatting_res/icons_fr_formatting.html       5 Oct 2007 12:10:57 
-0000       1.21
@@ -2412,6 +2412,10 @@
 <p>in footnote
 </p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
 <p>in footnote2
+</p><h3><a name="FOOT1" href="#DOCF1">(1)</a></h3>
+<p>in footnote
+</p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
+<p>in footnote2
 </p><h3><a name="FOOT3" href="#DOCF3">(3)</a></h3>
 <p>in footnote
 </p><h3><a name="FOOT4" href="#DOCF4">(4)</a></h3>

Index: Tests/formatting_res/to_utf8_formatting.2
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/formatting_res/to_utf8_formatting.2,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- Tests/formatting_res/to_utf8_formatting.2   30 Sep 2007 12:47:18 -0000      
1.7
+++ Tests/formatting_res/to_utf8_formatting.2   5 Oct 2007 12:10:58 -0000       
1.8
@@ -26,6 +26,27 @@
 ** `Top' is up for `chapter2', but has no menu entry for this node
 ** Unknown command address@hidden' (left as is) 
 ** TeX requires {} 
+** no image file for f-ile, (using f-ile.jpg) 
+*** no file argument for @image 
+*** no file argument for @image 
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _" 
%@:}.jpg) 
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden 
ext} address@hidden) 
+*** '}' without opening '{' before:  
+*** '}' without opening '{' before:  after 
+*** '{' without macro. Before:  
+*** '{' without macro. Before:  and after 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+** Unknown command address@hidden' (left as is) 
+** TeX requires {} 
 *** '}' without opening '{' before:  
 *** '}' without opening '{' before:  after 
 *** Unknown node in menu entry `description' (l. 11)

Index: Tests/formatting_res/to_utf8_formatting.html
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/formatting_res/to_utf8_formatting.html,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -b -r1.13 -r1.14
--- Tests/formatting_res/to_utf8_formatting.html        3 Oct 2007 07:39:32 
-0000       1.13
+++ Tests/formatting_res/to_utf8_formatting.html        5 Oct 2007 12:10:58 
-0000       1.14
@@ -2412,6 +2412,10 @@
 <p>in footnote
 </p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
 <p>in footnote2
+</p><h3><a name="FOOT1" href="#DOCF1">(1)</a></h3>
+<p>in footnote
+</p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
+<p>in footnote2
 </p><h3><a name="FOOT3" href="#DOCF3">(3)</a></h3>
 <p>in footnote
 </p><h3><a name="FOOT4" href="#DOCF4">(4)</a></h3>

Index: Tests/formatting_res/weird_quotes_formatting.2
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/formatting_res/weird_quotes_formatting.2,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- Tests/formatting_res/weird_quotes_formatting.2      30 Sep 2007 12:47:19 
-0000      1.6
+++ Tests/formatting_res/weird_quotes_formatting.2      5 Oct 2007 12:10:58 
-0000       1.7
@@ -26,6 +26,27 @@
 ** `Top' is up for `chapter2', but has no menu entry for this node
 ** Unknown command address@hidden' (left as is) 
 ** TeX requires {} 
+** no image file for f-ile, (using f-ile.jpg) 
+*** no file argument for @image 
+*** no file argument for @image 
+** no image file for address@hidden:jk _" %@:}, (using address@hidden:jk _" 
%@:}.jpg) 
+** no image file for @file{f--ile}@@@., (using @file{f--ile}@@@address@hidden 
ext} address@hidden) 
+*** '}' without opening '{' before:  
+*** '}' without opening '{' before:  after 
+*** '{' without macro. Before:  
+*** '{' without macro. Before:  and after 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `node' in @ref 
+*** Undefined node `' in @ref 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+*** Need a node name for @inforef 
+** Unknown command address@hidden' (left as is) 
+** TeX requires {} 
 *** '}' without opening '{' before:  
 *** '}' without opening '{' before:  after 
 *** Unknown node in menu entry `description' (l. 11)

Index: Tests/formatting_res/weird_quotes_formatting.html
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/formatting_res/weird_quotes_formatting.html,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -b -r1.13 -r1.14
--- Tests/formatting_res/weird_quotes_formatting.html   3 Oct 2007 09:34:39 
-0000       1.13
+++ Tests/formatting_res/weird_quotes_formatting.html   5 Oct 2007 12:10:58 
-0000       1.14
@@ -2412,6 +2412,10 @@
 <p>in footnote
 </p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
 <p>in footnote2
+</p><h3><a name="FOOT1" href="#DOCF1">(1)</a></h3>
+<p>in footnote
+</p><h3><a name="FOOT2" href="#DOCF2">(2)</a></h3>
+<p>in footnote2
 </p><h3><a name="FOOT3" href="#DOCF3">(3)</a></h3>
 <p>in footnote
 </p><h3><a name="FOOT4" href="#DOCF4">(4)</a></h3>

Index: Tests/index_table_res/index_special_region_1.html
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/index_table_res/index_special_region_1.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- Tests/index_table_res/index_special_region_1.html   5 Feb 2007 15:30:23 
-0000       1.2
+++ Tests/index_table_res/index_special_region_1.html   5 Oct 2007 12:10:58 
-0000       1.3
@@ -81,7 +81,7 @@
 
 
 <p>This is a test manual, trivially and explicitly in the public
-domain<a name="DOCF2" href="index_special_region_fot.html#FOOT2">(2)</a>.
+domain<a name="DOCF1" href="index_special_region_fot.html#FOOT1">(1)</a>.
 </p>
 
 

Index: Tests/index_table_res/index_special_region_fot.html
===================================================================
RCS file: 
/cvsroot/texi2html/texi2html/Tests/index_table_res/index_special_region_fot.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- Tests/index_table_res/index_special_region_fot.html 5 Feb 2007 15:30:23 
-0000       1.2
+++ Tests/index_table_res/index_special_region_fot.html 5 Oct 2007 12:10:58 
-0000       1.3
@@ -60,8 +60,11 @@
 <h3><a name="FOOT1" href="index_special_region.html#DOCF1">(1)</a></h3>
 <p><a name="Public-domain-reference"></a> The public
 domain is something you should allready know
-</p><h3><a name="FOOT2" href="index_special_region_1.html#DOCF2">(2)</a></h3>
-<p><a name="Public-domain-reference"></a> The public
+</p><h3><a name="FOOT1" href="index_special_region.html#DOCF1">(1)</a></h3>
+<p> The public
+domain is something you should allready know
+</p><h3><a name="FOOT1" href="index_special_region_1.html#DOCF1">(1)</a></h3>
+<p> The public
 domain is something you should allready know
 </p><hr size="1">
 <table cellpadding="1" cellspacing="1" border="0">

Index: doc/texi2html.html
===================================================================
RCS file: /cvsroot/texi2html/texi2html/doc/texi2html.html,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -b -r1.58 -r1.59
--- doc/texi2html.html  4 Oct 2007 11:48:24 -0000       1.58
+++ doc/texi2html.html  5 Oct 2007 12:10:58 -0000       1.59
@@ -31,7 +31,7 @@
 permission notice may be stated in a translation approved
 by the Free Software Foundation.
  -->
-<!-- Created on October, 4 2007 by texi2html 1.79 -->
+<!-- Created on October, 5 2007 by texi2html 1.79 -->
 <!--
 Written by: Lionel Cons <address@hidden> (original author)
             Karl Berry  <address@hidden>
@@ -2083,7 +2083,7 @@
 <dt> <code>authors</code></dt>
 <dd><p>A reference on an array containing each author set by 
<code>@author</code>.
 </p></dd>
-<dt> <code>copying</code></dt>
+<dt> <code>copying_comment</code></dt>
 <dd><p>Text appearing in <code>@copying</code> with all the texinfo commands 
removed,
 put in comments.
 </p></dd>
@@ -6197,6 +6197,8 @@
 <li> what was done in the beginning of the $print_section 
 function reference is now done in $print_element_header.
 </li><li> there is a new argument for $normal_text.
+</li><li> the <code>copying</code> key of %Texi2HTML::THISDOC is now called
+<code>copying_comment</code>.
 </li></ul>
 </li><li> API changes between 1.76 and 1.78: 
 <ul>
@@ -7114,7 +7116,7 @@
 </tr></table>
 <h1>About This Document</h1>
 <p>
-  This document was generated by <em>Patrice Dumas</em> on <em>October, 4 
2007</em> using <a href="http://www.nongnu.org/texi2html/";><em>texi2html 
1.79</em></a>.
+  This document was generated by <em>Patrice Dumas</em> on <em>October, 5 
2007</em> using <a href="http://www.nongnu.org/texi2html/";><em>texi2html 
1.79</em></a>.
 </p>
 <p>
   The buttons in the navigation panels have the following meaning:
@@ -7216,7 +7218,7 @@
 <hr size="1">
 <p>
  <font size="-1">
-  This document was generated by <em>Patrice Dumas</em> on <em>October, 4 
2007</em> using <a href="http://www.nongnu.org/texi2html/";><em>texi2html 
1.79</em></a>.
+  This document was generated by <em>Patrice Dumas</em> on <em>October, 5 
2007</em> using <a href="http://www.nongnu.org/texi2html/";><em>texi2html 
1.79</em></a>.
  </font>
  <br>
 

Index: doc/texi2html.texi
===================================================================
RCS file: /cvsroot/texi2html/texi2html/doc/texi2html.texi,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -b -r1.58 -r1.59
--- doc/texi2html.texi  3 Oct 2007 07:39:33 -0000       1.58
+++ doc/texi2html.texi  5 Oct 2007 12:10:58 -0000       1.59
@@ -1414,7 +1414,7 @@
 Authors list set by @code{@@author}.
 @item authors
 A reference on an array containing each author set by @code{@@author}.
address@hidden copying
address@hidden copying_comment
 Text appearing in @code{@@copying} with all the texinfo commands removed,
 put in comments.
 @item program
@@ -3986,6 +3986,8 @@
 @item what was done in the beginning of the $print_section 
 function reference is now done in $print_element_header.
 @item there is a new argument for $normal_text.
address@hidden the @code{copying} key of %Texi2HTML::THISDOC is now called
address@hidden
 @end itemize
 @item API changes between 1.76 and 1.78: 
 @itemize @bullet

Index: examples/roff.init
===================================================================
RCS file: /cvsroot/texi2html/texi2html/examples/roff.init,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- examples/roff.init  3 Oct 2007 07:39:33 -0000       1.14
+++ examples/roff.init  5 Oct 2007 12:10:59 -0000       1.15
@@ -34,7 +34,7 @@
 $AFTER_BODY_OPEN
 
 EOT
-    print $fh $Texi2HTML::THISDOC{'copying'} . "\n";
+    print $fh $Texi2HTML::THISDOC{'copying_comment'} . "\n";
     print $fh "" . &$comment("Created on $Texi2HTML::THISDOC{today} by 
$Texi2HTML::THISDOC{program}\n");
     print $fh "" . &$comment($Texi2HTML::THISDOC{program_authors});
     print $fh ".ds St " . protect_spaces($Texi2HTML::THISDOC{'title'}) . "\n";




reply via email to

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