asciidocsy 0.3.0.pre.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (337) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +201 -0
  3. data/_config.yml +66 -0
  4. data/_data/theme/alerts.yml +21 -0
  5. data/_data/theme/blocks.yml +33 -0
  6. data/_data/theme/forms.yml +72 -0
  7. data/_data/theme/navigation.yml +53 -0
  8. data/_data/theme/page-actions.yml +83 -0
  9. data/_data/theme/policies.yml +68 -0
  10. data/_data/theme/release-hx.yml +163 -0
  11. data/_data/theme/scripts.yml +43 -0
  12. data/_data/theme/semantics.yml +14 -0
  13. data/_data/theme/strings.yml +13 -0
  14. data/_data/theme/styles.yml +8 -0
  15. data/_docs/snippets/example_tabset-source.adoc +60 -0
  16. data/_docs/snippets/example_tabset-source_data.json +16 -0
  17. data/_docs/snippets/example_tabset-source_data.xml +17 -0
  18. data/_docs/snippets/example_tabset-source_data.yml +10 -0
  19. data/_docs/snippets/example_toggles.adoc +25 -0
  20. data/_docs/snippets/handlers-table.adoc +40 -0
  21. data/_docs/snippets/reference-cluster.adoc +1 -0
  22. data/_docs/topics/advanced-applications_c.adoc +50 -0
  23. data/_docs/topics/config-api_r.adoc +21 -0
  24. data/_docs/topics/config-release-hx.adoc +4 -0
  25. data/_docs/topics/config-search-algolia.adoc +77 -0
  26. data/_docs/topics/config-search.adoc +47 -0
  27. data/_docs/topics/config-semantics.adoc +45 -0
  28. data/_docs/topics/config-switcher_r.adoc +33 -0
  29. data/_docs/topics/config-tabber_r.adoc +49 -0
  30. data/_docs/topics/config-toggle_r.adoc +20 -0
  31. data/_docs/topics/config-versioning-amenders_r.adoc +76 -0
  32. data/_docs/topics/config-versioning-swaps_r.adoc +193 -0
  33. data/_docs/topics/config-versioning-tabsets_r.adoc +51 -0
  34. data/_docs/topics/config-versioning-toggles_r.adoc +42 -0
  35. data/_docs/topics/config-versioning.adoc +134 -0
  36. data/_docs/topics/config_r.adoc +131 -0
  37. data/_docs/topics/extend.adoc +70 -0
  38. data/_docs/topics/frontend-overview.adoc +62 -0
  39. data/_docs/topics/intro.adoc +6 -0
  40. data/_docs/topics/setup-bootstrap_t.adoc +71 -0
  41. data/_docs/topics/setup-environment_rg.adoc +65 -0
  42. data/_docs/topics/setup-quickstart_t.adoc +10 -0
  43. data/_docs/topics/setup.adoc +31 -0
  44. data/_docs/topics/syntax-highlighter-examples_r.adoc +172 -0
  45. data/_docs/topics/toolchain.adoc +79 -0
  46. data/_docs/topics/upgrade-0-3-0.adoc +49 -0
  47. data/_includes/_settings.liquid +2 -0
  48. data/_includes/_variables.sass +12 -0
  49. data/_includes/breadcrumbs.html +20 -0
  50. data/_includes/breadcrumbs_alt.html +6 -0
  51. data/_includes/config-api-objects.asciidoc +23 -0
  52. data/_includes/config-api-properties.asciidoc +29 -0
  53. data/_includes/config-api.asciidoc +29 -0
  54. data/_includes/feedback.html +59 -0
  55. data/_includes/footer-links_sup.html +5 -0
  56. data/_includes/footer.html +59 -0
  57. data/_includes/gdpr-message.html +41 -0
  58. data/_includes/google-analytics.html +11 -0
  59. data/_includes/head.html +74 -0
  60. data/_includes/header.html +22 -0
  61. data/_includes/hook.liquid +26 -0
  62. data/_includes/nav-site.html +30 -0
  63. data/_includes/nav-subject-menu.html +49 -0
  64. data/_includes/page-links.html +45 -0
  65. data/_includes/path-active.liquid +18 -0
  66. data/_includes/release-hx-change.asciidoc +7 -0
  67. data/_includes/release-hx-changes-listing.asciidoc +14 -0
  68. data/_includes/release-hx-note.asciidoc +54 -0
  69. data/_includes/release-hx-notes-listing.asciidoc +16 -0
  70. data/_includes/release-hx-revision.asciidoc +86 -0
  71. data/_includes/release-hx.asciidoc +57 -0
  72. data/_includes/scripts.html +8 -0
  73. data/_includes/search-form.html +113 -0
  74. data/_includes/see-also.html +17 -0
  75. data/_includes/social-links.html +10 -0
  76. data/_includes/string-eval.liquid +38 -0
  77. data/_includes/tail.html +7 -0
  78. data/_includes/theme-api-object-sub.asciidoc +4 -0
  79. data/_includes/theme-api-object.asciidoc +35 -0
  80. data/_includes/version-handler.html +245 -0
  81. data/_includes/versioning-controls.html +88 -0
  82. data/_layouts/default.html +94 -0
  83. data/_layouts/landing.html +28 -0
  84. data/_layouts/page.html +9 -0
  85. data/_layouts/post.html +8 -0
  86. data/_layouts/reference.html +6 -0
  87. data/_layouts/search.html +110 -0
  88. data/_layouts/topic.html +19 -0
  89. data/_sass/_asciidocsy.scss +698 -0
  90. data/_sass/_custom.scss +3 -0
  91. data/_sass/bootstrap/_alert.scss +51 -0
  92. data/_sass/bootstrap/_badge.scss +54 -0
  93. data/_sass/bootstrap/_breadcrumb.scss +41 -0
  94. data/_sass/bootstrap/_button-group.scss +163 -0
  95. data/_sass/bootstrap/_buttons.scss +137 -0
  96. data/_sass/bootstrap/_card.scss +289 -0
  97. data/_sass/bootstrap/_carousel.scss +197 -0
  98. data/_sass/bootstrap/_close.scss +41 -0
  99. data/_sass/bootstrap/_code.scss +48 -0
  100. data/_sass/bootstrap/_custom-forms.scss +507 -0
  101. data/_sass/bootstrap/_dropdown.scss +191 -0
  102. data/_sass/bootstrap/_forms.scss +330 -0
  103. data/_sass/bootstrap/_functions.scss +86 -0
  104. data/_sass/bootstrap/_grid.scss +52 -0
  105. data/_sass/bootstrap/_images.scss +42 -0
  106. data/_sass/bootstrap/_input-group.scss +193 -0
  107. data/_sass/bootstrap/_jumbotron.scss +17 -0
  108. data/_sass/bootstrap/_list-group.scss +149 -0
  109. data/_sass/bootstrap/_media.scss +8 -0
  110. data/_sass/bootstrap/_mixins.scss +47 -0
  111. data/_sass/bootstrap/_modal.scss +229 -0
  112. data/_sass/bootstrap/_nav.scss +120 -0
  113. data/_sass/bootstrap/_navbar.scss +294 -0
  114. data/_sass/bootstrap/_pagination.scss +73 -0
  115. data/_sass/bootstrap/_popover.scss +171 -0
  116. data/_sass/bootstrap/_print.scss +141 -0
  117. data/_sass/bootstrap/_progress.scss +43 -0
  118. data/_sass/bootstrap/_reboot.scss +483 -0
  119. data/_sass/bootstrap/_root.scss +19 -0
  120. data/_sass/bootstrap/_spinners.scss +55 -0
  121. data/_sass/bootstrap/_tables.scss +185 -0
  122. data/_sass/bootstrap/_toasts.scss +44 -0
  123. data/_sass/bootstrap/_tooltip.scss +115 -0
  124. data/_sass/bootstrap/_transitions.scss +20 -0
  125. data/_sass/bootstrap/_type.scss +125 -0
  126. data/_sass/bootstrap/_utilities.scss +17 -0
  127. data/_sass/bootstrap/_variables.scss +1123 -0
  128. data/_sass/bootstrap/bootstrap-grid.scss +29 -0
  129. data/_sass/bootstrap/bootstrap-reboot.scss +12 -0
  130. data/_sass/bootstrap/bootstrap.scss +44 -0
  131. data/_sass/bootstrap/mixins/_alert.scss +13 -0
  132. data/_sass/bootstrap/mixins/_background-variant.scss +21 -0
  133. data/_sass/bootstrap/mixins/_badge.scss +17 -0
  134. data/_sass/bootstrap/mixins/_border-radius.scss +63 -0
  135. data/_sass/bootstrap/mixins/_box-shadow.scss +20 -0
  136. data/_sass/bootstrap/mixins/_breakpoints.scss +123 -0
  137. data/_sass/bootstrap/mixins/_buttons.scss +107 -0
  138. data/_sass/bootstrap/mixins/_caret.scss +62 -0
  139. data/_sass/bootstrap/mixins/_clearfix.scss +7 -0
  140. data/_sass/bootstrap/mixins/_deprecate.scss +10 -0
  141. data/_sass/bootstrap/mixins/_float.scss +14 -0
  142. data/_sass/bootstrap/mixins/_forms.scss +192 -0
  143. data/_sass/bootstrap/mixins/_gradients.scss +45 -0
  144. data/_sass/bootstrap/mixins/_grid-framework.scss +66 -0
  145. data/_sass/bootstrap/mixins/_grid.scss +51 -0
  146. data/_sass/bootstrap/mixins/_hover.scss +37 -0
  147. data/_sass/bootstrap/mixins/_image.scss +36 -0
  148. data/_sass/bootstrap/mixins/_list-group.scss +21 -0
  149. data/_sass/bootstrap/mixins/_lists.scss +7 -0
  150. data/_sass/bootstrap/mixins/_nav-divider.scss +10 -0
  151. data/_sass/bootstrap/mixins/_pagination.scss +22 -0
  152. data/_sass/bootstrap/mixins/_reset-text.scss +17 -0
  153. data/_sass/bootstrap/mixins/_resize.scss +6 -0
  154. data/_sass/bootstrap/mixins/_screen-reader.scss +33 -0
  155. data/_sass/bootstrap/mixins/_size.scss +7 -0
  156. data/_sass/bootstrap/mixins/_table-row.scss +39 -0
  157. data/_sass/bootstrap/mixins/_text-emphasis.scss +16 -0
  158. data/_sass/bootstrap/mixins/_text-hide.scss +11 -0
  159. data/_sass/bootstrap/mixins/_text-truncate.scss +8 -0
  160. data/_sass/bootstrap/mixins/_transition.scss +16 -0
  161. data/_sass/bootstrap/mixins/_visibility.scss +8 -0
  162. data/_sass/bootstrap/utilities/_align.scss +8 -0
  163. data/_sass/bootstrap/utilities/_background.scss +19 -0
  164. data/_sass/bootstrap/utilities/_borders.scss +75 -0
  165. data/_sass/bootstrap/utilities/_clearfix.scss +3 -0
  166. data/_sass/bootstrap/utilities/_display.scss +26 -0
  167. data/_sass/bootstrap/utilities/_embed.scss +39 -0
  168. data/_sass/bootstrap/utilities/_flex.scss +51 -0
  169. data/_sass/bootstrap/utilities/_float.scss +11 -0
  170. data/_sass/bootstrap/utilities/_overflow.scss +5 -0
  171. data/_sass/bootstrap/utilities/_position.scss +32 -0
  172. data/_sass/bootstrap/utilities/_screenreaders.scss +11 -0
  173. data/_sass/bootstrap/utilities/_shadows.scss +6 -0
  174. data/_sass/bootstrap/utilities/_sizing.scss +20 -0
  175. data/_sass/bootstrap/utilities/_spacing.scss +73 -0
  176. data/_sass/bootstrap/utilities/_stretched-link.scss +19 -0
  177. data/_sass/bootstrap/utilities/_text.scss +72 -0
  178. data/_sass/bootstrap/utilities/_visibility.scss +13 -0
  179. data/_sass/bootstrap/vendor/_rfs.scss +204 -0
  180. data/assets/css/asciidocsy.scss +9 -0
  181. data/assets/css/asciidoctor.css +776 -0
  182. data/assets/css/bootstrap-toc.css +60 -0
  183. data/assets/css/bootstrap.scss +4 -0
  184. data/assets/css/custom.css +2 -0
  185. data/assets/css/font-awesome.css +2337 -0
  186. data/assets/css/font-awesome.min.css +4 -0
  187. data/assets/css/jquery.navgoco.css +69 -0
  188. data/assets/css/palette.css +217 -0
  189. data/assets/css/skins/colony.css +734 -0
  190. data/assets/css/skins/foundation-lime.css +727 -0
  191. data/assets/css/skins/foundation-potion.css +727 -0
  192. data/assets/css/skins/foundation.css +720 -0
  193. data/assets/css/skins/github.css +741 -0
  194. data/assets/css/skins/golo.css +738 -0
  195. data/assets/css/skins/iconic.css +762 -0
  196. data/assets/css/skins/maker.css +738 -0
  197. data/assets/css/skins/readthedocs.css +739 -0
  198. data/assets/css/skins/riak.css +759 -0
  199. data/assets/css/skins/rocket-panda.css +734 -0
  200. data/assets/css/skins/rubygems.css +722 -0
  201. data/assets/css/syntax/hljs/a11y-dark.css +99 -0
  202. data/assets/css/syntax/hljs/a11y-light.css +99 -0
  203. data/assets/css/syntax/hljs/agate.css +108 -0
  204. data/assets/css/syntax/hljs/an-old-hope.css +89 -0
  205. data/assets/css/syntax/hljs/androidstudio.css +66 -0
  206. data/assets/css/syntax/hljs/arduino-light.css +87 -0
  207. data/assets/css/syntax/hljs/arta.css +73 -0
  208. data/assets/css/syntax/hljs/ascetic.css +45 -0
  209. data/assets/css/syntax/hljs/atelier-cave-dark.css +83 -0
  210. data/assets/css/syntax/hljs/atelier-cave-light.css +85 -0
  211. data/assets/css/syntax/hljs/atelier-dune-dark.css +69 -0
  212. data/assets/css/syntax/hljs/atelier-dune-light.css +69 -0
  213. data/assets/css/syntax/hljs/atelier-estuary-dark.css +84 -0
  214. data/assets/css/syntax/hljs/atelier-estuary-light.css +84 -0
  215. data/assets/css/syntax/hljs/atelier-forest-dark.css +69 -0
  216. data/assets/css/syntax/hljs/atelier-forest-light.css +69 -0
  217. data/assets/css/syntax/hljs/atelier-heath-dark.css +69 -0
  218. data/assets/css/syntax/hljs/atelier-heath-light.css +69 -0
  219. data/assets/css/syntax/hljs/atelier-lakeside-dark.css +69 -0
  220. data/assets/css/syntax/hljs/atelier-lakeside-light.css +69 -0
  221. data/assets/css/syntax/hljs/atelier-plateau-dark.css +84 -0
  222. data/assets/css/syntax/hljs/atelier-plateau-light.css +84 -0
  223. data/assets/css/syntax/hljs/atelier-savanna-dark.css +84 -0
  224. data/assets/css/syntax/hljs/atelier-savanna-light.css +84 -0
  225. data/assets/css/syntax/hljs/atelier-seaside-dark.css +69 -0
  226. data/assets/css/syntax/hljs/atelier-seaside-light.css +69 -0
  227. data/assets/css/syntax/hljs/atelier-sulphurpool-dark.css +69 -0
  228. data/assets/css/syntax/hljs/atelier-sulphurpool-light.css +69 -0
  229. data/assets/css/syntax/hljs/atom-one-dark-reasonable.css +75 -0
  230. data/assets/css/syntax/hljs/atom-one-dark.css +96 -0
  231. data/assets/css/syntax/hljs/atom-one-light.css +96 -0
  232. data/assets/css/syntax/hljs/brown-paper.css +64 -0
  233. data/assets/css/syntax/hljs/brown-papersq.png +0 -0
  234. data/assets/css/syntax/hljs/codepen-embed.css +60 -0
  235. data/assets/css/syntax/hljs/color-brewer.css +71 -0
  236. data/assets/css/syntax/hljs/darcula.css +74 -0
  237. data/assets/css/syntax/hljs/dark.css +63 -0
  238. data/assets/css/syntax/hljs/default.css +99 -0
  239. data/assets/css/syntax/hljs/docco.css +97 -0
  240. data/assets/css/syntax/hljs/dracula.css +76 -0
  241. data/assets/css/syntax/hljs/far.css +71 -0
  242. data/assets/css/syntax/hljs/foundation.css +89 -0
  243. data/assets/css/syntax/hljs/github-gist.css +79 -0
  244. data/assets/css/syntax/hljs/github.css +99 -0
  245. data/assets/css/syntax/hljs/gml.css +78 -0
  246. data/assets/css/syntax/hljs/googlecode.css +89 -0
  247. data/assets/css/syntax/hljs/gradient-dark.css +122 -0
  248. data/assets/css/syntax/hljs/gradient-light.css +130 -0
  249. data/assets/css/syntax/hljs/grayscale.css +101 -0
  250. data/assets/css/syntax/hljs/gruvbox-dark.css +108 -0
  251. data/assets/css/syntax/hljs/gruvbox-light.css +108 -0
  252. data/assets/css/syntax/hljs/hopscotch.css +84 -0
  253. data/assets/css/syntax/hljs/hybrid.css +102 -0
  254. data/assets/css/syntax/hljs/idea.css +97 -0
  255. data/assets/css/syntax/hljs/ir-black.css +73 -0
  256. data/assets/css/syntax/hljs/isbl-editor-dark.css +112 -0
  257. data/assets/css/syntax/hljs/isbl-editor-light.css +111 -0
  258. data/assets/css/syntax/hljs/kimbie.dark.css +74 -0
  259. data/assets/css/syntax/hljs/kimbie.light.css +74 -0
  260. data/assets/css/syntax/hljs/lightfair.css +88 -0
  261. data/assets/css/syntax/hljs/lioshi.css +88 -0
  262. data/assets/css/syntax/hljs/magula.css +70 -0
  263. data/assets/css/syntax/hljs/mono-blue.css +56 -0
  264. data/assets/css/syntax/hljs/monokai-sublime.css +83 -0
  265. data/assets/css/syntax/hljs/monokai.css +71 -0
  266. data/assets/css/syntax/hljs/night-owl.css +182 -0
  267. data/assets/css/syntax/hljs/nnfx-dark.css +106 -0
  268. data/assets/css/syntax/hljs/nnfx.css +106 -0
  269. data/assets/css/syntax/hljs/nord.css +309 -0
  270. data/assets/css/syntax/hljs/obsidian.css +88 -0
  271. data/assets/css/syntax/hljs/ocean.css +74 -0
  272. data/assets/css/syntax/hljs/paraiso-dark.css +72 -0
  273. data/assets/css/syntax/hljs/paraiso-light.css +72 -0
  274. data/assets/css/syntax/hljs/pojoaque.css +83 -0
  275. data/assets/css/syntax/hljs/pojoaque.jpg +0 -0
  276. data/assets/css/syntax/hljs/purebasic.css +96 -0
  277. data/assets/css/syntax/hljs/qtcreator_dark.css +83 -0
  278. data/assets/css/syntax/hljs/qtcreator_light.css +83 -0
  279. data/assets/css/syntax/hljs/railscasts.css +106 -0
  280. data/assets/css/syntax/hljs/rainbow.css +85 -0
  281. data/assets/css/syntax/hljs/routeros.css +108 -0
  282. data/assets/css/syntax/hljs/school-book.css +69 -0
  283. data/assets/css/syntax/hljs/school-book.png +0 -0
  284. data/assets/css/syntax/hljs/shades-of-purple.css +96 -0
  285. data/assets/css/syntax/hljs/solarized-dark.css +84 -0
  286. data/assets/css/syntax/hljs/solarized-light.css +84 -0
  287. data/assets/css/syntax/hljs/srcery.css +78 -0
  288. data/assets/css/syntax/hljs/stackoverflow-dark.css +78 -0
  289. data/assets/css/syntax/hljs/stackoverflow-light.css +78 -0
  290. data/assets/css/syntax/hljs/sunburst.css +102 -0
  291. data/assets/css/syntax/hljs/tomorrow-night-blue.css +75 -0
  292. data/assets/css/syntax/hljs/tomorrow-night-bright.css +74 -0
  293. data/assets/css/syntax/hljs/tomorrow-night-eighties.css +74 -0
  294. data/assets/css/syntax/hljs/tomorrow-night.css +75 -0
  295. data/assets/css/syntax/hljs/tomorrow.css +72 -0
  296. data/assets/css/syntax/hljs/vs.css +68 -0
  297. data/assets/css/syntax/hljs/vs2015.css +115 -0
  298. data/assets/css/syntax/hljs/xcode.css +104 -0
  299. data/assets/css/syntax/hljs/xt256.css +92 -0
  300. data/assets/css/syntax/hljs/zenburn.css +80 -0
  301. data/assets/fonts/FontAwesome.otf +0 -0
  302. data/assets/fonts/fontawesome-webfont.eot +0 -0
  303. data/assets/fonts/fontawesome-webfont.svg +2671 -0
  304. data/assets/fonts/fontawesome-webfont.ttf +0 -0
  305. data/assets/fonts/fontawesome-webfont.woff +0 -0
  306. data/assets/fonts/fontawesome-webfont.woff2 +0 -0
  307. data/assets/images/asciidocsy-nav-model.png +0 -0
  308. data/assets/images/asciidocsy-screenshot.png +0 -0
  309. data/assets/images/docops-labs-logo.png +0 -0
  310. data/assets/images/favicons/favicon-16x16.png +0 -0
  311. data/assets/images/favicons/favicon-32x32.png +0 -0
  312. data/assets/images/favicons/favicon.ico +0 -0
  313. data/assets/images/github-repo-download_screenshot.png +0 -0
  314. data/assets/images/logo-full.png +0 -0
  315. data/assets/images/logo.png +0 -0
  316. data/assets/images/logo.svg +87 -0
  317. data/assets/images/search-by-algolia-light-background.svg +1 -0
  318. data/assets/images/thumb-topic-data-source-edit.png +0 -0
  319. data/assets/js/anchor.min.js +9 -0
  320. data/assets/js/asciidoctor.min.js +1472 -0
  321. data/assets/js/bootstrap-toc.js +180 -0
  322. data/assets/js/bootstrap.min.js +7 -0
  323. data/assets/js/highlight.pack.js +870 -0
  324. data/assets/js/jquery-3.3.1.js +10364 -0
  325. data/assets/js/jquery-3.3.1.min.js +2 -0
  326. data/assets/js/jquery.cookie.js +114 -0
  327. data/assets/js/jquery.navgoco.js +314 -0
  328. data/assets/js/semantics.js +58 -0
  329. data/assets/js/tabber.js +111 -0
  330. data/assets/js/tail.js +37 -0
  331. data/assets/js/toggler.js +50 -0
  332. data/lib/asciidocsy/data/dependencies.yml +142 -0
  333. data/lib/asciidocsy/data/releases.yml +245 -0
  334. data/lib/asciidocsy/templates/notice-file.txt +16 -0
  335. data/lib/asciidocsy/version.rb +13 -0
  336. data/lib/asciidocsy.rb +1 -0
  337. metadata +462 -0
@@ -0,0 +1,163 @@
1
+ $doc:
2
+ name: Release History (ReleaseHx)
3
+ desc: Template for parsing version history into Release Notes and/or Changelog
4
+ args:
5
+ rn:
6
+ desc: Settings for release-notes listings.
7
+ cl:
8
+ desc: Settings for changelog listings.
9
+ parts:
10
+ desc: |
11
+ Product components or aspects -- sub-subjects.
12
+
13
+ `name`:: A label for this part.
14
+ `slug`:: A key for this part.
15
+ `icon`:: Font icon to represent this part.
16
+ types:
17
+ desc: |
18
+ The kinds of changes recorded.
19
+
20
+ `name`:: A label for this type.
21
+ `slug`:: A key for this type.
22
+ `verb`:: An action word for this type.
23
+ `icon`:: Font icon to represent this type.
24
+ `text`:: A brief explainer for this type.
25
+ tags:
26
+ desc: Special attributes about recorded changes deserving of being flagged.
27
+ roles:
28
+ desc: User types affected by recorded changes.
29
+ cats:
30
+ desc: General categories for search/filtering, not for flagging.
31
+ policy:
32
+ patches: flatten # flatten* or merged (shown with next minor/major revision)
33
+ rn:
34
+ empty-group: show
35
+ cl:
36
+ empty-group: hide
37
+ parts:
38
+ - name: Layout/Styles
39
+ slug: frontend
40
+ icon: paint-brush
41
+ - name: Content Management
42
+ slug: content
43
+ icon: map-o
44
+ - name: Back-end
45
+ slug: backend
46
+ icon: server
47
+ - name: Documentation
48
+ slug: docs
49
+ icon: file-text-o
50
+ types:
51
+ -
52
+ name: addition
53
+ verb: added
54
+ slug: new-feature
55
+ text: for new features
56
+ icon: plus-circle
57
+ -
58
+ name: improvement
59
+ verb: improved
60
+ slug: improvement
61
+ text: for changes in existing functionality
62
+ icon: magic
63
+ -
64
+ name: deprecation
65
+ verb: deprecated
66
+ slug: deprecation
67
+ text: for soon-to-be removed features
68
+ icon: exclamation-circle
69
+ -
70
+ name: removal
71
+ verb: removed
72
+ slug: removal
73
+ text: for now-removed features
74
+ icon: minus-circle
75
+ -
76
+ name: bugfix
77
+ verb: fixed
78
+ slug: bugfix
79
+ text: for any bug fixes
80
+ icon: wrench
81
+ tags:
82
+ -
83
+ name: Security
84
+ slug: security
85
+ text: for changes made to secure a component
86
+ icon: lock
87
+ tone: danger
88
+ -
89
+ name: Privacy
90
+ slug: privacy
91
+ icon: user-secret
92
+ tone: dark
93
+ -
94
+ name: Experimental
95
+ slug: experimental
96
+ text: for possibly unstable or temporary features
97
+ icon: flask
98
+ tone: warning
99
+ -
100
+ name: Compliance
101
+ slug: compliance
102
+ text: for changes made to conform to regulations
103
+ icon: balance-scale
104
+ tone: success
105
+ -
106
+ name: Breaking
107
+ slug: breaking
108
+ text: for changes that violate backward compatibility
109
+ icon: unlink
110
+ tone: warning
111
+ -
112
+ name: Deprication
113
+ slug: deprecation
114
+ text: announces future cancelation/removal of feature/capability
115
+ icon: warning
116
+ tone: warning
117
+ roles:
118
+ - name: Admin
119
+ slug: admin
120
+ text: Maintainer of a product instance.
121
+ - name: Designer
122
+ slug: designer
123
+ text: Shapes an application of the product for a user instance.
124
+ - name: Author
125
+ slug: author
126
+ text: End user, documentation contributor.
127
+ cats:
128
+ - name: User experience
129
+ slug: ux
130
+ text: Enhances the UX of an interface/procedure.
131
+ - name: Code refactor
132
+ slug: refactor
133
+ text: Involves radical improvement of the code; may carry bug risks.
134
+ - name: User-authored
135
+ slug: user-author
136
+ text: Derived from a user contribution of code or documentation.
137
+ - name: Free and open-source
138
+ slug: foss
139
+ text: This component is openly authored and permissively licensed.
140
+ defaults: # default values for properties, organized by block
141
+ revision: # establish default values for properties
142
+ down: true # whether to show download link
143
+ item:
144
+ note:
145
+ both:
146
+ patterns: # value patterns for properties, organized by block
147
+ revision: # value patterns for the revision block
148
+ vcode: "v{{ rvsn.code }}"
149
+ heading: "Version {{ rvsn.code }}, {{ rvsn.date }}"
150
+ download-url: "{{ site.source_www }}/releases/tag/v{{ rvsn.code }}"
151
+ download-label:
152
+ standard: "Get {{ rvsn.code }}"
153
+ latest: "Get v{{rvsn.code}} -- Latest release! icon:flag-checkered[]"
154
+ go-to-latest: "Get {{ latest_release.code }} icon:flag-checkered[]"
155
+ admonition: |-
156
+ The following flag{% if flags.size > 1 %}s{% endif %} appear{% unless flags.size > 1 %}s{% endunless %} in this release.
157
+ item: # changelog-item-specific settings
158
+ note: # release-note-specific settings
159
+ both: # release-note- and changelog-specific settings
160
+ ticket-link: # vars: tick
161
+ href: "{{ site.subject_tickets_www }}/{{ item.tick }}"
162
+ text: "Issue #{{ item.tick }}"
163
+ icon: github
@@ -0,0 +1,43 @@
1
+ $doc:
2
+ desc: Defines references to JavaScript resources.
3
+ args:
4
+ head: {type: Array,desc: "JavaScript files to include in the `head` element."}
5
+ tail: {type: Array,desc: "JavaScript files to include in the `tail` div."}
6
+ head:
7
+ - slug: jquery
8
+ href: /assets/js/jquery-3.3.1.min.js
9
+ - slug: popper
10
+ href: https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js
11
+ meta:
12
+ integrity: sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49
13
+ - slug: bootstrap
14
+ href: https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js
15
+ - slug: jquery-cookie
16
+ href: /assets/js/jquery.cookie.js
17
+ - slug: algolia-instantsearch
18
+ href: https://cdn.jsdelivr.net/npm/instantsearch.js@4.8.3/dist/instantsearch.production.min.js
19
+ meta:
20
+ integrity: sha256-LAGhRRdtVoD6RLo2qDQsU2mp+XVSciKRC8XPOBWmofM=
21
+ - slug: autocomplete
22
+ href: https://cdn.jsdelivr.net/autocomplete.js/0/autocomplete.min.js
23
+ - slug: algoliasearch-3
24
+ href: https://cdn.jsdelivr.net/algoliasearch/3/algoliasearch.min.js
25
+ - slug: anchors
26
+ href: /assets/js/anchor.min.js
27
+ - slug: navgoco
28
+ href: /assets/js/jquery.navgoco.js
29
+ - slug: bootstrap-toc
30
+ href: /assets/js/bootstrap-toc.js
31
+ - slug: highlight-js
32
+ href: /assets/js/highlight.pack.js
33
+ - slug: asciidoctor
34
+ href: /assets/js/asciidoctor.min.js
35
+ - slug: asciidocsy-tabber
36
+ href: /assets/js/tabber.js
37
+ - slug: asciidocsy-toggler
38
+ href: /assets/js/toggler.js
39
+ - slug: asciidocsy-semantics
40
+ href: /assets/js/semantics.js
41
+ tail:
42
+ - slug: asciidocsy-tail
43
+ href: /assets/js/tail.js
@@ -0,0 +1,14 @@
1
+ $doc:
2
+ desc: Defines inline and block-level semantic elements
3
+ inline:
4
+ role:
5
+ term: # here 'term' is the name of the role
6
+ show:
7
+ icon:
8
+ text: fa fa-info-circle
9
+ tilt: 15
10
+ spin: true
11
+ spot: "#sidebar-right"
12
+ # next role here
13
+ blocks:
14
+ admonitions:
@@ -0,0 +1,13 @@
1
+ $doc:
2
+ desc: |
3
+ Theme strings organized by container block/element.
4
+ Documentation in source file only.
5
+ footer:
6
+ $doc: {desc: Strings for the footer of the document.}
7
+ title: Your Branding
8
+ tagline: Your brand tagline.
9
+ madewith: Sourced in AsciiDoc and YAML. Generated with Jekyll, Asciidoctor, and AsciiDocsy.
10
+ copyright: (C) 2021 Your Copyright
11
+ see-also:
12
+ $doc: {desc: Strings for the see-also segment}
13
+ title: See Also
@@ -0,0 +1,8 @@
1
+ $doc:
2
+ desc: Custom styles for elements of the theme
3
+ nav-site:
4
+ position: fixed
5
+ logo:
6
+ width: 50px
7
+ color:
8
+ theme-primary: "#30638e"
@@ -0,0 +1,60 @@
1
+ // tag::raw[]
2
+ [.tabber-tabset.tabs-data-format-tabber]
3
+ --
4
+ [source,yaml,role="tabber-pane pane-data-yaml"]
5
+ ----
6
+ include::./example_tabset-source_data.yml[]
7
+ ----
8
+ [source,json,role="tabber-pane pane-data-json"]
9
+ ----
10
+ include::./example_tabset-source_data.json[]
11
+ ----
12
+ --
13
+ // end::raw[]
14
+ // tag::marked[]
15
+ [.tabber-tabset.tabs-data-format-tabber] // <1>
16
+ --
17
+ [source,yaml,role="tabber-pane pane-data-yaml"] // <2>
18
+ ----
19
+ \include::./example_tabset-source_data.yml[]
20
+ ----
21
+ [source,json,role="tabber-pane pane-data-json"] // <3>
22
+ ----
23
+ \include::./example_tabset-source_data.json[]
24
+ ----
25
+ --
26
+ // end::marked[]
27
+ // tag::xml-raw[]
28
+ [.tabber-tabset.tabs-data-format-tabber]
29
+ --
30
+ [source,yaml,role="tabber-pane pane-data-yaml",title="YAML Data *"]
31
+ ----
32
+ include::./example_tabset-source_data.yml[]
33
+ ----
34
+ [source,json,role="tabber-pane pane-data-json"]
35
+ ----
36
+ include::./example_tabset-source_data.json[]
37
+ ----
38
+ [source,xml,role="tabber-pane pane-data-xml",title="XML Data **"]
39
+ ----
40
+ include::./example_tabset-source_data.xml[]
41
+ ----
42
+ --
43
+ // end::xml-raw[]
44
+ // tag::xml-marked[]
45
+ [.tabber-tabset.tabs-data-format-tabber]
46
+ --
47
+ [source,yaml,role="tabber-pane pane-data-yaml",title="YAML Data *"] // <1>
48
+ ----
49
+ \include::./example_tabset-source_data.yml[] // <2>
50
+ ----
51
+ [source,json,role="tabber-pane pane-data-json"]
52
+ ----
53
+ \include::./example_tabset-source_data.json[]
54
+ ----
55
+ [source,xml,role="tabber-pane pane-data-xml",title="XML Data **"]
56
+ ----
57
+ \include::./example_tabset-source_data.xml[]
58
+ ----
59
+ --
60
+ // end::xml-marked[]
@@ -0,0 +1,16 @@
1
+ [
2
+ {
3
+ "app": "Asciidoctor",
4
+ "use": "THE AsciiDoc markup converter",
5
+ "url": "https://www.asciidoctor.org",
6
+ "git": "https://github.com/asciidoctor/asciidoctor",
7
+ "vrsn": "2.0"
8
+ },
9
+ {
10
+ "app": "Jekyll",
11
+ "use": "world-class static-site generator (SSG)",
12
+ "url": "https://jekyllrb.com",
13
+ "git": "https://github.com/jekyll/jekyll",
14
+ "vrsn": "4.0"
15
+ }
16
+ ]
@@ -0,0 +1,17 @@
1
+ <?xml version="1.0" encoding="UTF-8" ?>
2
+ <root>
3
+ <row>
4
+ <app>Asciidoctor</app>
5
+ <use>THE AsciiDoc markup converter</use>
6
+ <url>https://www.asciidoctor.org</url>
7
+ <git>https://github.com/asciidoctor/asciidoctor</git>
8
+ <vrsn>2.0</vrsn>
9
+ </row>
10
+ <row>
11
+ <app>Jekyll</app>
12
+ <use>world-class static-site generator (SSG)</use>
13
+ <url>https://jekyllrb.com</url>
14
+ <git>https://github.com/jekyll/jekyll</git>
15
+ <vrsn>4.0</vrsn>
16
+ </row>
17
+ </root>
@@ -0,0 +1,10 @@
1
+ - app: Asciidoctor
2
+ use: THE AsciiDoc markup converter
3
+ url: https://www.asciidoctor.org
4
+ git: https://github.com/asciidoctor/asciidoctor
5
+ vrsn: '2.0'
6
+ - app: Jekyll
7
+ use: world-class static-site generator (SSG)
8
+ url: https://jekyllrb.com
9
+ git: https://github.com/jekyll/jekyll
10
+ vrsn: '4.0'
@@ -0,0 +1,25 @@
1
+ // tag::user-os[]
2
+ [.os-win]
3
+ --
4
+ This site works great on Windows 10, and probably on Windows 7, and likely even on Windows XP.
5
+ Windows often requires extra/special instructions for developer-oriented stuff.
6
+
7
+ Windows users are encouraged to explore WSL2 for access to a true Unix-like system right inside their main OS.
8
+ --
9
+
10
+ [.os-nix]
11
+ --
12
+ This site was built on a Linux desktop, and it probably looks great on FreeBSD.
13
+ I personally want Mac and Windows users to know that, but other stuff might be noise to non-Linux users, so why rub their noses in it?
14
+ --
15
+
16
+ [.os-mac]
17
+ --
18
+ MacOS always makes AsciiDocsy look terrific.
19
+ --
20
+
21
+ [.os-mac.os-nix]
22
+ --
23
+ The author of AsciiDocsy strongly prefers Unix-like systems, but they would never want Windows users to see such a statement.
24
+ --
25
+ // end::user-os[]
@@ -0,0 +1,40 @@
1
+ // tag::table-head[]
2
+ [cols="1a,2,2,4,3a",options="header"]
3
+ |===
4
+ | verb
5
+ | target
6
+ | forms
7
+ | description
8
+ | sources
9
+ // end::table-head[]
10
+ // tag::table-row-amenders[]
11
+ s| <</docs/theme/config/versioning/amenders#,amend>>
12
+ | URL/head elements
13
+ | select icon:caret-square-o-down[], buttons icon:dot-circle-o[]
14
+ | Change a string in a DOM element or add your own function.
15
+ | `version-handler.html`, your custom JS
16
+ // end::table-row-amenders[]
17
+ // tag::table-row-swaps[]
18
+ s| <</docs/theme/config/versioning/swaps#,swap>>
19
+ | tokens in the text
20
+ | select icon:caret-square-o-down[], buttons icon:dot-circle-o[]
21
+ | Change the expression of a token already rendered in HTML.
22
+ | `version-handler.html`
23
+ // end::table-row-swaps[]
24
+ // tag::table-row-toggles[]
25
+ s| <</docs/theme/config/versioning/toggles#,toggle>>
26
+ | element classes in the text
27
+ | buttons icon:dot-circle-o[]
28
+ | Show/hide elements of classes.
29
+ | `version-handler.html`, `js/main.js`
30
+ // end::table-row-toggles[]
31
+ // tag::table-row-tabsets[]
32
+ s| <</docs/theme/config/versioning/tabsets#,tab>>
33
+ | a block element in place
34
+ | tabs icon:folder-open-o[]
35
+ | Determine which block in tabset to show in pane.
36
+ | `js/tabber.js`
37
+ // end::table-row-tabsets[]
38
+ // tag::table-tail[]
39
+ |===
40
+ // end::table-tail[]
@@ -0,0 +1 @@
1
+ {% assign objs = page.cats-list | split: "," %}
@@ -0,0 +1,50 @@
1
+ :page-permalink: /docs/theme/advanced
2
+ = Advanced Applications
3
+
4
+ AsciiDocsy is intended to accommodate highly complex product sets.
5
+ In fact, it is designed to suit the LiquiDoc Ops framework, which handles multi-product, multi-version documentation sites through single-sourcing.
6
+
7
+ == Multi-subject Management
8
+
9
+ For most technical documentation sites, the _subject_ is a product.
10
+ And for a significant subset of these product-focused documentation sites, more than one product needs to be covered in the same place.
11
+
12
+ At the very least, there must be commonality and continuity between product [.term]*docsets*.
13
+ This is true even if at first the docset sourcing and primary toolchains differ drastically between products.
14
+ At the point of delivery ("`deployment`"), the docs must come together under a common _theme_.
15
+
16
+ That theme is AsciiDocsy.
17
+
18
+ A typical AsciiDocsy site combining multiple products will draw content from distinct sources at build-time.
19
+
20
+ [.case]_If you keep all your documentation source in one repo_, that might be your codebase that also contains the AsciiDocsy theme, your Jekyll configuration, and other required files.
21
+ In this case, you should have a directory inside the docs-source root called something like `content/`, with subdirectories named after the products as slugs, such as `content/frontend-app` and `content/backend-db`.
22
+
23
+ [.case]_If you source your documentation in separate product repos_, you still need a _main docs repo_.
24
+ In this case, the objective is to construct a directory structure as recommended above at build-time, presumably from locally cached sources.
25
+
26
+ Some teams opt to treat product repos as Git submodules or subtrees in relation to the main docs repo.
27
+ Another option is to maintain a cache of cloned repos in a directory ignored by the main docs repo's Git configuration -- something like `.subjects-cache`.
28
+
29
+ In either of these cases, at build-time, just copy the relevant files from those subrepos or cached repos into an ephemeral (also Git-ignored) _build directory_.
30
+ Be sure to include that build directory in your Jekyll configuration as `source:`.
31
+
32
+ An alternative to subrepos or ephemerally cached clones, some teams opt to maintain copies of the product docs source in a file server, such as a CDN (content-delivery network).
33
+ These files are pulled in over VPN at build-time and similarly cached between builds.
34
+
35
+ One way or another, the task at hand is to get the AsciiDoc, image, and other files from those product repos into your main docs repo in order to build the docs.
36
+
37
+ Each source should be a single root-level directory, probably called `docs/` or `docs/topics` in the product repo, and written as something like `_build/frontend-app/` in the main docs repo.
38
+ This directory must at the very least include AsciiDoc (`.adoc`) files.
39
+ It can also include relevant subcirectories like `images/`, `snippets/`, etc.
40
+
41
+ It is highly recommended that each product team also maintain a data file for the repo -- something like `docs/topics/_dataset.yml` or `docs/topics/_manifest.yml`.
42
+ This file can also sit in the ephemeral subject-based (product) directory.
43
+ Or each such file can be moved to the Jekyll data directory (probably `_data/`), renamed to make it distinct (for instance, `_data/frontend-app.yml`, `_data/backend-db.yml/`).
44
+ Now there would be data accessible at scopes like `site.data.frontend-app` and `site.data.backend-db`.
45
+
46
+ == Multi-revision Management
47
+
48
+ Another major type of subject divergence AsciiDocsy is designed to handle is sequential versioning, technically known as [.term]*revisioning*.
49
+
50
+ More on this topic coming in v0.2.0.
@@ -0,0 +1,21 @@
1
+ :page-permalink: /docs/theme/config/api-reference
2
+ :page-data-source: _config.yml
3
+ :page-liquid:
4
+ :page-layout: reference
5
+ = Theme Configuration API
6
+
7
+ [NOTE]
8
+ This reference is highly experimental.
9
+ I've only spent about 2 hours coding this as an example of a novel domain-specific language (DSL) reference parsed from YAML by Liquid into AsciiDoc for rendering as HTML (or PDF, etc).
10
+
11
+ Consider this to be rudimentary documentation generated from data structures found in `_config.yml`.
12
+ This would be better generated from a _schema_-like version of these data objects, referencing them with metadata about each block of properties in each feature object.
13
+ Instead, we are using the objects directly, supplemented by an optional `$docs` objects embedded in the config data structure.
14
+
15
+ Also, due to object nesting, lots more recursive processing needs to happen.
16
+ The truth is, a simple configuration file that can be commented inline and must be edited in place is not great fodder for an API reference, but I wanted to demonstrate it.
17
+
18
+ But do look at the AsciiDoc and YAML sources (see links to the right icon:right-arrow[]) for this page if you need inspiration for your own complex content.
19
+
20
+ // Liquid transclusion tag
21
+ {% include config-api.asciidoc %}
@@ -0,0 +1,4 @@
1
+ :page-permalink: /docs/theme/config/release-hx
2
+ = ReleaseHx Product History Feature
3
+
4
+ Documentation slated for 0.2.1.
@@ -0,0 +1,77 @@
1
+ :page-permalink: /docs/theme/config/search/algolia
2
+ = Algolia Search Integration
3
+
4
+ A cloud account with Algolia is required to implement Algolia as a cloud-search provider.
5
+
6
+ [WARNING]
7
+ By default, AsciiDocsy's own Algolia application is configured in the repo.
8
+ You will be able to generate local content packages for it, or query its live indices, but you will not be able to write (push) to the cloud indices.
9
+
10
+ The link:https://www.algolia.com/users/sign_up[Algolia signup] is free.
11
+ You only start paying when you use certain thresholds of index space or query bandwidth.
12
+
13
+ AsciiDocsy's implementation of Algolia's Jekyll plugin (link:https://github.com/algolia/jekyll-algolia[source]) (link:https://community.algolia.com/jekyll-algolia/getting-started.html[docs]) and instantsearch form (link:https://community.algolia.com/instantsearch.js/documentation/[docs]).
14
+
15
+ == Search Settings
16
+
17
+ The `site.algolia` object, by default defined in `_config.yml`.
18
+
19
+ .Object: `site.algolia`
20
+ [source,yaml]
21
+ ----
22
+ include::_config.yml[tags=algolia]
23
+ ----
24
+
25
+ Additionally, each search form on your site needs some more data.
26
+ By default the search forms draw this info from objects inside `site.data.theme.search`, such as `search-site` and `search-subject`.
27
+ These objects need properties for `show.spot` and `meta.index`.
28
+
29
+ .Object: `site.data.theme.search.site`
30
+ [source,yaml]
31
+ ----
32
+ include::_data/theme/search.yml[tags=search-site-core]
33
+ ----
34
+
35
+ [WARNING]
36
+ These settings are only used for _searching_.
37
+
38
+ [[index-settings]]
39
+ == Index Settings
40
+
41
+ In order to _index_ your site's content, you will need an auxilliary configuration file with the `algolia` object at the root.
42
+ This configuration file can be called instead of or in addition to the main Jekyll config.
43
+
44
+ ._docs/_data/configs/search-index-pages.yml
45
+ [source,yaml]
46
+ ----
47
+ include::_data/configs/search-index-pages.yml[]
48
+ ----
49
+
50
+ The search is performed by running a `jekyll algolia` operation with your private API key added.
51
+
52
+ === ENV Variable
53
+
54
+ One option is to add your key explicitly to the commandline as an environment variable.
55
+
56
+ .Example commandline ENV variable option
57
+ ALGOLIA_API_KEY=01d664977165dbf4cded12199738fabf bundle exec jekyll algolia --config _config.yml,_data/configs/jekyll-search-x.yml
58
+
59
+ === Stashed File
60
+
61
+ Alternatively, stash the key as in a file called `_algolia_api_key` (no file extension).
62
+
63
+ .Entire contents of file `_algolia_option_key`
64
+ 01d664977165dbf4cded12199738fabf
65
+
66
+ [IMPORTANT]
67
+ Be sure to add this file to your [.path]`.gitignore` file.
68
+
69
+ In this case, you may run the following.
70
+
71
+ .Example commandline with no ENV variable
72
+ bundle exec jekyll algolia --config _config.yml,_data/configs/jekyll-search-x.yml`
73
+
74
+ [TIP]
75
+ To test your indexing process without pushing to Algolia, add [.cmd]`--dry-run` (or simply [.cmd]`-n`)
76
+
77
+ For full configuration options, refer to the link:https://community.algolia.com/jekyll-algolia/options.html[Jekyll community documentation].
@@ -0,0 +1,47 @@
1
+ :page-permalink: /docs/theme/config/search
2
+ = Indexing and Searching Content
3
+
4
+ Any search system requires a way to index and query the content in the site.
5
+ There are several options for serious search solutions, many of which we intend to build into AsciiDocsy for easy configuration "`out of the box`".
6
+
7
+ == Search Utilities
8
+
9
+ Each solution below comes equipped with an indexing component and a query form/results feature.
10
+
11
+ === Cloud-based Search
12
+
13
+ Cloud-search providers host indexes of your content and provide a RESTful API for queries.
14
+
15
+ Algolia is a provider of freemium cloud-based search.
16
+ It is highly affordable for small docsets, but at larger scales it might get pricey to index numerous versions amounting to thousands of pages.
17
+ The company maintains its own Jekyll plugin, which AsciiDocsy incorporates.
18
+ Learn to <</docs/theme/config/search/algolia/#,integrate your AsciiDocsy site with Algolia>>
19
+
20
+ Algolia's main competition seems to be link:https://swiftype.com[Swiftype from Elastic].
21
+ Many documentarians swear by Swiftype, and its pricing may work better at certain scales.
22
+
23
+ The only self-hostable option in this field is link:https://www.elastic.co/downloads/elasticsearch[ElasticSearch's main offering], which can be integrated using a link:https://github.com/omc/searchyll[Jekyll plugin called Searchyll].
24
+
25
+ === Client-based Search
26
+
27
+ An option popular with lightweight Jekyll sites is link:https://jekyllcodex.org/without-plugin/search-lunr/[Lunr.js] (or link:http://elasticlunr.com[ElasticLunr.js]), a front-end-only solution that puts the whole index into the client package.
28
+ Lunr.js is as ingenious as it is clunky, and it is a common solution for simple docs sites or internal-only docs.
29
+
30
+ One or more of these JS-only solutions will make it into AsciiDocsy by 1.0.
31
+
32
+ == Search Strategy
33
+
34
+ Searchable content is organized by index.
35
+ Generally, one index equals one subject to be searched.
36
+ Whether using cloud- or client-based search, organizing your indexes will be key.
37
+
38
+ One strategy is to build a separate site for each batch of content to be indexed.
39
+ So if you have 3 products with 3 supported revisions each, you probably want to have 10 indices: 1 index for each revision of each product, and a tenth for pages or general site search.
40
+
41
+ How you then choose to organize the search functionality comes down to user experience (UX).
42
+ You can use one field that searches the current revision of the current project _and_ all site pages.
43
+ Alternatively, you can separate search into non-subject page search and subject-topic searches.
44
+
45
+ [TIP]
46
+ For cloud-search on a tight budget, if revision-level indices are too expensive to maintain, you can feed all versions' search fields query an index based on the latest content.
47
+ But assuming significant variance among supported products, a client-based solution might be your best hope for getting results that don't frustrate the user.
@@ -0,0 +1,45 @@
1
+ :page-permalink: /docs/theme/config/semantics
2
+ :page-tags: semantics,inline-semantics
3
+ = Configuring Inline Semantics
4
+
5
+ AsciiDocsy enables robust use of inline semantics, as documented in the link:/docs/style/asciidoc/semantics[Inline Semantics Style Guide].
6
+
7
+ There are a few ways you can customize these semantics, both meaning and presentation.
8
+
9
+ The default semantic roles AsciiDocsy provides -- _term_, _cite_, _path_, _cmd_, and so forth -- is relatively arbitrary.
10
+ Some I have seen or used in production, others (like _case_) are more experimental.
11
+
12
+ These are not coded into the theme in any way except with CSS.
13
+ Simply do not use any role you do not wish to.
14
+ You may also add your own or alter the existing roles however you prefer.
15
+
16
+ Use your `custom.css` file to modify the rendered presentation, and use your own style policy to alter the source markup (the quote characters).
17
+
18
+ Which quotes are used to contain your text (backtick, underscore, aserisk, or hash) will determine the fallback styling for any rendering not styled by your semantic CSS, such as Asciidoctor PDF output with no styling designated for the roles.
19
+
20
+ Role class definitions are not attached to the specific HTML elements used by Asciidoctor.
21
+ This means for other roles, you can swap the quote characters in order to affect the rendered formatting with italics (underscore), bold (asterisk), or no styling (hash symbol).
22
+ You can even use a combination of bold and italic as quotes: [.code]`pass:[*_bold and italic_*]`.
23
+
24
+ [TIP]
25
+ Do not make more semantic roles than your authors will use properly, and do not use them so frequently that they make the page too busy or awkward.
26
+ Remove any roles that are not in regular use.
27
+
28
+ == Inline Semantics in Action
29
+
30
+ Take for example the AsciiDocsy "`Purpose`" section of the README, which is [.term.inclusion]*included* for rendering in the topic template [.path]`_docs/topics/theme_intro.adoc`.
31
+
32
+ .Purpose section of [.path]`README.adoc`
33
+ [source,AsciiDoc]
34
+ ----
35
+ include::{path_to_readme}[tags=purpose]
36
+ ----
37
+
38
+ This code renders like so in the AsciiDocsy theme:
39
+
40
+ ****
41
+ include::{path_to_readme}[tags=purpose]
42
+ ****
43
+
44
+ Without the AsciiDocsy theme -- such as in unthemed PDF or link:{git_source_www}/blob/main/README.adoc#purpose[on GitHub] -- styling "`degrades`" gracefully, falling back on formatting designated by the quotes syntax.
45
+ In this case, the terms marked with the `case` role are bold _and_ italic on GitHub, whereas the term marked `buz` is italic on GitHub even though it is unitalicized in AsciiDocsy.