texinfo-commits
[Top][All Lists]
Advanced

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

texinfo/makeinfo files.c,1.11,1.12 index.c,1.11,1.12 makeinfo.c,1.40,1.4


From: dirt
Subject: texinfo/makeinfo files.c,1.11,1.12 index.c,1.11,1.12 makeinfo.c,1.40,1.41 node.c,1.14,1.15 files.h,1.4,1.5 makeinfo.h,1.4,1.5
Date: Tue, 3 Feb 2004 13:16:01 +0100

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

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

        * makeinfo/makeinfo.c (flush_output): increment node_line_number too.

        * makeinfo/makeinfo.h: new variable node_line_number to hold the last
        output line number the current node.

        * makeinfo/nodes.c (cm_node): reset node_line_number just before the
        node start cookie.

        * makeinfo/files.h: new node member in DELAYED_WRITE struct.
        * makeinfo/files.c (register_delayed_write): save current node name if
        there's one.
        (handle_delayed_writes): adjust line numbers in indices only if the
        output is plaintext, or the index entry appears in the changed node.

        * makeinfo/index.c (index_add_arg, cm_printindex): use
        node_line_number instead of output_line_number if the output is an
        Info file.



Index: files.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/files.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** files.c     31 Jan 2004 13:46:15 -0000      1.11
--- files.c     3 Feb 2004 12:15:59 -0000       1.12
***************
*** 680,683 ****
--- 680,684 ----
    new->position = output_position;
    new->calling_line = line_number;
+   new->node = current_node ? xstrdup (current_node): "";
    new->next = delayed_writes;
    delayed_writes = new;
***************
*** 768,772 ****
                INDEX_ELT *index;
                for (index = index_list (name); index; index = index->next)
!                 if (index->defining_line > temp->calling_line)
                    index->output_line += line_number_shift_amount;
              }
--- 769,774 ----
                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;
              }

Index: index.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/index.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** index.c     23 Jan 2004 15:54:54 -0000      1.11
--- index.c     3 Feb 2004 12:15:59 -0000       1.12
***************
*** 192,196 ****
        new->code = tem->code;
        new->defining_line = line_number - 1;
!       new->output_line = output_line_number;
        /* We need to make a copy since input_filename may point to
           something that goes away, for example, inside a macro.
--- 192,196 ----
        new->code = tem->code;
        new->defining_line = line_number - 1;
!       new->output_line = no_headers ? output_line_number : node_line_number;
        /* We need to make a copy since input_filename may point to
           something that goes away, for example, inside a macro.
***************
*** 737,742 ****
        {
          char *max_output_line_number = (char *) xmalloc (25 * sizeof (char));
!         snprintf (max_output_line_number, 25 * sizeof (char), "%d",
!             output_line_number);
          output_line_number_len = strlen (max_output_line_number);
          free (max_output_line_number);
--- 737,753 ----
        {
          char *max_output_line_number = (char *) xmalloc (25 * sizeof (char));
! 
!         if (no_headers)
!           snprintf (max_output_line_number, 25 * sizeof (char), "%d",
!               output_line_number);
!         else
!           {
!             INDEX_ELT *tmp_entry = index;
!             unsigned tmp = 0;
!             for (tmp_entry = index; tmp_entry; tmp_entry = tmp_entry->next)
!               tmp = tmp_entry->output_line > tmp ? tmp_entry->output_line : 
tmp;
!             snprintf (max_output_line_number, 25 * sizeof (char), "%d", tmp);
!           }
! 
          output_line_number_len = strlen (max_output_line_number);
          free (max_output_line_number);

Index: makeinfo.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/makeinfo.c,v
retrieving revision 1.40
retrieving revision 1.41
diff -C2 -d -r1.40 -r1.41
*** makeinfo.c  2 Feb 2004 14:40:43 -0000       1.40
--- makeinfo.c  3 Feb 2004 12:15:59 -0000       1.41
***************
*** 2935,2939 ****
      {
        if (output_paragraph[i] == '\n')
!         output_line_number++;
  
        /* If we turned on the 8th bit for a space inside @w, turn it
--- 2935,2942 ----
      {
        if (output_paragraph[i] == '\n')
!         {
!           output_line_number++;
!           node_line_number++;
!         }
  
        /* If we turned on the 8th bit for a space inside @w, turn it

Index: node.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/node.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** node.c      13 Jan 2004 18:43:01 -0000      1.14
--- node.c      3 Feb 2004 12:15:59 -0000       1.15
***************
*** 616,619 ****
--- 616,623 ----
      remember_itext (input_text, input_text_offset);
  
+   /* Reset the line number in each node for Info output, so that
+      index entries will save the line numbers of parent node.  */
+   node_line_number = 0;
+ 
    no_indent = 1;
    if (xml)

Index: files.h
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/files.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** files.h     23 Jan 2004 15:58:35 -0000      1.4
--- files.h     3 Feb 2004 12:15:59 -0000       1.5
***************
*** 51,54 ****
--- 51,55 ----
    char *filename;
    char *input_filename;
+   char *node;
    int position;
    int calling_line;

Index: makeinfo.h
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/makeinfo.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** makeinfo.h  24 Jan 2004 15:58:10 -0000      1.4
--- makeinfo.h  3 Feb 2004 12:15:59 -0000       1.5
***************
*** 64,67 ****
--- 64,68 ----
  /* Number of lines in the output.  */
  DECLARE (int, output_line_number, 1);
+ DECLARE (int, node_line_number, 0);
  
  /* The offset into OUTPUT_PARAGRAPH where we have a meta character



reply via email to

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