apex-ruby 1.0.17 → 1.0.20

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.
Files changed (207) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +17 -3
  3. data/ext/apex_ext/apex_ext.c +260 -91
  4. data/ext/apex_ext/apex_src/CHANGELOG.md +440 -0
  5. data/ext/apex_ext/apex_src/CMakeLists.txt +15 -1
  6. data/ext/apex_ext/apex_src/Formula/apex.rb +7 -2
  7. data/ext/apex_ext/apex_src/Package.swift +15 -4
  8. data/ext/apex_ext/apex_src/README.md +94 -35
  9. data/ext/apex_ext/apex_src/VERSION +1 -1
  10. data/ext/apex_ext/apex_src/apex-debug.log +4 -0
  11. data/ext/apex_ext/apex_src/apex.code-workspace +38 -0
  12. data/ext/apex_ext/apex_src/apex.taskpaper +12 -0
  13. data/ext/apex_ext/apex_src/apex_deflist_debug.log +25 -0
  14. data/ext/apex_ext/apex_src/buildnotes.md +1435 -0
  15. data/ext/apex_ext/apex_src/cli/main.c +262 -33
  16. data/ext/apex_ext/apex_src/debug.log +7 -0
  17. data/ext/apex_ext/apex_src/docs/CITATIONS_EXAMPLES.md +274 -0
  18. data/ext/apex_ext/apex_src/docs/CITATIONS_IMPLEMENTATION_PLAN.md +749 -0
  19. data/ext/apex_ext/apex_src/docs/CITATIONS_PLAN.md +744 -0
  20. data/ext/apex_ext/apex_src/docs/INDEX_IMPLEMENTATION_ANALYSIS.md +382 -0
  21. data/ext/apex_ext/apex_src/docs/plans/2025-02-27-man-page-output-implementation.md +351 -0
  22. data/ext/apex_ext/apex_src/docs/superpowers/plans/2026-07-12-toc-output-format.md +745 -0
  23. data/ext/apex_ext/apex_src/docs/superpowers/plans/2026-07-18-bear-image-attributes.md +829 -0
  24. data/ext/apex_ext/apex_src/docs/superpowers/plans/2026-07-19-apex-node-npm.md +1148 -0
  25. data/ext/apex_ext/apex_src/docs/superpowers/specs/2026-07-12-toc-output-format-design.md +161 -0
  26. data/ext/apex_ext/apex_src/docs/superpowers/specs/2026-07-18-bear-image-attributes-design.md +184 -0
  27. data/ext/apex_ext/apex_src/docs/superpowers/specs/2026-07-19-apex-node-npm-design.md +211 -0
  28. data/ext/apex_ext/apex_src/documentation/app-settings-table.md +67 -0
  29. data/ext/apex_ext/apex_src/documentation/app-transformed/Citations.md +340 -0
  30. data/ext/apex_ext/apex_src/documentation/app-transformed/Credits.md +11 -0
  31. data/ext/apex_ext/apex_src/documentation/app-transformed/Header-IDs.md +234 -0
  32. data/ext/apex_ext/apex_src/documentation/app-transformed/Inline-Attribute-Lists.md +516 -0
  33. data/ext/apex_ext/apex_src/documentation/app-transformed/Metadata-Transforms.md +461 -0
  34. data/ext/apex_ext/apex_src/documentation/app-transformed/Modes.md +193 -0
  35. data/ext/apex_ext/apex_src/documentation/app-transformed/Multi-File-Documents.md +201 -0
  36. data/ext/apex_ext/apex_src/documentation/app-transformed/Plugins.md +678 -0
  37. data/ext/apex_ext/apex_src/documentation/app-transformed/Syntax.md +1367 -0
  38. data/ext/apex_ext/apex_src/documentation/docsets/Apex Command Line Options.cheatsheet.txt +6 -0
  39. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/C-API.html +774 -300
  40. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Callouts.html +1194 -0
  41. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Citations.html +416 -216
  42. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Command-Line-Options.html +3544 -1094
  43. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Configuration.html +371 -97
  44. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Credits.html +153 -23
  45. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Examples.html +358 -124
  46. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Filters.html +1656 -0
  47. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Generating-Man-Pages.html +1226 -0
  48. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Getting-Started.html +201 -56
  49. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Header-IDs.html +279 -109
  50. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Home.html +200 -53
  51. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Indices.html +2327 -0
  52. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Inline-Attribute-Lists.html +690 -271
  53. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Installation.html +201 -55
  54. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Limitations-and-Roadmap.html +238 -68
  55. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Metadata-Transforms.html +421 -221
  56. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Modes.html +340 -78
  57. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Multi-File-Documents.html +251 -86
  58. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Multi-Format-Images.html +1362 -0
  59. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Pandoc-Integration.html +277 -90
  60. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Plugins.html +673 -346
  61. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Quarto-Mode.html +1405 -0
  62. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Rendering-Markdown-In-Terminal.html +1902 -0
  63. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Syntax.html +1939 -1698
  64. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Tables.html +1781 -0
  65. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Troubleshooting.html +315 -140
  66. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Usage.html +307 -113
  67. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Using-Apex-with-Jekyll.html +1132 -0
  68. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Writing-Tests.html +1754 -0
  69. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/Documents/Xcode-Integration.html +872 -376
  70. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/docSet.dsidx +0 -0
  71. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/optimizedIndex.dsidx +0 -0
  72. data/ext/apex_ext/apex_src/documentation/html/apex-app-docs.html +8746 -0
  73. data/ext/apex_ext/apex_src/documentation/shared_styles.css +20 -15
  74. data/ext/apex_ext/apex_src/documentation/transform_for_app.md +55 -0
  75. data/ext/apex_ext/apex_src/escaping-repro.md +103 -0
  76. data/ext/apex_ext/apex_src/examples/quick-actions/Markdown to RTF.workflow/Contents/Info.plist +8 -0
  77. data/ext/apex_ext/apex_src/examples/quick-actions/Markdown to RTF.workflow/Contents/QuickLook/Preview.png +0 -0
  78. data/ext/apex_ext/apex_src/examples/quick-actions/Markdown to RTF.workflow/Contents/document.wflow +547 -0
  79. data/ext/apex_ext/apex_src/examples/quick-actions/Markdown-to-RTF.workflow.zip +0 -0
  80. data/ext/apex_ext/apex_src/examples/quick-actions/README.md +33 -0
  81. data/ext/apex_ext/apex_src/include/apex/apex.h +92 -6
  82. data/ext/apex_ext/apex_src/include/apex/ast_rtf.h +23 -0
  83. data/ext/apex_ext/apex_src/include/apex/ast_terminal.h +6 -0
  84. data/ext/apex_ext/apex_src/include/apex/module.modulemap +5 -0
  85. data/ext/apex_ext/apex_src/include/apex/plugins.h +105 -0
  86. data/ext/apex_ext/apex_src/include/apexc.h +1 -0
  87. data/ext/apex_ext/apex_src/man/apex.1 +82 -78
  88. data/ext/apex_ext/apex_src/man/apex.1.md +81 -4
  89. data/ext/apex_ext/apex_src/objc/Apex.swift +73 -0
  90. data/ext/apex_ext/apex_src/objc/ApexPlugins.swift +79 -0
  91. data/ext/apex_ext/apex_src/objc/NSString+Apex.h +83 -5
  92. data/ext/apex_ext/apex_src/objc/NSString+Apex.m +244 -1
  93. data/ext/apex_ext/apex_src/objc/NSString+ApexPlugins.h +76 -0
  94. data/ext/apex_ext/apex_src/objc/NSString+ApexPlugins.m +169 -0
  95. data/ext/apex_ext/apex_src/output.html +87 -0
  96. data/ext/apex_ext/apex_src/plans/quarto-mode.md +442 -0
  97. data/ext/apex_ext/apex_src/src/_README.md +85 -32
  98. data/ext/apex_ext/apex_src/src/apex.c +770 -200
  99. data/ext/apex_ext/apex_src/src/ast_rtf.c +848 -0
  100. data/ext/apex_ext/apex_src/src/ast_terminal.c +184 -7
  101. data/ext/apex_ext/apex_src/src/extensions/abbreviations.c +10 -3
  102. data/ext/apex_ext/apex_src/src/extensions/advanced_tables.c +7 -11
  103. data/ext/apex_ext/apex_src/src/extensions/bear_image_attrs.c +467 -0
  104. data/ext/apex_ext/apex_src/src/extensions/bear_image_attrs.h +27 -0
  105. data/ext/apex_ext/apex_src/src/extensions/callouts.c +400 -4
  106. data/ext/apex_ext/apex_src/src/extensions/callouts.h +15 -5
  107. data/ext/apex_ext/apex_src/src/extensions/citations.c +26 -5
  108. data/ext/apex_ext/apex_src/src/extensions/code_fence_attrs.c +632 -0
  109. data/ext/apex_ext/apex_src/src/extensions/code_fence_attrs.h +22 -0
  110. data/ext/apex_ext/apex_src/src/extensions/concordance.c +632 -0
  111. data/ext/apex_ext/apex_src/src/extensions/definition_list.c +129 -15
  112. data/ext/apex_ext/apex_src/src/extensions/grid_tables.c +1050 -121
  113. data/ext/apex_ext/apex_src/src/extensions/html_markdown.c +569 -16
  114. data/ext/apex_ext/apex_src/src/extensions/ial.c +502 -52
  115. data/ext/apex_ext/apex_src/src/extensions/ial.h +2 -1
  116. data/ext/apex_ext/apex_src/src/extensions/includes.c +532 -33
  117. data/ext/apex_ext/apex_src/src/extensions/includes.h +7 -1
  118. data/ext/apex_ext/apex_src/src/extensions/index.c +1427 -140
  119. data/ext/apex_ext/apex_src/src/extensions/index.h +28 -0
  120. data/ext/apex_ext/apex_src/src/extensions/metadata.c +200 -161
  121. data/ext/apex_ext/apex_src/src/extensions/quarto_diagrams.c +251 -0
  122. data/ext/apex_ext/apex_src/src/extensions/quarto_diagrams.h +22 -0
  123. data/ext/apex_ext/apex_src/src/extensions/quarto_lists.c +624 -0
  124. data/ext/apex_ext/apex_src/src/extensions/quarto_lists.h +35 -0
  125. data/ext/apex_ext/apex_src/src/extensions/quarto_polish.c +264 -0
  126. data/ext/apex_ext/apex_src/src/extensions/quarto_polish.h +23 -0
  127. data/ext/apex_ext/apex_src/src/extensions/quarto_shortcodes.c +307 -0
  128. data/ext/apex_ext/apex_src/src/extensions/quarto_shortcodes.h +21 -0
  129. data/ext/apex_ext/apex_src/src/extensions/raw_content.c +351 -0
  130. data/ext/apex_ext/apex_src/src/extensions/raw_content.h +20 -0
  131. data/ext/apex_ext/apex_src/src/extensions/relaxed_tables.c +117 -3
  132. data/ext/apex_ext/apex_src/src/extensions/special_markers.c +53 -0
  133. data/ext/apex_ext/apex_src/src/extensions/syntax_highlight.c +23 -1
  134. data/ext/apex_ext/apex_src/src/extensions/table_html_postprocess.c +83 -92
  135. data/ext/apex_ext/apex_src/src/extensions/toc.c +446 -25
  136. data/ext/apex_ext/apex_src/src/extensions/toc.h +26 -1
  137. data/ext/apex_ext/apex_src/src/extensions/wiki_links.c +28 -0
  138. data/ext/apex_ext/apex_src/src/html_renderer.c +387 -17
  139. data/ext/apex_ext/apex_src/src/plugin_catalog.c +517 -0
  140. data/ext/apex_ext/apex_src/src/plugins_remote.c +88 -14
  141. data/ext/apex_ext/apex_src/src/plugins_remote.h +34 -0
  142. data/ext/apex_ext/apex_src/src/pretty_html.c +6 -1
  143. data/ext/apex_ext/apex_src/tests/fixtures/comprehensive_test.md +21 -0
  144. data/ext/apex_ext/apex_src/tests/fixtures/images/bear_image_attributes.md +10 -0
  145. data/ext/apex_ext/apex_src/tests/fixtures/includes/sections.md +19 -0
  146. data/ext/apex_ext/apex_src/tests/fixtures/includes/sections.txt +11 -0
  147. data/ext/apex_ext/apex_src/tests/fixtures/minimal_pb.md +2 -0
  148. data/ext/apex_ext/apex_src/tests/fixtures/obsidian-callouts.md +46 -0
  149. data/ext/apex_ext/apex_src/tests/fixtures/pagebreak_html_repro.md +5 -0
  150. data/ext/apex_ext/apex_src/tests/fixtures/python-callouts.md +47 -0
  151. data/ext/apex_ext/apex_src/tests/fixtures/quarto/callouts.md +3 -0
  152. data/ext/apex_ext/apex_src/tests/fixtures/quarto/code-attrs.md +3 -0
  153. data/ext/apex_ext/apex_src/tests/fixtures/quarto/diagrams.md +8 -0
  154. data/ext/apex_ext/apex_src/tests/fixtures/quarto/lists.md +19 -0
  155. data/ext/apex_ext/apex_src/tests/fixtures/quarto/raw-content.md +5 -0
  156. data/ext/apex_ext/apex_src/tests/fixtures/quarto/shortcodes.md +7 -0
  157. data/ext/apex_ext/apex_src/tests/fixtures/quarto/smoke.md +81 -0
  158. data/ext/apex_ext/apex_src/tests/fixtures/quarto/spans.md +5 -0
  159. data/ext/apex_ext/apex_src/tests/fixtures/quarto-callouts.md +47 -0
  160. data/ext/apex_ext/apex_src/tests/fixtures/speed.md +192 -0
  161. data/ext/apex_ext/apex_src/tests/fixtures/tables/grid-tables.md +37 -0
  162. data/ext/apex_ext/apex_src/tests/paginate_cli_test.sh +16 -0
  163. data/ext/apex_ext/apex_src/tests/test_bear_image_attrs.c +301 -0
  164. data/ext/apex_ext/apex_src/tests/test_concordance.tsv +4 -0
  165. data/ext/apex_ext/apex_src/tests/test_escaping_repro.c +82 -0
  166. data/ext/apex_ext/apex_src/tests/test_extensions.c +821 -1
  167. data/ext/apex_ext/apex_src/tests/test_ial.c +7 -0
  168. data/ext/apex_ext/apex_src/tests/test_marked_integration.c +25 -0
  169. data/ext/apex_ext/apex_src/tests/test_metadata.c +129 -0
  170. data/ext/apex_ext/apex_src/tests/test_output.c +568 -2
  171. data/ext/apex_ext/apex_src/tests/test_runner.c +11 -0
  172. data/ext/apex_ext/apex_src/tests/test_tables.c +420 -0
  173. data/ext/apex_ext/apex_src/vendor/cmark-gfm/CMakeLists.txt +1 -1
  174. data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/autolink.c +77 -1
  175. data/ext/apex_ext/apex_src/vendor/cmark-gfm/extensions/table.c +135 -5
  176. data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/blocks.c +56 -1
  177. data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/config.h +38 -0
  178. data/ext/apex_ext/apex_src/vendor/cmark-gfm/src/main.c +1 -1
  179. data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/__pycache__/cmark.cpython-314.pyc +0 -0
  180. data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/__pycache__/normalize.cpython-314.pyc +0 -0
  181. data/ext/apex_ext/apex_src/vendor/cmark-gfm/test/extensions.txt +69 -0
  182. data/ext/apex_ext/apex_src/xcode_build/CMakeScripts/ReRunCMake.make +74 -0
  183. data/ext/apex_ext/apex_src/xcode_build/CTestTestfile.cmake +22 -0
  184. data/ext/apex_ext/apex_src/xcode_build/Debug/Apex.framework/Versions/A/Apex +0 -0
  185. data/ext/apex_ext/apex_src/xcode_build/Debug/Apex.framework/Versions/A/Resources/Info.plist +44 -0
  186. data/ext/apex_ext/apex_src/xcode_build/Debug/Apex.framework/Versions/A/_CodeSignature/CodeResources +128 -0
  187. data/ext/apex_ext/apex_src/xcode_build/apex.xcodeproj/project.pbxproj +5118 -0
  188. data/ext/apex_ext/apex_src/xcode_build/apex.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +8 -0
  189. data/ext/apex_ext/apex_src/xcode_build/apex.xcodeproj/project.xcworkspace/xcuserdata/ttscoff.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  190. data/ext/apex_ext/apex_src/xcode_build/apex.xcodeproj/project.xcworkspace/xcuserdata/ttscoff.xcuserdatad/WorkspaceSettings.xcsettings +8 -0
  191. data/ext/apex_ext/apex_src/xcode_build/apex.xcodeproj/xcuserdata/ttscoff.xcuserdatad/xcschemes/xcschememanagement.plist +99 -0
  192. data/ext/apex_ext/apex_src/xcode_build/cmake_install.cmake +452 -0
  193. data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/CMakeScripts/ReRunCMake.make +52 -0
  194. data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/cmake_install.cmake +55 -0
  195. data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/cmark-gfm.xcodeproj/project.pbxproj +2455 -0
  196. data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/cmark-gfm.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +8 -0
  197. data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/extensions/cmake_install.cmake +171 -0
  198. data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/man/cmake_install.cmake +55 -0
  199. data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/src/cmake_install.cmake +220 -0
  200. data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/src/cmark-gfm_export.h +43 -0
  201. data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/src/cmark-gfm_version.h +7 -0
  202. data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/src/config.h +76 -0
  203. data/ext/apex_ext/apex_src/xcode_build/vendor/cmark-gfm/src/libcmark-gfm.pc +10 -0
  204. data/ext/apex_ext/extconf.rb +35 -0
  205. data/lib/apex/version.rb +2 -2
  206. metadata +117 -2
  207. data/ext/apex_ext/apex_src/documentation/docsets/Apex.docset/Contents/Resources/tempOptimizedIndex.dsidx +0 -0
@@ -1,5 +1,5 @@
1
1
  <!--README-->
2
- [![Version: <!--VER-->1.0.3<!--END VER-->](https://img.shields.io/badge/Version-<!--VER-->1.0.3<!--END VER-->-528c9e)](https://github.com/ApexMarkdown/apex/releases/latest) ![](https://img.shields.io/badge/CMake-064F8C?style=for-the-badge&logo=cmake&logoColor=white) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) <!--TESTS_BADGE-->![Tests passing 1502/1502](https://img.shields.io/badge/Tests-1502/1502-a5da78)<!--END TESTS_BADGE-->
2
+ [![Version: <!--VER-->1.1.17<!--END VER-->](https://img.shields.io/badge/Version-<!--VER-->1.1.17<!--END VER-->-528c9e)](https://github.com/ApexMarkdown/apex/releases/latest) ![](https://img.shields.io/badge/CMake-064F8C?style=for-the-badge&logo=cmake&logoColor=white) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) <!--TESTS_BADGE-->![Tests passing 0/2003](https://img.shields.io/badge/Tests-0/2003-f97373)<!--END TESTS_BADGE-->
3
3
 
4
4
  <!--GITHUB-->
5
5
  # Apex
@@ -21,22 +21,41 @@ flavor. So I'm building Apex with the goal of making all of
21
21
  the most popular features of various processors available in
22
22
  one tool.
23
23
 
24
+ ## Table of Contents
25
+
26
+ - [Features](#features)
27
+ - [Compatibility Modes](#compatibility-modes)
28
+ - [Markdown Extensions](#markdown-extensions)
29
+ - [Document Features](#document-features)
30
+ - [Citations and Bibliography](#citations-and-bibliography)
31
+ - [Indices](#indices)
32
+ - [Critic Markup](#critic-markup)
33
+ - [Output Options](#output-options)
34
+ - [Advanced Features](#advanced-features)
35
+ - [Extensibility and Plugins](#extensibility-and-plugins)
36
+ - [Installation](#installation)
37
+ - [Basic Usage](#basic-usage)
38
+ - [Documentation](#documentation)
39
+ - [Contributing](#contributing)
40
+ - [License](#license)
41
+
24
42
  ## Features
25
43
 
26
44
  ### Compatibility Modes
27
45
 
28
- - **Multiple compatibility modes**: CommonMark, GFM, MultiMarkdown, Kramdown, and Unified (all features)
29
- - **Mode-specific features**: Each mode enables appropriate extensions for maximum compatibility
46
+ - **Multiple compatibility modes**: [CommonMark, GFM, MultiMarkdown, Kramdown, and Unified](https://github.com/ApexMarkdown/apex/wiki/Modes) (all features)
47
+ - **Mode-specific features**: Each mode enables appropriate extensions for maximum compatibility ([more info](https://github.com/ApexMarkdown/apex/wiki/Modes))
30
48
 
31
49
  ### Markdown Extensions
32
50
 
33
- - **Tables**: GitHub Flavored Markdown tables with advanced features (rowspan via `^^`, colspan via empty cells/`<<`, captions before/after tables including Pandoc-style `Table: Caption` and `: Caption` syntax, and individual cell alignment using colons `:Left`, `Right:`, `:Center:`)
51
+ - **Tables**: [GitHub Flavored Markdown tables](https://github.com/ApexMarkdown/apex/wiki/Tables) with advanced features (rowspan via `^^`, colspan via empty cells/`<<`, captions before/after tables including Pandoc-style `Table: Caption` and `: Caption` syntax, and individual cell alignment using colons `:Left`, `Right:`, `:Center:`)
52
+ - **Grid tables**: Pandoc-style `+---+` grid tables (opt-in with `--grid-tables`; [more info](https://github.com/ApexMarkdown/apex/wiki/Tables#grid-tables-pandoc-style))
34
53
  - **Table caption positioning**: Control caption placement with `--captions above` or `--captions below` (default: below)
35
54
  - **Table caption IAL**: IAL attributes in table captions (e.g., `: Caption {#id .class}`) are extracted and applied to the table element
36
55
  - **Relaxed tables**: Support for tables without separator rows (Kramdown-style)
37
56
  - **Headerless tables**: Support for tables that start with alignment rows (separator rows) without header rows; column alignment is automatically applied
38
- - **Footnotes**: Three syntaxes supported (reference-style, Kramdown inline, MultiMarkdown inline)
39
- - **Definition lists**: Kramdown-style definition lists with Markdown content support
57
+ - **Footnotes**: Three syntaxes supported (reference-style, Kramdown inline, MultiMarkdown inline) ([more info](https://github.com/ApexMarkdown/apex/wiki/Syntax))
58
+ - **Definition lists**: Kramdown-style definition lists with Markdown content support ([more info](https://github.com/ApexMarkdown/apex/wiki/Syntax))
40
59
  - **Task lists**: GitHub-style checkboxes (`- [ ]` and `- [x]`)
41
60
  - **Strikethrough**: `~~text~~` syntax from GFM
42
61
  - **Smart typography**: Automatic conversion of quotes, dashes, ellipses, and more
@@ -44,51 +63,53 @@ one tool.
44
63
 
45
64
  - **Syntax highlighting**: External syntax highlighting for fenced code blocks via Pygments, Skylighting, or Shiki with `--code-highlight` flag.
46
65
 
47
- Supports language-aware highlighting, auto-detection, and line numbers with `--code-line-numbers`
66
+ Supports language-aware highlighting, auto-detection, and line numbers with `--code-line-numbers` ([more info](https://github.com/ApexMarkdown/apex/wiki/Command-Line-Options))
48
67
 
49
- - **Wiki links**: `[[Page Name]]`, `[[Page Name|Display Text]]`, and `[[Page Name#Section]]` syntax with configurable link targets via `--wikilink-space` and `--wikilink-extension`
68
+ - **Wiki links**: `[[Page Name]]`, `[[Page Name|Display Text]]`, and `[[Page Name#Section]]` syntax with configurable link targets via `--wikilink-space` and `--wikilink-extension` ([more info](https://github.com/ApexMarkdown/apex/wiki/Syntax))
50
69
  - **Abbreviations**: Three syntaxes (classic MMD, MMD 6 reference, MMD 6 inline)
51
- - **Callouts**: Bear/Obsidian-style callouts with collapsible support (`> [!NOTE]`, `> [!WARNING]`, etc.)
70
+ - **Callouts**: Bear/Obsidian-style callouts with collapsible support (`> [!NOTE]`, `> [!WARNING]`, etc.), plus optional Python-Markdown (`!!!`) and Quarto (`:::`) callout parsing behind explicit flags ([more info](https://github.com/ApexMarkdown/apex/wiki/Callouts))
52
71
  - **GitHub emoji**: 350+ emoji support (`:rocket:`, `:heart:`, etc.)
53
72
 
54
73
  ### Document Features
55
74
 
56
75
  <!--JEKYLL {% raw %}-->
57
76
 
58
- - **Metadata blocks**: YAML front matter, MultiMarkdown metadata, and Pandoc title blocks
59
- - **Metadata variables**: Insert metadata values with `[%key]` syntax
77
+ - **Metadata blocks**: YAML front matter, MultiMarkdown metadata, and Pandoc title blocks ([more info](https://github.com/ApexMarkdown/apex/wiki/Syntax))
78
+ - **Metadata variables**: Insert metadata values with `[%key]` syntax ([more info](https://github.com/ApexMarkdown/apex/wiki/Configuration))
60
79
  - **Metadata transforms**: Transform metadata values with `[%key:transform]` syntax
61
80
 
62
81
  Supports case conversion, string manipulation, regex replacement, date formatting, and more.
63
82
 
64
83
  See [Metadata Transforms](https://github.com/ApexMarkdown/apex/wiki/Metadata-Transforms) for complete documentation
65
- - **Metadata control of options**: Control command-line options via metadata
84
+ - **Metadata control of options**: [Control command-line options via metadata](https://github.com/ApexMarkdown/apex/wiki/Configuration)
66
85
  - set boolean flags (`indices: false`, `wikilinks: true`) and string options (`bibliography: refs.bib`, `title: My Document`, `wikilink-space: dash`, `wikilink-extension: html`) directly in document metadata for per-document configuration
67
- - **Table of Contents**: Automatic TOC generation with depth control using HTML (`<!--TOC-->`), MMD (`{{TOC}}` / `{{TOC:2-4}}`), and Kramdown `{:toc}` markers. Headings marked with `{:.no_toc}` are excluded from the generated TOC.
68
- - **File includes**: Three syntaxes (Marked `<<[file]`, MultiMarkdown `{{file}}`, iA Writer `/file`), with support for address ranges and wildcard/glob patterns such as `{{file.*}}`, `{{*.md}}`, and `{{c?de.py}}`.
86
+ - **Table of Contents**: Automatic TOC generation with depth control using HTML (`<!--TOC-->`), MMD (`{{TOC}}` / `{{TOC:2-4}}`), and Kramdown `{:toc}` markers. Headings marked with `{:.no_toc}` are excluded from the generated TOC. ([more info](https://github.com/ApexMarkdown/apex/wiki/Syntax))
87
+ - **File includes**: Three syntaxes (Marked `<<[file]`, MultiMarkdown `{{file}}`, iA Writer `/file`), with support for address ranges and wildcard/glob patterns such as `{{file.*}}`, `{{*.md}}`, and `{{c?de.py}}`. ([more info](https://github.com/ApexMarkdown/apex/wiki/Multi-File-Documents))
69
88
  - **Markdown combiner (`--combine`)**: Concatenate one or more Markdown files into a single Markdown stream, expanding all include syntaxes.
70
89
 
71
- When a `SUMMARY.md` file is provided, Apex treats it as a GitBook-style index and combines the linked files in order, perfect for building books, multi-file indices, and shared tables of contents that can then be piped back into Apex for final rendering.
90
+ When a `SUMMARY.md` file is provided, Apex treats it as a GitBook-style index and combines the linked files in order, perfect for building books, multi-file indices, and shared tables of contents that can then be piped back into Apex for final rendering. ([more info](https://github.com/ApexMarkdown/apex/wiki/Multi-File-Documents))
72
91
  - **MultiMarkdown merge (`--mmd-merge`)**: Read one or more mmd_merge-style index files and stitch their referenced documents into a single Markdown stream.
73
92
 
74
93
  Each non-empty, non-comment line specifies a file to include; indentation with tabs or four-space groups shifts all headings in that file down by one level per indent, mirroring the original `mmd_merge.pl` behavior.
75
94
 
76
- Output is raw Markdown that can be piped into Apex (e.g., `apex --mmd-merge index.txt | apex --mode mmd`).
95
+ Output is raw Markdown that can be piped into Apex (e.g., `apex --mmd-merge index.txt | apex --mode mmd`). ([more info](https://github.com/ApexMarkdown/apex/wiki/Multi-File-Documents))
77
96
 
78
- - **CSV/TSV support**: Automatic table conversion from CSV and TSV files
79
- - **Inline Attribute Lists (IAL)**: Kramdown-style attributes `{: #id .class}` and Pandoc-style attributes `{#id .class}`
97
+ - **CSV/TSV support**: Automatic table conversion from CSV and TSV files ([more info](https://github.com/ApexMarkdown/apex/wiki/Tables))
98
+ - **Inline Attribute Lists (IAL)**: [Kramdown-style attributes](https://github.com/ApexMarkdown/apex/wiki/Inline-Attribute-Lists) `{: #id .class}` and Pandoc-style attributes `{#id .class}`
80
99
 
81
100
  Both formats work in all contexts (block-level, inline, paragraphs, headings, table captions)
82
- - **Bracketed spans**: Convert `[text]{IAL}` syntax to HTML span elements with attributes, enabled by default in unified mode
101
+ - **Bracketed spans**: Convert `[text]{IAL}` syntax to HTML span elements with attributes, enabled by default in unified mode ([more info](https://github.com/ApexMarkdown/apex/wiki/Syntax))
83
102
  - **Fenced divs**: Pandoc-style fenced divs `::::: {#id .class} ... :::::` for creating custom block containers, enabled by default in unified mode.
84
103
 
85
- Supports block type syntax `>blocktype` to create different HTML elements (e.g., `::: >aside {.sidebar}` creates `<aside>` instead of `<div>`). Common block types include `aside`, `article`, `section`, `details`, `summary`, `header`, `footer`, `nav`, and custom elements
86
- - **Image IAL support**: Inline and reference-style images support IAL syntax with automatic width/height conversion (percentages and non-integer/non-px values convert to style attributes, Xpx values convert to integer width/height attributes, bare integers remain as width/height attributes)
104
+ Supports block type syntax `>blocktype` to create different HTML elements (e.g., `::: >aside {.sidebar}` creates `<aside>` instead of `<div>`). Common block types include `aside`, `article`, `section`, `details`, `summary`, `header`, `footer`, `nav`, and custom elements ([more info](https://github.com/ApexMarkdown/apex/wiki/Syntax))
105
+ - **Image IAL support**: Inline and reference-style images support IAL syntax with automatic width/height conversion (percentages and non-integer/non-px values convert to style attributes, Xpx values convert to integer width/height attributes, bare integers remain as width/height attributes) ([more info](https://github.com/ApexMarkdown/apex/wiki/Multi-Format-Images))
87
106
  - **Special markers**: Page breaks (`<!--BREAK-->`), autoscroll pauses (`<!--PAUSE:N-->`), end-of-block markers
88
107
  <!--JEKYLL {% endraw %}-->
89
108
 
90
109
  ### Citations and Bibliography
91
110
 
111
+ See the [Citations and Bibliography](https://github.com/ApexMarkdown/apex/wiki/Citations) wiki page for a complete guide.
112
+
92
113
  - **Multiple citation syntaxes**: Pandoc (`[@key]`), MultiMarkdown (`[#key]`), and mmark (`[@RFC1234]`) styles
93
114
  - **Bibliography formats**: Support for BibTeX (`.bib`), CSL JSON (`.json`), and CSL YAML (`.yml`, `.yaml`) formats
94
115
  - **Automatic bibliography generation**: Bibliography automatically generated from cited entries
@@ -100,6 +121,8 @@ one tool.
100
121
 
101
122
  ### Indices
102
123
 
124
+ See the [Indices](https://github.com/ApexMarkdown/apex/wiki/Indices) wiki page for syntax and examples.
125
+
103
126
  - **mmark syntax**: `(!item)`, `(!item, subitem)`, `(!!item, subitem)` for primary entries
104
127
  - **TextIndex syntax**: `{^}`, `[term]{^}`, `{^params}` for flexible indexing
105
128
  - **Automatic index generation**: Index automatically generated at end of document or at `<!--INDEX-->` marker
@@ -109,7 +132,7 @@ one tool.
109
132
 
110
133
  ### Critic Markup
111
134
 
112
- - **Change tracking**: Additions (`{++text++}`), deletions (`{--text--}`), substitutions (`{~~old~>new~~}`)
135
+ - **Change tracking**: Additions (`{++text++}`), deletions (`{--text--}`), substitutions (`{~~old~>new~~}`) ([more info](https://github.com/ApexMarkdown/apex/wiki/Syntax))
113
136
  - **Annotations**: Highlights (`{==text==}`) and comments (`{>>text<<}`)
114
137
  - **Accept mode**: `--accept` flag to apply all changes for final output
115
138
  - **Reject mode**: `--reject` flag to revert all changes to original
@@ -121,11 +144,13 @@ one tool.
121
144
  - **Custom styling**: Link multiple external CSS files in standalone mode (use `--css` multiple times or comma-separated list)
122
145
  - **Syntax highlighting**: External syntax highlighting via Pygments, Skylighting, or Shiki with `--code-highlight` flag, includes automatic GitHub-style CSS in standalone mode
123
146
  - **Pretty-print**: Formatted HTML with proper indentation for readability
124
- - **XHTML output**: `--xhtml` writes void/empty elements in XML form (`<br />`, `<meta ... />`). `--strict-xhtml` adds polyglot XHTML document scaffolding when used with `--standalone` (XML declaration, XHTML namespace, `Content-Type` meta). You can also select the same behavior with `-t xhtml` or `-t strict-xhtml` (aliases for HTML output with those flags). In **fragment** mode, strict mode does not validate or repair all markup as XMLraw HTML can still be ill-formed; see the main README.
125
- - **Header ID generation**: Automatic or manual header IDs with multiple format options (GFM, MMD, Kramdown)
147
+ - **XHTML output**: `--xhtml` writes void/empty elements in XML form (`<br />`, `<meta ... />`). `--strict-xhtml` adds polyglot XHTML document scaffolding when used with `--standalone` (XML declaration, XHTML namespace, `Content-Type` meta). You can also select the same behavior with `-t xhtml` or `-t strict-xhtml` (aliases for HTML output with those flags). In **fragment** mode, strict mode does not validate or repair all markup as XML; raw HTML can still be ill-formed.
148
+ - **Header ID generation**: [Automatic or manual header IDs](https://github.com/ApexMarkdown/apex/wiki/Header-IDs) with multiple format options (GFM, MMD, Kramdown)
126
149
  - **Emoji-to-name conversion**: In GFM mode, emojis in headers are converted to their textual names in IDs (e.g., `# 😄 Support` → `id="smile-support"`), matching Pandoc's GFM behavior
127
150
  - **Header anchors**: Option to generate `<a>` anchor tags instead of header IDs
128
151
  - **ARIA accessibility**: Add ARIA labels and accessibility attributes (`--aria`) for better screen reader support, including aria-label on TOC navigation, role attributes on figures and tables, and aria-describedby linking tables to their captions
152
+ - **Terminal output**: Render Markdown in the terminal with `-t terminal` / `-t terminal256`, themes, pagination, and optional inline images ([more info](https://github.com/ApexMarkdown/apex/wiki/Rendering-Markdown-In-Terminal))
153
+ - **RTF output**: Native Rich Text Format via `-t rtf` (files and `NSAttributedString`); see clipboard notes in [Command Line Options](https://github.com/ApexMarkdown/apex/wiki/Command-Line-Options)
129
154
  - **Terminal inline images**: With `-t terminal` / `-t terminal256`, when stdout is a TTY and a viewer is available on `PATH`, Markdown images are rendered as inline terminal graphics (viewer order: `imgcat`, `chafa`, `viu`, `catimg`). Width is controlled with `--terminal-image-width` (default 50 character cells). HTTP(S) URLs are downloaded with `curl` (60s timeout, 10 MiB max) to a temp file under `TMPDIR` or `/tmp`. Use `--no-terminal-images` to always show images as styled link text plus URL instead. Metadata: `terminal.inline_images` / `terminal_inline_images`, `terminal.image_width` / `terminal_image_width`.
130
155
 
131
156
  ### Advanced Features
@@ -155,13 +180,18 @@ When installing from a direct Git URL or GitHub repo name,
155
180
  Apex will prompt with a security warning before cloning,
156
181
  since plugins execute unverified code.
157
182
 
158
- For a complete guide to writing, installing, and publishing plugins, see the [Plugins](https://github.com/ApexMarkdown/apex/wiki/Plugins) page in the Apex Wiki.
183
+ For a complete guide to writing, installing, and publishing plugins, see the [Plugins](https://github.com/ApexMarkdown/apex/wiki/Plugins) page in the Apex Wiki. App developers can also use the [plugin catalog API](https://github.com/ApexMarkdown/apex/wiki/Xcode-Integration#plugin-catalog-and-installation) from Swift or Objective-C ([C API](https://github.com/ApexMarkdown/apex/wiki/C-API#plugin-catalog-api)).
184
+
185
+ **AST filters** (Pandoc-style JSON filters) are also supported via `--filter`, `--filters`, and `--lua-filter`. See [Filters](https://github.com/ApexMarkdown/apex/wiki/Filters).
159
186
 
160
187
  ## Installation
161
188
 
189
+ See the [Installation](https://github.com/ApexMarkdown/apex/wiki/Installation) wiki page for additional build options and platform notes.
190
+
162
191
  ### Homebrew (macOS/Linux)
163
192
 
164
193
  ```bash
194
+ brew trust ttscoff/thelab
165
195
  brew tap ttscoff/thelab
166
196
  brew install ttscoff/thelab/apex
167
197
 
@@ -197,6 +227,8 @@ Download pre-built binaries from the [latest release](https://github.com/ApexMar
197
227
 
198
228
  ## Basic Usage
199
229
 
230
+ See [Usage](https://github.com/ApexMarkdown/apex/wiki/Usage) and [Getting Started](https://github.com/ApexMarkdown/apex/wiki/Getting-Started) for more examples.
231
+
200
232
  ### Command Line
201
233
 
202
234
  ```bash
@@ -216,7 +248,7 @@ apex input.md --pretty
216
248
 
217
249
  ### Processing Modes
218
250
 
219
- Apex supports multiple compatibility modes:
251
+ Apex supports multiple [compatibility modes](https://github.com/ApexMarkdown/apex/wiki/Modes):
220
252
 
221
253
  - `--mode commonmark` - Pure CommonMark specification
222
254
  - `--mode gfm` - GitHub Flavored Markdown
@@ -237,6 +269,8 @@ apex input.md --mode kramdown
237
269
 
238
270
  ### Common Options
239
271
 
272
+ See [Command Line Options](https://github.com/ApexMarkdown/apex/wiki/Command-Line-Options) for the full reference.
273
+
240
274
  - `--pretty` - Pretty-print HTML with indentation
241
275
 
242
276
  `--standalone` - Generate complete HTML document with `<html>`, `<head>`, `<body>`
@@ -292,6 +326,10 @@ apex input.md --mode kramdown
292
326
 
293
327
  syntax (enabled by default in unified mode)
294
328
 
329
+ - `--py-callouts` / `--no-py-callouts` - Enable/disable Python-Markdown callout syntax (`!!!`) plus markdown-callouts label syntax (`NOTE: ...`, `>? NOTE: ...`) (disabled by default)
330
+
331
+ - `--quarto-callouts` / `--no-quarto-callouts` - Enable/disable Quarto `:::` callout syntax for `.callout-*` blocks (disabled by default; recognized callouts bypass generic div processing)
332
+
295
333
  `--spans` / `--no-spans` - Enable/disable bracketed spans `[text]{IAL}` syntax (enabled by default in unified mode)
296
334
 
297
335
  `--code-highlight TOOL` - Use external tool for syntax highlighting (supports `pygments`/`p`/`pyg`, `skylighting`/`s`/`sky`, or `shiki`/`sh`). Uses HTML or ANSI output based on destination format. Automatically includes GitHub-style CSS in standalone mode
@@ -313,6 +351,8 @@ different settings when processing batches. Boolean options
313
351
  accept `true`/`false`, `yes`/`no`, or `1`/`0`
314
352
  (case-insensitive). String options use the value directly.
315
353
 
354
+ See [Configuration](https://github.com/ApexMarkdown/apex/wiki/Configuration) for the complete list of metadata-controlled options.
355
+
316
356
  **Example:**
317
357
 
318
358
  ```yaml
@@ -335,11 +375,24 @@ For complete documentation, see the [Apex Wiki](https://github.com/ApexMarkdown/
335
375
 
336
376
  Key documentation pages:
337
377
 
338
- [Citations and Bibliography](https://github.com/ApexMarkdown/apex/wiki/Citations) - Complete guide to citations and bibliographies
339
-
340
- [Command Line Options](https://github.com/ApexMarkdown/apex/wiki/Command-Line-Options) - All CLI flags explained
341
-
342
- [Syntax Reference](https://github.com/ApexMarkdown/apex/wiki/Syntax) - Complete syntax reference
378
+ - [Getting Started](https://github.com/ApexMarkdown/apex/wiki/Getting-Started) - Your first steps with Apex
379
+ - [Installation](https://github.com/ApexMarkdown/apex/wiki/Installation) - Build and install options
380
+ - [Usage](https://github.com/ApexMarkdown/apex/wiki/Usage) - Basic usage examples
381
+ - [Syntax](https://github.com/ApexMarkdown/apex/wiki/Syntax) - Complete syntax reference
382
+ - [Modes](https://github.com/ApexMarkdown/apex/wiki/Modes) - Processor compatibility modes
383
+ - [Tables](https://github.com/ApexMarkdown/apex/wiki/Tables) - Table syntax, captions, rowspan/colspan
384
+ - [Callouts](https://github.com/ApexMarkdown/apex/wiki/Callouts) - Callout formats and flags
385
+ - [Command Line Options](https://github.com/ApexMarkdown/apex/wiki/Command-Line-Options) - All CLI flags explained
386
+ - [Configuration](https://github.com/ApexMarkdown/apex/wiki/Configuration) - Metadata-controlled options
387
+ - [Multi-File Documents](https://github.com/ApexMarkdown/apex/wiki/Multi-File-Documents) - `--combine`, `--mmd-merge`, includes
388
+ - [Citations](https://github.com/ApexMarkdown/apex/wiki/Citations) - Citations and bibliographies
389
+ - [Indices](https://github.com/ApexMarkdown/apex/wiki/Indices) - Index generation
390
+ - [Plugins](https://github.com/ApexMarkdown/apex/wiki/Plugins) - Plugin system and recipes
391
+ - [Filters](https://github.com/ApexMarkdown/apex/wiki/Filters) - AST filters
392
+ - [Xcode Integration](https://github.com/ApexMarkdown/apex/wiki/Xcode-Integration) - Swift Package Manager and app integration
393
+ - [C API](https://github.com/ApexMarkdown/apex/wiki/C-API) - Programmatic API
394
+ - [Pandoc Integration](https://github.com/ApexMarkdown/apex/wiki/Pandoc-Integration) - Use Apex with Pandoc
395
+ - [Troubleshooting](https://github.com/ApexMarkdown/apex/wiki/Troubleshooting) - Common issues
343
396
 
344
397
  ## Contributing
345
398
 
@@ -356,5 +409,5 @@ Please note the [tests requirement for new features](https://github.com/ApexMark
356
409
 
357
410
  ## License
358
411
 
359
- This project is licensed under the MIT License - see the [LICENSE]([LICENSE](https://github.com/ApexMarkdown/apex/blob/main/LICENSE)) file for details.
412
+ This project is licensed under the MIT License - see the [LICENSE](https://github.com/ApexMarkdown/apex/blob/main/LICENSE) file for details.
360
413
  <!--END README-->