gitextract_1cwcjqz8/ ├── .gitignore ├── Android/ │ └── AntFluid/ │ ├── .gitignore │ ├── app-sample/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── fluid/ │ │ │ └── markdown/ │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── fluid/ │ │ │ │ └── markdown/ │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── MyImageHandler.java │ │ │ │ └── demos/ │ │ │ │ ├── ListActivity.java │ │ │ │ ├── MarkdownData.java │ │ │ │ ├── MarkdownHolder.java │ │ │ │ ├── MarkwonListAdapter.java │ │ │ │ └── PrinterActivity.java │ │ │ └── res/ │ │ │ ├── drawable/ │ │ │ │ ├── baseline_arrow_back_24.xml │ │ │ │ ├── circle.xml │ │ │ │ ├── editor_bg.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ └── item_bg.xml │ │ │ ├── drawable-v24/ │ │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── layout/ │ │ │ │ ├── activity_list.xml │ │ │ │ ├── activity_printer.xml │ │ │ │ ├── layout_main.xml │ │ │ │ └── list_item.xml │ │ │ ├── mipmap-anydpi-v26/ │ │ │ │ ├── ic_launcher.xml │ │ │ │ └── ic_launcher_round.xml │ │ │ ├── values/ │ │ │ │ ├── colors.xml │ │ │ │ ├── strings.xml │ │ │ │ └── themes.xml │ │ │ ├── values-v35/ │ │ │ │ └── themes.xml │ │ │ ├── values-zh/ │ │ │ │ └── strings.xml │ │ │ └── xml/ │ │ │ ├── backup_rules.xml │ │ │ └── data_extraction_rules.xml │ │ └── test/ │ │ └── java/ │ │ └── com/ │ │ └── fluid/ │ │ └── markdown/ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── fluid-markdown/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── consumer-rules.pro │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── fluid/ │ │ │ └── afm/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── fluid/ │ │ │ │ └── afm/ │ │ │ │ ├── AFMInitializer.java │ │ │ │ ├── markdown/ │ │ │ │ │ ├── ElementClickEventCallback.java │ │ │ │ │ ├── MarkdownParser.java │ │ │ │ │ ├── MarkdownParserFactory.java │ │ │ │ │ ├── code/ │ │ │ │ │ │ └── CodeBlockPlugin.java │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── CustomHtmlPlugin.java │ │ │ │ │ │ ├── CustomIndentSpan.java │ │ │ │ │ │ ├── CustomUnderlineSpan.java │ │ │ │ │ │ ├── HtmlMarkTagHandler.java │ │ │ │ │ │ ├── HtmlParaTagHandler.java │ │ │ │ │ │ ├── HtmlSpanTagHandler.java │ │ │ │ │ │ ├── SpanTextClickableSpan.java │ │ │ │ │ │ └── TextHeightBackgroundSpan.java │ │ │ │ │ ├── icon/ │ │ │ │ │ │ ├── IconSpan.java │ │ │ │ │ │ └── IconSpanHandler.java │ │ │ │ │ ├── iconlink/ │ │ │ │ │ │ ├── IconLinkSpan.java │ │ │ │ │ │ └── IconLinkSpanHandler.java │ │ │ │ │ ├── image/ │ │ │ │ │ │ ├── CustomImageSpan.java │ │ │ │ │ │ ├── FootnoteClickSpan.java │ │ │ │ │ │ ├── FootnoteSpan.java │ │ │ │ │ │ └── SuperscriptImageSpan.java │ │ │ │ │ ├── list/ │ │ │ │ │ │ └── DefinitionListPlugin.java │ │ │ │ │ ├── model/ │ │ │ │ │ │ └── EventModel.java │ │ │ │ │ ├── span/ │ │ │ │ │ │ ├── LinkClickSpan.java │ │ │ │ │ │ └── OpacitySpan.java │ │ │ │ │ ├── text/ │ │ │ │ │ │ ├── AfmTextPlugin.java │ │ │ │ │ │ ├── FootnoteInTableSpan.java │ │ │ │ │ │ └── RoundedBackgroundSpan.java │ │ │ │ │ └── widget/ │ │ │ │ │ └── PrinterMarkDownTextView.java │ │ │ │ └── ui/ │ │ │ │ ├── MarkDownPreviewActivity.java │ │ │ │ ├── MarkdownContentAdapter.java │ │ │ │ └── MarkdownTextAdapter.java │ │ │ └── res/ │ │ │ ├── drawable/ │ │ │ │ ├── back.xml │ │ │ │ ├── bg_shape_ffffffff_12.xml │ │ │ │ ├── default_placeholderdefault.xml │ │ │ │ └── ic_triangle.xml │ │ │ ├── layout/ │ │ │ │ ├── activity_magnify_table.xml │ │ │ │ ├── item_markdown_content.xml │ │ │ │ └── item_markdown_text.xml │ │ │ └── values/ │ │ │ ├── colors.xml │ │ │ ├── dimes.xml │ │ │ ├── ids.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test/ │ │ └── java/ │ │ └── com/ │ │ └── fluid/ │ │ └── afm/ │ │ └── ExampleUnitTest.java │ ├── gradle/ │ │ ├── libs.versions.toml │ │ └── wrapper/ │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradle.properties │ ├── gradlew │ ├── gradlew.bat │ ├── markwon-core/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ ├── java/ │ │ │ │ ├── com/ │ │ │ │ │ └── fluid/ │ │ │ │ │ └── afm/ │ │ │ │ │ ├── ContextHolder.java │ │ │ │ │ ├── StreamOutStateObserver.java │ │ │ │ │ ├── func/ │ │ │ │ │ │ ├── Callback.java │ │ │ │ │ │ └── IImageClickCallback.java │ │ │ │ │ ├── handler/ │ │ │ │ │ │ ├── BackgroundTaskHandler.java │ │ │ │ │ │ ├── DefaultLogHandler.java │ │ │ │ │ │ ├── DefaultTaskHandler.java │ │ │ │ │ │ ├── DefualtImageHandler.java │ │ │ │ │ │ ├── EventHandlerManager.java │ │ │ │ │ │ ├── ImageHandler.java │ │ │ │ │ │ └── LogHandler.java │ │ │ │ │ ├── icon/ │ │ │ │ │ │ ├── DrawableWrapper.java │ │ │ │ │ │ ├── LoadIconUtil.java │ │ │ │ │ │ └── LoadImageCallback.java │ │ │ │ │ ├── span/ │ │ │ │ │ │ ├── AntUnderlineSupportMulLinesSpan.java │ │ │ │ │ │ ├── BaseIconTextSpan.java │ │ │ │ │ │ ├── CodeLanguageSpan.java │ │ │ │ │ │ ├── HeadingTopOrBottomSpacingSpan.java │ │ │ │ │ │ ├── IClickableSpan.java │ │ │ │ │ │ ├── LinkWithIconSpan.java │ │ │ │ │ │ └── ParagraphSpacingSpan.java │ │ │ │ │ ├── styles/ │ │ │ │ │ │ ├── BlockQuoteStyle.java │ │ │ │ │ │ ├── BulletStyle.java │ │ │ │ │ │ ├── CodeStyle.java │ │ │ │ │ │ ├── FootnoteStyle.java │ │ │ │ │ │ ├── HorizonRuleStyle.java │ │ │ │ │ │ ├── LinkStyle.java │ │ │ │ │ │ ├── MarkdownStyles.java │ │ │ │ │ │ ├── OrderStyle.java │ │ │ │ │ │ ├── ParagraphStyle.java │ │ │ │ │ │ ├── Shape.java │ │ │ │ │ │ ├── TableStyle.java │ │ │ │ │ │ ├── TitleStyle.java │ │ │ │ │ │ └── UnderlineStyle.java │ │ │ │ │ └── utils/ │ │ │ │ │ ├── MDLogger.java │ │ │ │ │ ├── ParseUtil.java │ │ │ │ │ └── Utils.java │ │ │ │ └── io/ │ │ │ │ └── noties/ │ │ │ │ └── markwon/ │ │ │ │ ├── AbstractMarkwonPlugin.java │ │ │ │ ├── BlockHandlerDef.java │ │ │ │ ├── LinkResolver.java │ │ │ │ ├── LinkResolverDef.java │ │ │ │ ├── Markwon.java │ │ │ │ ├── MarkwonBuilderImpl.java │ │ │ │ ├── MarkwonConfiguration.java │ │ │ │ ├── MarkwonImpl.java │ │ │ │ ├── MarkwonPlugin.java │ │ │ │ ├── MarkwonReducer.java │ │ │ │ ├── MarkwonSpansFactory.java │ │ │ │ ├── MarkwonSpansFactoryImpl.java │ │ │ │ ├── MarkwonVisitor.java │ │ │ │ ├── MarkwonVisitorFactory.java │ │ │ │ ├── MarkwonVisitorImpl.java │ │ │ │ ├── PrecomputedFutureTextSetterCompat.java │ │ │ │ ├── PrecomputedTextSetterCompat.java │ │ │ │ ├── Prop.java │ │ │ │ ├── RegistryImpl.java │ │ │ │ ├── RenderProps.java │ │ │ │ ├── RenderPropsImpl.java │ │ │ │ ├── SoftBreakAddsNewLinePlugin.java │ │ │ │ ├── SpanFactory.java │ │ │ │ ├── SpannableBuilder.java │ │ │ │ ├── core/ │ │ │ │ │ ├── CorePlugin.java │ │ │ │ │ ├── CoreProps.java │ │ │ │ │ ├── MarkwonTheme.java │ │ │ │ │ ├── SimpleBlockNodeVisitor.java │ │ │ │ │ ├── factory/ │ │ │ │ │ │ ├── BlockQuoteSpanFactory.java │ │ │ │ │ │ ├── CodeBlockSpanFactory.java │ │ │ │ │ │ ├── CodeSpanFactory.java │ │ │ │ │ │ ├── EmphasisSpanFactory.java │ │ │ │ │ │ ├── HeadingSpanFactory.java │ │ │ │ │ │ ├── LinkSpanFactory.java │ │ │ │ │ │ ├── ListItemSpanFactory.java │ │ │ │ │ │ ├── StrongEmphasisSpanFactory.java │ │ │ │ │ │ └── ThematicBreakSpanFactory.java │ │ │ │ │ └── spans/ │ │ │ │ │ ├── BlockQuoteSpan.java │ │ │ │ │ ├── BulletListItemSpan.java │ │ │ │ │ ├── CodeBlockSpan.java │ │ │ │ │ ├── CodeSpan.java │ │ │ │ │ ├── CustomTypefaceSpan.java │ │ │ │ │ ├── EmphasisSpan.java │ │ │ │ │ ├── HeadingSpan.java │ │ │ │ │ ├── LastLineSpacingSpan.java │ │ │ │ │ ├── LinkSpan.java │ │ │ │ │ ├── ObjectsPool.java │ │ │ │ │ ├── OrderedListItemSpan.java │ │ │ │ │ ├── StrongEmphasisSpan.java │ │ │ │ │ ├── TextLayoutSpan.java │ │ │ │ │ ├── TextViewSpan.java │ │ │ │ │ └── ThematicBreakSpan.java │ │ │ │ ├── image/ │ │ │ │ │ ├── AsyncDrawable.java │ │ │ │ │ ├── AsyncDrawableLoader.java │ │ │ │ │ ├── AsyncDrawableLoaderNoOp.java │ │ │ │ │ ├── AsyncDrawableScheduler.java │ │ │ │ │ ├── AsyncDrawableSpan.java │ │ │ │ │ ├── DrawableUtils.java │ │ │ │ │ ├── ImageProps.java │ │ │ │ │ ├── ImageSize.java │ │ │ │ │ ├── ImageSizeResolver.java │ │ │ │ │ ├── ImageSizeResolverDef.java │ │ │ │ │ ├── ImageSpanFactory.java │ │ │ │ │ └── destination/ │ │ │ │ │ ├── ImageDestinationProcessor.java │ │ │ │ │ ├── ImageDestinationProcessorAssets.java │ │ │ │ │ └── ImageDestinationProcessorRelativeToAbsolute.java │ │ │ │ ├── movement/ │ │ │ │ │ └── MovementMethodPlugin.java │ │ │ │ ├── node/ │ │ │ │ │ └── OiintNode.java │ │ │ │ ├── syntax/ │ │ │ │ │ ├── SyntaxHighlight.java │ │ │ │ │ └── SyntaxHighlightNoOp.java │ │ │ │ └── utils/ │ │ │ │ ├── ColorUtils.java │ │ │ │ ├── Dip.java │ │ │ │ ├── DrawableUtils.java │ │ │ │ ├── DumpNodes.java │ │ │ │ ├── LayoutUtils.java │ │ │ │ ├── LeadingMarginUtils.java │ │ │ │ ├── NoCopySpannableFactory.java │ │ │ │ ├── ParserUtils.java │ │ │ │ └── SpanUtils.java │ │ │ └── res/ │ │ │ └── values/ │ │ │ └── ids.xml │ │ └── test/ │ │ └── java/ │ │ └── io/ │ │ └── noties/ │ │ └── markwon/ │ │ └── ExampleUnitTest.kt │ ├── markwon-ext-latex/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── consumer-rules.pro │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── ext/ │ │ │ └── latex/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── ext/ │ │ │ └── latex/ │ │ │ ├── JLatexAsyncDrawableSpan.java │ │ │ ├── JLatexBlockImageSizeResolver.java │ │ │ ├── JLatexInlineAsyncDrawableSpan.java │ │ │ ├── JLatexMathBlock.java │ │ │ ├── JLatexMathBlockParser.java │ │ │ ├── JLatexMathBlockParserLegacy.java │ │ │ ├── JLatexMathInlineProcessor.java │ │ │ ├── JLatexMathNode.java │ │ │ ├── JLatexMathPlugin.java │ │ │ ├── JLatexMathTheme.java │ │ │ └── JLatextAsyncDrawable.java │ │ └── test/ │ │ └── java/ │ │ └── io/ │ │ └── noties/ │ │ └── markwon/ │ │ └── ext/ │ │ └── latex/ │ │ └── ExampleUnitTest.java │ ├── markwon-ext-strikethrough/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── consumer-rules.pro │ │ ├── libs/ │ │ │ └── commonmark-ext-gfm-strikethrough-0.13.0.jar │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── ext/ │ │ │ └── strikethrough/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── ext/ │ │ │ └── strikethrough/ │ │ │ └── StrikethroughPlugin.java │ │ └── test/ │ │ └── java/ │ │ └── io/ │ │ └── noties/ │ │ └── markwon/ │ │ └── ext/ │ │ └── strikethrough/ │ │ └── ExampleUnitTest.java │ ├── markwon-ext-tables/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── consumer-rules.pro │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── ext/ │ │ │ └── tables/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ ├── java/ │ │ │ │ ├── com/ │ │ │ │ │ └── fluid/ │ │ │ │ │ └── afm/ │ │ │ │ │ ├── BaseBlockTitleSpan.java │ │ │ │ │ ├── CodeBlockLineSpacingSpan.java │ │ │ │ │ ├── CodeBlockTitleSpan.java │ │ │ │ │ ├── IMarkdownLayer.java │ │ │ │ │ ├── MarkdownAwareMovementMethod.java │ │ │ │ │ ├── TableBlockTitleBlockSpan.java │ │ │ │ │ ├── TableLineSpacingSpan.java │ │ │ │ │ └── TopSpacingSpan.java │ │ │ │ └── io/ │ │ │ │ └── noties/ │ │ │ │ └── markwon/ │ │ │ │ └── ext/ │ │ │ │ └── tables/ │ │ │ │ ├── Table.java │ │ │ │ ├── TablePlugin.java │ │ │ │ ├── TableRowSpan.java │ │ │ │ ├── TableRowsScheduler.java │ │ │ │ └── TableSpan.java │ │ │ └── res/ │ │ │ ├── values/ │ │ │ │ ├── ids.xml │ │ │ │ └── strings.xml │ │ │ └── values-zh/ │ │ │ └── strings.xml │ │ └── test/ │ │ └── java/ │ │ └── io/ │ │ └── noties/ │ │ └── markwon/ │ │ └── ext/ │ │ └── tables/ │ │ └── ExampleUnitTest.java │ ├── markwon-ext-tasklist/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── consumer-rules.pro │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── ext/ │ │ │ └── tasklist/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── ext/ │ │ │ └── tasklist/ │ │ │ ├── TaskListDrawable.java │ │ │ ├── TaskListItem.java │ │ │ ├── TaskListPlugin.java │ │ │ ├── TaskListPostProcessor.java │ │ │ ├── TaskListProps.java │ │ │ ├── TaskListSpan.java │ │ │ └── TaskListSpanFactory.java │ │ └── test/ │ │ └── java/ │ │ └── io/ │ │ └── noties/ │ │ └── markwon/ │ │ └── ext/ │ │ └── tasklist/ │ │ └── ExampleUnitTest.java │ ├── markwon-html/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── consumer-rules.pro │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── html/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ └── java/ │ │ │ ├── com/ │ │ │ │ └── fluid/ │ │ │ │ └── afm/ │ │ │ │ ├── spans/ │ │ │ │ │ └── DefinitionListSpan.java │ │ │ │ └── tag/ │ │ │ │ └── DefinitionListTagHandler.java │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── html/ │ │ │ ├── AppendableUtils.java │ │ │ ├── CssInlineStyleParser.java │ │ │ ├── CssProperty.java │ │ │ ├── HtmlEmptyTagReplacement.java │ │ │ ├── HtmlPlugin.java │ │ │ ├── HtmlTag.java │ │ │ ├── HtmlTagImpl.java │ │ │ ├── MarkwonHtmlParser.java │ │ │ ├── MarkwonHtmlParserImpl.java │ │ │ ├── MarkwonHtmlRenderer.java │ │ │ ├── MarkwonHtmlRendererImpl.java │ │ │ ├── MarkwonHtmlRendererNoOp.java │ │ │ ├── TagHandler.java │ │ │ ├── TagHandlerNoOp.java │ │ │ ├── TrimmingAppender.java │ │ │ ├── jsoup/ │ │ │ │ ├── UncheckedIOException.java │ │ │ │ ├── helper/ │ │ │ │ │ ├── Normalizer.java │ │ │ │ │ └── Validate.java │ │ │ │ ├── nodes/ │ │ │ │ │ ├── Attribute.java │ │ │ │ │ ├── Attributes.java │ │ │ │ │ ├── CommonMarkEntities.java │ │ │ │ │ └── DocumentType.java │ │ │ │ └── parser/ │ │ │ │ ├── CharacterReader.java │ │ │ │ ├── ParseError.java │ │ │ │ ├── ParseErrorList.java │ │ │ │ ├── Token.java │ │ │ │ ├── Tokeniser.java │ │ │ │ └── TokeniserState.java │ │ │ ├── span/ │ │ │ │ ├── SubScriptSpan.java │ │ │ │ └── SuperScriptSpan.java │ │ │ └── tag/ │ │ │ ├── BlockquoteHandler.java │ │ │ ├── EmphasisHandler.java │ │ │ ├── HeadingHandler.java │ │ │ ├── ImageHandler.java │ │ │ ├── ImageSizeParserImpl.java │ │ │ ├── LinkHandler.java │ │ │ ├── ListHandler.java │ │ │ ├── SimpleTagHandler.java │ │ │ ├── StrikeHandler.java │ │ │ ├── StrongEmphasisHandler.java │ │ │ ├── SubScriptHandler.java │ │ │ ├── SuperScriptHandler.java │ │ │ └── UnderlineHandler.java │ │ └── test/ │ │ └── java/ │ │ └── io/ │ │ └── noties/ │ │ └── markwon/ │ │ └── html/ │ │ └── ExampleUnitTest.java │ ├── markwon-image/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── consumer-rules.pro │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── image/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ └── java/ │ │ │ ├── com/ │ │ │ │ └── fluid/ │ │ │ │ └── afm/ │ │ │ │ └── network/ │ │ │ │ ├── CircleDrawable.java │ │ │ │ └── ImageLoaderSchemeHandler.java │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── image/ │ │ │ ├── AsyncDrawableLoaderBuilder.java │ │ │ ├── AsyncDrawableLoaderImpl.java │ │ │ ├── DefaultDownScalingMediaDecoder.java │ │ │ ├── DefaultMediaDecoder.java │ │ │ ├── ImageItem.java │ │ │ ├── ImagesPlugin.java │ │ │ ├── MediaDecoder.java │ │ │ ├── SchemeHandler.java │ │ │ ├── data/ │ │ │ │ ├── DataUri.java │ │ │ │ ├── DataUriDecoder.java │ │ │ │ ├── DataUriParser.java │ │ │ │ └── DataUriSchemeHandler.java │ │ │ ├── file/ │ │ │ │ └── FileSchemeHandler.java │ │ │ └── network/ │ │ │ └── NetworkSchemeHandler.java │ │ └── test/ │ │ └── java/ │ │ └── io/ │ │ └── noties/ │ │ └── markwon/ │ │ └── image/ │ │ └── ExampleUnitTest.java │ ├── markwon-inline-parser/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── consumer-rules.pro │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── inlineparser/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ └── java/ │ │ │ ├── com/ │ │ │ │ └── fluid/ │ │ │ │ └── afm/ │ │ │ │ └── inline/ │ │ │ │ └── OiintInlineProcessor.java │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── inlineparser/ │ │ │ ├── AutolinkInlineProcessor.java │ │ │ ├── BackslashInlineProcessor.java │ │ │ ├── BackticksInlineProcessor.java │ │ │ ├── BangInlineProcessor.java │ │ │ ├── CloseBracketInlineProcessor.java │ │ │ ├── EntityInlineProcessor.java │ │ │ ├── HtmlInlineProcessor.java │ │ │ ├── InlineParserUtils.java │ │ │ ├── InlineProcessor.java │ │ │ ├── MarkwonInlineParser.java │ │ │ ├── MarkwonInlineParserContext.java │ │ │ ├── MarkwonInlineParserPlugin.java │ │ │ ├── NewLineInlineProcessor.java │ │ │ ├── OpenBracketInlineProcessor.java │ │ │ └── StaggeredDelimiterProcessor.java │ │ └── test/ │ │ └── java/ │ │ └── io/ │ │ └── noties/ │ │ └── markwon/ │ │ └── inlineparser/ │ │ └── ExampleUnitTest.java │ ├── markwon-syntax-highlight/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── consumer-rules.pro │ │ ├── libs/ │ │ │ ├── prism4j-2.0.0.jar │ │ │ └── prism4j-languages-2.0.0.jar │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── syntax/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ └── java/ │ │ │ └── io/ │ │ │ └── noties/ │ │ │ └── markwon/ │ │ │ └── syntax/ │ │ │ ├── BaseCodeGrammar.java │ │ │ ├── FixPrism4j.java │ │ │ ├── Prism4jSyntaxHighlight.java │ │ │ ├── Prism4jSyntaxVisitor.java │ │ │ ├── Prism4jTheme.java │ │ │ ├── Prism4jThemeBase.java │ │ │ ├── Prism4jThemeDarkula.java │ │ │ ├── Prism4jThemeDefault.java │ │ │ └── SyntaxHighlightPlugin.java │ │ └── test/ │ │ └── java/ │ │ └── io/ │ │ └── noties/ │ │ └── markwon/ │ │ └── syntax/ │ │ └── ExampleUnitTest.java │ └── settings.gradle ├── CHANGELOG.md ├── CONTRIBUTING.md ├── HarmonyOS/ │ ├── .gitignore │ ├── AppScope/ │ │ ├── app.json5 │ │ └── resources/ │ │ └── base/ │ │ ├── element/ │ │ │ └── string.json │ │ └── media/ │ │ └── layered_image.json │ ├── build-profile.json5 │ ├── code-linter.json5 │ ├── hvigor/ │ │ └── hvigor-config.json5 │ ├── hvigorfile.ts │ ├── markdown/ │ │ ├── .gitignore │ │ ├── BuildProfile.ets │ │ ├── CHANGELOG.md │ │ ├── Index.ets │ │ ├── LICENSE │ │ ├── README.md │ │ ├── build-profile.json5 │ │ ├── consumer-rules.txt │ │ ├── hvigorfile.ts │ │ ├── obfuscation-rules.txt │ │ ├── oh-package.json5 │ │ └── src/ │ │ ├── main/ │ │ │ ├── cpp/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── formula-ffi/ │ │ │ │ │ ├── .gitcode/ │ │ │ │ │ │ ├── ISSUE_TEMPLATE/ │ │ │ │ │ │ │ ├── bug.md │ │ │ │ │ │ │ ├── question.md │ │ │ │ │ │ │ └── request.md │ │ │ │ │ │ └── PULL_REQUEST_TEMPLATE.md │ │ │ │ │ ├── .gitignore │ │ │ │ │ ├── .gitmodules │ │ │ │ │ ├── CHANGELOG.md │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── README.OpenSource │ │ │ │ │ ├── README.md │ │ │ │ │ ├── build-ohos.sh │ │ │ │ │ ├── cjpm.toml │ │ │ │ │ ├── doc/ │ │ │ │ │ │ └── feature_api.md │ │ │ │ │ ├── ffi/ │ │ │ │ │ │ ├── CMakeLists.txt │ │ │ │ │ │ ├── ffi/ │ │ │ │ │ │ │ ├── graphic_ohos.cpp │ │ │ │ │ │ │ ├── graphic_ohos.h │ │ │ │ │ │ │ ├── graphic_ohos_ffi.cpp │ │ │ │ │ │ │ ├── graphic_ohos_ffi.h │ │ │ │ │ │ │ ├── latex_ffi.cpp │ │ │ │ │ │ │ ├── latex_ffi.h │ │ │ │ │ │ │ ├── render_ffi.cpp │ │ │ │ │ │ │ ├── render_ffi.h │ │ │ │ │ │ │ └── utils.h │ │ │ │ │ │ ├── latex/ │ │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ │ ├── CMakeLists.txt │ │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ │ ├── githooks/ │ │ │ │ │ │ │ │ ├── pre-commit │ │ │ │ │ │ │ │ └── pre-push │ │ │ │ │ │ │ ├── readme/ │ │ │ │ │ │ │ │ └── samples.md │ │ │ │ │ │ │ ├── res/ │ │ │ │ │ │ │ │ ├── RES_README │ │ │ │ │ │ │ │ ├── SAMPLES.tex │ │ │ │ │ │ │ │ ├── cyrillic/ │ │ │ │ │ │ │ │ │ ├── cyrillic.map.xml │ │ │ │ │ │ │ │ │ ├── language_cyrillic.xml │ │ │ │ │ │ │ │ │ ├── mappings_cyrillic.xml │ │ │ │ │ │ │ │ │ ├── symbols_cyrillic.xml │ │ │ │ │ │ │ │ │ ├── wnbx10.xml │ │ │ │ │ │ │ │ │ ├── wnbxti10.xml │ │ │ │ │ │ │ │ │ ├── wnr10.xml │ │ │ │ │ │ │ │ │ ├── wnss10.xml │ │ │ │ │ │ │ │ │ ├── wnssbx10.xml │ │ │ │ │ │ │ │ │ ├── wnssi10.xml │ │ │ │ │ │ │ │ │ ├── wnti10.xml │ │ │ │ │ │ │ │ │ └── wntt10.xml │ │ │ │ │ │ │ │ ├── fonts/ │ │ │ │ │ │ │ │ │ └── licences/ │ │ │ │ │ │ │ │ │ ├── Knuth_License.txt │ │ │ │ │ │ │ │ │ ├── License_for_dsrom.txt │ │ │ │ │ │ │ │ │ └── OFL.txt │ │ │ │ │ │ │ │ └── greek/ │ │ │ │ │ │ │ │ ├── fcmbipg.xml │ │ │ │ │ │ │ │ ├── fcmbpg.xml │ │ │ │ │ │ │ │ ├── fcmripg.xml │ │ │ │ │ │ │ │ ├── fcmrpg.xml │ │ │ │ │ │ │ │ ├── fcsbpg.xml │ │ │ │ │ │ │ │ ├── fcsropg.xml │ │ │ │ │ │ │ │ ├── fcsrpg.xml │ │ │ │ │ │ │ │ ├── fctrpg.xml │ │ │ │ │ │ │ │ ├── greek.map.xml │ │ │ │ │ │ │ │ ├── language_greek.xml │ │ │ │ │ │ │ │ ├── mappings_greek.xml │ │ │ │ │ │ │ │ └── symbols_greek.xml │ │ │ │ │ │ │ └── src/ │ │ │ │ │ │ │ ├── atom/ │ │ │ │ │ │ │ │ ├── atom.h │ │ │ │ │ │ │ │ ├── atom_basic.cpp │ │ │ │ │ │ │ │ ├── atom_basic.h │ │ │ │ │ │ │ │ ├── atom_impl.cpp │ │ │ │ │ │ │ │ ├── atom_impl.h │ │ │ │ │ │ │ │ ├── box.cpp │ │ │ │ │ │ │ │ ├── box.h │ │ │ │ │ │ │ │ └── colors_def.cpp │ │ │ │ │ │ │ ├── common.h │ │ │ │ │ │ │ ├── config.h │ │ │ │ │ │ │ ├── core/ │ │ │ │ │ │ │ │ ├── core.cpp │ │ │ │ │ │ │ │ ├── core.h │ │ │ │ │ │ │ │ ├── formula.cpp │ │ │ │ │ │ │ │ ├── formula.h │ │ │ │ │ │ │ │ ├── formula_def.cpp │ │ │ │ │ │ │ │ ├── localized_num.cpp │ │ │ │ │ │ │ │ ├── macro.cpp │ │ │ │ │ │ │ │ ├── macro.h │ │ │ │ │ │ │ │ ├── macro_def.cpp │ │ │ │ │ │ │ │ ├── macro_impl.cpp │ │ │ │ │ │ │ │ ├── macro_impl.h │ │ │ │ │ │ │ │ ├── parser.cpp │ │ │ │ │ │ │ │ └── parser.h │ │ │ │ │ │ │ ├── fonts/ │ │ │ │ │ │ │ │ ├── alphabet.cpp │ │ │ │ │ │ │ │ ├── alphabet.h │ │ │ │ │ │ │ │ ├── font_info.cpp │ │ │ │ │ │ │ │ ├── font_info.h │ │ │ │ │ │ │ │ ├── font_reg.h │ │ │ │ │ │ │ │ ├── fonts.cpp │ │ │ │ │ │ │ │ ├── fonts.h │ │ │ │ │ │ │ │ └── symbol_reg.h │ │ │ │ │ │ │ ├── graphic/ │ │ │ │ │ │ │ │ ├── graphic.h │ │ │ │ │ │ │ │ └── graphic_basic.h │ │ │ │ │ │ │ ├── latex.cpp │ │ │ │ │ │ │ ├── latex.h │ │ │ │ │ │ │ ├── platform/ │ │ │ │ │ │ │ │ ├── cairo/ │ │ │ │ │ │ │ │ │ ├── graphic_cairo.cpp │ │ │ │ │ │ │ │ │ └── graphic_cairo.h │ │ │ │ │ │ │ │ └── gdi_win/ │ │ │ │ │ │ │ │ ├── graphic_win32.cpp │ │ │ │ │ │ │ │ └── graphic_win32.h │ │ │ │ │ │ │ ├── render.cpp │ │ │ │ │ │ │ ├── render.h │ │ │ │ │ │ │ ├── res/ │ │ │ │ │ │ │ │ ├── builtin/ │ │ │ │ │ │ │ │ │ ├── formula_mappings.res.cpp │ │ │ │ │ │ │ │ │ ├── glue.res.cpp │ │ │ │ │ │ │ │ │ ├── symbol_mapping.res.cpp │ │ │ │ │ │ │ │ │ ├── tex_param.res.cpp │ │ │ │ │ │ │ │ │ └── tex_symbols.res.cpp │ │ │ │ │ │ │ │ ├── font/ │ │ │ │ │ │ │ │ │ ├── README │ │ │ │ │ │ │ │ │ ├── bi10.def.cpp │ │ │ │ │ │ │ │ │ ├── bx10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmbsy10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmbx10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmbxti10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmex10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmmi10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmmi10_unchanged.def.cpp │ │ │ │ │ │ │ │ │ ├── cmmib10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmmib10_unchanged.def.cpp │ │ │ │ │ │ │ │ │ ├── cmr10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmss10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmssbx10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmssi10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmsy10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmti10.def.cpp │ │ │ │ │ │ │ │ │ ├── cmti10_unchanged.def.cpp │ │ │ │ │ │ │ │ │ ├── cmtt10.def.cpp │ │ │ │ │ │ │ │ │ ├── dsrom10.def.cpp │ │ │ │ │ │ │ │ │ ├── eufb10.def.cpp │ │ │ │ │ │ │ │ │ ├── eufm10.def.cpp │ │ │ │ │ │ │ │ │ ├── i10.def.cpp │ │ │ │ │ │ │ │ │ ├── moustache.def.cpp │ │ │ │ │ │ │ │ │ ├── msam10.def.cpp │ │ │ │ │ │ │ │ │ ├── msbm10.def.cpp │ │ │ │ │ │ │ │ │ ├── r10.def.cpp │ │ │ │ │ │ │ │ │ ├── r10_unchanged.def.cpp │ │ │ │ │ │ │ │ │ ├── rsfs10.def.cpp │ │ │ │ │ │ │ │ │ ├── sb10.def.cpp │ │ │ │ │ │ │ │ │ ├── sbi10.def.cpp │ │ │ │ │ │ │ │ │ ├── si10.def.cpp │ │ │ │ │ │ │ │ │ ├── special.def.cpp │ │ │ │ │ │ │ │ │ ├── ss10.def.cpp │ │ │ │ │ │ │ │ │ ├── stmary10.def.cpp │ │ │ │ │ │ │ │ │ └── tt10.def.cpp │ │ │ │ │ │ │ │ ├── font_def.res.h │ │ │ │ │ │ │ │ ├── parser/ │ │ │ │ │ │ │ │ │ ├── font_parser.cpp │ │ │ │ │ │ │ │ │ ├── font_parser.h │ │ │ │ │ │ │ │ │ ├── formula_parser.cpp │ │ │ │ │ │ │ │ │ └── formula_parser.h │ │ │ │ │ │ │ │ ├── reg/ │ │ │ │ │ │ │ │ │ ├── builtin_font_reg.cpp │ │ │ │ │ │ │ │ │ ├── builtin_font_reg.h │ │ │ │ │ │ │ │ │ ├── builtin_syms_reg.cpp │ │ │ │ │ │ │ │ │ └── builtin_syms_reg.h │ │ │ │ │ │ │ │ ├── sym/ │ │ │ │ │ │ │ │ │ ├── amsfonts.def.cpp │ │ │ │ │ │ │ │ │ ├── amssymb.def.cpp │ │ │ │ │ │ │ │ │ ├── base.def.cpp │ │ │ │ │ │ │ │ │ ├── special.def.cpp │ │ │ │ │ │ │ │ │ └── stmaryrd.def.cpp │ │ │ │ │ │ │ │ └── symbol_def.res.h │ │ │ │ │ │ │ ├── samples/ │ │ │ │ │ │ │ │ ├── gtkmm_main.cpp │ │ │ │ │ │ │ │ ├── mem_check_main.cpp │ │ │ │ │ │ │ │ ├── samples.h │ │ │ │ │ │ │ │ └── win32_main.cpp │ │ │ │ │ │ │ └── xml/ │ │ │ │ │ │ │ ├── tinyxml2.cpp │ │ │ │ │ │ │ └── tinyxml2.h │ │ │ │ │ │ └── third_party_bounds_checking_function/ │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ ├── BUILD.gn │ │ │ │ │ │ ├── CMakeLists.txt │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── OAT.xml │ │ │ │ │ │ ├── README.OpenSource │ │ │ │ │ │ ├── README.en.md │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── bundle.json │ │ │ │ │ │ ├── include/ │ │ │ │ │ │ │ ├── securec.h │ │ │ │ │ │ │ └── securectype.h │ │ │ │ │ │ ├── libsec_src.gni │ │ │ │ │ │ └── src/ │ │ │ │ │ │ ├── fscanf_s.c │ │ │ │ │ │ ├── fwscanf_s.c │ │ │ │ │ │ ├── gets_s.c │ │ │ │ │ │ ├── input.inl │ │ │ │ │ │ ├── memcpy_s.c │ │ │ │ │ │ ├── memmove_s.c │ │ │ │ │ │ ├── memset_s.c │ │ │ │ │ │ ├── output.inl │ │ │ │ │ │ ├── scanf_s.c │ │ │ │ │ │ ├── secinput.h │ │ │ │ │ │ ├── securecutil.c │ │ │ │ │ │ ├── securecutil.h │ │ │ │ │ │ ├── secureinput_a.c │ │ │ │ │ │ ├── secureinput_w.c │ │ │ │ │ │ ├── secureprintoutput.h │ │ │ │ │ │ ├── secureprintoutput_a.c │ │ │ │ │ │ ├── secureprintoutput_w.c │ │ │ │ │ │ ├── snprintf_s.c │ │ │ │ │ │ ├── sprintf_s.c │ │ │ │ │ │ ├── sscanf_s.c │ │ │ │ │ │ ├── strcat_s.c │ │ │ │ │ │ ├── strcpy_s.c │ │ │ │ │ │ ├── strncat_s.c │ │ │ │ │ │ ├── strncpy_s.c │ │ │ │ │ │ ├── strtok_s.c │ │ │ │ │ │ ├── swprintf_s.c │ │ │ │ │ │ ├── swscanf_s.c │ │ │ │ │ │ ├── vfscanf_s.c │ │ │ │ │ │ ├── vfwscanf_s.c │ │ │ │ │ │ ├── vscanf_s.c │ │ │ │ │ │ ├── vsnprintf_s.c │ │ │ │ │ │ ├── vsprintf_s.c │ │ │ │ │ │ ├── vsscanf_s.c │ │ │ │ │ │ ├── vswprintf_s.c │ │ │ │ │ │ ├── vswscanf_s.c │ │ │ │ │ │ ├── vwscanf_s.c │ │ │ │ │ │ ├── wcscat_s.c │ │ │ │ │ │ ├── wcscpy_s.c │ │ │ │ │ │ ├── wcsncat_s.c │ │ │ │ │ │ ├── wcsncpy_s.c │ │ │ │ │ │ ├── wcstok_s.c │ │ │ │ │ │ ├── wmemcpy_s.c │ │ │ │ │ │ ├── wmemmove_s.c │ │ │ │ │ │ └── wscanf_s.c │ │ │ │ │ ├── src/ │ │ │ │ │ │ ├── ffi.cj │ │ │ │ │ │ ├── graphic_2d.cj │ │ │ │ │ │ ├── latex.cj │ │ │ │ │ │ └── render.cj │ │ │ │ │ └── test/ │ │ │ │ │ ├── DOC/ │ │ │ │ │ │ └── test.cj │ │ │ │ │ ├── HLT/ │ │ │ │ │ │ ├── c_test1.cj │ │ │ │ │ │ ├── c_test10.cj │ │ │ │ │ │ ├── c_test11.cj │ │ │ │ │ │ ├── c_test2.cj │ │ │ │ │ │ ├── c_test222222222.cj │ │ │ │ │ │ ├── c_test3.cj │ │ │ │ │ │ ├── c_test4.cj │ │ │ │ │ │ ├── c_test5.cj │ │ │ │ │ │ ├── c_test6.cj │ │ │ │ │ │ ├── c_test7.cj │ │ │ │ │ │ ├── c_test8.cj │ │ │ │ │ │ ├── c_test9.cj │ │ │ │ │ │ ├── fortify_test1.cj │ │ │ │ │ │ ├── fortify_test2.cj │ │ │ │ │ │ ├── fortify_test3.cj │ │ │ │ │ │ ├── fortify_test4.cj │ │ │ │ │ │ ├── fortify_test5.cj │ │ │ │ │ │ ├── later_test1.cj │ │ │ │ │ │ ├── later_test10.cj │ │ │ │ │ │ ├── later_test11.cj │ │ │ │ │ │ ├── later_test12.cj │ │ │ │ │ │ ├── later_test13.cj │ │ │ │ │ │ ├── later_test14.cj │ │ │ │ │ │ ├── later_test15.cj │ │ │ │ │ │ ├── later_test16.cj │ │ │ │ │ │ ├── later_test17.cj │ │ │ │ │ │ ├── later_test18.cj │ │ │ │ │ │ ├── later_test2.cj │ │ │ │ │ │ ├── later_test3.cj │ │ │ │ │ │ ├── later_test4.cj │ │ │ │ │ │ ├── later_test5.cj │ │ │ │ │ │ ├── later_test6.cj │ │ │ │ │ │ ├── later_test7.cj │ │ │ │ │ │ ├── later_test8.cj │ │ │ │ │ │ ├── later_test9.cj │ │ │ │ │ │ ├── test1.cj │ │ │ │ │ │ ├── test2.cj │ │ │ │ │ │ ├── test3.cj │ │ │ │ │ │ ├── test4.cj │ │ │ │ │ │ ├── test5.cj │ │ │ │ │ │ ├── test6.cj │ │ │ │ │ │ ├── test7.cj │ │ │ │ │ │ └── test8.cj │ │ │ │ │ └── LLT/ │ │ │ │ │ ├── c_test1.cj │ │ │ │ │ ├── c_test10.cj │ │ │ │ │ ├── c_test12.cj │ │ │ │ │ ├── c_test13.cj │ │ │ │ │ ├── c_test2.cj │ │ │ │ │ ├── c_test3.cj │ │ │ │ │ ├── c_test4.cj │ │ │ │ │ ├── c_test5.cj │ │ │ │ │ ├── c_test6.cj │ │ │ │ │ ├── c_test7.cj │ │ │ │ │ ├── c_test8.cj │ │ │ │ │ ├── c_test9.cj │ │ │ │ │ ├── later_test1.cj │ │ │ │ │ ├── later_test10.cj │ │ │ │ │ ├── later_test11.cj │ │ │ │ │ ├── later_test12.cj │ │ │ │ │ ├── later_test13.cj │ │ │ │ │ ├── later_test14.cj │ │ │ │ │ ├── later_test15.cj │ │ │ │ │ ├── later_test16.cj │ │ │ │ │ ├── later_test17.cj │ │ │ │ │ ├── later_test18.cj │ │ │ │ │ ├── later_test2.cj │ │ │ │ │ ├── later_test3.cj │ │ │ │ │ ├── later_test4.cj │ │ │ │ │ ├── later_test5.cj │ │ │ │ │ ├── later_test6.cj │ │ │ │ │ ├── later_test7.cj │ │ │ │ │ ├── later_test8.cj │ │ │ │ │ ├── later_test9.cj │ │ │ │ │ ├── test1.cj │ │ │ │ │ ├── test2.cj │ │ │ │ │ ├── test3.cj │ │ │ │ │ ├── test4.cj │ │ │ │ │ ├── test5.cj │ │ │ │ │ ├── test6.cj │ │ │ │ │ ├── test7.cj │ │ │ │ │ ├── test8.cj │ │ │ │ │ └── test9.cj │ │ │ │ ├── napi_init.cpp │ │ │ │ └── types/ │ │ │ │ └── liblatexentry/ │ │ │ │ ├── Index.d.ts │ │ │ │ └── oh-package.json5 │ │ │ ├── ets/ │ │ │ │ ├── engine/ │ │ │ │ │ ├── base.ets │ │ │ │ │ ├── engine.ets │ │ │ │ │ ├── index.ets │ │ │ │ │ ├── plugin.ets │ │ │ │ │ └── service.ets │ │ │ │ ├── index.ets │ │ │ │ ├── markdown.ets │ │ │ │ ├── render/ │ │ │ │ │ ├── component/ │ │ │ │ │ │ ├── builder.ets │ │ │ │ │ │ ├── code.ets │ │ │ │ │ │ ├── content-box.ets │ │ │ │ │ │ ├── embed.ets │ │ │ │ │ │ ├── fragment.ets │ │ │ │ │ │ ├── image-gallery.ets │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ ├── table.ets │ │ │ │ │ │ └── text.ets │ │ │ │ │ ├── index.ets │ │ │ │ │ ├── service.ets │ │ │ │ │ ├── styled/ │ │ │ │ │ │ ├── build-in.ets │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ ├── styled-controller.ets │ │ │ │ │ │ ├── styled-embed.ets │ │ │ │ │ │ ├── styled-object.ets │ │ │ │ │ │ ├── styled-value.ets │ │ │ │ │ │ └── styled.ets │ │ │ │ │ └── typing/ │ │ │ │ │ ├── controller.ets │ │ │ │ │ ├── index.ets │ │ │ │ │ └── timer.ets │ │ │ │ ├── service/ │ │ │ │ │ ├── ast/ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ ├── markdown-it/ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ ├── plugin/ │ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ │ ├── markdown-it-emoji/ │ │ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ │ │ ├── markdown-it-emoji-bare.js │ │ │ │ │ │ │ │ │ ├── markdown-it-emoji-light.js │ │ │ │ │ │ │ │ │ └── markdown-it-emoji.js │ │ │ │ │ │ │ │ ├── markdown-it-footnote/ │ │ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ │ │ └── markdown-it-footnote.js │ │ │ │ │ │ │ │ ├── markdown-it-sub/ │ │ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ │ │ └── markdown-it-sub.js │ │ │ │ │ │ │ │ ├── markdown-it-sup/ │ │ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ │ │ └── markdown-it-sup.js │ │ │ │ │ │ │ │ ├── markdown-it-task-lists/ │ │ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ │ │ └── markdown-it-task-lists.js │ │ │ │ │ │ │ │ └── vscode-markdown-it-katex/ │ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ │ └── vscode-markdown-it-katex.js │ │ │ │ │ │ │ └── src/ │ │ │ │ │ │ │ ├── markdown-it.js │ │ │ │ │ │ │ ├── token.ets │ │ │ │ │ │ │ └── types.ets │ │ │ │ │ │ ├── node/ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ ├── models.ets │ │ │ │ │ │ │ ├── plugin/ │ │ │ │ │ │ │ │ ├── build-in.ets │ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ │ └── plugin.ets │ │ │ │ │ │ │ └── program.ets │ │ │ │ │ │ └── service.ets │ │ │ │ │ ├── code/ │ │ │ │ │ │ ├── highlightjs/ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ └── src/ │ │ │ │ │ │ │ ├── highlight.js │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ └── types.ets │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ ├── service.ets │ │ │ │ │ │ └── style.ets │ │ │ │ │ ├── css/ │ │ │ │ │ │ ├── csstree/ │ │ │ │ │ │ │ ├── csstree.rollup.esm.js │ │ │ │ │ │ │ ├── index.d.ts │ │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ │ └── version.js │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ ├── service.ets │ │ │ │ │ │ └── styled.ets │ │ │ │ │ ├── ctx/ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ └── service.ets │ │ │ │ │ ├── event/ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ └── service.ets │ │ │ │ │ ├── file/ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ └── service.ets │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── dom-serializer/ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ └── src/ │ │ │ │ │ │ │ ├── foreignNames.d.ts │ │ │ │ │ │ │ ├── foreignNames.js │ │ │ │ │ │ │ ├── index.d.ts │ │ │ │ │ │ │ └── index.js │ │ │ │ │ │ ├── domelementtype/ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ └── src/ │ │ │ │ │ │ │ ├── index.d.ts │ │ │ │ │ │ │ └── index.js │ │ │ │ │ │ ├── domhandler/ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ └── src/ │ │ │ │ │ │ │ ├── index.d.ts │ │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ │ ├── node.d.ts │ │ │ │ │ │ │ └── node.js │ │ │ │ │ │ ├── domutils/ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ └── src/ │ │ │ │ │ │ │ ├── feeds.d.ts │ │ │ │ │ │ │ ├── feeds.js │ │ │ │ │ │ │ ├── helpers.d.ts │ │ │ │ │ │ │ ├── helpers.js │ │ │ │ │ │ │ ├── index.d.ts │ │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ │ ├── legacy.d.ts │ │ │ │ │ │ │ ├── legacy.js │ │ │ │ │ │ │ ├── manipulation.d.ts │ │ │ │ │ │ │ ├── manipulation.js │ │ │ │ │ │ │ ├── querying.d.ts │ │ │ │ │ │ │ ├── querying.js │ │ │ │ │ │ │ ├── stringify.d.ts │ │ │ │ │ │ │ ├── stringify.js │ │ │ │ │ │ │ ├── traversal.d.ts │ │ │ │ │ │ │ └── traversal.js │ │ │ │ │ │ ├── entities/ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ └── src/ │ │ │ │ │ │ │ ├── decode-codepoint.d.ts │ │ │ │ │ │ │ ├── decode-codepoint.js │ │ │ │ │ │ │ ├── decode.d.ts │ │ │ │ │ │ │ ├── decode.js │ │ │ │ │ │ │ ├── encode.d.ts │ │ │ │ │ │ │ ├── encode.js │ │ │ │ │ │ │ ├── escape.d.ts │ │ │ │ │ │ │ ├── escape.js │ │ │ │ │ │ │ ├── generated/ │ │ │ │ │ │ │ │ ├── decode-data-html.d.ts │ │ │ │ │ │ │ │ ├── decode-data-html.js │ │ │ │ │ │ │ │ ├── decode-data-xml.d.ts │ │ │ │ │ │ │ │ ├── decode-data-xml.js │ │ │ │ │ │ │ │ ├── encode-html.d.ts │ │ │ │ │ │ │ │ └── encode-html.js │ │ │ │ │ │ │ ├── index.d.ts │ │ │ │ │ │ │ └── index.js │ │ │ │ │ │ ├── htmlparser2/ │ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ │ └── src/ │ │ │ │ │ │ │ ├── Parser.d.ts │ │ │ │ │ │ │ ├── Parser.js │ │ │ │ │ │ │ ├── Tokenizer.d.ts │ │ │ │ │ │ │ ├── Tokenizer.js │ │ │ │ │ │ │ ├── index.d.ts │ │ │ │ │ │ │ └── index.js │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ ├── service.ets │ │ │ │ │ │ └── styled.ets │ │ │ │ │ ├── image/ │ │ │ │ │ │ ├── index.ets │ │ │ │ │ │ └── service.ets │ │ │ │ │ ├── index.ets │ │ │ │ │ └── math/ │ │ │ │ │ ├── index.ets │ │ │ │ │ └── service.ets │ │ │ │ ├── theme/ │ │ │ │ │ ├── index.ets │ │ │ │ │ ├── service.ets │ │ │ │ │ ├── styling.ets │ │ │ │ │ └── theme.ets │ │ │ │ └── util/ │ │ │ │ ├── color.ets │ │ │ │ ├── component.ets │ │ │ │ ├── crypto.ets │ │ │ │ ├── dom.ets │ │ │ │ ├── error.ets │ │ │ │ ├── event.ets │ │ │ │ ├── index.ets │ │ │ │ ├── layout.ets │ │ │ │ ├── log.ets │ │ │ │ └── uuid/ │ │ │ │ ├── index.ets │ │ │ │ └── src/ │ │ │ │ ├── index.js │ │ │ │ ├── max.js │ │ │ │ ├── md5.js │ │ │ │ ├── native.js │ │ │ │ ├── nil.js │ │ │ │ ├── parse.js │ │ │ │ ├── regex.js │ │ │ │ ├── rng.js │ │ │ │ ├── sha1.js │ │ │ │ ├── stringify.js │ │ │ │ ├── types.js │ │ │ │ ├── uuid-bin.js │ │ │ │ ├── v1.js │ │ │ │ ├── v1ToV6.js │ │ │ │ ├── v3.js │ │ │ │ ├── v35.js │ │ │ │ ├── v4.js │ │ │ │ ├── v5.js │ │ │ │ ├── v6.js │ │ │ │ ├── v6ToV1.js │ │ │ │ ├── v7.js │ │ │ │ ├── validate.js │ │ │ │ └── version.js │ │ │ ├── module.json5 │ │ │ └── resources/ │ │ │ ├── base/ │ │ │ │ └── element/ │ │ │ │ └── string.json │ │ │ ├── en_US/ │ │ │ │ └── element/ │ │ │ │ └── string.json │ │ │ ├── resfile/ │ │ │ │ └── res/ │ │ │ │ ├── cyrillic/ │ │ │ │ │ ├── cyrillic.map.xml │ │ │ │ │ ├── language_cyrillic.xml │ │ │ │ │ ├── mappings_cyrillic.xml │ │ │ │ │ ├── symbols_cyrillic.xml │ │ │ │ │ ├── wnbx10.xml │ │ │ │ │ ├── wnbxti10.xml │ │ │ │ │ ├── wnr10.xml │ │ │ │ │ ├── wnss10.xml │ │ │ │ │ ├── wnssbx10.xml │ │ │ │ │ ├── wnssi10.xml │ │ │ │ │ ├── wnti10.xml │ │ │ │ │ └── wntt10.xml │ │ │ │ ├── fonts/ │ │ │ │ │ └── licences/ │ │ │ │ │ ├── Knuth_License.txt │ │ │ │ │ ├── License_for_dsrom.txt │ │ │ │ │ └── OFL.txt │ │ │ │ └── greek/ │ │ │ │ ├── fcmbipg.xml │ │ │ │ ├── fcmbpg.xml │ │ │ │ ├── fcmripg.xml │ │ │ │ ├── fcmrpg.xml │ │ │ │ ├── fcsbpg.xml │ │ │ │ ├── fcsropg.xml │ │ │ │ ├── fcsrpg.xml │ │ │ │ ├── fctrpg.xml │ │ │ │ ├── greek.map.xml │ │ │ │ ├── language_greek.xml │ │ │ │ ├── mappings_greek.xml │ │ │ │ └── symbols_greek.xml │ │ │ └── zh_CN/ │ │ │ └── element/ │ │ │ └── string.json │ │ ├── ohosTest/ │ │ │ ├── ets/ │ │ │ │ └── test/ │ │ │ │ ├── Ability.test.ets │ │ │ │ └── List.test.ets │ │ │ └── module.json5 │ │ └── test/ │ │ ├── List.test.ets │ │ └── LocalUnit.test.ets │ ├── oh-package.json5 │ └── playground/ │ ├── .gitignore │ ├── build-profile.json5 │ ├── hvigorfile.ts │ ├── obfuscation-rules.txt │ ├── oh-package.json5 │ └── src/ │ ├── main/ │ │ ├── ets/ │ │ │ ├── pages/ │ │ │ │ ├── board.ets │ │ │ │ ├── feature-detail.ets │ │ │ │ ├── feature-list.ets │ │ │ │ ├── index.ets │ │ │ │ └── shared/ │ │ │ │ ├── feature.ets │ │ │ │ ├── index.ets │ │ │ │ └── navigation.ets │ │ │ ├── playgroundability/ │ │ │ │ └── PlaygroundAbility.ets │ │ │ └── playgroundbackupability/ │ │ │ └── PlaygroundBackupAbility.ets │ │ ├── module.json5 │ │ └── resources/ │ │ ├── base/ │ │ │ ├── element/ │ │ │ │ ├── color.json │ │ │ │ ├── float.json │ │ │ │ └── string.json │ │ │ ├── media/ │ │ │ │ └── layered_image.json │ │ │ └── profile/ │ │ │ ├── backup_config.json │ │ │ └── main_pages.json │ │ ├── dark/ │ │ │ └── element/ │ │ │ └── color.json │ │ └── rawfile/ │ │ └── feature/ │ │ ├── cmark-gfm-bench/ │ │ │ ├── block-bq-flat.md │ │ │ ├── block-bq-nested.md │ │ │ ├── block-code.md │ │ │ ├── block-fences.md │ │ │ ├── block-heading.md │ │ │ ├── block-hr.md │ │ │ ├── block-html.md │ │ │ ├── block-lheading.md │ │ │ ├── block-list-flat.md │ │ │ ├── block-list-nested.md │ │ │ ├── block-ref-flat.md │ │ │ ├── block-ref-nested.md │ │ │ ├── inline-autolink.md │ │ │ ├── inline-backticks.md │ │ │ ├── inline-em-flat.md │ │ │ ├── inline-em-nested.md │ │ │ ├── inline-em-worst.md │ │ │ ├── inline-entity.md │ │ │ ├── inline-escape.md │ │ │ ├── inline-html.md │ │ │ ├── inline-links-flat.md │ │ │ ├── inline-links-nested.md │ │ │ ├── inline-newlines.md │ │ │ ├── lorem1.md │ │ │ └── rawtabs.md │ │ ├── markdown-ant/ │ │ │ ├── html-tag-a.md │ │ │ ├── html-tag-mark.md │ │ │ ├── html-tag-sub.md │ │ │ ├── html-tag-sup.md │ │ │ └── html-tag-u.md │ │ └── markdown-it/ │ │ ├── code.md │ │ ├── emoji.md │ │ ├── emph.md │ │ ├── footnote.md │ │ ├── heading.md │ │ ├── image.md │ │ ├── line-break.md │ │ ├── link.md │ │ ├── list.md │ │ ├── math.md │ │ ├── paragraph.md │ │ ├── quote.md │ │ ├── strike-through.md │ │ ├── strong.md │ │ ├── sub.md │ │ ├── sup.md │ │ ├── table.md │ │ ├── task.md │ │ └── thematic-break.md │ ├── mock/ │ │ └── mock-config.json5 │ ├── ohosTest/ │ │ ├── ets/ │ │ │ └── test/ │ │ │ ├── Ability.test.ets │ │ │ └── List.test.ets │ │ └── module.json5 │ └── test/ │ ├── List.test.ets │ └── LocalUnit.test.ets ├── INSTALL.md ├── LICENSE ├── README.md └── iOS/ ├── AntMarkdown/ │ ├── .ruby-version │ ├── .travis.yml │ ├── AntMarkdown.xcodeproj/ │ │ └── project.pbxproj │ ├── Makefile │ ├── Resources/ │ │ ├── AntMarkdown.bundle/ │ │ │ └── Images.xcassets/ │ │ │ └── Contents.json │ │ └── mathFonts.bundle/ │ │ ├── xits-math.otf │ │ └── xits-math.plist │ ├── Scripts/ │ │ └── inject.ini │ ├── Sources/ │ │ ├── External/ │ │ │ ├── CocoaMarkdown/ │ │ │ │ ├── CMAttributeRun.h │ │ │ │ ├── CMAttributeRun.m │ │ │ │ ├── CMAttributedStringRenderer.h │ │ │ │ ├── CMAttributedStringRenderer.m │ │ │ │ ├── CMAttributedStringRenderer_Private.h │ │ │ │ ├── CMBlockTextAttachment.h │ │ │ │ ├── CMBlockTextAttachment.m │ │ │ │ ├── CMCascadingAttributeStack.h │ │ │ │ ├── CMCascadingAttributeStack.m │ │ │ │ ├── CMDocument+AttributedStringAdditions.h │ │ │ │ ├── CMDocument+AttributedStringAdditions.m │ │ │ │ ├── CMDocument+HTMLAdditions.h │ │ │ │ ├── CMDocument+HTMLAdditions.m │ │ │ │ ├── CMDocument.h │ │ │ │ ├── CMDocument.m │ │ │ │ ├── CMDocument_Private.h │ │ │ │ ├── CMHTMLElement.h │ │ │ │ ├── CMHTMLElement.m │ │ │ │ ├── CMHTMLElementTransformer.h │ │ │ │ ├── CMHTMLRenderer.h │ │ │ │ ├── CMHTMLRenderer.m │ │ │ │ ├── CMHTMLScriptTransformer.h │ │ │ │ ├── CMHTMLScriptTransformer.m │ │ │ │ ├── CMHTMLScriptTransformer_Private.h │ │ │ │ ├── CMHTMLStrikethroughTransformer.h │ │ │ │ ├── CMHTMLStrikethroughTransformer.m │ │ │ │ ├── CMHTMLSubscriptTransformer.h │ │ │ │ ├── CMHTMLSubscriptTransformer.m │ │ │ │ ├── CMHTMLSuperscriptTransformer.h │ │ │ │ ├── CMHTMLSuperscriptTransformer.m │ │ │ │ ├── CMHTMLUnderlineTransformer.h │ │ │ │ ├── CMHTMLUnderlineTransformer.m │ │ │ │ ├── CMHTMLUtilities.h │ │ │ │ ├── CMHTMLUtilities.m │ │ │ │ ├── CMHorizontalRuleAttachment.h │ │ │ │ ├── CMHorizontalRuleAttachment.m │ │ │ │ ├── CMImageTextAttachment.h │ │ │ │ ├── CMImageTextAttachment.m │ │ │ │ ├── CMInlineTextAttachment.h │ │ │ │ ├── CMInlineTextAttachment.m │ │ │ │ ├── CMIterator.h │ │ │ │ ├── CMIterator.m │ │ │ │ ├── CMNode+Table.h │ │ │ │ ├── CMNode+Table.m │ │ │ │ ├── CMNode.h │ │ │ │ ├── CMNode.m │ │ │ │ ├── CMNode_Private.h │ │ │ │ ├── CMParser.h │ │ │ │ ├── CMParser.m │ │ │ │ ├── CMPlatformDefines.h │ │ │ │ ├── CMStack.h │ │ │ │ ├── CMStack.m │ │ │ │ ├── CMTaskCheckAttachment+Private.h │ │ │ │ ├── CMTaskCheckAttachment.h │ │ │ │ ├── CMTaskCheckAttachment.m │ │ │ │ ├── CMTextAttributes.h │ │ │ │ ├── CMTextAttributes.m │ │ │ │ ├── CocoaMarkdown.h │ │ │ │ └── Info.plist │ │ │ ├── Ono/ │ │ │ │ ├── ONOXMLDocument.h │ │ │ │ ├── ONOXMLDocument.m │ │ │ │ └── Ono.h │ │ │ ├── cmark-gfm/ │ │ │ │ ├── cmark-gfm_export.h │ │ │ │ ├── cmark-gfm_version.h │ │ │ │ ├── config.h │ │ │ │ ├── extensions/ │ │ │ │ │ ├── CMakeLists.txt │ │ │ │ │ ├── autolink.c │ │ │ │ │ ├── autolink.h │ │ │ │ │ ├── cmark-gfm-core-extensions.h │ │ │ │ │ ├── core-extensions.c │ │ │ │ │ ├── emoji.c │ │ │ │ │ ├── emoji.h │ │ │ │ │ ├── ext_scanners.c │ │ │ │ │ ├── ext_scanners.h │ │ │ │ │ ├── ext_scanners.re │ │ │ │ │ ├── math_mark.c │ │ │ │ │ ├── math_mark.h │ │ │ │ │ ├── strikethrough.c │ │ │ │ │ ├── strikethrough.h │ │ │ │ │ ├── table.c │ │ │ │ │ ├── table.h │ │ │ │ │ ├── tagfilter.c │ │ │ │ │ ├── tagfilter.h │ │ │ │ │ ├── tasklist.c │ │ │ │ │ └── tasklist.h │ │ │ │ └── src/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── arena.c │ │ │ │ ├── blocks.c │ │ │ │ ├── buffer.c │ │ │ │ ├── buffer.h │ │ │ │ ├── case_fold_switch.inc │ │ │ │ ├── chunk.h │ │ │ │ ├── cmark-gfm-extension_api.h │ │ │ │ ├── cmark-gfm.h │ │ │ │ ├── cmark-gfm_version.h.in │ │ │ │ ├── cmark.c │ │ │ │ ├── cmark_ctype.c │ │ │ │ ├── cmark_ctype.h │ │ │ │ ├── commonmark.c │ │ │ │ ├── config.h.in │ │ │ │ ├── entities.inc │ │ │ │ ├── footnotes.c │ │ │ │ ├── footnotes.h │ │ │ │ ├── houdini.h │ │ │ │ ├── houdini_href_e.c │ │ │ │ ├── houdini_html_e.c │ │ │ │ ├── houdini_html_u.c │ │ │ │ ├── html.c │ │ │ │ ├── html.h │ │ │ │ ├── inlines.c │ │ │ │ ├── inlines.h │ │ │ │ ├── iterator.c │ │ │ │ ├── iterator.h │ │ │ │ ├── latex.c │ │ │ │ ├── libcmark-gfm.pc.in │ │ │ │ ├── linked_list.c │ │ │ │ ├── man.c │ │ │ │ ├── map.c │ │ │ │ ├── map.h │ │ │ │ ├── node.c │ │ │ │ ├── node.h │ │ │ │ ├── parser.h │ │ │ │ ├── plaintext.c │ │ │ │ ├── plugin.c │ │ │ │ ├── plugin.h │ │ │ │ ├── references.c │ │ │ │ ├── references.h │ │ │ │ ├── registry.c │ │ │ │ ├── registry.h │ │ │ │ ├── render.c │ │ │ │ ├── render.h │ │ │ │ ├── scanners.c │ │ │ │ ├── scanners.h │ │ │ │ ├── scanners.re │ │ │ │ ├── syntax_extension.c │ │ │ │ ├── syntax_extension.h │ │ │ │ ├── utf8.c │ │ │ │ ├── utf8.h │ │ │ │ └── xml.c │ │ │ └── iosMath/ │ │ │ ├── IosMath.h │ │ │ ├── lib/ │ │ │ │ ├── MTMathAtomFactory.h │ │ │ │ ├── MTMathAtomFactory.m │ │ │ │ ├── MTMathList.h │ │ │ │ ├── MTMathList.m │ │ │ │ ├── MTMathListBuilder.h │ │ │ │ ├── MTMathListBuilder.m │ │ │ │ ├── MTMathListIndex.h │ │ │ │ ├── MTMathListIndex.m │ │ │ │ ├── MTUnicode.h │ │ │ │ └── MTUnicode.m │ │ │ └── render/ │ │ │ ├── MTConfig.h │ │ │ ├── MTFont.h │ │ │ ├── MTFont.m │ │ │ ├── MTFontManager.h │ │ │ ├── MTFontManager.m │ │ │ ├── MTLabel.h │ │ │ ├── MTLabel.m │ │ │ ├── MTMathListDisplay.h │ │ │ ├── MTMathListDisplay.m │ │ │ ├── MTMathUILabel.h │ │ │ ├── MTMathUILabel.m │ │ │ ├── NSBezierPath+addLineToPoint.h │ │ │ ├── NSBezierPath+addLineToPoint.m │ │ │ ├── NSColor+HexString.h │ │ │ ├── NSColor+HexString.m │ │ │ ├── NSView+backgroundColor.h │ │ │ ├── NSView+backgroundColor.m │ │ │ ├── UIColor+HexString.h │ │ │ ├── UIColor+HexString.m │ │ │ └── internal/ │ │ │ ├── MTFont+Internal.h │ │ │ ├── MTFontMathTable.h │ │ │ ├── MTFontMathTable.m │ │ │ ├── MTMathListDisplayInternal.h │ │ │ ├── MTTypesetter.h │ │ │ └── MTTypesetter.m │ │ └── Public/ │ │ ├── AMAttributedStringRenderer.h │ │ ├── AMAttributedStringRenderer.m │ │ ├── AMBlockMathAttachment.h │ │ ├── AMBlockMathAttachment.m │ │ ├── AMCodeHighlighter.h │ │ ├── AMCodeHighlighter.m │ │ ├── AMCodeViewAttachment.h │ │ ├── AMCodeViewAttachment.m │ │ ├── AMDrawable.h │ │ ├── AMDrawable.m │ │ ├── AMEmojiManager.h │ │ ├── AMEmojiManager.m │ │ ├── AMGradient.h │ │ ├── AMGradient.m │ │ ├── AMGradientLayer.h │ │ ├── AMGradientLayer.m │ │ ├── AMGradientView.h │ │ ├── AMGradientView.m │ │ ├── AMHTMLTransformer.h │ │ ├── AMHTMLTransformer.m │ │ ├── AMIconAttachment.h │ │ ├── AMIconAttachment.m │ │ ├── AMIconLinkAttachment.h │ │ ├── AMIconLinkAttachment.m │ │ ├── AMImageTextAttachment.h │ │ ├── AMImageTextAttachment.m │ │ ├── AMInlineMathAttachment.h │ │ ├── AMInlineMathAttachment.m │ │ ├── AMLayoutManager+Quote.h │ │ ├── AMLayoutManager+Quote.m │ │ ├── AMLayoutManager.h │ │ ├── AMLayoutManager.m │ │ ├── AMMarkDownTableViewBlowUpControllerViewController.h │ │ ├── AMMarkDownTableViewBlowUpControllerViewController.m │ │ ├── AMMarkdownCodeView.h │ │ ├── AMMarkdownCodeView.m │ │ ├── AMMarkdownTableLayout.h │ │ ├── AMMarkdownTableLayout.m │ │ ├── AMMarkdownTableView.h │ │ ├── AMMarkdownTableView.m │ │ ├── AMTableViewAttachment.h │ │ ├── AMTableViewAttachment.m │ │ ├── AMTextBackground.h │ │ ├── AMTextBackground.m │ │ ├── AMTextStyles.h │ │ ├── AMTextStyles.m │ │ ├── AMUnderline.h │ │ ├── AMUnderline.m │ │ ├── AMUtils.h │ │ ├── AMUtils.m │ │ ├── AMViewAttachment.h │ │ ├── AMViewAttachment.m │ │ ├── AntMarkdown.h │ │ ├── NSMutableAttributedString+AntMarkdown.h │ │ ├── NSMutableAttributedString+AntMarkdown.m │ │ ├── NSString+AntMarkdown.h │ │ ├── NSString+AntMarkdown.m │ │ ├── UILabel+AntMarkdown.h │ │ ├── UILabel+AntMarkdown.m │ │ ├── UITextView+AntMarkdown.h │ │ └── UITextView+AntMarkdown.m │ ├── SupportingFiles/ │ │ ├── AntMarkdown-Framework.plist │ │ ├── AntMarkdown-Info.plist │ │ ├── AntMarkdown-Prefix.pch │ │ └── en.lproj/ │ │ └── InfoPlist.strings │ └── project.yml ├── FluidMarkdown/ │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Assets.xcassets/ │ │ ├── AccentColor.colorset/ │ │ │ └── Contents.json │ │ ├── AppIcon.appiconset/ │ │ │ └── Contents.json │ │ └── Contents.json │ ├── Base.lproj/ │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── Example/ │ │ ├── AIChatViewController.h │ │ ├── AIChatViewController.m │ │ ├── MenuViewController.h │ │ ├── MenuViewController.m │ │ ├── StreamPreviewViewController.h │ │ ├── StreamPreviewViewController.m │ │ ├── ToastView.h │ │ └── ToastView.m │ ├── Info.plist │ ├── SceneDelegate.h │ ├── SceneDelegate.m │ ├── Sources/ │ │ ├── API/ │ │ │ └── AMXMarkdownWidget.h │ │ ├── Markdown/ │ │ │ ├── AMTextStyles+CardUIPlugins.h │ │ │ ├── AMTextStyles+CardUIPlugins.m │ │ │ ├── AMXFootnodeBuilder.h │ │ │ ├── AMXFootnodeBuilder.m │ │ │ ├── AMXMarkdownCodeView.h │ │ │ ├── AMXMarkdownCodeView.m │ │ │ ├── AMXMarkdownCodeViewAttachment.h │ │ │ ├── AMXMarkdownCodeViewAttachment.m │ │ │ ├── AMXMarkdownCustomRenderEventModel.h │ │ │ ├── AMXMarkdownCustomRenderEventModel.m │ │ │ ├── AMXMarkdownHelper.h │ │ │ ├── AMXMarkdownHelper.m │ │ │ ├── AMXMarkdownImageAttachmentBuilder.h │ │ │ ├── AMXMarkdownImageAttachmentBuilder.m │ │ │ ├── AMXMarkdownImageTextAttachment.h │ │ │ ├── AMXMarkdownImageTextAttachment.m │ │ │ ├── AMXMarkdownLogModel.h │ │ │ ├── AMXMarkdownLogModel.m │ │ │ ├── AMXMarkdownTextView.h │ │ │ ├── AMXMarkdownTextView.m │ │ │ ├── AMXMarkdownTimer.h │ │ │ └── AMXMarkdownTimer.m │ │ ├── Style/ │ │ │ ├── AMXMarkdownStyle.h │ │ │ ├── AMXMarkdownStyle.m │ │ │ ├── AMXRenderService.h │ │ │ └── AMXRenderService.m │ │ └── Util/ │ │ ├── AMXMarkdownDefine.h │ │ ├── AMXMarkdownUtil.h │ │ └── AMXMarkdownUtil.m │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── FluidMarkdown.xcodeproj/ │ ├── project.pbxproj │ └── project.xcworkspace/ │ └── contents.xcworkspacedata ├── FluidMarkdown.xcworkspace/ │ └── contents.xcworkspacedata └── Resources/ ├── AntMarkdown.bundle/ │ └── Images.xcassets/ │ └── Contents.json ├── data1.txt ├── data2.txt ├── data3.txt └── mathFonts.bundle/ ├── xits-math.otf └── xits-math.plist