apex-ruby 1.0.29 → 1.0.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +2 -8
- data/apex-ruby.gemspec +14 -3
- data/ext/apex_ext/apex_src/include/apex/apex.h +11 -2
- data/ext/apex_ext/apex_src/src/apex.c +64 -5
- data/ext/apex_ext/apex_src/src/ast_terminal.c +2 -4
- data/ext/apex_ext/apex_src/src/extensions/callouts.c +103 -63
- data/ext/apex_ext/apex_src/src/extensions/callouts.h +3 -2
- data/ext/apex_ext/apex_src/src/extensions/citations.c +15 -2
- data/ext/apex_ext/apex_src/src/extensions/emoji.c +73 -7
- data/ext/apex_ext/apex_src/src/extensions/html_markdown.c +25 -4
- data/ext/apex_ext/apex_src/src/extensions/html_markdown.h +4 -1
- data/ext/apex_ext/apex_src/src/extensions/insert.c +49 -0
- data/ext/apex_ext/apex_src/src/extensions/metadata.c +275 -55
- data/ext/apex_ext/apex_src/src/extensions/metadata.h +9 -0
- data/ext/apex_ext/apex_src/src/extensions/relaxed_tables.c +172 -254
- data/ext/apex_ext/apex_src/src/extensions/table_html_postprocess.c +36 -127
- data/ext/apex_ext/apex_src/src/html_renderer.c +99 -157
- data/ext/apex_ext/extconf.rb +31 -79
- data/lib/apex/version.rb +1 -1
- metadata +1 -470
- data/ext/apex_ext/apex_src/AGENTS.md +0 -41
- data/ext/apex_ext/apex_src/BENCHMARK.md +0 -32
- data/ext/apex_ext/apex_src/BENCHMARK_COMPARISON.md +0 -67
- data/ext/apex_ext/apex_src/CHANGELOG.md +0 -3373
- data/ext/apex_ext/apex_src/CMakeLists.txt +0 -481
- data/ext/apex_ext/apex_src/Dockerfile.linux-build +0 -15
- data/ext/apex_ext/apex_src/Formula/apex.rb +0 -43
- data/ext/apex_ext/apex_src/Info.plist.in +0 -27
- data/ext/apex_ext/apex_src/Package.swift +0 -192
- data/ext/apex_ext/apex_src/PackageSupport/README.md +0 -17
- data/ext/apex_ext/apex_src/PackageSupport/cmark-gfm/cmark_gfm_spm_stub.c +0 -4
- data/ext/apex_ext/apex_src/README.md +0 -536
- data/ext/apex_ext/apex_src/ROADMAP.md +0 -5
- data/ext/apex_ext/apex_src/VERSION +0 -1
- data/ext/apex_ext/apex_src/apex-debug.log +0 -4
- data/ext/apex_ext/apex_src/apex-header-2-rb@2x.webp +0 -0
- data/ext/apex_ext/apex_src/apex-plugins.json.example +0 -20
- data/ext/apex_ext/apex_src/apex.code-workspace +0 -38
- data/ext/apex_ext/apex_src/apex.pc.in +0 -11
- data/ext/apex_ext/apex_src/apex.taskpaper +0 -12
- data/ext/apex_ext/apex_src/apex_deflist_debug.log +0 -25
- data/ext/apex_ext/apex_src/buildnotes.md +0 -1435
- data/ext/apex_ext/apex_src/cli/main.c +0 -4588
- data/ext/apex_ext/apex_src/debug.log +0 -7
- data/ext/apex_ext/apex_src/debug_test.sh +0 -22
- data/ext/apex_ext/apex_src/docs/API_REFERENCE.md +0 -451
- data/ext/apex_ext/apex_src/docs/ARCHITECTURE.md +0 -166
- data/ext/apex_ext/apex_src/docs/CITATIONS_EXAMPLES.md +0 -274
- data/ext/apex_ext/apex_src/docs/CITATIONS_IMPLEMENTATION_PLAN.md +0 -749
- data/ext/apex_ext/apex_src/docs/CITATIONS_PLAN.md +0 -744
- data/ext/apex_ext/apex_src/docs/CMARK_INTEGRATION.md +0 -220
- data/ext/apex_ext/apex_src/docs/CRITICMARKUP.md +0 -501
- data/ext/apex_ext/apex_src/docs/DEBUGGING.md +0 -73
- data/ext/apex_ext/apex_src/docs/FINAL_STATUS.md +0 -391
- data/ext/apex_ext/apex_src/docs/FINAL_STATUS_UPDATE.md +0 -237
- data/ext/apex_ext/apex_src/docs/IAL_FEATURES.md +0 -210
- data/ext/apex_ext/apex_src/docs/IAL_STATUS.md +0 -344
- data/ext/apex_ext/apex_src/docs/INDEX_IMPLEMENTATION_ANALYSIS.md +0 -382
- data/ext/apex_ext/apex_src/docs/INTEGRATION_EXAMPLE.m +0 -144
- data/ext/apex_ext/apex_src/docs/LIMITATIONS_RESOLVED.md +0 -278
- data/ext/apex_ext/apex_src/docs/OUTPUT_MODES.md +0 -321
- data/ext/apex_ext/apex_src/docs/PROGRESS.md +0 -167
- data/ext/apex_ext/apex_src/docs/STANDALONE_FEATURE.md +0 -174
- data/ext/apex_ext/apex_src/docs/TABLE_SPANS_STATUS.md +0 -243
- data/ext/apex_ext/apex_src/docs/TEST_COVERAGE.md +0 -316
- data/ext/apex_ext/apex_src/docs/USER_GUIDE.md +0 -803
- data/ext/apex_ext/apex_src/docs/WIKI_LINKS_ISSUE.md +0 -91
- data/ext/apex_ext/apex_src/docs/index.md +0 -459
- data/ext/apex_ext/apex_src/docs/plans/2025-02-27-man-page-output-implementation.md +0 -351
- data/ext/apex_ext/apex_src/docs/superpowers/plans/2026-07-12-toc-output-format.md +0 -745
- data/ext/apex_ext/apex_src/docs/superpowers/plans/2026-07-18-bear-image-attributes.md +0 -829
- data/ext/apex_ext/apex_src/docs/superpowers/plans/2026-07-19-apex-node-npm.md +0 -1148
- data/ext/apex_ext/apex_src/docs/superpowers/specs/2026-07-12-toc-output-format-design.md +0 -161
- data/ext/apex_ext/apex_src/docs/superpowers/specs/2026-07-18-bear-image-attributes-design.md +0 -184
- data/ext/apex_ext/apex_src/docs/superpowers/specs/2026-07-19-apex-node-npm-design.md +0 -211
- data/ext/apex_ext/apex_src/documentation/README.md +0 -160
- data/ext/apex_ext/apex_src/documentation/app-settings-table.md +0 -67
- data/ext/apex_ext/apex_src/documentation/app-transformed/Citations.md +0 -340
- data/ext/apex_ext/apex_src/documentation/app-transformed/Credits.md +0 -11
- data/ext/apex_ext/apex_src/documentation/app-transformed/Header-IDs.md +0 -234
- data/ext/apex_ext/apex_src/documentation/app-transformed/Inline-Attribute-Lists.md +0 -516
- data/ext/apex_ext/apex_src/documentation/app-transformed/Metadata-Transforms.md +0 -461
- data/ext/apex_ext/apex_src/documentation/app-transformed/Modes.md +0 -193
- data/ext/apex_ext/apex_src/documentation/app-transformed/Multi-File-Documents.md +0 -201
- data/ext/apex_ext/apex_src/documentation/app-transformed/Plugins.md +0 -678
- data/ext/apex_ext/apex_src/documentation/app-transformed/Syntax.md +0 -1367
- data/ext/apex_ext/apex_src/documentation/docsets/Apex Command Line Options.cheatsheet.txt +0 -371
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Info.plist +0 -24
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/C-API.html +0 -2211
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Callouts.html +0 -1194
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Citations.html +0 -1620
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Command-Line-Options.html +0 -6024
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Configuration.html +0 -1877
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Credits.html +0 -1040
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Examples.html +0 -1402
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Filters.html +0 -1656
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Generating-Man-Pages.html +0 -1226
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Getting-Started.html +0 -1148
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Header-IDs.html +0 -1478
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Home.html +0 -1225
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Indices.html +0 -2327
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Inline-Attribute-Lists.html +0 -2041
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Installation.html +0 -1314
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Limitations-and-Roadmap.html +0 -1868
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Metadata-Transforms.html +0 -1731
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Modes.html +0 -2242
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Multi-File-Documents.html +0 -1533
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Multi-Format-Images.html +0 -1362
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Pandoc-Integration.html +0 -1338
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Plugins.html +0 -3188
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Quarto-Mode.html +0 -1405
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Rendering-Markdown-In-Terminal.html +0 -1902
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Syntax.html +0 -4222
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Tables.html +0 -1781
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Troubleshooting.html +0 -1629
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Usage.html +0 -1394
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Using-Apex-with-Jekyll.html +0 -1132
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Writing-Tests.html +0 -1754
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Xcode-Integration.html +0 -2562
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/docSet.dsidx +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/optimizedIndex.dsidx +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Info.plist +0 -22
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/Documents/cheatset_resources/Open_Sans.woff +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/Documents/cheatset_resources/Open_Sans_Bold.woff +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/Documents/cheatset_resources/Open_Sans_Bold_Italic.woff +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/Documents/cheatset_resources/Open_Sans_Extrabold.woff +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/Documents/cheatset_resources/Open_Sans_Extrabold_Italic.woff +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/Documents/cheatset_resources/Open_Sans_Italic.woff +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/Documents/cheatset_resources/Open_Sans_Semibold.woff +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/Documents/cheatset_resources/Open_Sans_Semibold_Italic.woff +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/Documents/index.html +0 -914
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/Documents/style.css +0 -399
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/docSet.dsidx +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/optimizedIndex.dsidx +0 -0
- data/ext/apex_ext/apex_src/documentation/generate_app_docs.rb +0 -772
- data/ext/apex_ext/apex_src/documentation/generate_app_docs_ai.rb +0 -678
- data/ext/apex_ext/apex_src/documentation/generate_docset.rb +0 -873
- data/ext/apex_ext/apex_src/documentation/generate_single_html.rb +0 -733
- data/ext/apex_ext/apex_src/documentation/html/apex-app-docs.html +0 -8746
- data/ext/apex_ext/apex_src/documentation/html/apex-docs.html +0 -17073
- data/ext/apex_ext/apex_src/documentation/shared_scripts.js +0 -64
- data/ext/apex_ext/apex_src/documentation/shared_styles.css +0 -651
- data/ext/apex_ext/apex_src/documentation/transform_for_app.example.md +0 -260
- data/ext/apex_ext/apex_src/documentation/transform_for_app.md +0 -55
- data/ext/apex_ext/apex_src/escaping-repro.md +0 -103
- data/ext/apex_ext/apex_src/examples/bracketed_spans_demo.md +0 -119
- data/ext/apex_ext/apex_src/examples/emoji_span_plugin.yml +0 -11
- data/ext/apex_ext/apex_src/examples/example.html +0 -53
- data/ext/apex_ext/apex_src/examples/example.md +0 -85
- data/ext/apex_ext/apex_src/examples/fenced_divs_demo.md +0 -158
- data/ext/apex_ext/apex_src/examples/kbd.md +0 -8
- data/ext/apex_ext/apex_src/examples/kbd_plugin.rb +0 -250
- data/ext/apex_ext/apex_src/examples/kbd_plugin.yml +0 -9
- data/ext/apex_ext/apex_src/examples/quick-actions/Markdown to RTF.workflow/Contents/Info.plist +0 -8
- data/ext/apex_ext/apex_src/examples/quick-actions/Markdown to RTF.workflow/Contents/QuickLook/Preview.png +0 -0
- data/ext/apex_ext/apex_src/examples/quick-actions/Markdown to RTF.workflow/Contents/document.wflow +0 -547
- data/ext/apex_ext/apex_src/examples/quick-actions/Markdown-to-RTF.workflow.zip +0 -0
- data/ext/apex_ext/apex_src/examples/quick-actions/README.md +0 -33
- data/ext/apex_ext/apex_src/ial.html +0 -24
- data/ext/apex_ext/apex_src/icon/apexicon-outline-black.png +0 -0
- data/ext/apex_ext/apex_src/icon/apexicon-outline-black@2x.png +0 -0
- data/ext/apex_ext/apex_src/icon/apexicon-outline-mark.png +0 -0
- data/ext/apex_ext/apex_src/icon/apexicon-outline-mark@2x.png +0 -0
- data/ext/apex_ext/apex_src/icon/apexicon-outline-white.png +0 -0
- data/ext/apex_ext/apex_src/icon/apexicon-outline-white@2x.png +0 -0
- data/ext/apex_ext/apex_src/icon/apexicon.png +0 -0
- data/ext/apex_ext/apex_src/icon/apexicon@2x.png +0 -0
- data/ext/apex_ext/apex_src/man/apex-config.5 +0 -455
- data/ext/apex_ext/apex_src/man/apex-config.5.md +0 -262
- data/ext/apex_ext/apex_src/man/apex-plugins.7 +0 -541
- data/ext/apex_ext/apex_src/man/apex-plugins.7.md +0 -365
- data/ext/apex_ext/apex_src/man/apex.1 +0 -583
- data/ext/apex_ext/apex_src/man/apex.1.html +0 -703
- data/ext/apex_ext/apex_src/man/apex.1.md +0 -803
- data/ext/apex_ext/apex_src/man/apex.1.new +0 -338
- data/ext/apex_ext/apex_src/objc/Apex.swift +0 -316
- data/ext/apex_ext/apex_src/objc/ApexPlugins.swift +0 -79
- data/ext/apex_ext/apex_src/objc/NSString+Apex.h +0 -207
- data/ext/apex_ext/apex_src/objc/NSString+Apex.m +0 -584
- data/ext/apex_ext/apex_src/objc/NSString+ApexPlugins.h +0 -76
- data/ext/apex_ext/apex_src/objc/NSString+ApexPlugins.m +0 -169
- data/ext/apex_ext/apex_src/output.html +0 -87
- data/ext/apex_ext/apex_src/pages/index.md +0 -459
- data/ext/apex_ext/apex_src/plans/quarto-mode.md +0 -442
- data/ext/apex_ext/apex_src/src/_README.md +0 -413
- data/ext/apex_ext/apex_src/src/extensions/github-emoji.txt +0 -869
- data/ext/apex_ext/apex_src/test-linux-build.sh +0 -20
- data/ext/apex_ext/apex_src/test.html +0 -103
- data/ext/apex_ext/apex_src/test_coverage.sh +0 -121
- data/ext/apex_ext/apex_src/test_ial_fenced.md +0 -6
- data/ext/apex_ext/apex_src/test_math_norm.py +0 -79
- data/ext/apex_ext/apex_src/test_pandoc_output.html +0 -48
- data/ext/apex_ext/apex_src/test_spm.sh +0 -107
- data/ext/apex_ext/apex_src/tests/ApexSPMTest/main.swift +0 -50
- data/ext/apex_ext/apex_src/tests/BENCHMARK_RESULTS.md +0 -229
- data/ext/apex_ext/apex_src/tests/CMakeLists.txt +0 -25
- data/ext/apex_ext/apex_src/tests/README.md +0 -152
- data/ext/apex_ext/apex_src/tests/benchmark.sh +0 -113
- data/ext/apex_ext/apex_src/tests/benchmark_comparison.sh +0 -166
- data/ext/apex_ext/apex_src/tests/compare_header_ids.sh +0 -31
- data/ext/apex_ext/apex_src/tests/fixtures/basic/headers.md +0 -25
- data/ext/apex_ext/apex_src/tests/fixtures/basic/list-interruption.md +0 -24
- data/ext/apex_ext/apex_src/tests/fixtures/basic/misc_markup.md +0 -33
- data/ext/apex_ext/apex_src/tests/fixtures/basic/test_basic.md +0 -26
- data/ext/apex_ext/apex_src/tests/fixtures/code/code-blocks.md +0 -260
- data/ext/apex_ext/apex_src/tests/fixtures/combine_summary/SUMMARY.md +0 -6
- data/ext/apex_ext/apex_src/tests/fixtures/combine_summary/chapter1.md +0 -7
- data/ext/apex_ext/apex_src/tests/fixtures/combine_summary/index.txt +0 -9
- data/ext/apex_ext/apex_src/tests/fixtures/combine_summary/intro.md +0 -5
- data/ext/apex_ext/apex_src/tests/fixtures/combine_summary/section1_1.md +0 -5
- data/ext/apex_ext/apex_src/tests/fixtures/comprehensive_test.md +0 -652
- data/ext/apex_ext/apex_src/tests/fixtures/debug_ref_image_ial.md +0 -3
- data/ext/apex_ext/apex_src/tests/fixtures/demos/ial.md +0 -11
- data/ext/apex_ext/apex_src/tests/fixtures/demos/ial_demo.md +0 -177
- data/ext/apex_ext/apex_src/tests/fixtures/extensions/emoji-autocorrect.md +0 -94
- data/ext/apex_ext/apex_src/tests/fixtures/extensions/emoji_test.md +0 -3
- data/ext/apex_ext/apex_src/tests/fixtures/extensions/kbd_test.md +0 -3
- data/ext/apex_ext/apex_src/tests/fixtures/filters/filter_output_with_rawblock.json +0 -1
- data/ext/apex_ext/apex_src/tests/fixtures/filters/unwrap.md +0 -7
- data/ext/apex_ext/apex_src/tests/fixtures/ial/bracketed_spans_test.md +0 -74
- data/ext/apex_ext/apex_src/tests/fixtures/images/auto-wildcard.md +0 -8
- data/ext/apex_ext/apex_src/tests/fixtures/images/bear_image_attributes.md +0 -10
- data/ext/apex_ext/apex_src/tests/fixtures/images/image_and_encoding_test.md +0 -27
- data/ext/apex_ext/apex_src/tests/fixtures/images/img/app-pass-1-profile-menu.avif +0 -0
- data/ext/apex_ext/apex_src/tests/fixtures/images/img/app-pass-1-profile-menu.jpg +0 -0
- data/ext/apex_ext/apex_src/tests/fixtures/images/img/app-pass-1-profile-menu.webp +0 -0
- data/ext/apex_ext/apex_src/tests/fixtures/images/img/app-pass-1-profile-menu@2x.avif +0 -0
- data/ext/apex_ext/apex_src/tests/fixtures/images/img/app-pass-1-profile-menu@2x.jpg +0 -0
- data/ext/apex_ext/apex_src/tests/fixtures/images/img/app-pass-1-profile-menu@2x.webp +0 -0
- data/ext/apex_ext/apex_src/tests/fixtures/images/media_formats_test.md +0 -63
- data/ext/apex_ext/apex_src/tests/fixtures/images/multimarkdown_image_attributes_test.md +0 -60
- data/ext/apex_ext/apex_src/tests/fixtures/images/pandoc_ial_image_test.md +0 -27
- data/ext/apex_ext/apex_src/tests/fixtures/images/width_height_conversion_test.md +0 -94
- data/ext/apex_ext/apex_src/tests/fixtures/img-in-div.md +0 -16
- data/ext/apex_ext/apex_src/tests/fixtures/includes/code.py +0 -4
- data/ext/apex_ext/apex_src/tests/fixtures/includes/data-semi.csv +0 -3
- data/ext/apex_ext/apex_src/tests/fixtures/includes/data.csv +0 -5
- data/ext/apex_ext/apex_src/tests/fixtures/includes/data.tsv +0 -5
- data/ext/apex_ext/apex_src/tests/fixtures/includes/image.png +0 -2
- data/ext/apex_ext/apex_src/tests/fixtures/includes/metadata_options.yml +0 -11
- data/ext/apex_ext/apex_src/tests/fixtures/includes/nested.md +0 -8
- data/ext/apex_ext/apex_src/tests/fixtures/includes/raw.html +0 -4
- data/ext/apex_ext/apex_src/tests/fixtures/includes/sections.md +0 -19
- data/ext/apex_ext/apex_src/tests/fixtures/includes/sections.txt +0 -11
- data/ext/apex_ext/apex_src/tests/fixtures/includes/simple.md +0 -7
- data/ext/apex_ext/apex_src/tests/fixtures/includes/test_image.png +0 -0
- data/ext/apex_ext/apex_src/tests/fixtures/includes/with space.txt +0 -1
- data/ext/apex_ext/apex_src/tests/fixtures/large_doc.md +0 -1094
- data/ext/apex_ext/apex_src/tests/fixtures/metadata/mmd-metadata.md +0 -5
- data/ext/apex_ext/apex_src/tests/fixtures/metadata/pandoc-meta.md +0 -4
- data/ext/apex_ext/apex_src/tests/fixtures/metadata/yaml-frontmatter.md +0 -6
- data/ext/apex_ext/apex_src/tests/fixtures/metadata_options.yml +0 -11
- data/ext/apex_ext/apex_src/tests/fixtures/minimal_pb.md +0 -2
- data/ext/apex_ext/apex_src/tests/fixtures/obsidian-callouts.md +0 -46
- data/ext/apex_ext/apex_src/tests/fixtures/output/gfm_header_id_test.md +0 -96
- data/ext/apex_ext/apex_src/tests/fixtures/output/test_citations.md +0 -43
- data/ext/apex_ext/apex_src/tests/fixtures/output/test_def_list_links.md +0 -12
- data/ext/apex_ext/apex_src/tests/fixtures/output/test_index_mmark.md +0 -53
- data/ext/apex_ext/apex_src/tests/fixtures/output/test_index_textindex.md +0 -37
- data/ext/apex_ext/apex_src/tests/fixtures/pagebreak_html_repro.md +0 -5
- data/ext/apex_ext/apex_src/tests/fixtures/python-callouts.md +0 -47
- data/ext/apex_ext/apex_src/tests/fixtures/quarto/callouts.md +0 -3
- data/ext/apex_ext/apex_src/tests/fixtures/quarto/code-attrs.md +0 -3
- data/ext/apex_ext/apex_src/tests/fixtures/quarto/diagrams.md +0 -8
- data/ext/apex_ext/apex_src/tests/fixtures/quarto/lists.md +0 -19
- data/ext/apex_ext/apex_src/tests/fixtures/quarto/raw-content.md +0 -5
- data/ext/apex_ext/apex_src/tests/fixtures/quarto/shortcodes.md +0 -7
- data/ext/apex_ext/apex_src/tests/fixtures/quarto/smoke.md +0 -81
- data/ext/apex_ext/apex_src/tests/fixtures/quarto/spans.md +0 -5
- data/ext/apex_ext/apex_src/tests/fixtures/quarto-callouts.md +0 -47
- data/ext/apex_ext/apex_src/tests/fixtures/speed.md +0 -192
- data/ext/apex_ext/apex_src/tests/fixtures/tables/advanced_tables_test.md +0 -93
- data/ext/apex_ext/apex_src/tests/fixtures/tables/grid-tables.md +0 -37
- data/ext/apex_ext/apex_src/tests/fixtures/tables/inline_tables_test.md +0 -41
- data/ext/apex_ext/apex_src/tests/fixtures/tables/relaxed-table.md +0 -12
- data/ext/apex_ext/apex_src/tests/fixtures/tables/table_cr_line_endings.md +0 -15
- data/ext/apex_ext/apex_src/tests/fixtures/tables/table_no_trailing_newline.md +0 -15
- data/ext/apex_ext/apex_src/tests/generate_gfm_ids.sh +0 -105
- data/ext/apex_ext/apex_src/tests/generate_ial_demo.sh +0 -143
- data/ext/apex_ext/apex_src/tests/gfm_id_comparison_summary.md +0 -96
- data/ext/apex_ext/apex_src/tests/gh_api_test.md +0 -6
- data/ext/apex_ext/apex_src/tests/ial_demo.html +0 -186
- data/ext/apex_ext/apex_src/tests/include_code.py +0 -19
- data/ext/apex_ext/apex_src/tests/include_snippet.md +0 -15
- data/ext/apex_ext/apex_src/tests/metadata_cli_test.sh +0 -119
- data/ext/apex_ext/apex_src/tests/multi_file_cli_test.sh +0 -64
- data/ext/apex_ext/apex_src/tests/paginate_cli_test.sh +0 -80
- data/ext/apex_ext/apex_src/tests/sample_data.csv +0 -7
- data/ext/apex_ext/apex_src/tests/table_escaped_ltlt.md +0 -4
- data/ext/apex_ext/apex_src/tests/terminal_width_test.sh +0 -29
- data/ext/apex_ext/apex_src/tests/test-swift-package.sh +0 -14
- data/ext/apex_ext/apex_src/tests/test_basic.c +0 -74
- data/ext/apex_ext/apex_src/tests/test_bear_image_attrs.c +0 -301
- data/ext/apex_ext/apex_src/tests/test_cmark_callback.c +0 -189
- data/ext/apex_ext/apex_src/tests/test_concordance.tsv +0 -4
- data/ext/apex_ext/apex_src/tests/test_custom_plugins.c +0 -78
- data/ext/apex_ext/apex_src/tests/test_escaping_repro.c +0 -82
- data/ext/apex_ext/apex_src/tests/test_extensions.c +0 -3337
- data/ext/apex_ext/apex_src/tests/test_helpers.c +0 -183
- data/ext/apex_ext/apex_src/tests/test_helpers.h +0 -91
- data/ext/apex_ext/apex_src/tests/test_ial.c +0 -289
- data/ext/apex_ext/apex_src/tests/test_links.c +0 -418
- data/ext/apex_ext/apex_src/tests/test_marked_integration.c +0 -290
- data/ext/apex_ext/apex_src/tests/test_metadata.c +0 -1147
- data/ext/apex_ext/apex_src/tests/test_output.c +0 -2056
- data/ext/apex_ext/apex_src/tests/test_plugins.c +0 -219
- data/ext/apex_ext/apex_src/tests/test_refs.bib +0 -31
- data/ext/apex_ext/apex_src/tests/test_runner.c +0 -268
- data/ext/apex_ext/apex_src/tests/test_syntax_highlight.c +0 -198
- data/ext/apex_ext/apex_src/tests/test_tables.c +0 -1298
- data/ext/apex_ext/apex_src/tests/update_benchmarks.sh +0 -9
- data/ext/apex_ext/apex_src/tests/yaml_test.md +0 -13
- data/ext/apex_ext/apex_src/tests.rb +0 -39
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/CMakeLists.txt +0 -48
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/CheckFileOffsetBits.c +0 -14
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/CheckFileOffsetBits.cmake +0 -43
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/FindAsan.cmake +0 -74
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/Makefile.nmake +0 -38
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/README.md +0 -206
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/CMakeLists.txt +0 -30
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/cplusplus.cpp +0 -15
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/cplusplus.h +0 -16
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/harness.c +0 -111
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/harness.h +0 -35
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/main.c +0 -1169
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/appveyor.yml +0 -21
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-bq-flat.md +0 -16
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-bq-nested.md +0 -13
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-code.md +0 -11
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-fences.md +0 -14
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-heading.md +0 -9
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-hr.md +0 -10
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-html.md +0 -32
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-lheading.md +0 -8
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-list-flat.md +0 -67
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-list-nested.md +0 -36
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-ref-flat.md +0 -15
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-ref-nested.md +0 -17
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-autolink.md +0 -14
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-backticks.md +0 -3
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-em-flat.md +0 -5
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-em-nested.md +0 -5
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-em-worst.md +0 -5
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-entity.md +0 -11
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-escape.md +0 -15
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-html.md +0 -44
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-links-flat.md +0 -23
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-links-nested.md +0 -13
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-newlines.md +0 -24
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/lorem1.md +0 -13
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/rawtabs.md +0 -18
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/statistics.py +0 -595
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/stats.py +0 -19
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/benchmarks.md +0 -33
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/changelog.txt +0 -1245
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/data/CaseFolding.txt +0 -1495
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/CMakeLists.txt +0 -119
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/ext_scanners.re +0 -92
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/fuzz/CMakeLists.txt +0 -22
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/fuzz/README.md +0 -12
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/fuzz/fuzz_quadratic.c +0 -91
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/fuzz/fuzz_quadratic_brackets.c +0 -110
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/fuzz/fuzzloop.sh +0 -28
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/man/CMakeLists.txt +0 -10
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/man/make_man_page.py +0 -133
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/man/man1/cmark-gfm.1 +0 -78
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/man/man3/cmark-gfm.3 +0 -1041
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/nmake.bat +0 -1
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/CMakeLists.txt +0 -230
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/cmark-gfm_version.h.in +0 -7
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/config.h +0 -38
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/config.h.in +0 -76
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/libcmark-gfm.pc.in +0 -10
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/scanners.re +0 -365
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/suppressions +0 -10
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/CMakeLists.txt +0 -114
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/__pycache__/cmark.cpython-314.pyc +0 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/__pycache__/normalize.cpython-314.pyc +0 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/afl_test_cases/test.md +0 -49
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/cmark-fuzz.c +0 -58
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/cmark.py +0 -105
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/entity_tests.py +0 -67
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/extensions-full-info-string.txt +0 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/extensions-table-prefer-style-attributes.txt +0 -38
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/extensions.txt +0 -989
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/fuzzing_dictionary +0 -67
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/normalize.py +0 -194
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/pathological_tests.py +0 -160
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/regression.txt +0 -375
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/roundtrip_tests.py +0 -50
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/run-cmark-fuzz +0 -4
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/smart_punct.txt +0 -177
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/spec.txt +0 -10212
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/spec_tests.py +0 -152
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/toolchain-mingw32.cmake +0 -17
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/Dockerfile +0 -41
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/appveyor-build.bat +0 -13
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/make_entities_inc.py +0 -32
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/mkcasefold.pl +0 -22
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/xml2md.xsl +0 -319
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/xml2md_gfm.xsl +0 -80
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/why-cmark-and-not-x.md +0 -104
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/wrappers/wrapper.js +0 -6
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/wrappers/wrapper.py +0 -37
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/wrappers/wrapper.rb +0 -15
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/wrappers/wrapper.rkt +0 -208
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/wrappers/wrapper_ext.py +0 -109
- data/ext/apex_ext/apex_src/vendor/libyaml/CMakeLists.txt +0 -160
- data/ext/apex_ext/apex_src/vendor/libyaml/Changes +0 -372
- data/ext/apex_ext/apex_src/vendor/libyaml/License +0 -20
- data/ext/apex_ext/apex_src/vendor/libyaml/Makefile.am +0 -51
- data/ext/apex_ext/apex_src/vendor/libyaml/ReadMe.md +0 -46
- data/ext/apex_ext/apex_src/vendor/libyaml/announcement.msg +0 -89
- data/ext/apex_ext/apex_src/vendor/libyaml/bootstrap +0 -3
- data/ext/apex_ext/apex_src/vendor/libyaml/cmake/config.h.in +0 -4
- data/ext/apex_ext/apex_src/vendor/libyaml/configure.ac +0 -73
- data/ext/apex_ext/apex_src/vendor/libyaml/doc/doxygen.cfg +0 -222
- data/ext/apex_ext/apex_src/vendor/libyaml/docker/README.mkd +0 -17
- data/ext/apex_ext/apex_src/vendor/libyaml/docker/alpine-3.7 +0 -26
- data/ext/apex_ext/apex_src/vendor/libyaml/docker/fedora-25 +0 -26
- data/ext/apex_ext/apex_src/vendor/libyaml/docker/ubuntu-14.04 +0 -29
- data/ext/apex_ext/apex_src/vendor/libyaml/docker/ubuntu-16.04 +0 -24
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/anchors.yaml +0 -10
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/array.yaml +0 -2
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/global-tag.yaml +0 -14
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/json.yaml +0 -1
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/mapping.yaml +0 -2
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/numbers.yaml +0 -1
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/strings.yaml +0 -7
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/tags.yaml +0 -7
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/yaml-version.yaml +0 -3
- data/ext/apex_ext/apex_src/vendor/libyaml/include/Makefile.am +0 -17
- data/ext/apex_ext/apex_src/vendor/libyaml/include/yaml.h +0 -1999
- data/ext/apex_ext/apex_src/vendor/libyaml/pkg/ReadMe.md +0 -77
- data/ext/apex_ext/apex_src/vendor/libyaml/pkg/docker/Dockerfile +0 -32
- data/ext/apex_ext/apex_src/vendor/libyaml/pkg/docker/output/ReadMe +0 -1
- data/ext/apex_ext/apex_src/vendor/libyaml/pkg/docker/scripts/libyaml-dist.sh +0 -23
- data/ext/apex_ext/apex_src/vendor/libyaml/regression-inputs/clusterfuzz-testcase-minimized-5607885063061504.yml +0 -1
- data/ext/apex_ext/apex_src/vendor/libyaml/src/Makefile.am +0 -4
- data/ext/apex_ext/apex_src/vendor/libyaml/src/api.c +0 -1393
- data/ext/apex_ext/apex_src/vendor/libyaml/src/dumper.c +0 -394
- data/ext/apex_ext/apex_src/vendor/libyaml/src/emitter.c +0 -2358
- data/ext/apex_ext/apex_src/vendor/libyaml/src/loader.c +0 -544
- data/ext/apex_ext/apex_src/vendor/libyaml/src/parser.c +0 -1416
- data/ext/apex_ext/apex_src/vendor/libyaml/src/reader.c +0 -469
- data/ext/apex_ext/apex_src/vendor/libyaml/src/scanner.c +0 -3598
- data/ext/apex_ext/apex_src/vendor/libyaml/src/writer.c +0 -141
- data/ext/apex_ext/apex_src/vendor/libyaml/src/yaml_private.h +0 -684
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/CMakeLists.txt +0 -27
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/Makefile.am +0 -9
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/ReadMe.md +0 -63
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/example-deconstructor-alt.c +0 -800
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/example-deconstructor.c +0 -1127
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/example-reformatter-alt.c +0 -217
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/example-reformatter.c +0 -202
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-all-tests.sh +0 -29
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-dumper.c +0 -314
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-emitter-test-suite.c +0 -290
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-emitter.c +0 -327
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-loader.c +0 -63
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-parser-test-suite.c +0 -196
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-parser.c +0 -88
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-scanner.c +0 -63
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/test-reader.c +0 -354
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/test-version.c +0 -29
- data/ext/apex_ext/apex_src/vendor/libyaml/yaml-0.1.pc.in +0 -10
- data/ext/apex_ext/apex_src/vendor/libyaml/yamlConfig.cmake.in +0 -16
- data/ext/apex_ext/apex_src/xcode_build/CMakeScripts/ReRunCMake.make +0 -74
- data/ext/apex_ext/apex_src/xcode_build/CTestTestfile.cmake +0 -22
- data/ext/apex_ext/apex_src/xcode_build/Debug/Apex.framework/Versions/A/Apex +0 -0
- data/ext/apex_ext/apex_src/xcode_build/Debug/Apex.framework/Versions/A/Resources/Info.plist +0 -44
- data/ext/apex_ext/apex_src/xcode_build/Debug/Apex.framework/Versions/A/_CodeSignature/CodeResources +0 -128
- data/ext/apex_ext/apex_src/xcode_build/apex.xcodeproj/project.pbxproj +0 -5118
- data/ext/apex_ext/apex_src/xcode_build/apex.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +0 -8
- data/ext/apex_ext/apex_src/xcode_build/apex.xcodeproj/project.xcworkspace/xcuserdata/ttscoff.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- data/ext/apex_ext/apex_src/xcode_build/apex.xcodeproj/project.xcworkspace/xcuserdata/ttscoff.xcuserdatad/WorkspaceSettings.xcsettings +0 -8
- data/ext/apex_ext/apex_src/xcode_build/apex.xcodeproj/xcuserdata/ttscoff.xcuserdatad/xcschemes/xcschememanagement.plist +0 -99
- data/ext/apex_ext/apex_src/xcode_build/cmake_install.cmake +0 -452
- data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/CMakeScripts/ReRunCMake.make +0 -52
- data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/cmake_install.cmake +0 -55
- data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/cmark-gfm.xcodeproj/project.pbxproj +0 -2455
- data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/cmark-gfm.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +0 -8
- data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/extensions/cmake_install.cmake +0 -171
- data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/man/cmake_install.cmake +0 -55
- data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/src/cmake_install.cmake +0 -220
- data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/src/cmark-gfm_export.h +0 -43
- data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/src/cmark-gfm_version.h +0 -7
- data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/src/config.h +0 -76
- data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/src/libcmark-gfm.pc +0 -10
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
# GFM Header ID Generation Comparison
|
|
2
|
-
|
|
3
|
-
This document summarizes the differences between various
|
|
4
|
-
tools for generating GFM-compliant header IDs.
|
|
5
|
-
|
|
6
|
-
## Tools Tested
|
|
7
|
-
|
|
8
|
-
- **Pandoc**: General-purpose document converter
|
|
9
|
-
- **Comrak**: Rust-based GFM parser (likely most accurate)
|
|
10
|
-
- **Marked (JavaScript)**: JavaScript markdown parser with
|
|
11
|
-
|
|
12
|
-
gfm-heading-id plugin
|
|
13
|
-
|
|
14
|
-
- **Apex**: Our implementation
|
|
15
|
-
|
|
16
|
-
## Key Differences
|
|
17
|
-
|
|
18
|
-
### 1. Multiple Spaces
|
|
19
|
-
**Comrak/Marked**: Convert to multiple dashes (`multiple---spaces---here`)
|
|
20
|
-
|
|
21
|
-
**Pandoc/Apex**: Collapse to single dash (`multiple-spaces-here`)
|
|
22
|
-
|
|
23
|
-
### 2. Underscores
|
|
24
|
-
**Comrak/Marked/Pandoc**: Preserve underscores (`heading_with_underscore`)
|
|
25
|
-
|
|
26
|
-
- **Apex**: Remove underscores (`headingwithunderscore`)
|
|
27
|
-
|
|
28
|
-
### 3. Em/En Dashes
|
|
29
|
-
- **Comrak/Marked/Pandoc**: Convert to double dashes
|
|
30
|
-
|
|
31
|
-
(`em-dash--test`)
|
|
32
|
-
|
|
33
|
-
- **Apex**: Remove dashes (`em-dash-test`)
|
|
34
|
-
|
|
35
|
-
### 4. Diacritics
|
|
36
|
-
**Comrak/Marked/Pandoc**: Preserve diacritics (`diacritics-émoji-support`)
|
|
37
|
-
|
|
38
|
-
- **Apex**: Convert to ASCII (`diacritics-amoji-support`)
|
|
39
|
-
|
|
40
|
-
### 5. Non-Latin Characters
|
|
41
|
-
- **Comrak/Marked/Pandoc**: Preserve characters
|
|
42
|
-
|
|
43
|
-
(`cyrillic-привет`)
|
|
44
|
-
|
|
45
|
-
- **Apex**: Convert to placeholders (`cyrillic-nn`)
|
|
46
|
-
|
|
47
|
-
### 6. Trailing Dashes
|
|
48
|
-
- **Comrak/Marked/Pandoc**: Preserve trailing dashes
|
|
49
|
-
|
|
50
|
-
(`trailing-dash-test-`)
|
|
51
|
-
|
|
52
|
-
- **Apex**: Trim trailing dashes (`trailing-dash-test`)
|
|
53
|
-
|
|
54
|
-
### 7. Trailing Punctuation
|
|
55
|
-
- **Comrak/Marked/Pandoc**: Preserve trailing punctuation
|
|
56
|
-
|
|
57
|
-
(`special-characters-`)
|
|
58
|
-
|
|
59
|
-
**Apex**: Remove trailing punctuation (`special-characters`)
|
|
60
|
-
|
|
61
|
-
### 8. Special Characters Only
|
|
62
|
-
- **Comrak**: Generates empty ID for `!@#$%^&*()`
|
|
63
|
-
- **Others**: Generate some ID
|
|
64
|
-
|
|
65
|
-
## Recommendations
|
|
66
|
-
|
|
67
|
-
Based on the comparison, **Comrak** and **Marked** appear to
|
|
68
|
-
follow GFM rules most closely and produce identical results
|
|
69
|
-
for most cases. To match GFM exactly, we should:
|
|
70
|
-
|
|
71
|
-
1. **Preserve underscores** (don't remove them)
|
|
72
|
-
|
|
73
|
-
**Convert em/en dashes to double dashes** (not remove them)
|
|
74
|
-
|
|
75
|
-
3. **Preserve diacritics** (don't convert to ASCII)
|
|
76
|
-
4. **Preserve non-Latin characters** (don't convert to
|
|
77
|
-
|
|
78
|
-
placeholders)
|
|
79
|
-
|
|
80
|
-
5. **Preserve trailing dashes** (don't trim them)
|
|
81
|
-
6. **Preserve trailing punctuation** (don't remove it)
|
|
82
|
-
7. **Handle multiple spaces** - need to verify GFM behavior
|
|
83
|
-
|
|
84
|
-
(Comrak/Marked use multiple dashes)
|
|
85
|
-
|
|
86
|
-
## Running the Comparison
|
|
87
|
-
|
|
88
|
-
Run the comparison script:
|
|
89
|
-
```bash
|
|
90
|
-
./tests/generate_gfm_ids.sh
|
|
91
|
-
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
This will show side-by-side comparison of all available
|
|
95
|
-
tools.
|
|
96
|
-
|
|
@@ -1,186 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8">
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>IAL Demo - Attribute Inspector</title>
|
|
7
|
-
<style>
|
|
8
|
-
body {
|
|
9
|
-
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
|
|
10
|
-
line-height: 1.6;
|
|
11
|
-
max-width: 900px;
|
|
12
|
-
margin: 0 auto;
|
|
13
|
-
padding: 20px;
|
|
14
|
-
background-color: #f5f5f5;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
.content {
|
|
18
|
-
background: white;
|
|
19
|
-
padding: 30px;
|
|
20
|
-
border-radius: 8px;
|
|
21
|
-
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
/* Style for elements with attributes - add visual indicator */
|
|
25
|
-
[class]:hover,
|
|
26
|
-
[id]:hover {
|
|
27
|
-
outline: 2px solid #4CAF50;
|
|
28
|
-
outline-offset: 2px;
|
|
29
|
-
background-color: rgba(76, 175, 80, 0.1);
|
|
30
|
-
transition: background-color 0.2s;
|
|
31
|
-
}
|
|
32
|
-
</style>
|
|
33
|
-
<script>
|
|
34
|
-
// Add tooltips showing all attributes on hover
|
|
35
|
-
document.addEventListener('DOMContentLoaded', function() {
|
|
36
|
-
// Create tooltip element
|
|
37
|
-
const tooltip = document.createElement('div');
|
|
38
|
-
tooltip.id = 'attribute-tooltip';
|
|
39
|
-
tooltip.style.cssText = 'position: absolute; background: #333; color: white; padding: 8px 12px; border-radius: 4px; font-size: 12px; font-family: "Courier New", monospace; z-index: 10000; pointer-events: none; opacity: 0; transition: opacity 0.2s; box-shadow: 0 2px 8px rgba(0,0,0,0.3); max-width: 400px; word-wrap: break-word; white-space: normal; line-height: 1.4;';
|
|
40
|
-
document.body.appendChild(tooltip);
|
|
41
|
-
|
|
42
|
-
// Function to get all attributes as a formatted string
|
|
43
|
-
function getAttributesString(el) {
|
|
44
|
-
const attrs = [];
|
|
45
|
-
if (el.id) attrs.push('id="' + el.id + '"');
|
|
46
|
-
if (el.className) attrs.push('class="' + el.className + '"');
|
|
47
|
-
for (let i = 0; i < el.attributes.length; i++) {
|
|
48
|
-
const attr = el.attributes[i];
|
|
49
|
-
if (attr.name !== 'id' && attr.name !== 'class' && !attr.name.startsWith('data-apex-')) {
|
|
50
|
-
attrs.push(attr.name + '="' + attr.value + '"');
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
return attrs.length > 0 ? attrs.join(' ') : 'No attributes';
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
// Add hover handlers to all elements with attributes
|
|
57
|
-
const elementsWithAttrs = document.querySelectorAll('[class], [id]');
|
|
58
|
-
elementsWithAttrs.forEach(el => {
|
|
59
|
-
// Skip the tooltip itself and elements inside code blocks
|
|
60
|
-
if (el.id === 'attribute-tooltip' || el.closest('code') || el.closest('pre')) {
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
el.addEventListener('mouseenter', function(e) {
|
|
65
|
-
const attrs = getAttributesString(this);
|
|
66
|
-
const tagName = this.tagName.toLowerCase();
|
|
67
|
-
tooltip.innerHTML = '<strong><' + tagName + '</strong> ' +
|
|
68
|
-
(attrs !== 'No attributes' ? attrs : '<em>' + attrs + '</em>') +
|
|
69
|
-
'<strong>></strong>';
|
|
70
|
-
tooltip.style.opacity = '1';
|
|
71
|
-
|
|
72
|
-
const rect = this.getBoundingClientRect();
|
|
73
|
-
let left = rect.left + window.scrollX;
|
|
74
|
-
let top = rect.top + window.scrollY - tooltip.offsetHeight - 8;
|
|
75
|
-
|
|
76
|
-
// Position tooltip
|
|
77
|
-
tooltip.style.left = left + 'px';
|
|
78
|
-
tooltip.style.top = top + 'px';
|
|
79
|
-
|
|
80
|
-
// Adjust if tooltip goes off screen
|
|
81
|
-
setTimeout(() => {
|
|
82
|
-
const tooltipRect = tooltip.getBoundingClientRect();
|
|
83
|
-
if (tooltipRect.left < 0) {
|
|
84
|
-
tooltip.style.left = '10px';
|
|
85
|
-
}
|
|
86
|
-
if (tooltipRect.top < 0) {
|
|
87
|
-
tooltip.style.top = (rect.bottom + window.scrollY + 8) + 'px';
|
|
88
|
-
}
|
|
89
|
-
if (tooltipRect.right > window.innerWidth) {
|
|
90
|
-
tooltip.style.left = (window.innerWidth - tooltipRect.width - 10) + 'px';
|
|
91
|
-
}
|
|
92
|
-
}, 0);
|
|
93
|
-
});
|
|
94
|
-
|
|
95
|
-
el.addEventListener('mouseleave', function() {
|
|
96
|
-
tooltip.style.opacity = '0';
|
|
97
|
-
});
|
|
98
|
-
});
|
|
99
|
-
|
|
100
|
-
console.log('Attribute inspector loaded. Hover over elements with attributes to see them.');
|
|
101
|
-
});
|
|
102
|
-
</script>
|
|
103
|
-
</head>
|
|
104
|
-
<body>
|
|
105
|
-
<div class="content">
|
|
106
|
-
<h1 id="ial-inline-attribute-lists-demo">IAL (Inline Attribute Lists) Demo</h1>
|
|
107
|
-
<p>This document demonstrates all supported IAL features in Apex.</p>
|
|
108
|
-
<h2 id="block-level-ials-next-line">Block-Level IALs (Next-Line)</h2>
|
|
109
|
-
<p>Block-level IALs appear on a separate line after the element they apply to.</p>
|
|
110
|
-
<h3 id="headings-with-ials">Headings with IALs</h3>
|
|
111
|
-
<h1 id="custom-heading-id">Heading with ID</h1>
|
|
112
|
-
<h2 class="highlight" id="custom-heading-id">Heading with Class</h2>
|
|
113
|
-
<h3 id="heading-id" class="class1 class2">Heading with Both</h3>
|
|
114
|
-
<h4 class="primary large bold" id="heading-with-class">Multiple Classes</h4>
|
|
115
|
-
<h3 id="heading-id">Paragraphs with IALs</h3>
|
|
116
|
-
<p class="tip">This paragraph has a class applied to it.</p>
|
|
117
|
-
<p id="paragraph-id" class="important note">This paragraph has an ID and multiple classes.</p>
|
|
118
|
-
<h3 id="multiple-classes">Lists with IALs</h3>
|
|
119
|
-
<ul class="unordered-list">
|
|
120
|
-
<li>First item</li>
|
|
121
|
-
<li>Second item</li>
|
|
122
|
-
<li>Third item</li>
|
|
123
|
-
<li>Numbered item one</li>
|
|
124
|
-
<li>Numbered item two</li>
|
|
125
|
-
<li>Numbered item three</li>
|
|
126
|
-
</ul>
|
|
127
|
-
<h3 id="paragraphs-with-ials">Blockquotes with IALs</h3>
|
|
128
|
-
<blockquote class="quote inspirational">
|
|
129
|
-
<p>This is a blockquote with attributes.</p>
|
|
130
|
-
</blockquote>
|
|
131
|
-
<h2 id="lists-with-ials">Inline Span-Level IALs</h2>
|
|
132
|
-
<p>Inline IALs appear immediately after inline elements within paragraphs.</p>
|
|
133
|
-
<h3 id="blockquotes-with-ials">Links with Inline IALs</h3>
|
|
134
|
-
<p>This is a <a href="https://example.com">regular link</a> without an IAL.</p>
|
|
135
|
-
<p>Here’s a paragraph with a <a href="https://example.com" class="button">styled link</a> that has a button class.</p>
|
|
136
|
-
<p>You can have <a href="https://example.com" class="link-primary">multiple links</a> with <a href="https://example.com" class="link-secondary">different classes</a> in the same paragraph.</p>
|
|
137
|
-
<p>Links with the <a href="https://example.com">same URL</a> should still work correctly when <a href="https://example.com" class="special-link">one has an IAL</a>.</p>
|
|
138
|
-
<h3 id="inline-span-level-ials">Images with Inline IALs</h3>
|
|
139
|
-
<p><img src="image.png" alt="Regular image" /></p>
|
|
140
|
-
<p><img src="logo.png" alt="Styled image" class="logo centered" /></p>
|
|
141
|
-
<p><img src="icon.png" alt="Image with ID" id="site-icon" class="icon" /></p>
|
|
142
|
-
<h3 id="links-with-inline-ials">Emphasis with Inline IALs</h3>
|
|
143
|
-
<p>This paragraph has <strong class="bold-style">bold text</strong> with a custom class and <em class="italic-style">italic text</em> with another class.</p>
|
|
144
|
-
<p>You can combine <strong class="bold">bold</strong> and <em class="italic">italic</em> in the same paragraph with different styles.</p>
|
|
145
|
-
<p>Nested <strong class="bold-wrapper">bold with <em class="nested-italic">italic</em> inside</strong> works too.</p>
|
|
146
|
-
<h3 id="images-with-inline-ials">Code with Inline IALs</h3>
|
|
147
|
-
<p>Use <code class="code-inline">inline code</code> for code snippets with styling.</p>
|
|
148
|
-
<p>You can have multiple <code class="code-1">code spans</code> and <code class="code-2">more code</code> with different classes.</p>
|
|
149
|
-
<h3 id="emphasis-with-inline-ials">Mixed Inline Elements</h3>
|
|
150
|
-
<p>This paragraph combines a <a href="https://example.com" class="link-class">link</a>, <strong class="bold-class">bold text</strong>, <em class="italic-class">italic text</em>, and <code class="code-class">code</code> all with different IALs.</p>
|
|
151
|
-
<h2 id="code-with-inline-ials">Complex Examples</h2>
|
|
152
|
-
<h3 id="mixed-inline-elements">Multiple IALs in Sequence</h3>
|
|
153
|
-
<p><a href="url1" class="first">First link</a> and <a href="url2" class="second">second link</a> and <a href="url3" class="third">third link</a> all in one paragraph.</p>
|
|
154
|
-
<p><strong class="b1">First bold</strong>, <strong class="b2">second bold</strong>, and <strong class="b3">third bold</strong> text elements.</p>
|
|
155
|
-
<h3 id="complex-examples">IALs with Text After</h3>
|
|
156
|
-
<p><a href="https://example.com" class="button">Click here</a> to visit our website and learn more.</p>
|
|
157
|
-
<p><strong>Important</strong>: This text has an IAL{:.highlight} that isn’t associated with a span or block level element (bold, italics, link, etc.) and is therefore ignored (left in the text).</p>
|
|
158
|
-
<h3 id="multiple-ials-in-sequence">IALs with Duplicate URLs</h3>
|
|
159
|
-
<p>Here’s a <a href="https://example.com">regular link</a> to demonstrate link styling.</p>
|
|
160
|
-
<p><a href="https://example.com" class="button">Click This Button</a></p>
|
|
161
|
-
<p>Both links point to the same URL, but only the second one has the button class.</p>
|
|
162
|
-
<h3 id="ials-with-text-after">IALs with Multiple Attributes</h3>
|
|
163
|
-
<p><a href="url" class="primary large button">Link with multiple classes</a></p>
|
|
164
|
-
<p><strong id="bold-id" class="highlight important">Bold with ID and classes</strong></p>
|
|
165
|
-
<h2 id="ials-with-duplicate-urls">Edge Cases</h2>
|
|
166
|
-
<h3 id="ials-with-multiple-attributes">IAL at End of Paragraph</h3>
|
|
167
|
-
<p>This paragraph ends with a <a href="https://example.com" class="end-link">link</a>.</p>
|
|
168
|
-
<h3 id="edge-cases">IAL with Whitespace</h3>
|
|
169
|
-
<p><a href="url" class="spaced-class">Link</a> works with spaces.</p>
|
|
170
|
-
<h3 id="ial-at-end-of-paragraph">IALs in Lists</h3>
|
|
171
|
-
<ul>
|
|
172
|
-
<li>List item with <a href="url" class="list-link">link</a></li>
|
|
173
|
-
<li>Another item with <strong class="list-bold">bold</strong> text</li>
|
|
174
|
-
<li>Final item with <code class="list-code">code</code></li>
|
|
175
|
-
</ul>
|
|
176
|
-
<h2 id="ial-with-whitespace">Summary</h2>
|
|
177
|
-
<p>IALs provide a powerful way to add HTML attributes to markdown elements:</p>
|
|
178
|
-
<ul>
|
|
179
|
-
<li>Block-level IALs use next-line syntax: <code>{: .class #id}</code></li>
|
|
180
|
-
<li>Inline IALs appear immediately after elements: <code>[link](url){:.class}</code></li>
|
|
181
|
-
<li>Support for IDs, classes, and custom attributes</li>
|
|
182
|
-
<li>Works with headings, paragraphs, lists, blockquotes, links, images, emphasis, and code</li>
|
|
183
|
-
</ul>
|
|
184
|
-
</div>
|
|
185
|
-
</body>
|
|
186
|
-
</html>
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env python3
|
|
2
|
-
"""Example code for inclusion"""
|
|
3
|
-
|
|
4
|
-
def process_document(filename):
|
|
5
|
-
"""Process a markdown document"""
|
|
6
|
-
with open(filename, 'r') as f:
|
|
7
|
-
content = f.read()
|
|
8
|
-
return convert_markdown(content)
|
|
9
|
-
|
|
10
|
-
def convert_markdown(text):
|
|
11
|
-
"""Convert markdown to HTML"""
|
|
12
|
-
processor = MarkdownProcessor()
|
|
13
|
-
return processor.render(text)
|
|
14
|
-
|
|
15
|
-
if __name__ == '__main__':
|
|
16
|
-
import sys
|
|
17
|
-
result = process_document(sys.argv[1])
|
|
18
|
-
print(result)
|
|
19
|
-
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
### Included Content
|
|
2
|
-
|
|
3
|
-
This content was **included** from an external file. It
|
|
4
|
-
demonstrates:
|
|
5
|
-
|
|
6
|
-
- File inclusion feature
|
|
7
|
-
- Recursive markdown processing
|
|
8
|
-
- Path resolution
|
|
9
|
-
|
|
10
|
-
You can include this in other documents seamlessly!
|
|
11
|
-
|
|
12
|
-
This is line 11. It contains the pattern 1234567.
|
|
13
|
-
This is line 12.
|
|
14
|
-
This is line 13.
|
|
15
|
-
Z: This is line 14. it includes a prefix.
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# CLI tests for --info, --extract-meta, and --extract-meta-value using tests/fixtures/metadata.
|
|
4
|
-
|
|
5
|
-
set -euo pipefail
|
|
6
|
-
|
|
7
|
-
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
8
|
-
APEX_BIN="${APEX_BIN:-$ROOT/build/apex}"
|
|
9
|
-
FIXTURES="$ROOT/tests/fixtures/metadata"
|
|
10
|
-
YAML="$FIXTURES/yaml-frontmatter.md"
|
|
11
|
-
MMD="$FIXTURES/mmd-metadata.md"
|
|
12
|
-
PANDOC="$FIXTURES/pandoc-meta.md"
|
|
13
|
-
|
|
14
|
-
if [[ ! -x "$APEX_BIN" ]]; then
|
|
15
|
-
echo "Error: $APEX_BIN not found or not executable. Build Apex first (cmake --build build --target apex_cli)." >&2
|
|
16
|
-
exit 1
|
|
17
|
-
fi
|
|
18
|
-
|
|
19
|
-
for f in "$YAML" "$MMD" "$PANDOC"; do
|
|
20
|
-
if [[ ! -f "$f" ]]; then
|
|
21
|
-
echo "Error: missing fixture $f" >&2
|
|
22
|
-
exit 1
|
|
23
|
-
fi
|
|
24
|
-
done
|
|
25
|
-
|
|
26
|
-
TMPDIR="${TMPDIR:-/tmp}"
|
|
27
|
-
WORK="$(mktemp -d "${TMPDIR}/apex-metadata-cli-XXXXXX")"
|
|
28
|
-
trap 'rm -rf "$WORK"' EXIT
|
|
29
|
-
|
|
30
|
-
echo "== Testing -i / --info (no input files; info on stdout) =="
|
|
31
|
-
|
|
32
|
-
INFO_OUT="$WORK/info_stdout.txt"
|
|
33
|
-
# Close stdin so the CLI does not wait for interactive input in some environments.
|
|
34
|
-
"$APEX_BIN" -i </dev/null >"$INFO_OUT"
|
|
35
|
-
grep -q '^version:' "$INFO_OUT"
|
|
36
|
-
grep -q 'plugins:' "$INFO_OUT"
|
|
37
|
-
echo "-i without files: stdout contains version and plugins section."
|
|
38
|
-
|
|
39
|
-
echo
|
|
40
|
-
echo "== Testing -i with a file (info on stderr, HTML on stdout) =="
|
|
41
|
-
|
|
42
|
-
STDOUT="$WORK/out.html"
|
|
43
|
-
STDERR="$WORK/info.err"
|
|
44
|
-
"$APEX_BIN" -i "$YAML" >"$STDOUT" 2>"$STDERR"
|
|
45
|
-
grep -q '^version:' "$STDERR" || {
|
|
46
|
-
echo "metadata_cli_test: expected version line on stderr when using -i with a file" >&2
|
|
47
|
-
exit 1
|
|
48
|
-
}
|
|
49
|
-
grep -q '<p>' "$STDOUT" || {
|
|
50
|
-
echo "metadata_cli_test: expected HTML fragment on stdout with -i and a file" >&2
|
|
51
|
-
exit 1
|
|
52
|
-
}
|
|
53
|
-
echo "-i with file: version/config on stderr, conversion on stdout."
|
|
54
|
-
|
|
55
|
-
echo
|
|
56
|
-
echo "== Testing --extract-meta (YAML fixture) =="
|
|
57
|
-
|
|
58
|
-
META_OUT="$WORK/meta.yaml"
|
|
59
|
-
"$APEX_BIN" --extract-meta "$YAML" >"$META_OUT"
|
|
60
|
-
grep -q '^title: A YAML test$' "$META_OUT" || {
|
|
61
|
-
echo "metadata_cli_test: --extract-meta missing expected title from YAML fixture" >&2
|
|
62
|
-
exit 1
|
|
63
|
-
}
|
|
64
|
-
grep -q '^random_key: Flargle$' "$META_OUT" || {
|
|
65
|
-
echo "metadata_cli_test: --extract-meta missing random_key from YAML fixture" >&2
|
|
66
|
-
exit 1
|
|
67
|
-
}
|
|
68
|
-
echo "--extract-meta on YAML front matter: expected keys present."
|
|
69
|
-
|
|
70
|
-
echo
|
|
71
|
-
echo "== Testing -e / --extract-meta-value =="
|
|
72
|
-
|
|
73
|
-
val="$("$APEX_BIN" -e title "$YAML")"
|
|
74
|
-
if [[ "$val" != "A YAML test" ]]; then
|
|
75
|
-
echo "metadata_cli_test: -e title from YAML expected 'A YAML test', got '$val'" >&2
|
|
76
|
-
exit 1
|
|
77
|
-
fi
|
|
78
|
-
|
|
79
|
-
val="$("$APEX_BIN" --extract-meta-value random_key "$YAML")"
|
|
80
|
-
if [[ "$val" != "Flargle" ]]; then
|
|
81
|
-
echo "metadata_cli_test: -e random_key expected 'Flargle', got '$val'" >&2
|
|
82
|
-
exit 1
|
|
83
|
-
fi
|
|
84
|
-
|
|
85
|
-
val="$("$APEX_BIN" -e randomkey "$MMD")"
|
|
86
|
-
if [[ "$val" != "Bargle" ]]; then
|
|
87
|
-
echo "metadata_cli_test: -e randomkey (MMD) expected 'Bargle', got '$val'" >&2
|
|
88
|
-
exit 1
|
|
89
|
-
fi
|
|
90
|
-
|
|
91
|
-
val="$("$APEX_BIN" -e title "$PANDOC")"
|
|
92
|
-
if [[ "$val" != "Pandoc Metadata" ]]; then
|
|
93
|
-
echo "metadata_cli_test: -e title (Pandoc) expected 'Pandoc Metadata', got '$val'" >&2
|
|
94
|
-
exit 1
|
|
95
|
-
fi
|
|
96
|
-
|
|
97
|
-
if "$APEX_BIN" -e definitely_missing_key_xyz "$YAML" 2>"$WORK/miss.err"; then
|
|
98
|
-
echo "metadata_cli_test: expected non-zero exit for missing metadata key" >&2
|
|
99
|
-
exit 1
|
|
100
|
-
fi
|
|
101
|
-
grep -q "not found" "$WORK/miss.err" || {
|
|
102
|
-
echo "metadata_cli_test: expected error message for missing key on stderr" >&2
|
|
103
|
-
exit 1
|
|
104
|
-
}
|
|
105
|
-
echo "-e returns values and exit 1 when key is absent."
|
|
106
|
-
|
|
107
|
-
echo
|
|
108
|
-
echo "== Testing --combine --extract-meta (merge order, later file wins) =="
|
|
109
|
-
|
|
110
|
-
COMBINED="$WORK/combined_meta.yaml"
|
|
111
|
-
"$APEX_BIN" --combine --extract-meta "$MMD" "$YAML" >"$COMBINED"
|
|
112
|
-
grep -q '^title: A YAML test$' "$COMBINED" || {
|
|
113
|
-
echo "metadata_cli_test: combined extract expected last file to win for title" >&2
|
|
114
|
-
exit 1
|
|
115
|
-
}
|
|
116
|
-
echo "--combine --extract-meta: later file overrides title as expected."
|
|
117
|
-
|
|
118
|
-
echo
|
|
119
|
-
echo "All metadata CLI tests passed."
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
# Simple CLI-level sanity tests for --mmd-merge and --combine (GitBook SUMMARY.md)
|
|
4
|
-
# using the existing combine_summary fixtures.
|
|
5
|
-
|
|
6
|
-
set -euo pipefail
|
|
7
|
-
|
|
8
|
-
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
9
|
-
APEX_BIN="$ROOT/build/apex"
|
|
10
|
-
|
|
11
|
-
if [[ ! -x "$APEX_BIN" ]]; then
|
|
12
|
-
echo "Error: $APEX_BIN not found or not executable. Build Apex first (cmake --build build)." >&2
|
|
13
|
-
exit 1
|
|
14
|
-
fi
|
|
15
|
-
|
|
16
|
-
FIXTURES="$ROOT/tests/fixtures/combine_summary"
|
|
17
|
-
|
|
18
|
-
TMPDIR="$(mktemp -d "${TMPDIR:-/tmp}/apex-multi-file-XXXXXX")"
|
|
19
|
-
trap 'rm -rf "$TMPDIR"' EXIT
|
|
20
|
-
|
|
21
|
-
echo "== Testing --mmd-merge with mmd_merge-style index =="
|
|
22
|
-
|
|
23
|
-
MMD_OUT="$TMPDIR/mmd_merge_output.md"
|
|
24
|
-
"$APEX_BIN" --mmd-merge "$FIXTURES/index.txt" >"$MMD_OUT"
|
|
25
|
-
|
|
26
|
-
# Expect Intro, Chapter 1, and Section 1.1 in order, with Section 1.1 headings shifted one level
|
|
27
|
-
grep -q '^# Intro' "$MMD_OUT" || {
|
|
28
|
-
echo "mmd-merge: missing Intro heading"
|
|
29
|
-
exit 1
|
|
30
|
-
}
|
|
31
|
-
grep -q '^# Chapter 1' "$MMD_OUT" || {
|
|
32
|
-
echo "mmd-merge: missing Chapter 1 heading"
|
|
33
|
-
exit 1
|
|
34
|
-
}
|
|
35
|
-
grep -q '^## Section 1\.1' "$MMD_OUT" || {
|
|
36
|
-
echo "mmd-merge: Section 1.1 heading was not shifted to level 2"
|
|
37
|
-
exit 1
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
echo "mmd-merge index test passed."
|
|
41
|
-
|
|
42
|
-
echo
|
|
43
|
-
echo "== Testing --combine with GitBook-style SUMMARY.md =="
|
|
44
|
-
|
|
45
|
-
COMBINE_OUT="$TMPDIR/summary_combine_output.md"
|
|
46
|
-
"$APEX_BIN" --combine "$FIXTURES/SUMMARY.md" >"$COMBINE_OUT"
|
|
47
|
-
|
|
48
|
-
grep -q '^# Intro' "$COMBINE_OUT" || {
|
|
49
|
-
echo "combine: missing Intro heading from SUMMARY.md combine"
|
|
50
|
-
exit 1
|
|
51
|
-
}
|
|
52
|
-
grep -q '^# Chapter 1' "$COMBINE_OUT" || {
|
|
53
|
-
echo "combine: missing Chapter 1 heading from SUMMARY.md combine"
|
|
54
|
-
exit 1
|
|
55
|
-
}
|
|
56
|
-
grep -q '^# Section 1\.1' "$COMBINE_OUT" || {
|
|
57
|
-
echo "combine: missing Section 1.1 heading from SUMMARY.md combine"
|
|
58
|
-
exit 1
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
echo "SUMMARY.md combine test passed."
|
|
62
|
-
|
|
63
|
-
echo
|
|
64
|
-
echo "All multi-file CLI tests passed."
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
# Sanity checks for -p/--paginate and paginate config option for terminal output.
|
|
3
|
-
set -euo pipefail
|
|
4
|
-
|
|
5
|
-
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
6
|
-
APEX_BIN="${APEX_BIN:-$ROOT/build/apex}"
|
|
7
|
-
|
|
8
|
-
if [[ ! -x "$APEX_BIN" ]]; then
|
|
9
|
-
echo "Error: $APEX_BIN not found or not executable. Set APEX_BIN or build first." >&2
|
|
10
|
-
exit 1
|
|
11
|
-
fi
|
|
12
|
-
|
|
13
|
-
DOC="# Heading
|
|
14
|
-
|
|
15
|
-
Some *styled* text for testing."
|
|
16
|
-
|
|
17
|
-
echo "== Testing --paginate with APEX_PAGER=cat =="
|
|
18
|
-
|
|
19
|
-
BASE_OUT=$("$APEX_BIN" -t terminal <<< "$DOC")
|
|
20
|
-
PAGED_OUT=$(APEX_PAGER=cat "$APEX_BIN" -t terminal --paginate <<< "$DOC")
|
|
21
|
-
|
|
22
|
-
if [[ "$BASE_OUT" != "$PAGED_OUT" ]]; then
|
|
23
|
-
echo "paginate_cli_test: -p output differs from baseline when using APEX_PAGER=cat" >&2
|
|
24
|
-
exit 1
|
|
25
|
-
fi
|
|
26
|
-
|
|
27
|
-
echo "paginate_cli_test: -p with APEX_PAGER=cat matches baseline output."
|
|
28
|
-
|
|
29
|
-
echo
|
|
30
|
-
echo "== Testing paginate: true via config metadata with APEX_PAGER=cat =="
|
|
31
|
-
|
|
32
|
-
TMPDIR="$(mktemp -d "${TMPDIR:-/tmp}/apex-paginate-XXXXXX")"
|
|
33
|
-
trap 'rm -rf "$TMPDIR"' EXIT
|
|
34
|
-
|
|
35
|
-
CFG="$TMPDIR/config.yml"
|
|
36
|
-
cat >"$CFG" <<'YAML'
|
|
37
|
-
paginate: true
|
|
38
|
-
YAML
|
|
39
|
-
|
|
40
|
-
CFG_OUT=$(APEX_PAGER=cat "$APEX_BIN" --meta-file "$CFG" -t terminal <<< "$DOC")
|
|
41
|
-
|
|
42
|
-
if [[ "$BASE_OUT" != "$CFG_OUT" ]]; then
|
|
43
|
-
echo "paginate_cli_test: paginate: true output differs from baseline when using APEX_PAGER=cat" >&2
|
|
44
|
-
exit 1
|
|
45
|
-
fi
|
|
46
|
-
|
|
47
|
-
echo "paginate_cli_test: paginate: true config matches baseline output with APEX_PAGER=cat."
|
|
48
|
-
|
|
49
|
-
echo
|
|
50
|
-
echo "== Testing paginate: symbols via config metadata with APEX_PAGER=cat =="
|
|
51
|
-
|
|
52
|
-
CFG_SYM="$TMPDIR/config-symbols.yml"
|
|
53
|
-
cat >"$CFG_SYM" <<'YAML'
|
|
54
|
-
paginate: symbols
|
|
55
|
-
YAML
|
|
56
|
-
|
|
57
|
-
SYM_OUT=$(APEX_PAGER=cat "$APEX_BIN" --meta-file "$CFG_SYM" -t terminal <<< "$DOC")
|
|
58
|
-
if [[ "$BASE_OUT" != "$SYM_OUT" ]]; then
|
|
59
|
-
echo "paginate_cli_test: paginate: symbols output differs from baseline when using APEX_PAGER=cat" >&2
|
|
60
|
-
exit 1
|
|
61
|
-
fi
|
|
62
|
-
|
|
63
|
-
echo "paginate_cli_test: paginate: symbols config matches baseline output with APEX_PAGER=cat."
|
|
64
|
-
|
|
65
|
-
echo
|
|
66
|
-
echo "== Testing that --paginate is ignored for non-terminal formats =="
|
|
67
|
-
|
|
68
|
-
HTML_BASE=$("$APEX_BIN" -t html <<< "$DOC")
|
|
69
|
-
HTML_PAGED=$(APEX_PAGER=cat "$APEX_BIN" -t html --paginate <<< "$DOC")
|
|
70
|
-
|
|
71
|
-
if [[ "$HTML_BASE" != "$HTML_PAGED" ]]; then
|
|
72
|
-
echo "paginate_cli_test: -p should be a no-op for -t html" >&2
|
|
73
|
-
exit 1
|
|
74
|
-
fi
|
|
75
|
-
|
|
76
|
-
echo "paginate_cli_test: -p ignored for non-terminal formats as expected."
|
|
77
|
-
|
|
78
|
-
echo
|
|
79
|
-
echo "All paginate CLI tests passed."
|
|
80
|
-
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
# Sanity check that -t terminal --width N wraps output (CLI applies wrap after render).
|
|
3
|
-
set -euo pipefail
|
|
4
|
-
|
|
5
|
-
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
6
|
-
APEX_BIN="${APEX_BIN:-$ROOT/build/apex}"
|
|
7
|
-
|
|
8
|
-
if [[ ! -x "$APEX_BIN" ]]; then
|
|
9
|
-
echo "Error: $APEX_BIN not found or not executable. Set APEX_BIN or build first." >&2
|
|
10
|
-
exit 1
|
|
11
|
-
fi
|
|
12
|
-
|
|
13
|
-
# Long line without ANSI: with --width 10 we expect more than one line
|
|
14
|
-
LONG="this is a long line of plain text that should wrap"
|
|
15
|
-
OUT=$("$APEX_BIN" -t terminal --width 10 <<< "$LONG")
|
|
16
|
-
LINES=$(echo "$OUT" | wc -l | tr -d ' ')
|
|
17
|
-
if [[ "$LINES" -lt 2 ]]; then
|
|
18
|
-
echo "Expected --width 10 to wrap output into multiple lines, got $LINES line(s)" >&2
|
|
19
|
-
exit 1
|
|
20
|
-
fi
|
|
21
|
-
|
|
22
|
-
# With --width 80 the same line may stay on one line (or wrap less)
|
|
23
|
-
OUT2=$("$APEX_BIN" -t terminal --width 80 <<< "$LONG")
|
|
24
|
-
if [[ -z "$OUT2" ]]; then
|
|
25
|
-
echo "Expected non-empty output with --width 80" >&2
|
|
26
|
-
exit 1
|
|
27
|
-
fi
|
|
28
|
-
|
|
29
|
-
echo "terminal_width_test: --width wrapping OK"
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
set -euo pipefail
|
|
3
|
-
|
|
4
|
-
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
5
|
-
|
|
6
|
-
cd "$ROOT"
|
|
7
|
-
|
|
8
|
-
echo "=== Swift debug build ==="
|
|
9
|
-
swift build
|
|
10
|
-
|
|
11
|
-
echo "=== Swift release build ==="
|
|
12
|
-
swift build -c release
|
|
13
|
-
|
|
14
|
-
echo "Swift package OK."
|