apex-ruby 1.0.6
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 +7 -0
- data/README.md +119 -0
- data/apex-ruby.gemspec +31 -0
- data/ext/apex_ext/apex_ext.c +215 -0
- data/ext/apex_ext/apex_src/BENCHMARK.md +32 -0
- data/ext/apex_ext/apex_src/BENCHMARK_COMPARISON.md +67 -0
- data/ext/apex_ext/apex_src/CHANGELOG.md +2454 -0
- data/ext/apex_ext/apex_src/CMakeLists.txt +454 -0
- data/ext/apex_ext/apex_src/Dockerfile.linux-build +15 -0
- data/ext/apex_ext/apex_src/Formula/apex.rb +38 -0
- data/ext/apex_ext/apex_src/Info.plist.in +27 -0
- data/ext/apex_ext/apex_src/LICENSE +21 -0
- data/ext/apex_ext/apex_src/Package.swift +160 -0
- data/ext/apex_ext/apex_src/PackageSupport/README.md +17 -0
- data/ext/apex_ext/apex_src/PackageSupport/cmark-gfm/cmark-gfm_export.h +20 -0
- data/ext/apex_ext/apex_src/PackageSupport/cmark-gfm/cmark-gfm_version.h +14 -0
- data/ext/apex_ext/apex_src/PackageSupport/cmark-gfm/cmark_gfm_spm_stub.c +4 -0
- data/ext/apex_ext/apex_src/PackageSupport/cmark-gfm/config.h +41 -0
- data/ext/apex_ext/apex_src/README.md +452 -0
- data/ext/apex_ext/apex_src/VERSION +1 -0
- data/ext/apex_ext/apex_src/apex-header-2-rb@2x.webp +0 -0
- data/ext/apex_ext/apex_src/apex-plugins.json.example +20 -0
- data/ext/apex_ext/apex_src/apex.pc.in +11 -0
- data/ext/apex_ext/apex_src/cli/main.c +2720 -0
- data/ext/apex_ext/apex_src/debug_test.sh +22 -0
- data/ext/apex_ext/apex_src/docs/API_REFERENCE.md +451 -0
- data/ext/apex_ext/apex_src/docs/ARCHITECTURE.md +166 -0
- data/ext/apex_ext/apex_src/docs/CMARK_INTEGRATION.md +220 -0
- data/ext/apex_ext/apex_src/docs/CRITICMARKUP.md +501 -0
- data/ext/apex_ext/apex_src/docs/DEBUGGING.md +73 -0
- data/ext/apex_ext/apex_src/docs/FINAL_STATUS.md +391 -0
- data/ext/apex_ext/apex_src/docs/FINAL_STATUS_UPDATE.md +237 -0
- data/ext/apex_ext/apex_src/docs/FUTURE_FEATURES.md +456 -0
- data/ext/apex_ext/apex_src/docs/IAL_FEATURES.md +210 -0
- data/ext/apex_ext/apex_src/docs/IAL_STATUS.md +344 -0
- data/ext/apex_ext/apex_src/docs/INTEGRATION_EXAMPLE.m +144 -0
- data/ext/apex_ext/apex_src/docs/LIMITATIONS_RESOLVED.md +278 -0
- data/ext/apex_ext/apex_src/docs/OUTPUT_MODES.md +321 -0
- data/ext/apex_ext/apex_src/docs/PROGRESS.md +167 -0
- data/ext/apex_ext/apex_src/docs/STANDALONE_FEATURE.md +174 -0
- data/ext/apex_ext/apex_src/docs/TABLE_SPANS_STATUS.md +243 -0
- data/ext/apex_ext/apex_src/docs/TEST_COVERAGE.md +316 -0
- data/ext/apex_ext/apex_src/docs/USER_GUIDE.md +803 -0
- data/ext/apex_ext/apex_src/docs/WIKI_LINKS_ISSUE.md +91 -0
- data/ext/apex_ext/apex_src/documentation/README.md +160 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex Command Line Options.cheatsheet.txt +365 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Info.plist +24 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/C-API.html +1737 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Citations.html +1420 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Command-Line-Options.html +3574 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Configuration.html +1603 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Credits.html +910 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Examples.html +1168 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Getting-Started.html +1003 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Header-IDs.html +1308 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Home.html +1078 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Inline-Attribute-Lists.html +1622 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Installation.html +1168 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Limitations-and-Roadmap.html +1698 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Metadata-Transforms.html +1531 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Modes.html +1980 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Multi-File-Documents.html +1368 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Pandoc-Integration.html +1151 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Plugins.html +2861 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Syntax.html +3981 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Troubleshooting.html +1454 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Usage.html +1200 -0
- data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Xcode-Integration.html +2066 -0
- 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/Apex.docset/Contents/Resources/tempOptimizedIndex.dsidx +0 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Info.plist +22 -0
- 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 +914 -0
- data/ext/apex_ext/apex_src/documentation/docsets/ApexCLI.docset/Contents/Resources/Documents/style.css +399 -0
- 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 +772 -0
- data/ext/apex_ext/apex_src/documentation/generate_app_docs_ai.rb +678 -0
- data/ext/apex_ext/apex_src/documentation/generate_docset.rb +873 -0
- data/ext/apex_ext/apex_src/documentation/generate_single_html.rb +733 -0
- data/ext/apex_ext/apex_src/documentation/html/apex-docs.html +17073 -0
- data/ext/apex_ext/apex_src/documentation/shared_scripts.js +64 -0
- data/ext/apex_ext/apex_src/documentation/shared_styles.css +646 -0
- data/ext/apex_ext/apex_src/documentation/transform_for_app.example.md +260 -0
- data/ext/apex_ext/apex_src/examples/bracketed_spans_demo.md +119 -0
- data/ext/apex_ext/apex_src/examples/emoji_span_plugin.yml +11 -0
- data/ext/apex_ext/apex_src/examples/example.html +53 -0
- data/ext/apex_ext/apex_src/examples/example.md +85 -0
- data/ext/apex_ext/apex_src/examples/fenced_divs_demo.md +158 -0
- data/ext/apex_ext/apex_src/examples/kbd.md +8 -0
- data/ext/apex_ext/apex_src/examples/kbd_plugin.rb +250 -0
- data/ext/apex_ext/apex_src/examples/kbd_plugin.yml +9 -0
- 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/include/apex/apex.h +247 -0
- data/ext/apex_ext/apex_src/include/apex/buffer.h +93 -0
- data/ext/apex_ext/apex_src/include/apex/module.modulemap +16 -0
- data/ext/apex_ext/apex_src/include/apex/parser.h +150 -0
- data/ext/apex_ext/apex_src/include/apex/renderer.h +39 -0
- data/ext/apex_ext/apex_src/man/apex-config.5 +374 -0
- data/ext/apex_ext/apex_src/man/apex-config.5.md +260 -0
- data/ext/apex_ext/apex_src/man/apex-plugins.7 +456 -0
- data/ext/apex_ext/apex_src/man/apex-plugins.7.md +365 -0
- data/ext/apex_ext/apex_src/man/apex.1 +828 -0
- data/ext/apex_ext/apex_src/man/apex.1.md +643 -0
- data/ext/apex_ext/apex_src/man/apex.1.new +338 -0
- data/ext/apex_ext/apex_src/objc/Apex.swift +237 -0
- data/ext/apex_ext/apex_src/objc/NSString+Apex.h +117 -0
- data/ext/apex_ext/apex_src/objc/NSString+Apex.m +332 -0
- data/ext/apex_ext/apex_src/src/_README.md +358 -0
- data/ext/apex_ext/apex_src/src/apex.c +6326 -0
- data/ext/apex_ext/apex_src/src/buffer.c +93 -0
- data/ext/apex_ext/apex_src/src/extensions/abbreviations.c +362 -0
- data/ext/apex_ext/apex_src/src/extensions/abbreviations.h +45 -0
- data/ext/apex_ext/apex_src/src/extensions/advanced_footnotes.c +184 -0
- data/ext/apex_ext/apex_src/src/extensions/advanced_footnotes.h +50 -0
- data/ext/apex_ext/apex_src/src/extensions/advanced_tables.c +1897 -0
- data/ext/apex_ext/apex_src/src/extensions/advanced_tables.h +42 -0
- data/ext/apex_ext/apex_src/src/extensions/callouts.c +215 -0
- data/ext/apex_ext/apex_src/src/extensions/callouts.h +53 -0
- data/ext/apex_ext/apex_src/src/extensions/citations.c +2042 -0
- data/ext/apex_ext/apex_src/src/extensions/citations.h +163 -0
- data/ext/apex_ext/apex_src/src/extensions/critic.c +329 -0
- data/ext/apex_ext/apex_src/src/extensions/critic.h +48 -0
- data/ext/apex_ext/apex_src/src/extensions/definition_list.c +1670 -0
- data/ext/apex_ext/apex_src/src/extensions/definition_list.h +42 -0
- data/ext/apex_ext/apex_src/src/extensions/emoji.c +710 -0
- data/ext/apex_ext/apex_src/src/extensions/emoji.h +38 -0
- data/ext/apex_ext/apex_src/src/extensions/emoji_data.h +942 -0
- data/ext/apex_ext/apex_src/src/extensions/fenced_divs.c +925 -0
- data/ext/apex_ext/apex_src/src/extensions/fenced_divs.h +43 -0
- data/ext/apex_ext/apex_src/src/extensions/github-emoji.txt +869 -0
- data/ext/apex_ext/apex_src/src/extensions/grid_tables.c +1121 -0
- data/ext/apex_ext/apex_src/src/extensions/grid_tables.h +33 -0
- data/ext/apex_ext/apex_src/src/extensions/header_ids.c +626 -0
- data/ext/apex_ext/apex_src/src/extensions/header_ids.h +60 -0
- data/ext/apex_ext/apex_src/src/extensions/highlight.c +135 -0
- data/ext/apex_ext/apex_src/src/extensions/highlight.h +16 -0
- data/ext/apex_ext/apex_src/src/extensions/html_markdown.c +408 -0
- data/ext/apex_ext/apex_src/src/extensions/html_markdown.h +42 -0
- data/ext/apex_ext/apex_src/src/extensions/ial.c +4084 -0
- data/ext/apex_ext/apex_src/src/extensions/ial.h +145 -0
- data/ext/apex_ext/apex_src/src/extensions/includes.c +1536 -0
- data/ext/apex_ext/apex_src/src/extensions/includes.h +54 -0
- data/ext/apex_ext/apex_src/src/extensions/index.c +967 -0
- data/ext/apex_ext/apex_src/src/extensions/index.h +90 -0
- data/ext/apex_ext/apex_src/src/extensions/inline_footnotes.c +205 -0
- data/ext/apex_ext/apex_src/src/extensions/inline_footnotes.h +34 -0
- data/ext/apex_ext/apex_src/src/extensions/inline_tables.c +332 -0
- data/ext/apex_ext/apex_src/src/extensions/inline_tables.h +13 -0
- data/ext/apex_ext/apex_src/src/extensions/insert.c +248 -0
- data/ext/apex_ext/apex_src/src/extensions/insert.h +18 -0
- data/ext/apex_ext/apex_src/src/extensions/math.c +279 -0
- data/ext/apex_ext/apex_src/src/extensions/math.h +32 -0
- data/ext/apex_ext/apex_src/src/extensions/metadata.c +3046 -0
- data/ext/apex_ext/apex_src/src/extensions/metadata.h +125 -0
- data/ext/apex_ext/apex_src/src/extensions/relaxed_tables.c +1297 -0
- data/ext/apex_ext/apex_src/src/extensions/relaxed_tables.h +39 -0
- data/ext/apex_ext/apex_src/src/extensions/special_markers.c +194 -0
- data/ext/apex_ext/apex_src/src/extensions/special_markers.h +29 -0
- data/ext/apex_ext/apex_src/src/extensions/sup_sub.c +405 -0
- data/ext/apex_ext/apex_src/src/extensions/sup_sub.h +16 -0
- data/ext/apex_ext/apex_src/src/extensions/syntax_highlight.c +468 -0
- data/ext/apex_ext/apex_src/src/extensions/syntax_highlight.h +44 -0
- data/ext/apex_ext/apex_src/src/extensions/table_html_postprocess.c +2679 -0
- data/ext/apex_ext/apex_src/src/extensions/table_html_postprocess.h +23 -0
- data/ext/apex_ext/apex_src/src/extensions/toc.c +255 -0
- data/ext/apex_ext/apex_src/src/extensions/toc.h +34 -0
- data/ext/apex_ext/apex_src/src/extensions/wiki_links.c +624 -0
- data/ext/apex_ext/apex_src/src/extensions/wiki_links.h +58 -0
- data/ext/apex_ext/apex_src/src/html_renderer.c +2762 -0
- data/ext/apex_ext/apex_src/src/html_renderer.h +126 -0
- data/ext/apex_ext/apex_src/src/parser.c +227 -0
- data/ext/apex_ext/apex_src/src/plugins.c +895 -0
- data/ext/apex_ext/apex_src/src/plugins.h +39 -0
- data/ext/apex_ext/apex_src/src/plugins_env.c +187 -0
- data/ext/apex_ext/apex_src/src/plugins_remote.c +263 -0
- data/ext/apex_ext/apex_src/src/pretty_html.c +358 -0
- data/ext/apex_ext/apex_src/src/renderer.c +241 -0
- data/ext/apex_ext/apex_src/src/utf8.c +56 -0
- data/ext/apex_ext/apex_src/test-linux-build.sh +20 -0
- data/ext/apex_ext/apex_src/test.html +103 -0
- data/ext/apex_ext/apex_src/test_coverage.sh +121 -0
- data/ext/apex_ext/apex_src/test_ial_fenced.md +6 -0
- data/ext/apex_ext/apex_src/test_math_norm.py +79 -0
- data/ext/apex_ext/apex_src/test_pandoc_output.html +48 -0
- data/ext/apex_ext/apex_src/test_spm.sh +107 -0
- data/ext/apex_ext/apex_src/tests/ApexSPMTest/main.swift +50 -0
- data/ext/apex_ext/apex_src/tests/BENCHMARK_RESULTS.md +229 -0
- data/ext/apex_ext/apex_src/tests/CMakeLists.txt +24 -0
- data/ext/apex_ext/apex_src/tests/README.md +146 -0
- data/ext/apex_ext/apex_src/tests/benchmark.sh +113 -0
- data/ext/apex_ext/apex_src/tests/benchmark_comparison.sh +166 -0
- data/ext/apex_ext/apex_src/tests/compare_header_ids.sh +31 -0
- data/ext/apex_ext/apex_src/tests/fixtures/basic/headers.md +25 -0
- data/ext/apex_ext/apex_src/tests/fixtures/basic/list-interruption.md +24 -0
- data/ext/apex_ext/apex_src/tests/fixtures/basic/misc_markup.md +33 -0
- data/ext/apex_ext/apex_src/tests/fixtures/basic/test_basic.md +26 -0
- data/ext/apex_ext/apex_src/tests/fixtures/code/code-blocks.md +260 -0
- data/ext/apex_ext/apex_src/tests/fixtures/combine_summary/SUMMARY.md +6 -0
- data/ext/apex_ext/apex_src/tests/fixtures/combine_summary/chapter1.md +7 -0
- data/ext/apex_ext/apex_src/tests/fixtures/combine_summary/index.txt +9 -0
- data/ext/apex_ext/apex_src/tests/fixtures/combine_summary/intro.md +5 -0
- data/ext/apex_ext/apex_src/tests/fixtures/combine_summary/section1_1.md +5 -0
- data/ext/apex_ext/apex_src/tests/fixtures/comprehensive_test.md +620 -0
- data/ext/apex_ext/apex_src/tests/fixtures/debug_ref_image_ial.md +3 -0
- data/ext/apex_ext/apex_src/tests/fixtures/demos/ial.md +11 -0
- data/ext/apex_ext/apex_src/tests/fixtures/demos/ial_demo.md +177 -0
- data/ext/apex_ext/apex_src/tests/fixtures/extensions/emoji-autocorrect.md +94 -0
- data/ext/apex_ext/apex_src/tests/fixtures/extensions/emoji_test.md +3 -0
- data/ext/apex_ext/apex_src/tests/fixtures/extensions/kbd_test.md +3 -0
- data/ext/apex_ext/apex_src/tests/fixtures/ial/bracketed_spans_test.md +74 -0
- data/ext/apex_ext/apex_src/tests/fixtures/images/image_and_encoding_test.md +27 -0
- data/ext/apex_ext/apex_src/tests/fixtures/images/multimarkdown_image_attributes_test.md +60 -0
- data/ext/apex_ext/apex_src/tests/fixtures/images/pandoc_ial_image_test.md +27 -0
- data/ext/apex_ext/apex_src/tests/fixtures/images/width_height_conversion_test.md +94 -0
- data/ext/apex_ext/apex_src/tests/fixtures/img-in-div.md +16 -0
- data/ext/apex_ext/apex_src/tests/fixtures/includes/code.py +4 -0
- data/ext/apex_ext/apex_src/tests/fixtures/includes/data.csv +5 -0
- data/ext/apex_ext/apex_src/tests/fixtures/includes/data.tsv +5 -0
- data/ext/apex_ext/apex_src/tests/fixtures/includes/image.png +2 -0
- data/ext/apex_ext/apex_src/tests/fixtures/includes/metadata_options.yml +11 -0
- data/ext/apex_ext/apex_src/tests/fixtures/includes/nested.md +8 -0
- data/ext/apex_ext/apex_src/tests/fixtures/includes/raw.html +4 -0
- data/ext/apex_ext/apex_src/tests/fixtures/includes/simple.md +7 -0
- data/ext/apex_ext/apex_src/tests/fixtures/includes/test_image.png +0 -0
- data/ext/apex_ext/apex_src/tests/fixtures/large_doc.md +1094 -0
- data/ext/apex_ext/apex_src/tests/fixtures/metadata_options.yml +11 -0
- data/ext/apex_ext/apex_src/tests/fixtures/output/gfm_header_id_test.md +96 -0
- data/ext/apex_ext/apex_src/tests/fixtures/output/test_citations.md +43 -0
- data/ext/apex_ext/apex_src/tests/fixtures/output/test_def_list_links.md +12 -0
- data/ext/apex_ext/apex_src/tests/fixtures/output/test_index_mmark.md +53 -0
- data/ext/apex_ext/apex_src/tests/fixtures/output/test_index_textindex.md +37 -0
- data/ext/apex_ext/apex_src/tests/fixtures/tables/advanced_tables_test.md +93 -0
- data/ext/apex_ext/apex_src/tests/fixtures/tables/inline_tables_test.md +38 -0
- data/ext/apex_ext/apex_src/tests/fixtures/tables/relaxed-table.md +12 -0
- data/ext/apex_ext/apex_src/tests/fixtures/tables/table_cr_line_endings.md +15 -0
- data/ext/apex_ext/apex_src/tests/fixtures/tables/table_no_trailing_newline.md +15 -0
- data/ext/apex_ext/apex_src/tests/generate_gfm_ids.sh +105 -0
- data/ext/apex_ext/apex_src/tests/generate_ial_demo.sh +143 -0
- data/ext/apex_ext/apex_src/tests/gfm_id_comparison_summary.md +96 -0
- data/ext/apex_ext/apex_src/tests/gh_api_test.md +6 -0
- data/ext/apex_ext/apex_src/tests/ial_demo.html +186 -0
- data/ext/apex_ext/apex_src/tests/include_code.py +19 -0
- data/ext/apex_ext/apex_src/tests/include_snippet.md +15 -0
- data/ext/apex_ext/apex_src/tests/multi_file_cli_test.sh +64 -0
- data/ext/apex_ext/apex_src/tests/sample_data.csv +7 -0
- data/ext/apex_ext/apex_src/tests/table_escaped_ltlt.md +4 -0
- data/ext/apex_ext/apex_src/tests/test_basic.c +74 -0
- data/ext/apex_ext/apex_src/tests/test_extensions.c +2116 -0
- data/ext/apex_ext/apex_src/tests/test_helpers.c +183 -0
- data/ext/apex_ext/apex_src/tests/test_helpers.h +91 -0
- data/ext/apex_ext/apex_src/tests/test_ial.c +282 -0
- data/ext/apex_ext/apex_src/tests/test_links.c +418 -0
- data/ext/apex_ext/apex_src/tests/test_marked_integration.c +265 -0
- data/ext/apex_ext/apex_src/tests/test_metadata.c +908 -0
- data/ext/apex_ext/apex_src/tests/test_output.c +1118 -0
- data/ext/apex_ext/apex_src/tests/test_plugins.c +219 -0
- data/ext/apex_ext/apex_src/tests/test_refs.bib +31 -0
- data/ext/apex_ext/apex_src/tests/test_runner.c +244 -0
- data/ext/apex_ext/apex_src/tests/test_syntax_highlight.c +198 -0
- data/ext/apex_ext/apex_src/tests/test_tables.c +862 -0
- data/ext/apex_ext/apex_src/tests/update_benchmarks.sh +9 -0
- data/ext/apex_ext/apex_src/tests/yaml_test.md +13 -0
- data/ext/apex_ext/apex_src/tests.rb +39 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/CMakeLists.txt +48 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/COPYING +170 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/CheckFileOffsetBits.c +14 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/CheckFileOffsetBits.cmake +43 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/FindAsan.cmake +74 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/Makefile.nmake +38 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/README.md +206 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/CMakeLists.txt +30 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/cplusplus.cpp +15 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/cplusplus.h +16 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/harness.c +111 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/harness.h +35 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/api_test/main.c +1169 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/appveyor.yml +21 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-bq-flat.md +16 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-bq-nested.md +13 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-code.md +11 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-fences.md +14 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-heading.md +9 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-hr.md +10 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-html.md +32 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-lheading.md +8 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-list-flat.md +67 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-list-nested.md +36 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-ref-flat.md +15 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/block-ref-nested.md +17 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-autolink.md +14 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-backticks.md +3 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-em-flat.md +5 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-em-nested.md +5 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-em-worst.md +5 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-entity.md +11 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-escape.md +15 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-html.md +44 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-links-flat.md +23 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-links-nested.md +13 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/inline-newlines.md +24 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/lorem1.md +13 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/samples/rawtabs.md +18 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/statistics.py +595 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/bench/stats.py +19 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/benchmarks.md +33 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/changelog.txt +1245 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/data/CaseFolding.txt +1495 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/CMakeLists.txt +119 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/autolink.c +508 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/autolink.h +8 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/cmark-gfm-core-extensions.h +54 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/core-extensions.c +27 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/ext_scanners.c +879 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/ext_scanners.h +24 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/ext_scanners.re +92 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/strikethrough.c +167 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/strikethrough.h +9 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/table.c +917 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/table.h +12 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/tagfilter.c +60 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/tagfilter.h +8 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/tasklist.c +156 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/tasklist.h +8 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/fuzz/CMakeLists.txt +22 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/fuzz/README.md +12 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/fuzz/fuzz_quadratic.c +91 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/fuzz/fuzz_quadratic_brackets.c +110 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/fuzz/fuzzloop.sh +28 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/man/CMakeLists.txt +10 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/man/make_man_page.py +133 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/man/man1/cmark-gfm.1 +78 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/man/man3/cmark-gfm.3 +1041 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/nmake.bat +1 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/CMakeLists.txt +230 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/arena.c +104 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/blocks.c +1622 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/buffer.c +278 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/buffer.h +116 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/case_fold_switch.inc +4327 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/chunk.h +135 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/cmark-gfm-extension_api.h +737 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/cmark-gfm.h +833 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/cmark-gfm_version.h.in +7 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/cmark.c +55 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/cmark_ctype.c +44 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/cmark_ctype.h +33 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/commonmark.c +514 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/config.h.in +76 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/entities.inc +2138 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/footnotes.c +63 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/footnotes.h +27 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/houdini.h +57 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/houdini_href_e.c +100 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/houdini_html_e.c +66 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/houdini_html_u.c +149 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/html.c +502 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/html.h +27 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/inlines.c +1788 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/inlines.h +29 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/iterator.c +159 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/iterator.h +26 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/latex.c +468 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/libcmark-gfm.pc.in +10 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/linked_list.c +37 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/main.c +328 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/man.c +274 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/map.c +129 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/map.h +44 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/node.c +1045 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/node.h +167 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/parser.h +59 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/plaintext.c +218 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/plugin.c +36 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/plugin.h +34 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/references.c +43 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/references.h +26 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/registry.c +63 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/registry.h +24 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/render.c +213 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/render.h +62 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/scanners.c +14056 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/scanners.h +70 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/scanners.re +365 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/syntax_extension.c +149 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/syntax_extension.h +34 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/utf8.c +317 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/utf8.h +35 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/xml.c +182 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/suppressions +10 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/CMakeLists.txt +114 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/afl_test_cases/test.md +49 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/cmark-fuzz.c +58 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/cmark.py +105 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/entity_tests.py +67 -0
- 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 +38 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/extensions.txt +920 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/fuzzing_dictionary +67 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/normalize.py +194 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/pathological_tests.py +160 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/regression.txt +375 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/roundtrip_tests.py +50 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/run-cmark-fuzz +4 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/smart_punct.txt +177 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/spec.txt +10212 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/spec_tests.py +152 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/toolchain-mingw32.cmake +17 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/Dockerfile +41 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/appveyor-build.bat +13 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/make_entities_inc.py +32 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/mkcasefold.pl +22 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/xml2md.xsl +319 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/tools/xml2md_gfm.xsl +80 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/why-cmark-and-not-x.md +104 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/wrappers/wrapper.js +6 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/wrappers/wrapper.py +37 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/wrappers/wrapper.rb +15 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/wrappers/wrapper.rkt +208 -0
- data/ext/apex_ext/apex_src/vendor/cmark-gfm/wrappers/wrapper_ext.py +109 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/CMakeLists.txt +160 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/Changes +372 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/License +20 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/Makefile.am +51 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/ReadMe.md +46 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/announcement.msg +89 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/bootstrap +3 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/cmake/config.h.in +4 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/configure.ac +73 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/doc/doxygen.cfg +222 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/docker/README.mkd +17 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/docker/alpine-3.7 +26 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/docker/fedora-25 +26 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/docker/ubuntu-14.04 +29 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/docker/ubuntu-16.04 +24 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/anchors.yaml +10 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/array.yaml +2 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/global-tag.yaml +14 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/json.yaml +1 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/mapping.yaml +2 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/numbers.yaml +1 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/strings.yaml +7 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/tags.yaml +7 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/examples/yaml-version.yaml +3 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/include/Makefile.am +17 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/include/yaml.h +1999 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/pkg/ReadMe.md +77 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/pkg/docker/Dockerfile +32 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/pkg/docker/output/ReadMe +1 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/pkg/docker/scripts/libyaml-dist.sh +23 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/regression-inputs/clusterfuzz-testcase-minimized-5607885063061504.yml +1 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/src/Makefile.am +4 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/src/api.c +1393 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/src/dumper.c +394 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/src/emitter.c +2358 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/src/loader.c +544 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/src/parser.c +1416 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/src/reader.c +469 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/src/scanner.c +3598 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/src/writer.c +141 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/src/yaml_private.h +684 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/CMakeLists.txt +27 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/Makefile.am +9 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/ReadMe.md +63 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/example-deconstructor-alt.c +800 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/example-deconstructor.c +1127 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/example-reformatter-alt.c +217 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/example-reformatter.c +202 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-all-tests.sh +29 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-dumper.c +314 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-emitter-test-suite.c +290 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-emitter.c +327 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-loader.c +63 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-parser-test-suite.c +196 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-parser.c +88 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/run-scanner.c +63 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/test-reader.c +354 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/tests/test-version.c +29 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/yaml-0.1.pc.in +10 -0
- data/ext/apex_ext/apex_src/vendor/libyaml/yamlConfig.cmake.in +16 -0
- data/ext/apex_ext/extconf.rb +103 -0
- data/lib/apex/configurable.rb +46 -0
- data/lib/apex/document.rb +66 -0
- data/lib/apex/version.rb +15 -0
- data/lib/apex.rb +28 -0
- metadata +544 -0
|
@@ -0,0 +1,643 @@
|
|
|
1
|
+
% APEX(1)
|
|
2
|
+
% Brett Terpstra
|
|
3
|
+
% December 2025
|
|
4
|
+
|
|
5
|
+
# NAME
|
|
6
|
+
|
|
7
|
+
apex - Unified Markdown processor supporting CommonMark,
|
|
8
|
+
GFM, MultiMarkdown, and Kramdown
|
|
9
|
+
|
|
10
|
+
# SYNOPSIS
|
|
11
|
+
|
|
12
|
+
**apex** [*options*] [*file*]
|
|
13
|
+
|
|
14
|
+
**apex** --combine [*files*...]
|
|
15
|
+
|
|
16
|
+
**apex** --mmd-merge [*index files*...]
|
|
17
|
+
|
|
18
|
+
# DESCRIPTION
|
|
19
|
+
|
|
20
|
+
Apex is a unified Markdown processor that combines the best
|
|
21
|
+
features from CommonMark, GitHub Flavored Markdown (GFM),
|
|
22
|
+
MultiMarkdown, Kramdown, and Marked. One processor to rule
|
|
23
|
+
them all.
|
|
24
|
+
|
|
25
|
+
If no file is specified, **apex** reads from stdin.
|
|
26
|
+
|
|
27
|
+
# OPTIONS
|
|
28
|
+
|
|
29
|
+
## Processing Modes
|
|
30
|
+
|
|
31
|
+
**-m** *MODE*, **--mode** *MODE*
|
|
32
|
+
: Processor mode: **commonmark**, **gfm**, **mmd** (or
|
|
33
|
+
**multimarkdown**), **kramdown**, or **unified** (default).
|
|
34
|
+
Each mode enables different features and syntax
|
|
35
|
+
compatibility.
|
|
36
|
+
|
|
37
|
+
## Input/Output
|
|
38
|
+
|
|
39
|
+
**-o** *FILE*, **--output** *FILE*
|
|
40
|
+
: Write output to *FILE* instead of stdout.
|
|
41
|
+
|
|
42
|
+
**-s**, **--standalone**
|
|
43
|
+
: Generate complete HTML document with `<html>`, `<head>`,
|
|
44
|
+
and `<body>` tags.
|
|
45
|
+
|
|
46
|
+
**--style** *FILE*, **--css** *FILE*
|
|
47
|
+
: Link to CSS file(s) in document head (requires
|
|
48
|
+
**--standalone**). Can be used multiple times or accept
|
|
49
|
+
comma-separated list (e.g., `--css style.css --css syntax.css`
|
|
50
|
+
or `--css style.css,syntax.css`). Overrides CSS metadata if
|
|
51
|
+
specified.
|
|
52
|
+
|
|
53
|
+
**--embed-css**
|
|
54
|
+
: When used with **--css FILE**, read the CSS file(s) and embed
|
|
55
|
+
their contents into `<style>` tags in the document head instead
|
|
56
|
+
of emitting `<link rel="stylesheet">` tags. All specified
|
|
57
|
+
stylesheets are embedded.
|
|
58
|
+
|
|
59
|
+
**--code-highlight** *TOOL*
|
|
60
|
+
: Use external tool for syntax highlighting of code blocks.
|
|
61
|
+
*TOOL* must be **pygments** (or **p**, **pyg**) or **skylighting**
|
|
62
|
+
(or **s**, **sky**). Code blocks are sent to the external tool
|
|
63
|
+
with their language specifier (if present) or with
|
|
64
|
+
auto-detection enabled. The highlighted HTML output replaces the
|
|
65
|
+
original code block in the document.
|
|
66
|
+
|
|
67
|
+
**--code-line-numbers**
|
|
68
|
+
: Include line numbers in syntax-highlighted code blocks.
|
|
69
|
+
Requires **--code-highlight**. When used with Pygments, adds
|
|
70
|
+
`linenos=1` option. When used with Skylighting, adds `-n` flag.
|
|
71
|
+
|
|
72
|
+
**--highlight-language-only**
|
|
73
|
+
: Only apply syntax highlighting to code blocks that have a language
|
|
74
|
+
specified (via ` ```language ` or IAL). Code blocks without a language
|
|
75
|
+
will be left unhighlighted. Requires **--code-highlight**.
|
|
76
|
+
|
|
77
|
+
**--script** *VALUE*
|
|
78
|
+
: Inject `<script>` tags either before `</body>` in standalone mode or at the end of the HTML fragment in snippet mode. *VALUE* can be a path, a URL, or one of the following shorthands: `mermaid`, `mathjax`, `katex`, `highlightjs`, `highlight.js`, `prism`, `prismjs`, `htmx`, `alpine`, `alpinejs`. Can be used multiple times or with a comma-separated list (e.g., `--script mermaid,mathjax`).
|
|
79
|
+
|
|
80
|
+
**--title** *TITLE*
|
|
81
|
+
: Document title (requires **--standalone**, default:
|
|
82
|
+
"Document").
|
|
83
|
+
|
|
84
|
+
**--pretty**
|
|
85
|
+
: Pretty-print HTML with indentation and whitespace.
|
|
86
|
+
|
|
87
|
+
**--aria**
|
|
88
|
+
: Add ARIA labels and accessibility attributes to HTML
|
|
89
|
+
output. When enabled, adds:
|
|
90
|
+
|
|
91
|
+
`aria-label="Table of contents"` to TOC navigation elements (`<nav class="toc">`)
|
|
92
|
+
|
|
93
|
+
- `role="figure"` to `<figure>` elements
|
|
94
|
+
- `role="table"` to `<table>` elements
|
|
95
|
+
- `id` attributes to `<figcaption>` elements within
|
|
96
|
+
|
|
97
|
+
table figures (if missing)
|
|
98
|
+
|
|
99
|
+
- `aria-describedby` attributes to tables linking them
|
|
100
|
+
|
|
101
|
+
to their captions
|
|
102
|
+
|
|
103
|
+
This enhances screen reader support and makes the HTML
|
|
104
|
+
output more accessible. Default: disabled.
|
|
105
|
+
|
|
106
|
+
## Feature Flags
|
|
107
|
+
|
|
108
|
+
**--accept**
|
|
109
|
+
: Accept all Critic Markup changes (apply edits).
|
|
110
|
+
|
|
111
|
+
**--reject**
|
|
112
|
+
: Reject all Critic Markup changes (revert edits).
|
|
113
|
+
|
|
114
|
+
**--code-highlight** *TOOL*
|
|
115
|
+
: Use external tool for syntax highlighting of code blocks.
|
|
116
|
+
*TOOL* must be **pygments** (or abbreviations **p**, **pyg**) or
|
|
117
|
+
**skylighting** (or abbreviations **s**, **sky**). Code blocks
|
|
118
|
+
are sent to the external tool with their language specifier (if
|
|
119
|
+
present) or with auto-detection enabled. The highlighted HTML
|
|
120
|
+
output replaces the original code block in the document.
|
|
121
|
+
|
|
122
|
+
**--code-line-numbers**
|
|
123
|
+
: Include line numbers in syntax-highlighted code blocks.
|
|
124
|
+
Requires **--code-highlight**. When used with Pygments, adds
|
|
125
|
+
`linenos=1` option. When used with Skylighting, adds `-n` flag.
|
|
126
|
+
|
|
127
|
+
**--highlight-language-only**
|
|
128
|
+
: Only apply syntax highlighting to code blocks that have a language
|
|
129
|
+
specified (via ` ```language ` or IAL). Code blocks without a language
|
|
130
|
+
will be left unhighlighted. Requires **--code-highlight**.
|
|
131
|
+
|
|
132
|
+
**--includes**, **--no-includes**
|
|
133
|
+
: Enable or disable file inclusion. Enabled by default in
|
|
134
|
+
unified mode.
|
|
135
|
+
|
|
136
|
+
**--transforms**, **--no-transforms**
|
|
137
|
+
:: Enable or disable metadata variable transforms
|
|
138
|
+
(`[%key:transform]`). When enabled, metadata values can be
|
|
139
|
+
transformed (case conversion, string manipulation, regex
|
|
140
|
+
replacement, date formatting, etc.) when inserted into the
|
|
141
|
+
document. Enabled by default in unified mode.
|
|
142
|
+
|
|
143
|
+
**--meta-file** *FILE*
|
|
144
|
+
: Load metadata from an external file. Auto-detects format: YAML (starts with `---`), MultiMarkdown (key: value pairs), or Pandoc (starts with `%`). Metadata from the file is merged with document metadata, with document metadata taking precedence. Metadata can also control command-line options (see METADATA CONTROL OF OPTIONS below). If no `--meta-file` is provided, Apex will automatically load `$XDG_CONFIG_HOME/apex/config.yml` (or `~/.config/apex/config.yml` when `XDG_CONFIG_HOME` is not set) if it exists, as if it were passed via `--meta-file`.
|
|
145
|
+
|
|
146
|
+
**--meta** *KEY=VALUE*
|
|
147
|
+
: Set a metadata key-value pair. Can be used multiple times. Supports comma-separated pairs (e.g., `--meta KEY1=value1,KEY2=value2`). Values can be quoted to include spaces and special characters. Command-line metadata takes precedence over both file and document metadata. Metadata can also control command-line options (see METADATA CONTROL OF OPTIONS below).
|
|
148
|
+
|
|
149
|
+
**--hardbreaks**
|
|
150
|
+
: Treat newlines as hard breaks.
|
|
151
|
+
|
|
152
|
+
**--widont**
|
|
153
|
+
: Prevent short widows in headings by inserting non-breaking spaces
|
|
154
|
+
(` `) between trailing words when their combined length is 10
|
|
155
|
+
characters or less. Applies to h1-h6 headings.
|
|
156
|
+
|
|
157
|
+
**--code-is-poetry**
|
|
158
|
+
: Treat code blocks without a language as poetry by adding the `poetry`
|
|
159
|
+
class. Automatically enables **--highlight-language-only**.
|
|
160
|
+
|
|
161
|
+
**--markdown-in-html**, **--no-markdown-in-html**
|
|
162
|
+
: Enable or disable markdown processing inside HTML blocks with
|
|
163
|
+
`markdown` attributes. Enabled by default in unified mode.
|
|
164
|
+
|
|
165
|
+
**--random-footnote-ids**
|
|
166
|
+
: Use hash-based footnote IDs (e.g., `fn-a7b3c9d2-1`) instead of
|
|
167
|
+
sequential IDs to avoid collisions when combining multiple documents.
|
|
168
|
+
|
|
169
|
+
**--hashtags**
|
|
170
|
+
: Convert `#tags` into span-wrapped hashtags with the `mkhashtag` class.
|
|
171
|
+
|
|
172
|
+
**--style-hashtags**
|
|
173
|
+
: Use the `mkstyledtag` class instead of `mkhashtag` for hashtags.
|
|
174
|
+
Requires **--hashtags**.
|
|
175
|
+
|
|
176
|
+
**--proofreader**
|
|
177
|
+
: Treat `==highlight==` and `~~delete~~` as CriticMarkup highlight and
|
|
178
|
+
deletion syntax. Automatically enables CriticMarkup processing.
|
|
179
|
+
|
|
180
|
+
**--hr-page-break**
|
|
181
|
+
: Replace `<hr>` elements with Marked-style page break divs.
|
|
182
|
+
|
|
183
|
+
**--title-from-h1**
|
|
184
|
+
: Use the first H1 heading as the document title when no title is
|
|
185
|
+
specified via **--title** or metadata. Requires **--standalone**.
|
|
186
|
+
|
|
187
|
+
**--page-break-before-footnotes**
|
|
188
|
+
: Insert a page break before the footnotes section.
|
|
189
|
+
|
|
190
|
+
**--no-footnotes**
|
|
191
|
+
: Disable footnote support.
|
|
192
|
+
|
|
193
|
+
**--no-math**
|
|
194
|
+
: Disable math support.
|
|
195
|
+
|
|
196
|
+
**--no-smart**
|
|
197
|
+
: Disable smart typography.
|
|
198
|
+
|
|
199
|
+
**--no-tables**
|
|
200
|
+
: Disable table support.
|
|
201
|
+
|
|
202
|
+
**--no-ids**
|
|
203
|
+
: Disable automatic header ID generation.
|
|
204
|
+
|
|
205
|
+
**--header-anchors**
|
|
206
|
+
: Generate `<a>` anchor tags instead of header IDs.
|
|
207
|
+
|
|
208
|
+
**--wikilinks**, **--no-wikilinks**
|
|
209
|
+
: Enable wiki link syntax `[[PageName]]`. Default: disabled.
|
|
210
|
+
|
|
211
|
+
## Header ID Format
|
|
212
|
+
|
|
213
|
+
**--id-format** *FORMAT*
|
|
214
|
+
: Header ID format: **gfm** (default), **mmd**, or
|
|
215
|
+
**kramdown**. Modes auto-set format; use this to override in
|
|
216
|
+
unified mode.
|
|
217
|
+
|
|
218
|
+
## List Options
|
|
219
|
+
|
|
220
|
+
**--alpha-lists**, **--no-alpha-lists**
|
|
221
|
+
: Support alpha list markers (a., b., c. and A., B., C.).
|
|
222
|
+
|
|
223
|
+
**--mixed-lists**, **--no-mixed-lists**
|
|
224
|
+
: Allow mixed list markers at same level (inherit type from
|
|
225
|
+
first item).
|
|
226
|
+
|
|
227
|
+
## Table Options
|
|
228
|
+
|
|
229
|
+
**--relaxed-tables**, **--no-relaxed-tables**
|
|
230
|
+
: Enable relaxed table parsing (no separator rows required).
|
|
231
|
+
|
|
232
|
+
**--per-cell-alignment**, **--no-per-cell-alignment**
|
|
233
|
+
: Enable per-cell alignment markers in tables. When enabled, cells
|
|
234
|
+
starting with a colon (`:`) are left-aligned, ending with a colon
|
|
235
|
+
(`:`) are right-aligned, or both (`:content:`) are center-aligned.
|
|
236
|
+
The colons are stripped from the output and replaced with
|
|
237
|
+
`style="text-align: ..."` attributes. Default: enabled in unified
|
|
238
|
+
mode, disabled in commonmark, gfm, mmd, and kramdown modes.
|
|
239
|
+
|
|
240
|
+
**--captions** *POSITION*
|
|
241
|
+
: Table caption position: **above** or **below** (default:
|
|
242
|
+
**below**). Controls where table captions appear relative to
|
|
243
|
+
the table.
|
|
244
|
+
|
|
245
|
+
## HTML and Links
|
|
246
|
+
|
|
247
|
+
**--unsafe**, **--no-unsafe**
|
|
248
|
+
: Allow raw HTML in output. Default: true for
|
|
249
|
+
unified/mmd/kramdown modes, false for commonmark/gfm modes.
|
|
250
|
+
|
|
251
|
+
**--autolink**, **--no-autolink**
|
|
252
|
+
: Enable autolinking of URLs and email addresses. Default:
|
|
253
|
+
enabled in GFM, MultiMarkdown, Kramdown, and unified modes;
|
|
254
|
+
disabled in CommonMark mode.
|
|
255
|
+
|
|
256
|
+
**--obfuscate-emails**
|
|
257
|
+
: Obfuscate email links and text using HTML entities
|
|
258
|
+
(hex-encoded).
|
|
259
|
+
|
|
260
|
+
**--wikilink-space** *MODE*
|
|
261
|
+
:: Control how spaces in wiki link page names are handled in
|
|
262
|
+
the generated URL. **MODE** must be one of:
|
|
263
|
+
|
|
264
|
+
`dash` - Convert spaces to dashes: `[[Home Page]]` → `href="Home-Page"`
|
|
265
|
+
|
|
266
|
+
`none` - Remove spaces: `[[Home Page]]` → `href="HomePage"`
|
|
267
|
+
|
|
268
|
+
`underscore` - Convert spaces to underscores: `[[Home Page]]` → `href="Home_Page"`
|
|
269
|
+
|
|
270
|
+
`space` - Keep spaces (rendered as `%%20` in HTML): `[[Home Page]]` → `href="Home%20Page"`
|
|
271
|
+
|
|
272
|
+
Default: `dash`.
|
|
273
|
+
|
|
274
|
+
**--wikilink-extension** *EXT*
|
|
275
|
+
:: Add a file extension to wiki link URLs. The extension is automatically prefixed with a dot if not provided. For example, `--wikilink-extension html` creates `href="Page.html"` and `--wikilink-extension .html` also creates `href="Page.html"`.
|
|
276
|
+
|
|
277
|
+
**--wikilink-sanitize**, **--no-wikilink-sanitize**
|
|
278
|
+
: Sanitize wiki link URLs for cleaner, more compatible links. When enabled:
|
|
279
|
+
|
|
280
|
+
- Removes apostrophes and quotation marks (i.e. removes `"'\`´‘’“”`)
|
|
281
|
+
- Converts select latin-1 characters to ASCII (e.g. e-acute -> e)
|
|
282
|
+
- Converts uppercase to lowercase
|
|
283
|
+
- Replaces non-ascii and any non-alphanumeric ascii characters with the space-mode character (except `/` and `.`)
|
|
284
|
+
- Removes duplicate space-mode characters
|
|
285
|
+
- Removes leading and trailing space-mode characters
|
|
286
|
+
|
|
287
|
+
For example, with `--wikilink-sanitize --wikilink-space dash`:
|
|
288
|
+
|
|
289
|
+
`[[O'Brien's Page]]` → `href="obriens-page"`
|
|
290
|
+
|
|
291
|
+
`[[Hello World!!!]]` → `href="hello-world"`
|
|
292
|
+
|
|
293
|
+
`[[path/to/FILE.MD]]` → `href="path/to/file.md"`
|
|
294
|
+
|
|
295
|
+
Default: disabled.
|
|
296
|
+
|
|
297
|
+
## Image Embedding
|
|
298
|
+
|
|
299
|
+
**--embed-images**
|
|
300
|
+
: Embed local images as base64 data URLs in HTML output. Only local images (file paths) are embedded; remote images (http://, https://) are not processed. Images are read from the filesystem and encoded as base64 data URLs (e.g., `data:image/png;base64,...`). Relative paths are resolved using the base directory (see **--base-dir**).
|
|
301
|
+
|
|
302
|
+
**--image-captions**, **--no-image-captions**
|
|
303
|
+
: Wrap images with title or alt text in `<figure>` elements with `<figcaption>`. Default: enabled in unified and MultiMarkdown modes; disabled in commonmark, gfm, and kramdown modes.
|
|
304
|
+
|
|
305
|
+
**--emoji-autocorrect**, **--no-emoji-autocorrect**
|
|
306
|
+
: Convert emoji names (e.g., `:rocket:`) to Unicode emoji characters. Default: enabled in unified mode; disabled in other modes.
|
|
307
|
+
|
|
308
|
+
## Path Resolution
|
|
309
|
+
|
|
310
|
+
**--base-dir** *DIR*
|
|
311
|
+
: Base directory for resolving relative paths. Used for:
|
|
312
|
+
|
|
313
|
+
- Image embedding (with **--embed-images**)
|
|
314
|
+
- File includes/transclusions
|
|
315
|
+
- Relative path resolution when reading from stdin or
|
|
316
|
+
|
|
317
|
+
when the working directory differs from the document
|
|
318
|
+
location
|
|
319
|
+
|
|
320
|
+
If not specified and reading from a file, the base directory
|
|
321
|
+
is automatically set to the input file's directory. When
|
|
322
|
+
reading from stdin, this flag must be used to resolve
|
|
323
|
+
relative paths.
|
|
324
|
+
|
|
325
|
+
## Superscript/Subscript
|
|
326
|
+
|
|
327
|
+
**--sup-sub**, **--no-sup-sub**
|
|
328
|
+
: Enable MultiMarkdown-style superscript and subscript syntax. The `^` character creates superscript for the text immediately following it (stops at space or punctuation). The `~` character creates subscript when used within a word/identifier (e.g., `H~2~O` creates H₂O). When tildes are at word boundaries (e.g., `~text~`), they create underline instead. Default: enabled in unified and MultiMarkdown modes.
|
|
329
|
+
|
|
330
|
+
**--strikethrough**, **--no-strikethrough**
|
|
331
|
+
: Enable or disable GFM-style strikethrough processing (`~~text~~`). When enabled, `~~text~~` renders as `<del>text</del>`. Default: enabled in GFM and unified modes; disabled in commonmark, mmd, and kramdown modes.
|
|
332
|
+
|
|
333
|
+
**--divs**, **--no-divs**
|
|
334
|
+
: Enable or disable Pandoc fenced divs syntax (`::::: {#id .class} ... :::::`). Fenced divs allow you to create HTML block elements with attributes using a special fence syntax. By default, fenced divs create `<div>` elements, but you can specify different block types using the `>blocktype` syntax (e.g., `::: >aside {.sidebar} ... :::` creates an `<aside>` element instead). Opening fences must have at least 3 colons and attributes; closing fences need at least 3 colons. Fenced divs can be nested, including different block types. Default: enabled in unified mode only.
|
|
335
|
+
|
|
336
|
+
**--spans**, **--no-spans**
|
|
337
|
+
: Enable or disable Pandoc-style bracketed spans syntax (`[text]{#id .class key="val"}`). Bracketed spans allow you to create HTML `<span>` elements with attributes. The text inside the brackets is processed as markdown. If the bracketed text matches a reference link definition, it will be treated as a link instead of a span. Default: enabled in unified mode only.
|
|
338
|
+
|
|
339
|
+
## Citations and Bibliography
|
|
340
|
+
|
|
341
|
+
**--bibliography** *FILE*
|
|
342
|
+
: Bibliography file in BibTeX, CSL JSON, or CSL YAML format.
|
|
343
|
+
Can be specified multiple times to load multiple
|
|
344
|
+
bibliography files. Citations are automatically enabled when
|
|
345
|
+
this option is used. Bibliography can also be specified in
|
|
346
|
+
document metadata.
|
|
347
|
+
|
|
348
|
+
**--csl** *FILE*
|
|
349
|
+
: Citation Style Language (CSL) file for formatting
|
|
350
|
+
citations and bibliography. Citations are automatically
|
|
351
|
+
enabled when this option is used. CSL file can also be
|
|
352
|
+
specified in document metadata.
|
|
353
|
+
|
|
354
|
+
**--no-bibliography**
|
|
355
|
+
: Suppress bibliography output even when citations are
|
|
356
|
+
present.
|
|
357
|
+
|
|
358
|
+
**--link-citations**
|
|
359
|
+
: Link citations to their corresponding bibliography
|
|
360
|
+
entries. Citations will include `href` attributes pointing
|
|
361
|
+
to the bibliography entry.
|
|
362
|
+
|
|
363
|
+
**--show-tooltips**
|
|
364
|
+
: Show tooltips on citations when hovering (requires CSS
|
|
365
|
+
support).
|
|
366
|
+
|
|
367
|
+
Citation syntax is supported in MultiMarkdown and unified
|
|
368
|
+
modes:
|
|
369
|
+
|
|
370
|
+
- Pandoc: `[@key]`, `[@key1; @key2]`, `@key`
|
|
371
|
+
- MultiMarkdown: `[#key]`
|
|
372
|
+
- mmark: `[@RFC1234]`
|
|
373
|
+
|
|
374
|
+
Bibliography is inserted at the `<!-- REFERENCES -->` marker
|
|
375
|
+
or appended to the end of the document if no marker is
|
|
376
|
+
found.
|
|
377
|
+
|
|
378
|
+
## Indices
|
|
379
|
+
|
|
380
|
+
**--indices**
|
|
381
|
+
: Enable index processing. Supports both mmark and TextIndex
|
|
382
|
+
syntax. Default: enabled in MultiMarkdown and unified modes.
|
|
383
|
+
|
|
384
|
+
**--no-indices**
|
|
385
|
+
: Disable index processing.
|
|
386
|
+
|
|
387
|
+
**--no-index**
|
|
388
|
+
: Suppress index generation at the end of the document.
|
|
389
|
+
Index markers are still created in the document, but the
|
|
390
|
+
index section is not generated.
|
|
391
|
+
|
|
392
|
+
Index syntax is supported in MultiMarkdown and unified
|
|
393
|
+
modes:
|
|
394
|
+
|
|
395
|
+
- **mmark syntax**: `(!item)`, `(!item, subitem)`, `(!!item,
|
|
396
|
+
|
|
397
|
+
subitem)` for primary entries
|
|
398
|
+
|
|
399
|
+
- **TextIndex syntax**: `word{^}`, `[term]{^}`, `{^params}`
|
|
400
|
+
|
|
401
|
+
The index is automatically generated at the end of the
|
|
402
|
+
document or at the `<!--INDEX-->` marker if present. Entries
|
|
403
|
+
are sorted alphabetically and can be grouped by first
|
|
404
|
+
letter.
|
|
405
|
+
|
|
406
|
+
## Plugins
|
|
407
|
+
|
|
408
|
+
**--plugins**, **--no-plugins**
|
|
409
|
+
: Enable or disable external/plugin processing. Plugins
|
|
410
|
+
extend Apex with custom processing capabilities.
|
|
411
|
+
|
|
412
|
+
**--list-plugins**
|
|
413
|
+
: List installed plugins and available plugins from the
|
|
414
|
+
remote directory. Shows both locally installed plugins and
|
|
415
|
+
plugins available for installation from the Apex plugin
|
|
416
|
+
directory.
|
|
417
|
+
|
|
418
|
+
**--install-plugin** *ID*
|
|
419
|
+
: Install a plugin by ID from the remote directory, or by Git URL/GitHub shorthand (user/repo). Plugins are installed to `$XDG_CONFIG_HOME/apex/plugins` (or `~/.config/apex/plugins` when `XDG_CONFIG_HOME` is not set). When installing from a URL or GitHub shorthand, Apex will prompt for confirmation since plugins execute unverified code.
|
|
420
|
+
|
|
421
|
+
**--uninstall-plugin** *ID*
|
|
422
|
+
: Uninstall a plugin by ID. Removes the plugin directory
|
|
423
|
+
from the plugins folder. Apex will prompt for confirmation
|
|
424
|
+
before removing the plugin.
|
|
425
|
+
|
|
426
|
+
## General Options
|
|
427
|
+
|
|
428
|
+
**-h**, **--help**
|
|
429
|
+
: Show help message and exit.
|
|
430
|
+
|
|
431
|
+
**-v**, **--version**
|
|
432
|
+
: Show version information and exit.
|
|
433
|
+
|
|
434
|
+
**--progress**, **--no-progress**
|
|
435
|
+
: Show progress indicator during processing. Default: enabled when stderr is a TTY.
|
|
436
|
+
|
|
437
|
+
## Multi-file Utilities
|
|
438
|
+
|
|
439
|
+
**--combine** *files...*
|
|
440
|
+
: Concatenate one or more Markdown files into a single
|
|
441
|
+
Markdown stream, expanding all supported include syntaxes.
|
|
442
|
+
When a `SUMMARY.md` file is provided, Apex treats it as a
|
|
443
|
+
GitBook-style index and combines the linked files in order.
|
|
444
|
+
Output is raw Markdown suitable for piping back into Apex.
|
|
445
|
+
|
|
446
|
+
**--mmd-merge** *index files...*
|
|
447
|
+
: Merge files from one or more MultiMarkdown `mmd_merge`-style index files into a single Markdown stream. Each non-empty, non-comment line in an index file specifies a document to include. Lines whose first non-whitespace character is `#` are treated as comments and ignored. Indentation (tabs or groups of four spaces) before the filename increases the header level of the included document (each indent level shifts all Markdown headings in that file down one level). Output is raw Markdown suitable for piping into Apex, for example:
|
|
448
|
+
|
|
449
|
+
apex --mmd-merge index.txt | apex --mode mmd --standalone -o
|
|
450
|
+
book.html
|
|
451
|
+
|
|
452
|
+
# EXAMPLES
|
|
453
|
+
|
|
454
|
+
Process a markdown file:
|
|
455
|
+
|
|
456
|
+
apex input.md
|
|
457
|
+
|
|
458
|
+
Output to a file:
|
|
459
|
+
|
|
460
|
+
apex input.md -o output.html
|
|
461
|
+
|
|
462
|
+
Generate standalone HTML document:
|
|
463
|
+
|
|
464
|
+
apex input.md --standalone --title "My Document"
|
|
465
|
+
|
|
466
|
+
Pretty-print HTML output:
|
|
467
|
+
|
|
468
|
+
apex input.md --pretty
|
|
469
|
+
|
|
470
|
+
Use GFM mode:
|
|
471
|
+
|
|
472
|
+
apex input.md --mode gfm
|
|
473
|
+
|
|
474
|
+
Process document with citations and bibliography:
|
|
475
|
+
|
|
476
|
+
apex document.md --bibliography refs.bib
|
|
477
|
+
|
|
478
|
+
Use metadata to specify bibliography:
|
|
479
|
+
|
|
480
|
+
apex document.md
|
|
481
|
+
|
|
482
|
+
(With bibliography specified in YAML front matter)
|
|
483
|
+
|
|
484
|
+
Use Kramdown mode with relaxed tables:
|
|
485
|
+
|
|
486
|
+
apex input.md --mode kramdown
|
|
487
|
+
|
|
488
|
+
Process from stdin:
|
|
489
|
+
|
|
490
|
+
echo "# Hello" | apex
|
|
491
|
+
|
|
492
|
+
# PROCESSING MODES
|
|
493
|
+
|
|
494
|
+
**commonmark**
|
|
495
|
+
: Pure CommonMark specification. Minimal features, maximum
|
|
496
|
+
compatibility.
|
|
497
|
+
|
|
498
|
+
**gfm**
|
|
499
|
+
: GitHub Flavored Markdown. Includes tables, strikethrough,
|
|
500
|
+
task lists, autolinks, and more.
|
|
501
|
+
|
|
502
|
+
**mmd**, **multimarkdown**
|
|
503
|
+
: MultiMarkdown compatibility. Includes metadata, definition
|
|
504
|
+
lists, footnotes, and more.
|
|
505
|
+
|
|
506
|
+
**kramdown**
|
|
507
|
+
: Kramdown compatibility. Includes relaxed tables, IAL
|
|
508
|
+
(Inline Attribute Lists) for adding HTML attributes to
|
|
509
|
+
elements, and more.
|
|
510
|
+
|
|
511
|
+
**unified** (default)
|
|
512
|
+
: All features enabled. Combines features from all modes.
|
|
513
|
+
|
|
514
|
+
# METADATA CONTROL OF OPTIONS
|
|
515
|
+
|
|
516
|
+
Most command-line options can be controlled via document
|
|
517
|
+
metadata, allowing different files to be processed with
|
|
518
|
+
different settings when processing batches. This enables
|
|
519
|
+
per-document configuration without needing separate
|
|
520
|
+
command-line invocations.
|
|
521
|
+
|
|
522
|
+
**Boolean options** accept `true`/`false`, `yes`/`no`, or
|
|
523
|
+
`1`/`0` (case-insensitive). **String options** use the value
|
|
524
|
+
directly.
|
|
525
|
+
|
|
526
|
+
**Supported boolean options:**
|
|
527
|
+
`indices`, `wikilinks`, `wikilink-sanitize`, `includes`, `relaxed-tables`, `per-cell-alignment`, `alpha-lists`, `mixed-lists`, `sup-sub`, `strikethrough`, `autolink`, `transforms`, `unsafe`, `tables`, `footnotes`, `smart`, `math`, `ids`, `header-anchors`, `embed-images`, `image-captions`, `link-citations`, `show-tooltips`, `suppress-bibliography`, `suppress-index`, `group-index-by-letter`, `obfuscate-emails`, `pretty`, `standalone`, `hardbreaks`, `plugins`, `emoji-autocorrect`, `code-line-numbers`, `highlight-language-only`, `markdown-in-html`
|
|
528
|
+
|
|
529
|
+
**Supported string options:**
|
|
530
|
+
`bibliography`, `csl`, `title`, `style` (or `css`),
|
|
531
|
+
`id-format`, `base-dir`, `mode`, `wikilink-space`,
|
|
532
|
+
`wikilink-extension`
|
|
533
|
+
|
|
534
|
+
**Example YAML front matter:**
|
|
535
|
+
```
|
|
536
|
+
---
|
|
537
|
+
indices: false
|
|
538
|
+
wikilinks: true
|
|
539
|
+
bibliography: references.bib
|
|
540
|
+
title: My Research Paper
|
|
541
|
+
pretty: true
|
|
542
|
+
standalone: true
|
|
543
|
+
---
|
|
544
|
+
|
|
545
|
+
```
|
|
546
|
+
|
|
547
|
+
**Example MultiMarkdown metadata:**
|
|
548
|
+
```
|
|
549
|
+
indices: false
|
|
550
|
+
wikilinks: true
|
|
551
|
+
bibliography: references.bib
|
|
552
|
+
title: My Research Paper
|
|
553
|
+
|
|
554
|
+
```
|
|
555
|
+
|
|
556
|
+
When processing multiple files with `apex *.md`, each file can use its own configuration via metadata. You can also use `--meta-file` to specify a shared configuration file that applies to all processed files.
|
|
557
|
+
|
|
558
|
+
**Note:** If `mode` is specified in metadata, it resets all
|
|
559
|
+
options to that mode's defaults before applying other
|
|
560
|
+
metadata options.
|
|
561
|
+
|
|
562
|
+
# FEATURES
|
|
563
|
+
|
|
564
|
+
Apex supports a wide range of Markdown extensions:
|
|
565
|
+
|
|
566
|
+
- **Tables**: GFM-style tables with alignment
|
|
567
|
+
- **Strikethrough**: GFM-style `~~text~~` (controlled by **--strikethrough**)
|
|
568
|
+
- **Footnotes**: Reference-style footnotes
|
|
569
|
+
- **Math**: Inline (`$...$`) and display (`$$...$$`) math
|
|
570
|
+
|
|
571
|
+
with LaTeX
|
|
572
|
+
|
|
573
|
+
- **Wiki Links**: `[[Page]]`, `[[Page|Display]]`,
|
|
574
|
+
|
|
575
|
+
`[[Page#Section]]`
|
|
576
|
+
|
|
577
|
+
- **Critic Markup**: All 5 types ({++add++}, {--del--},
|
|
578
|
+
|
|
579
|
+
{~~sub~~}, {==mark==}, {>>comment<<})
|
|
580
|
+
|
|
581
|
+
- **Smart Typography**: Smart quotes, dashes, ellipsis
|
|
582
|
+
- **Definition Lists**: MultiMarkdown-style definition lists
|
|
583
|
+
- **Task Lists**: GFM-style task lists
|
|
584
|
+
- **Metadata**: YAML front matter, MultiMarkdown metadata,
|
|
585
|
+
|
|
586
|
+
Pandoc title blocks
|
|
587
|
+
|
|
588
|
+
- **Metadata Transforms**: Transform metadata values with
|
|
589
|
+
|
|
590
|
+
`[%key:transform]` syntax (case conversion, string
|
|
591
|
+
manipulation, regex replacement, date formatting, etc.)
|
|
592
|
+
|
|
593
|
+
- **Metadata Control of Options**: Control command-line
|
|
594
|
+
|
|
595
|
+
options via metadata for per-document configuration
|
|
596
|
+
|
|
597
|
+
- **Header IDs**: Automatic or manual header IDs with
|
|
598
|
+
|
|
599
|
+
multiple format options
|
|
600
|
+
|
|
601
|
+
- **Relaxed Tables**: Support for tables without separator
|
|
602
|
+
rows (Kramdown-style). Enabled by default in unified and
|
|
603
|
+
Kramdown modes.
|
|
604
|
+
|
|
605
|
+
- **Per-Cell Alignment**: Support for alignment markers using
|
|
606
|
+
colons at the start and/or end of table cells. Enabled by default
|
|
607
|
+
in unified mode only.
|
|
608
|
+
|
|
609
|
+
rows (Kramdown-style)
|
|
610
|
+
|
|
611
|
+
- **Inline Tables from CSV/TSV**: Convert inline CSV/TSV
|
|
612
|
+
|
|
613
|
+
text to tables using ```table fences or `<!--TABLE-->`
|
|
614
|
+
markers
|
|
615
|
+
|
|
616
|
+
**Superscript/Subscript**: MultiMarkdown-style superscript (`^text`) and subscript (`~text~` within words) syntax. Subscript uses paired tildes within word boundaries (e.g., `H~2~O`), while tildes at word boundaries create underline
|
|
617
|
+
|
|
618
|
+
- **Image Embedding**: Embed local images as base64 data
|
|
619
|
+
|
|
620
|
+
URLs with `--embed-images` flag
|
|
621
|
+
|
|
622
|
+
**Inline Attribute Lists (IAL)**: Kramdown-style syntax for adding HTML attributes (IDs, classes, key-value pairs) to block-level and inline elements. Supports Attribute List Definitions (ALDs) for reusable attribute sets. Available in kramdown and unified modes. See [Inline Attribute Lists](https://github.com/ttscoff/apex/wiki/Inline-Attribute-Lists) for complete documentation
|
|
623
|
+
|
|
624
|
+
# SEE ALSO
|
|
625
|
+
|
|
626
|
+
**apex-config**(5), **apex-plugins**(7), **pandoc**(1), **markdown**(7)
|
|
627
|
+
|
|
628
|
+
For complete documentation, see the [Apex Wiki](https://github.com/ttscoff/apex/wiki).
|
|
629
|
+
|
|
630
|
+
Project homepage: <https://github.com/ApexMarkdown/apex>
|
|
631
|
+
|
|
632
|
+
# AUTHOR
|
|
633
|
+
|
|
634
|
+
Brett Terpstra
|
|
635
|
+
|
|
636
|
+
# COPYRIGHT
|
|
637
|
+
|
|
638
|
+
Copyright (c) 2025 Brett Terpstra. Licensed under MIT
|
|
639
|
+
License.
|
|
640
|
+
|
|
641
|
+
# BUGS
|
|
642
|
+
|
|
643
|
+
Report bugs at <https://github.com/ttscoff/apex/issues>.
|