Parses Adobe FrameMaker MIF files.
MifParser separates parsing from interpretation.
MIF source -> Parser -> Paragraph / List / etc. -> Interpreter -> heading / body / list / etc.
The Parser reads raw MIF and creates Ruby elements.
ParagraphParserparses<Para>blocks.TableParserparses tables, rows, and cells.ListParseris different: MIF lists are represented as paragraphs, soParagraphParsercallsListParserto decide whether a parsed paragraph should become aParagraphorList.
The Interpreter determines what parsed elements mean:
ParagraphInterpreter→ heading or bodyListInterpreter→ list type, level, markerTableInterpreter→ table data
The gem is available as open source under the terms of the MIT License.