[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch master updated: * tp/Texinfo/XS/convert/converter.c (new_text_ele
From: |
Patrice Dumas |
Subject: |
branch master updated: * tp/Texinfo/XS/convert/converter.c (new_text_element_added), tp/Texinfo/XS/main/tree.c (new_text_element): add a new function to setup a text element, to prepare for a different initialization and different struct union field use. Update calls. |
Date: |
Sat, 28 Sep 2024 16:33:49 -0400 |
This is an automated email from the git hooks/post-receive script.
pertusus pushed a commit to branch master
in repository texinfo.
The following commit(s) were added to refs/heads/master by this push:
new ec8f52d31f * tp/Texinfo/XS/convert/converter.c
(new_text_element_added), tp/Texinfo/XS/main/tree.c (new_text_element): add a
new function to setup a text element, to prepare for a different initialization
and different struct union field use. Update calls.
ec8f52d31f is described below
commit ec8f52d31f779227865550e303ee9d7c27a88c68
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Sat Jun 1 17:12:20 2024 +0200
* tp/Texinfo/XS/convert/converter.c (new_text_element_added),
tp/Texinfo/XS/main/tree.c (new_text_element): add a new function to
setup a text element, to prepare for a different initialization and
different struct union field use. Update calls.
---
ChangeLog | 7 ++++
tp/Texinfo/XS/convert/convert_html.c | 38 ++++++++---------
tp/Texinfo/XS/convert/converter.c | 14 +++++--
tp/Texinfo/XS/convert/converter.h | 2 +
tp/Texinfo/XS/main/convert_to_text.c | 8 ++--
tp/Texinfo/XS/main/convert_utils.c | 12 +++---
tp/Texinfo/XS/main/extra.c | 2 +-
tp/Texinfo/XS/main/manipulate_tree.c | 27 ++++++------
tp/Texinfo/XS/main/tree.c | 11 +++++
tp/Texinfo/XS/main/tree.h | 1 +
tp/Texinfo/XS/parsetexi/close.c | 2 +-
tp/Texinfo/XS/parsetexi/def.c | 12 +++---
tp/Texinfo/XS/parsetexi/end_line.c | 6 +--
tp/Texinfo/XS/parsetexi/handle_commands.c | 10 ++---
tp/Texinfo/XS/parsetexi/indices.c | 4 +-
tp/Texinfo/XS/parsetexi/macro.c | 28 ++++++-------
tp/Texinfo/XS/parsetexi/menus.c | 6 +--
tp/Texinfo/XS/parsetexi/parser.c | 48 +++++++++++-----------
tp/Texinfo/XS/parsetexi/separator.c | 16 ++++----
tp/Texinfo/XS/parsetexi/source_marks.c | 2 +-
tp/Texinfo/XS/structuring_transfo/structuring.c | 30 +++++++-------
.../XS/structuring_transfo/transformations.c | 33 ++++++++-------
22 files changed, 177 insertions(+), 142 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index fc06844dcc..e13d4f5a64 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,6 +7,13 @@
Reorder ChangeLog to correspond to commits order.
+2024-05-31 Patrice Dumas <pertusus@free.fr>
+
+ * tp/Texinfo/XS/convert/converter.c (new_text_element_added),
+ tp/Texinfo/XS/main/tree.c (new_text_element): add a new function to
+ setup a text element, to prepare for a different initialization and
+ different struct union field use. Update calls.
+
2024-05-31 Patrice Dumas <pertusus@free.fr>
* tp/Texinfo/XS/main/element_types.awk,
diff --git a/tp/Texinfo/XS/convert/convert_html.c
b/tp/Texinfo/XS/convert/convert_html.c
index c874df251d..c6eab48cdb 100644
--- a/tp/Texinfo/XS/convert/convert_html.c
+++ b/tp/Texinfo/XS/convert/convert_html.c
@@ -3878,7 +3878,7 @@ html_internal_command_tree (CONVERTER *self, const
ELEMENT *command,
{
NAMED_STRING_ELEMENT_LIST *replaced_substrings
= new_named_string_element_list ();
- ELEMENT *e_number = new_element (ET_normal_text);
+ ELEMENT *e_number = new_text_element (ET_normal_text);
ELEMENT *section_title_copy
= copy_tree (command->args.list[0]);
@@ -3947,8 +3947,8 @@ html_external_command_tree (CONVERTER *self, const
ELEMENT *command,
tree = new_tree_added_elements (tree_added_status_elements_added);
root_code = new_element_added (tree, ET__code);
- open_p = new_element_added (tree, ET_normal_text);
- close_p = new_element_added (tree, ET_normal_text);
+ open_p = new_text_element_added (tree, ET_normal_text);
+ close_p = new_text_element_added (tree, ET_normal_text);
text_append_n (&open_p->text, "(", 1);
text_append_n (&close_p->text, ")", 1);
@@ -6833,8 +6833,8 @@ html_default_format_program_string (CONVERTER *self, TEXT
*result)
if (self->conf->PROGRAM.o.string && strlen (self->conf->PROGRAM.o.string)
&& self->conf->PACKAGE_URL.o.string)
{
- ELEMENT *program_homepage = new_element (ET_normal_text);
- ELEMENT *program = new_element (ET_normal_text);
+ ELEMENT *program_homepage = new_text_element (ET_normal_text);
+ ELEMENT *program = new_text_element (ET_normal_text);
NAMED_STRING_ELEMENT_LIST *substrings
= new_named_string_element_list ();
@@ -8586,7 +8586,7 @@ html_default_format_node_redirection_page (CONVERTER
*self,
const char *package_url;
char *href = html_command_href (self, element, filename, 0, 0);
char *name = html_command_text (self, element, 0);
- ELEMENT *direction_element = new_element (ET__converted);
+ ELEMENT *direction_element = new_text_element (ET__converted);
NAMED_STRING_ELEMENT_LIST *substrings = new_named_string_element_list ();
text_printf (&direction_element->text, "<a href=\"%s\">%s</a>", href, name);
@@ -8953,7 +8953,7 @@ convert_value_command (CONVERTER *self, const enum
command_id cmd,
const char *content, TEXT *result)
{
ELEMENT *tree;
- ELEMENT *value_text = new_element (ET_normal_text);
+ ELEMENT *value_text = new_text_element (ET_normal_text);
NAMED_STRING_ELEMENT_LIST *substrings = new_named_string_element_list ();
text_append (&value_text->text,
@@ -9175,8 +9175,8 @@ convert_explained_command (CONVERTER *self, const enum
command_id cmd,
char *context_str;
NAMED_STRING_ELEMENT_LIST *substrings
= new_named_string_element_list ();
- ELEMENT *explained_string_element = new_element (ET__converted);
- ELEMENT *explanation_result_element = new_element (ET__converted);
+ ELEMENT *explained_string_element = new_text_element (ET__converted);
+ ELEMENT *explanation_result_element = new_text_element (ET__converted);
ELEMENT *tree;
text_append (&explained_string_element->text, text_result->text);
@@ -12366,7 +12366,7 @@ convert_xref_commands (CONVERTER *self, const enum
command_id cmd,
= html_command_root_element_command (self, target_node);
const ELEMENT *associated_section = lookup_extra_element (target_node,
"associated_section");
- reference_element = new_element (ET__converted);
+ reference_element = new_text_element (ET__converted);
NAMED_STRING_ELEMENT_LIST *substrings
= new_named_string_element_list ();
@@ -12618,9 +12618,9 @@ convert_xref_commands (CONVERTER *self, const enum
command_id cmd,
if (book && reference)
{
- book_element = new_element (ET__converted);
+ book_element = new_text_element (ET__converted);
text_append (&book_element->text, book);
- reference_element = new_element (ET__converted);
+ reference_element = new_text_element (ET__converted);
text_append (&reference_element->text, reference);
add_element_to_named_string_element_list (substrings,
@@ -12645,7 +12645,7 @@ convert_xref_commands (CONVERTER *self, const enum
command_id cmd,
}
else if (book_reference)
{
- book_element = new_element (ET__converted);
+ book_element = new_text_element (ET__converted);
text_append (&book_element->text, book_reference);
add_element_to_named_string_element_list (substrings,
@@ -12668,9 +12668,9 @@ convert_xref_commands (CONVERTER *self, const enum
command_id cmd,
}
else if (book && name)
{
- book_element = new_element (ET__converted);
+ book_element = new_text_element (ET__converted);
text_append (&book_element->text, book);
- reference_element = new_element (ET__converted);
+ reference_element = new_text_element (ET__converted);
text_append (&reference_element->text, name);
add_element_to_named_string_element_list (substrings,
@@ -12695,7 +12695,7 @@ convert_xref_commands (CONVERTER *self, const enum
command_id cmd,
}
else if (book)
{
- book_element = new_element (ET__converted);
+ book_element = new_text_element (ET__converted);
text_append (&book_element->text, book);
add_element_to_named_string_element_list (substrings,
@@ -12718,7 +12718,7 @@ convert_xref_commands (CONVERTER *self, const enum
command_id cmd,
}
else if (reference)
{
- reference_element = new_element (ET__converted);
+ reference_element = new_text_element (ET__converted);
text_append (&reference_element->text, reference);
add_element_to_named_string_element_list (substrings,
@@ -12741,7 +12741,7 @@ convert_xref_commands (CONVERTER *self, const enum
command_id cmd,
}
else if (name)
{
- reference_element = new_element (ET__converted);
+ reference_element = new_text_element (ET__converted);
text_append (&reference_element->text, name);
add_element_to_named_string_element_list (substrings,
@@ -12962,7 +12962,7 @@ convert_printindex_command (CONVERTER *self, const enum
command_id cmd,
else
{
char *normalized_letter;
- ELEMENT *letter_text = new_element (ET_normal_text);
+ ELEMENT *letter_text = new_text_element (ET_normal_text);
text_append (&letter_text->text, letter);
normalized_letter = normalize_transliterate_texinfo (letter_text,
(self->conf->TEST.o.integer > 0));
diff --git a/tp/Texinfo/XS/convert/converter.c
b/tp/Texinfo/XS/convert/converter.c
index ec77026533..3454d5a845 100644
--- a/tp/Texinfo/XS/convert/converter.c
+++ b/tp/Texinfo/XS/convert/converter.c
@@ -339,7 +339,7 @@ float_type_number (CONVERTER *self, const ELEMENT *float_e)
if (float_number)
{
- ELEMENT *e_number = new_element (ET_normal_text);
+ ELEMENT *e_number = new_text_element (ET_normal_text);
text_append (&e_number->text, float_number);
add_element_to_named_string_element_list (replaced_substrings,
"float_number", e_number);
@@ -386,7 +386,7 @@ float_name_caption (CONVERTER *self, const ELEMENT *float_e)
if (float_number)
{
- ELEMENT *e_number = new_element (ET_normal_text);
+ ELEMENT *e_number = new_text_element (ET_normal_text);
text_append (&e_number->text, float_number);
add_element_to_named_string_element_list (replaced_substrings,
"float_number", e_number);
@@ -508,6 +508,14 @@ new_element_added (TREE_ADDED_ELEMENTS *added_elements,
enum element_type type)
return new;
}
+ELEMENT *
+new_text_element_added (TREE_ADDED_ELEMENTS *added_elements, enum element_type
type)
+{
+ ELEMENT *new = new_text_element (type);
+ add_to_element_list (&added_elements->added, new);
+ return new;
+}
+
TREE_ADDED_ELEMENTS *
table_item_content_tree (CONVERTER *self, const ELEMENT *element)
{
@@ -623,7 +631,7 @@ comma_index_subentries_tree (const ELEMENT *current_entry,
= lookup_extra_element (current_entry, "subentry");
if (subentry)
{
- ELEMENT *separator = new_element (ET_normal_text);
+ ELEMENT *separator = new_text_element (ET_normal_text);
text_append (&separator->text, subentry_separator);
current_entry = subentry;
add_to_element_list (result, separator);
diff --git a/tp/Texinfo/XS/convert/converter.h
b/tp/Texinfo/XS/convert/converter.h
index 8c0ad8b864..44c8517c28 100644
--- a/tp/Texinfo/XS/convert/converter.h
+++ b/tp/Texinfo/XS/convert/converter.h
@@ -88,6 +88,8 @@ TREE_ADDED_ELEMENTS *new_tree_added_elements
(enum tree_added_elements_status status);
ELEMENT *new_element_added (TREE_ADDED_ELEMENTS *added_elements,
enum element_type type);
+ELEMENT *new_text_element_added (TREE_ADDED_ELEMENTS *added_elements,
+ enum element_type type);
void clear_tree_added_elements (CONVERTER *self,
TREE_ADDED_ELEMENTS *tree_elements);
void free_tree_added_elements (CONVERTER *self,
diff --git a/tp/Texinfo/XS/main/convert_to_text.c
b/tp/Texinfo/XS/main/convert_to_text.c
index 87837668f7..0c0248d235 100644
--- a/tp/Texinfo/XS/main/convert_to_text.c
+++ b/tp/Texinfo/XS/main/convert_to_text.c
@@ -940,8 +940,8 @@ convert_to_text_internal (const ELEMENT *element,
TEXT_OPTIONS *text_options,
if (parsed_definition_category)
{
ELEMENT *converted_element = new_element (ET_NONE);
- ELEMENT *text_colon = new_element (ET_normal_text);
- ELEMENT *text_eol = new_element (ET_normal_text);
+ ELEMENT *text_colon = new_text_element (ET_normal_text);
+ ELEMENT *text_eol = new_text_element (ET_normal_text);
ELEMENT *type_text_space;
ELEMENT *args_text_space;
add_to_contents_as_array (converted_element,
@@ -950,7 +950,7 @@ convert_to_text_internal (const ELEMENT *element,
TEXT_OPTIONS *text_options,
add_to_contents_as_array (converted_element, text_colon);
if (parsed_def->type)
{
- type_text_space = new_element (ET_normal_text);
+ type_text_space = new_text_element (ET_normal_text);
add_to_contents_as_array (converted_element, parsed_def->type);
text_append (&type_text_space->text, " ");
add_to_contents_as_array (converted_element, type_text_space);
@@ -959,7 +959,7 @@ convert_to_text_internal (const ELEMENT *element,
TEXT_OPTIONS *text_options,
add_to_contents_as_array (converted_element, parsed_def->name);
if (parsed_def->args)
{
- args_text_space = new_element (ET_normal_text);
+ args_text_space = new_text_element (ET_normal_text);
text_append (&args_text_space->text, " ");
add_to_contents_as_array (converted_element, args_text_space);
add_to_contents_as_array (converted_element, parsed_def->args);
diff --git a/tp/Texinfo/XS/main/convert_utils.c
b/tp/Texinfo/XS/main/convert_utils.c
index af043ac45d..cdd7775e82 100644
--- a/tp/Texinfo/XS/main/convert_utils.c
+++ b/tp/Texinfo/XS/main/convert_utils.c
@@ -70,7 +70,7 @@ expand_today (OPTIONS *options)
if (options->TEST.o.integer > 0)
{
- result = new_element (ET_normal_text);
+ result = new_text_element (ET_normal_text);
text_append (&result->text, "a sunny day");
return result;
}
@@ -96,8 +96,8 @@ expand_today (OPTIONS *options)
month_tree = gdt_tree (convert_utils_month_name[time_tm->tm_mon], 0,
options->documentlanguage.o.string, 0,
options->DEBUG.o.integer, 0);
- day_element = new_element (ET_normal_text);
- year_element = new_element (ET_normal_text);
+ day_element = new_text_element (ET_normal_text);
+ year_element = new_text_element (ET_normal_text);
text_printf (&day_element->text, "%d", time_tm->tm_mday);
text_printf (&year_element->text, "%d", year);
@@ -410,7 +410,7 @@ expand_verbatiminclude (ERROR_MESSAGE_LIST *error_messages,
text = convert_to_utf8_verbatiminclude
(line, conversion, ¤t->source_info);
free (line);
- raw = new_element (ET_raw);
+ raw = new_text_element (ET_raw);
text_append (&raw->text, text);
add_to_element_contents (verbatiminclude, raw);
free (text);
@@ -587,7 +587,7 @@ definition_category_tree (OPTIONS * options, const ELEMENT
*current)
documentlanguage, substrings, 0, 0);
/*
result = new_element (ET_NONE);
- ELEMENT *text_element = new_element (ET_normal_text);
+ ELEMENT *text_element = new_text_element (ET_normal_text);
add_to_element_contents (result, category_copy);
text_append (&text_element->text, " on ");
add_to_element_contents (result, text_element);
@@ -626,7 +626,7 @@ definition_category_tree (OPTIONS * options, const ELEMENT
*current)
documentlanguage, substrings, 0, 0);
/*
result = new_element (ET_NONE);
- ELEMENT *text_element = new_element (ET_normal_text);
+ ELEMENT *text_element = new_text_element (ET_normal_text);
add_to_element_contents (result, category_copy);
text_append (&text_element->text, " of ");
add_to_element_contents (result, text_element);
diff --git a/tp/Texinfo/XS/main/extra.c b/tp/Texinfo/XS/main/extra.c
index a9499ad3b6..d999d86422 100644
--- a/tp/Texinfo/XS/main/extra.c
+++ b/tp/Texinfo/XS/main/extra.c
@@ -19,7 +19,7 @@
#include <stdio.h>
#include "tree_types.h"
-/* for new_element */
+/* for new_list list_set_empty_contents */
#include "tree.h"
/* for fatal and directions_length */
#include "utils.h"
diff --git a/tp/Texinfo/XS/main/manipulate_tree.c
b/tp/Texinfo/XS/main/manipulate_tree.c
index 58ccfe6c19..ea9d16948f 100644
--- a/tp/Texinfo/XS/main/manipulate_tree.c
+++ b/tp/Texinfo/XS/main/manipulate_tree.c
@@ -161,9 +161,10 @@ copy_tree_internal (ELEMENT* current, ELEMENT *parent)
return new;
}
- new = new_element (ET_NONE);
- if (current->type)
- new->type = current->type;
+ if (type_data[current->type].flags & TF_text)
+ new = new_text_element (current->type);
+ else
+ new = new_element (current->type);
increase_ref_counter (current);
add_extra_element (current, "_copy", new);
@@ -332,7 +333,7 @@ associate_info_references (ASSOCIATED_INFO *info,
ASSOCIATED_INFO *new_info)
ELEMENT *new_e;
if (e->type == ET_other_text)
{
- new_e = new_element (ET_other_text);
+ new_e = new_text_element (ET_other_text);
if (e->text.end > 0)
text_append_n (&new_e->text, e->text.text, e->text.end);
}
@@ -574,10 +575,10 @@ parse_node_manual (ELEMENT *node, int modify_node)
{
if (modify_node)
{
- opening_brace = new_element (ET_normal_text);
+ opening_brace = new_text_element (ET_normal_text);
text_append_n (&opening_brace->text, "(", 1);
}
- new_first = new_element (ET_normal_text);
+ new_first = new_text_element (ET_normal_text);
text_append_n (&new_first->text, first->text.text +1,
first->text.end -1);
}
else
@@ -681,7 +682,8 @@ parse_node_manual (ELEMENT *node, int modify_node)
if (p > e->text.text)
{
/* text before ), part of the manual name */
- ELEMENT *last_manual_element = new_element (ET_normal_text);
+ ELEMENT *last_manual_element
+ = new_text_element (ET_normal_text);
text_append_n (&last_manual_element->text, e->text.text,
p - e->text.text);
add_to_contents_as_array (manual, last_manual_element);
@@ -700,7 +702,7 @@ parse_node_manual (ELEMENT *node, int modify_node)
if (modify_node)
{
- ELEMENT *closing_brace = new_element (ET_normal_text);
+ ELEMENT *closing_brace = new_text_element (ET_normal_text);
text_append_n (&closing_brace->text, ")", 1);
insert_into_contents (node, closing_brace, idx++);
current_position
@@ -717,7 +719,7 @@ parse_node_manual (ELEMENT *node, int modify_node)
q = p + strspn (p, whitespace_chars);
if (q > p && modify_node)
{
- ELEMENT *spaces_element = new_element (ET_normal_text);
+ ELEMENT *spaces_element = new_text_element (ET_normal_text);
text_append_n (&spaces_element->text, p, q - p);
insert_into_contents (node, spaces_element, idx++);
current_position
@@ -731,7 +733,8 @@ parse_node_manual (ELEMENT *node, int modify_node)
if (*p)
{
/* text after ), part of the node name. */
- ELEMENT *leading_node_content = new_element (ET_normal_text);
+ ELEMENT *leading_node_content
+ = new_text_element (ET_normal_text);
text_append_n (&leading_node_content->text, p,
e->text.text + e->text.end - p);
/* start node_content */
@@ -869,7 +872,7 @@ new_asis_command_with_text (const char *text, ELEMENT
*parent,
{
ELEMENT *new_command = new_element (ET_NONE);
ELEMENT *brace_command_arg = new_element (ET_brace_command_arg);
- ELEMENT *text_elt = new_element (type);
+ ELEMENT *text_elt = new_text_element (type);
new_command->cmd = CM_asis;
new_command->parent = parent;
add_to_element_args (new_command, brace_command_arg);
@@ -907,7 +910,7 @@ protect_text (ELEMENT *current, const char *to_protect)
while (*p)
{
size_t leading_nr = strcspn (p, to_protect);
- ELEMENT *text_elt = new_element (current->type);
+ ELEMENT *text_elt = new_text_element (current->type);
text_elt->parent = current->parent;
if (leading_nr)
{
diff --git a/tp/Texinfo/XS/main/tree.c b/tp/Texinfo/XS/main/tree.c
index 06bef2872f..cd74289e8b 100644
--- a/tp/Texinfo/XS/main/tree.c
+++ b/tp/Texinfo/XS/main/tree.c
@@ -42,6 +42,7 @@ static int *obs_element_first = 0;
*/
#include "tree_types.h"
+#include "types_data.h"
/* for fatal */
#include "utils.h"
/* for debug
@@ -116,6 +117,16 @@ new_element (enum element_type type)
return e;
}
+ELEMENT *
+new_text_element (enum element_type type)
+{
+ ELEMENT *e;
+ e = alloc_element ();
+ e->type = type;
+
+ return e;
+}
+
ELEMENT_LIST *
new_list (void)
{
diff --git a/tp/Texinfo/XS/main/tree.h b/tp/Texinfo/XS/main/tree.h
index 4f99b3794f..511c8f73d9 100644
--- a/tp/Texinfo/XS/main/tree.h
+++ b/tp/Texinfo/XS/main/tree.h
@@ -8,6 +8,7 @@ void reset_obstacks (void);
ASSOCIATED_INFO *new_associated_info (void);
ELEMENT *new_element (enum element_type type);
+ELEMENT *new_text_element (enum element_type type);
ELEMENT_LIST *new_list (void);
void add_to_element_list (ELEMENT_LIST *list, ELEMENT *e);
void add_to_element_contents (ELEMENT *parent, ELEMENT *e);
diff --git a/tp/Texinfo/XS/parsetexi/close.c b/tp/Texinfo/XS/parsetexi/close.c
index 868f429bbe..e4dbb284aa 100644
--- a/tp/Texinfo/XS/parsetexi/close.c
+++ b/tp/Texinfo/XS/parsetexi/close.c
@@ -460,7 +460,7 @@ close_current (ELEMENT *current,
switch (current->type)
{
case ET_balanced_braces:
- close_brace = new_element (ET_normal_text);
+ close_brace = new_text_element (ET_normal_text);
command_error (current, "misplaced {");
/* We prefer adding an element to merging because we may
be at the end of the document after an empty line we
diff --git a/tp/Texinfo/XS/parsetexi/def.c b/tp/Texinfo/XS/parsetexi/def.c
index fc1a87213d..b0c2dbdedd 100644
--- a/tp/Texinfo/XS/parsetexi/def.c
+++ b/tp/Texinfo/XS/parsetexi/def.c
@@ -233,7 +233,7 @@ split_delimiters (ELEMENT *current, int starting_idx)
{
if (strchr (chars, *p))
{
- new = new_element (ET_delimiter);
+ new = new_text_element (ET_delimiter);
text_append_n (&new->text, p, 1);
if (u8_text)
@@ -252,7 +252,7 @@ split_delimiters (ELEMENT *current, int starting_idx)
continue;
}
- ELEMENT *new_text = new_element (ET_normal_text);
+ ELEMENT *new_text = new_text_element (ET_normal_text);
len = strcspn (p, chars);
text_append_n (&new_text->text, p, len);
@@ -329,12 +329,12 @@ split_def_args (ELEMENT *current, int starting_idx)
len = strspn (p, whitespace_chars);
if (len)
{
- new = new_element (ET_spaces);
+ new = new_text_element (ET_spaces);
}
else
{
len = strcspn (p, whitespace_chars);
- new = new_element (ET_normal_text);
+ new = new_text_element (ET_normal_text);
}
text_append_n (&new->text, p, len);
@@ -392,7 +392,7 @@ parse_def (enum command_id command, ELEMENT *current)
inserted_category = 1;
e = new_element (ET_def_line_arg);
insert_into_contents (current, e, contents_idx);
- e1 = new_element (ET_normal_text);
+ e1 = new_text_element (ET_normal_text);
text_append_n (&e1->text, category, strlen (category));
add_to_element_contents (e, e1);
if (global_documentlanguage && *global_documentlanguage)
@@ -406,7 +406,7 @@ parse_def (enum command_id command, ELEMENT *current)
def_aliases[i].translation_context);
}
- e = new_element (ET_spaces);
+ e = new_text_element (ET_spaces);
text_append_n (&e->text, " ", 1);
add_info_integer (e, "inserted", 1);
insert_into_contents (current, e, contents_idx + 1);
diff --git a/tp/Texinfo/XS/parsetexi/end_line.c
b/tp/Texinfo/XS/parsetexi/end_line.c
index 02047c85a5..e33cf014d9 100644
--- a/tp/Texinfo/XS/parsetexi/end_line.c
+++ b/tp/Texinfo/XS/parsetexi/end_line.c
@@ -104,7 +104,7 @@ ELEMENT_LIST *
parse_line_command_args (ELEMENT *line_command)
{
#define ADD_ARG(string) do { \
- ELEMENT *E = new_element (ET_other_text); \
+ ELEMENT *E = new_text_element (ET_other_text); \
text_append (&E->text, string); \
add_to_element_list (line_args, E); \
} while (0)
@@ -316,7 +316,7 @@ parse_line_command_args (ELEMENT *line_command)
}
else
{
- new = new_element (ET_other_text);
+ new = new_text_element (ET_other_text);
text_append_n (&new->text, p, q - p);
add_to_element_list (line_args, new);
}
@@ -1875,7 +1875,7 @@ end_line (ELEMENT *current)
add_to_element_contents (current, e);
current = e;
- e = new_element (ET_after_menu_description_line);
+ e = new_text_element (ET_after_menu_description_line);
text_append (&e->text, empty_line->text.text);
transfer_source_marks (empty_line, e);
destroy_element (empty_line);
diff --git a/tp/Texinfo/XS/parsetexi/handle_commands.c
b/tp/Texinfo/XS/parsetexi/handle_commands.c
index c92ec3db1e..02049a55e3 100644
--- a/tp/Texinfo/XS/parsetexi/handle_commands.c
+++ b/tp/Texinfo/XS/parsetexi/handle_commands.c
@@ -182,7 +182,7 @@ parse_rawline_command (const char *line, enum command_id
cmd,
int *has_comment, int *special_arg)
{
#define ADD_ARG(string, len) do { \
- ELEMENT *E = new_element (ET_other_text); \
+ ELEMENT *E = new_text_element (ET_other_text); \
text_append_n (&E->text, string, len); \
add_to_element_contents (args, E); \
} while (0)
@@ -649,8 +649,8 @@ handle_line_command (ELEMENT *current, const char
**line_inout,
char *arg = 0;
ELEMENT *line_args;
ELEMENT *e;
- ELEMENT *spaces_before = new_element (ET_other_text);
- ELEMENT *spaces_after = new_element (ET_other_text);
+ ELEMENT *spaces_before = new_text_element (ET_other_text);
+ ELEMENT *spaces_after = new_text_element (ET_other_text);
/* put in extra "misc_args" */
ELEMENT_LIST *args_list = new_list ();
@@ -663,7 +663,7 @@ handle_line_command (ELEMENT *current, const char
**line_inout,
command and add it to the tree. */
destroy_element_and_children (args);
- e = new_element (ET_other_text);
+ e = new_text_element (ET_other_text);
text_append (&e->text, arg);
add_to_element_list (args_list, e);
@@ -682,7 +682,7 @@ handle_line_command (ELEMENT *current, const char
**line_inout,
add_info_element_oot (line_args, "spaces_after_argument",
spaces_after);
- e = new_element (ET_normal_text);
+ e = new_text_element (ET_normal_text);
text_append (&e->text, arg);
add_to_element_contents (line_args, e);
diff --git a/tp/Texinfo/XS/parsetexi/indices.c
b/tp/Texinfo/XS/parsetexi/indices.c
index 1b20615519..a7eb7c5585 100644
--- a/tp/Texinfo/XS/parsetexi/indices.c
+++ b/tp/Texinfo/XS/parsetexi/indices.c
@@ -290,7 +290,7 @@ enter_index_entry (enum command_id index_type_cmd,
/* put in extra "misc_args" */
ELEMENT_LIST *index_entry = new_list ();
/* index name put as text in extra "misc_args" */
- ELEMENT *e = new_element (ET_other_text);
+ ELEMENT *e = new_text_element (ET_other_text);
text_append (&e->text, idx->name);
add_to_element_list (index_entry, e);
e = new_element (ET_NONE);
@@ -431,7 +431,7 @@ complete_indices (DOCUMENT *document, int debug_level)
ELEMENT *index_entry;
/* container without type in extra "def_index_ref_element" */
ELEMENT *index_entry_normalized = new_element (ET_NONE);
- ELEMENT *text_element = new_element (ET_normal_text);
+ ELEMENT *text_element = new_text_element
(ET_normal_text);
enum command_id def_command
= lookup_command (def_cmdname);
NAMED_STRING_ELEMENT_LIST *substrings
diff --git a/tp/Texinfo/XS/parsetexi/macro.c b/tp/Texinfo/XS/parsetexi/macro.c
index e354371e60..6bf2a44c66 100644
--- a/tp/Texinfo/XS/parsetexi/macro.c
+++ b/tp/Texinfo/XS/parsetexi/macro.c
@@ -162,7 +162,7 @@ parse_macro_command_line (enum command_id cmd, const char
**line_inout,
debug ("MACRO @%s %s", command_name (cmd), name);
- macro_name = new_element (ET_macro_name);
+ macro_name = new_text_element (ET_macro_name);
text_append (¯o_name->text, name);
free (name);
add_to_element_args (macro, macro_name);
@@ -211,7 +211,7 @@ parse_macro_command_line (enum command_id cmd, const char
**line_inout,
{
line_error ("bad or empty @%s formal argument: ",
command_name(cmd));
- arg = new_element (ET_macro_arg);
+ arg = new_text_element (ET_macro_arg);
add_to_element_args (macro, arg);
text_append_n (&arg->text, "", 0);
add_extra_integer (macro, "invalid_syntax", 1);
@@ -219,7 +219,7 @@ parse_macro_command_line (enum command_id cmd, const char
**line_inout,
}
else
{
- arg = new_element (ET_macro_arg);
+ arg = new_text_element (ET_macro_arg);
text_append_n (&arg->text, args_ptr, q2 - args_ptr);
add_to_element_args (macro, arg);
@@ -312,7 +312,7 @@ expand_macro_arguments (const ELEMENT *macro, const char
**line_inout,
int args_total;
int whitespaces_len;
ELEMENT *argument = new_element (ET_brace_command_arg);
- ELEMENT *argument_content = new_element (ET_other_text);
+ ELEMENT *argument_content = new_text_element (ET_other_text);
add_to_element_args (current, argument);
text_append_n (&argument_content->text, "", 0);
@@ -326,7 +326,7 @@ expand_macro_arguments (const ELEMENT *macro, const char
**line_inout,
whitespaces_len = strspn (pline, whitespace_chars);
if (whitespaces_len > 0)
{
- ELEMENT *spaces_element = new_element (ET_other_text);
+ ELEMENT *spaces_element = new_text_element (ET_other_text);
text_append_n (&spaces_element->text, pline, whitespaces_len);
add_info_element_oot (current, "spaces_before_argument",
spaces_element);
@@ -401,8 +401,8 @@ expand_macro_arguments (const ELEMENT *macro, const char
**line_inout,
remove_empty_content (argument);
/* new argument */
- argument = new_element (ET_brace_command_arg);
- argument_content = new_element (ET_other_text);
+ argument = new_text_element (ET_brace_command_arg);
+ argument_content = new_text_element (ET_other_text);
add_to_element_args (current, argument);
text_append_n (&argument_content->text, "", 0);
add_to_element_contents (argument, argument_content);
@@ -410,7 +410,7 @@ expand_macro_arguments (const ELEMENT *macro, const char
**line_inout,
pline += strspn (pline, whitespace_chars);
if (pline - p)
{
- ELEMENT *spaces_element = new_element (ET_other_text);
+ ELEMENT *spaces_element = new_text_element
(ET_other_text);
text_append_n (&spaces_element->text, p, pline - p);
add_info_element_oot (argument, "spaces_before_argument",
spaces_element);
@@ -467,7 +467,7 @@ expand_linemacro_arguments (const ELEMENT *macro, const
char **line_inout,
int spaces_nr;
int i;
ELEMENT *argument = new_element (ET_NONE);
- ELEMENT *argument_content = new_element (ET_other_text);
+ ELEMENT *argument_content = new_text_element (ET_other_text);
counter_reset (&count_toplevel_braces, 0);
counter_push (&count_toplevel_braces, argument_content, 0);
@@ -479,7 +479,7 @@ expand_linemacro_arguments (const ELEMENT *macro, const
char **line_inout,
spaces_nr = strspn (pline, whitespace_chars_except_newline);
if (spaces_nr)
{
- ELEMENT *spaces_element = new_element (ET_other_text);
+ ELEMENT *spaces_element = new_text_element (ET_other_text);
text_append_n (&spaces_element->text, line, spaces_nr);
add_info_element_oot (argument, "spaces_before_argument",
spaces_element);
@@ -599,13 +599,13 @@ expand_linemacro_arguments (const ELEMENT *macro, const
char **line_inout,
}
else
{
- ELEMENT *spaces_element = new_element (ET_other_text);
+ ELEMENT *spaces_element = new_text_element (ET_other_text);
set_toplevel_braces_nr (&count_toplevel_braces,
argument_content);
argument = new_element (ET_NONE);
- argument_content = new_element (ET_other_text);
+ argument_content = new_text_element (ET_other_text);
counter_push (&count_toplevel_braces, argument_content, 0);
add_to_element_args (current, argument);
@@ -857,7 +857,7 @@ handle_macro (ELEMENT *current, const char **line_inout,
enum command_id cmd)
{
if (p - line > 0)
{
- ELEMENT *spaces_element = new_element (ET_other_text);
+ ELEMENT *spaces_element = new_text_element (ET_other_text);
text_append_n (&spaces_element->text, line, p - line);
add_info_element_oot (macro_call_element,
"spaces_after_cmd_before_arg",
spaces_element);
@@ -904,7 +904,7 @@ handle_macro (ELEMENT *current, const char **line_inout,
enum command_id cmd)
if (leading_spaces_nr)
{
ELEMENT *internal_space
- = new_element (ET_internal_spaces_before_argument);
+ = new_text_element
(ET_internal_spaces_before_argument);
text_append_n (&internal_space->text, line,
leading_spaces_nr);
internal_space_holder = macro_call_element;
diff --git a/tp/Texinfo/XS/parsetexi/menus.c b/tp/Texinfo/XS/parsetexi/menus.c
index e8bd762b08..45acee1edd 100644
--- a/tp/Texinfo/XS/parsetexi/menus.c
+++ b/tp/Texinfo/XS/parsetexi/menus.c
@@ -134,7 +134,7 @@ handle_menu_entry_separators (ELEMENT **current_inout,
const char **line_inout)
abort_empty_line (¤t);
line++; /* Past the '*'. */
- star = new_element (ET_internal_menu_star);
+ star = new_text_element (ET_internal_menu_star);
text_append (&star->text, "*");
add_to_element_contents (current, star);
@@ -176,7 +176,7 @@ handle_menu_entry_separators (ELEMENT **current_inout,
const char **line_inout)
}
menu_entry = new_element (ET_menu_entry);
- leading_text = new_element (ET_menu_entry_leading_text);
+ leading_text = new_text_element (ET_menu_entry_leading_text);
/* transfer source marks from removed menu star to leading text */
transfer_source_marks (menu_star_element, leading_text);
destroy_element (menu_star_element);
@@ -211,7 +211,7 @@ handle_menu_entry_separators (ELEMENT **current_inout,
const char **line_inout)
line++;
current = current->parent;
- e = new_element (ET_menu_entry_separator);
+ e = new_text_element (ET_menu_entry_separator);
text_append_n (&e->text, &menu_separator, 1);
add_to_element_contents (current, e);
diff --git a/tp/Texinfo/XS/parsetexi/parser.c b/tp/Texinfo/XS/parsetexi/parser.c
index 3980fc27ec..4b1671de19 100644
--- a/tp/Texinfo/XS/parsetexi/parser.c
+++ b/tp/Texinfo/XS/parsetexi/parser.c
@@ -525,7 +525,7 @@ parse_texi_document (void)
if (!preamble_before_beginning)
preamble_before_beginning = new_element (ET_preamble_before_beginning);
- l = new_element (ET_text_before_beginning);
+ l = new_text_element (ET_text_before_beginning);
text_append (&l->text, line);
add_to_element_contents (preamble_before_beginning, l);
}
@@ -771,7 +771,7 @@ merge_text (ELEMENT *current, const char *text, size_t
len_text,
else
{
new_text:
- ELEMENT *e = new_element (ET_normal_text);
+ ELEMENT *e = new_text_element (ET_normal_text);
if (transfer_marks_element)
transfer_source_marks (transfer_marks_element, e);
text_append_n (&e->text, text, len_text);
@@ -882,7 +882,7 @@ isolate_last_space_internal (ELEMENT *current, ELEMENT
*last_elt)
else
{
int i, trailing_spaces;
- ELEMENT *spaces_element = new_element (ET_other_text);
+ ELEMENT *spaces_element = new_text_element (ET_other_text);
trailing_spaces = 0;
for (i = text_len - 1;
@@ -936,7 +936,7 @@ isolate_trailing_space (ELEMENT *current, ELEMENT *last_elt,
if (trailing_spaces)
{
- new_spaces = new_element (spaces_type);
+ new_spaces = new_text_element (spaces_type);
text_append_n (&new_spaces->text,
text + text_len - trailing_spaces,
trailing_spaces);
@@ -1021,7 +1021,7 @@ start_empty_line_after_command (ELEMENT *current, const
char **line_inout,
int len;
len = strspn (line, whitespace_chars_except_newline);
- e = new_element (ET_ignorable_spaces_after_command);
+ e = new_text_element (ET_ignorable_spaces_after_command);
add_to_element_contents (current, e);
text_append_n (&e->text, line, len);
line += len;
@@ -1101,7 +1101,7 @@ new_value_element (enum command_id cmd, const char *flag,
ELEMENT *value_elt = new_element (ET_NONE);
ELEMENT *brace_command_arg = new_element (ET_brace_command_arg);
/* occasionnally considered as text in conversion, so make it normal text */
- ELEMENT *value_text = new_element (ET_normal_text);
+ ELEMENT *value_text = new_text_element (ET_normal_text);
value_elt->cmd = cmd;
@@ -1464,7 +1464,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
{
ELEMENT *e;
int n = strspn (line, whitespace_chars);
- e = new_element (ET_raw);
+ e = new_text_element (ET_raw);
text_append_n (&e->text, line, n);
add_to_element_contents (current, e);
line += n;
@@ -1518,7 +1518,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
an empty line will not appear in the output, but it is needed to
avoid a duplicate warning on @end not appearing at the beginning
of the line */
- e = new_element (ET_empty_line);
+ e = new_text_element (ET_empty_line);
add_to_element_contents (current, e);
closed_nested_raw = 1;
@@ -1534,7 +1534,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
if (! closed_nested_raw)
{
ELEMENT *e;
- e = new_element (ET_raw);
+ e = new_text_element (ET_raw);
text_append (&e->text, line);
add_to_element_contents (current, e);
@@ -1588,7 +1588,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
{
ELEMENT *e;
int n = strspn (line, whitespace_chars);
- e = new_element (ET_raw);
+ e = new_text_element (ET_raw);
text_append_n (&e->text, line, n);
add_to_element_contents (current, e);
line += n;
@@ -1598,12 +1598,12 @@ process_remaining_on_line (ELEMENT **current_inout,
const char **line_inout)
debug ("CLOSED conditional %s", command_name(end_cmd));
- e = new_element (ET_empty_line);
+ e = new_text_element (ET_empty_line);
add_to_element_contents (current, e);
}
else
{
- ELEMENT *e = new_element (ET_raw);
+ ELEMENT *e = new_text_element (ET_raw);
text_append (&(e->text), line);
add_to_element_contents (current, e);
retval = GET_A_NEW_LINE;
@@ -1642,7 +1642,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
/* Save up to the delimiter character. */
if (q != line)
{
- ELEMENT *e = new_element (ET_raw);
+ ELEMENT *e = new_text_element (ET_raw);
text_append_n (&e->text, line, q - line);
add_to_element_contents (current, e);
}
@@ -1653,7 +1653,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
else
{
/* Save the rest of line. */
- ELEMENT *e = new_element (ET_raw);
+ ELEMENT *e = new_text_element (ET_raw);
text_append (&e->text, line);
add_to_element_contents (current, e);
@@ -1694,7 +1694,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
}
else
{
- ELEMENT *raw_text = new_element (ET_raw);
+ ELEMENT *raw_text = new_text_element (ET_raw);
text_append (&(raw_text->text), line);
add_to_element_contents (e_elided_rawpreformatted, raw_text);
}
@@ -1705,7 +1705,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
/* start a new line for the @end line, this is normally done
at the beginning of a line, but not here, as we directly
got the lines. */
- e_empty_line = new_element (ET_empty_line);
+ e_empty_line = new_text_element (ET_empty_line);
add_to_element_contents (current, e_empty_line);
n = strspn (line, whitespace_chars_except_newline);
@@ -1815,7 +1815,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
if (whitespaces_len > 0)
{
/* special text in "spaces_after_cmd_before_arg" */
- spaces_element = new_element (ET_other_text);
+ spaces_element = new_text_element (ET_other_text);
text_append_n (&(spaces_element->text),
remaining_line, whitespaces_len);
remaining_line += whitespaces_len;
@@ -2028,7 +2028,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
if (current->contents.number == 0)
{
ELEMENT *e_spaces_after_cmd_before_arg
- = new_element (ET_internal_spaces_after_cmd_before_arg);
+ = new_text_element (ET_internal_spaces_after_cmd_before_arg);
text_append_n (&(e_spaces_after_cmd_before_arg->text),
line, whitespaces_len);
add_to_element_contents (current,
e_spaces_after_cmd_before_arg);
@@ -2084,7 +2084,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
while ((line[char_len] & 0xC0) == 0x80)
char_len++;
- e2 = new_element (ET_normal_text);
+ e2 = new_text_element (ET_normal_text);
text_append_n (&e2->text, line, char_len);
debug ("ACCENT @%s following_arg: %s", command_name(current->cmd),
e2->text.text);
@@ -2136,7 +2136,7 @@ process_remaining_on_line (ELEMENT **current_inout, const
char **line_inout)
if (whitespaces_len > 0)
{
/* special text in "spaces_after_cmd_before_arg" */
- spaces_element = new_element (ET_other_text);
+ spaces_element = new_text_element (ET_other_text);
text_append_n (&(spaces_element->text),
line, whitespaces_len);
line += whitespaces_len;
@@ -2414,10 +2414,10 @@ process_remaining_on_line (ELEMENT **current_inout,
const char **line_inout)
/* A form feed stops and restarts a paragraph. */
current = end_paragraph (current, 0, 0);
- e = new_element (ET_empty_line);
+ e = new_text_element (ET_empty_line);
text_append_n (&e->text, "\f", 1);
add_to_element_contents (current, e);
- e = new_element (ET_empty_line);
+ e = new_text_element (ET_empty_line);
add_to_element_contents (current, e);
}
else
@@ -2543,7 +2543,7 @@ parse_texi (ELEMENT *root_elt, ELEMENT *current_elt)
abort_empty_line (¤t);
}
- e = new_element (ET_empty_line);
+ e = new_text_element (ET_empty_line);
add_to_element_contents (current, e);
n = strspn (line, whitespace_chars_except_newline);
@@ -2622,7 +2622,7 @@ parse_texi (ELEMENT *root_elt, ELEMENT *current_elt)
if (!allocated_line)
break; /* Out of input. */
- e = new_element (ET_text_after_end);
+ e = new_text_element (ET_text_after_end);
text_append (&e->text, line);
add_to_element_contents (element_after_bye, e);
}
diff --git a/tp/Texinfo/XS/parsetexi/separator.c
b/tp/Texinfo/XS/parsetexi/separator.c
index c0576f888d..f15c0b4bd2 100644
--- a/tp/Texinfo/XS/parsetexi/separator.c
+++ b/tp/Texinfo/XS/parsetexi/separator.c
@@ -167,7 +167,7 @@ handle_open_brace (ELEMENT *current, const char
**line_inout)
ELEMENT *e;
int n;
n = strspn (line, whitespace_chars_except_newline);
- e = new_element (ET_internal_spaces_before_argument);
+ e = new_text_element (ET_internal_spaces_before_argument);
text_append_n (&e->text, line, n);
add_to_element_contents (current, e);
internal_space_holder = current->parent;
@@ -185,7 +185,7 @@ handle_open_brace (ELEMENT *current, const char
**line_inout)
|| command_data(command).data == BRACE_inline)
{
ELEMENT *e;
- e = new_element (ET_internal_spaces_before_argument);
+ e = new_text_element (ET_internal_spaces_before_argument);
/* See comment in parser.c:merge_text */
text_append (&e->text, "");
add_to_element_contents (current, e);
@@ -215,7 +215,7 @@ handle_open_brace (ELEMENT *current, const char
**line_inout)
end of the line and also for misplaced { errors. */
current->source_info = current_source_info;
- e = new_element (ET_internal_spaces_before_argument);
+ e = new_text_element (ET_internal_spaces_before_argument);
text_append (&e->text, ""); /* See comment in parser.c:merge_text */
add_to_element_contents (current, e);
debug ("BRACKETED in def/multitable");
@@ -235,7 +235,7 @@ handle_open_brace (ELEMENT *current, const char
**line_inout)
|| current_context () == ct_inlineraw)
{
ELEMENT *b = new_element (ET_balanced_braces);
- ELEMENT *open_brace = new_element (ET_normal_text);
+ ELEMENT *open_brace = new_text_element (ET_normal_text);
abort_empty_line (¤t);
b->source_info = current_source_info;
add_to_element_contents (current, b);
@@ -583,7 +583,7 @@ handle_close_brace (ELEMENT *current, const char
**line_inout)
|| current->parent->cmd == CM_seealso)
{
ELEMENT *e;
- e = new_element (ET_spaces_after_close_brace);
+ e = new_text_element (ET_spaces_after_close_brace);
text_append (&e->text, "");
add_to_element_contents (current->parent->parent, e);
}
@@ -687,7 +687,7 @@ handle_comma (ELEMENT *current, const char **line_inout)
e = new_element (ET_elided_brace_command_arg);
add_to_element_args (current, e);
- arg = new_element (ET_raw);
+ arg = new_text_element (ET_raw);
text_append (&arg->text, "");
add_to_element_contents (e, arg);
@@ -759,7 +759,7 @@ handle_comma (ELEMENT *current, const char **line_inout)
e = new_element (ET_elided_brace_command_arg);
add_to_element_args (current, e);
- arg = new_element (ET_raw);
+ arg = new_text_element (ET_raw);
text_append (&arg->text, "");
add_to_element_contents (e, arg);
@@ -802,7 +802,7 @@ handle_comma (ELEMENT *current, const char **line_inout)
new_arg = new_element (type);
add_to_element_args (current, new_arg);
current = new_arg;
- e = new_element (ET_internal_spaces_before_argument);
+ e = new_text_element (ET_internal_spaces_before_argument);
text_append (&e->text, ""); /* See comment in parser.c:merge_text */
add_to_element_contents (current, e);
internal_space_holder = current;
diff --git a/tp/Texinfo/XS/parsetexi/source_marks.c
b/tp/Texinfo/XS/parsetexi/source_marks.c
index ff0fef86d2..33723b8760 100644
--- a/tp/Texinfo/XS/parsetexi/source_marks.c
+++ b/tp/Texinfo/XS/parsetexi/source_marks.c
@@ -71,7 +71,7 @@ place_source_mark (ELEMENT *e, SOURCE_MARK *source_mark)
else
{
/* add an empty element used for source marks */
- mark_element = new_element (ET_normal_text);
+ mark_element = new_text_element (ET_normal_text);
/* set empty text to have merge_text work as expected */
text_append (&mark_element->text, "");
add_to_element_contents (e, mark_element);
diff --git a/tp/Texinfo/XS/structuring_transfo/structuring.c
b/tp/Texinfo/XS/structuring_transfo/structuring.c
index c8d5e8c13c..2acf26904e 100644
--- a/tp/Texinfo/XS/structuring_transfo/structuring.c
+++ b/tp/Texinfo/XS/structuring_transfo/structuring.c
@@ -48,12 +48,12 @@ void
new_block_command (ELEMENT *element, enum command_id cmd)
{
ELEMENT *args = new_element (ET_block_line_arg);
- ELEMENT *arg_spaces_after = new_element (ET_other_text);
+ ELEMENT *arg_spaces_after = new_text_element (ET_other_text);
ELEMENT *end = new_element (ET_NONE);
ELEMENT *end_args = new_element (ET_line_arg);
- ELEMENT *end_spaces_before = new_element (ET_other_text);
- ELEMENT *end_spaces_after = new_element (ET_other_text);
- ELEMENT *command_name_text = new_element (ET_normal_text);
+ ELEMENT *end_spaces_before = new_text_element (ET_other_text);
+ ELEMENT *end_spaces_after = new_text_element (ET_other_text);
+ ELEMENT *command_name_text = new_text_element (ET_normal_text);
const char *command_name = builtin_command_name (cmd);
element->cmd = cmd;
@@ -1740,19 +1740,19 @@ new_node_menu_entry (const ELEMENT *node, int
use_sections)
description = new_element (ET_menu_entry_description);
preformatted = new_element (ET_preformatted);
add_to_element_contents (description, preformatted);
- description_text = new_element (ET_normal_text);
+ description_text = new_text_element (ET_normal_text);
text_append (&description_text->text, "\n");
add_to_element_contents (preformatted, description_text);
- menu_entry_leading_text = new_element (ET_menu_entry_leading_text);
+ menu_entry_leading_text = new_text_element (ET_menu_entry_leading_text);
text_append (&menu_entry_leading_text->text, "* ");
add_to_element_contents (entry, menu_entry_leading_text);
if (use_sections)
{
- ELEMENT *menu_entry_separator = new_element (ET_menu_entry_separator);
- ELEMENT *menu_entry_after_node = new_element (ET_menu_entry_separator);
+ ELEMENT *menu_entry_separator = new_text_element
(ET_menu_entry_separator);
+ ELEMENT *menu_entry_after_node = new_text_element
(ET_menu_entry_separator);
text_append (&menu_entry_separator->text, ": ");
text_append (&menu_entry_after_node->text, ".");
add_to_element_contents (entry, menu_entry_name);
@@ -1762,7 +1762,7 @@ new_node_menu_entry (const ELEMENT *node, int
use_sections)
}
else
{
- ELEMENT *menu_entry_separator = new_element (ET_menu_entry_separator);
+ ELEMENT *menu_entry_separator = new_text_element
(ET_menu_entry_separator);
add_to_element_contents (entry, menu_entry_node);
text_append (&menu_entry_separator->text, "::");
add_to_element_contents (entry, menu_entry_separator);
@@ -1803,8 +1803,8 @@ insert_menu_comment_content (ELEMENT_LIST *element_list,
int position,
{
ELEMENT *menu_comment = new_element (ET_menu_comment);
ELEMENT *preformatted = new_element (ET_preformatted);
- ELEMENT *empty_line_first_after = new_element (ET_empty_line);
- ELEMENT *empty_line_second_after = new_element (ET_empty_line);
+ ELEMENT *empty_line_first_after = new_text_element (ET_empty_line);
+ ELEMENT *empty_line_second_after = new_text_element (ET_empty_line);
int index_in_preformatted = 0;
int i;
@@ -1812,7 +1812,7 @@ insert_menu_comment_content (ELEMENT_LIST *element_list,
int position,
if (!no_leading_empty_line)
{
- ELEMENT *empty_line_before = new_element (ET_empty_line);
+ ELEMENT *empty_line_before = new_text_element (ET_empty_line);
text_append (&empty_line_before->text, "\n");
add_to_element_contents (preformatted, empty_line_before);
index_in_preformatted = 1;
@@ -2135,7 +2135,7 @@ new_detailmenu (ERROR_MESSAGE_LIST *error_messages,
if (new_detailmenu_e->contents.number > 0)
{
int i;
- ELEMENT *new_line = new_element (ET_normal_text);
+ ELEMENT *new_line = new_text_element (ET_normal_text);
/* There is a menu comment with a preformatted added in front of each
detailed menu section with the node section name */
ELEMENT *first_preformatted
@@ -2163,7 +2163,7 @@ new_detailmenu (ERROR_MESSAGE_LIST *error_messages,
}
else
{
- ELEMENT *master_menu_title_string = new_element (ET_normal_text);
+ ELEMENT *master_menu_title_string = new_text_element
(ET_normal_text);
text_append (&master_menu_title_string->text,
" --- The Detailed Node Listing ---");
master_menu_title_string->parent = first_preformatted;
@@ -2212,7 +2212,7 @@ new_complete_menu_master_menu (ERROR_MESSAGE_LIST
*error_messages,
ELEMENT *menu_comment = new_element (ET_menu_comment);
ELEMENT *preformatted = new_element (ET_preformatted);
ELEMENT *empty_line
- = new_element (ET_after_menu_description_line);
+ = new_text_element (ET_after_menu_description_line);
add_to_element_contents (menu_node, menu_comment);
add_to_element_contents (menu_comment, preformatted);
diff --git a/tp/Texinfo/XS/structuring_transfo/transformations.c
b/tp/Texinfo/XS/structuring_transfo/transformations.c
index f2eb59f41c..5ee7aa59a5 100644
--- a/tp/Texinfo/XS/structuring_transfo/transformations.c
+++ b/tp/Texinfo/XS/structuring_transfo/transformations.c
@@ -183,7 +183,7 @@ correct_level (ELEMENT *section, ELEMENT *parent, int
modifier)
while (remaining_level > 0)
{
ELEMENT *element = new_element (ET_NONE);
- ELEMENT *rawline_arg = new_element (ET_rawline_arg);
+ ELEMENT *rawline_arg = new_text_element (ET_rawline_arg);
element->cmd = cmd;
add_to_element_contents (parent, element);
@@ -242,10 +242,11 @@ fill_gaps_in_sectioning (ELEMENT *root, ELEMENT
*commands_heading_content)
{
ELEMENT *line_content;
ELEMENT *new_section = new_element (ET_NONE);
- ELEMENT *spaces_before_argument = new_element (ET_other_text);
+ ELEMENT *spaces_before_argument
+ = new_text_element (ET_other_text);
ELEMENT *line_arg = new_element (ET_line_arg);
- ELEMENT *spaces_after_argument = new_element (ET_other_text);
- ELEMENT *empty_line = new_element (ET_empty_line);
+ ELEMENT *spaces_after_argument = new_text_element
(ET_other_text);
+ ELEMENT *empty_line = new_text_element (ET_empty_line);
current_section_level++;
new_section->cmd
@@ -402,7 +403,7 @@ relate_index_entries_to_table_items_in (ELEMENT *table,
if (item && entry_idx_info)
{
ELEMENT_LIST *index_entry_command = new_list ();
- ELEMENT *e = new_element (ET_other_text);
+ ELEMENT *e = new_text_element (ET_other_text);
/*
This is better than overwriting 'entry_element', which
holds important information.
@@ -581,7 +582,7 @@ new_node (ERROR_MESSAGE_LIST *error_messages, ELEMENT
*node_tree,
if (node_tree->contents.number <= 0)
{
- ELEMENT *empty_text = new_element (ET_normal_text);
+ ELEMENT *empty_text = new_text_element (ET_normal_text);
text_append (&empty_text->text, "");
add_to_element_contents (node_tree, empty_text);
empty_node = 1;
@@ -624,8 +625,8 @@ new_node (ERROR_MESSAGE_LIST *error_messages, ELEMENT
*node_tree,
ELEMENT *target = 0;
ELEMENT *appended_text = 0;
ELEMENT *node_line_arg = new_element (ET_line_arg);
- ELEMENT *spaces_before = new_element (ET_other_text);
- ELEMENT *spaces_after = new_element (ET_other_text);
+ ELEMENT *spaces_before = new_text_element (ET_other_text);
+ ELEMENT *spaces_after = new_text_element (ET_other_text);
node = new_element (ET_NONE);
node->cmd = CM_node;
@@ -646,7 +647,7 @@ new_node (ERROR_MESSAGE_LIST *error_messages, ELEMENT
*node_tree,
if (appended_number)
{
- appended_text = new_element (ET_normal_text);
+ appended_text = new_text_element (ET_normal_text);
text_printf (&appended_text->text, " %d", appended_number);
add_to_element_contents (node_line_arg, appended_text);
}
@@ -785,8 +786,8 @@ insert_nodes_for_sectioning_commands (DOCUMENT *document)
if (content->cmd == CM_top)
{
- ELEMENT *top_node_text = new_element (ET_normal_text);
- new_node_tree = new_element (ET_normal_text);
+ ELEMENT *top_node_text = new_text_element (ET_normal_text);
+ new_node_tree = new_text_element (ET_normal_text);
text_append (&top_node_text->text, "Top");
add_to_element_contents (new_node_tree, top_node_text);
}
@@ -915,7 +916,7 @@ void
prepend_new_menu_in_node_section (ELEMENT *node, ELEMENT *section,
ELEMENT *current_menu)
{
- ELEMENT *empty_line = new_element (ET_empty_line);
+ ELEMENT *empty_line = new_text_element (ET_empty_line);
ELEMENT_LIST *menus = add_extra_contents (node, "menus", 0);
add_to_element_contents (section, current_menu);
@@ -1241,7 +1242,7 @@ regenerate_master_menu (DOCUMENT *document, int
use_sections)
if (preformatted)
{
- ELEMENT *empty_line = new_element (ET_empty_line);
+ ELEMENT *empty_line = new_text_element (ET_empty_line);
text_append (&empty_line->text, "\n");
add_to_element_contents (preformatted, empty_line);
}
@@ -1251,7 +1252,8 @@ regenerate_master_menu (DOCUMENT *document, int
use_sections)
there is a last menu entry, add a menu comment containing an empty line
after it
*/
- ELEMENT *after_line = new_element (ET_after_menu_description_line);
+ ELEMENT *after_line
+ = new_text_element (ET_after_menu_description_line);
ELEMENT *menu_comment = new_element (ET_menu_comment);
insert_into_contents (last_menu, menu_comment, index);
index++;
@@ -1350,7 +1352,8 @@ protect_hashchar_at_line_beginning_internal (const char
*type,
char *current_text = strdup (current->text.text);
char *p = current_text;
size_t leading_spaces_nr;
- ELEMENT *leading_spaces = new_element
(ET_normal_text);
+ ELEMENT *leading_spaces
+ = new_text_element (ET_normal_text);
ELEMENT *hashchar = new_element (ET_NONE);
ELEMENT *arg = new_element (ET_brace_command_arg);
/* count UTF-8 encoded Unicode characters for
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch master updated: * tp/Texinfo/XS/convert/converter.c (new_text_element_added), tp/Texinfo/XS/main/tree.c (new_text_element): add a new function to setup a text element, to prepare for a different initialization and different struct union field use. Update calls.,
Patrice Dumas <=