texinfo-commits
[Top][All Lists]
Advanced

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

texinfo/makeinfo files.c,1.14,1.15 files.h,1.6,1.7 index.c,1.17,1.18 ind


From: dirt
Subject: texinfo/makeinfo files.c,1.14,1.15 files.h,1.6,1.7 index.c,1.17,1.18 index.h,1.5,1.6 node.c,1.17,1.18 node.h,1.3,1.4
Date: Sat, 28 Feb 2004 11:42:53 +0100

Update of /cvsroot/texinfo/texinfo/makeinfo
In directory sheep:/tmp/cvs-serv12558/makeinfo

Modified Files:
        files.c files.h index.c index.h node.c node.h 
Log Message:
2004-02-28  Alper Ersoy  <address@hidden>

        * makeinfo/files.h: new members node_order and index_order in
        DELAYED_WRITE struct.

        * makeinfo/files.c (register_delayed_write): save current node and
        index order.
        (handle_delayed_writes): update tag_table positions and index line
        numbers by comparing orders, not line numbers they are defined.

        * makeinfo/index.c: made index_counter not static and ...
        * makeinfo/index.h: extern.

        * makeinfo/node.h: new member order in TAG_ENTRY struct.

        * makeinfo/node.c (cm_node): keep the order of the node entry.



Index: files.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/files.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** files.c     13 Feb 2004 22:01:38 -0000      1.14
--- files.c     28 Feb 2004 10:42:50 -0000      1.15
***************
*** 663,666 ****
--- 663,670 ----
    new->calling_line = line_number;
    new->node = current_node ? xstrdup (current_node): "";
+ 
+   new->node_order = node_order;
+   new->index_order = index_counter;
+ 
    new->next = delayed_writes;
    delayed_writes = new;
***************
*** 735,744 ****
        /* Update positions in tag table for nodes that are defined after
           the line this delayed write is registered.  */
!       {
!         TAG_ENTRY *node;
!         for (node = tag_table; node; node = node->next_ent)
!           if (node->line_no > temp->calling_line)
!             node->position += position_shift_amount;
!       }
  
        /* Something similar for the line numbers in all of the defined
--- 739,749 ----
        /* Update positions in tag table for nodes that are defined after
           the line this delayed write is registered.  */
!       if (!html && !xml)
!         {
!           TAG_ENTRY *node;
!           for (node = tag_table; node; node = node->next_ent)
!             if (node->order > temp->node_order)
!               node->position += position_shift_amount;
!         }
  
        /* Something similar for the line numbers in all of the defined
***************
*** 752,757 ****
                INDEX_ELT *index;
                for (index = index_list (name); index; index = index->next)
!                 if ((!no_headers || STREQ (index->node, temp->node))
!                     && index->defining_line > temp->calling_line)
                    index->output_line += line_number_shift_amount;
              }
--- 757,762 ----
                INDEX_ELT *index;
                for (index = index_list (name); index; index = index->next)
!                 if ((no_headers || STREQ (index->node, temp->node))
!                     && index->entry_number > temp->index_order)
                    index->output_line += line_number_shift_amount;
              }

Index: files.h
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/files.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** files.h     13 Feb 2004 22:01:38 -0000      1.6
--- files.h     28 Feb 2004 10:42:50 -0000      1.7
***************
*** 61,64 ****
--- 61,67 ----
    int position;
    int calling_line;
+ 
+   int node_order;
+   int index_order;
  } DELAYED_WRITE;
  

Index: index.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/index.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -d -r1.17 -r1.18
*** index.c     26 Feb 2004 00:58:44 -0000      1.17
--- index.c     28 Feb 2004 10:42:50 -0000      1.18
***************
*** 39,42 ****
--- 39,45 ----
  int defined_indices = 0;
  
+ /* This is the order of the index.  */
+ int index_counter = 0;
+ 
  /* Stuff for defining commands on the fly. */
  COMMAND **user_command_array = NULL;
***************
*** 135,139 ****
  }
  
- static int index_counter = 0;
  /* Add the arguments to the current index command to the index NAME.
     html fixxme generate specific html anchor */
--- 138,141 ----

Index: index.h
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/index.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** index.h     23 Feb 2004 16:48:48 -0000      1.5
--- index.h     28 Feb 2004 10:42:50 -0000      1.6
***************
*** 87,90 ****
--- 87,91 ----
  extern int defined_indices;
  extern int printing_index;
+ extern int index_counter;
  
  INDEX_ELT *index_list (char *name);

Index: node.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/node.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -d -r1.17 -r1.18
*** node.c      20 Feb 2004 12:48:21 -0000      1.17
--- node.c      28 Feb 2004 10:42:50 -0000      1.18
***************
*** 37,40 ****
--- 37,41 ----
  TAG_ENTRY *tag_table = NULL;
  int node_number = -1;
+ int node_order = 0;
  int current_section = 0;
  int outstanding_node = 0;
***************
*** 1039,1042 ****
--- 1040,1047 ----
    if (current_node && STREQ (current_node, "Top"))
      top_node_seen = 1;
+ 
+   /* Increment the order counter, and save it.  */
+   node_order++;
+   tag_table->order = node_order;
  
    filling_enabled = 1;

Index: node.h
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/node.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** node.h      13 Feb 2004 22:01:39 -0000      1.3
--- node.h      28 Feb 2004 10:42:50 -0000      1.4
***************
*** 42,45 ****
--- 42,46 ----
                             splitting -- from use+define order, not just
                             define. */
+   int order;            /* The order of the tag, starting from zero.  */
    char *html_fname;   /* The HTML file to which this node is written
                           (non-NULL only for HTML splitting).  */
***************
*** 87,90 ****
--- 88,94 ----
  /* Counter for setting node_ref.number; zero is Top. */
  extern int node_number;
+ 
+ /* Node order counter.  */
+ extern int node_order;
  
  /* The current node's section level. */



reply via email to

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