[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch master updated: * tp/Texinfo/ParserNonXS.pm (_split_def_args), tp
From: |
Patrice Dumas |
Subject: |
branch master updated: * tp/Texinfo/ParserNonXS.pm (_split_def_args), tp/Texinfo/XS/parsetexi/def.c (split_def_args): keep track of source marks when splitting @def* arguments. |
Date: |
Thu, 26 Jan 2023 01:34:37 -0500 |
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 35509da6ce * tp/Texinfo/ParserNonXS.pm (_split_def_args),
tp/Texinfo/XS/parsetexi/def.c (split_def_args): keep track of source marks when
splitting @def* arguments.
35509da6ce is described below
commit 35509da6ce0ab7f32351da23a15df0e7be1f510f
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Thu Jan 26 07:32:29 2023 +0100
* tp/Texinfo/ParserNonXS.pm (_split_def_args),
tp/Texinfo/XS/parsetexi/def.c (split_def_args): keep track of
source marks when splitting @def* arguments.
* tp/Texinfo/ParserNonXS.pm (_process_remaining_on_line),
tp/Texinfo/XS/parsetexi/api.c (store_source_mark_list),
tp/Texinfo/XS/parsetexi/parser.c (process_remaining_on_line),
tp/Texinfo/XS/parsetexi/source_marks.c (register_source_mark)
(source_marks_reset_counters): add source mark for definition line
continuation.
---
ChangeLog | 13 ++++
tp/Texinfo/ParserNonXS.pm | 26 +++++++
tp/Texinfo/XS/parsetexi/api.c | 1 +
tp/Texinfo/XS/parsetexi/def.c | 35 +++++++---
tp/Texinfo/XS/parsetexi/parser.c | 4 ++
tp/Texinfo/XS/parsetexi/source_marks.c | 7 ++
tp/Texinfo/XS/parsetexi/source_marks.h | 2 +
tp/Texinfo/XS/parsetexi/tree_types.h | 3 +-
.../converters_tests/definition_commands.pl | 8 +++
tp/t/results/coverage/def.pl | 8 +++
tp/t/results/def/all_commands_delimiters.pl | 80 ++++++++++++++++++++++
.../def/all_commands_delimiters_printindex.pl | 80 ++++++++++++++++++++++
tp/t/results/def/end_of_lines_protected.pl | 24 +++++++
.../def/end_of_lines_protected_in_footnote.pl | 24 +++++++
tp/t/results/def/wrong_braces_with_end_of_lines.pl | 16 +++++
15 files changed, 322 insertions(+), 9 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 1faa0bc98d..92d6dacc02 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2023-01-26 Patrice Dumas <pertusus@free.fr>
+
+ * tp/Texinfo/ParserNonXS.pm (_split_def_args),
+ tp/Texinfo/XS/parsetexi/def.c (split_def_args): keep track of
+ source marks when splitting @def* arguments.
+
+ * tp/Texinfo/ParserNonXS.pm (_process_remaining_on_line),
+ tp/Texinfo/XS/parsetexi/api.c (store_source_mark_list),
+ tp/Texinfo/XS/parsetexi/parser.c (process_remaining_on_line),
+ tp/Texinfo/XS/parsetexi/source_marks.c (register_source_mark)
+ (source_marks_reset_counters): add source mark for definition line
+ continuation.
+
2023-01-24 Gavin Smith <gavinsmith0123@gmail.com>
Simplify context brace command closing
diff --git a/tp/Texinfo/ParserNonXS.pm b/tp/Texinfo/ParserNonXS.pm
index d068688d44..69ad3c2a42 100644
--- a/tp/Texinfo/ParserNonXS.pm
+++ b/tp/Texinfo/ParserNonXS.pm
@@ -2822,8 +2822,28 @@ sub _split_def_args
if ($split_text[0] =~ /^\s*$/) {
$type = 'spaces';
}
+ my @remaining_source_marks;
+ my ($current_position, $previous_position);
+ if ($root->{'source_marks'}) {
+ @remaining_source_marks = @{$root->{'source_marks'}};
+ $current_position = 0;
+ $previous_position = 0;
+ }
for my $t (@split_text) {
my $e = {'text' => $t };
+ if (scalar(@remaining_source_marks)) {
+ $current_position += length($t);
+ while (scalar(@remaining_source_marks)
+ and ($remaining_source_marks[0]->{'position'} >
$previous_position
+ or $remaining_source_marks[0]->{'position'} == 0)
+ and $remaining_source_marks[0]->{'position'} <=
$current_position) {
+ my $source_mark = shift(@remaining_source_marks);
+ $source_mark->{'position'}
+ = $source_mark->{'position'} - $previous_position;
+ $e->{'source_marks'} = [] if (! defined($e->{'source_marks'}));
+ push @{$e->{'source_marks'}}, $source_mark;
+ }
+ }
if ($type) {
$e->{'type'} = $type;
$type = undef;
@@ -2832,6 +2852,9 @@ sub _split_def_args
}
$e->{'parent'} = $root->{'parent'};
push @elements, $e;
+ if (scalar(@remaining_source_marks)) {
+ $previous_position = $current_position;
+ }
}
return @elements;
} elsif ($root->{'type'} and $root->{'type'} eq 'bracketed') {
@@ -4991,6 +5014,9 @@ sub _process_remaining_on_line($$$$)
_check_valid_nesting_context ($self, $command, $source_info);
if ($def_line_continuation) {
+ my $line_continuation_source_mark
+ = { 'sourcemark_type' => 'defline_continuation' };
+ _register_source_mark($self, $current, $line_continuation_source_mark);
$retval = $GET_A_NEW_LINE;
goto funexit;
}
diff --git a/tp/Texinfo/XS/parsetexi/api.c b/tp/Texinfo/XS/parsetexi/api.c
index 78760082ed..c7c7b66d1b 100644
--- a/tp/Texinfo/XS/parsetexi/api.c
+++ b/tp/Texinfo/XS/parsetexi/api.c
@@ -583,6 +583,7 @@ store_source_mark_list (ELEMENT *e)
SAVE_S_M_TYPE (include)
SAVE_S_M_TYPE (setfilename)
SAVE_S_M_TYPE (delcomment)
+ SAVE_S_M_TYPE (defline_continuation)
}
av_push (av, newRV_inc ((SV *)source_mark));
diff --git a/tp/Texinfo/XS/parsetexi/def.c b/tp/Texinfo/XS/parsetexi/def.c
index 28b2e30aa4..52c1ffaac5 100644
--- a/tp/Texinfo/XS/parsetexi/def.c
+++ b/tp/Texinfo/XS/parsetexi/def.c
@@ -18,6 +18,7 @@
#include "parser.h"
#include "text.h"
+#include "source_marks.h"
void
gather_def_item (ELEMENT *current, enum command_id next_command)
@@ -200,6 +201,8 @@ split_def_args (ELEMENT *current, int starting_idx)
char *p;
ELEMENT *new;
int len;
+ int current_position = 0;
+ int previous_position = 0;
if (e->type == ET_bracketed)
{
isolate_last_space (e);
@@ -216,20 +219,36 @@ split_def_args (ELEMENT *current, int starting_idx)
if (len)
{
new = new_element (ET_spaces);
- text_append_n (&new->text, p, len);
- insert_into_contents (current, new, i++);
add_extra_string_dup (new, "def_role", "spaces");
- if (!*(p += len))
- break;
}
-
- len = strcspn (p, whitespace_chars);
- new = new_element (ET_NONE);
+ else
+ {
+ len = strcspn (p, whitespace_chars);
+ new = new_element (ET_NONE);
+ }
+ current_position += len;
+ while (e->source_mark_list.number)
+ {
+ SOURCE_MARK *source_mark
+ = e->source_mark_list.list[e->source_mark_list.number-1];
+ if ((source_mark->position > previous_position
+ || source_mark->position == 0)
+ && source_mark->position <= current_position)
+ {
+ source_mark->position
+ = source_mark->position - previous_position;
+ add_source_mark (source_mark, new);
+ e->source_mark_list.list[e->source_mark_list.number-1] = 0;
+ e->source_mark_list.number--;
+ }
+ else
+ break;
+ }
text_append_n (&new->text, p, len);
insert_into_contents (current, new, i++);
if (!*(p += len))
break;
-
+ previous_position = current_position;
}
destroy_element (remove_from_contents (current, i--));
}
diff --git a/tp/Texinfo/XS/parsetexi/parser.c b/tp/Texinfo/XS/parsetexi/parser.c
index f659c3b484..adec42dfdb 100644
--- a/tp/Texinfo/XS/parsetexi/parser.c
+++ b/tp/Texinfo/XS/parsetexi/parser.c
@@ -22,6 +22,7 @@
#include "parser.h"
#include "text.h"
#include "input.h"
+#include "source_marks.h"
const char *whitespace_chars = " \t\v\f\r\n";
@@ -1952,6 +1953,9 @@ process_remaining_on_line (ELEMENT **current_inout, char
**line_inout)
if (def_line_continuation)
{
+ SOURCE_MARK *line_continuation_source_mark
+ = new_source_mark (SM_type_defline_continuation);
+ register_source_mark (current, line_continuation_source_mark);
retval = GET_A_NEW_LINE;
goto funexit;
}
diff --git a/tp/Texinfo/XS/parsetexi/source_marks.c
b/tp/Texinfo/XS/parsetexi/source_marks.c
index 2c793e394d..5e88459766 100644
--- a/tp/Texinfo/XS/parsetexi/source_marks.c
+++ b/tp/Texinfo/XS/parsetexi/source_marks.c
@@ -22,6 +22,7 @@
int include_counter = 0;
int setfilename_counter = 0;
int delcomment_counter = 0;
+int defline_continuation_counter = 0;
SOURCE_MARK *
new_source_mark (enum source_mark_type type)
@@ -89,6 +90,11 @@ register_source_mark (ELEMENT *e, SOURCE_MARK *source_mark)
delcomment_counter++;
source_mark->counter = delcomment_counter;
}
+ else if (source_mark->type == SM_type_defline_continuation)
+ {
+ defline_continuation_counter++;
+ source_mark->counter = defline_continuation_counter;
+ }
}
if (e->contents.number > 0)
@@ -125,4 +131,5 @@ source_marks_reset_counters (void)
include_counter = 0;
setfilename_counter = 0;
delcomment_counter = 0;
+ defline_continuation_counter = 0;
}
diff --git a/tp/Texinfo/XS/parsetexi/source_marks.h
b/tp/Texinfo/XS/parsetexi/source_marks.h
index 1ce9ce7d78..f2f0b0db85 100644
--- a/tp/Texinfo/XS/parsetexi/source_marks.h
+++ b/tp/Texinfo/XS/parsetexi/source_marks.h
@@ -22,5 +22,7 @@ SOURCE_MARK *new_source_mark (enum source_mark_type type);
void register_source_mark (ELEMENT *e, SOURCE_MARK *source_mark);
void source_marks_reset_counters (void);
void add_source_marks (SOURCE_MARK_LIST *source_mark_list, ELEMENT *e);
+void add_source_mark (SOURCE_MARK *source_mark, ELEMENT *e);
+
#endif
diff --git a/tp/Texinfo/XS/parsetexi/tree_types.h
b/tp/Texinfo/XS/parsetexi/tree_types.h
index 1e8e317546..388c6f56ed 100644
--- a/tp/Texinfo/XS/parsetexi/tree_types.h
+++ b/tp/Texinfo/XS/parsetexi/tree_types.h
@@ -45,7 +45,8 @@ enum extra_type {
enum source_mark_type { SM_type_none,
SM_type_include,
SM_type_setfilename,
- SM_type_delcomment
+ SM_type_delcomment,
+ SM_type_defline_continuation
};
enum source_mark_location { source_mark_location_none,
diff --git a/tp/t/results/converters_tests/definition_commands.pl
b/tp/t/results/converters_tests/definition_commands.pl
index 62d06b0410..e78b09e82b 100644
--- a/tp/t/results/converters_tests/definition_commands.pl
+++ b/tp/t/results/converters_tests/definition_commands.pl
@@ -10724,6 +10724,14 @@ $result_trees{'definition_commands'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 1,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
diff --git a/tp/t/results/coverage/def.pl b/tp/t/results/coverage/def.pl
index f9260d7401..81910be4c4 100644
--- a/tp/t/results/coverage/def.pl
+++ b/tp/t/results/coverage/def.pl
@@ -201,6 +201,14 @@ $result_trees{'def'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 1,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
diff --git a/tp/t/results/def/all_commands_delimiters.pl
b/tp/t/results/def/all_commands_delimiters.pl
index e373b8d526..6039edc152 100644
--- a/tp/t/results/def/all_commands_delimiters.pl
+++ b/tp/t/results/def/all_commands_delimiters.pl
@@ -128,6 +128,14 @@ $result_trees{'all_commands_delimiters'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 1,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -514,6 +522,14 @@ $result_trees{'all_commands_delimiters'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 2,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -1214,6 +1230,14 @@ $result_trees{'all_commands_delimiters'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 3,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -1817,6 +1841,14 @@ $result_trees{'all_commands_delimiters'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 4,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -2067,6 +2099,14 @@ $result_trees{'all_commands_delimiters'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 5,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -2444,6 +2484,14 @@ $result_trees{'all_commands_delimiters'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 6,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -2807,6 +2855,14 @@ $result_trees{'all_commands_delimiters'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 7,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -3199,6 +3255,14 @@ $result_trees{'all_commands_delimiters'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 8,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -3562,6 +3626,14 @@ $result_trees{'all_commands_delimiters'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 9,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -3952,6 +4024,14 @@ $result_trees{'all_commands_delimiters'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 10,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
diff --git a/tp/t/results/def/all_commands_delimiters_printindex.pl
b/tp/t/results/def/all_commands_delimiters_printindex.pl
index 007658ce99..cd4ef617de 100644
--- a/tp/t/results/def/all_commands_delimiters_printindex.pl
+++ b/tp/t/results/def/all_commands_delimiters_printindex.pl
@@ -146,6 +146,14 @@ $result_trees{'all_commands_delimiters_printindex'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 1,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -533,6 +541,14 @@ $result_trees{'all_commands_delimiters_printindex'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 2,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -1235,6 +1251,14 @@ $result_trees{'all_commands_delimiters_printindex'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 3,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -1840,6 +1864,14 @@ $result_trees{'all_commands_delimiters_printindex'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 4,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -2091,6 +2123,14 @@ $result_trees{'all_commands_delimiters_printindex'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 5,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -2469,6 +2509,14 @@ $result_trees{'all_commands_delimiters_printindex'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 6,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -2833,6 +2881,14 @@ $result_trees{'all_commands_delimiters_printindex'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 7,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -3226,6 +3282,14 @@ $result_trees{'all_commands_delimiters_printindex'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 8,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -3590,6 +3654,14 @@ $result_trees{'all_commands_delimiters_printindex'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 9,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -3981,6 +4053,14 @@ $result_trees{'all_commands_delimiters_printindex'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 10,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
diff --git a/tp/t/results/def/end_of_lines_protected.pl
b/tp/t/results/def/end_of_lines_protected.pl
index fe72063dda..b3fc2cdf50 100644
--- a/tp/t/results/def/end_of_lines_protected.pl
+++ b/tp/t/results/def/end_of_lines_protected.pl
@@ -52,6 +52,14 @@ $result_trees{'end_of_lines_protected'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 1,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -71,6 +79,14 @@ $result_trees{'end_of_lines_protected'} = {
{
'contents' => [
{
+ 'source_marks' => [
+ {
+ 'counter' => 2,
+ 'location' => 'text',
+ 'position' => 5,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => 'args with end of line within'
}
],
@@ -164,6 +180,14 @@ $result_trees{'end_of_lines_protected'} = {
'spaces_after_argument' => '
'
},
+ 'source_marks' => [
+ {
+ 'counter' => 3,
+ 'location' => 'content',
+ 'position' => 6,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'type' => 'block_line_arg'
}
],
diff --git a/tp/t/results/def/end_of_lines_protected_in_footnote.pl
b/tp/t/results/def/end_of_lines_protected_in_footnote.pl
index c936d344e0..f5c339f2be 100644
--- a/tp/t/results/def/end_of_lines_protected_in_footnote.pl
+++ b/tp/t/results/def/end_of_lines_protected_in_footnote.pl
@@ -71,6 +71,14 @@ $result_trees{'end_of_lines_protected_in_footnote'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 1,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' =>
'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
@@ -90,6 +98,14 @@ $result_trees{'end_of_lines_protected_in_footnote'} = {
{
'contents' => [
{
+ 'source_marks' => [
+ {
+ 'counter' => 2,
+ 'location' => 'text',
+ 'position' => 5,
+ 'sourcemark_type' =>
'defline_continuation'
+ }
+ ],
'text' => 'args with end of line
within'
}
],
@@ -183,6 +199,14 @@ $result_trees{'end_of_lines_protected_in_footnote'} = {
'spaces_after_argument' => '
'
},
+ 'source_marks' => [
+ {
+ 'counter' => 3,
+ 'location' => 'content',
+ 'position' => 6,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'type' => 'block_line_arg'
}
],
diff --git a/tp/t/results/def/wrong_braces_with_end_of_lines.pl
b/tp/t/results/def/wrong_braces_with_end_of_lines.pl
index 6fde170e6c..9f6feb0dce 100644
--- a/tp/t/results/def/wrong_braces_with_end_of_lines.pl
+++ b/tp/t/results/def/wrong_braces_with_end_of_lines.pl
@@ -74,6 +74,14 @@ $result_trees{'wrong_braces_with_end_of_lines'} = {
'line_nr' => 1,
'macro' => ''
},
+ 'source_marks' => [
+ {
+ 'counter' => 1,
+ 'location' => 'text',
+ 'position' => 1,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'type' => 'bracketed_def_content'
}
],
@@ -216,6 +224,14 @@ $result_trees{'wrong_braces_with_end_of_lines'} = {
'extra' => {
'def_role' => 'spaces'
},
+ 'source_marks' => [
+ {
+ 'counter' => 2,
+ 'location' => 'text',
+ 'position' => 2,
+ 'sourcemark_type' => 'defline_continuation'
+ }
+ ],
'text' => ' ',
'type' => 'spaces'
},
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch master updated: * tp/Texinfo/ParserNonXS.pm (_split_def_args), tp/Texinfo/XS/parsetexi/def.c (split_def_args): keep track of source marks when splitting @def* arguments.,
Patrice Dumas <=