Closed lehonma closed 7 years ago
@jonas: I am not sure I should open an issue for the bellow, which I think is an unexpected behavior
\include{10-station-amenities.manu}
halts during html generation if the file starts with
\subsection{Station Amenities}
No problem occurs if the content of the file is moved to 09-station-architecture
as it is on the pr.
I let comments on files (including the error with DEBUG =1)... the behavior is unexpected right
do you want me to submit the one that fails on another pr or maybe in my fork? or do you want me to try to fix it (I would look for something related with the position recording)
I'm going to take a look at this right now!
Btw: you just mentioned a complete stranger : )
I'm debugging the issue...
So far I have been able to confirm that the generated transform.Document
is invalid, and that this issue is correlated to the \include
.
DChapter: brt-stations
├ DSection: principles-of-station-design
├ DSection: basic-concepts
├ DSection: station-capacity
│ ├ DSubSection: station-sub-stops
│ ├ DSubSection: high-capacity-system-stations
│ ├ DSubSection: medium-capacity-system-stations
│ ├ DSubSection: low-capacity-system-stations
│ ├ DSubSection: modularity-and-scalability
├ DSection: types-of-stations
│ ├ DSubSection: island-stations
│ ├ DSubSection: split-stations
│ ├ DSubSection: offset-stations
│ ├ DSubSection: directional-stations
├ DSection: station-location
├ DSection: station-dimensions
│ ├ DSubSection: station-length
│ ├ DSubSection: station-width
│ ├ DSubSection: station-height
│ ├ DSubSection: station-and-road-cross-sections
├ DSection: station-components
│ ├ DSubSection: access--arrival-area
│ ├ DSubSection: entrance-area-and-fare-collection
│ ├ DSubSection: number-of-gates-ticket-machines-or-boots
│ ├ DSubSection: layout-and-placement-of-turnstiles
│ ├ DSubSection: platform-waiting-and-circulation-areas
│ ├ DSubSection: wayfinding
│ ├ DSubSection: its-components
│ ├ DSubSection: seating
├ DSection: vehicle-interface
│ ├ DSubSection: doors-and-boarding-area
│ ├ DSubSection: platform-vehicle-alignment
├ DSection: station-architecture
│ ├ DSubSection: architectural-style
│ ├ DSubSection: weather-and-enclosure
│ ├ DSubSection: lighting-and-power-supply
│ ├ DSubSection: signature-and-iconic-stations
│ ├ DSubSection: supervision-during-construction
│ ├ DSubSection: ensuring-high-quality-construction
│ ├ DSubSection: demonstration-stations
│ ├ DSubSection: materials
│ │ ├ DSubSubSection: passive-heating-and-cooling
│ │ ├ DSubSubSection: mechanical-heating-and-cooling
│ │ ├ DSubSubSection: electricity
│ ├ DSubSection: greenery
├ DSubSection: station-amenities
├ DSection: station-operation
│ ├ DSubSection: brt-station-staffing
│ ├ DSubSection: maintenance-of-brt-stations
│ ├ DSubSection: cleaning-of-brt-stations
│ ├ DSubSection: security-and-vandalism
│ ├ DSubSection: emergencies-and-evacuation
│ ├ DSubSection: special-events
This might have something to do with the non-flattened structure of immediately nested transform.Document.DElemList
we noticed earlier (from the stack trace).
The complete vertical structure hierarchy is (including non sectioning elements with vertical children):
I see two problems with this:
DSubSection: station-amenities
must come from a bug in transform.Transform.consume
: \Ok, I now know what causes the issue.
Basically, transform.Transform
follows the parser.AST
(keyword: tree) and can't handle subsections that aren't decedents of sections. And that particular file organization causes the AST to look something like this:
VElemList for file: 00-index.manu
├ VElemList for file: 01-principles-of-station-design.manu
├ [...]
├ VElemList for file: 09-station-architecture.manu
│ ├ Section: station-architecture
│ │ ├ DSubSection: architectural-style
│ │ ├ [...]
│ │ ├ DSubSection: greenery
├ VElemList for file: 10-station-amenities.manu
│ ├ SubSection: station-amenities
EDIT: the above structure is a hypothesis, not a real world dump! And #186 suggests that the problem is a bit more complex than that.
@aszasz : because of the file structure we adopted, I'm comfortable with 09-station-architecture.manu
being a good (if not the best) place for that subsection.
I opened a separate issue for the problem we identified and I'll try to tackle soon(ish).
TODOs: