tiddlywiki 5.1.21 → 5.2.1

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 (1970) hide show
  1. package/.eslintignore +15 -0
  2. package/.eslintrc.yml +267 -0
  3. package/.github/ISSUE_TEMPLATE/bug_report.md +43 -0
  4. package/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  5. package/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md +22 -0
  6. package/.github/workflows/ci.yml +74 -0
  7. package/bin/build-site.sh +11 -2
  8. package/bin/{travis-pre-build.sh → ci-pre-build.sh} +0 -0
  9. package/bin/ci-push.sh +15 -0
  10. package/bin/optimise-svgs.js +79 -0
  11. package/bin/quick-bld.sh +1 -1
  12. package/bin/update-translation-from-html-file.sh +25 -0
  13. package/boot/boot.js +266 -93
  14. package/contributing.md +1 -1
  15. package/core/copyright.tid +1 -1
  16. package/core/images/add-comment.tid +1 -1
  17. package/core/images/advanced-search-button.tid +1 -8
  18. package/core/images/auto-height.tid +1 -3
  19. package/core/images/blank.tid +1 -1
  20. package/core/images/bold.tid +1 -5
  21. package/core/images/cancel-button.tid +1 -5
  22. package/core/images/chevron-down.tid +1 -6
  23. package/core/images/chevron-left.tid +1 -6
  24. package/core/images/chevron-right.tid +1 -6
  25. package/core/images/chevron-up.tid +1 -6
  26. package/core/images/clone-button.tid +1 -6
  27. package/core/images/close-all-button.tid +1 -8
  28. package/core/images/close-button.tid +1 -5
  29. package/core/images/close-others-button.tid +1 -5
  30. package/core/images/copy-clipboard.tid +1 -12
  31. package/core/images/delete-button.tid +1 -11
  32. package/core/images/done-button.tid +1 -5
  33. package/core/images/down-arrow.tid +1 -3
  34. package/core/images/download-button.tid +1 -1
  35. package/core/images/edit-button.tid +1 -6
  36. package/core/images/erase.tid +1 -5
  37. package/core/images/excise.tid +1 -5
  38. package/core/images/export-button.tid +1 -5
  39. package/core/images/file.tid +1 -11
  40. package/core/images/fixed-height.tid +1 -5
  41. package/core/images/fold-all-button.tid +1 -8
  42. package/core/images/fold-button.tid +1 -7
  43. package/core/images/fold-others-button.tid +1 -7
  44. package/core/images/folder.tid +1 -6
  45. package/core/images/full-screen-button.tid +1 -16
  46. package/core/images/github.tid +1 -5
  47. package/core/images/gitter.tid +1 -6
  48. package/core/images/globe.tid +1 -7
  49. package/core/images/heading-1.tid +1 -5
  50. package/core/images/heading-2.tid +1 -5
  51. package/core/images/heading-3.tid +1 -5
  52. package/core/images/heading-4.tid +1 -5
  53. package/core/images/heading-5.tid +1 -5
  54. package/core/images/heading-6.tid +1 -5
  55. package/core/images/help.tid +1 -5
  56. package/core/images/home-button.tid +1 -5
  57. package/core/images/import-button.tid +1 -5
  58. package/core/images/info-button.tid +1 -9
  59. package/core/images/italic.tid +1 -5
  60. package/core/images/left-arrow.tid +1 -3
  61. package/core/images/line-width.tid +1 -6
  62. package/core/images/link.tid +1 -6
  63. package/core/images/linkify.tid +1 -1
  64. package/core/images/list-bullet.tid +1 -5
  65. package/core/images/list-number.tid +1 -5
  66. package/core/images/list.tid +1 -6
  67. package/core/images/locked-padlock.tid +1 -5
  68. package/core/images/mail.tid +1 -5
  69. package/core/images/menu-button.tid +1 -5
  70. package/core/images/minus-button.tid +4 -0
  71. package/core/images/mono-block.tid +1 -5
  72. package/core/images/mono-line.tid +1 -5
  73. package/core/images/new-button.tid +1 -5
  74. package/core/images/new-here-button.tid +1 -11
  75. package/core/images/new-image-button.tid +1 -5
  76. package/core/images/new-journal-button.tid +1 -13
  77. package/core/images/opacity.tid +1 -7
  78. package/core/images/open-window.tid +1 -6
  79. package/core/images/options-button.tid +1 -5
  80. package/core/images/paint.tid +1 -5
  81. package/core/images/palette.tid +1 -5
  82. package/core/images/permalink-button.tid +1 -5
  83. package/core/images/permaview-button.tid +1 -5
  84. package/core/images/picture.tid +1 -5
  85. package/core/images/plugin-generic-language.tid +1 -5
  86. package/core/images/plugin-generic-plugin.tid +1 -5
  87. package/core/images/plugin-generic-theme.tid +1 -5
  88. package/core/images/plus-button.tid +4 -0
  89. package/core/images/preview-closed.tid +1 -12
  90. package/core/images/preview-open.tid +1 -6
  91. package/core/images/print-button.tid +1 -9
  92. package/core/images/quote.tid +1 -5
  93. package/core/images/refresh-button.tid +1 -5
  94. package/core/images/right-arrow.tid +1 -3
  95. package/core/images/rotate-left.tid +1 -1
  96. package/core/images/save-button.tid +1 -5
  97. package/core/images/size.tid +1 -3
  98. package/core/images/spiral.tid +1 -5
  99. package/core/images/stamp.tid +1 -5
  100. package/core/images/star-filled.tid +1 -5
  101. package/core/images/storyview-classic.tid +1 -5
  102. package/core/images/storyview-pop.tid +1 -5
  103. package/core/images/storyview-zoomin.tid +1 -5
  104. package/core/images/strikethrough.tid +1 -6
  105. package/core/images/subscript.tid +1 -5
  106. package/core/images/superscript.tid +1 -5
  107. package/core/images/tag-button.tid +1 -6
  108. package/core/images/theme-button.tid +1 -6
  109. package/core/images/timestamp-off.tid +1 -5
  110. package/core/images/timestamp-on.tid +1 -5
  111. package/core/images/tip.tid +1 -5
  112. package/core/images/transcludify.tid +1 -1
  113. package/core/images/twitter.tid +1 -5
  114. package/core/images/underline.tid +1 -5
  115. package/core/images/unfold-all-button.tid +1 -8
  116. package/core/images/unfold-button.tid +1 -7
  117. package/core/images/unlocked-padlock.tid +1 -5
  118. package/core/images/up-arrow.tid +1 -4
  119. package/core/images/video.tid +1 -5
  120. package/core/images/warning.tid +1 -5
  121. package/core/language/en-GB/ControlPanel.multids +45 -13
  122. package/core/language/en-GB/Docs/ModuleTypes.multids +1 -0
  123. package/core/language/en-GB/Docs/PaletteColours.multids +2 -0
  124. package/core/language/en-GB/EditTemplate.multids +6 -0
  125. package/core/language/en-GB/Fields.multids +2 -1
  126. package/core/language/en-GB/Help/listen.tid +3 -2
  127. package/core/language/en-GB/Help/render.tid +5 -4
  128. package/core/language/en-GB/Help/rendertiddlers.tid +2 -2
  129. package/core/language/en-GB/Help/save.tid +1 -1
  130. package/core/language/en-GB/Import.multids +19 -8
  131. package/core/language/en-GB/Misc.multids +25 -3
  132. package/core/language/en-GB/NewJournal.multids +0 -1
  133. package/core/language/en-GB/NewJournalTags.tid +3 -0
  134. package/core/language/en-GB/TiddlerInfo.multids +1 -1
  135. package/core/modules/commander.js +1 -1
  136. package/core/modules/commands/fetch.js +2 -2
  137. package/core/modules/commands/makelibrary.js +6 -6
  138. package/core/modules/commands/render.js +55 -54
  139. package/core/modules/commands/rendertiddlers.js +1 -1
  140. package/core/modules/commands/savelibrarytiddlers.js +11 -3
  141. package/core/modules/commands/savewikifolder.js +17 -3
  142. package/core/modules/config.js +1 -1
  143. package/core/modules/deserializers.js +95 -79
  144. package/core/modules/editor/engines/framed.js +40 -9
  145. package/core/modules/editor/engines/simple.js +24 -2
  146. package/core/modules/editor/factory.js +92 -19
  147. package/core/modules/editor/operations/text/focus-editor.js +17 -0
  148. package/core/modules/editor/operations/text/insert-text.js +23 -0
  149. package/core/modules/editor/operations/text/prefix-lines.js +3 -2
  150. package/core/modules/filterrunprefixes/all.js +25 -0
  151. package/core/modules/filterrunprefixes/and.js +28 -0
  152. package/core/modules/filterrunprefixes/cascade.js +53 -0
  153. package/core/modules/filterrunprefixes/else.js +27 -0
  154. package/core/modules/filterrunprefixes/except.js +25 -0
  155. package/core/modules/filterrunprefixes/filter.js +49 -0
  156. package/core/modules/filterrunprefixes/intersection.js +31 -0
  157. package/core/modules/filterrunprefixes/map.js +46 -0
  158. package/core/modules/filterrunprefixes/or.js +24 -0
  159. package/core/modules/filterrunprefixes/reduce.js +50 -0
  160. package/core/modules/filterrunprefixes/sort.js +62 -0
  161. package/core/modules/filters/all.js +3 -3
  162. package/core/modules/filters/backlinks.js +3 -3
  163. package/core/modules/filters/compare.js +40 -0
  164. package/core/modules/filters/contains.js +1 -1
  165. package/core/modules/filters/deserializers.js +27 -0
  166. package/core/modules/filters/duplicateslugs.js +36 -0
  167. package/core/modules/filters/editiondescription.js +10 -8
  168. package/core/modules/filters/editions.js +9 -7
  169. package/core/modules/filters/encodings.js +5 -15
  170. package/core/modules/filters/field.js +1 -1
  171. package/core/modules/filters/fields.js +20 -5
  172. package/core/modules/filters/filter.js +42 -0
  173. package/core/modules/filters/format/date.js +26 -0
  174. package/core/modules/filters/format/relativedate.js +26 -0
  175. package/core/modules/filters/format/titlelist.js +25 -0
  176. package/core/modules/filters/format.js +46 -0
  177. package/core/modules/filters/has.js +21 -5
  178. package/core/modules/filters/is/binary.js +36 -0
  179. package/core/modules/filters/is/draft.js +36 -0
  180. package/core/modules/filters/links.js +3 -3
  181. package/core/modules/filters/listops.js +12 -0
  182. package/core/modules/filters/lookup.js +1 -1
  183. package/core/modules/filters/math.js +117 -16
  184. package/core/modules/filters/moduleproperty.js +30 -0
  185. package/core/modules/filters/modules.js +16 -4
  186. package/core/modules/filters/range.js +7 -3
  187. package/core/modules/filters/reduce.js +60 -0
  188. package/core/modules/filters/regexp.js +1 -1
  189. package/core/modules/filters/slugify.js +23 -0
  190. package/core/modules/filters/sortsub.js +60 -0
  191. package/core/modules/filters/strings.js +101 -7
  192. package/core/modules/filters/tag.js +1 -1
  193. package/core/modules/filters/untagged.js +7 -14
  194. package/core/modules/filters/x-listops.js +224 -179
  195. package/core/modules/filters.js +115 -68
  196. package/core/modules/indexers/backlinks-index.js +86 -0
  197. package/core/modules/indexers/field-indexer.js +1 -1
  198. package/core/modules/indexers/tag-indexer.js +2 -2
  199. package/core/modules/info/platform.js +10 -2
  200. package/core/modules/keyboard.js +27 -5
  201. package/core/modules/macros/jsontiddlers.js +4 -3
  202. package/core/modules/macros/makedatauri.js +4 -3
  203. package/core/modules/macros/{uniquetitle.js → unusedtitle.js} +8 -7
  204. package/core/modules/parsers/audioparser.js +2 -1
  205. package/core/modules/parsers/binaryparser.js +49 -6
  206. package/core/modules/parsers/htmlparser.js +4 -2
  207. package/core/modules/parsers/imageparser.js +1 -0
  208. package/core/modules/parsers/parseutils.js +39 -9
  209. package/core/modules/parsers/videoparser.js +4 -2
  210. package/core/modules/parsers/wikiparser/rules/commentblock.js +8 -2
  211. package/core/modules/parsers/wikiparser/rules/commentinline.js +1 -1
  212. package/core/modules/parsers/wikiparser/rules/html.js +7 -10
  213. package/core/modules/parsers/wikiparser/rules/import.js +1 -1
  214. package/core/modules/parsers/wikiparser/rules/list.js +1 -1
  215. package/core/modules/parsers/wikiparser/rules/macrocallblock.js +24 -28
  216. package/core/modules/parsers/wikiparser/rules/macrocallinline.js +17 -27
  217. package/core/modules/parsers/wikiparser/rules/table.js +1 -1
  218. package/core/modules/parsers/wikiparser/wikiparser.js +52 -33
  219. package/core/modules/pluginswitcher.js +2 -0
  220. package/core/modules/saver-handler.js +7 -2
  221. package/core/modules/savers/andtidwiki.js +44 -18
  222. package/core/modules/savers/custom.js +60 -0
  223. package/core/modules/savers/download.js +1 -1
  224. package/core/modules/savers/gitea.js +136 -0
  225. package/core/modules/savers/github.js +6 -5
  226. package/core/modules/savers/gitlab.js +4 -7
  227. package/core/modules/savers/hyperdrive.js +64 -0
  228. package/core/modules/savers/put.js +6 -3
  229. package/core/modules/savers/tiddlyfox.js +1 -1
  230. package/core/modules/savers/twedit.js +1 -1
  231. package/core/modules/savers/upload.js +15 -3
  232. package/core/modules/server/authenticators/basic.js +1 -1
  233. package/core/modules/server/authenticators/header.js +1 -1
  234. package/core/modules/server/routes/delete-tiddler.js +1 -1
  235. package/core/modules/server/routes/get-favicon.js +1 -2
  236. package/core/modules/server/routes/get-file.js +19 -21
  237. package/core/modules/server/routes/get-index.js +1 -23
  238. package/core/modules/server/routes/get-login-basic.js +3 -2
  239. package/core/modules/server/routes/get-status.js +1 -2
  240. package/core/modules/server/routes/get-tiddler-html.js +3 -3
  241. package/core/modules/server/routes/get-tiddler.js +3 -3
  242. package/core/modules/server/routes/get-tiddlers-json.js +26 -13
  243. package/core/modules/server/routes/put-tiddler.js +2 -2
  244. package/core/modules/server/server.js +99 -17
  245. package/core/modules/startup/favicon.js +2 -2
  246. package/core/modules/startup/info.js +28 -18
  247. package/core/modules/startup/load-modules.js +3 -0
  248. package/core/modules/startup/plugins.js +84 -0
  249. package/core/modules/startup/render.js +11 -9
  250. package/core/modules/startup/rootwidget.js +7 -3
  251. package/core/modules/startup/startup.js +4 -10
  252. package/core/modules/startup/story.js +12 -7
  253. package/core/modules/startup/windows.js +5 -8
  254. package/core/modules/storyviews/classic.js +5 -5
  255. package/core/modules/storyviews/pop.js +3 -3
  256. package/core/modules/storyviews/zoomin.js +3 -3
  257. package/core/modules/syncer.js +384 -261
  258. package/core/modules/upgraders/plugins.js +20 -17
  259. package/core/modules/upgraders/system.js +5 -6
  260. package/core/modules/utils/base64-utf8/base64-utf8.module.js +29 -11
  261. package/core/modules/utils/base64-utf8/base64-utf8.module.min.js +1 -1
  262. package/core/modules/utils/csv.js +1 -1
  263. package/core/modules/utils/dom/dom.js +11 -7
  264. package/core/modules/utils/dom/dragndrop.js +26 -5
  265. package/core/modules/utils/dom/http.js +37 -5
  266. package/core/modules/utils/dom/modal.js +42 -6
  267. package/core/modules/utils/dom/popup.js +9 -34
  268. package/core/modules/utils/dom/scroller.js +15 -2
  269. package/core/modules/{startup/css-escape-polyfill.js → utils/escapecss.js} +17 -27
  270. package/core/modules/utils/fakedom.js +23 -3
  271. package/core/modules/utils/filesystem.js +225 -30
  272. package/core/modules/utils/linked-list.js +204 -0
  273. package/core/modules/utils/logger.js +48 -4
  274. package/core/modules/utils/performance.js +1 -1
  275. package/core/modules/utils/transliterate.js +8 -1
  276. package/core/modules/utils/utils.js +218 -19
  277. package/core/modules/widgets/action-confirm.js +78 -0
  278. package/core/modules/widgets/action-createtiddler.js +32 -4
  279. package/core/modules/widgets/action-deletefield.js +1 -1
  280. package/core/modules/widgets/action-listops.js +6 -11
  281. package/core/modules/widgets/action-log.js +93 -0
  282. package/core/modules/widgets/action-navigate.js +12 -1
  283. package/core/modules/widgets/action-popup.js +83 -0
  284. package/core/modules/widgets/action-sendmessage.js +17 -7
  285. package/core/modules/widgets/action-setmultiplefields.js +86 -0
  286. package/core/modules/widgets/browse.js +4 -0
  287. package/core/modules/widgets/button.js +41 -6
  288. package/core/modules/widgets/checkbox.js +5 -1
  289. package/core/modules/widgets/codeblock.js +7 -1
  290. package/core/modules/widgets/count.js +1 -1
  291. package/core/modules/widgets/draggable.js +3 -1
  292. package/core/modules/widgets/droppable.js +32 -18
  293. package/core/modules/widgets/dropzone.js +139 -31
  294. package/core/modules/widgets/edit-binary.js +48 -5
  295. package/core/modules/widgets/edit-bitmap.js +6 -6
  296. package/core/modules/widgets/edit-shortcut.js +3 -3
  297. package/core/modules/widgets/edit.js +7 -9
  298. package/core/modules/widgets/element.js +28 -21
  299. package/core/modules/widgets/entity.js +2 -1
  300. package/core/modules/widgets/eventcatcher.js +181 -0
  301. package/core/modules/widgets/fieldmangler.js +16 -30
  302. package/core/modules/widgets/fields.js +40 -29
  303. package/core/modules/widgets/image.js +5 -5
  304. package/core/modules/widgets/importvariables.js +38 -26
  305. package/core/modules/widgets/jsontiddler.js +91 -0
  306. package/core/modules/widgets/keyboard.js +39 -18
  307. package/core/modules/widgets/let.js +96 -0
  308. package/core/modules/widgets/link.js +15 -5
  309. package/core/modules/widgets/linkcatcher.js +6 -5
  310. package/core/modules/widgets/list.js +70 -28
  311. package/core/modules/widgets/log.js +30 -0
  312. package/core/modules/widgets/macrocall.js +16 -4
  313. package/core/modules/widgets/messagecatcher.js +110 -0
  314. package/core/modules/widgets/navigator.js +71 -40
  315. package/core/modules/widgets/radio.js +26 -14
  316. package/core/modules/widgets/range.js +94 -12
  317. package/core/modules/widgets/raw.js +1 -1
  318. package/core/modules/widgets/reveal.js +26 -4
  319. package/core/modules/widgets/scrollable.js +37 -24
  320. package/core/modules/widgets/select.js +2 -5
  321. package/core/modules/widgets/setmultiplevariables.js +81 -0
  322. package/core/modules/widgets/setvariable.js +2 -2
  323. package/core/modules/widgets/text.js +1 -1
  324. package/core/modules/widgets/tiddler.js +1 -1
  325. package/core/modules/widgets/transclude.js +13 -3
  326. package/core/modules/widgets/vars.js +3 -5
  327. package/core/modules/widgets/view.js +10 -3
  328. package/core/modules/widgets/widget.js +75 -23
  329. package/core/modules/widgets/wikify.js +1 -1
  330. package/core/modules/wiki.js +313 -123
  331. package/core/palettes/Blanca.tid +1 -0
  332. package/core/palettes/Blue.tid +1 -0
  333. package/core/palettes/BrightMute.tid +1 -0
  334. package/core/palettes/ContrastDark.tid +1 -0
  335. package/core/palettes/ContrastLight.tid +1 -0
  336. package/core/palettes/CupertinoDark.tid +130 -0
  337. package/core/palettes/DarkPhotos.tid +1 -0
  338. package/core/palettes/DesertSand.tid +139 -0
  339. package/core/palettes/GruvBoxDark.tid +139 -0
  340. package/core/palettes/Nord.tid +21 -7
  341. package/core/palettes/Rocker.tid +1 -0
  342. package/core/palettes/SolarFlare.tid +1 -0
  343. package/core/palettes/SolarizedDark.tid +113 -0
  344. package/core/palettes/SolarizedLight.tid +88 -95
  345. package/core/palettes/SpartanDay.tid +1 -0
  346. package/core/palettes/SpartanNight.tid +1 -0
  347. package/core/palettes/Twilight.tid +1 -0
  348. package/core/palettes/Vanilla.tid +20 -0
  349. package/core/plugin.info +1 -0
  350. package/core/templates/exporters/CsvFile.tid +1 -4
  351. package/core/templates/exporters/JsonFile.tid +1 -4
  352. package/core/templates/exporters/StaticRiver.tid +1 -1
  353. package/core/templates/exporters/TidFile.tid +1 -0
  354. package/core/templates/external-js/save-all-external-js.tid +3 -1
  355. package/core/templates/external-js/save-offline-external-js.tid +8 -0
  356. package/core/templates/external-js/tiddlywiki.js.tiddlers.tid +1 -1
  357. package/core/templates/external-js/tiddlywiki5-external-js.html.tid +3 -2
  358. package/core/templates/html-div-skinny-tiddler.tid +9 -0
  359. package/core/templates/html-div-tiddler.tid +1 -1
  360. package/core/templates/html-json-skinny-tiddler.tid +4 -0
  361. package/core/templates/html-json-tiddler.tid +3 -0
  362. package/core/templates/save-all.tid +2 -1
  363. package/core/templates/save-lazy-all.tid +3 -0
  364. package/core/templates/save-lazy-images.tid +3 -0
  365. package/core/templates/single.tiddler.window.tid +17 -22
  366. package/core/templates/static.area.tid +4 -0
  367. package/core/templates/static.tiddler.html.tid +2 -2
  368. package/core/templates/store.area.template.html.tid +35 -11
  369. package/core/templates/tiddlywiki5.html.tid +1 -1
  370. package/core/ui/Actions/new-image.tid +3 -2
  371. package/core/ui/Actions/new-journal.tid +4 -3
  372. package/core/ui/Actions/new-tiddler.tid +4 -1
  373. package/core/ui/AdvancedSearch/Filter.tid +22 -2
  374. package/core/ui/AdvancedSearch/FilterButtons/clear.tid +2 -1
  375. package/core/ui/AdvancedSearch/FilterButtons/dropdown.tid +1 -1
  376. package/core/ui/AdvancedSearch/Shadows.tid +25 -7
  377. package/core/ui/AdvancedSearch/Standard.tid +27 -8
  378. package/core/ui/AdvancedSearch/System.tid +24 -7
  379. package/core/ui/AdvancedSearch.tid +1 -1
  380. package/core/ui/AlertTemplate.tid +4 -2
  381. package/core/ui/BinaryWarning.tid +0 -4
  382. package/core/ui/Components/plugin-info.tid +60 -58
  383. package/core/ui/Components/tag-link.tid +1 -1
  384. package/core/ui/ControlPanel/Advanced.tid +1 -1
  385. package/core/ui/ControlPanel/Appearance.tid +1 -1
  386. package/core/ui/ControlPanel/Basics.tid +6 -1
  387. package/core/ui/ControlPanel/Cascades/EditTemplateBody.tid +9 -0
  388. package/core/ui/ControlPanel/Cascades/StoryTiddler.tid +9 -0
  389. package/core/ui/ControlPanel/Cascades/TiddlerColour.tid +9 -0
  390. package/core/ui/ControlPanel/Cascades/TiddlerIcon.tid +9 -0
  391. package/core/ui/ControlPanel/Cascades/ViewTemplateBody.tid +9 -0
  392. package/core/ui/ControlPanel/Cascades/ViewTemplateTitle.tid +9 -0
  393. package/core/ui/ControlPanel/Cascades.tid +9 -0
  394. package/core/ui/ControlPanel/Info.tid +1 -1
  395. package/core/ui/ControlPanel/KeyboardShortcuts.tid +2 -2
  396. package/core/ui/ControlPanel/Modals/AddPlugins.tid +102 -26
  397. package/core/ui/ControlPanel/Plugins/Add/Updates.tid +36 -0
  398. package/core/ui/ControlPanel/Plugins/Installed/Languages.tid +1 -0
  399. package/core/ui/ControlPanel/Plugins/Installed/Plugins.tid +1 -0
  400. package/core/ui/ControlPanel/Plugins/Installed/Themes.tid +1 -0
  401. package/core/ui/ControlPanel/Plugins.tid +2 -2
  402. package/core/ui/ControlPanel/Saving/GitHub.tid +1 -1
  403. package/core/ui/ControlPanel/Saving/TiddlySpot.tid +11 -6
  404. package/core/ui/ControlPanel/Saving/gitea.tid +16 -0
  405. package/core/ui/ControlPanel/Saving.tid +1 -1
  406. package/core/ui/ControlPanel/Toolbars.tid +1 -1
  407. package/core/ui/ControlPanel.tid +1 -1
  408. package/core/ui/DefaultSearchResultList.tid +16 -2
  409. package/core/ui/EditTemplate/Preview/diffs-current.tid +1 -1
  410. package/core/ui/EditTemplate/Preview/diffs-shadow.tid +1 -1
  411. package/core/ui/EditTemplate/Preview/output.tid +1 -0
  412. package/core/ui/EditTemplate/body/canonical-uri.tid +13 -0
  413. package/core/ui/EditTemplate/body/default.tid +38 -0
  414. package/core/ui/EditTemplate/body-editor.tid +13 -2
  415. package/core/ui/EditTemplate/body-toolbar-button.tid +8 -6
  416. package/core/ui/EditTemplate/body.tid +1 -47
  417. package/core/ui/EditTemplate/fields.tid +63 -20
  418. package/core/ui/EditTemplate/tags.tid +17 -21
  419. package/core/ui/EditTemplate/title.tid +2 -2
  420. package/core/ui/EditTemplate/type.tid +14 -2
  421. package/core/ui/EditTemplate.tid +13 -13
  422. package/core/ui/EditToolbar/cancel.tid +3 -2
  423. package/core/ui/EditToolbar/delete.tid +3 -2
  424. package/core/ui/EditToolbar/save.tid +5 -6
  425. package/core/ui/EditorToolbar/clear.tid +1 -1
  426. package/core/ui/EditorToolbar/editor-height.tid +1 -1
  427. package/core/ui/EditorToolbar/file-import.tid +41 -0
  428. package/core/ui/EditorToolbar/line-width.tid +2 -2
  429. package/core/ui/EditorToolbar/link-dropdown.tid +29 -11
  430. package/core/ui/EditorToolbar/opacity.tid +1 -1
  431. package/core/ui/EditorToolbar/paint.tid +1 -1
  432. package/core/ui/EditorToolbar/preview.tid +4 -4
  433. package/core/ui/EditorToolbar/rotate-left.tid +1 -1
  434. package/core/ui/EditorToolbar/size.tid +1 -1
  435. package/core/ui/EditorToolbar/stamp-dropdown-item-template.tid +53 -0
  436. package/core/ui/EditorToolbar/stamp-dropdown.tid +1 -43
  437. package/core/ui/EditorToolbar/stamp.tid +2 -1
  438. package/core/ui/ExportTiddlyWikiCore.tid +22 -0
  439. package/core/ui/ImportListing.tid +61 -18
  440. package/core/ui/KeyboardShortcuts/advanced-search.tid +1 -1
  441. package/core/ui/KeyboardShortcuts/change-sidebar-layout.tid +8 -0
  442. package/core/ui/KeyboardShortcuts/save-wiki.tid +7 -0
  443. package/core/ui/KeyboardShortcuts/switcher.tid +5 -0
  444. package/core/ui/KeyboardShortcuts/toggle-sidebar.tid +1 -1
  445. package/core/ui/LayoutSwitcher.tid +17 -0
  446. package/core/ui/ListItemTemplate.tid +1 -3
  447. package/core/ui/ListTaggedCascade.tid +14 -0
  448. package/core/ui/Manager/ItemSidebarTags.tid +4 -6
  449. package/core/ui/MoreSideBar/Plugins.tid +1 -1
  450. package/core/ui/PageControls/advanced-search.tid +5 -3
  451. package/core/ui/PageControls/closeall.tid +4 -1
  452. package/core/ui/PageControls/controlpanel.tid +2 -0
  453. package/core/ui/PageControls/encryption.tid +8 -3
  454. package/core/ui/PageControls/export-tiddlywikicore.tid +22 -0
  455. package/core/ui/PageControls/fold-all.tid +4 -1
  456. package/core/ui/PageControls/full-screen.tid +4 -1
  457. package/core/ui/PageControls/home.tid +4 -1
  458. package/core/ui/PageControls/import.tid +4 -1
  459. package/core/ui/PageControls/language.tid +2 -1
  460. package/core/ui/PageControls/manager.tid +5 -1
  461. package/core/ui/PageControls/more-page-actions.tid +4 -1
  462. package/core/ui/PageControls/new-image.tid +4 -1
  463. package/core/ui/PageControls/new-journal.tid +5 -1
  464. package/core/ui/PageControls/newtiddler.tid +4 -1
  465. package/core/ui/PageControls/palette.tid +2 -1
  466. package/core/ui/PageControls/print.tid +4 -1
  467. package/core/ui/PageControls/refresh.tid +4 -1
  468. package/core/ui/PageControls/savewiki.tid +4 -1
  469. package/core/ui/PageControls/storyview.tid +2 -1
  470. package/core/ui/PageControls/tag-button.tid +5 -1
  471. package/core/ui/PageControls/theme.tid +2 -1
  472. package/core/ui/PageControls/timestamp.tid +8 -3
  473. package/core/ui/PageControls/unfold-all.tid +4 -1
  474. package/core/ui/PageControls.tid +1 -1
  475. package/core/ui/PageTemplate/pluginreloadwarning.tid +1 -1
  476. package/core/ui/PageTemplate/story.tid +1 -1
  477. package/core/ui/PageTemplate.tid +12 -23
  478. package/core/ui/PaletteManager.tid +4 -4
  479. package/core/ui/PluginInfoDefaultContents.tid +1 -3
  480. package/core/ui/PluginListItemTemplate.tid +12 -6
  481. package/core/ui/RootTemplate.tid +4 -0
  482. package/core/ui/SearchResults.tid +1 -1
  483. package/core/ui/SideBar/More.tid +2 -2
  484. package/core/ui/SideBar/Open.tid +2 -2
  485. package/core/ui/SideBarSegments/search.tid +64 -25
  486. package/core/ui/SideBarSegments/tabs.tid +1 -1
  487. package/core/ui/StoryTiddlerTemplate.tid +3 -0
  488. package/core/ui/SwitcherModal.tid +11 -0
  489. package/core/ui/TagManager.tid +5 -0
  490. package/core/ui/TagPickerTagTemplate.tid +23 -0
  491. package/core/ui/TagTemplate.tid +2 -2
  492. package/core/ui/TiddlerIcon.tid +8 -0
  493. package/core/ui/TiddlerInfo/Advanced.tid +1 -1
  494. package/core/ui/TiddlerInfo.tid +1 -1
  495. package/core/ui/TopRightBar/menu.tid +6 -6
  496. package/core/ui/ViewTemplate/body/blank.tid +3 -0
  497. package/core/ui/ViewTemplate/body/code.tid +3 -0
  498. package/core/ui/ViewTemplate/body/default.tid +7 -0
  499. package/core/ui/ViewTemplate/{import.tid → body/import.tid} +9 -3
  500. package/core/ui/ViewTemplate/body/plugin.tid +10 -0
  501. package/core/ui/ViewTemplate/body.tid +1 -9
  502. package/core/ui/ViewTemplate/subtitle.tid +3 -3
  503. package/core/ui/ViewTemplate/title/default.tid +6 -0
  504. package/core/ui/ViewTemplate/title/system.tid +6 -0
  505. package/core/ui/ViewTemplate/title.tid +7 -18
  506. package/core/ui/ViewTemplate.tid +8 -1
  507. package/core/ui/ViewToolbar/clone.tid +0 -1
  508. package/core/ui/ViewToolbar/close-others.tid +0 -1
  509. package/core/ui/ViewToolbar/edit.tid +0 -1
  510. package/core/ui/ViewToolbar/fold-others.tid +0 -1
  511. package/core/ui/ViewToolbar/fold.tid +0 -2
  512. package/core/ui/ViewToolbar/info.tid +1 -0
  513. package/core/ui/ViewToolbar/more-tiddler-actions.tid +0 -1
  514. package/core/ui/ViewToolbar/new-here.tid +3 -2
  515. package/core/ui/ViewToolbar/new-journal-here.tid +2 -1
  516. package/core/ui/ViewToolbar/open-window.tid +0 -1
  517. package/core/ui/ViewToolbar/permalink.tid +0 -1
  518. package/core/ui/ViewToolbar/permaview.tid +0 -1
  519. package/core/wiki/config/AutoFocus.tid +2 -0
  520. package/core/wiki/config/EditModeFieldnameFilter.tid +3 -0
  521. package/core/wiki/config/EditTabIndex.tid +2 -0
  522. package/core/wiki/config/EditTemplateBodyFilters.multids +5 -0
  523. package/core/wiki/config/EditorEnableImportFilter.tid +4 -0
  524. package/core/wiki/config/EditorImportContentTypesFilter.tid +4 -0
  525. package/core/wiki/config/OfficialPluginLibrary.tid +1 -1
  526. package/core/wiki/config/RegisterPluginTypes.multids +7 -0
  527. package/core/wiki/config/SaverFilter.tid +1 -1
  528. package/core/wiki/config/ServerExternalFiltersDefault.tid +2 -0
  529. package/core/wiki/config/ShortcutInfo.multids +15 -0
  530. package/core/wiki/config/StoryTiddlerTemplateFilters.multids +5 -0
  531. package/core/wiki/config/SwitcherTargets.multids +6 -0
  532. package/core/wiki/config/SyncFilter.tid +1 -1
  533. package/core/wiki/config/SyncSystemTiddlersFromServer.tid +3 -0
  534. package/core/wiki/config/TiddlerColourFilters.multids +5 -0
  535. package/core/wiki/config/TiddlerIconFilters.multids +5 -0
  536. package/core/wiki/config/ViewTemplateBodyFilters.multids +8 -0
  537. package/core/wiki/config/ViewTemplateTitleFilters.multids +5 -0
  538. package/core/wiki/config/shortcuts/shortcuts-mac.multids +1 -0
  539. package/core/wiki/config/shortcuts/shortcuts.multids +13 -0
  540. package/core/wiki/currpalettepreview.tid +32 -3
  541. package/core/wiki/debugstylesheets.tid +9 -0
  542. package/core/wiki/macros/CSS.tid +2 -2
  543. package/core/wiki/macros/colour-picker.tid +2 -2
  544. package/core/wiki/macros/export.tid +10 -6
  545. package/core/wiki/macros/keyboard-driven-input.tid +88 -0
  546. package/core/wiki/macros/list.tid +8 -8
  547. package/core/wiki/macros/tabs.tid +8 -4
  548. package/core/wiki/macros/tag-picker.tid +75 -26
  549. package/core/wiki/macros/tag.tid +5 -3
  550. package/core/wiki/macros/timeline.tid +2 -3
  551. package/core/wiki/macros/toc.tid +5 -5
  552. package/core/wiki/minifocusswitcher.tid +7 -0
  553. package/core/wiki/peek-stylesheets.tid +3 -0
  554. package/core/wiki/tags/ControlPanelPlugins.tid +1 -1
  555. package/core/wiki/tags/EditTemplateBodyFilter.tid +2 -0
  556. package/core/wiki/tags/PluginLibrary.tid +2 -0
  557. package/core/wiki/tags/StoryTiddlerTemplateFilter.tid +2 -0
  558. package/core/wiki/tags/TiddlerColourFilter.tid +3 -0
  559. package/core/wiki/tags/TiddlerIconFilter.tid +3 -0
  560. package/core/wiki/tags/ViewTemplateBodyFilter.tid +3 -0
  561. package/core/wiki/tags/ViewTemplateTitleFilter.tid +3 -0
  562. package/core/wiki/title.tid +4 -1
  563. package/core/wiki/viewswitcher.tid +3 -6
  564. package/editions/de-AT/tiddlers/external/tiddlywiki.files +12 -0
  565. package/editions/de-AT/tiddlers/intro/HelloThumbnail_-_Latest_Version.tid +1 -1
  566. package/editions/de-AT/tiddlers/system/static.content.tid +2 -2
  567. package/editions/de-AT/tiddlywiki.info +3 -2
  568. package/editions/de-AT-server/tiddlywiki.info +2 -1
  569. package/editions/de-DE/tiddlywiki.info +3 -2
  570. package/editions/dev/tiddlers/Continuous Deployment.tid +3 -3
  571. package/editions/dev/tiddlers/HelloThere.tid +3 -1
  572. package/editions/dev/tiddlers/build/Releasing a new version of TiddlyWiki.tid +2 -2
  573. package/editions/dev/tiddlers/from Heigele and Jurke/Data-Storage.tid +1 -9
  574. package/editions/dev/tiddlers/from Heigele and Jurke/wikimethod module type.tid +3 -2
  575. package/editions/dev/tiddlers/from tw5.com/How to create plugins in the browser.tid +1 -1
  576. package/editions/dev/tiddlers/from tw5.com/moduletypes/SyncAdaptorModules.tid +59 -5
  577. package/editions/dev/tiddlers/from tw5.com/moduletypes/WikiRuleModules.tid +6 -5
  578. package/editions/dev/tiddlers/indexer modules.tid +55 -0
  579. package/editions/dev/tiddlers/new/Data Storage in Single File TiddlyWiki.tid +100 -0
  580. package/editions/dev/tiddlers/new/Data Storage.tid +10 -0
  581. package/editions/dev/tiddlers/new/HookMechanism.tid +15 -2
  582. package/editions/dev/tiddlers/new/Hook_ th-before-importing.tid +68 -0
  583. package/editions/dev/tiddlers/new/Hook_ th-closing-tiddler.tid +20 -0
  584. package/editions/dev/tiddlers/new/Hook__th-importing-tiddler.tid +3 -1
  585. package/editions/dev/tiddlers/new/Hook__th-rendering-element.tid +35 -0
  586. package/editions/dev/tiddlers/new/Hook_th-make-tiddler-path.tid +14 -0
  587. package/editions/dev/tiddlers/new/ParserSubclassingMechanism.tid +42 -0
  588. package/editions/dev/tiddlers/new/TiddlyWiki Drag and Drop Interop.tid +15 -0
  589. package/editions/dev/tiddlers/new/dragndropinterop.html +35 -0
  590. package/editions/dev/tiddlers/new/dragndropinterop.html.meta +3 -0
  591. package/editions/dev/tiddlers/new/save-dragndropinterop.tid +3 -0
  592. package/editions/dev/tiddlers/new/th-saving-tiddler.tid +3 -2
  593. package/editions/dev/tiddlers/system/static.content.tid +2 -2
  594. package/editions/dev/tiddlywiki.info +2 -1
  595. package/editions/dynaviewdemo/tiddlers/ViewTemplate.tid +4 -7
  596. package/editions/es-ES/tiddlers/Page_and_tiddler_layout_customisation.tid +3 -3
  597. package/editions/es-ES/tiddlywiki.info +3 -2
  598. package/editions/es-ES-server/tiddlywiki.info +2 -1
  599. package/editions/fr-FR/tiddlers/HelloThumbnail - Latest Version.tid +1 -1
  600. package/editions/fr-FR/tiddlers/Page and tiddler layout customisation.tid +3 -3
  601. package/editions/fr-FR/tiddlywiki.info +3 -2
  602. package/editions/fr-FR-server/tiddlywiki.info +2 -1
  603. package/editions/full/tiddlywiki.info +1 -0
  604. package/editions/innerwikidemo/tiddlywiki.info +2 -1
  605. package/editions/introduction/tiddlers/slides/TiddlyWiki.tid +1 -1
  606. package/editions/introduction/tiddlers/slides/Translations.tid +4 -6
  607. package/editions/introduction/tiddlers/system/styles.tid +2 -1
  608. package/editions/introduction/tiddlywiki.info +8 -1
  609. package/editions/ja-JP/tiddlywiki.info +3 -2
  610. package/editions/ko-KR/tiddlers/system/static.content.tid +2 -2
  611. package/editions/ko-KR/tiddlywiki.info +3 -2
  612. package/editions/ko-KR-server/tiddlywiki.info +2 -1
  613. package/editions/markdowndemo/tiddlers/HelloThere.tid +2 -29
  614. package/editions/markdowndemo/tiddlers/MarkdownExample.tid +20 -21
  615. package/editions/prerelease/tiddlers/$__StoryList.tid +5 -0
  616. package/editions/prerelease/tiddlers/Release 5.2.2.tid +54 -0
  617. package/editions/prerelease/tiddlers/system/PrereleaseLocalPluginLibrary.tid +1 -1
  618. package/editions/prerelease/tiddlers/system/PrereleaseOfficialPluginLibrary.tid +1 -1
  619. package/editions/prerelease/tiddlers/system/download-empty.tid +9 -0
  620. package/editions/prerelease/tiddlers/system/favicon.ico +0 -0
  621. package/editions/prerelease/tiddlers/system/favicon.ico.meta +2 -0
  622. package/editions/prerelease/tiddlers/system/stickytitles.tid +1 -1
  623. package/editions/prerelease/tiddlywiki.info +3 -2
  624. package/editions/server/tiddlywiki.info +1 -6
  625. package/editions/server-external-js/tiddlywiki.info +26 -0
  626. package/editions/share/tiddlywiki.info +14 -0
  627. package/editions/test/tiddlers/tests/data/deserializers/case 1.tid +4 -0
  628. package/editions/test/tiddlers/tests/data/deserializers/case 2.tid +12 -0
  629. package/editions/test/tiddlers/tests/data/deserializers/case 3.tid +18 -0
  630. package/editions/test/tiddlers/tests/data/deserializers/case 4.tid +19 -0
  631. package/editions/test/tiddlers/tests/data/deserializers/case 5.tid +20 -0
  632. package/editions/test/tiddlers/tests/test-backlinks.js +132 -0
  633. package/editions/test/tiddlers/tests/test-compare-filter.js +84 -0
  634. package/editions/test/tiddlers/tests/test-deserializers.js +39 -0
  635. package/editions/test/tiddlers/tests/test-filters.js +885 -468
  636. package/editions/test/tiddlers/tests/test-html-parser.js +18 -12
  637. package/editions/test/tiddlers/tests/test-linked-list.js +270 -0
  638. package/editions/test/tiddlers/tests/test-parsetextreference.js +132 -0
  639. package/editions/test/tiddlers/tests/test-prefixes-filter.js +440 -0
  640. package/editions/test/tiddlers/tests/test-tags.js +1 -1
  641. package/editions/test/tiddlers/tests/test-utils.js +62 -0
  642. package/editions/test/tiddlers/tests/test-widget.js +460 -149
  643. package/editions/test/tiddlers/tests/test-wikitext-parser.js +127 -20
  644. package/editions/tw5.com/tiddlers/$__StoryList.tid +5 -0
  645. package/editions/tw5.com/tiddlers/about/Developers.tid +8 -3
  646. package/editions/tw5.com/tiddlers/about/History of TiddlyWiki.tid +1 -1
  647. package/editions/tw5.com/tiddlers/{License.tid → about/License.tid} +3 -3
  648. package/editions/tw5.com/tiddlers/commands/BuildCommand.tid +1 -1
  649. package/editions/tw5.com/tiddlers/commands/NamedCommandParameters.tid +2 -2
  650. package/editions/tw5.com/tiddlers/community/Community Editions.tid +24 -0
  651. package/editions/tw5.com/tiddlers/community/Community Links Aggregator.tid +10 -0
  652. package/editions/tw5.com/tiddlers/community/Community Palettes.tid +24 -0
  653. package/editions/tw5.com/tiddlers/community/Community Plugins.tid +24 -0
  654. package/editions/tw5.com/tiddlers/community/Community Themes.tid +24 -0
  655. package/editions/tw5.com/tiddlers/community/Community.tid +5 -3
  656. package/editions/tw5.com/tiddlers/community/Contributing.tid +49 -13
  657. package/editions/tw5.com/tiddlers/community/Forums.tid +7 -11
  658. package/editions/tw5.com/tiddlers/community/Other Resources.tid +24 -0
  659. package/editions/tw5.com/tiddlers/community/TW Icons by morosanuae.tid +9 -0
  660. package/editions/tw5.com/tiddlers/community/TiddlyWiki Hangouts.tid +2 -2
  661. package/editions/tw5.com/tiddlers/community/editions/Drift by Tony K.tid +17 -0
  662. package/editions/tw5.com/tiddlers/community/editions/Stroll by David Gifford.tid +18 -0
  663. package/editions/tw5.com/tiddlers/community/editions/TiddlyResearch by Kebi.tid +25 -0
  664. package/editions/tw5.com/tiddlers/community/{resources → editions}/_Cardo-A Task and Project Management Wiki_ by David_Szego.tid +2 -2
  665. package/editions/tw5.com/tiddlers/community/{resources → editions}/_Noteself_ by Danielo Rodriguez.tid +4 -2
  666. package/editions/tw5.com/tiddlers/community/examples/PETTIL.tid +2 -2
  667. package/editions/tw5.com/tiddlers/community/examples/Reveal.js by Devin Weaver.tid +20 -0
  668. package/editions/tw5.com/tiddlers/community/{resources → examples}/_Lucky Sushi_ online shop by sini-Kit.tid +4 -4
  669. package/editions/tw5.com/tiddlers/community/palettes/Dracula for tiddlywiki.tid +22 -0
  670. package/editions/tw5.com/tiddlers/community/palettes/palletes by JD.tid +20 -0
  671. package/editions/tw5.com/tiddlers/community/{resources → plugins}/Ace Editor Plugin by Joerg Plewe.tid +2 -2
  672. package/editions/tw5.com/tiddlers/community/{resources → plugins}/BJHacks.tid +2 -2
  673. package/editions/tw5.com/tiddlers/community/{resources → plugins}/Disqus comments plugin by bimlas.tid +2 -2
  674. package/editions/tw5.com/tiddlers/community/{resources → plugins}/Encrypt single tiddler plugin.tid +2 -2
  675. package/editions/tw5.com/tiddlers/community/{resources → plugins}/Eucalys Tiddly World.tid +4 -3
  676. package/editions/tw5.com/tiddlers/community/plugins/Favorites by Mohammad.tid +18 -0
  677. package/editions/tw5.com/tiddlers/community/{resources → plugins}/Full Text Search Plugin by Rob Hoelz.tid +2 -2
  678. package/editions/tw5.com/tiddlers/community/{resources → plugins}/GSD5.tid +3 -3
  679. package/editions/tw5.com/tiddlers/community/{resources → plugins}/IndexedDB Plugin by Andreas Abeck.tid +2 -2
  680. package/editions/tw5.com/tiddlers/community/{resources → plugins}/Json Mangler plugin by Joshua Fontany.tid +5 -4
  681. package/editions/tw5.com/tiddlers/community/{resources → plugins}/Kin filter operator by bimlas.tid +2 -2
  682. package/editions/tw5.com/tiddlers/community/plugins/Kookma Plugin Library by Mohammad.tid +15 -0
  683. package/editions/tw5.com/tiddlers/community/{resources → plugins}/Leaflet_maps_plugin_by_Sylvain_Comte.tid +2 -2
  684. package/editions/tw5.com/tiddlers/community/{resources → plugins}/Locator plugin by bimlas.tid +2 -2
  685. package/editions/tw5.com/tiddlers/community/{resources → plugins}/MathJax Plugin by Martin Kantor.tid +2 -2
  686. package/editions/tw5.com/tiddlers/community/{resources → plugins}/Plugins by TheDiveO.tid +2 -2
  687. package/editions/tw5.com/tiddlers/community/plugins/Refnotes by Mohammad.tid +22 -0
  688. package/editions/tw5.com/tiddlers/community/plugins/Searchwikis by Mohammad.tid +21 -0
  689. package/editions/tw5.com/tiddlers/community/plugins/Shiraz by Mohammad.tid +32 -0
  690. package/editions/tw5.com/tiddlers/community/plugins/Slider by Mohammad.tid +18 -0
  691. package/editions/tw5.com/tiddlers/community/plugins/Tiddler Commander by Mohammad.tid +25 -0
  692. package/editions/tw5.com/tiddlers/community/{resources → plugins}/TiddlyClip by buggyjay.tid +2 -2
  693. package/editions/tw5.com/tiddlers/community/{resources → plugins}/TiddlyMap by Felix Kuppers.tid +2 -2
  694. package/editions/tw5.com/tiddlers/community/{resources → plugins}/TiddlyWiki for Scholars.tid +2 -2
  695. package/editions/tw5.com/tiddlers/community/plugins/Tiddlyshow by Mohammad.tid +16 -0
  696. package/editions/tw5.com/tiddlers/community/plugins/Timelines by Mohammad.tid +14 -0
  697. package/editions/tw5.com/tiddlers/community/{resources → plugins}/Tinka by Andreas Hahn.tid +2 -2
  698. package/editions/tw5.com/tiddlers/community/plugins/Todolist by Mohammad.tid +14 -0
  699. package/editions/tw5.com/tiddlers/community/plugins/Trashbin by Mohammad.tid +14 -0
  700. package/editions/tw5.com/tiddlers/community/plugins/Utility by Mohammad.tid +13 -0
  701. package/editions/tw5.com/tiddlers/community/{resources → plugins}/_JD Mobile Layout plugin_ by JD.tid +2 -2
  702. package/editions/tw5.com/tiddlers/community/{resources → plugins}/_Mal's Sandbox_ by Mal.tid +2 -2
  703. package/editions/tw5.com/tiddlers/community/{resources → plugins}/_SK_Plugins_ by Stephen Kimmel.tid +2 -2
  704. package/editions/tw5.com/tiddlers/community/{resources → plugins}/_Slides and Stories_ by Jan.tid +2 -2
  705. package/editions/tw5.com/tiddlers/community/{resources → plugins}/_TW5-TeXZilla_ plugin by Joe Renes.tid +2 -2
  706. package/editions/tw5.com/tiddlers/community/{resources → plugins}/_Tekan_ Kanban that stays with you_ by Riz.tid +2 -2
  707. package/editions/tw5.com/tiddlers/community/{resources → plugins}/datepicker based on Pikaday.tid +2 -2
  708. package/editions/tw5.com/tiddlers/community/{resources → plugins}/rboue's plugins for TiddlyWiki.tid +2 -2
  709. package/editions/tw5.com/tiddlers/community/{resources → plugins}/vis.js Timeline.tid +2 -2
  710. package/editions/tw5.com/tiddlers/community/resources/BrainTest.tid +2 -2
  711. package/editions/tw5.com/tiddlers/community/resources/Code styles and auto format settings for IDEs.tid +2 -2
  712. package/editions/tw5.com/tiddlers/community/resources/CouchDB Adaptor.tid +2 -2
  713. package/editions/tw5.com/tiddlers/community/resources/Filter Examples by Tobias Beer.tid +2 -2
  714. package/editions/tw5.com/tiddlers/community/resources/Font Awesome 5 Free SVGs for TiddlyWiki by morosanuae.tid +2 -2
  715. package/editions/tw5.com/tiddlers/community/resources/Gospel_Bubbles_by_Rev_David_Gifford.tid +2 -2
  716. package/editions/tw5.com/tiddlers/community/resources/Grok TiddlyWiki by Soren Bjornstad.tid +16 -0
  717. package/editions/tw5.com/tiddlers/community/resources/Heeg.ru.tid +2 -2
  718. package/editions/tw5.com/tiddlers/community/resources/Projectify by Nicolas Petton.tid +20 -0
  719. package/editions/tw5.com/tiddlers/community/resources/RegExp in Tiddlywiki by Mohammad.tid +19 -0
  720. package/editions/tw5.com/tiddlers/community/resources/SeeAlso by Matias Goldman.tid +2 -2
  721. package/editions/tw5.com/tiddlers/community/resources/Semantic Colors by Mohammad.tid +22 -0
  722. package/editions/tw5.com/tiddlers/community/resources/TB5 a pocket full of tips by Tobias Beer.tid +2 -2
  723. package/editions/tw5.com/tiddlers/community/resources/TW-Scripts by Mohammad.tid +22 -0
  724. package/editions/tw5.com/tiddlers/community/resources/TW5 Magick.tid +2 -2
  725. package/editions/tw5.com/tiddlers/community/resources/TW5-SingleExecutable_by_Jed_Carty.tid +2 -2
  726. package/editions/tw5.com/tiddlers/community/resources/TW5-firebase_ TiddlyWiki5 for Google Firebase by Peter Neumark.tid +27 -0
  727. package/editions/tw5.com/tiddlers/community/resources/TWCommunitySearch.tid +2 -2
  728. package/editions/tw5.com/tiddlers/community/resources/TWaddle by Matias Goldman.tid +1 -1
  729. package/editions/tw5.com/tiddlers/community/resources/TiddlyChrome by Arlen Beiler.tid +2 -2
  730. package/editions/tw5.com/tiddlers/community/resources/TiddlyDrive Add-on for Google Drive by Joshua Stubbs.tid +6 -4
  731. package/editions/tw5.com/tiddlers/community/resources/TiddlyServer by Arlen Beiler.tid +5 -3
  732. package/editions/tw5.com/tiddlers/community/resources/TiddlyWiki Notes.tid +2 -2
  733. package/editions/tw5.com/tiddlers/community/resources/TiddlyWiki Posts.tid +2 -2
  734. package/editions/tw5.com/tiddlers/community/resources/TiddlyWiki Video Tutorials by Francis Meetze.tid +2 -2
  735. package/editions/tw5.com/tiddlers/community/resources/TiddlyWiki extensions for Sublime Text 3 by roma0104.tid +2 -2
  736. package/editions/tw5.com/tiddlers/community/resources/TiddlyWiki extensions for ViM.tid +2 -2
  737. package/editions/tw5.com/tiddlers/community/resources/TiddlyWiki guide FR.tid +2 -2
  738. package/editions/tw5.com/tiddlers/community/resources/TiddlyWiki wu.tid +2 -2
  739. package/editions/tw5.com/tiddlers/community/resources/TiddlyWiki5 Playground.tid +2 -2
  740. package/editions/tw5.com/tiddlers/community/resources/TiddlyWiki5 Squared by Iannis Zannos.tid +2 -2
  741. package/editions/tw5.com/tiddlers/community/resources/Twexe_ Single File Tiddlywiki5 executable.tid +29 -0
  742. package/editions/tw5.com/tiddlers/community/resources/Widdly by Opennota.tid +3 -3
  743. package/editions/tw5.com/tiddlers/community/resources/Wikilabs by PMario.tid +3 -3
  744. package/editions/tw5.com/tiddlers/community/resources/Wills QnD gTD.tid +2 -2
  745. package/editions/tw5.com/tiddlers/community/resources/_ATWiki_ by Lamusia Project.tid +2 -2
  746. package/editions/tw5.com/tiddlers/community/resources/_Dropboard_ by Reid Gould.tid +2 -2
  747. package/editions/tw5.com/tiddlers/community/resources/_Dynamic Tables_ by Jed Carty.tid +2 -2
  748. package/editions/tw5.com/tiddlers/community/resources/_Hacks_ by Thomas Elmiger.tid +3 -2
  749. package/editions/tw5.com/tiddlers/community/resources/_In My Socks_ by Jed Carty.tid +2 -2
  750. package/editions/tw5.com/tiddlers/community/resources/_MathCell_ by Ste Wilson.tid +3 -2
  751. package/editions/tw5.com/tiddlers/community/resources/_TWeb.at_ by Mario Pietsch.tid +2 -2
  752. package/editions/tw5.com/tiddlers/community/resources/_TiddlyServer_ by Matt Lauber.tid +6 -3
  753. package/editions/tw5.com/tiddlers/community/resources/_TiddlyWiki Knowledge Network_ by Dmitry Sokolov.tid +2 -2
  754. package/editions/tw5.com/tiddlers/community/resources/_TiddlyWiki Toolmap_ by David Gifford.tid +2 -2
  755. package/editions/tw5.com/tiddlers/community/resources/_TiddlyWiki5 Bourbon_ from mkt_memory.tid +2 -2
  756. package/editions/tw5.com/tiddlers/community/resources/_TiddlyWiki5 Forum on Reddit_ by Riz.tid +2 -2
  757. package/editions/tw5.com/tiddlers/community/resources/_Timimi_ Extension and executable by Riz.tid +24 -8
  758. package/editions/tw5.com/tiddlers/community/resources/_X3DOM for TiddlyWiki 5_ by Jamal Wills.tid +2 -2
  759. package/editions/tw5.com/tiddlers/community/resources/_file-backups_ Extension Firefox by pmario.tid +5 -3
  760. package/editions/tw5.com/tiddlers/community/resources/_muritest_ by Simon Huber.tid +2 -2
  761. package/editions/tw5.com/tiddlers/community/resources/_savetiddlers_ Extension for Chrome and Firefox by buggyj.tid +4 -2
  762. package/editions/tw5.com/tiddlers/community/resources/twproxy by Steve Gattuso.tid +2 -2
  763. package/editions/tw5.com/tiddlers/community/themes/Mono theme by JD.tid +11 -0
  764. package/editions/tw5.com/tiddlers/community/themes/Notebook theme by Nicolas Petton.tid +19 -0
  765. package/editions/tw5.com/tiddlers/community/themes/Whitespace a negative-spacious webapp-nostalgic theme by JD.tid +11 -0
  766. package/editions/tw5.com/tiddlers/community/{resources → themes}/_Ghostwriter theme by Rory Gibson_ by Riz.tid +2 -2
  767. package/editions/tw5.com/tiddlers/community/{resources → themes}/_Moments-A little color won't hurt_ by Riz.tid +2 -2
  768. package/editions/tw5.com/tiddlers/community/tutorials/GitHub Saver Tutorial by Mohammad.tid +23 -0
  769. package/editions/tw5.com/tiddlers/concepts/Cascades.tid +47 -0
  770. package/editions/tw5.com/tiddlers/concepts/ColourPalettes.tid +1 -1
  771. package/editions/tw5.com/tiddlers/concepts/Concepts.tid +5 -3
  772. package/editions/tw5.com/tiddlers/concepts/Date Fields.tid +5 -4
  773. package/editions/tw5.com/tiddlers/concepts/Edit Template Body Cascade.tid +16 -0
  774. package/editions/tw5.com/tiddlers/concepts/InfoPanel.tid +3 -3
  775. package/editions/tw5.com/tiddlers/concepts/Macros.tid +2 -2
  776. package/editions/tw5.com/tiddlers/concepts/Messages.tid +2 -2
  777. package/editions/tw5.com/tiddlers/concepts/ModuleType.tid +2 -2
  778. package/editions/tw5.com/tiddlers/concepts/Modules.tid +1 -1
  779. package/editions/tw5.com/tiddlers/concepts/Order of Tagged Tiddlers.tid +1 -1
  780. package/editions/tw5.com/tiddlers/concepts/PermaLinks.tid +4 -4
  781. package/editions/tw5.com/tiddlers/concepts/Railroad Diagrams.tid +2 -1
  782. package/editions/tw5.com/tiddlers/concepts/ShadowTiddlers.tid +14 -3
  783. package/editions/tw5.com/tiddlers/concepts/Story Tiddler Template Cascade.tid +16 -0
  784. package/editions/tw5.com/tiddlers/concepts/Story Tiddler Template.tid +13 -0
  785. package/editions/tw5.com/tiddlers/concepts/SystemTags.tid +9 -8
  786. package/editions/tw5.com/tiddlers/concepts/TagTiddlers.tid +1 -1
  787. package/editions/tw5.com/tiddlers/concepts/Tiddler Colour Cascade.tid +16 -0
  788. package/editions/tw5.com/tiddlers/concepts/Tiddler Icon Cascade.tid +16 -0
  789. package/editions/tw5.com/tiddlers/concepts/TiddlerFields.tid +36 -33
  790. package/editions/tw5.com/tiddlers/concepts/Transclusion.tid +1 -1
  791. package/editions/tw5.com/tiddlers/concepts/View Template Body Cascade.tid +19 -0
  792. package/editions/tw5.com/tiddlers/concepts/View Template Title Cascade.tid +16 -0
  793. package/editions/tw5.com/tiddlers/customising/Alternative page layouts.tid +15 -0
  794. package/editions/tw5.com/tiddlers/customising/Configuring startup tiddlers.tid +3 -1
  795. package/editions/tw5.com/tiddlers/customising/Creating new toolbar buttons.tid +35 -0
  796. package/editions/tw5.com/tiddlers/customising/Customise TiddlyWiki.tid +6 -5
  797. package/editions/tw5.com/tiddlers/customising/Customising TiddlyWiki's user interface.tid +75 -0
  798. package/editions/tw5.com/tiddlers/customising/Customising search results.tid +19 -1
  799. package/editions/tw5.com/tiddlers/definitions/BT.tid +3 -2
  800. package/editions/tw5.com/tiddlers/definitions/Base64.tid +1 -1
  801. package/editions/tw5.com/tiddlers/definitions/Cascading Style Sheets.tid +1 -1
  802. package/editions/tw5.com/tiddlers/definitions/Comma Separated Values.tid +1 -1
  803. package/editions/tw5.com/tiddlers/definitions/Data URI.tid +1 -1
  804. package/editions/tw5.com/tiddlers/definitions/Document Object Model.tid +1 -1
  805. package/editions/tw5.com/tiddlers/definitions/GitHub.tid +1 -1
  806. package/editions/tw5.com/tiddlers/definitions/HyperText Markup Language.tid +1 -1
  807. package/editions/tw5.com/tiddlers/definitions/JavaScript Object Notation.tid +1 -1
  808. package/editions/tw5.com/tiddlers/definitions/MathML.tid +2 -2
  809. package/editions/tw5.com/tiddlers/definitions/OpenSource.tid +1 -1
  810. package/editions/tw5.com/tiddlers/definitions/Osmosoft.tid +3 -2
  811. package/editions/tw5.com/tiddlers/definitions/Percent Encoding.tid +1 -1
  812. package/editions/tw5.com/tiddlers/definitions/Quine.tid +1 -1
  813. package/editions/tw5.com/tiddlers/definitions/TiddlyFox.tid +2 -2
  814. package/editions/tw5.com/tiddlers/definitions/URI.tid +1 -1
  815. package/editions/tw5.com/tiddlers/definitions/Web Developer Tools.tid +7 -0
  816. package/editions/tw5.com/tiddlers/definitions/node-webkit.tid +2 -1
  817. package/editions/tw5.com/tiddlers/demonstrations/Alice in Wonderland.tid +4 -3707
  818. package/editions/tw5.com/tiddlers/demonstrations/Apple.tid +2 -2
  819. package/editions/tw5.com/tiddlers/demonstrations/Caruso - Ave Maria.tid +1 -0
  820. package/editions/tw5.com/tiddlers/demonstrations/CustomStoryTiddlerTemplateDemo.tid/Demo Tiddler List with Custom Story Tiddler Template.tid +10 -0
  821. package/editions/tw5.com/tiddlers/demonstrations/CustomStoryTiddlerTemplateDemo.tid/Styles.tid +31 -0
  822. package/editions/tw5.com/tiddlers/demonstrations/CustomStoryTiddlerTemplateDemo.tid/Template.tid +25 -0
  823. package/editions/tw5.com/tiddlers/demonstrations/CustomStoryTiddlerTemplateDemo.tid/TiddlerTemplateFilter.tid +5 -0
  824. package/editions/tw5.com/tiddlers/demonstrations/CustomTiddlerColourCascadeDemo/CustomTiddlerColourCascadeDemo.tid +9 -0
  825. package/editions/tw5.com/tiddlers/demonstrations/CustomTiddlerIconCascadeDemo/CustomTiddlerIconCascadeDemo.tid +9 -0
  826. package/editions/tw5.com/tiddlers/demonstrations/ImageGallery Example.tid +5 -16
  827. package/editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/Demonstration_ keyboard-driven-input Macro.tid +121 -0
  828. package/editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/kdi-demo-configtid.tid +7 -0
  829. package/editions/tw5.com/tiddlers/demonstrations/SampleNotification.tid +2 -1
  830. package/editions/tw5.com/tiddlers/demonstrations/SampleTiddlerFirst.tid +3 -1
  831. package/editions/tw5.com/tiddlers/demonstrations/SampleTiddlerSecond.tid +3 -1
  832. package/editions/tw5.com/tiddlers/demonstrations/SampleTiddlerThird.tid +3 -1
  833. package/editions/tw5.com/tiddlers/demonstrations/SampleWizard.tid +2 -1
  834. package/editions/tw5.com/tiddlers/demonstrations/SampleWizard2.tid +2 -1
  835. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/Contents.tid +3 -2
  836. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/First.tid +3 -3
  837. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/FirstOne.tid +2 -2
  838. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/FirstThree.tid +2 -2
  839. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/FirstTwo.tid +2 -2
  840. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/Fourth.tid +2 -2
  841. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/Second.tid +2 -2
  842. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondOne.tid +2 -2
  843. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondThree.tid +3 -3
  844. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondThreeOne.tid +2 -2
  845. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondThreeThree.tid +2 -2
  846. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondThreeTwo.tid +2 -2
  847. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondTwo.tid +2 -2
  848. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/Third.tid +3 -3
  849. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/ThirdOne.tid +2 -2
  850. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/ThirdThree.tid +2 -2
  851. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/ThirdTwo.tid +2 -2
  852. package/editions/tw5.com/tiddlers/demonstrations/Tagged with TagMacro.tid +2 -1
  853. package/editions/tw5.com/tiddlers/demonstrations/Tasks/Compose ballad.tid +3 -3
  854. package/editions/tw5.com/tiddlers/demonstrations/Tasks/Get the Ring.tid +3 -3
  855. package/editions/tw5.com/tiddlers/demonstrations/Tasks/Go to Mordor.tid +3 -3
  856. package/editions/tw5.com/tiddlers/demonstrations/Tasks/Kill the Dragon.tid +4 -4
  857. package/editions/tw5.com/tiddlers/demonstrations/Tasks/Make the beds.tid +3 -3
  858. package/editions/tw5.com/tiddlers/demonstrations/Tasks/TaskManagementExample.tid +2 -2
  859. package/editions/tw5.com/tiddlers/demonstrations/Tasks/TaskManagementExampleDraggable.tid +2 -2
  860. package/editions/tw5.com/tiddlers/demonstrations/Tasks/TaskManagementExampleDraggableTemplate.tid +1 -1
  861. package/editions/tw5.com/tiddlers/demonstrations/Tasks/done.tid +3 -1
  862. package/editions/tw5.com/tiddlers/demonstrations/Tasks/task.tid +3 -2
  863. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Days of the Week.tid +5 -4
  864. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Friday.tid +2 -1
  865. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Monday.tid +2 -1
  866. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Saturday.tid +3 -2
  867. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Sunday.tid +2 -1
  868. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Thursday.tid +2 -1
  869. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Tuesday.tid +2 -1
  870. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Wednesday.tid +2 -1
  871. package/editions/tw5.com/tiddlers/demonstrations/sampletag1.tid +3 -0
  872. package/editions/tw5.com/tiddlers/demonstrations/sampletag2.tid +3 -0
  873. package/editions/tw5.com/tiddlers/features/AutoSave.tid +2 -2
  874. package/editions/tw5.com/tiddlers/features/DateFormat.tid +15 -2
  875. package/editions/tw5.com/tiddlers/features/Importing Tiddlers.tid +3 -3
  876. package/editions/tw5.com/tiddlers/features/LazyLoading.tid +2 -3
  877. package/editions/tw5.com/tiddlers/features/Modals.tid +11 -2
  878. package/editions/tw5.com/tiddlers/features/Performance Instrumentation.tid +2 -2
  879. package/editions/tw5.com/tiddlers/features/SafeMode.tid +4 -2
  880. package/editions/tw5.com/tiddlers/features/Scalability.tid +4 -2
  881. package/editions/tw5.com/tiddlers/features/Searching in TiddlyWiki.tid +1 -1
  882. package/editions/tw5.com/tiddlers/features/StartupActions.tid +15 -6
  883. package/editions/tw5.com/tiddlers/fileformats/TiddlerFiles.tid +15 -4
  884. package/editions/tw5.com/tiddlers/filters/Filter Operators.tid +4 -4
  885. package/editions/tw5.com/tiddlers/filters/Introduction to filter notation.tid +11 -4
  886. package/editions/tw5.com/tiddlers/filters/Mathematics Operators.tid +2 -1
  887. package/editions/tw5.com/tiddlers/filters/acos Operator.tid +15 -0
  888. package/editions/tw5.com/tiddlers/filters/asin Operator.tid +15 -0
  889. package/editions/tw5.com/tiddlers/filters/atan Operator.tid +13 -0
  890. package/editions/tw5.com/tiddlers/filters/atan2 Operator.tid +15 -0
  891. package/editions/tw5.com/tiddlers/filters/average.tid +13 -0
  892. package/editions/tw5.com/tiddlers/filters/charcode.tid +17 -0
  893. package/editions/tw5.com/tiddlers/filters/compare Operator.tid +51 -0
  894. package/editions/tw5.com/tiddlers/filters/contains Operator.tid +1 -1
  895. package/editions/tw5.com/tiddlers/filters/cos Operator.tid +13 -0
  896. package/editions/tw5.com/tiddlers/filters/cycle Operator.tid +24 -0
  897. package/editions/tw5.com/tiddlers/filters/deserializers Operator.tid +14 -0
  898. package/editions/tw5.com/tiddlers/filters/duplicateslugs Operator.tid +22 -0
  899. package/editions/tw5.com/tiddlers/filters/each.tid +2 -2
  900. package/editions/tw5.com/tiddlers/filters/enlist Operator.tid +2 -3
  901. package/editions/tw5.com/tiddlers/filters/enlist-input Operator.tid +31 -0
  902. package/editions/tw5.com/tiddlers/filters/examples/Brownies.tid +9 -0
  903. package/editions/tw5.com/tiddlers/filters/examples/Chick Peas.tid +9 -0
  904. package/editions/tw5.com/tiddlers/filters/examples/How to remove stop words.tid +28 -0
  905. package/editions/tw5.com/tiddlers/filters/examples/Milk.tid +9 -0
  906. package/editions/tw5.com/tiddlers/filters/examples/Rice Pudding.tid +9 -0
  907. package/editions/tw5.com/tiddlers/filters/examples/acos Operator (Examples).tid +7 -0
  908. package/editions/tw5.com/tiddlers/filters/examples/allbefore.tid +1 -0
  909. package/editions/tw5.com/tiddlers/filters/examples/asin Operator (Examples).tid +7 -0
  910. package/editions/tw5.com/tiddlers/filters/examples/atan Operator (Examples).tid +7 -0
  911. package/editions/tw5.com/tiddlers/filters/examples/atan2 Operator (Examples).tid +7 -0
  912. package/editions/tw5.com/tiddlers/filters/examples/average Operator (Examples).tid +10 -0
  913. package/editions/tw5.com/tiddlers/filters/examples/charcode.tid +7 -0
  914. package/editions/tw5.com/tiddlers/filters/examples/compare Operator (Examples).tid +11 -0
  915. package/editions/tw5.com/tiddlers/filters/examples/cos Operator (Examples).tid +7 -0
  916. package/editions/tw5.com/tiddlers/filters/examples/cycle Operator (Examples).tid +21 -0
  917. package/editions/tw5.com/tiddlers/filters/examples/deserializers Operator (Examples).tid +7 -0
  918. package/editions/tw5.com/tiddlers/filters/examples/enlist-input Operator (Examples).tid +12 -0
  919. package/editions/tw5.com/tiddlers/filters/examples/fields.tid +6 -2
  920. package/editions/tw5.com/tiddlers/filters/examples/filter Operator (Examples).tid +23 -0
  921. package/editions/tw5.com/tiddlers/filters/examples/fixed Operator (Examples).tid +1 -0
  922. package/editions/tw5.com/tiddlers/filters/examples/format Operator (Examples).tid +31 -0
  923. package/editions/tw5.com/tiddlers/filters/examples/has.tid +3 -1
  924. package/editions/tw5.com/tiddlers/filters/examples/jsonstringify Operator (Examples).tid +2 -0
  925. package/editions/tw5.com/tiddlers/filters/examples/log Operator (Examples).tid +14 -0
  926. package/editions/tw5.com/tiddlers/filters/examples/lookup Operator (Examples).tid +2 -1
  927. package/editions/tw5.com/tiddlers/filters/examples/match Operator (Examples).tid +1 -1
  928. package/editions/tw5.com/tiddlers/filters/examples/median Operator (Examples).tid +10 -0
  929. package/editions/tw5.com/tiddlers/filters/examples/moduleproperty Operator (Examples).tid +11 -0
  930. package/editions/tw5.com/tiddlers/filters/examples/modules.tid +4 -1
  931. package/editions/tw5.com/tiddlers/filters/examples/pad Operator (Examples).tid +13 -0
  932. package/editions/tw5.com/tiddlers/filters/examples/power Operator (Examples).tid +8 -0
  933. package/editions/tw5.com/tiddlers/filters/examples/reduce Operator (Examples).tid +38 -0
  934. package/editions/tw5.com/tiddlers/filters/examples/search-replace Operator (Examples).tid +38 -0
  935. package/editions/tw5.com/tiddlers/filters/examples/sin Operator (Examples).tid +7 -0
  936. package/editions/tw5.com/tiddlers/filters/examples/sortsub Operator (Examples).tid +34 -0
  937. package/editions/tw5.com/tiddlers/filters/examples/standard-deviation Operator (Examples).tid +10 -0
  938. package/editions/tw5.com/tiddlers/filters/examples/stringify_Operator_(Examples).tid +2 -0
  939. package/editions/tw5.com/tiddlers/filters/examples/subfilter Operator (Examples).tid +25 -3
  940. package/editions/tw5.com/tiddlers/filters/examples/tan Operator (Examples).tid +7 -0
  941. package/editions/tw5.com/tiddlers/filters/examples/toggle Operator (Examples).tid +27 -0
  942. package/editions/tw5.com/tiddlers/filters/examples/trim Operator (Examples).tid +8 -0
  943. package/editions/tw5.com/tiddlers/filters/examples/unique Operator (Examples).tid +8 -0
  944. package/editions/tw5.com/tiddlers/filters/examples/variance Operator (Examples).tid +10 -0
  945. package/editions/tw5.com/tiddlers/filters/examples/zth Operator (Examples).tid +10 -0
  946. package/editions/tw5.com/tiddlers/filters/fields.tid +10 -7
  947. package/editions/tw5.com/tiddlers/filters/filter.tid +49 -0
  948. package/editions/tw5.com/tiddlers/filters/format.tid +24 -0
  949. package/editions/tw5.com/tiddlers/filters/has.tid +4 -3
  950. package/editions/tw5.com/tiddlers/filters/is.tid +10 -8
  951. package/editions/tw5.com/tiddlers/filters/jsonstringify Operator.tid +17 -8
  952. package/editions/tw5.com/tiddlers/filters/length Operator.tid +1 -1
  953. package/editions/tw5.com/tiddlers/filters/list.tid +2 -2
  954. package/editions/tw5.com/tiddlers/filters/log Operator.tid +15 -0
  955. package/editions/tw5.com/tiddlers/filters/median.tid +13 -0
  956. package/editions/tw5.com/tiddlers/filters/moduleproperty Operator.tid +12 -0
  957. package/editions/tw5.com/tiddlers/filters/modules.tid +8 -6
  958. package/editions/tw5.com/tiddlers/filters/nth.tid +9 -7
  959. package/editions/tw5.com/tiddlers/filters/pad Operator.tid +23 -0
  960. package/editions/tw5.com/tiddlers/filters/power Operator.tid +15 -0
  961. package/editions/tw5.com/tiddlers/filters/range.tid +22 -20
  962. package/editions/tw5.com/tiddlers/filters/reduce.tid +52 -0
  963. package/editions/tw5.com/tiddlers/filters/removeprefix.tid +2 -0
  964. package/editions/tw5.com/tiddlers/filters/removesuffix.tid +2 -0
  965. package/editions/tw5.com/tiddlers/filters/search-replace Operator.tid +28 -0
  966. package/editions/tw5.com/tiddlers/filters/sign Operator.tid +2 -2
  967. package/editions/tw5.com/tiddlers/filters/sin Operator.tid +13 -0
  968. package/editions/tw5.com/tiddlers/filters/slugify Operator.tid +24 -0
  969. package/editions/tw5.com/tiddlers/filters/sortsub Operator.tid +33 -0
  970. package/editions/tw5.com/tiddlers/filters/standard-deviation Operator.tid +15 -0
  971. package/editions/tw5.com/tiddlers/filters/storyviews.tid +1 -1
  972. package/editions/tw5.com/tiddlers/filters/stringify_Operator.tid +17 -9
  973. package/editions/tw5.com/tiddlers/filters/subfilter Operator.tid +6 -2
  974. package/editions/tw5.com/tiddlers/filters/syntax/Cascade Filter Run Prefix (Examples).tid +46 -0
  975. package/editions/tw5.com/tiddlers/filters/syntax/Cascade Filter Run Prefix.tid +20 -0
  976. package/editions/tw5.com/tiddlers/filters/syntax/Filter Expression.tid +34 -13
  977. package/editions/tw5.com/tiddlers/filters/syntax/Filter Filter Run Prefix (Examples).tid +30 -0
  978. package/editions/tw5.com/tiddlers/filters/syntax/Filter Filter Run Prefix.tid +27 -0
  979. package/editions/tw5.com/tiddlers/filters/syntax/Filter Parameter.tid +7 -2
  980. package/editions/tw5.com/tiddlers/filters/syntax/Filter Run Prefix (Examples).tid +21 -0
  981. package/editions/tw5.com/tiddlers/filters/syntax/Filter Step.tid +4 -2
  982. package/editions/tw5.com/tiddlers/filters/syntax/Intersection Filter Run Prefix (Examples).tid +36 -0
  983. package/editions/tw5.com/tiddlers/filters/syntax/Intersection Filter Run Prefix.tid +15 -0
  984. package/editions/tw5.com/tiddlers/filters/syntax/Map Filter Run Prefix (Examples).tid +41 -0
  985. package/editions/tw5.com/tiddlers/filters/syntax/Map Filter Run Prefix.tid +27 -0
  986. package/editions/tw5.com/tiddlers/filters/syntax/Named Filter Run Prefix.tid +10 -0
  987. package/editions/tw5.com/tiddlers/filters/syntax/Reduce Filter Run Prefix (Examples).tid +27 -0
  988. package/editions/tw5.com/tiddlers/filters/syntax/Reduce Filter Run Prefix.tid +38 -0
  989. package/editions/tw5.com/tiddlers/filters/syntax/Sort Filter Run Prefix (Examples).tid +33 -0
  990. package/editions/tw5.com/tiddlers/filters/syntax/Sort Filter Run Prefix.tid +32 -0
  991. package/editions/tw5.com/tiddlers/filters/tan Operator.tid +13 -0
  992. package/editions/tw5.com/tiddlers/filters/title.tid +1 -1
  993. package/editions/tw5.com/tiddlers/filters/toggle Operator.tid +26 -0
  994. package/editions/tw5.com/tiddlers/filters/trim Operator.tid +9 -4
  995. package/editions/tw5.com/tiddlers/filters/unique.tid +10 -0
  996. package/editions/tw5.com/tiddlers/filters/variance Operator.tid +15 -0
  997. package/editions/tw5.com/tiddlers/filters/zth Operator.tid +18 -0
  998. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Android.tid +2 -1
  999. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Chrome.tid +2 -1
  1000. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Firefox.tid +2 -1
  1001. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Internet Explorer.tid +2 -1
  1002. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Node.js.tid +2 -1
  1003. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Online.tid +2 -2
  1004. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Safari.tid +2 -1
  1005. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - iOS.tid +2 -1
  1006. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted.tid +2 -2
  1007. package/editions/tw5.com/tiddlers/hellothere/A Gentle Guide to TiddlyWiki.tid +5 -2
  1008. package/editions/tw5.com/tiddlers/{AllTiddlers.tid → hellothere/AllTiddlers.tid} +0 -0
  1009. package/editions/tw5.com/tiddlers/hellothere/HelloThere.tid +4 -2
  1010. package/editions/tw5.com/tiddlers/hellothere/HelloThumbnail.tid +1 -1
  1011. package/editions/tw5.com/tiddlers/hellothere/Some of the things you can do with TiddlyWiki.tid +2 -2
  1012. package/editions/tw5.com/tiddlers/hellothere/badges/ProductHunt-Badge.svg.tid +22 -0
  1013. package/editions/tw5.com/tiddlers/hellothere/badges/ProductHunt-Link.tid +4 -0
  1014. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Grok TiddlyWiki.tid +6 -0
  1015. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - TiddlyWikiLinks.tid +6 -0
  1016. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting Default Tiddler Icon.tid +7 -0
  1017. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting HtmlParserDisableSandbox.tid +13 -0
  1018. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting NewImageType.tid +3 -1
  1019. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting Search-NavigateOnEnter.tid +6 -0
  1020. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting ShowEditPreviewPerTiddler.tid +10 -0
  1021. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting_ Disable Drag and Drop.tid +19 -0
  1022. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting_ Disable Lazy Loading.tid +9 -0
  1023. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting_ Enable File Import in Editor_1.tid +12 -0
  1024. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting_ Typin Refresh Delay.tid +5 -3
  1025. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Settings_ Import Content Types for Editor.tid +11 -0
  1026. package/editions/tw5.com/tiddlers/howtos/Adding_a_table_of_contents_to_the_sidebar.tid +2 -2
  1027. package/editions/tw5.com/tiddlers/howtos/Creating SubStories.tid +21 -33
  1028. package/editions/tw5.com/tiddlers/howtos/Debugging Stylesheets.tid +11 -0
  1029. package/editions/tw5.com/tiddlers/howtos/Formatting List Results as Tables with CSS - Specified Columns Methods.tid +4 -0
  1030. package/editions/tw5.com/tiddlers/howtos/Generating Static Sites with TiddlyWiki.tid +8 -6
  1031. package/editions/tw5.com/tiddlers/howtos/How to add a banner for GitHub contributions.tid +1 -1
  1032. package/editions/tw5.com/tiddlers/howtos/How to apply custom styles.tid +1 -1
  1033. package/editions/tw5.com/tiddlers/howtos/How to create a custom story tiddler template.tid +40 -0
  1034. package/editions/tw5.com/tiddlers/howtos/How to create a custom tiddler colour rule.tid +36 -0
  1035. package/editions/tw5.com/tiddlers/howtos/How to create a custom tiddler icon rule.tid +36 -0
  1036. package/editions/tw5.com/tiddlers/howtos/How to create dynamic editor toolbar buttons.tid +126 -0
  1037. package/editions/tw5.com/tiddlers/howtos/How to create keyboard shortcuts.tid +3 -3
  1038. package/editions/tw5.com/tiddlers/howtos/How to export tiddlers.tid +4 -4
  1039. package/editions/tw5.com/tiddlers/howtos/How to put the last modification date in a banner.tid +1 -1
  1040. package/editions/tw5.com/tiddlers/howtos/Insert link.tid +1 -1
  1041. package/editions/tw5.com/tiddlers/howtos/Insert picture.tid +1 -1
  1042. package/editions/tw5.com/tiddlers/howtos/KeyboardShortcuts.tid +9 -5
  1043. package/editions/tw5.com/tiddlers/howtos/More actions.tid +1 -1
  1044. package/editions/tw5.com/tiddlers/howtos/Setting a favicon.tid +4 -2
  1045. package/editions/tw5.com/tiddlers/howtos/Setting a page background image.tid +1 -1
  1046. package/editions/tw5.com/tiddlers/howtos/Simple ways to write protect tiddlers.tid +6 -7
  1047. package/editions/tw5.com/tiddlers/howtos/Tagging.tid +2 -2
  1048. package/editions/tw5.com/tiddlers/howtos/Text preview.tid +14 -2
  1049. package/editions/tw5.com/tiddlers/howtos/Upgrading.tid +1 -1
  1050. package/editions/tw5.com/tiddlers/howtos/Using Excise.tid +2 -2
  1051. package/editions/tw5.com/tiddlers/howtos/Using Stamp.tid +6 -7
  1052. package/editions/tw5.com/tiddlers/howtos/Using Stylesheets.tid +10 -4
  1053. package/editions/tw5.com/tiddlers/howtos/Windows HTA Hack.tid +3 -2
  1054. package/editions/tw5.com/tiddlers/images/Grok TiddlyWiki.png +0 -0
  1055. package/editions/tw5.com/tiddlers/images/Grok TiddlyWiki.png.meta +3 -0
  1056. package/editions/tw5.com/tiddlers/images/Icon Gallery.tid +14 -0
  1057. package/editions/tw5.com/tiddlers/images/New Release Banner.png +0 -0
  1058. package/editions/tw5.com/tiddlers/images/{New Release Banner.jpg.meta → New Release Banner.png.meta} +0 -0
  1059. package/editions/tw5.com/tiddlers/images/TiddlyWikiLinks.png +0 -0
  1060. package/editions/tw5.com/tiddlers/images/TiddlyWikiLinks.png.meta +3 -0
  1061. package/editions/tw5.com/tiddlers/languages/Japanese (Japan) Edition.tid +11 -0
  1062. package/editions/tw5.com/tiddlers/languages/LanguageGallery.tid +2 -2
  1063. package/editions/tw5.com/tiddlers/macros/ColourMacro.tid +2 -2
  1064. package/editions/tw5.com/tiddlers/macros/JsonTiddlersMacro.tid +3 -1
  1065. package/editions/tw5.com/tiddlers/macros/MakeDataUriMacro.tid +3 -1
  1066. package/editions/tw5.com/tiddlers/macros/NowMacro.tid +3 -1
  1067. package/editions/tw5.com/tiddlers/macros/TableOfContentsMacro.tid +3 -1
  1068. package/editions/tw5.com/tiddlers/macros/TabsMacro.tid +6 -2
  1069. package/editions/tw5.com/tiddlers/macros/UnusedTitleMacro.tid +28 -4
  1070. package/editions/tw5.com/tiddlers/macros/examples/colour-picker Macro (Example 1).tid +2 -2
  1071. package/editions/tw5.com/tiddlers/macros/examples/image-picker Macro (Example 1).tid +2 -2
  1072. package/editions/tw5.com/tiddlers/macros/examples/image-picker Macro (Example 2).tid +2 -2
  1073. package/editions/tw5.com/tiddlers/macros/examples/list-thumbnails Macro (Examples).tid +11 -0
  1074. package/editions/tw5.com/tiddlers/macros/examples/qualify.tid +0 -2
  1075. package/editions/tw5.com/tiddlers/macros/examples/unusedtitle Macro (Examples 1).tid +51 -0
  1076. package/editions/tw5.com/tiddlers/macros/examples/unusedtitle.tid +11 -2
  1077. package/editions/tw5.com/tiddlers/macros/keyboard-driven-input_Macro.tid +25 -0
  1078. package/editions/tw5.com/tiddlers/macros/list-thumbnails Macro.tid +19 -0
  1079. package/editions/tw5.com/tiddlers/macros/tag-picker_Macro.tid +2 -0
  1080. package/editions/tw5.com/tiddlers/mechanisms/AlertMechanism.tid +1 -1
  1081. package/editions/tw5.com/tiddlers/mechanisms/HistoryMechanism.tid +3 -3
  1082. package/editions/tw5.com/tiddlers/mechanisms/InfoMechanism.tid +3 -1
  1083. package/editions/tw5.com/tiddlers/mechanisms/PluginMechanism.tid +20 -10
  1084. package/editions/tw5.com/tiddlers/mechanisms/RefreshMechanism.tid +13 -0
  1085. package/editions/tw5.com/tiddlers/mechanisms/RefreshThrottling.tid +17 -0
  1086. package/editions/tw5.com/tiddlers/mechanisms/StateMechanism.tid +3 -3
  1087. package/editions/tw5.com/tiddlers/mechanisms/WikificationMechanism.tid +28 -0
  1088. package/editions/tw5.com/tiddlers/menubar/gettingstarted.tid +6 -0
  1089. package/editions/tw5.com/tiddlers/menubar/tagsMenuBar.tid +2 -0
  1090. package/editions/tw5.com/tiddlers/messages/SampleModal.tid +2 -1
  1091. package/editions/tw5.com/tiddlers/messages/SampleWindowTemplate.tid +10 -0
  1092. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-edit-text-operation.tid +27 -1
  1093. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-fold-all-tiddlers.tid +1 -1
  1094. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-fold-other-tiddlers.tid +3 -3
  1095. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-fold-tiddler.tid +13 -5
  1096. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-import-tiddlers.tid +2 -0
  1097. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-login.tid +2 -1
  1098. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-modal.tid +10 -3
  1099. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-navigate.tid +7 -1
  1100. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-open-external-window.tid +4 -4
  1101. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-open-window.tid +22 -4
  1102. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-rename-tiddler.tid +22 -0
  1103. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-scroll.tid +3 -4
  1104. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-unfold-all-tiddlers.tid +4 -4
  1105. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-unload-plugin-library.tid +18 -0
  1106. package/editions/tw5.com/tiddlers/nodejs/Customising Tiddler File Naming.tid +40 -9
  1107. package/editions/tw5.com/tiddlers/nodejs/Environment Variables on Node.js.tid +4 -2
  1108. package/editions/tw5.com/tiddlers/nodejs/Installing TiddlyWiki Prerelease on Node.js.tid +2 -2
  1109. package/editions/tw5.com/tiddlers/nodejs/Installing TiddlyWiki on Node.js.tid +12 -4
  1110. package/editions/tw5.com/tiddlers/nodejs/Installing custom plugins on Node.js.tid +27 -0
  1111. package/editions/tw5.com/tiddlers/nodejs/Serving TW5 from Android.tid +41 -7
  1112. package/editions/tw5.com/tiddlers/nodejs/TiddlyWiki on Node.js.tid +3 -9
  1113. package/editions/tw5.com/tiddlers/nodejs/Using TiddlyWiki on Node.js.tid +1 -1
  1114. package/editions/tw5.com/tiddlers/nodejs/tiddlywiki.files_Files.tid +43 -5
  1115. package/editions/tw5.com/tiddlers/nodejs/tiddlywiki.info_Files.tid +2 -2
  1116. package/editions/tw5.com/tiddlers/platforms/TiddlyFox Apocalypse.tid +2 -2
  1117. package/editions/tw5.com/tiddlers/platforms/TiddlyWiki in the Sky for TiddlyWeb.tid +3 -15
  1118. package/editions/tw5.com/tiddlers/plugins/Consent Banner Plugin.tid +14 -0
  1119. package/editions/tw5.com/tiddlers/plugins/Installing a plugin from the plugin library.tid +9 -6
  1120. package/editions/tw5.com/tiddlers/plugins/JSZip Plugin.tid +7 -0
  1121. package/editions/tw5.com/tiddlers/plugins/Manually installing a plugin.tid +4 -3
  1122. package/editions/tw5.com/tiddlers/plugins/Plugin Dependencies.tid +13 -0
  1123. package/editions/tw5.com/tiddlers/plugins/Plugin Types.tid +20 -0
  1124. package/editions/tw5.com/tiddlers/plugins/PluginFolders.tid +2 -1
  1125. package/editions/tw5.com/tiddlers/plugins/Plugin_Fields.tid +12 -12
  1126. package/editions/tw5.com/tiddlers/plugins/Share Plugin.tid +12 -0
  1127. package/editions/tw5.com/tiddlers/plugins/Uninstalling a plugin.tid +9 -7
  1128. package/editions/tw5.com/tiddlers/reference/Reference.tid +1 -0
  1129. package/editions/tw5.com/tiddlers/releasenotes/BetaReleases.tid +2 -2
  1130. package/editions/tw5.com/tiddlers/releasenotes/Release 5.1.22.tid +179 -0
  1131. package/editions/tw5.com/tiddlers/releasenotes/Release 5.1.23.tid +293 -0
  1132. package/editions/tw5.com/tiddlers/releasenotes/Release 5.1.8.tid +1 -1
  1133. package/editions/tw5.com/tiddlers/releasenotes/Release 5.2.0.tid +297 -0
  1134. package/editions/tw5.com/tiddlers/releasenotes/Release 5.2.1.tid +118 -0
  1135. package/editions/tw5.com/tiddlers/releasenotes/ReleaseTemplate.tid +3 -0
  1136. package/editions/tw5.com/tiddlers/releasenotes/alpha/AlphaReleases.tid +2 -2
  1137. package/editions/tw5.com/tiddlers/roadmap/RoadMap.tid +3 -10
  1138. package/editions/tw5.com/tiddlers/saving/Emergency Tiddler Export.tid +4 -4
  1139. package/editions/tw5.com/tiddlers/saving/Encryption.tid +3 -3
  1140. package/editions/tw5.com/tiddlers/saving/Example config-tiddlyweb-host for IIS.txt.meta +1 -1
  1141. package/editions/tw5.com/tiddlers/saving/Example package.json for IIS.txt.meta +1 -1
  1142. package/editions/tw5.com/tiddlers/saving/Example tiddlywiki.info for IIS.txt.meta +1 -1
  1143. package/editions/tw5.com/tiddlers/saving/Example web.config for IIS.txt.meta +1 -1
  1144. package/editions/tw5.com/tiddlers/saving/Installing TiddlyWiki on Microsoft Internet Information Server.tid +2 -1
  1145. package/editions/tw5.com/tiddlers/saving/Saving on Android.tid +22 -14
  1146. package/editions/tw5.com/tiddlers/saving/Saving on Beaker Browser.tid +2 -1
  1147. package/editions/tw5.com/tiddlers/saving/Saving on TiddlyDesktop.tid +4 -1
  1148. package/editions/tw5.com/tiddlers/saving/Saving on TiddlyHost.tid +17 -0
  1149. package/editions/tw5.com/tiddlers/saving/Saving on TiddlySpot.tid +24 -32
  1150. package/editions/tw5.com/tiddlers/saving/Saving on a PHP Server.tid +5 -3
  1151. package/editions/tw5.com/tiddlers/saving/Saving on iPad_iPhone.tid +15 -16
  1152. package/editions/tw5.com/tiddlers/saving/Saving to a Git service.tid +10 -9
  1153. package/editions/tw5.com/tiddlers/saving/Saving via WebDAV.tid +66 -12
  1154. package/editions/tw5.com/tiddlers/saving/Saving via minimal Ruby server.tid +4 -2
  1155. package/editions/tw5.com/tiddlers/saving/Saving with TW Receiver.tid +15 -0
  1156. package/editions/tw5.com/tiddlers/saving/Saving with TiddlyFox on Android.tid +2 -2
  1157. package/editions/tw5.com/tiddlers/saving/Saving with TiddlyFox.tid +5 -3
  1158. package/editions/tw5.com/tiddlers/saving/Saving with TiddlyIE.tid +6 -4
  1159. package/editions/tw5.com/tiddlers/saving/Saving with the HTML5 fallback saver.tid +5 -4
  1160. package/editions/tw5.com/tiddlers/saving/Saving.tid +55 -24
  1161. package/editions/tw5.com/tiddlers/saving/TiddlyWiki in the Sky for Dropbox.tid +4 -3
  1162. package/editions/tw5.com/tiddlers/styleguide/Documentation Macros.tid +6 -2
  1163. package/editions/tw5.com/tiddlers/styleguide/Spelling.tid +1 -1
  1164. package/editions/tw5.com/tiddlers/styleguide/Tiddler Structure.tid +3 -1
  1165. package/editions/tw5.com/tiddlers/system/Deprecated_-_What_does_it_mean.tid +2 -2
  1166. package/editions/tw5.com/tiddlers/{TableOfContents.tid → system/TableOfContents.tid} +0 -0
  1167. package/editions/tw5.com/tiddlers/system/doc-macros.tid +36 -0
  1168. package/editions/tw5.com/tiddlers/system/doc-styles.tid +53 -2
  1169. package/editions/tw5.com/tiddlers/system/download-empty-button.tid +4 -1
  1170. package/editions/tw5.com/tiddlers/system/operator-macros.tid +12 -5
  1171. package/editions/tw5.com/tiddlers/system/operator-template.tid +8 -8
  1172. package/editions/tw5.com/tiddlers/system/static.content.tid +2 -2
  1173. package/editions/tw5.com/tiddlers/system/tw5.com-card-template.tid +17 -0
  1174. package/editions/tw5.com/tiddlers/system/tw5.com-styles.tid +128 -2
  1175. package/editions/tw5.com/tiddlers/system/version-macros.tid +2 -2
  1176. package/editions/tw5.com/tiddlers/system/wikitext-macros.tid +4 -0
  1177. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_ControlPanel_Plugins.tid +9 -0
  1178. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_EditorTools.tid +9 -0
  1179. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_Image.tid +2 -2
  1180. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_Layout.tid +9 -0
  1181. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_Macro_View.tid +9 -0
  1182. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_Texteditor_Snippet.tid +4 -4
  1183. package/editions/tw5.com/tiddlers/variables/examples/Sample Headings 1-2-3.tid +2 -1
  1184. package/editions/tw5.com/tiddlers/variables/examples/Sample Headings 3-4-5.tid +2 -1
  1185. package/editions/tw5.com/tiddlers/variables/examples/Sample Headings 4-5-6.tid +2 -1
  1186. package/editions/tw5.com/tiddlers/variables/modifier Variable.tid +25 -3
  1187. package/editions/tw5.com/tiddlers/webserver/Using the external JavaScript template.tid +88 -7
  1188. package/editions/tw5.com/tiddlers/webserver/WebServer API_ Delete Tiddler.tid +5 -1
  1189. package/editions/tw5.com/tiddlers/webserver/WebServer API_ Get All Tiddlers.tid +15 -3
  1190. package/editions/tw5.com/tiddlers/webserver/WebServer API_ Put Tiddler.tid +5 -1
  1191. package/editions/tw5.com/tiddlers/webserver/WebServer Parameter_ path-prefix.tid +7 -2
  1192. package/editions/tw5.com/tiddlers/webserver/WebServer Parameter_ port.tid +2 -1
  1193. package/editions/tw5.com/tiddlers/webserver/WebServer Parameter_ tiddler-render-type.tid +2 -2
  1194. package/editions/tw5.com/tiddlers/widgets/$__docs_anyField.tid +8 -0
  1195. package/editions/tw5.com/tiddlers/widgets/ActionConfirmWidget.tid +40 -0
  1196. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget Example 1.tid +26 -0
  1197. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget Example 2.tid +28 -0
  1198. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget Example 3.tid +28 -0
  1199. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget Example 4.tid +28 -0
  1200. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget Template.tid +8 -0
  1201. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget.tid +39 -6
  1202. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget_Example.tid +7 -5
  1203. package/editions/tw5.com/tiddlers/widgets/ActionListopsWidget.tid +53 -3
  1204. package/editions/tw5.com/tiddlers/widgets/ActionLogWidget.tid +50 -0
  1205. package/editions/tw5.com/tiddlers/widgets/ActionPopupWidget.tid +34 -0
  1206. package/editions/tw5.com/tiddlers/widgets/ActionSendMessageWidget.tid +3 -1
  1207. package/editions/tw5.com/tiddlers/widgets/ActionSetMultipleFieldsWidget.tid +31 -0
  1208. package/editions/tw5.com/tiddlers/widgets/ActionWidget Execution Modes.tid +49 -0
  1209. package/editions/tw5.com/tiddlers/widgets/ActionWidgets.tid +10 -7
  1210. package/editions/tw5.com/tiddlers/widgets/BrowseWidget.tid +4 -2
  1211. package/editions/tw5.com/tiddlers/widgets/ButtonWidget.tid +13 -11
  1212. package/editions/tw5.com/tiddlers/widgets/CheckboxWidget.tid +3 -2
  1213. package/editions/tw5.com/tiddlers/widgets/DraggableWidget.tid +3 -2
  1214. package/editions/tw5.com/tiddlers/widgets/DroppableWidget.tid +3 -2
  1215. package/editions/tw5.com/tiddlers/widgets/DropzoneWidget.tid +13 -4
  1216. package/editions/tw5.com/tiddlers/widgets/EditTextWidget.tid +13 -18
  1217. package/editions/tw5.com/tiddlers/widgets/EditWidget.tid +10 -4
  1218. package/editions/tw5.com/tiddlers/widgets/EventCatcherWidget.tid +93 -0
  1219. package/editions/tw5.com/tiddlers/widgets/FieldMangler Widget (Examples).tid +10 -0
  1220. package/editions/tw5.com/tiddlers/widgets/FieldManglerWidget.tid +3 -3
  1221. package/editions/tw5.com/tiddlers/widgets/FieldsWidget.tid +3 -0
  1222. package/editions/tw5.com/tiddlers/widgets/ImportVariablesWidget.tid +1 -1
  1223. package/editions/tw5.com/tiddlers/widgets/JSONTiddlerWidget.tid +22 -0
  1224. package/editions/tw5.com/tiddlers/widgets/Keyboard Codes.tid +27 -0
  1225. package/editions/tw5.com/tiddlers/widgets/KeyboardWidget.tid +26 -3
  1226. package/editions/tw5.com/tiddlers/widgets/LetWidget.tid +57 -0
  1227. package/editions/tw5.com/tiddlers/widgets/LinkCatcherWidget.tid +3 -3
  1228. package/editions/tw5.com/tiddlers/widgets/LinkWidget.tid +7 -2
  1229. package/editions/tw5.com/tiddlers/widgets/ListWidget.tid +34 -1
  1230. package/editions/tw5.com/tiddlers/widgets/ListopsData.tid +1 -0
  1231. package/editions/tw5.com/tiddlers/widgets/LogWidget.tid +45 -0
  1232. package/editions/tw5.com/tiddlers/widgets/MacroCallWidget.tid +21 -7
  1233. package/editions/tw5.com/tiddlers/widgets/MessageCatcherWidget.tid +46 -0
  1234. package/editions/tw5.com/tiddlers/widgets/MessageHandlerWidgets.tid +13 -0
  1235. package/editions/tw5.com/tiddlers/widgets/NavigatorWidget.tid +7 -5
  1236. package/editions/tw5.com/tiddlers/widgets/RadioWidget Example.tid +35 -0
  1237. package/editions/tw5.com/tiddlers/widgets/RadioWidget ExampleTemplate.tid +7 -0
  1238. package/editions/tw5.com/tiddlers/widgets/RadioWidget.tid +11 -6
  1239. package/editions/tw5.com/tiddlers/widgets/RangeWidget Example.tid +53 -0
  1240. package/editions/tw5.com/tiddlers/widgets/RangeWidget.tid +16 -9
  1241. package/editions/tw5.com/tiddlers/widgets/RevealWidget.tid +9 -8
  1242. package/editions/tw5.com/tiddlers/widgets/SelectWidget.tid +27 -3
  1243. package/editions/tw5.com/tiddlers/widgets/SetMultipleVariablesWidget.tid +33 -0
  1244. package/editions/tw5.com/tiddlers/widgets/SetWidget.tid +64 -35
  1245. package/editions/tw5.com/tiddlers/widgets/The Extended Listops Filters.tid +2 -1
  1246. package/editions/tw5.com/tiddlers/widgets/TriggeringWidgets.tid +13 -0
  1247. package/editions/tw5.com/tiddlers/widgets/VarsWidget.tid +7 -5
  1248. package/editions/tw5.com/tiddlers/widgets/ViewWidget.tid +7 -2
  1249. package/editions/tw5.com/tiddlers/wikitext/Anchor Links using HTML.tid +200 -0
  1250. package/editions/tw5.com/tiddlers/wikitext/Block Quotes in WikiText.tid +1 -1
  1251. package/editions/tw5.com/tiddlers/wikitext/Code Blocks in WikiText.tid +2 -2
  1252. package/editions/tw5.com/tiddlers/wikitext/Formatting in WikiText.tid +7 -7
  1253. package/editions/tw5.com/tiddlers/wikitext/HTML in WikiText.tid +27 -2
  1254. package/editions/tw5.com/tiddlers/wikitext/Images in WikiText.tid +17 -2
  1255. package/editions/tw5.com/tiddlers/wikitext/Linking in WikiText.tid +1 -1
  1256. package/editions/tw5.com/tiddlers/wikitext/Lists in WikiText.tid +2 -2
  1257. package/editions/tw5.com/tiddlers/wikitext/Transclusion and Substitution.tid +3 -2
  1258. package/editions/tw5.com/tiddlers/workingwithtw/Creating and editing tiddlers.tid +6 -6
  1259. package/editions/tw5.com/tiddlers/workingwithtw/Creating journal tiddlers.tid +3 -3
  1260. package/editions/tw5.com/tiddlers/workingwithtw/Navigating between open tiddlers.tid +1 -1
  1261. package/editions/tw5.com/tiddlers/workingwithtw/Performance.tid +11 -3
  1262. package/editions/tw5.com/tiddlers/workingwithtw/Sharing your tiddlers with others.tid +5 -4
  1263. package/editions/tw5.com/tiddlers/workingwithtw/Using links to navigate between tiddlers.tid +2 -2
  1264. package/editions/tw5.com/tiddlywiki.info +5 -3
  1265. package/editions/tw5.com-docs/tiddlywiki.info +2 -1
  1266. package/editions/tw5.com-server/tiddlywiki.info +2 -1
  1267. package/editions/tw5tank/tiddlywiki.info +3 -2
  1268. package/editions/xlsx-utils/tiddlers/samples/Presidents and Justices.xlsx and b/package/editions/xlsx-utils/tiddlers/samples/Presidents → Justices.xlsx +0 -0
  1269. package/editions/zh-Hans/tiddlywiki.info +2 -1
  1270. package/editions/zh-Hant/tiddlywiki.info +2 -1
  1271. package/languages/ar-PS/Buttons.multids +161 -0
  1272. package/languages/ar-PS/ControlPanel.multids +258 -0
  1273. package/languages/ar-PS/CoreReadMe.tid +8 -0
  1274. package/languages/ar-PS/Dates.multids +90 -0
  1275. package/languages/ar-PS/Docs/ModuleTypes.multids +2 -0
  1276. package/languages/ar-PS/Docs/PaletteColours.multids +2 -0
  1277. package/languages/ar-PS/EditTemplate.multids +27 -0
  1278. package/languages/ar-PS/Exporters.multids +5 -0
  1279. package/languages/ar-PS/Fields.multids +2 -0
  1280. package/languages/ar-PS/Filters.multids +2 -0
  1281. package/languages/ar-PS/GettingStarted.tid +17 -0
  1282. package/languages/ar-PS/Import.multids +17 -0
  1283. package/languages/ar-PS/Misc.multids +77 -0
  1284. package/languages/ar-PS/Modals/Download.tid +13 -0
  1285. package/languages/ar-PS/Modals/SaveInstructions.tid +22 -0
  1286. package/languages/ar-PS/NewJournal.multids +4 -0
  1287. package/languages/ar-PS/Notifications.multids +8 -0
  1288. package/languages/ar-PS/Search.multids +23 -0
  1289. package/languages/ar-PS/SideBar.multids +17 -0
  1290. package/languages/ar-PS/SiteSubtitle.tid +3 -0
  1291. package/languages/ar-PS/SiteTitle.tid +3 -0
  1292. package/languages/ar-PS/ThemeTweaks.multids +2 -0
  1293. package/languages/ar-PS/TiddlerInfo.multids +26 -0
  1294. package/languages/ar-PS/icon.tid +7 -0
  1295. package/languages/ar-PS/plugin.info +9 -0
  1296. package/languages/ca-ES/Buttons.multids +24 -24
  1297. package/languages/ca-ES/ControlPanel.multids +39 -24
  1298. package/languages/ca-ES/Dates.multids +43 -43
  1299. package/languages/ca-ES/Docs/ModuleTypes.multids +2 -2
  1300. package/languages/ca-ES/Docs/PaletteColours.multids +2 -0
  1301. package/languages/ca-ES/EditTemplate.multids +7 -1
  1302. package/languages/ca-ES/Fields.multids +13 -12
  1303. package/languages/ca-ES/Filters.multids +1 -1
  1304. package/languages/ca-ES/Help/notfound.tid +1 -1
  1305. package/languages/ca-ES/Import.multids +11 -0
  1306. package/languages/ca-ES/Misc.multids +23 -3
  1307. package/languages/ca-ES/Search.multids +1 -1
  1308. package/languages/ca-ES/SideBar.multids +1 -1
  1309. package/languages/ca-ES/Snippets/TableOfContents.tid +2 -2
  1310. package/languages/ca-ES/ThemeTweaks.multids +17 -17
  1311. package/languages/cs-CZ/Fields.multids +0 -1
  1312. package/languages/cs-CZ/Misc.multids +0 -1
  1313. package/languages/da-DK/Fields.multids +0 -1
  1314. package/languages/da-DK/Misc.multids +0 -1
  1315. package/languages/de-DE/ControlPanel.multids +49 -27
  1316. package/languages/de-DE/CoreReadMe.tid +1 -1
  1317. package/languages/de-DE/Docs/ModuleTypes.multids +2 -1
  1318. package/languages/de-DE/Docs/PaletteColours.multids +2 -0
  1319. package/languages/de-DE/EditTemplate.multids +9 -1
  1320. package/languages/de-DE/Fields.multids +2 -1
  1321. package/languages/de-DE/Help/help.tid +1 -1
  1322. package/languages/de-DE/Help/import.tid +1 -1
  1323. package/languages/de-DE/Help/listen.tid +3 -2
  1324. package/languages/de-DE/Help/render.tid +2 -1
  1325. package/languages/de-DE/Help/rendertiddlers.tid +2 -2
  1326. package/languages/de-DE/Help/{savewikifolder.tig → savewikifolder.tid} +0 -0
  1327. package/languages/de-DE/Import.multids +18 -7
  1328. package/languages/de-DE/Misc.multids +26 -4
  1329. package/languages/de-DE/NewJournal.multids +0 -1
  1330. package/languages/de-DE/NewJournalTags.tid +3 -0
  1331. package/languages/de-DE/Search.multids +1 -1
  1332. package/languages/de-DE/ThemeTweaks.multids +2 -2
  1333. package/languages/de-DE/TiddlerInfo.multids +1 -1
  1334. package/languages/el-GR/Fields.multids +0 -1
  1335. package/languages/el-GR/Misc.multids +1 -2
  1336. package/languages/es-ES/Buttons.multids +29 -6
  1337. package/languages/es-ES/ControlPanel.multids +97 -37
  1338. package/languages/es-ES/Dates.multids +11 -1
  1339. package/languages/es-ES/Docs/ModuleTypes.multids +8 -0
  1340. package/languages/es-ES/Docs/PaletteColours.multids +109 -0
  1341. package/languages/es-ES/EditTemplate.multids +18 -11
  1342. package/languages/es-ES/Exporters.multids +2 -2
  1343. package/languages/es-ES/Fields.multids +7 -5
  1344. package/languages/es-ES/Filters.multids +9 -7
  1345. package/languages/es-ES/GettingStarted.tid +1 -0
  1346. package/languages/es-ES/Help/deletetiddlers.tid +8 -0
  1347. package/languages/es-ES/Help/fetch.tid +38 -0
  1348. package/languages/es-ES/Help/import.tid +24 -0
  1349. package/languages/es-ES/Help/init.tid +1 -7
  1350. package/languages/es-ES/Help/listen.tid +35 -0
  1351. package/languages/es-ES/Help/load.tid +5 -2
  1352. package/languages/es-ES/Help/makelibrary.tid +1 -3
  1353. package/languages/es-ES/Help/password.tid +2 -1
  1354. package/languages/es-ES/Help/render.tid +35 -0
  1355. package/languages/es-ES/Help/rendertiddler.tid +14 -3
  1356. package/languages/es-ES/Help/rendertiddlers.tid +6 -6
  1357. package/languages/es-ES/Help/save.tid +25 -0
  1358. package/languages/es-ES/Help/savetiddler.tid +3 -2
  1359. package/languages/es-ES/Help/savetiddlers.tid +6 -3
  1360. package/languages/es-ES/Help/savewikifolder.tid +19 -0
  1361. package/languages/es-ES/Help/server.tid +12 -8
  1362. package/languages/es-ES/Import.multids +23 -4
  1363. package/languages/es-ES/Misc.multids +68 -22
  1364. package/languages/es-ES/NewJournalTags.tid +3 -0
  1365. package/languages/es-ES/Notifications.multids +3 -1
  1366. package/languages/es-ES/Search.multids +1 -0
  1367. package/languages/es-ES/SideBar.multids +1 -0
  1368. package/languages/es-ES/ThemeTweaks.multids +42 -0
  1369. package/languages/es-ES/TiddlerInfo.multids +2 -2
  1370. package/languages/es-ES/Types/{application%2Fjavascript.tid → application_javascript.tid} +1 -0
  1371. package/languages/es-ES/Types/{application%2Fjson.tid → application_json.tid} +1 -0
  1372. package/languages/es-ES/Types/{application%2Fx-tiddler-dictionary.tid → application_x_tiddler_dictionary.tid} +1 -0
  1373. package/languages/es-ES/Types/{image%2Fgif.tid → image_gif.tid} +1 -0
  1374. package/languages/es-ES/Types/{image%2Fjpeg.tid → image_jpeg.tid} +1 -0
  1375. package/languages/es-ES/Types/{image%2Fpng.tid → image_png.tid} +1 -0
  1376. package/languages/es-ES/Types/{image%2Fsvg%2Bxml.tid → image_svg_xml.tid} +1 -0
  1377. package/languages/es-ES/Types/{image%2Fx-icon.tid → image_x-icon.tid} +1 -0
  1378. package/languages/es-ES/Types/{text%2Fcss.tid → text_css.tid} +1 -0
  1379. package/languages/es-ES/Types/{text%2Fhtml.tid → text_html.tid} +1 -0
  1380. package/languages/es-ES/Types/{text%2Fplain.tid → text_plain.tid} +1 -0
  1381. package/languages/es-ES/Types/{text%2Fvnd.tiddlywiki.tid → text_vnd.tiddlywiki.tid} +1 -0
  1382. package/languages/es-ES/Types/{text%2Fx-tiddlywiki.tid → text_x-tiddlywiki.tid} +1 -0
  1383. package/languages/es-ES/plugin.info +3 -3
  1384. package/languages/fa-IR/Misc.multids +1 -2
  1385. package/languages/fr-FR/Buttons.multids +4 -0
  1386. package/languages/fr-FR/ControlPanel.multids +21 -2
  1387. package/languages/fr-FR/Docs/ModuleTypes.multids +2 -1
  1388. package/languages/fr-FR/Docs/PaletteColours.multids +2 -0
  1389. package/languages/fr-FR/EditTemplate.multids +8 -0
  1390. package/languages/fr-FR/Fields.multids +2 -1
  1391. package/languages/fr-FR/Filters.multids +3 -2
  1392. package/languages/fr-FR/Help/listen.tid +2 -0
  1393. package/languages/fr-FR/Help/render.tid +5 -4
  1394. package/languages/fr-FR/Help/rendertiddler.tid +2 -0
  1395. package/languages/fr-FR/Help/rendertiddlers.tid +4 -2
  1396. package/languages/fr-FR/Help/savetiddler.tid +2 -0
  1397. package/languages/fr-FR/Help/savetiddlers.tid +2 -0
  1398. package/languages/fr-FR/Import.multids +21 -10
  1399. package/languages/fr-FR/Misc.multids +25 -3
  1400. package/languages/fr-FR/NewJournalTags.tid +3 -0
  1401. package/languages/fr-FR/TiddlerInfo.multids +2 -2
  1402. package/languages/he-IL/Fields.multids +0 -1
  1403. package/languages/he-IL/Misc.multids +0 -1
  1404. package/languages/hi-IN/Fields.multids +0 -1
  1405. package/languages/hi-IN/Misc.multids +0 -1
  1406. package/languages/ia-IA/Fields.multids +0 -1
  1407. package/languages/ia-IA/Misc.multids +0 -1
  1408. package/languages/it-IT/Fields.multids +0 -1
  1409. package/languages/it-IT/Misc.multids +0 -1
  1410. package/languages/ja-JP/Fields.multids +0 -1
  1411. package/languages/ja-JP/Misc.multids +0 -1
  1412. package/languages/ko-KR/Fields.multids +0 -1
  1413. package/languages/ko-KR/Misc.multids +0 -1
  1414. package/languages/nl-NL/Buttons.multids +2 -0
  1415. package/languages/nl-NL/ControlPanel.multids +32 -0
  1416. package/languages/nl-NL/Docs/PaletteColours.multids +2 -0
  1417. package/languages/nl-NL/EditTemplate.multids +4 -0
  1418. package/languages/nl-NL/Fields.multids +4 -1
  1419. package/languages/nl-NL/Filters.multids +1 -0
  1420. package/languages/nl-NL/Help/deletetiddlers.tid +8 -0
  1421. package/languages/nl-NL/Help/savewikifolder.tid +19 -0
  1422. package/languages/nl-NL/Import.multids +8 -0
  1423. package/languages/nl-NL/Misc.multids +16 -3
  1424. package/languages/pa-IN/Fields.multids +0 -1
  1425. package/languages/pa-IN/Misc.multids +0 -1
  1426. package/languages/pl-PL/Buttons.multids +189 -0
  1427. package/languages/pl-PL/ControlPanel.multids +216 -0
  1428. package/languages/pl-PL/Dates.multids +88 -0
  1429. package/languages/pl-PL/Docs/ModuleTypes.multids +30 -0
  1430. package/languages/pl-PL/Docs/PaletteColours.multids +109 -0
  1431. package/languages/pl-PL/EditTemplate.multids +38 -0
  1432. package/languages/pl-PL/Exporters.multids +7 -0
  1433. package/languages/pl-PL/Fields.multids +39 -0
  1434. package/languages/pl-PL/Filters.multids +16 -0
  1435. package/languages/pl-PL/GettingStarted.tid +17 -0
  1436. package/languages/pl-PL/Help/build.tid +12 -0
  1437. package/languages/pl-PL/Help/clearpassword.tid +8 -0
  1438. package/languages/pl-PL/Help/default.tid +22 -0
  1439. package/languages/pl-PL/Help/deletetiddlers.tid +8 -0
  1440. package/languages/pl-PL/Help/editions.tid +8 -0
  1441. package/languages/pl-PL/Help/fetch.tid +40 -0
  1442. package/languages/pl-PL/Help/help.tid +10 -0
  1443. package/languages/pl-PL/Help/import.tid +24 -0
  1444. package/languages/pl-PL/Help/init.tid +23 -0
  1445. package/languages/pl-PL/Help/listen.tid +35 -0
  1446. package/languages/pl-PL/Help/load.tid +19 -0
  1447. package/languages/pl-PL/Help/makelibrary.tid +14 -0
  1448. package/languages/pl-PL/Help/notfound.tid +3 -0
  1449. package/languages/pl-PL/Help/output.tid +11 -0
  1450. package/languages/pl-PL/Help/password.tid +10 -0
  1451. package/languages/pl-PL/Help/render.tid +35 -0
  1452. package/languages/pl-PL/Help/rendertiddler.tid +24 -0
  1453. package/languages/pl-PL/Help/rendertiddlers.tid +20 -0
  1454. package/languages/pl-PL/Help/save.tid +25 -0
  1455. package/languages/pl-PL/Help/savetiddler.tid +14 -0
  1456. package/languages/pl-PL/Help/savetiddlers.tid +16 -0
  1457. package/languages/pl-PL/Help/savewikifolder.tid +19 -0
  1458. package/languages/pl-PL/Help/server.tid +42 -0
  1459. package/languages/pl-PL/Help/setfield.tid +17 -0
  1460. package/languages/pl-PL/Help/unpackplugin.tid +8 -0
  1461. package/languages/pl-PL/Help/verbose.tid +8 -0
  1462. package/languages/pl-PL/Help/version.tid +8 -0
  1463. package/languages/pl-PL/Import.multids +35 -0
  1464. package/languages/pl-PL/Misc.multids +95 -0
  1465. package/languages/pl-PL/Modals/Download.tid +12 -0
  1466. package/languages/pl-PL/Modals/SaveInstructions.tid +21 -0
  1467. package/languages/pl-PL/NewJournal.multids +4 -0
  1468. package/languages/pl-PL/NewJournalTags.tid +3 -0
  1469. package/languages/pl-PL/Notifications.multids +6 -0
  1470. package/languages/pl-PL/Search.multids +21 -0
  1471. package/languages/pl-PL/SideBar.multids +18 -0
  1472. package/languages/pl-PL/SiteSubtitle.tid +3 -0
  1473. package/languages/pl-PL/SiteTitle.tid +3 -0
  1474. package/languages/pl-PL/Snippets/ListByTag.tid +5 -0
  1475. package/languages/pl-PL/Snippets/MacroDefinition.tid +7 -0
  1476. package/languages/pl-PL/Snippets/Table 4x3.tid +8 -0
  1477. package/languages/pl-PL/Snippets/TableOfContents.tid +9 -0
  1478. package/languages/pl-PL/ThemeTweaks.multids +42 -0
  1479. package/languages/pl-PL/TiddlerInfo.multids +22 -0
  1480. package/languages/pl-PL/Types/application_javascript.tid +5 -0
  1481. package/languages/pl-PL/Types/application_json.tid +5 -0
  1482. package/languages/pl-PL/Types/application_x_tiddler_dictionary.tid +5 -0
  1483. package/languages/pl-PL/Types/image_gif.tid +5 -0
  1484. package/languages/pl-PL/Types/image_jpeg.tid +5 -0
  1485. package/languages/pl-PL/Types/image_png.tid +5 -0
  1486. package/languages/pl-PL/Types/image_svg_xml.tid +5 -0
  1487. package/languages/pl-PL/Types/image_x-icon.tid +5 -0
  1488. package/languages/pl-PL/Types/text_css.tid +5 -0
  1489. package/languages/pl-PL/Types/text_html.tid +5 -0
  1490. package/languages/pl-PL/Types/text_plain.tid +5 -0
  1491. package/languages/pl-PL/Types/text_vnd.tiddlywiki.tid +5 -0
  1492. package/languages/pl-PL/Types/text_x-tiddlywiki.tid +5 -0
  1493. package/languages/pl-PL/icon.tid +7 -0
  1494. package/languages/pl-PL/plugin.info +8 -0
  1495. package/languages/pl-PL/readme.md +1 -0
  1496. package/languages/pt-BR/Fields.multids +0 -1
  1497. package/languages/pt-BR/Misc.multids +0 -1
  1498. package/languages/pt-PT/Buttons.multids +17 -6
  1499. package/languages/pt-PT/ControlPanel.multids +43 -4
  1500. package/languages/pt-PT/Dates.multids +33 -31
  1501. package/languages/pt-PT/Docs/ModuleTypes.multids +4 -1
  1502. package/languages/pt-PT/Docs/PaletteColours.multids +8 -6
  1503. package/languages/pt-PT/EditTemplate.multids +6 -1
  1504. package/languages/pt-PT/Fields.multids +3 -1
  1505. package/languages/pt-PT/Filters.multids +2 -0
  1506. package/languages/pt-PT/GettingStarted.tid +1 -1
  1507. package/languages/pt-PT/Help/build.tid +2 -3
  1508. package/languages/pt-PT/Help/clearpassword.tid +1 -1
  1509. package/languages/pt-PT/Help/default.tid +1 -1
  1510. package/languages/pt-PT/Help/deletetiddlers.tid +8 -0
  1511. package/languages/pt-PT/Help/editions.tid +1 -1
  1512. package/languages/pt-PT/Help/fetch.tid +38 -0
  1513. package/languages/pt-PT/Help/help.tid +1 -1
  1514. package/languages/pt-PT/Help/import.tid +24 -0
  1515. package/languages/pt-PT/Help/init.tid +1 -1
  1516. package/languages/pt-PT/Help/listen.tid +34 -0
  1517. package/languages/pt-PT/Help/load.tid +1 -1
  1518. package/languages/pt-PT/Help/makelibrary.tid +1 -1
  1519. package/languages/pt-PT/Help/output.tid +1 -2
  1520. package/languages/pt-PT/Help/password.tid +1 -2
  1521. package/languages/pt-PT/Help/render.tid +34 -0
  1522. package/languages/pt-PT/Help/rendertiddlers.tid +1 -1
  1523. package/languages/pt-PT/Help/save.tid +25 -0
  1524. package/languages/pt-PT/Help/savetiddler.tid +1 -1
  1525. package/languages/pt-PT/Help/savetiddlers.tid +1 -1
  1526. package/languages/pt-PT/Help/savewikifolder.tid +19 -0
  1527. package/languages/pt-PT/Help/server.tid +1 -1
  1528. package/languages/pt-PT/Help/setfield.tid +1 -1
  1529. package/languages/pt-PT/Help/unpackplugin.tid +2 -2
  1530. package/languages/pt-PT/Help/verbose.tid +1 -1
  1531. package/languages/pt-PT/Help/version.tid +1 -1
  1532. package/languages/pt-PT/Import.multids +8 -0
  1533. package/languages/pt-PT/Misc.multids +8 -4
  1534. package/languages/pt-PT/NewJournal.multids +1 -0
  1535. package/languages/pt-PT/Notifications.multids +2 -0
  1536. package/languages/pt-PT/Search.multids +7 -7
  1537. package/languages/pt-PT/SideBar.multids +1 -0
  1538. package/languages/pt-PT/SiteSubtitle.tid +1 -1
  1539. package/languages/pt-PT/SiteTitle.tid +1 -1
  1540. package/languages/pt-PT/ThemeTweaks.multids +2 -1
  1541. package/languages/ru-RU/Docs/Fields.multids +0 -1
  1542. package/languages/ru-RU/Misc.multids +0 -1
  1543. package/languages/sk-SK/Fields.multids +0 -1
  1544. package/languages/sk-SK/Misc.multids +0 -1
  1545. package/languages/sl-SI/Fields.multids +0 -1
  1546. package/languages/sl-SI/Misc.multids +1 -2
  1547. package/languages/sv-SE/Fields.multids +0 -1
  1548. package/languages/sv-SE/Misc.multids +0 -1
  1549. package/languages/zh-Hans/Buttons.multids +1 -1
  1550. package/languages/zh-Hans/ControlPanel.multids +45 -13
  1551. package/languages/zh-Hans/Docs/ModuleTypes.multids +2 -1
  1552. package/languages/zh-Hans/Docs/PaletteColours.multids +2 -0
  1553. package/languages/zh-Hans/EditTemplate.multids +6 -0
  1554. package/languages/zh-Hans/Fields.multids +2 -1
  1555. package/languages/zh-Hans/Help/listen.tid +4 -2
  1556. package/languages/zh-Hans/Help/render.tid +2 -2
  1557. package/languages/zh-Hans/Help/rendertiddlers.tid +2 -2
  1558. package/languages/zh-Hans/Help/save.tid +1 -1
  1559. package/languages/zh-Hans/Import.multids +18 -7
  1560. package/languages/zh-Hans/Misc.multids +28 -6
  1561. package/languages/zh-Hans/NewJournal.multids +0 -1
  1562. package/languages/zh-Hans/NewJournalTags.tid +3 -0
  1563. package/languages/zh-Hans/TiddlerInfo.multids +1 -1
  1564. package/languages/zh-Hant/Buttons.multids +1 -1
  1565. package/languages/zh-Hant/ControlPanel.multids +47 -15
  1566. package/languages/zh-Hant/Docs/ModuleTypes.multids +2 -1
  1567. package/languages/zh-Hant/Docs/PaletteColours.multids +2 -0
  1568. package/languages/zh-Hant/EditTemplate.multids +6 -0
  1569. package/languages/zh-Hant/Fields.multids +2 -1
  1570. package/languages/zh-Hant/Help/listen.tid +5 -3
  1571. package/languages/zh-Hant/Help/render.tid +2 -2
  1572. package/languages/zh-Hant/Help/rendertiddlers.tid +2 -2
  1573. package/languages/zh-Hant/Help/save.tid +1 -1
  1574. package/languages/zh-Hant/Import.multids +18 -7
  1575. package/languages/zh-Hant/Misc.multids +25 -3
  1576. package/languages/zh-Hant/NewJournal.multids +0 -1
  1577. package/languages/zh-Hant/NewJournalTags.tid +3 -0
  1578. package/languages/zh-Hant/TiddlerInfo.multids +1 -1
  1579. package/license +1 -1
  1580. package/licenses/cla-individual.md +102 -0
  1581. package/package.json +4 -2
  1582. package/plugins/tiddlywiki/async/plugin.info +3 -3
  1583. package/plugins/tiddlywiki/aws/docs/help.tid +2 -2
  1584. package/plugins/tiddlywiki/aws/docs/readme.tid +1 -0
  1585. package/plugins/tiddlywiki/aws/modules/encodings.js +27 -0
  1586. package/plugins/tiddlywiki/aws/plugin.info +4 -4
  1587. package/plugins/tiddlywiki/bibtex/deserializer.js +3 -2
  1588. package/plugins/tiddlywiki/bibtex/files/LICENSE +0 -0
  1589. package/plugins/tiddlywiki/bibtex/files/README.md +0 -0
  1590. package/plugins/tiddlywiki/bibtex/files/bibtexParse.js +42 -26
  1591. package/plugins/tiddlywiki/bibtex/plugin.info +2 -2
  1592. package/plugins/tiddlywiki/blog/plugin.info +2 -3
  1593. package/plugins/tiddlywiki/browser-sniff/plugin.info +2 -3
  1594. package/plugins/tiddlywiki/browser-storage/config/SaveFilter.tid +1 -1
  1595. package/plugins/tiddlywiki/browser-storage/plugin.info +2 -3
  1596. package/plugins/tiddlywiki/browser-storage/settings.tid +1 -1
  1597. package/plugins/tiddlywiki/browser-storage/startup.js +1 -1
  1598. package/plugins/tiddlywiki/cecily/plugin.info +1 -2
  1599. package/plugins/tiddlywiki/classictools/plugin.info +2 -3
  1600. package/plugins/tiddlywiki/codemirror/config/theme.tid +1 -1
  1601. package/plugins/tiddlywiki/codemirror/config-language.multids +8 -1
  1602. package/plugins/tiddlywiki/codemirror/engine.js +101 -6
  1603. package/plugins/tiddlywiki/codemirror/files/addon/dialog/dialog.js +1 -1
  1604. package/plugins/tiddlywiki/codemirror/files/addon/selection/activeline.js +1 -1
  1605. package/plugins/tiddlywiki/codemirror/files/codemirror.css +1 -1
  1606. package/plugins/tiddlywiki/codemirror/files/codemirror.js +1 -1
  1607. package/plugins/tiddlywiki/codemirror/plugin.info +2 -2
  1608. package/plugins/tiddlywiki/codemirror/readme.tid +2 -13
  1609. package/plugins/tiddlywiki/codemirror/settings/cursorBlinkRate.tid +7 -0
  1610. package/plugins/tiddlywiki/codemirror/settings/indentUnit.tid +7 -0
  1611. package/plugins/tiddlywiki/codemirror/settings/indentWithTabs.tid +8 -0
  1612. package/plugins/tiddlywiki/codemirror/settings/smartIndent.tid +8 -0
  1613. package/plugins/tiddlywiki/codemirror/settings/tabSize.tid +7 -0
  1614. package/plugins/tiddlywiki/codemirror/styles.tid +84 -1
  1615. package/plugins/tiddlywiki/codemirror/ui/controlpanel/settings.tid +1 -1
  1616. package/plugins/tiddlywiki/codemirror-autocomplete/files/addon/hint/anyword-hint.js +2 -2
  1617. package/plugins/tiddlywiki/codemirror-autocomplete/files/addon/hint/css-hint.js +2 -2
  1618. package/plugins/tiddlywiki/codemirror-autocomplete/files/addon/hint/html-hint.js +2 -2
  1619. package/plugins/tiddlywiki/codemirror-autocomplete/files/addon/hint/javascript-hint.js +2 -2
  1620. package/plugins/tiddlywiki/codemirror-autocomplete/files/addon/hint/show-hint.js +2 -2
  1621. package/plugins/tiddlywiki/codemirror-autocomplete/files/addon/hint/xml-hint.js +2 -2
  1622. package/plugins/tiddlywiki/codemirror-autocomplete/plugin.info +4 -2
  1623. package/plugins/tiddlywiki/codemirror-closebrackets/files/addon/edit/closebrackets.js +2 -2
  1624. package/plugins/tiddlywiki/codemirror-closebrackets/files/addon/edit/matchbrackets.js +2 -2
  1625. package/plugins/tiddlywiki/codemirror-closebrackets/plugin.info +3 -2
  1626. package/plugins/tiddlywiki/codemirror-closetag/files/addon/edit/closetag.js +2 -2
  1627. package/plugins/tiddlywiki/codemirror-closetag/files/addon/fold/xml-fold.js +2 -2
  1628. package/plugins/tiddlywiki/codemirror-closetag/plugin.info +3 -2
  1629. package/plugins/tiddlywiki/codemirror-fullscreen-editing/files/addon/fullscreen/fullscreen.js +2 -2
  1630. package/plugins/tiddlywiki/codemirror-fullscreen-editing/plugin.info +3 -2
  1631. package/plugins/tiddlywiki/codemirror-keymap-emacs/files/keymap/emacs.js +2 -2
  1632. package/plugins/tiddlywiki/codemirror-keymap-emacs/plugin.info +3 -2
  1633. package/plugins/tiddlywiki/codemirror-keymap-sublime-text/files/addons/comment/comment.js +3 -0
  1634. package/plugins/tiddlywiki/codemirror-keymap-sublime-text/files/keymap/sublime.js +2 -2
  1635. package/plugins/tiddlywiki/codemirror-keymap-sublime-text/files/tiddlywiki.files +7 -0
  1636. package/plugins/tiddlywiki/codemirror-keymap-sublime-text/plugin.info +4 -2
  1637. package/plugins/tiddlywiki/codemirror-keymap-vim/files/keymap/vim.js +2 -2
  1638. package/plugins/tiddlywiki/codemirror-keymap-vim/plugin.info +4 -2
  1639. package/plugins/tiddlywiki/codemirror-mode-css/files/mode/css/css.js +2 -2
  1640. package/plugins/tiddlywiki/codemirror-mode-css/plugin.info +3 -2
  1641. package/plugins/tiddlywiki/codemirror-mode-htmlembedded/files/addon/mode/multiplex.js +2 -2
  1642. package/plugins/tiddlywiki/codemirror-mode-htmlembedded/files/mode/htmlembedded/htmlembedded.js +2 -2
  1643. package/plugins/tiddlywiki/codemirror-mode-htmlembedded/plugin.info +4 -2
  1644. package/plugins/tiddlywiki/codemirror-mode-htmlmixed/files/mode/htmlmixed/htmlmixed.js +2 -2
  1645. package/plugins/tiddlywiki/codemirror-mode-htmlmixed/plugin.info +4 -2
  1646. package/plugins/tiddlywiki/codemirror-mode-javascript/files/mode/javascript/javascript.js +2 -2
  1647. package/plugins/tiddlywiki/codemirror-mode-javascript/plugin.info +3 -2
  1648. package/plugins/tiddlywiki/codemirror-mode-markdown/files/mode/markdown/markdown.js +2 -2
  1649. package/plugins/tiddlywiki/codemirror-mode-markdown/plugin.info +4 -2
  1650. package/plugins/tiddlywiki/codemirror-mode-x-tiddlywiki/plugin.info +3 -2
  1651. package/plugins/tiddlywiki/codemirror-mode-xml/files/mode/xml/xml.js +2 -2
  1652. package/plugins/tiddlywiki/codemirror-mode-xml/plugin.info +3 -2
  1653. package/plugins/tiddlywiki/codemirror-search-replace/files/addon/search/jump-to-line.js +2 -2
  1654. package/plugins/tiddlywiki/codemirror-search-replace/files/addon/search/search.js +2 -2
  1655. package/plugins/tiddlywiki/codemirror-search-replace/files/addon/search/searchcursor.js +2 -2
  1656. package/plugins/tiddlywiki/codemirror-search-replace/plugin.info +3 -2
  1657. package/plugins/tiddlywiki/comments/header-view-template-segment.tid +26 -2
  1658. package/plugins/tiddlywiki/comments/plugin.info +2 -3
  1659. package/plugins/tiddlywiki/consent-banner/banner.tid +28 -0
  1660. package/plugins/tiddlywiki/consent-banner/blocked-embed-message-wrapper.tid +13 -0
  1661. package/plugins/tiddlywiki/consent-banner/buttons/accept.tid +6 -0
  1662. package/plugins/tiddlywiki/consent-banner/buttons/decline.tid +6 -0
  1663. package/plugins/tiddlywiki/consent-banner/config/DefaultColourMappings.multids +15 -0
  1664. package/plugins/tiddlywiki/consent-banner/config/block-embedded-content.tid +2 -0
  1665. package/plugins/tiddlywiki/consent-banner/config/blocked-embed-message.tid +7 -0
  1666. package/plugins/tiddlywiki/consent-banner/config/blocked-raw-message.tid +19 -0
  1667. package/plugins/tiddlywiki/consent-banner/config/buttons.multids +8 -0
  1668. package/plugins/tiddlywiki/consent-banner/config/cookie-consent-required.tid +2 -0
  1669. package/plugins/tiddlywiki/consent-banner/config/greeting-message.tid +19 -0
  1670. package/plugins/tiddlywiki/consent-banner/config/tv-block-embedded-content.tid +4 -0
  1671. package/plugins/tiddlywiki/consent-banner/config.tid +48 -0
  1672. package/plugins/tiddlywiki/consent-banner/docs.tid +64 -0
  1673. package/plugins/tiddlywiki/consent-banner/plugin.info +6 -0
  1674. package/plugins/tiddlywiki/consent-banner/raw-widget.js +69 -0
  1675. package/plugins/tiddlywiki/consent-banner/readme.tid +10 -0
  1676. package/plugins/tiddlywiki/consent-banner/startup.js +107 -0
  1677. package/plugins/tiddlywiki/consent-banner/styles.tid +111 -0
  1678. package/plugins/tiddlywiki/consent-banner/youtube-macros.tid +21 -0
  1679. package/plugins/tiddlywiki/d3/plugin.info +2 -3
  1680. package/plugins/tiddlywiki/dynannotate/docs/readme.tid +108 -0
  1681. package/plugins/tiddlywiki/dynannotate/examples/combined.tid +111 -0
  1682. package/plugins/tiddlywiki/dynannotate/examples/example-annotation-1.tid +5 -0
  1683. package/plugins/tiddlywiki/dynannotate/examples/example-annotation-2.tid +5 -0
  1684. package/plugins/tiddlywiki/dynannotate/examples/example-annotation-3.tid +5 -0
  1685. package/plugins/tiddlywiki/dynannotate/examples/example-annotation-4.json +10 -0
  1686. package/plugins/tiddlywiki/dynannotate/examples/example-text.multids +19 -0
  1687. package/plugins/tiddlywiki/dynannotate/examples/examples.tid +4 -0
  1688. package/plugins/tiddlywiki/dynannotate/examples/simple.tid +100 -0
  1689. package/plugins/tiddlywiki/dynannotate/examples/snippets.tid +56 -0
  1690. package/plugins/tiddlywiki/dynannotate/examples/viewtemplate-text.tid +98 -0
  1691. package/plugins/tiddlywiki/dynannotate/examples/viewtemplate.tid +29 -0
  1692. package/plugins/tiddlywiki/dynannotate/modules/dynannotate.js +418 -0
  1693. package/plugins/tiddlywiki/dynannotate/modules/selection-tracker.js +116 -0
  1694. package/plugins/tiddlywiki/dynannotate/modules/textmap.js +177 -0
  1695. package/plugins/tiddlywiki/dynannotate/plugin.info +9 -0
  1696. package/plugins/tiddlywiki/dynannotate/styles.tid +44 -0
  1697. package/plugins/tiddlywiki/dynaview/examples/reveal-on-scroll.tid +4 -4
  1698. package/plugins/tiddlywiki/dynaview/examples/zoomable-tooltips.tid +1 -1
  1699. package/plugins/tiddlywiki/dynaview/macros.tid +4 -4
  1700. package/plugins/tiddlywiki/dynaview/plugin.info +1 -2
  1701. package/plugins/tiddlywiki/evernote/plugin.info +1 -2
  1702. package/plugins/tiddlywiki/external-attachments/plugin.info +2 -3
  1703. package/plugins/tiddlywiki/external-attachments/startup.js +15 -12
  1704. package/plugins/tiddlywiki/filesystem/filesystemadaptor.js +68 -34
  1705. package/plugins/tiddlywiki/filesystem/plugin.info +2 -3
  1706. package/plugins/tiddlywiki/freelinks/config-Freelinks-Enable.tid +2 -0
  1707. package/plugins/tiddlywiki/freelinks/macros-view.tid +8 -0
  1708. package/plugins/tiddlywiki/freelinks/plain-text.js +62 -0
  1709. package/plugins/tiddlywiki/freelinks/plugin.info +6 -0
  1710. package/plugins/tiddlywiki/freelinks/readme.tid +42 -0
  1711. package/plugins/tiddlywiki/freelinks/settings.tid +7 -0
  1712. package/plugins/tiddlywiki/freelinks/styles.tid +8 -0
  1713. package/plugins/tiddlywiki/freelinks/text.js +168 -0
  1714. package/plugins/tiddlywiki/github-fork-ribbon/plugin.info +3 -2
  1715. package/plugins/tiddlywiki/github-fork-ribbon/usage.tid +2 -0
  1716. package/plugins/tiddlywiki/googleanalytics/googleanalytics.js +37 -13
  1717. package/plugins/tiddlywiki/googleanalytics/plugin.info +2 -3
  1718. package/plugins/tiddlywiki/googleanalytics/readme.tid +2 -0
  1719. package/plugins/tiddlywiki/hammerjs/plugin.info +3 -3
  1720. package/plugins/tiddlywiki/help/help.tid +10 -8
  1721. package/plugins/tiddlywiki/help/plugin.info +2 -3
  1722. package/plugins/tiddlywiki/highlight/files/highlight.pack.js +2 -2
  1723. package/plugins/tiddlywiki/highlight/plugin.info +3 -3
  1724. package/plugins/tiddlywiki/highlight/readme.tid +11 -1
  1725. package/plugins/tiddlywiki/highlight/styles.tid +79 -1
  1726. package/plugins/tiddlywiki/innerwiki/innerwiki.js +2 -1
  1727. package/plugins/tiddlywiki/innerwiki/plugin.info +2 -3
  1728. package/plugins/tiddlywiki/innerwiki/template.tid +0 -4
  1729. package/plugins/tiddlywiki/internals/plugin.info +1 -2
  1730. package/plugins/tiddlywiki/jasmine/files/jasmine/MIT.LICENSE +20 -0
  1731. package/plugins/tiddlywiki/jasmine/files/jasmine/lib/command.js +283 -0
  1732. package/plugins/tiddlywiki/jasmine/files/jasmine/lib/filters/console_spec_filter.js +10 -0
  1733. package/plugins/tiddlywiki/jasmine/files/jasmine/lib/jasmine.js +263 -0
  1734. package/plugins/tiddlywiki/jasmine/files/jasmine/lib/reporters/completion_reporter.js +29 -0
  1735. package/plugins/tiddlywiki/jasmine/files/jasmine/lib/reporters/console_reporter.js +232 -0
  1736. package/plugins/tiddlywiki/jasmine/files/{MIT.LICENSE → jasmine-core/MIT.LICENSE} +1 -1
  1737. package/plugins/tiddlywiki/jasmine/files/jasmine-core/lib/jasmine-core/boot.js +158 -0
  1738. package/plugins/tiddlywiki/jasmine/files/jasmine-core/lib/jasmine-core/jasmine-html.js +620 -0
  1739. package/plugins/tiddlywiki/jasmine/files/jasmine-core/lib/jasmine-core/jasmine.css +128 -0
  1740. package/plugins/tiddlywiki/jasmine/files/jasmine-core/lib/jasmine-core/jasmine.js +7033 -0
  1741. package/plugins/tiddlywiki/jasmine/files/jasmine-core/lib/jasmine-core/json2.js +489 -0
  1742. package/plugins/tiddlywiki/jasmine/files/jasmine-core/lib/jasmine-core/node_boot.js +38 -0
  1743. package/plugins/tiddlywiki/jasmine/files/jasmine-core/lib/jasmine-core.js +37 -0
  1744. package/plugins/tiddlywiki/jasmine/files/tiddlywiki.files +41 -18
  1745. package/plugins/tiddlywiki/jasmine/jasmine-plugin.js +119 -57
  1746. package/plugins/tiddlywiki/jasmine/plugin.info +2 -3
  1747. package/plugins/tiddlywiki/jasmine/readme.tid +1 -1
  1748. package/plugins/tiddlywiki/jasmine/update-packages.sh +30 -0
  1749. package/plugins/tiddlywiki/jszip/docs.tid +43 -0
  1750. package/plugins/tiddlywiki/jszip/examples.tid +36 -0
  1751. package/plugins/tiddlywiki/jszip/plugin.info +4 -4
  1752. package/plugins/tiddlywiki/jszip/readme.tid +1 -1
  1753. package/plugins/tiddlywiki/jszip/startup.js +104 -0
  1754. package/plugins/tiddlywiki/katex/config.tid +17 -0
  1755. package/plugins/tiddlywiki/katex/files/README.md +79 -100
  1756. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_AMS-Regular.ttf +0 -0
  1757. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_AMS-Regular.woff +0 -0
  1758. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  1759. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  1760. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  1761. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  1762. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  1763. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  1764. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  1765. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  1766. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  1767. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  1768. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  1769. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  1770. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  1771. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Bold.ttf +0 -0
  1772. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Bold.woff +0 -0
  1773. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Bold.woff2 +0 -0
  1774. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  1775. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  1776. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  1777. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Italic.ttf +0 -0
  1778. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Italic.woff +0 -0
  1779. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Italic.woff2 +0 -0
  1780. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Regular.ttf +0 -0
  1781. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Regular.woff +0 -0
  1782. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Regular.woff2 +0 -0
  1783. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  1784. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  1785. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  1786. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-Italic.ttf +0 -0
  1787. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-Italic.woff +0 -0
  1788. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-Italic.woff2 +0 -0
  1789. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  1790. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  1791. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  1792. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  1793. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  1794. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  1795. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  1796. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  1797. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  1798. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Script-Regular.ttf +0 -0
  1799. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Script-Regular.woff +0 -0
  1800. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Script-Regular.woff2 +0 -0
  1801. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size1-Regular.ttf +0 -0
  1802. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size1-Regular.woff +0 -0
  1803. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  1804. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size2-Regular.ttf +0 -0
  1805. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size2-Regular.woff +0 -0
  1806. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  1807. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size3-Regular.ttf +0 -0
  1808. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size3-Regular.woff +0 -0
  1809. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  1810. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size4-Regular.ttf +0 -0
  1811. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size4-Regular.woff +0 -0
  1812. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  1813. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  1814. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  1815. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  1816. package/plugins/tiddlywiki/katex/files/katex.css +1079 -0
  1817. package/plugins/tiddlywiki/katex/files/katex.js +4917 -3543
  1818. package/plugins/tiddlywiki/katex/files/katex.min.css +1 -1
  1819. package/plugins/tiddlywiki/katex/files/katex.min.js +1 -1
  1820. package/plugins/tiddlywiki/katex/files/katex.without-font-face.min.css +1 -1
  1821. package/plugins/tiddlywiki/katex/files/mhchem.min.js +1 -1683
  1822. package/plugins/tiddlywiki/katex/files/tiddlywiki.files +3 -1
  1823. package/plugins/tiddlywiki/katex/plugin.info +4 -5
  1824. package/plugins/tiddlywiki/katex/readme.tid +1 -1
  1825. package/plugins/tiddlywiki/katex/styles.tid +7 -1
  1826. package/plugins/tiddlywiki/katex/ui/config/macro.tid +137 -0
  1827. package/plugins/tiddlywiki/katex/wrapper.js +19 -13
  1828. package/plugins/tiddlywiki/markdown/config_breaks.tid +3 -0
  1829. package/plugins/tiddlywiki/markdown/config_linkNewWindow.tid +3 -0
  1830. package/plugins/tiddlywiki/markdown/config_linkify.tid +3 -0
  1831. package/plugins/tiddlywiki/markdown/config_quotes.tid +3 -0
  1832. package/plugins/tiddlywiki/markdown/config_renderWikiText.tid +3 -0
  1833. package/plugins/tiddlywiki/markdown/config_renderWikiTextPragma.tid +3 -0
  1834. package/plugins/tiddlywiki/markdown/config_typographer.tid +3 -0
  1835. package/plugins/tiddlywiki/markdown/files/remarkable-katex-license.txt +21 -0
  1836. package/plugins/tiddlywiki/markdown/files/remarkable-katex.js +137 -0
  1837. package/plugins/tiddlywiki/markdown/files/remarkable-katex.min.js +20 -0
  1838. package/plugins/tiddlywiki/markdown/files/remarkable-license.txt +22 -0
  1839. package/plugins/tiddlywiki/markdown/files/remarkable.js +1 -0
  1840. package/plugins/tiddlywiki/markdown/files/tiddlywiki.files +26 -2
  1841. package/plugins/tiddlywiki/markdown/new-markdown.tid +3 -2
  1842. package/plugins/tiddlywiki/markdown/plugin.info +3 -4
  1843. package/plugins/tiddlywiki/markdown/readme.tid +1 -1
  1844. package/plugins/tiddlywiki/markdown/usage.tid +15 -9
  1845. package/plugins/tiddlywiki/markdown/wrapper.js +297 -57
  1846. package/plugins/tiddlywiki/menubar/config-DefaultColourMappings.multids +4 -0
  1847. package/plugins/tiddlywiki/menubar/config-MenuItemsVisibility.multids +5 -0
  1848. package/plugins/tiddlywiki/menubar/config-TableOfContentsTag.tid +2 -0
  1849. package/plugins/tiddlywiki/menubar/config-breakpoint.tid +2 -0
  1850. package/plugins/tiddlywiki/menubar/config.tid +37 -0
  1851. package/plugins/tiddlywiki/menubar/items/contents.tid +11 -0
  1852. package/plugins/tiddlywiki/menubar/items/hamburger.tid +17 -0
  1853. package/plugins/tiddlywiki/menubar/items/pagecontrols.tid +19 -0
  1854. package/plugins/tiddlywiki/menubar/items/search.tid +56 -0
  1855. package/plugins/tiddlywiki/menubar/items/server.tid +14 -0
  1856. package/plugins/tiddlywiki/menubar/items/sidebar.tid +11 -0
  1857. package/plugins/tiddlywiki/menubar/items/topleftbar.tid +11 -0
  1858. package/plugins/tiddlywiki/menubar/items/toprightbar.tid +12 -0
  1859. package/plugins/tiddlywiki/menubar/menu.tid +68 -0
  1860. package/plugins/tiddlywiki/menubar/overrides/core-ui-PageTemplate-topleftbar.tid +3 -0
  1861. package/plugins/tiddlywiki/menubar/overrides/core-ui-PageTemplate-toprightbar.tid +3 -0
  1862. package/plugins/tiddlywiki/menubar/plugin.info +6 -0
  1863. package/plugins/tiddlywiki/menubar/readme.tid +30 -0
  1864. package/plugins/tiddlywiki/menubar/styles.tid +222 -0
  1865. package/plugins/tiddlywiki/menubar/tags-MenuBar.tid +2 -0
  1866. package/plugins/tiddlywiki/mobiledragdrop/plugin.info +2 -2
  1867. package/plugins/tiddlywiki/nodewebkitsaver/plugin.info +2 -3
  1868. package/plugins/tiddlywiki/pluginlibrary/plugin.info +1 -2
  1869. package/plugins/tiddlywiki/powered-by-tiddlywiki/plugin.info +2 -3
  1870. package/plugins/tiddlywiki/qrcode/ViewToolbarButton/Button.tid +3 -4
  1871. package/plugins/tiddlywiki/qrcode/plugin.info +2 -2
  1872. package/plugins/tiddlywiki/railroad/files/railroad-diagrams.css +10 -4
  1873. package/plugins/tiddlywiki/railroad/files/tiddlywiki.files +1 -1
  1874. package/plugins/tiddlywiki/railroad/plugin.info +2 -2
  1875. package/plugins/tiddlywiki/railroad/wrapper.js +1 -1
  1876. package/plugins/tiddlywiki/savetrail/plugin.info +2 -3
  1877. package/plugins/tiddlywiki/savetrail/savetrail.js +4 -4
  1878. package/plugins/tiddlywiki/sax/plugin.info +2 -2
  1879. package/plugins/tiddlywiki/share/DefaultTiddlers.tid +3 -0
  1880. package/plugins/tiddlywiki/share/SiteSubtitle.tid +3 -0
  1881. package/plugins/tiddlywiki/share/SiteTitle.tid +3 -0
  1882. package/plugins/tiddlywiki/share/above-story.tid +4 -0
  1883. package/plugins/tiddlywiki/share/base-url.tid +2 -0
  1884. package/plugins/tiddlywiki/share/exclusions.tid +2 -0
  1885. package/plugins/tiddlywiki/share/filter.tid +2 -0
  1886. package/plugins/tiddlywiki/share/plugin.info +6 -0
  1887. package/plugins/tiddlywiki/share/pluginreloadwarning.tid +3 -0
  1888. package/plugins/tiddlywiki/share/rawmarkup.js +114 -0
  1889. package/plugins/tiddlywiki/share/rawmarkup.tid +8 -0
  1890. package/plugins/tiddlywiki/share/readme.tid +9 -0
  1891. package/plugins/tiddlywiki/share/settings.tid +7 -0
  1892. package/plugins/tiddlywiki/share/startup-warning.css +87 -0
  1893. package/plugins/tiddlywiki/share/startup-warning.css.meta +2 -0
  1894. package/plugins/tiddlywiki/share/startup-warning.html +47 -0
  1895. package/plugins/tiddlywiki/share/startup-warning.html.meta +2 -0
  1896. package/plugins/tiddlywiki/share/styles.tid +17 -0
  1897. package/plugins/tiddlywiki/share/wizard.tid +71 -0
  1898. package/plugins/tiddlywiki/stacked-view/plugin.info +1 -2
  1899. package/plugins/tiddlywiki/tahoelafs/plugin.info +1 -2
  1900. package/plugins/tiddlywiki/text-slicer/plugin.info +3 -3
  1901. package/plugins/tiddlywiki/text-slicer/templates/interactive/tiddler.tid +2 -2
  1902. package/plugins/tiddlywiki/text-slicer/templates/plain/tiddler.tid +10 -10
  1903. package/plugins/tiddlywiki/text-slicer/templates/static/tiddler.tid +10 -10
  1904. package/plugins/tiddlywiki/text-slicer/ui/slice-toolbar-button.tid +6 -4
  1905. package/plugins/tiddlywiki/tiddlyweb/config-tiddlers-filter.tid +2 -0
  1906. package/plugins/tiddlywiki/tiddlyweb/configOfficialPluginLibrary.tid +7 -0
  1907. package/plugins/tiddlywiki/tiddlyweb/css-tiddler.tid +7 -0
  1908. package/plugins/tiddlywiki/tiddlyweb/html-div-skinny-tiddler.tid +9 -0
  1909. package/plugins/tiddlywiki/tiddlyweb/html-div-tiddler.tid +1 -1
  1910. package/plugins/tiddlywiki/tiddlyweb/html-json-skinny-tiddler.tid +4 -0
  1911. package/plugins/tiddlywiki/tiddlyweb/html-json-tiddler.tid +4 -0
  1912. package/plugins/tiddlywiki/tiddlyweb/icon-cloud.tid +4 -0
  1913. package/plugins/tiddlywiki/tiddlyweb/javascript-tiddler.tid +7 -0
  1914. package/plugins/tiddlywiki/tiddlyweb/plugin.info +4 -4
  1915. package/plugins/tiddlywiki/tiddlyweb/save-offline.tid +2 -1
  1916. package/plugins/tiddlywiki/tiddlyweb/save-wiki-button.tid +26 -0
  1917. package/plugins/tiddlywiki/tiddlyweb/styles.tid +44 -0
  1918. package/plugins/tiddlywiki/tiddlyweb/syncer-actions-copy-logs.tid +6 -0
  1919. package/plugins/tiddlywiki/tiddlyweb/syncer-actions-login-status.tid +9 -0
  1920. package/plugins/tiddlywiki/tiddlyweb/syncer-actions-login.tid +8 -0
  1921. package/plugins/tiddlywiki/tiddlyweb/syncer-actions-logout.tid +8 -0
  1922. package/plugins/tiddlywiki/tiddlyweb/syncer-actions-refresh.tid +9 -0
  1923. package/plugins/tiddlywiki/tiddlyweb/syncer-actions-save-snapshot.tid +9 -0
  1924. package/plugins/tiddlywiki/tiddlyweb/tags-syncerdropdown.tid +2 -0
  1925. package/plugins/tiddlywiki/tiddlyweb/tiddlywebadaptor.js +41 -14
  1926. package/plugins/tiddlywiki/translators/plugin.info +1 -2
  1927. package/plugins/tiddlywiki/tw2parser/plugin.info +2 -2
  1928. package/plugins/tiddlywiki/tw2parser/wikitextparser.js +1 -1
  1929. package/plugins/tiddlywiki/tw5.com-docs/plugin.info +1 -2
  1930. package/plugins/tiddlywiki/twitter/plugin.info +2 -3
  1931. package/plugins/tiddlywiki/twitter/startup.js +27 -0
  1932. package/plugins/tiddlywiki/upgrade/config.js +1 -0
  1933. package/plugins/tiddlywiki/upgrade/plugin.info +1 -2
  1934. package/plugins/tiddlywiki/xlsx-utils/deserializer.js +2 -1
  1935. package/plugins/tiddlywiki/xlsx-utils/importer.js +6 -5
  1936. package/plugins/tiddlywiki/xlsx-utils/plugin.info +3 -3
  1937. package/plugins/tiddlywiki/xlsx-utils/xlsx-import-command.js +3 -2
  1938. package/plugins/tiddlywiki/xmldom/plugin.info +2 -3
  1939. package/readme.md +4 -16
  1940. package/themes/tiddlywiki/snowwhite/base.tid +5 -1
  1941. package/themes/tiddlywiki/starlight/styles.tid +6 -6
  1942. package/themes/tiddlywiki/tight/base.tid +9 -5
  1943. package/themes/tiddlywiki/vanilla/ThemeTweaks.tid +7 -3
  1944. package/themes/tiddlywiki/vanilla/base.tid +580 -121
  1945. package/themes/tiddlywiki/vanilla/reset.tid +169 -294
  1946. package/themes/tiddlywiki/vanilla/settings.multids +1 -1
  1947. package/.travis.yml +0 -34
  1948. package/bin/travis-push.sh +0 -20
  1949. package/core/ui/ViewTemplate/plugin.tid +0 -12
  1950. package/editions/codemirrordemo/tiddlers/cm-theme-tiddlywiki.tid +0 -56
  1951. package/editions/de-AT/tiddlers/bilder/New_Release_Banner.png.tid +0 -6
  1952. package/editions/prerelease/tiddlers/Release 5.1.22.tid +0 -14
  1953. package/editions/tw5.com/tiddlers/community/Resources.tid +0 -25
  1954. package/editions/tw5.com/tiddlers/community/examples/Obadiah.tid +0 -10
  1955. package/editions/tw5.com/tiddlers/community/resources/Hosting TiddlyWiki5 on GoogleDrive.tid +0 -13
  1956. package/editions/tw5.com/tiddlers/community/resources/How Does Twederation Work by Jed Carty.tid +0 -14
  1957. package/editions/tw5.com/tiddlers/community/resources/Plugins by Uwe Stuehler.tid +0 -13
  1958. package/editions/tw5.com/tiddlers/community/resources/TiddlyWiki Jingle by Mans Martensson.tid +0 -18
  1959. package/editions/tw5.com/tiddlers/community/resources/TiddlyWiki5 Coding.tid +0 -18
  1960. package/editions/tw5.com/tiddlers/customising/Page and tiddler layout customisation.tid +0 -60
  1961. package/editions/tw5.com/tiddlers/demonstrations/SampleAlert.tid +0 -9
  1962. package/editions/tw5.com/tiddlers/images/New Release Banner.jpg +0 -0
  1963. package/plugins/tiddlywiki/dynaview/examples/unreveal-on-scroll.tid +0 -28
  1964. package/plugins/tiddlywiki/jasmine/files/jasmine-html.js +0 -681
  1965. package/plugins/tiddlywiki/jasmine/files/jasmine.css +0 -82
  1966. package/plugins/tiddlywiki/jasmine/files/jasmine.js +0 -2600
  1967. package/plugins/tiddlywiki/jasmine/files/reporter.js +0 -276
  1968. package/plugins/tiddlywiki/markdown/dialect.tid +0 -3
  1969. package/plugins/tiddlywiki/markdown/files/markdown.js +0 -1725
  1970. package/plugins/tiddlywiki/tiddlyweb/ServerControlPanel.tid +0 -20
@@ -1,1683 +1 @@
1
- /* eslint-disable */
2
- /* -*- Mode: Javascript; indent-tabs-mode:nil; js-indent-level: 2 -*- */
3
- /* vim: set ts=2 et sw=2 tw=80: */
4
-
5
- /*************************************************************
6
- *
7
- * KaTeX mhchem.js
8
- *
9
- * This file implements a KaTeX version of mhchem version 3.3.0.
10
- * It is adapted from MathJax/extensions/TeX/mhchem.js
11
- * It differs from the MathJax version as follows:
12
- * 1. The interface is changed so that it can be called from KaTeX, not MathJax.
13
- * 2. \rlap and \llap are replaced with \mathrlap and \mathllap.
14
- * 3. Four lines of code are edited in order to use \raisebox instead of \raise.
15
- * 4. The reaction arrow code is simplified. All reaction arrows are rendered
16
- * using KaTeX extensible arrows instead of building non-extensible arrows.
17
- * 5. \tripledash vertical alignment is slightly adjusted.
18
- *
19
- * This code, as other KaTeX code, is released under the MIT license.
20
- *
21
- * /*************************************************************
22
- *
23
- * MathJax/extensions/TeX/mhchem.js
24
- *
25
- * Implements the \ce command for handling chemical formulas
26
- * from the mhchem LaTeX package.
27
- *
28
- * ---------------------------------------------------------------------
29
- *
30
- * Copyright (c) 2011-2015 The MathJax Consortium
31
- * Copyright (c) 2015-2018 Martin Hensel
32
- *
33
- * Licensed under the Apache License, Version 2.0 (the "License");
34
- * you may not use this file except in compliance with the License.
35
- * You may obtain a copy of the License at
36
- *
37
- * http://www.apache.org/licenses/LICENSE-2.0
38
- *
39
- * Unless required by applicable law or agreed to in writing, software
40
- * distributed under the License is distributed on an "AS IS" BASIS,
41
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
42
- * See the License for the specific language governing permissions and
43
- * limitations under the License.
44
- */
45
-
46
- //
47
- // Coding Style
48
- // - use '' for identifiers that can by minified/uglified
49
- // - use "" for strings that need to stay untouched
50
-
51
- // version: "3.3.0" for MathJax and KaTeX
52
-
53
- /****************************************
54
- *****************************************
55
- * TiddlyWiki: moved the katex-module definitions to wrapper.js
56
- *****************************************
57
- *****************************************/
58
-
59
- //
60
- // This is the main function for handing the \ce and \pu commands.
61
- // It takes the argument to \ce or \pu and returns the corresponding TeX string.
62
- //
63
-
64
- // TiddlyWiki: replaced `var chemParse =` with `module.exports =` ... no more modifications in this file
65
- module.exports = function (tokens, stateMachine) {
66
- // Recreate the argument string from KaTeX's array of tokens.
67
- var str = "";
68
- var expectedLoc = tokens[tokens.length - 1].loc.start
69
- for (var i = tokens.length - 1; i >= 0; i--) {
70
- if(tokens[i].loc.start > expectedLoc) {
71
- // context.consumeArgs has eaten a space.
72
- str += " ";
73
- expectedLoc = tokens[i].loc.start;
74
- }
75
- str += tokens[i].text;
76
- expectedLoc += tokens[i].text.length;
77
- }
78
- var tex = texify.go(mhchemParser.go(str, stateMachine));
79
- return tex;
80
- };
81
-
82
- //
83
- // Core parser for mhchem syntax (recursive)
84
- //
85
- /** @type {MhchemParser} */
86
- var mhchemParser = {
87
- //
88
- // Parses mchem \ce syntax
89
- //
90
- // Call like
91
- // go("H2O");
92
- //
93
- go: function (input, stateMachine) {
94
- if (!input) { return []; }
95
- if (stateMachine === undefined) { stateMachine = 'ce'; }
96
- var state = '0';
97
-
98
- //
99
- // String buffers for parsing:
100
- //
101
- // buffer.a == amount
102
- // buffer.o == element
103
- // buffer.b == left-side superscript
104
- // buffer.p == left-side subscript
105
- // buffer.q == right-side subscript
106
- // buffer.d == right-side superscript
107
- //
108
- // buffer.r == arrow
109
- // buffer.rdt == arrow, script above, type
110
- // buffer.rd == arrow, script above, content
111
- // buffer.rqt == arrow, script below, type
112
- // buffer.rq == arrow, script below, content
113
- //
114
- // buffer.text_
115
- // buffer.rm
116
- // etc.
117
- //
118
- // buffer.parenthesisLevel == int, starting at 0
119
- // buffer.sb == bool, space before
120
- // buffer.beginsWithBond == bool
121
- //
122
- // These letters are also used as state names.
123
- //
124
- // Other states:
125
- // 0 == begin of main part (arrow/operator unlikely)
126
- // 1 == next entity
127
- // 2 == next entity (arrow/operator unlikely)
128
- // 3 == next atom
129
- // c == macro
130
- //
131
- /** @type {Buffer} */
132
- var buffer = {};
133
- buffer['parenthesisLevel'] = 0;
134
-
135
- input = input.replace(/\n/g, " ");
136
- input = input.replace(/[\u2212\u2013\u2014\u2010]/g, "-");
137
- input = input.replace(/[\u2026]/g, "...");
138
-
139
- //
140
- // Looks through mhchemParser.transitions, to execute a matching action
141
- // (recursive)
142
- //
143
- var lastInput;
144
- var watchdog = 10;
145
- /** @type {ParserOutput[]} */
146
- var output = [];
147
- while (true) {
148
- if (lastInput !== input) {
149
- watchdog = 10;
150
- lastInput = input;
151
- } else {
152
- watchdog--;
153
- }
154
- //
155
- // Find actions in transition table
156
- //
157
- var machine = mhchemParser.stateMachines[stateMachine];
158
- var t = machine.transitions[state] || machine.transitions['*'];
159
- iterateTransitions:
160
- for (var i=0; i<t.length; i++) {
161
- var matches = mhchemParser.patterns.match_(t[i].pattern, input);
162
- if (matches) {
163
- //
164
- // Execute actions
165
- //
166
- var task = t[i].task;
167
- for (var iA=0; iA<task.action_.length; iA++) {
168
- var o;
169
- //
170
- // Find and execute action
171
- //
172
- if (machine.actions[task.action_[iA].type_]) {
173
- o = machine.actions[task.action_[iA].type_](buffer, matches.match_, task.action_[iA].option);
174
- } else if (mhchemParser.actions[task.action_[iA].type_]) {
175
- o = mhchemParser.actions[task.action_[iA].type_](buffer, matches.match_, task.action_[iA].option);
176
- } else {
177
- throw ["MhchemBugA", "mhchem bug A. Please report. (" + task.action_[iA].type_ + ")"]; // Trying to use non-existing action
178
- }
179
- //
180
- // Add output
181
- //
182
- mhchemParser.concatArray(output, o);
183
- }
184
- //
185
- // Set next state,
186
- // Shorten input,
187
- // Continue with next character
188
- // (= apply only one transition per position)
189
- //
190
- state = task.nextState || state;
191
- if (input.length > 0) {
192
- if (!task.revisit) {
193
- input = matches.remainder;
194
- }
195
- if (!task.toContinue) {
196
- break iterateTransitions;
197
- }
198
- } else {
199
- return output;
200
- }
201
- }
202
- }
203
- //
204
- // Prevent infinite loop
205
- //
206
- if (watchdog <= 0) {
207
- throw ["MhchemBugU", "mhchem bug U. Please report."]; // Unexpected character
208
- }
209
- }
210
- },
211
- concatArray: function (a, b) {
212
- if (b) {
213
- if (Array.isArray(b)) {
214
- for (var iB=0; iB<b.length; iB++) {
215
- a.push(b[iB]);
216
- }
217
- } else {
218
- a.push(b);
219
- }
220
- }
221
- },
222
-
223
- patterns: {
224
- //
225
- // Matching patterns
226
- // either regexps or function that return null or {match_:"a", remainder:"bc"}
227
- //
228
- patterns: {
229
- // property names must not look like integers ("2") for correct property traversal order, later on
230
- 'empty': /^$/,
231
- 'else': /^./,
232
- 'else2': /^./,
233
- 'space': /^\s/,
234
- 'space A': /^\s(?=[A-Z\\$])/,
235
- 'space$': /^\s$/,
236
- 'a-z': /^[a-z]/,
237
- 'x': /^x/,
238
- 'x$': /^x$/,
239
- 'i$': /^i$/,
240
- 'letters': /^(?:[a-zA-Z\u03B1-\u03C9\u0391-\u03A9?@]|(?:\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega|Gamma|Delta|Theta|Lambda|Xi|Pi|Sigma|Upsilon|Phi|Psi|Omega)(?:\s+|\{\}|(?![a-zA-Z]))))+/,
241
- '\\greek': /^\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega|Gamma|Delta|Theta|Lambda|Xi|Pi|Sigma|Upsilon|Phi|Psi|Omega)(?:\s+|\{\}|(?![a-zA-Z]))/,
242
- 'one lowercase latin letter $': /^(?:([a-z])(?:$|[^a-zA-Z]))$/,
243
- '$one lowercase latin letter$ $': /^\$(?:([a-z])(?:$|[^a-zA-Z]))\$$/,
244
- 'one lowercase greek letter $': /^(?:\$?[\u03B1-\u03C9]\$?|\$?\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega)\s*\$?)(?:\s+|\{\}|(?![a-zA-Z]))$/,
245
- 'digits': /^[0-9]+/,
246
- '-9.,9': /^[+\-]?(?:[0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))/,
247
- '-9.,9 no missing 0': /^[+\-]?[0-9]+(?:[.,][0-9]+)?/,
248
- '(-)(9.,9)(e)(99)': function (input) {
249
- var m = input.match(/^(\+\-|\+\/\-|\+|\-|\\pm\s?)?([0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))?(\((?:[0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))\))?(?:([eE]|\s*(\*|x|\\times|\u00D7)\s*10\^)([+\-]?[0-9]+|\{[+\-]?[0-9]+\}))?/);
250
- if (m && m[0]) {
251
- return { match_: m.splice(1), remainder: input.substr(m[0].length) };
252
- }
253
- return null;
254
- },
255
- '(-)(9)^(-9)': function (input) {
256
- var m = input.match(/^(\+\-|\+\/\-|\+|\-|\\pm\s?)?([0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+)?)\^([+\-]?[0-9]+|\{[+\-]?[0-9]+\})/);
257
- if (m && m[0]) {
258
- return { match_: m.splice(1), remainder: input.substr(m[0].length) };
259
- }
260
- return null;
261
- },
262
- 'state of aggregation $': function (input) { // ... or crystal system
263
- var a = mhchemParser.patterns.findObserveGroups(input, "", /^\([a-z]{1,3}(?=[\),])/, ")", ""); // (aq), (aq,$\infty$), (aq, sat)
264
- if (a && a.remainder.match(/^($|[\s,;\)\]\}])/)) { return a; } // AND end of 'phrase'
265
- var m = input.match(/^(?:\((?:\\ca\s?)?\$[amothc]\$\))/); // OR crystal system ($o$) (\ca$c$)
266
- if (m) {
267
- return { match_: m[0], remainder: input.substr(m[0].length) };
268
- }
269
- return null;
270
- },
271
- '_{(state of aggregation)}$': /^_\{(\([a-z]{1,3}\))\}/,
272
- '{[(': /^(?:\\\{|\[|\()/,
273
- ')]}': /^(?:\)|\]|\\\})/,
274
- ', ': /^[,;]\s*/,
275
- ',': /^[,;]/,
276
- '.': /^[.]/,
277
- '. ': /^([.\u22C5\u00B7\u2022])\s*/,
278
- '...': /^\.\.\.(?=$|[^.])/,
279
- '* ': /^([*])\s*/,
280
- '^{(...)}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "^{", "", "", "}"); },
281
- '^($...$)': function (input) { return mhchemParser.patterns.findObserveGroups(input, "^", "$", "$", ""); },
282
- '^a': /^\^([0-9]+|[^\\_])/,
283
- '^\\x{}{}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "^", /^\\[a-zA-Z]+\{/, "}", "", "", "{", "}", "", true); },
284
- '^\\x{}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "^", /^\\[a-zA-Z]+\{/, "}", ""); },
285
- '^\\x': /^\^(\\[a-zA-Z]+)\s*/,
286
- '^(-1)': /^\^(-?\d+)/,
287
- '\'': /^'/,
288
- '_{(...)}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "_{", "", "", "}"); },
289
- '_($...$)': function (input) { return mhchemParser.patterns.findObserveGroups(input, "_", "$", "$", ""); },
290
- '_9': /^_([+\-]?[0-9]+|[^\\])/,
291
- '_\\x{}{}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "_", /^\\[a-zA-Z]+\{/, "}", "", "", "{", "}", "", true); },
292
- '_\\x{}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "_", /^\\[a-zA-Z]+\{/, "}", ""); },
293
- '_\\x': /^_(\\[a-zA-Z]+)\s*/,
294
- '^_': /^(?:\^(?=_)|\_(?=\^)|[\^_]$)/,
295
- '{}': /^\{\}/,
296
- '{...}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "", "{", "}", ""); },
297
- '{(...)}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "{", "", "", "}"); },
298
- '$...$': function (input) { return mhchemParser.patterns.findObserveGroups(input, "", "$", "$", ""); },
299
- '${(...)}$': function (input) { return mhchemParser.patterns.findObserveGroups(input, "${", "", "", "}$"); },
300
- '$(...)$': function (input) { return mhchemParser.patterns.findObserveGroups(input, "$", "", "", "$"); },
301
- '=<>': /^[=<>]/,
302
- '#': /^[#\u2261]/,
303
- '+': /^\+/,
304
- '-$': /^-(?=[\s_},;\]/]|$|\([a-z]+\))/, // -space -, -; -] -/ -$ -state-of-aggregation
305
- '-9': /^-(?=[0-9])/,
306
- '- orbital overlap': /^-(?=(?:[spd]|sp)(?:$|[\s,;\)\]\}]))/,
307
- '-': /^-/,
308
- 'pm-operator': /^(?:\\pm|\$\\pm\$|\+-|\+\/-)/,
309
- 'operator': /^(?:\+|(?:[\-=<>]|<<|>>|\\approx|\$\\approx\$)(?=\s|$|-?[0-9]))/,
310
- 'arrowUpDown': /^(?:v|\(v\)|\^|\(\^\))(?=$|[\s,;\)\]\}])/,
311
- '\\bond{(...)}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "\\bond{", "", "", "}"); },
312
- '->': /^(?:<->|<-->|->|<-|<=>>|<<=>|<=>|[\u2192\u27F6\u21CC])/,
313
- 'CMT': /^[CMT](?=\[)/,
314
- '[(...)]': function (input) { return mhchemParser.patterns.findObserveGroups(input, "[", "", "", "]"); },
315
- '1st-level escape': /^(&|\\\\|\\hline)\s*/,
316
- '\\,': /^(?:\\[,\ ;:])/, // \\x - but output no space before
317
- '\\x{}{}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "", /^\\[a-zA-Z]+\{/, "}", "", "", "{", "}", "", true); },
318
- '\\x{}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "", /^\\[a-zA-Z]+\{/, "}", ""); },
319
- '\\ca': /^\\ca(?:\s+|(?![a-zA-Z]))/,
320
- '\\x': /^(?:\\[a-zA-Z]+\s*|\\[_&{}%])/,
321
- 'orbital': /^(?:[0-9]{1,2}[spdfgh]|[0-9]{0,2}sp)(?=$|[^a-zA-Z])/, // only those with numbers in front, because the others will be formatted correctly anyway
322
- 'others': /^[\/~|]/,
323
- '\\frac{(...)}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "\\frac{", "", "", "}", "{", "", "", "}"); },
324
- '\\overset{(...)}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "\\overset{", "", "", "}", "{", "", "", "}"); },
325
- '\\underset{(...)}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "\\underset{", "", "", "}", "{", "", "", "}"); },
326
- '\\underbrace{(...)}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "\\underbrace{", "", "", "}_", "{", "", "", "}"); },
327
- '\\color{(...)}0': function (input) { return mhchemParser.patterns.findObserveGroups(input, "\\color{", "", "", "}"); },
328
- '\\color{(...)}{(...)}1': function (input) { return mhchemParser.patterns.findObserveGroups(input, "\\color{", "", "", "}", "{", "", "", "}"); },
329
- '\\color(...){(...)}2': function (input) { return mhchemParser.patterns.findObserveGroups(input, "\\color", "\\", "", /^(?=\{)/, "{", "", "", "}"); },
330
- '\\ce{(...)}': function (input) { return mhchemParser.patterns.findObserveGroups(input, "\\ce{", "", "", "}"); },
331
- 'oxidation$': /^(?:[+-][IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,
332
- 'd-oxidation$': /^(?:[+-]?\s?[IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/, // 0 could be oxidation or charge
333
- 'roman numeral': /^[IVX]+/,
334
- '1/2$': /^[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+(?:\$[a-z]\$|[a-z])?$/,
335
- 'amount': function (input) {
336
- var match;
337
- // e.g. 2, 0.5, 1/2, -2, n/2, +; $a$ could be added later in parsing
338
- match = input.match(/^(?:(?:(?:\([+\-]?[0-9]+\/[0-9]+\)|[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+|[+\-]?[0-9]+[.,][0-9]+|[+\-]?\.[0-9]+|[+\-]?[0-9]+)(?:[a-z](?=\s*[A-Z]))?)|[+\-]?[a-z](?=\s*[A-Z])|\+(?!\s))/);
339
- if (match) {
340
- return { match_: match[0], remainder: input.substr(match[0].length) };
341
- }
342
- var a = mhchemParser.patterns.findObserveGroups(input, "", "$", "$", "");
343
- if (a) { // e.g. $2n-1$, $-$
344
- match = a.match_.match(/^\$(?:\(?[+\-]?(?:[0-9]*[a-z]?[+\-])?[0-9]*[a-z](?:[+\-][0-9]*[a-z]?)?\)?|\+|-)\$$/);
345
- if (match) {
346
- return { match_: match[0], remainder: input.substr(match[0].length) };
347
- }
348
- }
349
- return null;
350
- },
351
- 'amount2': function (input) { return this['amount'](input); },
352
- '(KV letters),': /^(?:[A-Z][a-z]{0,2}|i)(?=,)/,
353
- 'formula$': function (input) {
354
- if (input.match(/^\([a-z]+\)$/)) { return null; } // state of aggregation = no formula
355
- var match = input.match(/^(?:[a-z]|(?:[0-9\ \+\-\,\.\(\)]+[a-z])+[0-9\ \+\-\,\.\(\)]*|(?:[a-z][0-9\ \+\-\,\.\(\)]+)+[a-z]?)$/);
356
- if (match) {
357
- return { match_: match[0], remainder: input.substr(match[0].length) };
358
- }
359
- return null;
360
- },
361
- 'uprightEntities': /^(?:pH|pOH|pC|pK|iPr|iBu)(?=$|[^a-zA-Z])/,
362
- '/': /^\s*(\/)\s*/,
363
- '//': /^\s*(\/\/)\s*/,
364
- '*': /^\s*[*.]\s*/
365
- },
366
- findObserveGroups: function (input, begExcl, begIncl, endIncl, endExcl, beg2Excl, beg2Incl, end2Incl, end2Excl, combine) {
367
- /** @type {{(input: string, pattern: string | RegExp): string | string[] | null;}} */
368
- var _match = function (input, pattern) {
369
- if (typeof pattern === "string") {
370
- if (input.indexOf(pattern) !== 0) { return null; }
371
- return pattern;
372
- } else {
373
- var match = input.match(pattern);
374
- if (!match) { return null; }
375
- return match[0];
376
- }
377
- };
378
- /** @type {{(input: string, i: number, endChars: string | RegExp): {endMatchBegin: number, endMatchEnd: number} | null;}} */
379
- var _findObserveGroups = function (input, i, endChars) {
380
- var braces = 0;
381
- while (i < input.length) {
382
- var a = input.charAt(i);
383
- var match = _match(input.substr(i), endChars);
384
- if (match !== null && braces === 0) {
385
- return { endMatchBegin: i, endMatchEnd: i + match.length };
386
- } else if (a === "{") {
387
- braces++;
388
- } else if (a === "}") {
389
- if (braces === 0) {
390
- throw ["ExtraCloseMissingOpen", "Extra close brace or missing open brace"];
391
- } else {
392
- braces--;
393
- }
394
- }
395
- i++;
396
- }
397
- if (braces > 0) {
398
- return null;
399
- }
400
- return null;
401
- };
402
- var match = _match(input, begExcl);
403
- if (match === null) { return null; }
404
- input = input.substr(match.length);
405
- match = _match(input, begIncl);
406
- if (match === null) { return null; }
407
- var e = _findObserveGroups(input, match.length, endIncl || endExcl);
408
- if (e === null) { return null; }
409
- var match1 = input.substring(0, (endIncl ? e.endMatchEnd : e.endMatchBegin));
410
- if (!(beg2Excl || beg2Incl)) {
411
- return {
412
- match_: match1,
413
- remainder: input.substr(e.endMatchEnd)
414
- };
415
- } else {
416
- var group2 = this.findObserveGroups(input.substr(e.endMatchEnd), beg2Excl, beg2Incl, end2Incl, end2Excl);
417
- if (group2 === null) { return null; }
418
- /** @type {string[]} */
419
- var matchRet = [match1, group2.match_];
420
- return {
421
- match_: (combine ? matchRet.join("") : matchRet),
422
- remainder: group2.remainder
423
- };
424
- }
425
- },
426
-
427
- //
428
- // Matching function
429
- // e.g. match("a", input) will look for the regexp called "a" and see if it matches
430
- // returns null or {match_:"a", remainder:"bc"}
431
- //
432
- match_: function (m, input) {
433
- var pattern = mhchemParser.patterns.patterns[m];
434
- if (pattern === undefined) {
435
- throw ["MhchemBugP", "mhchem bug P. Please report. (" + m + ")"]; // Trying to use non-existing pattern
436
- } else if (typeof pattern === "function") {
437
- return mhchemParser.patterns.patterns[m](input); // cannot use cached var pattern here, because some pattern functions need this===mhchemParser
438
- } else { // RegExp
439
- var match = input.match(pattern);
440
- if (match) {
441
- var mm;
442
- if (match[2]) {
443
- mm = [ match[1], match[2] ];
444
- } else if (match[1]) {
445
- mm = match[1];
446
- } else {
447
- mm = match[0];
448
- }
449
- return { match_: mm, remainder: input.substr(match[0].length) };
450
- }
451
- return null;
452
- }
453
- }
454
- },
455
-
456
- //
457
- // Generic state machine actions
458
- //
459
- actions: {
460
- 'a=': function (buffer, m) { buffer.a = (buffer.a || "") + m; },
461
- 'b=': function (buffer, m) { buffer.b = (buffer.b || "") + m; },
462
- 'p=': function (buffer, m) { buffer.p = (buffer.p || "") + m; },
463
- 'o=': function (buffer, m) { buffer.o = (buffer.o || "") + m; },
464
- 'q=': function (buffer, m) { buffer.q = (buffer.q || "") + m; },
465
- 'd=': function (buffer, m) { buffer.d = (buffer.d || "") + m; },
466
- 'rm=': function (buffer, m) { buffer.rm = (buffer.rm || "") + m; },
467
- 'text=': function (buffer, m) { buffer.text_ = (buffer.text_ || "") + m; },
468
- 'insert': function (buffer, m, a) { return { type_: a }; },
469
- 'insert+p1': function (buffer, m, a) { return { type_: a, p1: m }; },
470
- 'insert+p1+p2': function (buffer, m, a) { return { type_: a, p1: m[0], p2: m[1] }; },
471
- 'copy': function (buffer, m) { return m; },
472
- 'rm': function (buffer, m) { return { type_: 'rm', p1: m || ""}; },
473
- 'text': function (buffer, m) { return mhchemParser.go(m, 'text'); },
474
- '{text}': function (buffer, m) {
475
- var ret = [ "{" ];
476
- mhchemParser.concatArray(ret, mhchemParser.go(m, 'text'));
477
- ret.push("}");
478
- return ret;
479
- },
480
- 'tex-math': function (buffer, m) { return mhchemParser.go(m, 'tex-math'); },
481
- 'tex-math tight': function (buffer, m) { return mhchemParser.go(m, 'tex-math tight'); },
482
- 'bond': function (buffer, m, k) { return { type_: 'bond', kind_: k || m }; },
483
- 'color0-output': function (buffer, m) { return { type_: 'color0', color: m[0] }; },
484
- 'ce': function (buffer, m) { return mhchemParser.go(m); },
485
- '1/2': function (buffer, m) {
486
- /** @type {ParserOutput[]} */
487
- var ret = [];
488
- if (m.match(/^[+\-]/)) {
489
- ret.push(m.substr(0, 1));
490
- m = m.substr(1);
491
- }
492
- var n = m.match(/^([0-9]+|\$[a-z]\$|[a-z])\/([0-9]+)(\$[a-z]\$|[a-z])?$/);
493
- n[1] = n[1].replace(/\$/g, "");
494
- ret.push({ type_: 'frac', p1: n[1], p2: n[2] });
495
- if (n[3]) {
496
- n[3] = n[3].replace(/\$/g, "");
497
- ret.push({ type_: 'tex-math', p1: n[3] });
498
- }
499
- return ret;
500
- },
501
- '9,9': function (buffer, m) { return mhchemParser.go(m, '9,9'); }
502
- },
503
- //
504
- // createTransitions
505
- // convert { 'letter': { 'state': { action_: 'output' } } } to { 'state' => [ { pattern: 'letter', task: { action_: [{type_: 'output'}] } } ] }
506
- // with expansion of 'a|b' to 'a' and 'b' (at 2 places)
507
- //
508
- createTransitions: function (o) {
509
- var pattern, state;
510
- /** @type {string[]} */
511
- var stateArray;
512
- var i;
513
- //
514
- // 1. Collect all states
515
- //
516
- /** @type {Transitions} */
517
- var transitions = {};
518
- for (pattern in o) {
519
- for (state in o[pattern]) {
520
- stateArray = state.split("|");
521
- o[pattern][state].stateArray = stateArray;
522
- for (i=0; i<stateArray.length; i++) {
523
- transitions[stateArray[i]] = [];
524
- }
525
- }
526
- }
527
- //
528
- // 2. Fill states
529
- //
530
- for (pattern in o) {
531
- for (state in o[pattern]) {
532
- stateArray = o[pattern][state].stateArray || [];
533
- for (i=0; i<stateArray.length; i++) {
534
- //
535
- // 2a. Normalize actions into array: 'text=' ==> [{type_:'text='}]
536
- // (Note to myself: Resolving the function here would be problematic. It would need .bind (for *this*) and currying (for *option*).)
537
- //
538
- /** @type {any} */
539
- var p = o[pattern][state];
540
- if (p.action_) {
541
- p.action_ = [].concat(p.action_);
542
- for (var k=0; k<p.action_.length; k++) {
543
- if (typeof p.action_[k] === "string") {
544
- p.action_[k] = { type_: p.action_[k] };
545
- }
546
- }
547
- } else {
548
- p.action_ = [];
549
- }
550
- //
551
- // 2.b Multi-insert
552
- //
553
- var patternArray = pattern.split("|");
554
- for (var j=0; j<patternArray.length; j++) {
555
- if (stateArray[i] === '*') { // insert into all
556
- for (var t in transitions) {
557
- transitions[t].push({ pattern: patternArray[j], task: p });
558
- }
559
- } else {
560
- transitions[stateArray[i]].push({ pattern: patternArray[j], task: p });
561
- }
562
- }
563
- }
564
- }
565
- }
566
- return transitions;
567
- },
568
- stateMachines: {}
569
- };
570
-
571
- //
572
- // Definition of state machines
573
- //
574
- mhchemParser.stateMachines = {
575
- //
576
- // \ce state machines
577
- //
578
- //#region ce
579
- 'ce': { // main parser
580
- transitions: mhchemParser.createTransitions({
581
- 'empty': {
582
- '*': { action_: 'output' } },
583
- 'else': {
584
- '0|1|2': { action_: 'beginsWithBond=false', revisit: true, toContinue: true } },
585
- 'oxidation$': {
586
- '0': { action_: 'oxidation-output' } },
587
- 'CMT': {
588
- 'r': { action_: 'rdt=', nextState: 'rt' },
589
- 'rd': { action_: 'rqt=', nextState: 'rdt' } },
590
- 'arrowUpDown': {
591
- '0|1|2|as': { action_: [ 'sb=false', 'output', 'operator' ], nextState: '1' } },
592
- 'uprightEntities': {
593
- '0|1|2': { action_: [ 'o=', 'output' ], nextState: '1' } },
594
- 'orbital': {
595
- '0|1|2|3': { action_: 'o=', nextState: 'o' } },
596
- '->': {
597
- '0|1|2|3': { action_: 'r=', nextState: 'r' },
598
- 'a|as': { action_: [ 'output', 'r=' ], nextState: 'r' },
599
- '*': { action_: [ 'output', 'r=' ], nextState: 'r' } },
600
- '+': {
601
- 'o': { action_: 'd= kv', nextState: 'd' },
602
- 'd|D': { action_: 'd=', nextState: 'd' },
603
- 'q': { action_: 'd=', nextState: 'qd' },
604
- 'qd|qD': { action_: 'd=', nextState: 'qd' },
605
- 'dq': { action_: [ 'output', 'd=' ], nextState: 'd' },
606
- '3': { action_: [ 'sb=false', 'output', 'operator' ], nextState: '0' } },
607
- 'amount': {
608
- '0|2': { action_: 'a=', nextState: 'a' } },
609
- 'pm-operator': {
610
- '0|1|2|a|as': { action_: [ 'sb=false', 'output', { type_: 'operator', option: '\\pm' } ], nextState: '0' } },
611
- 'operator': {
612
- '0|1|2|a|as': { action_: [ 'sb=false', 'output', 'operator' ], nextState: '0' } },
613
- '-$': {
614
- 'o|q': { action_: [ 'charge or bond', 'output' ], nextState: 'qd' },
615
- 'd': { action_: 'd=', nextState: 'd' },
616
- 'D': { action_: [ 'output', { type_: 'bond', option: "-" } ], nextState: '3' },
617
- 'q': { action_: 'd=', nextState: 'qd' },
618
- 'qd': { action_: 'd=', nextState: 'qd' },
619
- 'qD|dq': { action_: [ 'output', { type_: 'bond', option: "-" } ], nextState: '3' } },
620
- '-9': {
621
- '3|o': { action_: [ 'output', { type_: 'insert', option: 'hyphen' } ], nextState: '3' } },
622
- '- orbital overlap': {
623
- 'o': { action_: [ 'output', { type_: 'insert', option: 'hyphen' } ], nextState: '2' },
624
- 'd': { action_: [ 'output', { type_: 'insert', option: 'hyphen' } ], nextState: '2' } },
625
- '-': {
626
- '0|1|2': { action_: [ { type_: 'output', option: 1 }, 'beginsWithBond=true', { type_: 'bond', option: "-" } ], nextState: '3' },
627
- '3': { action_: { type_: 'bond', option: "-" } },
628
- 'a': { action_: [ 'output', { type_: 'insert', option: 'hyphen' } ], nextState: '2' },
629
- 'as': { action_: [ { type_: 'output', option: 2 }, { type_: 'bond', option: "-" } ], nextState: '3' },
630
- 'b': { action_: 'b=' },
631
- 'o': { action_: { type_: '- after o/d', option: false }, nextState: '2' },
632
- 'q': { action_: { type_: '- after o/d', option: false }, nextState: '2' },
633
- 'd|qd|dq': { action_: { type_: '- after o/d', option: true }, nextState: '2' },
634
- 'D|qD|p': { action_: [ 'output', { type_: 'bond', option: "-" } ], nextState: '3' } },
635
- 'amount2': {
636
- '1|3': { action_: 'a=', nextState: 'a' } },
637
- 'letters': {
638
- '0|1|2|3|a|as|b|p|bp|o': { action_: 'o=', nextState: 'o' },
639
- 'q|dq': { action_: ['output', 'o='], nextState: 'o' },
640
- 'd|D|qd|qD': { action_: 'o after d', nextState: 'o' } },
641
- 'digits': {
642
- 'o': { action_: 'q=', nextState: 'q' },
643
- 'd|D': { action_: 'q=', nextState: 'dq' },
644
- 'q': { action_: [ 'output', 'o=' ], nextState: 'o' },
645
- 'a': { action_: 'o=', nextState: 'o' } },
646
- 'space A': {
647
- 'b|p|bp': {} },
648
- 'space': {
649
- 'a': { nextState: 'as' },
650
- '0': { action_: 'sb=false' },
651
- '1|2': { action_: 'sb=true' },
652
- 'r|rt|rd|rdt|rdq': { action_: 'output', nextState: '0' },
653
- '*': { action_: [ 'output', 'sb=true' ], nextState: '1'} },
654
- '1st-level escape': {
655
- '1|2': { action_: [ 'output', { type_: 'insert+p1', option: '1st-level escape' } ] },
656
- '*': { action_: [ 'output', { type_: 'insert+p1', option: '1st-level escape' } ], nextState: '0' } },
657
- '[(...)]': {
658
- 'r|rt': { action_: 'rd=', nextState: 'rd' },
659
- 'rd|rdt': { action_: 'rq=', nextState: 'rdq' } },
660
- '...': {
661
- 'o|d|D|dq|qd|qD': { action_: [ 'output', { type_: 'bond', option: "..." } ], nextState: '3' },
662
- '*': { action_: [ { type_: 'output', option: 1 }, { type_: 'insert', option: 'ellipsis' } ], nextState: '1' } },
663
- '. |* ': {
664
- '*': { action_: [ 'output', { type_: 'insert', option: 'addition compound' } ], nextState: '1' } },
665
- 'state of aggregation $': {
666
- '*': { action_: [ 'output', 'state of aggregation' ], nextState: '1' } },
667
- '{[(': {
668
- 'a|as|o': { action_: [ 'o=', 'output', 'parenthesisLevel++' ], nextState: '2' },
669
- '0|1|2|3': { action_: [ 'o=', 'output', 'parenthesisLevel++' ], nextState: '2' },
670
- '*': { action_: [ 'output', 'o=', 'output', 'parenthesisLevel++' ], nextState: '2' } },
671
- ')]}': {
672
- '0|1|2|3|b|p|bp|o': { action_: [ 'o=', 'parenthesisLevel--' ], nextState: 'o' },
673
- 'a|as|d|D|q|qd|qD|dq': { action_: [ 'output', 'o=', 'parenthesisLevel--' ], nextState: 'o' } },
674
- ', ': {
675
- '*': { action_: [ 'output', 'comma' ], nextState: '0' } },
676
- '^_': { // ^ and _ without a sensible argument
677
- '*': { } },
678
- '^{(...)}|^($...$)': {
679
- '0|1|2|as': { action_: 'b=', nextState: 'b' },
680
- 'p': { action_: 'b=', nextState: 'bp' },
681
- '3|o': { action_: 'd= kv', nextState: 'D' },
682
- 'q': { action_: 'd=', nextState: 'qD' },
683
- 'd|D|qd|qD|dq': { action_: [ 'output', 'd=' ], nextState: 'D' } },
684
- '^a|^\\x{}{}|^\\x{}|^\\x|\'': {
685
- '0|1|2|as': { action_: 'b=', nextState: 'b' },
686
- 'p': { action_: 'b=', nextState: 'bp' },
687
- '3|o': { action_: 'd= kv', nextState: 'd' },
688
- 'q': { action_: 'd=', nextState: 'qd' },
689
- 'd|qd|D|qD': { action_: 'd=' },
690
- 'dq': { action_: [ 'output', 'd=' ], nextState: 'd' } },
691
- '_{(state of aggregation)}$': {
692
- 'd|D|q|qd|qD|dq': { action_: [ 'output', 'q=' ], nextState: 'q' } },
693
- '_{(...)}|_($...$)|_9|_\\x{}{}|_\\x{}|_\\x': {
694
- '0|1|2|as': { action_: 'p=', nextState: 'p' },
695
- 'b': { action_: 'p=', nextState: 'bp' },
696
- '3|o': { action_: 'q=', nextState: 'q' },
697
- 'd|D': { action_: 'q=', nextState: 'dq' },
698
- 'q|qd|qD|dq': { action_: [ 'output', 'q=' ], nextState: 'q' } },
699
- '=<>': {
700
- '0|1|2|3|a|as|o|q|d|D|qd|qD|dq': { action_: [ { type_: 'output', option: 2 }, 'bond' ], nextState: '3' } },
701
- '#': {
702
- '0|1|2|3|a|as|o': { action_: [ { type_: 'output', option: 2 }, { type_: 'bond', option: "#" } ], nextState: '3' } },
703
- '{}': {
704
- '*': { action_: { type_: 'output', option: 1 }, nextState: '1' } },
705
- '{...}': {
706
- '0|1|2|3|a|as|b|p|bp': { action_: 'o=', nextState: 'o' },
707
- 'o|d|D|q|qd|qD|dq': { action_: [ 'output', 'o=' ], nextState: 'o' } },
708
- '$...$': {
709
- 'a': { action_: 'a=' }, // 2$n$
710
- '0|1|2|3|as|b|p|bp|o': { action_: 'o=', nextState: 'o' }, // not 'amount'
711
- 'as|o': { action_: 'o=' },
712
- 'q|d|D|qd|qD|dq': { action_: [ 'output', 'o=' ], nextState: 'o' } },
713
- '\\bond{(...)}': {
714
- '*': { action_: [ { type_: 'output', option: 2 }, 'bond' ], nextState: "3" } },
715
- '\\frac{(...)}': {
716
- '*': { action_: [ { type_: 'output', option: 1 }, 'frac-output' ], nextState: '3' } },
717
- '\\overset{(...)}': {
718
- '*': { action_: [ { type_: 'output', option: 2 }, 'overset-output' ], nextState: '3' } },
719
- '\\underset{(...)}': {
720
- '*': { action_: [ { type_: 'output', option: 2 }, 'underset-output' ], nextState: '3' } },
721
- '\\underbrace{(...)}': {
722
- '*': { action_: [ { type_: 'output', option: 2 }, 'underbrace-output' ], nextState: '3' } },
723
- '\\color{(...)}{(...)}1|\\color(...){(...)}2': {
724
- '*': { action_: [ { type_: 'output', option: 2 }, 'color-output' ], nextState: '3' } },
725
- '\\color{(...)}0': {
726
- '*': { action_: [ { type_: 'output', option: 2 }, 'color0-output' ] } },
727
- '\\ce{(...)}': {
728
- '*': { action_: [ { type_: 'output', option: 2 }, 'ce' ], nextState: '3' } },
729
- '\\,': {
730
- '*': { action_: [ { type_: 'output', option: 1 }, 'copy' ], nextState: '1' } },
731
- '\\x{}{}|\\x{}|\\x': {
732
- '0|1|2|3|a|as|b|p|bp|o|c0': { action_: [ 'o=', 'output' ], nextState: '3' },
733
- '*': { action_: ['output', 'o=', 'output' ], nextState: '3' } },
734
- 'others': {
735
- '*': { action_: [ { type_: 'output', option: 1 }, 'copy' ], nextState: '3' } },
736
- 'else2': {
737
- 'a': { action_: 'a to o', nextState: 'o', revisit: true },
738
- 'as': { action_: [ 'output', 'sb=true' ], nextState: '1', revisit: true },
739
- 'r|rt|rd|rdt|rdq': { action_: [ 'output' ], nextState: '0', revisit: true },
740
- '*': { action_: [ 'output', 'copy' ], nextState: '3' } }
741
- }),
742
- actions: {
743
- 'o after d': function (buffer, m) {
744
- var ret;
745
- if ((buffer.d || "").match(/^[0-9]+$/)) {
746
- var tmp = buffer.d;
747
- buffer.d = undefined;
748
- ret = this['output'](buffer);
749
- buffer.b = tmp;
750
- } else {
751
- ret = this['output'](buffer);
752
- }
753
- mhchemParser.actions['o='](buffer, m);
754
- return ret;
755
- },
756
- 'd= kv': function (buffer, m) {
757
- buffer.d = m;
758
- buffer.dType = 'kv';
759
- },
760
- 'charge or bond': function (buffer, m) {
761
- if (buffer['beginsWithBond']) {
762
- /** @type {ParserOutput[]} */
763
- var ret = [];
764
- mhchemParser.concatArray(ret, this['output'](buffer));
765
- mhchemParser.concatArray(ret, mhchemParser.actions['bond'](buffer, m, "-"));
766
- return ret;
767
- } else {
768
- buffer.d = m;
769
- }
770
- },
771
- '- after o/d': function (buffer, m, isAfterD) {
772
- var c1 = mhchemParser.patterns.match_('orbital', buffer.o || "");
773
- var c2 = mhchemParser.patterns.match_('one lowercase greek letter $', buffer.o || "");
774
- var c3 = mhchemParser.patterns.match_('one lowercase latin letter $', buffer.o || "");
775
- var c4 = mhchemParser.patterns.match_('$one lowercase latin letter$ $', buffer.o || "");
776
- var hyphenFollows = m==="-" && ( c1 && c1.remainder==="" || c2 || c3 || c4 );
777
- if (hyphenFollows && !buffer.a && !buffer.b && !buffer.p && !buffer.d && !buffer.q && !c1 && c3) {
778
- buffer.o = '$' + buffer.o + '$';
779
- }
780
- /** @type {ParserOutput[]} */
781
- var ret = [];
782
- if (hyphenFollows) {
783
- mhchemParser.concatArray(ret, this['output'](buffer));
784
- ret.push({ type_: 'hyphen' });
785
- } else {
786
- c1 = mhchemParser.patterns.match_('digits', buffer.d || "");
787
- if (isAfterD && c1 && c1.remainder==='') {
788
- mhchemParser.concatArray(ret, mhchemParser.actions['d='](buffer, m));
789
- mhchemParser.concatArray(ret, this['output'](buffer));
790
- } else {
791
- mhchemParser.concatArray(ret, this['output'](buffer));
792
- mhchemParser.concatArray(ret, mhchemParser.actions['bond'](buffer, m, "-"));
793
- }
794
- }
795
- return ret;
796
- },
797
- 'a to o': function (buffer) {
798
- buffer.o = buffer.a;
799
- buffer.a = undefined;
800
- },
801
- 'sb=true': function (buffer) { buffer.sb = true; },
802
- 'sb=false': function (buffer) { buffer.sb = false; },
803
- 'beginsWithBond=true': function (buffer) { buffer['beginsWithBond'] = true; },
804
- 'beginsWithBond=false': function (buffer) { buffer['beginsWithBond'] = false; },
805
- 'parenthesisLevel++': function (buffer) { buffer['parenthesisLevel']++; },
806
- 'parenthesisLevel--': function (buffer) { buffer['parenthesisLevel']--; },
807
- 'state of aggregation': function (buffer, m) {
808
- return { type_: 'state of aggregation', p1: mhchemParser.go(m, 'o') };
809
- },
810
- 'comma': function (buffer, m) {
811
- var a = m.replace(/\s*$/, '');
812
- var withSpace = (a !== m);
813
- if (withSpace && buffer['parenthesisLevel'] === 0) {
814
- return { type_: 'comma enumeration L', p1: a };
815
- } else {
816
- return { type_: 'comma enumeration M', p1: a };
817
- }
818
- },
819
- 'output': function (buffer, m, entityFollows) {
820
- // entityFollows:
821
- // undefined = if we have nothing else to output, also ignore the just read space (buffer.sb)
822
- // 1 = an entity follows, never omit the space if there was one just read before (can only apply to state 1)
823
- // 2 = 1 + the entity can have an amount, so output a\, instead of converting it to o (can only apply to states a|as)
824
- /** @type {ParserOutput | ParserOutput[]} */
825
- var ret;
826
- if (!buffer.r) {
827
- ret = [];
828
- if (!buffer.a && !buffer.b && !buffer.p && !buffer.o && !buffer.q && !buffer.d && !entityFollows) {
829
- //ret = [];
830
- } else {
831
- if (buffer.sb) {
832
- ret.push({ type_: 'entitySkip' });
833
- }
834
- if (!buffer.o && !buffer.q && !buffer.d && !buffer.b && !buffer.p && entityFollows!==2) {
835
- buffer.o = buffer.a;
836
- buffer.a = undefined;
837
- } else if (!buffer.o && !buffer.q && !buffer.d && (buffer.b || buffer.p)) {
838
- buffer.o = buffer.a;
839
- buffer.d = buffer.b;
840
- buffer.q = buffer.p;
841
- buffer.a = buffer.b = buffer.p = undefined;
842
- } else {
843
- if (buffer.o && buffer.dType==='kv' && mhchemParser.patterns.match_('d-oxidation$', buffer.d || "")) {
844
- buffer.dType = 'oxidation';
845
- } else if (buffer.o && buffer.dType==='kv' && !buffer.q) {
846
- buffer.dType = undefined;
847
- }
848
- }
849
- ret.push({
850
- type_: 'chemfive',
851
- a: mhchemParser.go(buffer.a, 'a'),
852
- b: mhchemParser.go(buffer.b, 'bd'),
853
- p: mhchemParser.go(buffer.p, 'pq'),
854
- o: mhchemParser.go(buffer.o, 'o'),
855
- q: mhchemParser.go(buffer.q, 'pq'),
856
- d: mhchemParser.go(buffer.d, (buffer.dType === 'oxidation' ? 'oxidation' : 'bd')),
857
- dType: buffer.dType
858
- });
859
- }
860
- } else { // r
861
- /** @type {ParserOutput[]} */
862
- var rd;
863
- if (buffer.rdt === 'M') {
864
- rd = mhchemParser.go(buffer.rd, 'tex-math');
865
- } else if (buffer.rdt === 'T') {
866
- rd = [ { type_: 'text', p1: buffer.rd || "" } ];
867
- } else {
868
- rd = mhchemParser.go(buffer.rd);
869
- }
870
- /** @type {ParserOutput[]} */
871
- var rq;
872
- if (buffer.rqt === 'M') {
873
- rq = mhchemParser.go(buffer.rq, 'tex-math');
874
- } else if (buffer.rqt === 'T') {
875
- rq = [ { type_: 'text', p1: buffer.rq || ""} ];
876
- } else {
877
- rq = mhchemParser.go(buffer.rq);
878
- }
879
- ret = {
880
- type_: 'arrow',
881
- r: buffer.r,
882
- rd: rd,
883
- rq: rq
884
- };
885
- }
886
- for (var p in buffer) {
887
- if (p !== 'parenthesisLevel' && p !== 'beginsWithBond') {
888
- delete buffer[p];
889
- }
890
- }
891
- return ret;
892
- },
893
- 'oxidation-output': function (buffer, m) {
894
- var ret = [ "{" ];
895
- mhchemParser.concatArray(ret, mhchemParser.go(m, 'oxidation'));
896
- ret.push("}");
897
- return ret;
898
- },
899
- 'frac-output': function (buffer, m) {
900
- return { type_: 'frac-ce', p1: mhchemParser.go(m[0]), p2: mhchemParser.go(m[1]) };
901
- },
902
- 'overset-output': function (buffer, m) {
903
- return { type_: 'overset', p1: mhchemParser.go(m[0]), p2: mhchemParser.go(m[1]) };
904
- },
905
- 'underset-output': function (buffer, m) {
906
- return { type_: 'underset', p1: mhchemParser.go(m[0]), p2: mhchemParser.go(m[1]) };
907
- },
908
- 'underbrace-output': function (buffer, m) {
909
- return { type_: 'underbrace', p1: mhchemParser.go(m[0]), p2: mhchemParser.go(m[1]) };
910
- },
911
- 'color-output': function (buffer, m) {
912
- return { type_: 'color', color1: m[0], color2: mhchemParser.go(m[1]) };
913
- },
914
- 'r=': function (buffer, m) { buffer.r = m; },
915
- 'rdt=': function (buffer, m) { buffer.rdt = m; },
916
- 'rd=': function (buffer, m) { buffer.rd = m; },
917
- 'rqt=': function (buffer, m) { buffer.rqt = m; },
918
- 'rq=': function (buffer, m) { buffer.rq = m; },
919
- 'operator': function (buffer, m, p1) { return { type_: 'operator', kind_: (p1 || m) }; }
920
- }
921
- },
922
- 'a': {
923
- transitions: mhchemParser.createTransitions({
924
- 'empty': {
925
- '*': {} },
926
- '1/2$': {
927
- '0': { action_: '1/2' } },
928
- 'else': {
929
- '0': { nextState: '1', revisit: true } },
930
- '$(...)$': {
931
- '*': { action_: 'tex-math tight', nextState: '1' } },
932
- ',': {
933
- '*': { action_: { type_: 'insert', option: 'commaDecimal' } } },
934
- 'else2': {
935
- '*': { action_: 'copy' } }
936
- }),
937
- actions: {}
938
- },
939
- 'o': {
940
- transitions: mhchemParser.createTransitions({
941
- 'empty': {
942
- '*': {} },
943
- '1/2$': {
944
- '0': { action_: '1/2' } },
945
- 'else': {
946
- '0': { nextState: '1', revisit: true } },
947
- 'letters': {
948
- '*': { action_: 'rm' } },
949
- '\\ca': {
950
- '*': { action_: { type_: 'insert', option: 'circa' } } },
951
- '\\x{}{}|\\x{}|\\x': {
952
- '*': { action_: 'copy' } },
953
- '${(...)}$|$(...)$': {
954
- '*': { action_: 'tex-math' } },
955
- '{(...)}': {
956
- '*': { action_: '{text}' } },
957
- 'else2': {
958
- '*': { action_: 'copy' } }
959
- }),
960
- actions: {}
961
- },
962
- 'text': {
963
- transitions: mhchemParser.createTransitions({
964
- 'empty': {
965
- '*': { action_: 'output' } },
966
- '{...}': {
967
- '*': { action_: 'text=' } },
968
- '${(...)}$|$(...)$': {
969
- '*': { action_: 'tex-math' } },
970
- '\\greek': {
971
- '*': { action_: [ 'output', 'rm' ] } },
972
- '\\,|\\x{}{}|\\x{}|\\x': {
973
- '*': { action_: [ 'output', 'copy' ] } },
974
- 'else': {
975
- '*': { action_: 'text=' } }
976
- }),
977
- actions: {
978
- 'output': function (buffer) {
979
- if (buffer.text_) {
980
- /** @type {ParserOutput} */
981
- var ret = { type_: 'text', p1: buffer.text_ };
982
- for (var p in buffer) { delete buffer[p]; }
983
- return ret;
984
- }
985
- }
986
- }
987
- },
988
- 'pq': {
989
- transitions: mhchemParser.createTransitions({
990
- 'empty': {
991
- '*': {} },
992
- 'state of aggregation $': {
993
- '*': { action_: 'state of aggregation' } },
994
- 'i$': {
995
- '0': { nextState: '!f', revisit: true } },
996
- '(KV letters),': {
997
- '0': { action_: 'rm', nextState: '0' } },
998
- 'formula$': {
999
- '0': { nextState: 'f', revisit: true } },
1000
- '1/2$': {
1001
- '0': { action_: '1/2' } },
1002
- 'else': {
1003
- '0': { nextState: '!f', revisit: true } },
1004
- '${(...)}$|$(...)$': {
1005
- '*': { action_: 'tex-math' } },
1006
- '{(...)}': {
1007
- '*': { action_: 'text' } },
1008
- 'a-z': {
1009
- 'f': { action_: 'tex-math' } },
1010
- 'letters': {
1011
- '*': { action_: 'rm' } },
1012
- '-9.,9': {
1013
- '*': { action_: '9,9' } },
1014
- ',': {
1015
- '*': { action_: { type_: 'insert+p1', option: 'comma enumeration S' } } },
1016
- '\\color{(...)}{(...)}1|\\color(...){(...)}2': {
1017
- '*': { action_: 'color-output' } },
1018
- '\\color{(...)}0': {
1019
- '*': { action_: 'color0-output' } },
1020
- '\\ce{(...)}': {
1021
- '*': { action_: 'ce' } },
1022
- '\\,|\\x{}{}|\\x{}|\\x': {
1023
- '*': { action_: 'copy' } },
1024
- 'else2': {
1025
- '*': { action_: 'copy' } }
1026
- }),
1027
- actions: {
1028
- 'state of aggregation': function (buffer, m) {
1029
- return { type_: 'state of aggregation subscript', p1: mhchemParser.go(m, 'o') };
1030
- },
1031
- 'color-output': function (buffer, m) {
1032
- return { type_: 'color', color1: m[0], color2: mhchemParser.go(m[1], 'pq') };
1033
- }
1034
- }
1035
- },
1036
- 'bd': {
1037
- transitions: mhchemParser.createTransitions({
1038
- 'empty': {
1039
- '*': {} },
1040
- 'x$': {
1041
- '0': { nextState: '!f', revisit: true } },
1042
- 'formula$': {
1043
- '0': { nextState: 'f', revisit: true } },
1044
- 'else': {
1045
- '0': { nextState: '!f', revisit: true } },
1046
- '-9.,9 no missing 0': {
1047
- '*': { action_: '9,9' } },
1048
- '.': {
1049
- '*': { action_: { type_: 'insert', option: 'electron dot' } } },
1050
- 'a-z': {
1051
- 'f': { action_: 'tex-math' } },
1052
- 'x': {
1053
- '*': { action_: { type_: 'insert', option: 'KV x' } } },
1054
- 'letters': {
1055
- '*': { action_: 'rm' } },
1056
- '\'': {
1057
- '*': { action_: { type_: 'insert', option: 'prime' } } },
1058
- '${(...)}$|$(...)$': {
1059
- '*': { action_: 'tex-math' } },
1060
- '{(...)}': {
1061
- '*': { action_: 'text' } },
1062
- '\\color{(...)}{(...)}1|\\color(...){(...)}2': {
1063
- '*': { action_: 'color-output' } },
1064
- '\\color{(...)}0': {
1065
- '*': { action_: 'color0-output' } },
1066
- '\\ce{(...)}': {
1067
- '*': { action_: 'ce' } },
1068
- '\\,|\\x{}{}|\\x{}|\\x': {
1069
- '*': { action_: 'copy' } },
1070
- 'else2': {
1071
- '*': { action_: 'copy' } }
1072
- }),
1073
- actions: {
1074
- 'color-output': function (buffer, m) {
1075
- return { type_: 'color', color1: m[0], color2: mhchemParser.go(m[1], 'bd') };
1076
- }
1077
- }
1078
- },
1079
- 'oxidation': {
1080
- transitions: mhchemParser.createTransitions({
1081
- 'empty': {
1082
- '*': {} },
1083
- 'roman numeral': {
1084
- '*': { action_: 'roman-numeral' } },
1085
- '${(...)}$|$(...)$': {
1086
- '*': { action_: 'tex-math' } },
1087
- 'else': {
1088
- '*': { action_: 'copy' } }
1089
- }),
1090
- actions: {
1091
- 'roman-numeral': function (buffer, m) { return { type_: 'roman numeral', p1: m || "" }; }
1092
- }
1093
- },
1094
- 'tex-math': {
1095
- transitions: mhchemParser.createTransitions({
1096
- 'empty': {
1097
- '*': { action_: 'output' } },
1098
- '\\ce{(...)}': {
1099
- '*': { action_: [ 'output', 'ce' ] } },
1100
- '{...}|\\,|\\x{}{}|\\x{}|\\x': {
1101
- '*': { action_: 'o=' } },
1102
- 'else': {
1103
- '*': { action_: 'o=' } }
1104
- }),
1105
- actions: {
1106
- 'output': function (buffer) {
1107
- if (buffer.o) {
1108
- /** @type {ParserOutput} */
1109
- var ret = { type_: 'tex-math', p1: buffer.o };
1110
- for (var p in buffer) { delete buffer[p]; }
1111
- return ret;
1112
- }
1113
- }
1114
- }
1115
- },
1116
- 'tex-math tight': {
1117
- transitions: mhchemParser.createTransitions({
1118
- 'empty': {
1119
- '*': { action_: 'output' } },
1120
- '\\ce{(...)}': {
1121
- '*': { action_: [ 'output', 'ce' ] } },
1122
- '{...}|\\,|\\x{}{}|\\x{}|\\x': {
1123
- '*': { action_: 'o=' } },
1124
- '-|+': {
1125
- '*': { action_: 'tight operator' } },
1126
- 'else': {
1127
- '*': { action_: 'o=' } }
1128
- }),
1129
- actions: {
1130
- 'tight operator': function (buffer, m) { buffer.o = (buffer.o || "") + "{"+m+"}"; },
1131
- 'output': function (buffer) {
1132
- if (buffer.o) {
1133
- /** @type {ParserOutput} */
1134
- var ret = { type_: 'tex-math', p1: buffer.o };
1135
- for (var p in buffer) { delete buffer[p]; }
1136
- return ret;
1137
- }
1138
- }
1139
- }
1140
- },
1141
- '9,9': {
1142
- transitions: mhchemParser.createTransitions({
1143
- 'empty': {
1144
- '*': {} },
1145
- ',': {
1146
- '*': { action_: 'comma' } },
1147
- 'else': {
1148
- '*': { action_: 'copy' } }
1149
- }),
1150
- actions: {
1151
- 'comma': function () { return { type_: 'commaDecimal' }; }
1152
- }
1153
- },
1154
- //#endregion
1155
- //
1156
- // \pu state machines
1157
- //
1158
- //#region pu
1159
- 'pu': {
1160
- transitions: mhchemParser.createTransitions({
1161
- 'empty': {
1162
- '*': { action_: 'output' } },
1163
- 'space$': {
1164
- '*': { action_: [ 'output', 'space' ] } },
1165
- '{[(|)]}': {
1166
- '0|a': { action_: 'copy' } },
1167
- '(-)(9)^(-9)': {
1168
- '0': { action_: 'number^', nextState: 'a' } },
1169
- '(-)(9.,9)(e)(99)': {
1170
- '0': { action_: 'enumber', nextState: 'a' } },
1171
- 'space': {
1172
- '0|a': {} },
1173
- 'pm-operator': {
1174
- '0|a': { action_: { type_: 'operator', option: '\\pm' }, nextState: '0' } },
1175
- 'operator': {
1176
- '0|a': { action_: 'copy', nextState: '0' } },
1177
- '//': {
1178
- 'd': { action_: 'o=', nextState: '/' } },
1179
- '/': {
1180
- 'd': { action_: 'o=', nextState: '/' } },
1181
- '{...}|else': {
1182
- '0|d': { action_: 'd=', nextState: 'd' },
1183
- 'a': { action_: [ 'space', 'd=' ], nextState: 'd' },
1184
- '/|q': { action_: 'q=', nextState: 'q' } }
1185
- }),
1186
- actions: {
1187
- 'enumber': function (buffer, m) {
1188
- /** @type {ParserOutput[]} */
1189
- var ret = [];
1190
- if (m[0] === "+-" || m[0] === "+/-") {
1191
- ret.push("\\pm ");
1192
- } else if (m[0]) {
1193
- ret.push(m[0]);
1194
- }
1195
- if (m[1]) {
1196
- mhchemParser.concatArray(ret, mhchemParser.go(m[1], 'pu-9,9'));
1197
- if (m[2]) {
1198
- if (m[2].match(/[,.]/)) {
1199
- mhchemParser.concatArray(ret, mhchemParser.go(m[2], 'pu-9,9'));
1200
- } else {
1201
- ret.push(m[2]);
1202
- }
1203
- }
1204
- m[3] = m[4] || m[3];
1205
- if (m[3]) {
1206
- m[3] = m[3].trim();
1207
- if (m[3] === "e" || m[3].substr(0, 1) === "*") {
1208
- ret.push({ type_: 'cdot' });
1209
- } else {
1210
- ret.push({ type_: 'times' });
1211
- }
1212
- }
1213
- }
1214
- if (m[3]) {
1215
- ret.push("10^{"+m[5]+"}");
1216
- }
1217
- return ret;
1218
- },
1219
- 'number^': function (buffer, m) {
1220
- /** @type {ParserOutput[]} */
1221
- var ret = [];
1222
- if (m[0] === "+-" || m[0] === "+/-") {
1223
- ret.push("\\pm ");
1224
- } else if (m[0]) {
1225
- ret.push(m[0]);
1226
- }
1227
- mhchemParser.concatArray(ret, mhchemParser.go(m[1], 'pu-9,9'));
1228
- ret.push("^{"+m[2]+"}");
1229
- return ret;
1230
- },
1231
- 'operator': function (buffer, m, p1) { return { type_: 'operator', kind_: (p1 || m) }; },
1232
- 'space': function () { return { type_: 'pu-space-1' }; },
1233
- 'output': function (buffer) {
1234
- /** @type {ParserOutput | ParserOutput[]} */
1235
- var ret;
1236
- var md = mhchemParser.patterns.match_('{(...)}', buffer.d || "");
1237
- if (md && md.remainder === '') { buffer.d = md.match_; }
1238
- var mq = mhchemParser.patterns.match_('{(...)}', buffer.q || "");
1239
- if (mq && mq.remainder === '') { buffer.q = mq.match_; }
1240
- if (buffer.d) {
1241
- buffer.d = buffer.d.replace(/\u00B0C|\^oC|\^{o}C/g, "{}^{\\circ}C");
1242
- buffer.d = buffer.d.replace(/\u00B0F|\^oF|\^{o}F/g, "{}^{\\circ}F");
1243
- }
1244
- if (buffer.q) { // fraction
1245
- buffer.q = buffer.q.replace(/\u00B0C|\^oC|\^{o}C/g, "{}^{\\circ}C");
1246
- buffer.q = buffer.q.replace(/\u00B0F|\^oF|\^{o}F/g, "{}^{\\circ}F");
1247
- var b5 = {
1248
- d: mhchemParser.go(buffer.d, 'pu'),
1249
- q: mhchemParser.go(buffer.q, 'pu')
1250
- };
1251
- if (buffer.o === '//') {
1252
- ret = { type_: 'pu-frac', p1: b5.d, p2: b5.q };
1253
- } else {
1254
- ret = b5.d;
1255
- if (b5.d.length > 1 || b5.q.length > 1) {
1256
- ret.push({ type_: ' / ' });
1257
- } else {
1258
- ret.push({ type_: '/' });
1259
- }
1260
- mhchemParser.concatArray(ret, b5.q);
1261
- }
1262
- } else { // no fraction
1263
- ret = mhchemParser.go(buffer.d, 'pu-2');
1264
- }
1265
- for (var p in buffer) { delete buffer[p]; }
1266
- return ret;
1267
- }
1268
- }
1269
- },
1270
- 'pu-2': {
1271
- transitions: mhchemParser.createTransitions({
1272
- 'empty': {
1273
- '*': { action_: 'output' } },
1274
- '*': {
1275
- '*': { action_: [ 'output', 'cdot' ], nextState: '0' } },
1276
- '\\x': {
1277
- '*': { action_: 'rm=' } },
1278
- 'space': {
1279
- '*': { action_: [ 'output', 'space' ], nextState: '0' } },
1280
- '^{(...)}|^(-1)': {
1281
- '1': { action_: '^(-1)' } },
1282
- '-9.,9': {
1283
- '0': { action_: 'rm=', nextState: '0' },
1284
- '1': { action_: '^(-1)', nextState: '0' } },
1285
- '{...}|else': {
1286
- '*': { action_: 'rm=', nextState: '1' } }
1287
- }),
1288
- actions: {
1289
- 'cdot': function () { return { type_: 'tight cdot' }; },
1290
- '^(-1)': function (buffer, m) { buffer.rm += "^{"+m+"}"; },
1291
- 'space': function () { return { type_: 'pu-space-2' }; },
1292
- 'output': function (buffer) {
1293
- /** @type {ParserOutput | ParserOutput[]} */
1294
- var ret = [];
1295
- if (buffer.rm) {
1296
- var mrm = mhchemParser.patterns.match_('{(...)}', buffer.rm || "");
1297
- if (mrm && mrm.remainder === '') {
1298
- ret = mhchemParser.go(mrm.match_, 'pu');
1299
- } else {
1300
- ret = { type_: 'rm', p1: buffer.rm };
1301
- }
1302
- }
1303
- for (var p in buffer) { delete buffer[p]; }
1304
- return ret;
1305
- }
1306
- }
1307
- },
1308
- 'pu-9,9': {
1309
- transitions: mhchemParser.createTransitions({
1310
- 'empty': {
1311
- '0': { action_: 'output-0' },
1312
- 'o': { action_: 'output-o' } },
1313
- ',': {
1314
- '0': { action_: [ 'output-0', 'comma' ], nextState: 'o' } },
1315
- '.': {
1316
- '0': { action_: [ 'output-0', 'copy' ], nextState: 'o' } },
1317
- 'else': {
1318
- '*': { action_: 'text=' } }
1319
- }),
1320
- actions: {
1321
- 'comma': function () { return { type_: 'commaDecimal' }; },
1322
- 'output-0': function (buffer) {
1323
- /** @type {ParserOutput[]} */
1324
- var ret = [];
1325
- buffer.text_ = buffer.text_ || "";
1326
- if (buffer.text_.length > 4) {
1327
- var a = buffer.text_.length % 3;
1328
- if (a === 0) { a = 3; }
1329
- for (var i=buffer.text_.length-3; i>0; i-=3) {
1330
- ret.push(buffer.text_.substr(i, 3));
1331
- ret.push({ type_: '1000 separator' });
1332
- }
1333
- ret.push(buffer.text_.substr(0, a));
1334
- ret.reverse();
1335
- } else {
1336
- ret.push(buffer.text_);
1337
- }
1338
- for (var p in buffer) { delete buffer[p]; }
1339
- return ret;
1340
- },
1341
- 'output-o': function (buffer) {
1342
- /** @type {ParserOutput[]} */
1343
- var ret = [];
1344
- buffer.text_ = buffer.text_ || "";
1345
- if (buffer.text_.length > 4) {
1346
- var a = buffer.text_.length - 3;
1347
- for (var i=0; i<a; i+=3) {
1348
- ret.push(buffer.text_.substr(i, 3));
1349
- ret.push({ type_: '1000 separator' });
1350
- }
1351
- ret.push(buffer.text_.substr(i));
1352
- } else {
1353
- ret.push(buffer.text_);
1354
- }
1355
- for (var p in buffer) { delete buffer[p]; }
1356
- return ret;
1357
- }
1358
- }
1359
- }
1360
- //#endregion
1361
- };
1362
-
1363
- //
1364
- // texify: Take MhchemParser output and convert it to TeX
1365
- //
1366
- /** @type {Texify} */
1367
- var texify = {
1368
- go: function (input, isInner) { // (recursive, max 4 levels)
1369
- if (!input) { return ""; }
1370
- var res = "";
1371
- var cee = false;
1372
- for (var i=0; i < input.length; i++) {
1373
- var inputi = input[i];
1374
- if (typeof inputi === "string") {
1375
- res += inputi;
1376
- } else {
1377
- res += texify._go2(inputi);
1378
- if (inputi.type_ === '1st-level escape') { cee = true; }
1379
- }
1380
- }
1381
- if (!isInner && !cee && res) {
1382
- res = "{" + res + "}";
1383
- }
1384
- return res;
1385
- },
1386
- _goInner: function (input) {
1387
- if (!input) { return input; }
1388
- return texify.go(input, true);
1389
- },
1390
- _go2: function (buf) {
1391
- /** @type {undefined | string} */
1392
- var res;
1393
- switch (buf.type_) {
1394
- case 'chemfive':
1395
- res = "";
1396
- var b5 = {
1397
- a: texify._goInner(buf.a),
1398
- b: texify._goInner(buf.b),
1399
- p: texify._goInner(buf.p),
1400
- o: texify._goInner(buf.o),
1401
- q: texify._goInner(buf.q),
1402
- d: texify._goInner(buf.d)
1403
- };
1404
- //
1405
- // a
1406
- //
1407
- if (b5.a) {
1408
- if (b5.a.match(/^[+\-]/)) { b5.a = "{"+b5.a+"}"; }
1409
- res += b5.a + "\\,";
1410
- }
1411
- //
1412
- // b and p
1413
- //
1414
- if (b5.b || b5.p) {
1415
- res += "{\\vphantom{X}}";
1416
- res += "^{\\hphantom{"+(b5.b||"")+"}}_{\\hphantom{"+(b5.p||"")+"}}";
1417
- res += "{\\vphantom{X}}";
1418
- res += "^{\\smash[t]{\\vphantom{2}}\\mathllap{"+(b5.b||"")+"}}";
1419
- res += "_{\\vphantom{2}\\mathllap{\\smash[t]{"+(b5.p||"")+"}}}";
1420
- }
1421
- //
1422
- // o
1423
- //
1424
- if (b5.o) {
1425
- if (b5.o.match(/^[+\-]/)) { b5.o = "{"+b5.o+"}"; }
1426
- res += b5.o;
1427
- }
1428
- //
1429
- // q and d
1430
- //
1431
- if (buf.dType === 'kv') {
1432
- if (b5.d || b5.q) {
1433
- res += "{\\vphantom{X}}";
1434
- }
1435
- if (b5.d) {
1436
- res += "^{"+b5.d+"}";
1437
- }
1438
- if (b5.q) {
1439
- res += "_{\\smash[t]{"+b5.q+"}}";
1440
- }
1441
- } else if (buf.dType === 'oxidation') {
1442
- if (b5.d) {
1443
- res += "{\\vphantom{X}}";
1444
- res += "^{"+b5.d+"}";
1445
- }
1446
- if (b5.q) {
1447
- res += "{\\vphantom{X}}";
1448
- res += "_{\\smash[t]{"+b5.q+"}}";
1449
- }
1450
- } else {
1451
- if (b5.q) {
1452
- res += "{\\vphantom{X}}";
1453
- res += "_{\\smash[t]{"+b5.q+"}}";
1454
- }
1455
- if (b5.d) {
1456
- res += "{\\vphantom{X}}";
1457
- res += "^{"+b5.d+"}";
1458
- }
1459
- }
1460
- break;
1461
- case 'rm':
1462
- res = "\\mathrm{"+buf.p1+"}";
1463
- break;
1464
- case 'text':
1465
- if (buf.p1.match(/[\^_]/)) {
1466
- buf.p1 = buf.p1.replace(" ", "~").replace("-", "\\text{-}");
1467
- res = "\\mathrm{"+buf.p1+"}";
1468
- } else {
1469
- res = "\\text{"+buf.p1+"}";
1470
- }
1471
- break;
1472
- case 'roman numeral':
1473
- res = "\\mathrm{"+buf.p1+"}";
1474
- break;
1475
- case 'state of aggregation':
1476
- res = "\\mskip2mu "+texify._goInner(buf.p1);
1477
- break;
1478
- case 'state of aggregation subscript':
1479
- res = "\\mskip1mu "+texify._goInner(buf.p1);
1480
- break;
1481
- case 'bond':
1482
- res = texify._getBond(buf.kind_);
1483
- if (!res) {
1484
- throw ["MhchemErrorBond", "mhchem Error. Unknown bond type (" + buf.kind_ + ")"];
1485
- }
1486
- break;
1487
- case 'frac':
1488
- var c = "\\frac{" + buf.p1 + "}{" + buf.p2 + "}";
1489
- res = "\\mathchoice{\\textstyle"+c+"}{"+c+"}{"+c+"}{"+c+"}";
1490
- break;
1491
- case 'pu-frac':
1492
- var d = "\\frac{" + texify._goInner(buf.p1) + "}{" + texify._goInner(buf.p2) + "}";
1493
- res = "\\mathchoice{\\textstyle"+d+"}{"+d+"}{"+d+"}{"+d+"}";
1494
- break;
1495
- case 'tex-math':
1496
- res = buf.p1 + " ";
1497
- break;
1498
- case 'frac-ce':
1499
- res = "\\frac{" + texify._goInner(buf.p1) + "}{" + texify._goInner(buf.p2) + "}";
1500
- break;
1501
- case 'overset':
1502
- res = "\\overset{" + texify._goInner(buf.p1) + "}{" + texify._goInner(buf.p2) + "}";
1503
- break;
1504
- case 'underset':
1505
- res = "\\underset{" + texify._goInner(buf.p1) + "}{" + texify._goInner(buf.p2) + "}";
1506
- break;
1507
- case 'underbrace':
1508
- res = "\\underbrace{" + texify._goInner(buf.p1) + "}_{" + texify._goInner(buf.p2) + "}";
1509
- break;
1510
- case 'color':
1511
- res = "{\\color{" + buf.color1 + "}{" + texify._goInner(buf.color2) + "}}";
1512
- break;
1513
- case 'color0':
1514
- res = "\\color{" + buf.color + "}";
1515
- break;
1516
- case 'arrow':
1517
- var b6 = {
1518
- rd: texify._goInner(buf.rd),
1519
- rq: texify._goInner(buf.rq)
1520
- };
1521
- var arrow = "\\x" + texify._getArrow(buf.r);
1522
- if (b6.rq) { arrow += "[{" + b6.rq + "}]"; }
1523
- if (b6.rd) {
1524
- arrow += "{" + b6.rd + "}";
1525
- } else {
1526
- arrow += "{}";
1527
- }
1528
- res = arrow;
1529
- break;
1530
- case 'operator':
1531
- res = texify._getOperator(buf.kind_);
1532
- break;
1533
- case '1st-level escape':
1534
- res = buf.p1+" "; // &, \\\\, \\hlin
1535
- break;
1536
- case 'space':
1537
- res = " ";
1538
- break;
1539
- case 'entitySkip':
1540
- res = "~";
1541
- break;
1542
- case 'pu-space-1':
1543
- res = "~";
1544
- break;
1545
- case 'pu-space-2':
1546
- res = "\\mkern3mu ";
1547
- break;
1548
- case '1000 separator':
1549
- res = "\\mkern2mu ";
1550
- break;
1551
- case 'commaDecimal':
1552
- res = "{,}";
1553
- break;
1554
- case 'comma enumeration L':
1555
- res = "{"+buf.p1+"}\\mkern6mu ";
1556
- break;
1557
- case 'comma enumeration M':
1558
- res = "{"+buf.p1+"}\\mkern3mu ";
1559
- break;
1560
- case 'comma enumeration S':
1561
- res = "{"+buf.p1+"}\\mkern1mu ";
1562
- break;
1563
- case 'hyphen':
1564
- res = "\\text{-}";
1565
- break;
1566
- case 'addition compound':
1567
- res = "\\,{\\cdot}\\,";
1568
- break;
1569
- case 'electron dot':
1570
- res = "\\mkern1mu \\bullet\\mkern1mu ";
1571
- break;
1572
- case 'KV x':
1573
- res = "{\\times}";
1574
- break;
1575
- case 'prime':
1576
- res = "\\prime ";
1577
- break;
1578
- case 'cdot':
1579
- res = "\\cdot ";
1580
- break;
1581
- case 'tight cdot':
1582
- res = "\\mkern1mu{\\cdot}\\mkern1mu ";
1583
- break;
1584
- case 'times':
1585
- res = "\\times ";
1586
- break;
1587
- case 'circa':
1588
- res = "{\\sim}";
1589
- break;
1590
- case '^':
1591
- res = "uparrow";
1592
- break;
1593
- case 'v':
1594
- res = "downarrow";
1595
- break;
1596
- case 'ellipsis':
1597
- res = "\\ldots ";
1598
- break;
1599
- case '/':
1600
- res = "/";
1601
- break;
1602
- case ' / ':
1603
- res = "\\,/\\,";
1604
- break;
1605
- default:
1606
- assertNever(buf);
1607
- throw ["MhchemBugT", "mhchem bug T. Please report."]; // Missing texify rule or unknown MhchemParser output
1608
- }
1609
- assertString(res);
1610
- return res;
1611
- },
1612
- _getArrow: function (a) {
1613
- switch (a) {
1614
- case "->": return "rightarrow";
1615
- case "\u2192": return "rightarrow";
1616
- case "\u27F6": return "rightarrow";
1617
- case "<-": return "leftarrow";
1618
- case "<->": return "leftrightarrow";
1619
- case "<-->": return "rightleftarrows";
1620
- case "<=>": return "rightleftharpoons";
1621
- case "\u21CC": return "rightleftharpoons";
1622
- case "<=>>": return "rightequilibrium";
1623
- case "<<=>": return "leftequilibrium";
1624
- default:
1625
- assertNever(a);
1626
- throw ["MhchemBugT", "mhchem bug T. Please report."];
1627
- }
1628
- },
1629
- _getBond: function (a) {
1630
- switch (a) {
1631
- case "-": return "{-}";
1632
- case "1": return "{-}";
1633
- case "=": return "{=}";
1634
- case "2": return "{=}";
1635
- case "#": return "{\\equiv}";
1636
- case "3": return "{\\equiv}";
1637
- case "~": return "{\\tripledash}";
1638
- case "~-": return "{\\mathrlap{\\raisebox{-.1em}{$-$}}\\raisebox{.1em}{$\\tripledash$}}";
1639
- case "~=": return "{\\mathrlap{\\raisebox{-.2em}{$-$}}\\mathrlap{\\raisebox{.2em}{$\\tripledash$}}-}";
1640
- case "~--": return "{\\mathrlap{\\raisebox{-.2em}{$-$}}\\mathrlap{\\raisebox{.2em}{$\\tripledash$}}-}";
1641
- case "-~-": return "{\\mathrlap{\\raisebox{-.2em}{$-$}}\\mathrlap{\\raisebox{.2em}{$-$}}\\tripledash}";
1642
- case "...": return "{{\\cdot}{\\cdot}{\\cdot}}";
1643
- case "....": return "{{\\cdot}{\\cdot}{\\cdot}{\\cdot}}";
1644
- case "->": return "{\\rightarrow}";
1645
- case "<-": return "{\\leftarrow}";
1646
- case "<": return "{<}";
1647
- case ">": return "{>}";
1648
- default:
1649
- assertNever(a);
1650
- throw ["MhchemBugT", "mhchem bug T. Please report."];
1651
- }
1652
- },
1653
- _getOperator: function (a) {
1654
- switch (a) {
1655
- case "+": return " {}+{} ";
1656
- case "-": return " {}-{} ";
1657
- case "=": return " {}={} ";
1658
- case "<": return " {}<{} ";
1659
- case ">": return " {}>{} ";
1660
- case "<<": return " {}\\ll{} ";
1661
- case ">>": return " {}\\gg{} ";
1662
- case "\\pm": return " {}\\pm{} ";
1663
- case "\\approx": return " {}\\approx{} ";
1664
- case "$\\approx$": return " {}\\approx{} ";
1665
- case "v": return " \\downarrow{} ";
1666
- case "(v)": return " \\downarrow{} ";
1667
- case "^": return " \\uparrow{} ";
1668
- case "(^)": return " \\uparrow{} ";
1669
- default:
1670
- assertNever(a);
1671
- throw ["MhchemBugT", "mhchem bug T. Please report."];
1672
- }
1673
- }
1674
- };
1675
-
1676
- //
1677
- // Helpers for code anaylsis
1678
- // Will show type error at calling position
1679
- //
1680
- /** @param {number} a */
1681
- function assertNever(a) {}
1682
- /** @param {string} a */
1683
- function assertString(a) {}
1
+ !function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e(require("katex"));else if("function"==typeof define&&define.amd)define(["katex"],e);else{var n="object"==typeof exports?e(require("katex")):e(t.katex);for(var o in n)("object"==typeof exports?exports:t)[o]=n[o]}}("undefined"!=typeof self?self:this,function(t){return function(t){var e={};function n(o){if(e[o])return e[o].exports;var a=e[o]={i:o,l:!1,exports:{}};return t[o].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=t,n.c=e,n.d=function(t,e,o){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var a in t)n.d(o,a,function(e){return t[e]}.bind(null,a));return o},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=1)}([function(e,n){e.exports=t},function(t,e,n){"use strict";n.r(e);var o=n(0),a=n.n(o);a.a.__defineMacro("\\ce",function(t){return r(t.consumeArgs(1)[0],"ce")}),a.a.__defineMacro("\\pu",function(t){return r(t.consumeArgs(1)[0],"pu")}),a.a.__defineMacro("\\tripledash","{\\vphantom{-}\\raisebox{2.56mu}{$\\mkern2mu\\tiny\\text{-}\\mkern1mu\\text{-}\\mkern1mu\\text{-}\\mkern2mu$}}");var r=function(t,e){for(var n="",o=t[t.length-1].loc.start,a=t.length-1;a>=0;a--)t[a].loc.start>o&&(n+=" ",o=t[a].loc.start),n+=t[a].text,o+=t[a].text.length;return c.go(i.go(n,e))},i={go:function(t,e){if(!t)return[];void 0===e&&(e="ce");var n,o="0",a={};a.parenthesisLevel=0,t=(t=(t=t.replace(/\n/g," ")).replace(/[\u2212\u2013\u2014\u2010]/g,"-")).replace(/[\u2026]/g,"...");for(var r=10,c=[];;){n!==t?(r=10,n=t):r--;var u=i.stateMachines[e],p=u.transitions[o]||u.transitions["*"];t:for(var s=0;s<p.length;s++){var _=i.patterns.match_(p[s].pattern,t);if(_){for(var d=p[s].task,m=0;m<d.action_.length;m++){var l;if(u.actions[d.action_[m].type_])l=u.actions[d.action_[m].type_](a,_.match_,d.action_[m].option);else{if(!i.actions[d.action_[m].type_])throw["MhchemBugA","mhchem bug A. Please report. ("+d.action_[m].type_+")"];l=i.actions[d.action_[m].type_](a,_.match_,d.action_[m].option)}i.concatArray(c,l)}if(o=d.nextState||o,!(t.length>0))return c;if(d.revisit||(t=_.remainder),!d.toContinue)break t}}if(r<=0)throw["MhchemBugU","mhchem bug U. Please report."]}},concatArray:function(t,e){if(e)if(Array.isArray(e))for(var n=0;n<e.length;n++)t.push(e[n]);else t.push(e)},patterns:{patterns:{empty:/^$/,else:/^./,else2:/^./,space:/^\s/,"space A":/^\s(?=[A-Z\\$])/,space$:/^\s$/,"a-z":/^[a-z]/,x:/^x/,x$:/^x$/,i$:/^i$/,letters:/^(?:[a-zA-Z\u03B1-\u03C9\u0391-\u03A9?@]|(?:\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega|Gamma|Delta|Theta|Lambda|Xi|Pi|Sigma|Upsilon|Phi|Psi|Omega)(?:\s+|\{\}|(?![a-zA-Z]))))+/,"\\greek":/^\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega|Gamma|Delta|Theta|Lambda|Xi|Pi|Sigma|Upsilon|Phi|Psi|Omega)(?:\s+|\{\}|(?![a-zA-Z]))/,"one lowercase latin letter $":/^(?:([a-z])(?:$|[^a-zA-Z]))$/,"$one lowercase latin letter$ $":/^\$(?:([a-z])(?:$|[^a-zA-Z]))\$$/,"one lowercase greek letter $":/^(?:\$?[\u03B1-\u03C9]\$?|\$?\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega)\s*\$?)(?:\s+|\{\}|(?![a-zA-Z]))$/,digits:/^[0-9]+/,"-9.,9":/^[+\-]?(?:[0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))/,"-9.,9 no missing 0":/^[+\-]?[0-9]+(?:[.,][0-9]+)?/,"(-)(9.,9)(e)(99)":function(t){var e=t.match(/^(\+\-|\+\/\-|\+|\-|\\pm\s?)?([0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))?(\((?:[0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))\))?(?:([eE]|\s*(\*|x|\\times|\u00D7)\s*10\^)([+\-]?[0-9]+|\{[+\-]?[0-9]+\}))?/);return e&&e[0]?{match_:e.splice(1),remainder:t.substr(e[0].length)}:null},"(-)(9)^(-9)":function(t){var e=t.match(/^(\+\-|\+\/\-|\+|\-|\\pm\s?)?([0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+)?)\^([+\-]?[0-9]+|\{[+\-]?[0-9]+\})/);return e&&e[0]?{match_:e.splice(1),remainder:t.substr(e[0].length)}:null},"state of aggregation $":function(t){var e=i.patterns.findObserveGroups(t,"",/^\([a-z]{1,3}(?=[\),])/,")","");if(e&&e.remainder.match(/^($|[\s,;\)\]\}])/))return e;var n=t.match(/^(?:\((?:\\ca\s?)?\$[amothc]\$\))/);return n?{match_:n[0],remainder:t.substr(n[0].length)}:null},"_{(state of aggregation)}$":/^_\{(\([a-z]{1,3}\))\}/,"{[(":/^(?:\\\{|\[|\()/,")]}":/^(?:\)|\]|\\\})/,", ":/^[,;]\s*/,",":/^[,;]/,".":/^[.]/,". ":/^([.\u22C5\u00B7\u2022])\s*/,"...":/^\.\.\.(?=$|[^.])/,"* ":/^([*])\s*/,"^{(...)}":function(t){return i.patterns.findObserveGroups(t,"^{","","","}")},"^($...$)":function(t){return i.patterns.findObserveGroups(t,"^","$","$","")},"^a":/^\^([0-9]+|[^\\_])/,"^\\x{}{}":function(t){return i.patterns.findObserveGroups(t,"^",/^\\[a-zA-Z]+\{/,"}","","","{","}","",!0)},"^\\x{}":function(t){return i.patterns.findObserveGroups(t,"^",/^\\[a-zA-Z]+\{/,"}","")},"^\\x":/^\^(\\[a-zA-Z]+)\s*/,"^(-1)":/^\^(-?\d+)/,"'":/^'/,"_{(...)}":function(t){return i.patterns.findObserveGroups(t,"_{","","","}")},"_($...$)":function(t){return i.patterns.findObserveGroups(t,"_","$","$","")},_9:/^_([+\-]?[0-9]+|[^\\])/,"_\\x{}{}":function(t){return i.patterns.findObserveGroups(t,"_",/^\\[a-zA-Z]+\{/,"}","","","{","}","",!0)},"_\\x{}":function(t){return i.patterns.findObserveGroups(t,"_",/^\\[a-zA-Z]+\{/,"}","")},"_\\x":/^_(\\[a-zA-Z]+)\s*/,"^_":/^(?:\^(?=_)|\_(?=\^)|[\^_]$)/,"{}":/^\{\}/,"{...}":function(t){return i.patterns.findObserveGroups(t,"","{","}","")},"{(...)}":function(t){return i.patterns.findObserveGroups(t,"{","","","}")},"$...$":function(t){return i.patterns.findObserveGroups(t,"","$","$","")},"${(...)}$":function(t){return i.patterns.findObserveGroups(t,"${","","","}$")},"$(...)$":function(t){return i.patterns.findObserveGroups(t,"$","","","$")},"=<>":/^[=<>]/,"#":/^[#\u2261]/,"+":/^\+/,"-$":/^-(?=[\s_},;\]/]|$|\([a-z]+\))/,"-9":/^-(?=[0-9])/,"- orbital overlap":/^-(?=(?:[spd]|sp)(?:$|[\s,;\)\]\}]))/,"-":/^-/,"pm-operator":/^(?:\\pm|\$\\pm\$|\+-|\+\/-)/,operator:/^(?:\+|(?:[\-=<>]|<<|>>|\\approx|\$\\approx\$)(?=\s|$|-?[0-9]))/,arrowUpDown:/^(?:v|\(v\)|\^|\(\^\))(?=$|[\s,;\)\]\}])/,"\\bond{(...)}":function(t){return i.patterns.findObserveGroups(t,"\\bond{","","","}")},"->":/^(?:<->|<-->|->|<-|<=>>|<<=>|<=>|[\u2192\u27F6\u21CC])/,CMT:/^[CMT](?=\[)/,"[(...)]":function(t){return i.patterns.findObserveGroups(t,"[","","","]")},"1st-level escape":/^(&|\\\\|\\hline)\s*/,"\\,":/^(?:\\[,\ ;:])/,"\\x{}{}":function(t){return i.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","","","{","}","",!0)},"\\x{}":function(t){return i.patterns.findObserveGroups(t,"",/^\\[a-zA-Z]+\{/,"}","")},"\\ca":/^\\ca(?:\s+|(?![a-zA-Z]))/,"\\x":/^(?:\\[a-zA-Z]+\s*|\\[_&{}%])/,orbital:/^(?:[0-9]{1,2}[spdfgh]|[0-9]{0,2}sp)(?=$|[^a-zA-Z])/,others:/^[\/~|]/,"\\frac{(...)}":function(t){return i.patterns.findObserveGroups(t,"\\frac{","","","}","{","","","}")},"\\overset{(...)}":function(t){return i.patterns.findObserveGroups(t,"\\overset{","","","}","{","","","}")},"\\underset{(...)}":function(t){return i.patterns.findObserveGroups(t,"\\underset{","","","}","{","","","}")},"\\underbrace{(...)}":function(t){return i.patterns.findObserveGroups(t,"\\underbrace{","","","}_","{","","","}")},"\\color{(...)}0":function(t){return i.patterns.findObserveGroups(t,"\\color{","","","}")},"\\color{(...)}{(...)}1":function(t){return i.patterns.findObserveGroups(t,"\\color{","","","}","{","","","}")},"\\color(...){(...)}2":function(t){return i.patterns.findObserveGroups(t,"\\color","\\","",/^(?=\{)/,"{","","","}")},"\\ce{(...)}":function(t){return i.patterns.findObserveGroups(t,"\\ce{","","","}")},oxidation$:/^(?:[+-][IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"d-oxidation$":/^(?:[+-]?\s?[IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,"roman numeral":/^[IVX]+/,"1/2$":/^[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+(?:\$[a-z]\$|[a-z])?$/,amount:function(t){var e;if(e=t.match(/^(?:(?:(?:\([+\-]?[0-9]+\/[0-9]+\)|[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+|[+\-]?[0-9]+[.,][0-9]+|[+\-]?\.[0-9]+|[+\-]?[0-9]+)(?:[a-z](?=\s*[A-Z]))?)|[+\-]?[a-z](?=\s*[A-Z])|\+(?!\s))/))return{match_:e[0],remainder:t.substr(e[0].length)};var n=i.patterns.findObserveGroups(t,"","$","$","");return n&&(e=n.match_.match(/^\$(?:\(?[+\-]?(?:[0-9]*[a-z]?[+\-])?[0-9]*[a-z](?:[+\-][0-9]*[a-z]?)?\)?|\+|-)\$$/))?{match_:e[0],remainder:t.substr(e[0].length)}:null},amount2:function(t){return this.amount(t)},"(KV letters),":/^(?:[A-Z][a-z]{0,2}|i)(?=,)/,formula$:function(t){if(t.match(/^\([a-z]+\)$/))return null;var e=t.match(/^(?:[a-z]|(?:[0-9\ \+\-\,\.\(\)]+[a-z])+[0-9\ \+\-\,\.\(\)]*|(?:[a-z][0-9\ \+\-\,\.\(\)]+)+[a-z]?)$/);return e?{match_:e[0],remainder:t.substr(e[0].length)}:null},uprightEntities:/^(?:pH|pOH|pC|pK|iPr|iBu)(?=$|[^a-zA-Z])/,"/":/^\s*(\/)\s*/,"//":/^\s*(\/\/)\s*/,"*":/^\s*[*.]\s*/},findObserveGroups:function(t,e,n,o,a,r,i,c,u,p){var s=function(t,e){if("string"==typeof e)return 0!==t.indexOf(e)?null:e;var n=t.match(e);return n?n[0]:null},_=s(t,e);if(null===_)return null;if(t=t.substr(_.length),null===(_=s(t,n)))return null;var d=function(t,e,n){for(var o=0;e<t.length;){var a=t.charAt(e),r=s(t.substr(e),n);if(null!==r&&0===o)return{endMatchBegin:e,endMatchEnd:e+r.length};if("{"===a)o++;else if("}"===a){if(0===o)throw["ExtraCloseMissingOpen","Extra close brace or missing open brace"];o--}e++}return null}(t,_.length,o||a);if(null===d)return null;var m=t.substring(0,o?d.endMatchEnd:d.endMatchBegin);if(r||i){var l=this.findObserveGroups(t.substr(d.endMatchEnd),r,i,c,u);if(null===l)return null;var f=[m,l.match_];return{match_:p?f.join(""):f,remainder:l.remainder}}return{match_:m,remainder:t.substr(d.endMatchEnd)}},match_:function(t,e){var n=i.patterns.patterns[t];if(void 0===n)throw["MhchemBugP","mhchem bug P. Please report. ("+t+")"];if("function"==typeof n)return i.patterns.patterns[t](e);var o=e.match(n);return o?{match_:o[2]?[o[1],o[2]]:o[1]?o[1]:o[0],remainder:e.substr(o[0].length)}:null}},actions:{"a=":function(t,e){t.a=(t.a||"")+e},"b=":function(t,e){t.b=(t.b||"")+e},"p=":function(t,e){t.p=(t.p||"")+e},"o=":function(t,e){t.o=(t.o||"")+e},"q=":function(t,e){t.q=(t.q||"")+e},"d=":function(t,e){t.d=(t.d||"")+e},"rm=":function(t,e){t.rm=(t.rm||"")+e},"text=":function(t,e){t.text_=(t.text_||"")+e},insert:function(t,e,n){return{type_:n}},"insert+p1":function(t,e,n){return{type_:n,p1:e}},"insert+p1+p2":function(t,e,n){return{type_:n,p1:e[0],p2:e[1]}},copy:function(t,e){return e},rm:function(t,e){return{type_:"rm",p1:e||""}},text:function(t,e){return i.go(e,"text")},"{text}":function(t,e){var n=["{"];return i.concatArray(n,i.go(e,"text")),n.push("}"),n},"tex-math":function(t,e){return i.go(e,"tex-math")},"tex-math tight":function(t,e){return i.go(e,"tex-math tight")},bond:function(t,e,n){return{type_:"bond",kind_:n||e}},"color0-output":function(t,e){return{type_:"color0",color:e[0]}},ce:function(t,e){return i.go(e)},"1/2":function(t,e){var n=[];e.match(/^[+\-]/)&&(n.push(e.substr(0,1)),e=e.substr(1));var o=e.match(/^([0-9]+|\$[a-z]\$|[a-z])\/([0-9]+)(\$[a-z]\$|[a-z])?$/);return o[1]=o[1].replace(/\$/g,""),n.push({type_:"frac",p1:o[1],p2:o[2]}),o[3]&&(o[3]=o[3].replace(/\$/g,""),n.push({type_:"tex-math",p1:o[3]})),n},"9,9":function(t,e){return i.go(e,"9,9")}},createTransitions:function(t){var e,n,o,a,r={};for(e in t)for(n in t[e])for(o=n.split("|"),t[e][n].stateArray=o,a=0;a<o.length;a++)r[o[a]]=[];for(e in t)for(n in t[e])for(o=t[e][n].stateArray||[],a=0;a<o.length;a++){var i=t[e][n];if(i.action_){i.action_=[].concat(i.action_);for(var c=0;c<i.action_.length;c++)"string"==typeof i.action_[c]&&(i.action_[c]={type_:i.action_[c]})}else i.action_=[];for(var u=e.split("|"),p=0;p<u.length;p++)if("*"===o[a])for(var s in r)r[s].push({pattern:u[p],task:i});else r[o[a]].push({pattern:u[p],task:i})}return r},stateMachines:{}};i.stateMachines={ce:{transitions:i.createTransitions({empty:{"*":{action_:"output"}},else:{"0|1|2":{action_:"beginsWithBond=false",revisit:!0,toContinue:!0}},oxidation$:{0:{action_:"oxidation-output"}},CMT:{r:{action_:"rdt=",nextState:"rt"},rd:{action_:"rqt=",nextState:"rdt"}},arrowUpDown:{"0|1|2|as":{action_:["sb=false","output","operator"],nextState:"1"}},uprightEntities:{"0|1|2":{action_:["o=","output"],nextState:"1"}},orbital:{"0|1|2|3":{action_:"o=",nextState:"o"}},"->":{"0|1|2|3":{action_:"r=",nextState:"r"},"a|as":{action_:["output","r="],nextState:"r"},"*":{action_:["output","r="],nextState:"r"}},"+":{o:{action_:"d= kv",nextState:"d"},"d|D":{action_:"d=",nextState:"d"},q:{action_:"d=",nextState:"qd"},"qd|qD":{action_:"d=",nextState:"qd"},dq:{action_:["output","d="],nextState:"d"},3:{action_:["sb=false","output","operator"],nextState:"0"}},amount:{"0|2":{action_:"a=",nextState:"a"}},"pm-operator":{"0|1|2|a|as":{action_:["sb=false","output",{type_:"operator",option:"\\pm"}],nextState:"0"}},operator:{"0|1|2|a|as":{action_:["sb=false","output","operator"],nextState:"0"}},"-$":{"o|q":{action_:["charge or bond","output"],nextState:"qd"},d:{action_:"d=",nextState:"d"},D:{action_:["output",{type_:"bond",option:"-"}],nextState:"3"},q:{action_:"d=",nextState:"qd"},qd:{action_:"d=",nextState:"qd"},"qD|dq":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},"-9":{"3|o":{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"3"}},"- orbital overlap":{o:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},d:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"}},"-":{"0|1|2":{action_:[{type_:"output",option:1},"beginsWithBond=true",{type_:"bond",option:"-"}],nextState:"3"},3:{action_:{type_:"bond",option:"-"}},a:{action_:["output",{type_:"insert",option:"hyphen"}],nextState:"2"},as:{action_:[{type_:"output",option:2},{type_:"bond",option:"-"}],nextState:"3"},b:{action_:"b="},o:{action_:{type_:"- after o/d",option:!1},nextState:"2"},q:{action_:{type_:"- after o/d",option:!1},nextState:"2"},"d|qd|dq":{action_:{type_:"- after o/d",option:!0},nextState:"2"},"D|qD|p":{action_:["output",{type_:"bond",option:"-"}],nextState:"3"}},amount2:{"1|3":{action_:"a=",nextState:"a"}},letters:{"0|1|2|3|a|as|b|p|bp|o":{action_:"o=",nextState:"o"},"q|dq":{action_:["output","o="],nextState:"o"},"d|D|qd|qD":{action_:"o after d",nextState:"o"}},digits:{o:{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},q:{action_:["output","o="],nextState:"o"},a:{action_:"o=",nextState:"o"}},"space A":{"b|p|bp":{}},space:{a:{nextState:"as"},0:{action_:"sb=false"},"1|2":{action_:"sb=true"},"r|rt|rd|rdt|rdq":{action_:"output",nextState:"0"},"*":{action_:["output","sb=true"],nextState:"1"}},"1st-level escape":{"1|2":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}]},"*":{action_:["output",{type_:"insert+p1",option:"1st-level escape"}],nextState:"0"}},"[(...)]":{"r|rt":{action_:"rd=",nextState:"rd"},"rd|rdt":{action_:"rq=",nextState:"rdq"}},"...":{"o|d|D|dq|qd|qD":{action_:["output",{type_:"bond",option:"..."}],nextState:"3"},"*":{action_:[{type_:"output",option:1},{type_:"insert",option:"ellipsis"}],nextState:"1"}},". |* ":{"*":{action_:["output",{type_:"insert",option:"addition compound"}],nextState:"1"}},"state of aggregation $":{"*":{action_:["output","state of aggregation"],nextState:"1"}},"{[(":{"a|as|o":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"0|1|2|3":{action_:["o=","output","parenthesisLevel++"],nextState:"2"},"*":{action_:["output","o=","output","parenthesisLevel++"],nextState:"2"}},")]}":{"0|1|2|3|b|p|bp|o":{action_:["o=","parenthesisLevel--"],nextState:"o"},"a|as|d|D|q|qd|qD|dq":{action_:["output","o=","parenthesisLevel--"],nextState:"o"}},", ":{"*":{action_:["output","comma"],nextState:"0"}},"^_":{"*":{}},"^{(...)}|^($...$)":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"D"},q:{action_:"d=",nextState:"qD"},"d|D|qd|qD|dq":{action_:["output","d="],nextState:"D"}},"^a|^\\x{}{}|^\\x{}|^\\x|'":{"0|1|2|as":{action_:"b=",nextState:"b"},p:{action_:"b=",nextState:"bp"},"3|o":{action_:"d= kv",nextState:"d"},q:{action_:"d=",nextState:"qd"},"d|qd|D|qD":{action_:"d="},dq:{action_:["output","d="],nextState:"d"}},"_{(state of aggregation)}$":{"d|D|q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"_{(...)}|_($...$)|_9|_\\x{}{}|_\\x{}|_\\x":{"0|1|2|as":{action_:"p=",nextState:"p"},b:{action_:"p=",nextState:"bp"},"3|o":{action_:"q=",nextState:"q"},"d|D":{action_:"q=",nextState:"dq"},"q|qd|qD|dq":{action_:["output","q="],nextState:"q"}},"=<>":{"0|1|2|3|a|as|o|q|d|D|qd|qD|dq":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"#":{"0|1|2|3|a|as|o":{action_:[{type_:"output",option:2},{type_:"bond",option:"#"}],nextState:"3"}},"{}":{"*":{action_:{type_:"output",option:1},nextState:"1"}},"{...}":{"0|1|2|3|a|as|b|p|bp":{action_:"o=",nextState:"o"},"o|d|D|q|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"$...$":{a:{action_:"a="},"0|1|2|3|as|b|p|bp|o":{action_:"o=",nextState:"o"},"as|o":{action_:"o="},"q|d|D|qd|qD|dq":{action_:["output","o="],nextState:"o"}},"\\bond{(...)}":{"*":{action_:[{type_:"output",option:2},"bond"],nextState:"3"}},"\\frac{(...)}":{"*":{action_:[{type_:"output",option:1},"frac-output"],nextState:"3"}},"\\overset{(...)}":{"*":{action_:[{type_:"output",option:2},"overset-output"],nextState:"3"}},"\\underset{(...)}":{"*":{action_:[{type_:"output",option:2},"underset-output"],nextState:"3"}},"\\underbrace{(...)}":{"*":{action_:[{type_:"output",option:2},"underbrace-output"],nextState:"3"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:[{type_:"output",option:2},"color-output"],nextState:"3"}},"\\color{(...)}0":{"*":{action_:[{type_:"output",option:2},"color0-output"]}},"\\ce{(...)}":{"*":{action_:[{type_:"output",option:2},"ce"],nextState:"3"}},"\\,":{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"1"}},"\\x{}{}|\\x{}|\\x":{"0|1|2|3|a|as|b|p|bp|o|c0":{action_:["o=","output"],nextState:"3"},"*":{action_:["output","o=","output"],nextState:"3"}},others:{"*":{action_:[{type_:"output",option:1},"copy"],nextState:"3"}},else2:{a:{action_:"a to o",nextState:"o",revisit:!0},as:{action_:["output","sb=true"],nextState:"1",revisit:!0},"r|rt|rd|rdt|rdq":{action_:["output"],nextState:"0",revisit:!0},"*":{action_:["output","copy"],nextState:"3"}}}),actions:{"o after d":function(t,e){var n;if((t.d||"").match(/^[0-9]+$/)){var o=t.d;t.d=void 0,n=this.output(t),t.b=o}else n=this.output(t);return i.actions["o="](t,e),n},"d= kv":function(t,e){t.d=e,t.dType="kv"},"charge or bond":function(t,e){if(t.beginsWithBond){var n=[];return i.concatArray(n,this.output(t)),i.concatArray(n,i.actions.bond(t,e,"-")),n}t.d=e},"- after o/d":function(t,e,n){var o=i.patterns.match_("orbital",t.o||""),a=i.patterns.match_("one lowercase greek letter $",t.o||""),r=i.patterns.match_("one lowercase latin letter $",t.o||""),c=i.patterns.match_("$one lowercase latin letter$ $",t.o||""),u="-"===e&&(o&&""===o.remainder||a||r||c);!u||t.a||t.b||t.p||t.d||t.q||o||!r||(t.o="$"+t.o+"$");var p=[];return u?(i.concatArray(p,this.output(t)),p.push({type_:"hyphen"})):(o=i.patterns.match_("digits",t.d||""),n&&o&&""===o.remainder?(i.concatArray(p,i.actions["d="](t,e)),i.concatArray(p,this.output(t))):(i.concatArray(p,this.output(t)),i.concatArray(p,i.actions.bond(t,e,"-")))),p},"a to o":function(t){t.o=t.a,t.a=void 0},"sb=true":function(t){t.sb=!0},"sb=false":function(t){t.sb=!1},"beginsWithBond=true":function(t){t.beginsWithBond=!0},"beginsWithBond=false":function(t){t.beginsWithBond=!1},"parenthesisLevel++":function(t){t.parenthesisLevel++},"parenthesisLevel--":function(t){t.parenthesisLevel--},"state of aggregation":function(t,e){return{type_:"state of aggregation",p1:i.go(e,"o")}},comma:function(t,e){var n=e.replace(/\s*$/,"");return n!==e&&0===t.parenthesisLevel?{type_:"comma enumeration L",p1:n}:{type_:"comma enumeration M",p1:n}},output:function(t,e,n){var o,a,r;t.r?(a="M"===t.rdt?i.go(t.rd,"tex-math"):"T"===t.rdt?[{type_:"text",p1:t.rd||""}]:i.go(t.rd),r="M"===t.rqt?i.go(t.rq,"tex-math"):"T"===t.rqt?[{type_:"text",p1:t.rq||""}]:i.go(t.rq),o={type_:"arrow",r:t.r,rd:a,rq:r}):(o=[],(t.a||t.b||t.p||t.o||t.q||t.d||n)&&(t.sb&&o.push({type_:"entitySkip"}),t.o||t.q||t.d||t.b||t.p||2===n?t.o||t.q||t.d||!t.b&&!t.p?t.o&&"kv"===t.dType&&i.patterns.match_("d-oxidation$",t.d||"")?t.dType="oxidation":t.o&&"kv"===t.dType&&!t.q&&(t.dType=void 0):(t.o=t.a,t.d=t.b,t.q=t.p,t.a=t.b=t.p=void 0):(t.o=t.a,t.a=void 0),o.push({type_:"chemfive",a:i.go(t.a,"a"),b:i.go(t.b,"bd"),p:i.go(t.p,"pq"),o:i.go(t.o,"o"),q:i.go(t.q,"pq"),d:i.go(t.d,"oxidation"===t.dType?"oxidation":"bd"),dType:t.dType})));for(var c in t)"parenthesisLevel"!==c&&"beginsWithBond"!==c&&delete t[c];return o},"oxidation-output":function(t,e){var n=["{"];return i.concatArray(n,i.go(e,"oxidation")),n.push("}"),n},"frac-output":function(t,e){return{type_:"frac-ce",p1:i.go(e[0]),p2:i.go(e[1])}},"overset-output":function(t,e){return{type_:"overset",p1:i.go(e[0]),p2:i.go(e[1])}},"underset-output":function(t,e){return{type_:"underset",p1:i.go(e[0]),p2:i.go(e[1])}},"underbrace-output":function(t,e){return{type_:"underbrace",p1:i.go(e[0]),p2:i.go(e[1])}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:i.go(e[1])}},"r=":function(t,e){t.r=e},"rdt=":function(t,e){t.rdt=e},"rd=":function(t,e){t.rd=e},"rqt=":function(t,e){t.rqt=e},"rq=":function(t,e){t.rq=e},operator:function(t,e,n){return{type_:"operator",kind_:n||e}}}},a:{transitions:i.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},"$(...)$":{"*":{action_:"tex-math tight",nextState:"1"}},",":{"*":{action_:{type_:"insert",option:"commaDecimal"}}},else2:{"*":{action_:"copy"}}}),actions:{}},o:{transitions:i.createTransitions({empty:{"*":{}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"1",revisit:!0}},letters:{"*":{action_:"rm"}},"\\ca":{"*":{action_:{type_:"insert",option:"circa"}}},"\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"{text}"}},else2:{"*":{action_:"copy"}}}),actions:{}},text:{transitions:i.createTransitions({empty:{"*":{action_:"output"}},"{...}":{"*":{action_:"text="}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"\\greek":{"*":{action_:["output","rm"]}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:["output","copy"]}},else:{"*":{action_:"text="}}}),actions:{output:function(t){if(t.text_){var e={type_:"text",p1:t.text_};for(var n in t)delete t[n];return e}}}},pq:{transitions:i.createTransitions({empty:{"*":{}},"state of aggregation $":{"*":{action_:"state of aggregation"}},i$:{0:{nextState:"!f",revisit:!0}},"(KV letters),":{0:{action_:"rm",nextState:"0"}},formula$:{0:{nextState:"f",revisit:!0}},"1/2$":{0:{action_:"1/2"}},else:{0:{nextState:"!f",revisit:!0}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"a-z":{f:{action_:"tex-math"}},letters:{"*":{action_:"rm"}},"-9.,9":{"*":{action_:"9,9"}},",":{"*":{action_:{type_:"insert+p1",option:"comma enumeration S"}}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"state of aggregation":function(t,e){return{type_:"state of aggregation subscript",p1:i.go(e,"o")}},"color-output":function(t,e){return{type_:"color",color1:e[0],color2:i.go(e[1],"pq")}}}},bd:{transitions:i.createTransitions({empty:{"*":{}},x$:{0:{nextState:"!f",revisit:!0}},formula$:{0:{nextState:"f",revisit:!0}},else:{0:{nextState:"!f",revisit:!0}},"-9.,9 no missing 0":{"*":{action_:"9,9"}},".":{"*":{action_:{type_:"insert",option:"electron dot"}}},"a-z":{f:{action_:"tex-math"}},x:{"*":{action_:{type_:"insert",option:"KV x"}}},letters:{"*":{action_:"rm"}},"'":{"*":{action_:{type_:"insert",option:"prime"}}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},"{(...)}":{"*":{action_:"text"}},"\\color{(...)}{(...)}1|\\color(...){(...)}2":{"*":{action_:"color-output"}},"\\color{(...)}0":{"*":{action_:"color0-output"}},"\\ce{(...)}":{"*":{action_:"ce"}},"\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"copy"}},else2:{"*":{action_:"copy"}}}),actions:{"color-output":function(t,e){return{type_:"color",color1:e[0],color2:i.go(e[1],"bd")}}}},oxidation:{transitions:i.createTransitions({empty:{"*":{}},"roman numeral":{"*":{action_:"roman-numeral"}},"${(...)}$|$(...)$":{"*":{action_:"tex-math"}},else:{"*":{action_:"copy"}}}),actions:{"roman-numeral":function(t,e){return{type_:"roman numeral",p1:e||""}}}},"tex-math":{transitions:i.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},else:{"*":{action_:"o="}}}),actions:{output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var n in t)delete t[n];return e}}}},"tex-math tight":{transitions:i.createTransitions({empty:{"*":{action_:"output"}},"\\ce{(...)}":{"*":{action_:["output","ce"]}},"{...}|\\,|\\x{}{}|\\x{}|\\x":{"*":{action_:"o="}},"-|+":{"*":{action_:"tight operator"}},else:{"*":{action_:"o="}}}),actions:{"tight operator":function(t,e){t.o=(t.o||"")+"{"+e+"}"},output:function(t){if(t.o){var e={type_:"tex-math",p1:t.o};for(var n in t)delete t[n];return e}}}},"9,9":{transitions:i.createTransitions({empty:{"*":{}},",":{"*":{action_:"comma"}},else:{"*":{action_:"copy"}}}),actions:{comma:function(){return{type_:"commaDecimal"}}}},pu:{transitions:i.createTransitions({empty:{"*":{action_:"output"}},space$:{"*":{action_:["output","space"]}},"{[(|)]}":{"0|a":{action_:"copy"}},"(-)(9)^(-9)":{0:{action_:"number^",nextState:"a"}},"(-)(9.,9)(e)(99)":{0:{action_:"enumber",nextState:"a"}},space:{"0|a":{}},"pm-operator":{"0|a":{action_:{type_:"operator",option:"\\pm"},nextState:"0"}},operator:{"0|a":{action_:"copy",nextState:"0"}},"//":{d:{action_:"o=",nextState:"/"}},"/":{d:{action_:"o=",nextState:"/"}},"{...}|else":{"0|d":{action_:"d=",nextState:"d"},a:{action_:["space","d="],nextState:"d"},"/|q":{action_:"q=",nextState:"q"}}}),actions:{enumber:function(t,e){var n=[];return"+-"===e[0]||"+/-"===e[0]?n.push("\\pm "):e[0]&&n.push(e[0]),e[1]&&(i.concatArray(n,i.go(e[1],"pu-9,9")),e[2]&&(e[2].match(/[,.]/)?i.concatArray(n,i.go(e[2],"pu-9,9")):n.push(e[2])),e[3]=e[4]||e[3],e[3]&&(e[3]=e[3].trim(),"e"===e[3]||"*"===e[3].substr(0,1)?n.push({type_:"cdot"}):n.push({type_:"times"}))),e[3]&&n.push("10^{"+e[5]+"}"),n},"number^":function(t,e){var n=[];return"+-"===e[0]||"+/-"===e[0]?n.push("\\pm "):e[0]&&n.push(e[0]),i.concatArray(n,i.go(e[1],"pu-9,9")),n.push("^{"+e[2]+"}"),n},operator:function(t,e,n){return{type_:"operator",kind_:n||e}},space:function(){return{type_:"pu-space-1"}},output:function(t){var e,n=i.patterns.match_("{(...)}",t.d||"");n&&""===n.remainder&&(t.d=n.match_);var o=i.patterns.match_("{(...)}",t.q||"");if(o&&""===o.remainder&&(t.q=o.match_),t.d&&(t.d=t.d.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.d=t.d.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F")),t.q){t.q=t.q.replace(/\u00B0C|\^oC|\^{o}C/g,"{}^{\\circ}C"),t.q=t.q.replace(/\u00B0F|\^oF|\^{o}F/g,"{}^{\\circ}F");var a={d:i.go(t.d,"pu"),q:i.go(t.q,"pu")};"//"===t.o?e={type_:"pu-frac",p1:a.d,p2:a.q}:(e=a.d,a.d.length>1||a.q.length>1?e.push({type_:" / "}):e.push({type_:"/"}),i.concatArray(e,a.q))}else e=i.go(t.d,"pu-2");for(var r in t)delete t[r];return e}}},"pu-2":{transitions:i.createTransitions({empty:{"*":{action_:"output"}},"*":{"*":{action_:["output","cdot"],nextState:"0"}},"\\x":{"*":{action_:"rm="}},space:{"*":{action_:["output","space"],nextState:"0"}},"^{(...)}|^(-1)":{1:{action_:"^(-1)"}},"-9.,9":{0:{action_:"rm=",nextState:"0"},1:{action_:"^(-1)",nextState:"0"}},"{...}|else":{"*":{action_:"rm=",nextState:"1"}}}),actions:{cdot:function(){return{type_:"tight cdot"}},"^(-1)":function(t,e){t.rm+="^{"+e+"}"},space:function(){return{type_:"pu-space-2"}},output:function(t){var e=[];if(t.rm){var n=i.patterns.match_("{(...)}",t.rm||"");e=n&&""===n.remainder?i.go(n.match_,"pu"):{type_:"rm",p1:t.rm}}for(var o in t)delete t[o];return e}}},"pu-9,9":{transitions:i.createTransitions({empty:{0:{action_:"output-0"},o:{action_:"output-o"}},",":{0:{action_:["output-0","comma"],nextState:"o"}},".":{0:{action_:["output-0","copy"],nextState:"o"}},else:{"*":{action_:"text="}}}),actions:{comma:function(){return{type_:"commaDecimal"}},"output-0":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){var n=t.text_.length%3;0===n&&(n=3);for(var o=t.text_.length-3;o>0;o-=3)e.push(t.text_.substr(o,3)),e.push({type_:"1000 separator"});e.push(t.text_.substr(0,n)),e.reverse()}else e.push(t.text_);for(var a in t)delete t[a];return e},"output-o":function(t){var e=[];if(t.text_=t.text_||"",t.text_.length>4){for(var n=t.text_.length-3,o=0;o<n;o+=3)e.push(t.text_.substr(o,3)),e.push({type_:"1000 separator"});e.push(t.text_.substr(o))}else e.push(t.text_);for(var a in t)delete t[a];return e}}}};var c={go:function(t,e){if(!t)return"";for(var n="",o=!1,a=0;a<t.length;a++){var r=t[a];"string"==typeof r?n+=r:(n+=c._go2(r),"1st-level escape"===r.type_&&(o=!0))}return e||o||!n||(n="{"+n+"}"),n},_goInner:function(t){return t?c.go(t,!0):t},_go2:function(t){var e;switch(t.type_){case"chemfive":e="";var n={a:c._goInner(t.a),b:c._goInner(t.b),p:c._goInner(t.p),o:c._goInner(t.o),q:c._goInner(t.q),d:c._goInner(t.d)};n.a&&(n.a.match(/^[+\-]/)&&(n.a="{"+n.a+"}"),e+=n.a+"\\,"),(n.b||n.p)&&(e+="{\\vphantom{X}}",e+="^{\\hphantom{"+(n.b||"")+"}}_{\\hphantom{"+(n.p||"")+"}}",e+="{\\vphantom{X}}",e+="^{\\smash[t]{\\vphantom{2}}\\mathllap{"+(n.b||"")+"}}",e+="_{\\vphantom{2}\\mathllap{\\smash[t]{"+(n.p||"")+"}}}"),n.o&&(n.o.match(/^[+\-]/)&&(n.o="{"+n.o+"}"),e+=n.o),"kv"===t.dType?((n.d||n.q)&&(e+="{\\vphantom{X}}"),n.d&&(e+="^{"+n.d+"}"),n.q&&(e+="_{\\smash[t]{"+n.q+"}}")):"oxidation"===t.dType?(n.d&&(e+="{\\vphantom{X}}",e+="^{"+n.d+"}"),n.q&&(e+="{\\vphantom{X}}",e+="_{\\smash[t]{"+n.q+"}}")):(n.q&&(e+="{\\vphantom{X}}",e+="_{\\smash[t]{"+n.q+"}}"),n.d&&(e+="{\\vphantom{X}}",e+="^{"+n.d+"}"));break;case"rm":e="\\mathrm{"+t.p1+"}";break;case"text":t.p1.match(/[\^_]/)?(t.p1=t.p1.replace(" ","~").replace("-","\\text{-}"),e="\\mathrm{"+t.p1+"}"):e="\\text{"+t.p1+"}";break;case"roman numeral":e="\\mathrm{"+t.p1+"}";break;case"state of aggregation":e="\\mskip2mu "+c._goInner(t.p1);break;case"state of aggregation subscript":e="\\mskip1mu "+c._goInner(t.p1);break;case"bond":if(!(e=c._getBond(t.kind_)))throw["MhchemErrorBond","mhchem Error. Unknown bond type ("+t.kind_+")"];break;case"frac":var o="\\frac{"+t.p1+"}{"+t.p2+"}";e="\\mathchoice{\\textstyle"+o+"}{"+o+"}{"+o+"}{"+o+"}";break;case"pu-frac":var a="\\frac{"+c._goInner(t.p1)+"}{"+c._goInner(t.p2)+"}";e="\\mathchoice{\\textstyle"+a+"}{"+a+"}{"+a+"}{"+a+"}";break;case"tex-math":e=t.p1+" ";break;case"frac-ce":e="\\frac{"+c._goInner(t.p1)+"}{"+c._goInner(t.p2)+"}";break;case"overset":e="\\overset{"+c._goInner(t.p1)+"}{"+c._goInner(t.p2)+"}";break;case"underset":e="\\underset{"+c._goInner(t.p1)+"}{"+c._goInner(t.p2)+"}";break;case"underbrace":e="\\underbrace{"+c._goInner(t.p1)+"}_{"+c._goInner(t.p2)+"}";break;case"color":e="{\\color{"+t.color1+"}{"+c._goInner(t.color2)+"}}";break;case"color0":e="\\color{"+t.color+"}";break;case"arrow":var r={rd:c._goInner(t.rd),rq:c._goInner(t.rq)},i="\\x"+c._getArrow(t.r);r.rq&&(i+="[{"+r.rq+"}]"),e=i+=r.rd?"{"+r.rd+"}":"{}";break;case"operator":e=c._getOperator(t.kind_);break;case"1st-level escape":e=t.p1+" ";break;case"space":e=" ";break;case"entitySkip":case"pu-space-1":e="~";break;case"pu-space-2":e="\\mkern3mu ";break;case"1000 separator":e="\\mkern2mu ";break;case"commaDecimal":e="{,}";break;case"comma enumeration L":e="{"+t.p1+"}\\mkern6mu ";break;case"comma enumeration M":e="{"+t.p1+"}\\mkern3mu ";break;case"comma enumeration S":e="{"+t.p1+"}\\mkern1mu ";break;case"hyphen":e="\\text{-}";break;case"addition compound":e="\\,{\\cdot}\\,";break;case"electron dot":e="\\mkern1mu \\bullet\\mkern1mu ";break;case"KV x":e="{\\times}";break;case"prime":e="\\prime ";break;case"cdot":e="\\cdot ";break;case"tight cdot":e="\\mkern1mu{\\cdot}\\mkern1mu ";break;case"times":e="\\times ";break;case"circa":e="{\\sim}";break;case"^":e="uparrow";break;case"v":e="downarrow";break;case"ellipsis":e="\\ldots ";break;case"/":e="/";break;case" / ":e="\\,/\\,";break;default:throw["MhchemBugT","mhchem bug T. Please report."]}return e},_getArrow:function(t){switch(t){case"->":case"\u2192":case"\u27f6":return"rightarrow";case"<-":return"leftarrow";case"<->":return"leftrightarrow";case"<--\x3e":return"rightleftarrows";case"<=>":case"\u21cc":return"rightleftharpoons";case"<=>>":return"rightequilibrium";case"<<=>":return"leftequilibrium";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getBond:function(t){switch(t){case"-":case"1":return"{-}";case"=":case"2":return"{=}";case"#":case"3":return"{\\equiv}";case"~":return"{\\tripledash}";case"~-":return"{\\mathrlap{\\raisebox{-.1em}{$-$}}\\raisebox{.1em}{$\\tripledash$}}";case"~=":case"~--":return"{\\mathrlap{\\raisebox{-.2em}{$-$}}\\mathrlap{\\raisebox{.2em}{$\\tripledash$}}-}";case"-~-":return"{\\mathrlap{\\raisebox{-.2em}{$-$}}\\mathrlap{\\raisebox{.2em}{$-$}}\\tripledash}";case"...":return"{{\\cdot}{\\cdot}{\\cdot}}";case"....":return"{{\\cdot}{\\cdot}{\\cdot}{\\cdot}}";case"->":return"{\\rightarrow}";case"<-":return"{\\leftarrow}";case"<":return"{<}";case">":return"{>}";default:throw["MhchemBugT","mhchem bug T. Please report."]}},_getOperator:function(t){switch(t){case"+":return" {}+{} ";case"-":return" {}-{} ";case"=":return" {}={} ";case"<":return" {}<{} ";case">":return" {}>{} ";case"<<":return" {}\\ll{} ";case">>":return" {}\\gg{} ";case"\\pm":return" {}\\pm{} ";case"\\approx":case"$\\approx$":return" {}\\approx{} ";case"v":case"(v)":return" \\downarrow{} ";case"^":case"(^)":return" \\uparrow{} ";default:throw["MhchemBugT","mhchem bug T. Please report."]}}}}]).default});