[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
texinfo/makeinfo xml.c,1.32,1.33
From: |
dirt |
Subject: |
texinfo/makeinfo xml.c,1.32,1.33 |
Date: |
Tue, 24 Feb 2004 03:35:19 +0100 |
Update of /cvsroot/texinfo/texinfo/makeinfo
In directory sheep:/tmp/cvs-serv28075/makeinfo
Modified Files:
xml.c
Log Message:
2004-02-24 Alper Ersoy <address@hidden>
* makeinfo/xml.c (xml_insert_element_with_attribute, xml_add_char)
(xml_begin_table, xml_end_table, xml_begin_table_item)
(xml_continue_table_item): separated ITEM and TABLEITEM states to
handle @table environments better.
Index: xml.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/makeinfo/xml.c,v
retrieving revision 1.32
retrieving revision 1.33
diff -C2 -d -r1.32 -r1.33
*** xml.c 18 Feb 2004 13:58:14 -0000 1.32
--- xml.c 24 Feb 2004 02:35:16 -0000 1.33
***************
*** 531,534 ****
--- 531,535 ----
static int first_section_opened = 0;
+ static int xml_in_tableitem[256];
static int xml_in_item[256];
static int xml_table_level = 0;
***************
*** 810,817 ****
if (!xml_dont_touch_items_defs && arg == START)
{
! if (xml_after_table_term && elt != TABLETERM)
{
xml_after_table_term = 0;
xml_insert_element (ITEM, START);
}
else if (xml_after_def_term && elt != DEFINITIONTERM)
--- 811,820 ----
if (!xml_dont_touch_items_defs && arg == START)
{
! if (xml_after_table_term && elt != TABLETERM && xml_table_level
! && !xml_in_item[xml_table_level])
{
xml_after_table_term = 0;
xml_insert_element (ITEM, START);
+ xml_in_item[xml_table_level] = 1;
}
else if (xml_after_def_term && elt != DEFINITIONTERM)
***************
*** 854,858 ****
xml_end_para ();
! if (docbook && xml_table_level && !xml_in_item[xml_table_level] &&
!in_table_title
&& arg == START && elt != TABLEITEM && elt != TABLETERM
&& !in_indexterm && xml_current_element() == TABLE)
--- 857,862 ----
xml_end_para ();
! if (docbook && xml_table_level && !in_table_title
! && !xml_in_tableitem[xml_table_level] && !xml_in_item[xml_table_level]
&& arg == START && elt != TABLEITEM && elt != TABLETERM
&& !in_indexterm && xml_current_element() == TABLE)
***************
*** 1138,1142 ****
return;
! if (docbook && xml_table_level && !xml_in_item[xml_table_level] &&
!in_table_title
&& !cr_or_whitespace (character) && !in_indexterm)
{
--- 1142,1147 ----
return;
! if (docbook && xml_table_level && !in_table_title
! && !xml_in_item[xml_table_level] && !xml_in_tableitem[xml_table_level]
&& !cr_or_whitespace (character) && !in_indexterm)
{
***************
*** 1160,1167 ****
if (!xml_sort_index && !xml_in_xref_token && !xml_dont_touch_items_defs)
{
! if (xml_after_table_term)
{
xml_after_table_term = 0;
xml_insert_element (ITEM, START);
}
else if (xml_after_def_term)
--- 1165,1174 ----
if (!xml_sort_index && !xml_in_xref_token && !xml_dont_touch_items_defs)
{
! if (xml_after_table_term && xml_table_level
! && !xml_in_item[xml_table_level])
{
xml_after_table_term = 0;
xml_insert_element (ITEM, START);
+ xml_in_item[xml_table_level] = 1;
}
else if (xml_after_def_term)
***************
*** 1355,1359 ****
--- 1362,1368 ----
xml_insert_element (TABLE, START);
xml_table_level ++;
+ xml_in_tableitem[xml_table_level] = 0;
xml_in_item[xml_table_level] = 0;
+ xml_after_table_term = 0;
}
break;
***************
*** 1394,1408 ****
case vtable:
case table:
! /* if (docbook)*/ /* 05-08 */
{
! if (xml_in_item[xml_table_level])
! {
! xml_insert_element (ITEM, END);
! xml_insert_element (TABLEITEM, END);
! xml_in_item[xml_table_level] = 0;
! }
! xml_insert_element (TABLE, END);
! xml_table_level --;
}
break;
case itemize:
--- 1403,1420 ----
case vtable:
case table:
! if (xml_in_item[xml_table_level])
{
! xml_insert_element (ITEM, END);
! xml_in_item[xml_table_level] = 0;
}
+ if (xml_in_tableitem[xml_table_level])
+ {
+ xml_insert_element (TABLEITEM, END);
+ xml_in_tableitem[xml_table_level] = 0;
+ }
+ xml_insert_element (TABLE, END);
+ xml_after_table_term = 0;
+ xml_table_level --;
+
break;
case itemize:
***************
*** 1440,1447 ****
{
if (xml_in_item[xml_table_level])
! {
! xml_insert_element (ITEM, END);
! xml_insert_element (TABLEITEM, END);
! }
if (in_table_title)
{
--- 1452,1459 ----
{
if (xml_in_item[xml_table_level])
! xml_insert_element (ITEM, END);
! if (xml_in_tableitem[xml_table_level])
! xml_insert_element (TABLEITEM, END);
!
if (in_table_title)
{
***************
*** 1452,1456 ****
}
xml_insert_element (TABLETERM, START);
! xml_in_item[xml_table_level] = 1;
xml_after_table_term = 0;
}
--- 1464,1469 ----
}
xml_insert_element (TABLETERM, START);
! xml_in_tableitem[xml_table_level] = 1;
! xml_in_item[xml_table_level] = 0;
xml_after_table_term = 0;
}
***************
*** 1461,1464 ****
--- 1474,1478 ----
xml_insert_element (TABLETERM, END);
xml_after_table_term = 1;
+ xml_in_item[xml_table_level] = 0;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- texinfo/makeinfo xml.c,1.32,1.33,
dirt <=