configure.php: recover failed XIncludes inside classsynopsis#326
configure.php: recover failed XIncludes inside classsynopsis#326lacatoire wants to merge 2 commits into
Conversation
xinclude_residual_fixup handled listitem/refentry/refsect1/tbody/variablelist parents but not classsynopsis, so a failed XInclude targeting a methodsynopsis or fieldsynopsis inside a class synopsis hit the default branch and hard-failed the build (Unknown parent of failed XInclude: classsynopsis). Add a classsynopsis case that injects a <classsynopsisinfo role="comment"> carrying the failure marker. This is a valid child of classsynopsis per the DocBook 5.2 RNG (verified), so translations with a missing class-member include now surface the failure and keep validating, as intended for the other parents.
|
Got curious about the Does it break something locally, or does the missing attribute cause omitions/problems on the PhD side? I prefer to keep fixups as minimal as possible. so no attribute or |
Dropping the attribute passes RNG but PhD's format_classsynopsisinfo
(Generic/XHTML.php:1145) treats a role-less classsynopsisinfo as the
class-body opener: it appends ' {', sets classsynopsis close=true and
asserts legacy rendering. role='comment' renders the marker as '/* ... */'
instead, which is what the fixup needs.
|
Good question. Dropping the attribute passes RNG, but it changes the PhD rendering. In I've switched to single-quoted role='comment' to drop the escaping, as you suggested. |
|
Nice. I really do not know these PhD specific behaviors. Plan to merge this by monday, before any xi:fallback deletions. |
xinclude_residual_fixup()recovers failed XIncludes on translations perparent element, but had no
classsynopsiscase, so a failed include targetinga
methodsynopsisorfieldsynopsisinside a class synopsis hard-failed thebuild (
Unknown parent of failed XInclude: classsynopsis).Adds a
classsynopsiscase injecting a<classsynopsisinfo role="comment">marker, a valid child per the DocBook 5.2 RNG.
Related:
<xi:fallback/>that masked such failures@alfsb