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,4 +1,10 @@
1
- /* Base styles */
1
+ :root {
2
+ /* border-box width of the fixed sidebar; body offset includes a small gap */
3
+ --sidebar-width: 250px;
4
+ --sidebar-offset: 270px;
5
+ }
6
+
7
+ /* Base styles — override Apex standalone centering (max-width + margin: auto) */
2
8
  body {
3
9
  -webkit-font-smoothing: antialiased;
4
10
  -moz-osx-font-smoothing: grayscale;
@@ -8,6 +14,11 @@ body {
8
14
  line-height: 1.65;
9
15
  color: #1e293b;
10
16
  background-color: #fff;
17
+ max-width: none;
18
+ width: auto;
19
+ margin: 2rem 2rem 2rem var(--sidebar-offset);
20
+ padding: 0 1rem;
21
+ box-sizing: border-box;
11
22
  }
12
23
 
13
24
  /* Sidebar / Main TOC - wider on larger screens */
@@ -16,9 +27,10 @@ body {
16
27
  position: fixed;
17
28
  left: 0;
18
29
  top: 0;
19
- width: auto;
20
- min-width: 180px;
21
- max-width: 250px;
30
+ box-sizing: border-box;
31
+ width: var(--sidebar-width);
32
+ min-width: var(--sidebar-width);
33
+ max-width: var(--sidebar-width);
22
34
  height: 100vh;
23
35
  overflow-y: auto;
24
36
  background: #1e293b;
@@ -27,7 +39,6 @@ body {
27
39
  padding: 24px 20px 130px;
28
40
  font-size: 14px;
29
41
  z-index: 100;
30
- margin-right: 1rem;
31
42
  box-shadow: 4px 0 24px rgba(0, 0, 0, 0.08);
32
43
  transition: transform 0.3s ease;
33
44
  }
@@ -76,11 +87,6 @@ body {
76
87
  font-weight: 500;
77
88
  }
78
89
 
79
- /* Body margin for sidebar */
80
- body {
81
- margin-left: 270px;
82
- }
83
-
84
90
  /* Hamburger menu button */
85
91
  .hamburger-menu {
86
92
  display: none;
@@ -96,6 +102,7 @@ body {
96
102
  color: rgba(255, 255, 255, 0.9);
97
103
  font-size: 20px;
98
104
  line-height: 1;
105
+ box-sizing: border-box;
99
106
  width: 44px;
100
107
  height: 44px;
101
108
  align-items: center;
@@ -113,9 +120,7 @@ body {
113
120
 
114
121
  /* Move hamburger to the right of the sidebar when menu is open */
115
122
  .hamburger-menu.active {
116
- left: calc(
117
- 250px + 12px
118
- ); /* Position just to the right of sidebar (max-width 250px + 12px padding) */
123
+ left: calc(var(--sidebar-width) + 12px);
119
124
  }
120
125
 
121
126
  .hamburger-menu.active {
@@ -211,7 +216,7 @@ body {
211
216
  .floating-toc {
212
217
  position: fixed;
213
218
  top: 0;
214
- left: 270px;
219
+ left: var(--sidebar-offset);
215
220
  right: 0;
216
221
  z-index: 50;
217
222
  opacity: 0;
@@ -637,7 +642,7 @@ ol ul {
637
642
  }
638
643
 
639
644
  body {
640
- margin-left: 0;
645
+ margin: 2rem 1rem;
641
646
  }
642
647
 
643
648
  .floating-toc {
@@ -0,0 +1,55 @@
1
+ # Transform Documentation for App Usage
2
+
3
+ You are transforming Apex documentation from command-line focused to app-focused. The target audience is users of a Markdown processing app (like Marked.app) rather than command-line users.
4
+
5
+ ## Your Task
6
+
7
+ Transform the provided Markdown documentation to be app-focused by:
8
+
9
+ 1. **Remove all command-line code blocks** - Any code blocks that show `apex` commands should be removed entirely. These commands are run by the app automatically, not by the user.
10
+
11
+ 2. **Replace CLI references with app descriptions** - When documentation mentions command-line flags like `--mode` or `--plugins`, replace them with descriptions of how to access these features in the app's Settings menu.
12
+
13
+ 3. **Rewrite examples for app context** - Instead of showing command-line examples, describe what happens in the app or what settings to configure.
14
+
15
+ 4. **Keep technical content** - Preserve all syntax explanations, feature descriptions, and technical details. Only remove or rewrite the command-line usage parts.
16
+
17
+ 5. **Maintain structure** - Keep all headings, lists, and formatting. Only modify content that relates to command-line usage.
18
+
19
+ ## Examples
20
+
21
+ **Before (CLI-focused):**
22
+ ```bash
23
+ apex document.md --mode gfm --standalone -o output.html
24
+ ```
25
+
26
+ **After (App-focused):**
27
+ Set the processor mode to GFM in **Settings->Processor->Mode** and enable **Settings->Output->Standalone HTML**, then export your document.
28
+
29
+ **Before:**
30
+ ```bash
31
+ apex --combine intro.md chapter1.md chapter2.md | apex --standalone --title "My Book" -o book.html
32
+ ```
33
+
34
+ **After:**
35
+ Use **Settings->Processor->Combine Files** to combine multiple files. The app will automatically process includes and generate standalone HTML with your configured title.
36
+
37
+ **Before:**
38
+ To enable plugins, use:
39
+ ```bash
40
+ apex --plugins input.md
41
+ ```
42
+
43
+ **After:**
44
+ Enable plugins by checking **Settings->Processor->Include Plugins**.
45
+
46
+ ## Guidelines
47
+
48
+ - Remove code blocks that are purely command-line examples
49
+ - Keep code blocks that show Markdown syntax examples
50
+ - Keep code blocks that show configuration files (YAML, etc.)
51
+ - Replace CLI flag mentions with Settings menu paths
52
+ - Use natural language to describe app workflows instead of command syntax
53
+ - Maintain all technical accuracy about features and syntax
54
+
55
+ Now transform the following Markdown content:
@@ -0,0 +1,103 @@
1
+ # Apex: escaping & Unicode repro cases
2
+
3
+ Use this file in the Apex test harness or `Apex.convert(..., mode: .unified)` to verify behavior and drive fixes.
4
+
5
+ **Automated coverage:** the same scenarios are exercised in `tests/test_escaping_repro.c`. From the build directory run `./apex_test_runner escaping` (or `escaping_repro`).
6
+
7
+ **Reference:** [CommonMark spec — Escaping](https://spec.commonmark.org/0.31.2/#backslash-escapes) (inlines), [Images](https://spec.commonmark.org/0.31.2/#images).
8
+
9
+ ---
10
+
11
+ ## 1. Backslash before `[` after `!` (false image opener)
12
+
13
+ **Intent:** `!\[` should render as literal `!` + `[`, not start an image.
14
+
15
+ ### 1a — Escaped bracket (spec expectation)
16
+
17
+ ```markdown
18
+ Not an image: !\[literal bracket after bang]
19
+ ```
20
+
21
+ **Expected (typical cmark):** Plain text: `Not an image: ![literal bracket after bang]` (no `<img>`, no swallowed tail).
22
+
23
+ ---
24
+
25
+ ### 1b — Same as blog HTML→MD glitch (sentence + link)
26
+
27
+ ```markdown
28
+ I'm so glad you're all here![ Now that the update is slowing down, I will continue.
29
+ ```
30
+
31
+ **Problem:** If `![` is parsed as an image, the parser may consume until a far `]` and drop or merge paragraphs.
32
+
33
+ **Workaround in consumers:** Insert a separator between `!` and `[` (e.g. narrow no-break space U+202F) so `![` is not contiguous.
34
+
35
+ ---
36
+
37
+ ## 2. Unicode double prime U+2033 (`″`) after ASCII (inches)
38
+
39
+ **Note:** The inch mark below is **U+2033 DOUBLE PRIME** (not ASCII `0x22`).
40
+
41
+ ```markdown
42
+ Height in parentheses: (He's 5'7″ if you're wondering.) More text after the parens.
43
+ ```
44
+
45
+ **Things to check:**
46
+
47
+ - Full sentence through `More text after the parens.` appears in HTML.
48
+ - No truncation immediately after `″` or after the word `if`.
49
+ - If output stops early, compare with the same line using ASCII inch mark only:
50
+
51
+ ```markdown
52
+ Height in parentheses: (He's 5'7" if you're wondering.) More text after the parens.
53
+ ```
54
+
55
+ ---
56
+
57
+ ## 3. Minimal line — prime only
58
+
59
+ **U+2033 only:**
60
+
61
+ ```markdown
62
+ X″ Y
63
+ ```
64
+
65
+ **ASCII control:**
66
+
67
+ ```markdown
68
+ X" Y
69
+ ```
70
+
71
+ If `X″ Y` truncates or errors but `X" Y` does not, isolate UTF-8 / lexer / serializer around U+2033.
72
+
73
+ ---
74
+
75
+ ## 4. True image (sanity check)
76
+
77
+ Should still parse as an image:
78
+
79
+ ```markdown
80
+ ![alt text](https://example.com/image.png)
81
+ ```
82
+
83
+ ---
84
+
85
+ ## 5. Glued bold after paragraph (optional stress test)
86
+
87
+ Some pipelines truncate when `**` is glued without a newline:
88
+
89
+ ```markdown
90
+ End of paragraph with a closing paren. (He's 5'7″ if you're wondering.) Hope this helps.**Next section** starts here.
91
+ ```
92
+
93
+ **Check:** Entire line preserved; `**Next section**` renders as strong, not broken emphasis across the whole block.
94
+
95
+ ---
96
+
97
+ ## Summary for implementers
98
+
99
+ | # | Topic | What to verify / fix |
100
+ |---|--------|----------------------|
101
+ | 1 | `!\[` | Matches CommonMark escape rules in unified mode. |
102
+ | 2 | `″` (U+2033) | No truncation vs ASCII `"` for otherwise identical strings. |
103
+ | 3 | False `![` | Document that unescaped `![` is an image opener; optional lenient mode is non-standard. |
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>CFBundleName</key>
6
+ <string>Markdown to RTF</string>
7
+ </dict>
8
+ </plist>