Skip to content

Conversation

@haxtibal
Copy link
Contributor

@haxtibal haxtibal commented Nov 10, 2025

Previously, a source node field was terminated at the first empty line. A workaround existed where adding literal \n\n was translated to new line.

This change removes the workaround and introduces a more user friendly rule where empty lines are kept as part of a field. To terminate the field we can either simply start the next field, or insert a reserved termination word that ends the field preliminary.

Comment grammar didn't change much. Most notably newlines that belong to field text are now part of the parse tree.

TODO:

Until now, finding a static merge candidate for source nodes relied on
having a UID field set at source code side. Now we can also use MIDs
for this purpose. Merge by MID gets priority over merge merge by UID.

This requires thinking about several edge cases. See test desriptions
for some of them.
Previously, a source node field was terminated at the first empty line.
A workaround existed where adding literal \n\n was translated to new
line. This removes the workaround and introduces a more user friendly
way, where empty lines don't terminate a field. Instead, either the next
field marker or a reserved termination word ends the field.

Comment grammar didn't change much. Most notaly newlines that belong to
field text are now part of the parse tree.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant