tiddlywiki 5.2.3 → 5.2.4

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 (396) hide show
  1. package/bin/build-site.sh +11 -2
  2. package/bin/test.sh +1 -0
  3. package/boot/boot.js +9 -6
  4. package/core/images/layout-button.tid +4 -0
  5. package/core/images/mastodon.tid +6 -0
  6. package/core/language/en-GB/Buttons.multids +4 -0
  7. package/core/language/en-GB/ControlPanel.multids +3 -3
  8. package/core/language/en-GB/Fields.multids +2 -2
  9. package/core/language/en-GB/GettingStarted.tid +4 -3
  10. package/core/language/en-GB/Help/commands.tid +18 -0
  11. package/core/language/en-GB/Misc.multids +1 -0
  12. package/core/modules/commands/commands.js +42 -0
  13. package/core/modules/editor/engines/framed.js +12 -1
  14. package/core/modules/editor/factory.js +2 -2
  15. package/core/modules/filters/format/json.js +35 -0
  16. package/core/modules/filters/is/variable.js +2 -2
  17. package/core/modules/filters/json-ops.js +186 -0
  18. package/core/modules/filters/variables.js +9 -3
  19. package/core/modules/filters.js +15 -6
  20. package/core/modules/keyboard.js +13 -1
  21. package/core/modules/parsers/csvparser.js +25 -17
  22. package/core/modules/parsers/wikiparser/rules/macrodef.js +1 -1
  23. package/core/modules/parsers/wikiparser/rules/parsermode.js +68 -0
  24. package/core/modules/parsers/wikiparser/rules/styleinline.js +3 -3
  25. package/core/modules/parsers/wikiparser/wikiparser.js +4 -2
  26. package/core/modules/server/routes/put-tiddler.js +10 -0
  27. package/core/modules/startup/startup.js +5 -1
  28. package/core/modules/utils/csv.js +101 -23
  29. package/core/modules/utils/dom/dom.js +17 -2
  30. package/core/modules/utils/dom/modal.js +6 -0
  31. package/core/modules/utils/dom/popup.js +69 -6
  32. package/core/modules/utils/fakedom.js +2 -2
  33. package/core/modules/utils/linked-list.js +79 -75
  34. package/core/modules/utils/logger.js +3 -1
  35. package/core/modules/utils/parsetree.js +20 -10
  36. package/core/modules/utils/utils.js +3 -0
  37. package/core/modules/widgets/action-deletefield.js +2 -2
  38. package/core/modules/widgets/action-popup.js +10 -8
  39. package/core/modules/widgets/button.js +7 -2
  40. package/core/modules/widgets/checkbox.js +12 -5
  41. package/core/modules/widgets/error.js +63 -0
  42. package/core/modules/widgets/genesis.js +108 -0
  43. package/core/modules/widgets/importvariables.js +4 -1
  44. package/core/modules/widgets/keyboard.js +4 -0
  45. package/core/modules/widgets/let.js +3 -5
  46. package/core/modules/widgets/reveal.js +11 -10
  47. package/core/modules/widgets/select.js +9 -0
  48. package/core/modules/widgets/transclude.js +3 -5
  49. package/core/modules/widgets/widget.js +44 -18
  50. package/core/palettes/Blanca.tid +2 -0
  51. package/core/palettes/Blue.tid +2 -0
  52. package/core/palettes/BrightMute.tid +2 -0
  53. package/core/palettes/ContrastDark.tid +2 -0
  54. package/core/palettes/ContrastLight.tid +2 -0
  55. package/core/palettes/CupertinoDark.tid +2 -0
  56. package/core/palettes/DarkPhotos.tid +2 -0
  57. package/core/palettes/DesertSand.tid +2 -0
  58. package/core/palettes/GruvBoxDark.tid +2 -0
  59. package/core/palettes/Nord.tid +2 -0
  60. package/core/palettes/Rocker.tid +2 -0
  61. package/core/palettes/SolarFlare.tid +2 -0
  62. package/core/palettes/SolarizedDark.tid +2 -0
  63. package/core/palettes/SolarizedLight.tid +2 -0
  64. package/core/palettes/SpartanDay.tid +2 -0
  65. package/core/palettes/SpartanNight.tid +2 -0
  66. package/core/palettes/Twilight.tid +2 -0
  67. package/core/palettes/Vanilla.tid +2 -0
  68. package/core/templates/external-js/save-all-external-js.tid +4 -2
  69. package/core/templates/external-js/save-offline-external-js.tid +4 -2
  70. package/core/templates/single.tiddler.window.tid +1 -1
  71. package/core/ui/Actions/new-image.tid +1 -7
  72. package/core/ui/AdvancedSearch/FilterButtons/delete.tid +3 -3
  73. package/core/ui/AdvancedSearch/FilterButtons/dropdown.tid +2 -2
  74. package/core/ui/ControlPanel/Basics/retain-story-ordering-button.tid +3 -0
  75. package/core/ui/ControlPanel/Basics.tid +3 -2
  76. package/core/ui/EditTemplate/Preview/output.tid +1 -1
  77. package/core/ui/EditTemplate/body/default.tid +1 -1
  78. package/core/ui/EditTemplate/fields.tid +12 -2
  79. package/core/ui/EditTemplate.tid +7 -2
  80. package/core/ui/ImportListing.tid +5 -5
  81. package/core/ui/KeyboardShortcuts/advanced-search.tid +1 -1
  82. package/core/ui/PageControls/layout.tid +15 -0
  83. package/core/ui/PageTemplate.tid +1 -4
  84. package/core/ui/SideBar/More.tid +2 -2
  85. package/core/ui/SwitcherModal.tid +1 -0
  86. package/core/ui/TagManager.tid +75 -63
  87. package/core/ui/ViewTemplate/unfold.tid +6 -2
  88. package/core/ui/ViewTemplate.tid +1 -1
  89. package/core/wiki/config/DefaultTiddlersRetainStory.tid +3 -0
  90. package/core/wiki/config/OfficialPluginLibrary.tid +1 -1
  91. package/core/wiki/config/PageControlButtons.multids +1 -0
  92. package/core/wiki/macros/list.tid +7 -7
  93. package/core/wiki/macros/timeline.tid +6 -9
  94. package/core/wiki/macros/toc.tid +12 -8
  95. package/core/wiki/tags/PageControls.tid +1 -1
  96. package/editions/de-AT/tiddlywiki.info +0 -1
  97. package/editions/de-AT-server/tiddlywiki.info +0 -1
  98. package/editions/de-DE/tiddlywiki.info +0 -1
  99. package/editions/dev/tiddlers/HelloThere.tid +2 -1
  100. package/editions/dev/tiddlers/How to run a local plugin library for testing.tid +42 -0
  101. package/editions/dev/tiddlers/javascript-widget-tutorial/Child widgets tutorial.tid +140 -0
  102. package/editions/dev/tiddlers/javascript-widget-tutorial/Do nothing widget demo.tid +22 -0
  103. package/editions/dev/tiddlers/javascript-widget-tutorial/Do nothing widget tutorial.tid +25 -0
  104. package/editions/dev/tiddlers/javascript-widget-tutorial/Hello World demo.tid +23 -0
  105. package/editions/dev/tiddlers/javascript-widget-tutorial/Hello World widget tutorial.tid +18 -0
  106. package/editions/dev/tiddlers/javascript-widget-tutorial/Javascript Widget Tutorial.tid +37 -0
  107. package/editions/dev/tiddlers/javascript-widget-tutorial/Undefined widget demo.tid +18 -0
  108. package/editions/dev/tiddlers/javascript-widget-tutorial/Undefined widget tutorial.tid +11 -0
  109. package/editions/dev/tiddlers/javascript-widget-tutorial/Widget attributes demo I.tid +48 -0
  110. package/editions/dev/tiddlers/javascript-widget-tutorial/Widget attributes demo II.tid +48 -0
  111. package/editions/dev/tiddlers/javascript-widget-tutorial/Widget attributes tutorial part I.tid +50 -0
  112. package/editions/dev/tiddlers/javascript-widget-tutorial/Widget attributes tutorial part II.tid +33 -0
  113. package/editions/dev/tiddlers/javascript-widget-tutorial/Widget refresh demo I.tid +44 -0
  114. package/editions/dev/tiddlers/javascript-widget-tutorial/Widget refresh demo II.tid +40 -0
  115. package/editions/dev/tiddlers/javascript-widget-tutorial/Widget refresh demo III.tid +50 -0
  116. package/editions/dev/tiddlers/javascript-widget-tutorial/Widget refresh tutorial part I.tid +47 -0
  117. package/editions/dev/tiddlers/javascript-widget-tutorial/Widget refresh tutorial part II.tid +37 -0
  118. package/editions/dev/tiddlers/javascript-widget-tutorial/Widget refresh tutorial part III.tid +26 -0
  119. package/editions/dev/tiddlers/javascript-widget-tutorial/domwidget.js +47 -0
  120. package/editions/dev/tiddlers/javascript-widget-tutorial/domwidget.js.meta +6 -0
  121. package/editions/dev/tiddlers/javascript-widget-tutorial/donothing.js +16 -0
  122. package/editions/dev/tiddlers/javascript-widget-tutorial/donothing.js.meta +6 -0
  123. package/editions/dev/tiddlers/javascript-widget-tutorial/hello-attribute-optimized.js +51 -0
  124. package/editions/dev/tiddlers/javascript-widget-tutorial/hello-attribute-optimized.js.meta +6 -0
  125. package/editions/dev/tiddlers/javascript-widget-tutorial/hello-attribute.js +47 -0
  126. package/editions/dev/tiddlers/javascript-widget-tutorial/hello-attribute.js.meta +6 -0
  127. package/editions/dev/tiddlers/javascript-widget-tutorial/hello.js +35 -0
  128. package/editions/dev/tiddlers/javascript-widget-tutorial/hello.js.meta +6 -0
  129. package/editions/dev/tiddlers/javascript-widget-tutorial/refreshcount.js +43 -0
  130. package/editions/dev/tiddlers/javascript-widget-tutorial/refreshcount.js.meta +6 -0
  131. package/editions/dev/tiddlers/javascript-widget-tutorial/tiddlerfield-norefresh.js +36 -0
  132. package/editions/dev/tiddlers/javascript-widget-tutorial/tiddlerfield-norefresh.js.meta +6 -0
  133. package/editions/dev/tiddlers/javascript-widget-tutorial/tiddlerfield.js +46 -0
  134. package/editions/dev/tiddlers/javascript-widget-tutorial/tiddlerfield.js.meta +6 -0
  135. package/editions/dev/tiddlywiki.info +2 -1
  136. package/editions/fr-FR/tiddlers/$__editions_tw5.com_doc-macros.tid +1 -1
  137. package/editions/fr-FR/tiddlers/system/$__core_macros_list.tid +113 -0
  138. package/editions/fr-FR/tiddlers/system/$__core_macros_tag.tid +39 -0
  139. package/editions/fr-FR/tiddlers/system/$__core_ui_TagPickerTagTemplate.tid +25 -0
  140. package/editions/full/tiddlywiki.info +0 -1
  141. package/editions/introduction/tiddlywiki.info +0 -1
  142. package/editions/pluginlibrary/tiddlers/GettingStarted.tid +45 -0
  143. package/editions/pluginlibrary/tiddlers/PrereleaseLocalPluginLibrary.tid +6 -0
  144. package/editions/pluginlibrary/tiddlers/meta/SiteSubtitle.tid +3 -0
  145. package/editions/pluginlibrary/tiddlers/meta/SiteTitle.tid +3 -0
  146. package/editions/pluginlibrary/tiddlers/system/$__themes_tiddlywiki_vanilla_options_sidebarlayout.tid +3 -0
  147. package/editions/pluginlibrary/tiddlywiki.info +7 -0
  148. package/editions/prerelease/tiddlers/{Release 5.2.4.tid → Release 5.2.5.tid } +8 -17
  149. package/editions/prerelease/tiddlers/system/PrereleaseOfficialPluginLibrary.tid +1 -1
  150. package/editions/prerelease/tiddlers/system/TiddlyWiki Pre-release.tid +5 -1
  151. package/editions/test/tiddlers/tests/data/csv-cases.tid +282 -0
  152. package/editions/test/tiddlers/tests/data/filters/Recursion.tid +15 -0
  153. package/editions/test/tiddlers/tests/data/filters/fake-variables.tid +27 -0
  154. package/editions/test/tiddlers/tests/data/genesis-widget/DollarSigns.tid +14 -0
  155. package/editions/test/tiddlers/tests/data/genesis-widget/MultipleAttributes.tid +14 -0
  156. package/editions/test/tiddlers/tests/data/genesis-widget/Simple.tid +14 -0
  157. package/editions/test/tiddlers/tests/data/macros/NestedMacros.tid +36 -0
  158. package/editions/test/tiddlers/tests/data/pragmas/Parsermode.tid +36 -0
  159. package/editions/test/tiddlers/tests/data/transclude/Recursion.tid +13 -0
  160. package/editions/test/tiddlers/tests/modules/utils/test-csv.js +33 -0
  161. package/editions/test/tiddlers/tests/test-checkbox-widget.js +35 -1
  162. package/editions/test/tiddlers/tests/test-json-filters.js +112 -0
  163. package/editions/test/tiddlers/tests/test-linked-list.js +42 -2
  164. package/editions/test/tiddlers/tests/test-popup.js +63 -0
  165. package/editions/test/tiddlers/tests/test-utils.js +1 -0
  166. package/editions/test/tiddlers/tests/test-wikitext.js +16 -0
  167. package/editions/test/tiddlywiki.info +2 -1
  168. package/editions/translators/tiddlers/system/PageControlButtonsVisibility.multids +1 -0
  169. package/editions/translators/tiddlywiki.info +0 -1
  170. package/editions/tw.org/tiddlers/Code of Conduct.tid +4 -1
  171. package/editions/tw.org/tiddlers/Fundraising.tid +2 -2
  172. package/editions/tw5.com/tiddlers/Tables in WikiText CSS Utility Classes.tid +81 -0
  173. package/editions/tw5.com/tiddlers/_tw_shared/favicons/markplace.png +0 -0
  174. package/editions/tw5.com/tiddlers/_tw_shared/favicons/markplace.png.meta +3 -0
  175. package/editions/tw5.com/tiddlers/_tw_shared/sites/marketplace.tid +6 -0
  176. package/editions/tw5.com/tiddlers/_tw_shared/tags-TiddlyWikiSites.tid +1 -1
  177. package/editions/tw5.com/tiddlers/about/Funding TiddlyWiki.tid +19 -0
  178. package/editions/tw5.com/tiddlers/about/Open Collective.tid +14 -0
  179. package/editions/tw5.com/tiddlers/commands/CommandsCommand.tid +8 -0
  180. package/editions/tw5.com/tiddlers/commands/RenderTiddlerCommand.tid +2 -0
  181. package/editions/tw5.com/tiddlers/commands/RenderTiddlersCommand.tid +2 -0
  182. package/editions/tw5.com/tiddlers/commands/SaveTiddlerCommand.tid +2 -0
  183. package/editions/tw5.com/tiddlers/commands/SaveTiddlersCommand.tid +2 -0
  184. package/editions/tw5.com/tiddlers/community/plugins/GSD5.tid +2 -2
  185. package/editions/tw5.com/tiddlers/community/plugins/_JD Mobile Layout plugin_ by JD.tid +0 -1
  186. package/editions/tw5.com/tiddlers/community/resources/_Dropboard_ by Reid Gould.tid +0 -1
  187. package/editions/tw5.com/tiddlers/community/resources/_Hacks_ by Thomas Elmiger.tid +0 -2
  188. package/editions/tw5.com/tiddlers/community/resources/_MathCell_ by Ste Wilson.tid +0 -1
  189. package/editions/tw5.com/tiddlers/community/resources/_TiddlyServer_ by Matt Lauber.tid +0 -1
  190. package/editions/tw5.com/tiddlers/community/resources/_X3DOM for TiddlyWiki 5_ by Jamal Wills.tid +0 -1
  191. package/editions/tw5.com/tiddlers/concepts/CoordinateSystems.tid +42 -0
  192. package/editions/tw5.com/tiddlers/concepts/KeyboardShortcutTiddler.tid +2 -0
  193. package/editions/tw5.com/tiddlers/definitions/Federatial.tid +13 -1
  194. package/editions/tw5.com/tiddlers/definitions/HTML Block Elements.tid +9 -0
  195. package/editions/tw5.com/tiddlers/definitions/TiddlyWikiClassic.tid +3 -1
  196. package/editions/tw5.com/tiddlers/demonstrations/TableOfContentsMacro Selective Expandable Example custom icons.tid +16 -0
  197. package/editions/tw5.com/tiddlers/demonstrations/Tasks/TaskManagementExampleDraggable.tid +1 -1
  198. package/editions/tw5.com/tiddlers/features/DateFormat.tid +27 -3
  199. package/editions/tw5.com/tiddlers/features/JSON in TiddlyWiki.tid +1 -1
  200. package/editions/tw5.com/tiddlers/features/Modals.tid +3 -0
  201. package/editions/tw5.com/tiddlers/filters/examples/format Operator (Examples).tid +5 -2
  202. package/editions/tw5.com/tiddlers/filters/format.tid +5 -4
  203. package/editions/tw5.com/tiddlers/filters/jsonextract.tid +66 -0
  204. package/editions/tw5.com/tiddlers/filters/jsonget.tid +93 -0
  205. package/editions/tw5.com/tiddlers/filters/jsonindexes.tid +65 -0
  206. package/editions/tw5.com/tiddlers/filters/jsontype.tid +74 -0
  207. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted.tid +3 -7
  208. package/editions/tw5.com/tiddlers/hellothere/HelloThere.tid +23 -22
  209. package/editions/tw5.com/tiddlers/hellothere/HelloThumbnail.tid +1 -1
  210. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Funding.tid +10 -0
  211. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Grok TiddlyWiki.tid +2 -0
  212. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Introduction Video.tid +2 -0
  213. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Latest Version.tid +9 -1
  214. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Marketplace.tid +10 -0
  215. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - TiddlyWikiLinks.tid +3 -1
  216. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail_-_Federatial.tid +11 -0
  217. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting Default Story Ordering.tid +4 -0
  218. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting Sync System Tiddlers From Server.tid +13 -0
  219. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting SyncLogging.tid +13 -0
  220. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting_ More Tabs Horizontal.tid +7 -0
  221. package/editions/tw5.com/tiddlers/howtos/How to create keyboard shortcuts.tid +2 -0
  222. package/editions/tw5.com/tiddlers/howtos/Reading data from JSON tiddlers.tid +10 -1
  223. package/editions/tw5.com/tiddlers/images/Federatial.png +0 -0
  224. package/editions/tw5.com/tiddlers/images/Federatial.png.meta +3 -0
  225. package/editions/tw5.com/tiddlers/images/Funding.png +0 -0
  226. package/editions/tw5.com/tiddlers/images/{TiddlyMap.png.meta → Funding.png.meta} +1 -1
  227. package/editions/tw5.com/tiddlers/images/Marketplace Banner.png +0 -0
  228. package/editions/tw5.com/tiddlers/images/Marketplace Banner.png.meta +3 -0
  229. package/editions/tw5.com/tiddlers/images/New Release Banner.png +0 -0
  230. package/editions/tw5.com/tiddlers/macros/ListMacro.tid +3 -1
  231. package/editions/tw5.com/tiddlers/macros/TableOfContentsMacro.tid +36 -2
  232. package/editions/tw5.com/tiddlers/marketplace/TiddlyWiki Marketplace.tid +18 -0
  233. package/editions/tw5.com/tiddlers/mechanisms/PopupMechanism.tid +1 -0
  234. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-modal.tid +4 -2
  235. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-new-tiddler.tid +1 -1
  236. package/editions/tw5.com/tiddlers/nodejs/Installing TiddlyWiki on Node.js.tid +2 -2
  237. package/editions/tw5.com/tiddlers/pragmas/Pragma_ _parsermode.tid +17 -0
  238. package/editions/tw5.com/tiddlers/releasenotes/Release 5.2.4.tid +140 -0
  239. package/editions/tw5.com/tiddlers/releasenotes/Releases.tid +1 -1
  240. package/editions/tw5.com/tiddlers/saving/Emergency Tiddler Export.tid +1 -1
  241. package/editions/tw5.com/tiddlers/saving/Saving on TiddlyHost.tid +1 -1
  242. package/editions/tw5.com/tiddlers/saving/Saving on TiddlySpot.tid +0 -1
  243. package/editions/tw5.com/tiddlers/saving/Saving with Polly.tid +1 -0
  244. package/editions/tw5.com/tiddlers/saving/Saving.tid +12 -5
  245. package/editions/tw5.com/tiddlers/saving/TiddlyBucket - Save to AWS or Google Storage.tid +15 -0
  246. package/editions/tw5.com/tiddlers/system/doc-macros.tid +1 -1
  247. package/editions/tw5.com/tiddlers/system/tw5.com-card-template.tid +1 -16
  248. package/editions/tw5.com/tiddlers/system/tw5.com-styles.tid +168 -40
  249. package/editions/tw5.com/tiddlers/system/version-macros.tid +3 -4
  250. package/editions/tw5.com/tiddlers/system/wikitext-macros.tid +43 -15
  251. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_ClassFilters_PageTemplate.tid +9 -0
  252. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_ClassFilters_TiddlerTemplate.tid +9 -0
  253. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_Filter.tid +2 -2
  254. package/editions/tw5.com/tiddlers/testimonials/Testimonials - Joe Armstrong.tid +8 -0
  255. package/editions/tw5.com/tiddlers/testimonials/Testimonials - Network World.tid +8 -0
  256. package/editions/tw5.com/tiddlers/testimonials/Testimonials - Product Hunt.tid +6 -0
  257. package/editions/tw5.com/tiddlers/webserver/Using the external JavaScript template.tid +10 -10
  258. package/editions/tw5.com/tiddlers/webserver/WebServer API_ Get All Tiddlers.tid +3 -1
  259. package/editions/tw5.com/tiddlers/widgets/ActionPopupWidget.tid +4 -3
  260. package/editions/tw5.com/tiddlers/widgets/ButtonWidget.tid +2 -1
  261. package/editions/tw5.com/tiddlers/widgets/DraggableWidget.tid +2 -1
  262. package/editions/tw5.com/tiddlers/widgets/ErrorWidget.tid +17 -0
  263. package/editions/tw5.com/tiddlers/widgets/EventCatcherWidget.tid +4 -3
  264. package/editions/tw5.com/tiddlers/widgets/GenesisWidget.tid +41 -0
  265. package/editions/tw5.com/tiddlers/widgets/LetWidget.tid +4 -1
  266. package/editions/tw5.com/tiddlers/widgets/ScrollableWidget.tid +1 -1
  267. package/editions/tw5.com/tiddlers/widgets/SelectWidget.tid +1 -0
  268. package/editions/tw5.com/tiddlers/wikitext/Macro Definitions in WikiText.tid +27 -4
  269. package/editions/tw5.com/tiddlers/wikitext/Styles and Classes in WikiText.tid +1 -1
  270. package/editions/tw5.com/tiddlers/wikitext/Table Classes Captions Headers and Footers.tid +20 -0
  271. package/editions/tw5.com/tiddlers/wikitext/Tables in WikiText.tid +3 -13
  272. package/editions/tw5.com/tiddlers/wikitext/Utility Classes.tid +20 -0
  273. package/editions/tw5.com/tiddlers/wikitext/parser/WikiText Parser Modes.tid +1 -1
  274. package/editions/twitter-archivist/tiddlers/DefaultTiddlers.tid +4 -0
  275. package/editions/twitter-archivist/tiddlers/HelloThere.tid +9 -0
  276. package/editions/twitter-archivist/tiddlers/SiteSubtitle.tid +3 -0
  277. package/editions/twitter-archivist/tiddlers/SiteTitle.tid +3 -0
  278. package/editions/twitter-archivist/tiddlywiki.info +16 -0
  279. package/languages/ar-PS/ControlPanel.multids +1 -1
  280. package/languages/ca-ES/ControlPanel.multids +1 -1
  281. package/languages/cs-CZ/ControlPanel.multids +1 -1
  282. package/languages/da-DK/ControlPanel.multids +1 -1
  283. package/languages/de-DE/Buttons.multids +5 -1
  284. package/languages/de-DE/ControlPanel.multids +1 -1
  285. package/languages/de-DE/Help/commands.tid +14 -0
  286. package/languages/de-DE/Misc.multids +1 -0
  287. package/languages/el-GR/ControlPanel.multids +1 -1
  288. package/languages/es-ES/Buttons.multids +89 -87
  289. package/languages/es-ES/ControlPanel.multids +18 -1
  290. package/languages/es-ES/Docs/PaletteColours.multids +2 -2
  291. package/languages/es-ES/EditTemplate.multids +3 -0
  292. package/languages/es-ES/Fields.multids +4 -3
  293. package/languages/es-ES/GettingStarted.tid +4 -3
  294. package/languages/es-ES/Help/default.tid +4 -1
  295. package/languages/es-ES/Help/listen.tid +0 -1
  296. package/languages/es-ES/Help/render.tid +2 -2
  297. package/languages/es-ES/Import.multids +1 -1
  298. package/languages/es-ES/Misc.multids +2 -1
  299. package/languages/es-ES/SideBar.multids +1 -0
  300. package/languages/es-ES/Snippets/ListByTag.tid +1 -1
  301. package/languages/fa-IR/ControlPanel.multids +1 -1
  302. package/languages/fr-FR/Buttons.multids +2 -0
  303. package/languages/fr-FR/ControlPanel.multids +4 -4
  304. package/languages/fr-FR/Misc.multids +3 -2
  305. package/languages/hi-IN/ControlPanel.multids +1 -1
  306. package/languages/ia-IA/ControlPanel.multids +1 -1
  307. package/languages/it-IT/ControlPanel.multids +1 -1
  308. package/languages/ja-JP/ControlPanel.multids +9 -9
  309. package/languages/ko-KR/ControlPanel.multids +1 -1
  310. package/languages/nl-NL/ControlPanel.multids +1 -1
  311. package/languages/pl-PL/Buttons.multids +7 -3
  312. package/languages/pl-PL/ControlPanel.multids +26 -24
  313. package/languages/pl-PL/GettingStarted.tid +4 -3
  314. package/languages/pl-PL/Help/commands.tid +18 -0
  315. package/languages/pl-PL/Help/render.tid +2 -2
  316. package/languages/pl-PL/Misc.multids +1 -0
  317. package/languages/pl-PL/ThemeTweaks.multids +3 -3
  318. package/languages/pt-BR/ControlPanel.multids +1 -1
  319. package/languages/pt-PT/ControlPanel.multids +1 -1
  320. package/languages/ru-RU/ControlPanel.multids +1 -1
  321. package/languages/sk-SK/ControlPanel.multids +1 -1
  322. package/languages/sl-SI/ControlPanel.multids +1 -1
  323. package/languages/sv-SE/ControlPanel.multids +1 -1
  324. package/languages/zh-Hans/Buttons.multids +36 -32
  325. package/languages/zh-Hans/ControlPanel.multids +19 -19
  326. package/languages/zh-Hans/CoreReadMe.tid +1 -1
  327. package/languages/zh-Hans/Docs/ModuleTypes.multids +2 -2
  328. package/languages/zh-Hans/Docs/PaletteColours.multids +8 -8
  329. package/languages/zh-Hans/Fields.multids +7 -7
  330. package/languages/zh-Hans/Filters.multids +1 -1
  331. package/languages/zh-Hans/GettingStarted.tid +8 -6
  332. package/languages/zh-Hans/Help/commands.tid +18 -0
  333. package/languages/zh-Hans/Help/fetch.tid +6 -6
  334. package/languages/zh-Hans/Help/init.tid +1 -1
  335. package/languages/zh-Hans/Help/listen.tid +5 -5
  336. package/languages/zh-Hans/Help/makelibrary.tid +1 -1
  337. package/languages/zh-Hans/Help/savetiddlers.tid +1 -1
  338. package/languages/zh-Hans/Help/server.tid +6 -6
  339. package/languages/zh-Hans/Help/setfield.tid +3 -3
  340. package/languages/zh-Hans/Import.multids +1 -1
  341. package/languages/zh-Hans/Misc.multids +12 -11
  342. package/languages/zh-Hans/Search.multids +6 -6
  343. package/languages/zh-Hans/SiteSubtitle.tid +1 -1
  344. package/languages/zh-Hans/Snippets/ListByTag.tid +1 -1
  345. package/languages/zh-Hans/ThemeTweaks.multids +7 -7
  346. package/languages/zh-Hans/TiddlerInfo.multids +2 -2
  347. package/languages/zh-Hant/Buttons.multids +4 -0
  348. package/languages/zh-Hant/ControlPanel.multids +2 -2
  349. package/languages/zh-Hant/Fields.multids +2 -2
  350. package/languages/zh-Hant/GettingStarted.tid +4 -3
  351. package/languages/zh-Hant/Help/commands.tid +18 -0
  352. package/languages/zh-Hant/Misc.multids +1 -0
  353. package/licenses/cla-individual.md +4 -0
  354. package/package.json +1 -1
  355. package/plugins/tiddlywiki/codemirror/engine.js +4 -0
  356. package/plugins/tiddlywiki/dynannotate/docs/readme.tid +2 -2
  357. package/plugins/tiddlywiki/dynannotate/modules/dynannotate.js +4 -2
  358. package/plugins/tiddlywiki/help/tabs/Support.tid +6 -2
  359. package/plugins/tiddlywiki/jasmine/command.js +33 -0
  360. package/plugins/tiddlywiki/jasmine/help.tid +24 -0
  361. package/plugins/tiddlywiki/jasmine/jasmine-plugin.js +24 -18
  362. package/plugins/tiddlywiki/jasmine/readme.tid +31 -1
  363. package/plugins/tiddlywiki/jasmine/run-wiki-based-tests.js +93 -0
  364. package/plugins/tiddlywiki/jasmine/startup.js +37 -0
  365. package/plugins/tiddlywiki/translators/macros/translatableStringEditor.tid +6 -0
  366. package/plugins/tiddlywiki/translators/system/styles.tid +5 -0
  367. package/plugins/tiddlywiki/twitter-archivist/Twitter Archives.tid +5 -0
  368. package/plugins/tiddlywiki/twitter-archivist/archivist.js +319 -0
  369. package/plugins/tiddlywiki/twitter-archivist/configTiddlerInfoMode.tid +2 -0
  370. package/plugins/tiddlywiki/twitter-archivist/loadtwitterarchive.js +53 -0
  371. package/plugins/tiddlywiki/twitter-archivist/macros.tid +222 -0
  372. package/plugins/tiddlywiki/twitter-archivist/plugin.info +6 -0
  373. package/plugins/tiddlywiki/twitter-archivist/readme.tid +33 -0
  374. package/plugins/tiddlywiki/twitter-archivist/spec.tid +62 -0
  375. package/plugins/tiddlywiki/twitter-archivist/startup.js +38 -0
  376. package/plugins/tiddlywiki/twitter-archivist/styles.tid +47 -0
  377. package/plugins/tiddlywiki/twitter-archivist/template-archive.tid +3 -0
  378. package/plugins/tiddlywiki/twitter-archivist/template-hashtag.tid +3 -0
  379. package/plugins/tiddlywiki/twitter-archivist/template-tweet.tid +3 -0
  380. package/plugins/tiddlywiki/twitter-archivist/template-tweeter.tid +3 -0
  381. package/plugins/tiddlywiki/twitter-archivist/todo.tid +15 -0
  382. package/plugins/tiddlywiki/twitter-archivist/usage.tid +18 -0
  383. package/plugins/tiddlywiki/twitter-archivist/view-template-body-cascade.tid +8 -0
  384. package/plugins/tiddlywiki/upgrade/UpgradeWizard.tid +3 -3
  385. package/readme.md +1 -1
  386. package/themes/tiddlywiki/vanilla/base.tid +131 -10
  387. package/editions/fr-FR/tiddlers/$__core_ui_TagTemplate.tid +0 -33
  388. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Classic.tid +0 -6
  389. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Developers.tid +0 -7
  390. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Gentle Guide.tid +0 -11
  391. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - HelpingTiddlyWiki.tid +0 -7
  392. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - TWEUM2017.tid +0 -8
  393. package/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - TiddlyMap.tid +0 -6
  394. package/editions/tw5.com/tiddlers/images/Dev Thumbnail.jpg +0 -0
  395. package/editions/tw5.com/tiddlers/images/Dev Thumbnail.jpg.meta +0 -3
  396. package/editions/tw5.com/tiddlers/images/TiddlyMap.png +0 -0
@@ -7,6 +7,8 @@ A ''Keyboard Shortcut Tiddler'' is made of three parts:
7
7
  * The ''field'' `key` with a [[Keyboard Shortcut Descriptor]] as its ''value''
8
8
  * Actions in its ''text'' field
9
9
 
10
+ <<.tip """<<.from-version "5.2.4">> By default <<.wlink KeyboardWidget>> and text editor shortcuts take priority, which can be circumvented by setting the ''field'' `priority` to `yes`.""">>
11
+
10
12
  If the [[Keyboard Shortcut Descriptor]] has the form `((my-shortcut))` it's a ''reference'' to a ''configuration Tiddler'' that stores the corresponding [[Keyboard Shortcut|KeyboardShortcuts]]
11
13
 
12
14
  In order to make a ''shortcut'' editable through the <<.controlpanel-tab KeyboardShortcuts>> Tab in the $:/ControlPanel it's sufficient to create a tiddler `$:/config/ShortcutInfo/my-shortcut`, where the ''suffix'' is the ''reference'' used for the [[Keyboard Shortcut|KeyboardShortcuts]]
@@ -1,9 +1,21 @@
1
1
  created: 20130825154900000
2
2
  modified: 20170718160846820
3
+ modified: 20221204165636777
3
4
  tags: Definitions
4
5
  title: Federatial
5
6
  type: text/vnd.tiddlywiki
6
7
 
7
- Federatial Limited is a software consultancy founded by JeremyRuston, the creator of TiddlyWiki. Federatial helps organisations explore new user interaction concepts through rapid prototyping of sophisticated web-based tools.
8
+ Federatial Limited helps organisations explore new user interaction concepts through rapid prototyping of sophisticated web-based tools. Services include:
9
+
10
+ * Consultancy advice on TiddlyWiki adoption
11
+ * Development of custom solutions based on TiddlyWiki
12
+ * Multi-user TiddlyWiki hosting – no outages since 2016
13
+ * Sponsorship of TiddlyWiki core development
8
14
 
9
15
  See https://federatial.com/ and https://twitter.com/federatial for more information.
16
+
17
+ JeremyRuston founded Federatial Limited in 2011 to support his work on TiddlyWiki for the advertised 25 years. Since then, Federatial has been privileged to have worked with a wide range of fantastic clients in very different sectors, on some very diverse projects:
18
+
19
+ * For a law firm in the Washington DC, developing a custom multi-user ~TiddlyWiki application. It replaced a Microsoft Word document hosted on ~SharePoint that had grown to 18,000 pages and 10 million words, and was increasingly unwieldy to manage. We converted the document to a non-linear TiddlyWiki structure. Startup, searching and browsing are an order of magnitude faster than using Word and ~SharePoint
20
+ * For a publishing firm in Paris, devising a new TiddlyWiki-based format for interactive electronic publications (including conversion from the established EPUB format). See https://twpub-tools.org/
21
+ * For a charity in London, maintaining a multiuser instance of TiddlyWiki running on Amazon's serverless infrastructure. It has more than 1,000 users, and over 15,000 tiddlers in 500 interlinked wikis. See https://manuals.annafreud.org/ambit
@@ -0,0 +1,9 @@
1
+ created: 20220818091959523
2
+ modified: 20220818092101307
3
+ tags: Definitions
4
+ title: HTML Block Elements
5
+ type: text/vnd.tiddlywiki
6
+
7
+ <<<
8
+ HTML (Hypertext Markup Language) elements historically were categorized as either "block-level" elements or "inline-level" elements. Since this is a presentational characteristic it is nowadays specified by CSS in the Flow Layout. A Block-level element occupies the entire horizontal space of its parent element (container), and vertical space equal to the height of its contents, thereby creating a "block".
9
+ <<< https://developer.mozilla.org/en-US/docs/Web/HTML/Block-level_elements
@@ -4,6 +4,8 @@ tags: Definitions
4
4
  title: TiddlyWikiClassic
5
5
  type: text/vnd.tiddlywiki
6
6
 
7
- "~TiddlyWiki Classic" refers to versions prior to 5.0, before TiddlyWiki was completely rewritten from the ground up. TiddlyWiki Classic is still being maintained at:
7
+ [img[TiddlyWiki Classic.png]]
8
+
9
+ "~TiddlyWiki Classic" refers to versions prior to 5.0, before TiddlyWiki was completely rewritten. TiddlyWiki Classic is still actively maintained at:
8
10
 
9
11
  https://classic.tiddlywiki.com/
@@ -0,0 +1,16 @@
1
+ caption: Selective (custom icons)
2
+ created: 20220819080004663
3
+ modified: 20220819081049054
4
+ order: 5
5
+ tags: table-of-contents-example
6
+ title: Example Table of Contents: Selectively Expandable (custom icons)
7
+ type: text/vnd.tiddlywiki
8
+
9
+ <<.from-version "5.2.4">> It is possible to define the `toc-open-icon` and `toc-closed-icon` variable, to change the icons used by the toc macros. This setting works for all toc-macro variants
10
+
11
+ <$macrocall $name=".example" n="1"
12
+ eg="""<$let toc-open-icon="$:/core/images/fold-button" toc-closed-icon="$:/core/images/folder">
13
+ <div class="tc-table-of-contents">
14
+ <<toc-selective-expandable "Contents">>
15
+ </div>
16
+ </$let>"""/>
@@ -16,7 +16,7 @@ This is a version of the TaskManagementExample enhanced with the ability to drag
16
16
 
17
17
  //(Listed in reverse order of completion)//
18
18
 
19
- <$list filter="[!has[draft.of]tag[task]tag[done]sort[created]]">
19
+ <$list filter="[!has[draft.of]tag[task]tag[done]sort[modified]]">
20
20
  <div>
21
21
  <$checkbox tag="done"> ~~<$link/>~~</$checkbox>
22
22
  </div>
@@ -1,14 +1,14 @@
1
1
  created: 20140418142957325
2
- modified: 20210912115121622
2
+ modified: 20221121131150032
3
3
  tags: Features
4
4
  title: DateFormat
5
5
  type: text/vnd.tiddlywiki
6
6
 
7
- The default representation of dates is a compact string such as `20211002153802059`. For example, the `created` and `modified` fields are stored like this.
7
+ The default representation of dates is a compact string such as `20211002153802059`. For example, the `created` and `modified` fields are stored like this.
8
8
 
9
9
  The display format for this string can be controlled with a template. For example, transcluding the `modified` field automatically applies a template to display the date as `Sat Oct 02 2021 17:40:50 GMT+0200 (Central European Summer Time)`. A few widgets and filter operators allow you to manually specify a template, for example the ViewWidget:
10
10
 
11
- `<$view field=modified format=date template=“DDth mmm YYYY 0hh:0mm:0ss />`
11
+ `<$view field=modified format=date template="DDth mmm YYYY 0hh:0mm:0ss" />`
12
12
 
13
13
  The date string is processed with the following substitutions:
14
14
 
@@ -46,6 +46,7 @@ The date string is processed with the following substitutions:
46
46
  |`am` or `pm` |Lower case AM/PM indicator |
47
47
  |`AM` or `PM` |Upper case AM/PM indicator |
48
48
  |`TZD` |Timezone offset |
49
+ |`TIMESTAMP` |<<.from-version "5.2.4">> Number of milliseconds since the [[ECMAScript epoch|https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#the_ecmascript_epoch_and_timestamps]], 1 January 1970. |
49
50
  |`\x` |Used to escape a character that would otherwise have special meaning |
50
51
  |`[UTC]`|Time-shift the represented date to UTC. Must be at very start of format string|
51
52
 
@@ -59,3 +60,26 @@ The `{era:BCE||CE}` notation can specify different strings for years that are ne
59
60
  |`DDth MMM YYYY` |16th February 2011 |
60
61
  |`DDth MMM \M\M\M YYYY` |16th February MMM 2011 |
61
62
  |`DDth mmm YYYY 0hh:0mm:0ss` |16th Feb 2011 11:38:42 |
63
+
64
+ !! Using `TIMESTAMP` to calculate time difference
65
+
66
+ You can calculate the difference between two dates by doing the following:
67
+
68
+ # Convert both dates to timestamps
69
+ # Subtract the later date from the earlier one -- if you don't know which one is earlier use the <<.olink "abs">> operator to get an absolute value after subtraction
70
+ # Divide the resulting number by the number of milliseconds in your chosen interval
71
+
72
+ Here is an example of calculating the number of days that passed between creation and last modification of current tiddler:
73
+
74
+ * Fields `modified` and `created` contain their respective datetimes in the format `[UTC]YYYY0MM0DD0hh0mm0ssXXX` so convert them to timestamps
75
+ * `86400000` is the number of milliseconds in a day (1000 * 60 * 60 * 24)
76
+
77
+ <$macrocall $name=".example" n="0" eg="""<$let
78
+ timestamp-modified={{{ [{!!modified}format:date[TIMESTAMP]] }}}
79
+ timestamp-created={{{ [{!!created}format:date[TIMESTAMP]] }}}
80
+ difference-days={{{ [<timestamp-modified>subtract<timestamp-created>divide[86400000]floor[]] }}}>
81
+
82
+ * ''Modified date:'' <$text text={{{ [{!!modified}format:date[YYYY-0MM-0DD]] }}}/>
83
+ * ''Created date:'' <$text text={{{ [{!!created}format:date[YYYY-0MM-0DD]] }}}/>
84
+ * ''Difference in days:'' <<difference-days>> days
85
+ </$let>"""/>
@@ -2,7 +2,7 @@ title: JSON in TiddlyWiki
2
2
  tags: Features
3
3
  type: text/vnd.tiddlywiki
4
4
  created: 20220427174702859
5
- modified: 20220427174702859
5
+ modified: 20220611104737314
6
6
 
7
7
  !! Introduction
8
8
 
@@ -13,9 +13,12 @@ The tiddler to be displayed can contain the following optional fields that are u
13
13
  |subtitle|The subtitle text for a modal, displayed in a `h3` html tag|
14
14
  |class|An additional class to apply to the modal wrapper|
15
15
  |help|An optional external link that will be displayed at the left of the footer with the text "Help"|
16
+ |mask-closable|When set to ''yes'' or ''true'', will close the modal dialog when the mask (area outside the modal) is clicked|
16
17
 
17
18
  Note that the footer and subtitle fields are not limited to plain text, and wiki text features such as widgets and transclusions can be used as well.
18
19
 
19
20
  Modals are displayed with the [[WidgetMessage: tm-modal]].
20
21
 
21
22
  <$button message="tm-modal" param="SampleWizard">Open demo modal</$button>
23
+
24
+ <<.tip """<$macrocall $name=".from-version" version="5.2.4"/> allow using "mask-closable" field""">>
@@ -1,5 +1,5 @@
1
1
  created: 20201020102735123
2
- modified: 20210524044020645
2
+ modified: 20220611104737314
3
3
  tags: [[Operator Examples]] [[format Operator]]
4
4
  title: format Operator (Examples)
5
5
  type: text/vnd.tiddlywiki
@@ -18,9 +18,12 @@ Modified date shown as a relative date:
18
18
  A tiddler title with spaces formatted as a title list:
19
19
  <<.operator-example 4 """[[Hello There]format:titlelist[]]""">>
20
20
 
21
- All tiddler titles tagged with <<tag TableOfContents>> formatted as a title list :
21
+ All tiddler titles tagged with <<tag TableOfContents>> formatted as a title list:
22
22
  <<.operator-example 5 """[tag[TableOfContents]format:titlelist[]]""">>
23
23
 
24
+ A JSON string formatted as JSON – note how the JSON string is normalised to remove the duplicated properties:
25
+ <<.operator-example 6 """[[{"one":"first","one":"another","two":"second"}]format:json[]]""">>
26
+
24
27
  <<.tip "To create a string to save a [[title list|Title List]] into a list field, use `format:titlelist[]` with the [[join operator|join Operator]]">>
25
28
  <<.operator-example 6 """[tag[TableOfContents]format:titlelist[]join[ ]]""">>
26
29
  For example, to save titles tagged `TableOfContents` to the titles field of the tiddler [[format titlelist test]]:
@@ -1,6 +1,6 @@
1
1
  caption: format
2
2
  created: 20201020100834443
3
- modified: 20220523075550449
3
+ modified: 20220611104737314
4
4
  op-input: a [[selection of titles|Title Selection]]
5
5
  op-output: input strings formatted according to the specified suffix <<.place B>>
6
6
  op-parameter: optional format string for the formats
@@ -17,9 +17,10 @@ type: text/vnd.tiddlywiki
17
17
  The suffix <<.place B>> is one of the following supported string formats:
18
18
 
19
19
  |!Format |!Description |
20
- |^`date` |The input string is interpreted as a UTC date and displayed according to the DateFormat specified in the optional operator parameter. (Defaults to "YYYY MM DD 0hh:0mm") |
21
- |^`relativedate` |The input string is interpreted as a UTC date and displayed as the interval from the present instant. Any operator parameters are ignored. |
22
- |^`titlelist` |<<.from-version "5.2.0">>The input string wrapped in double square brackets if it contains a space. Appropriate for use in a [[title list|Title List]]. |
20
+ |^`date` |The input string is interpreted as a UTC date and displayed according to the DateFormat specified in the optional operator operand. (Defaults to "YYYY MM DD 0hh:0mm") |
21
+ |^`json` |<<.from-version "5.2.4">> The input string is interpreted as JSON and displayed with standard formatting. The optional operator operand specifies the number of spaces to use for indenting, or a string to use for indenting. Nothing is returned if the input string is not valid JSON |
22
+ |^`relativedate` |The input string is interpreted as a UTC date and displayed as the interval from the present instant. Any operator parameters are ignored |
23
+ |^`titlelist` |<<.from-version "5.2.0">> The input string wrapped in double square brackets if it contains a space. Appropriate for use in a [[title list|Title List]]. |
23
24
 
24
25
  <<.warning """The [[Title List]] format cannot reliably represent items that contain certain specific character sequences such as `]] `. Thus it should not be used where there is a possibility of such sequences occurring.""">>
25
26
 
@@ -0,0 +1,66 @@
1
+ created: 20220611104737314
2
+ modified: 20220611104737314
3
+ tags: [[Filter Operators]] [[JSON Operators]]
4
+ title: jsonextract Operator
5
+ caption: jsonextract
6
+ op-purpose: retrieve the JSON string of a property from JSON strings
7
+ op-input: a selection of JSON strings
8
+ op-parameter: one or more indexes of the property to retrieve
9
+ op-output: the JSON string values of each of the retrieved properties
10
+
11
+ <<.from-version "5.2.4">> See [[JSON in TiddlyWiki]] for background.
12
+
13
+ The <<.op jsonextract>> operator is used to retrieve values from JSON data as JSON substrings. See also the following related operators:
14
+
15
+ * <<.olink jsonget>> to retrieve the values of a property in JSON data
16
+ * <<.olink jsontype>> to retrieve the type of a JSON value
17
+ * <<.olink jsonindexes>> to retrieve the names of the fields of a JSON object, or the indexes of a JSON array
18
+
19
+ Properties within a JSON object are identified by a sequence of indexes. In the following example, the value at `[a]` is `one`, and the value at `[d][f][0]` is `five`.
20
+
21
+ ```
22
+ {
23
+ "a": "one",
24
+ "b": "",
25
+ "c": "three",
26
+ "d": {
27
+ "e": "four",
28
+ "f": [
29
+ "five",
30
+ "six",
31
+ true,
32
+ false,
33
+ null
34
+ ],
35
+ "g": {
36
+ "x": "max",
37
+ "y": "may",
38
+ "z": "maize"
39
+ }
40
+ }
41
+ }
42
+ ```
43
+
44
+ The following examples assume that this JSON data is contained in a variable called `jsondata`.
45
+
46
+ The <<.op jsonextract>> operator uses multiple operands to specify the indexes of the property to retrieve. Values are returned as literal JSON strings:
47
+
48
+ ```
49
+ [<jsondata>jsonextract[a]] --> "one"
50
+ [<jsondata>jsonextract[d],[e]] --> "four"
51
+ [<jsondata>jsonextract[d],[f],[0]] --> "five"
52
+ [<jsondata>jsonextract[d],[f]] --> ["five","six",true,false,null]
53
+ [<jsondata>jsonextract[d],[g]] --> {"x":"max","y":"may","z":"maize"}
54
+ ```
55
+
56
+ Indexes can be dynamically composed from variables and transclusions:
57
+
58
+ ```
59
+ [<jsondata>jsonextract<variable>,{!!field},[0]]
60
+ ```
61
+
62
+ A subtlety is that the special case of a single blank operand is used to identify the root object. Thus:
63
+
64
+ ```
65
+ [<jsondata>jsonextract[]] --> {"a":"one","b":"","c":"three","d":{"e":"four","f":["five","six",true,false,null],"g":{"x":"max","y":"may","z":"maize"}}}
66
+ ```
@@ -0,0 +1,93 @@
1
+ created: 20220611104737314
2
+ modified: 20220611104737314
3
+ tags: [[Filter Operators]] [[JSON Operators]]
4
+ title: jsonget Operator
5
+ caption: jsonget
6
+ op-purpose: retrieve the value of a property from JSON strings
7
+ op-input: a selection of JSON strings
8
+ op-parameter: one or more indexes of the property to retrieve
9
+ op-output: the values of each of the retrieved properties
10
+
11
+ <<.from-version "5.2.4">> See [[JSON in TiddlyWiki]] for background.
12
+
13
+ The <<.op jsonget>> operator is used to retrieve values from JSON data as strings. See also the following related operators:
14
+
15
+ * <<.olink jsontype>> to retrieve the type of a JSON value
16
+ * <<.olink jsonindexes>> to retrieve the names of the fields of a JSON object, or the indexes of a JSON array
17
+ * <<.olink jsonextract>> to retrieve a JSON value as a string of JSON
18
+
19
+ Properties within a JSON object are identified by a sequence of indexes. In the following example, the value at `[a]` is `one`, and the value at `[d][f][0]` is `five`.
20
+
21
+ ```
22
+ {
23
+ "a": "one",
24
+ "b": "",
25
+ "c": "three",
26
+ "d": {
27
+ "e": "four",
28
+ "f": [
29
+ "five",
30
+ "six",
31
+ true,
32
+ false,
33
+ null
34
+ ],
35
+ "g": {
36
+ "x": "max",
37
+ "y": "may",
38
+ "z": "maize"
39
+ }
40
+ }
41
+ }
42
+ ```
43
+
44
+ The following examples assume that this JSON data is contained in a variable called `jsondata`.
45
+
46
+ The <<.op jsonget>> operator uses multiple operands to specify the indexes of the property to retrieve:
47
+
48
+ ```
49
+ [<jsondata>jsonget[a]] --> "one"
50
+ [<jsondata>jsonget[d],[e]] --> "four"
51
+ [<jsondata>jsonget[d],[f],[0]] --> "five"
52
+ ```
53
+
54
+ Indexes can be dynamically composed from variables and transclusions:
55
+
56
+ ```
57
+ [<jsondata>jsonget<variable>,{!!field},[0]]
58
+ ```
59
+
60
+ Boolean values and null are returned as normal strings. The <<.olink jsontype>> operator can be used to retrieve a string identifying the original type. Thus:
61
+
62
+ ```
63
+ [<jsondata>jsontype[a]] --> "string"
64
+ [<jsondata>jsontype[d]] --> "object"
65
+ [<jsondata>jsontype[d],[f]] --> "array"
66
+ [<jsondata>jsontype[d],[f],[2]] --> "boolean"
67
+ ```
68
+
69
+ Using the <<.op jsonget>> operator to retrieve an object or an array returns a list of the values. For example:
70
+
71
+ ```
72
+ [<jsondata>jsonget[d],[f]] --> "five","six","true","false","null"
73
+ [<jsondata>jsonget[d],[g]] --> "max","may","maize"
74
+ ```
75
+
76
+ The <<.olink jsonindexes>> operator retrieves the corresponding indexes:
77
+
78
+ ```
79
+ [<jsondata>jsonindexes[d],[f]] --> "0", "1", "2", "3", "4"
80
+ [<jsondata>jsonindexes[d],[g]] --> "x", "y", "z"
81
+ ```
82
+
83
+ If the object or array contains nested child objects or arrays then the values are retrieved recursively and returned flattened into a list. For example:
84
+
85
+ ```
86
+ [<jsondata>jsonget[d]] --> "four","five","six","true","false","null","max","may","maize"
87
+ ```
88
+
89
+ A subtlety is that the special case of a single blank operand is used to identify the root object. Thus:
90
+
91
+ ```
92
+ [<jsondata>jsonindexes[]] --> "a", "b", "c", "d"
93
+ ```
@@ -0,0 +1,65 @@
1
+ created: 20220611104737314
2
+ modified: 20220611104737314
3
+ tags: [[Filter Operators]] [[JSON Operators]]
4
+ title: jsonindexes Operator
5
+ caption: jsonindexes
6
+ op-purpose: retrieve the value of a property from JSON strings
7
+ op-input: a selection of JSON strings
8
+ op-parameter: one or more indexes of the property to retrieve
9
+ op-output: the values of each of the retrieved properties
10
+
11
+ <<.from-version "5.2.4">> See [[JSON in TiddlyWiki]] for background.
12
+
13
+ The <<.op jsonindexes>> operator is used to retrieve the property names of JSON objects or the index names of JSON arrays. See also the following related operators:
14
+
15
+ * <<.olink jsonget>> to retrieve the values of a property in JSON data
16
+ * <<.olink jsontype>> to retrieve the type of a JSON value
17
+ * <<.olink jsonextract>> to retrieve a JSON value as a string of JSON
18
+
19
+ Properties within a JSON object are identified by a sequence of indexes. In the following example, the value at `[a]` is `one`, and the value at `[d][f][0]` is `five`.
20
+
21
+ ```
22
+ {
23
+ "a": "one",
24
+ "b": "",
25
+ "c": "three",
26
+ "d": {
27
+ "e": "four",
28
+ "f": [
29
+ "five",
30
+ "six",
31
+ true,
32
+ false,
33
+ null
34
+ ],
35
+ "g": {
36
+ "x": "max",
37
+ "y": "may",
38
+ "z": "maize"
39
+ }
40
+ }
41
+ }
42
+ ```
43
+
44
+ The following examples assume that this JSON data is contained in a variable called `jsondata`.
45
+
46
+ The <<.op jsonindexes>> operator uses multiple operands to specify the indexes of the property to retrieve:
47
+
48
+ ```
49
+ [<jsondata>jsonindexes[d],[f]] --> "0", "1", "2", "3", "4"
50
+ [<jsondata>jsonindexes[d],[g]] --> "x", "y", "z"
51
+ ```
52
+
53
+ Indexes can be dynamically composed from variables and transclusions:
54
+
55
+ ```
56
+ [<jsondata>jsonindexes<variable>,{!!field}]
57
+ ```
58
+
59
+ Retrieving the indexes of JSON properties that are not objects or arrays will return nothing.
60
+
61
+ A subtlety is that the special case of a single blank operand is used to identify the root object. Thus:
62
+
63
+ ```
64
+ [<jsondata>jsonindexes[]] --> "a", "b", "c", "d"
65
+ ```
@@ -0,0 +1,74 @@
1
+ created: 20220611104737314
2
+ modified: 20220611104737314
3
+ tags: [[Filter Operators]] [[JSON Operators]]
4
+ title: jsontype Operator
5
+ caption: jsontype
6
+ op-purpose: retrieve the type of a property from JSON strings
7
+ op-input: a selection of JSON strings
8
+ op-parameter: one or more indexes of the property whose type is to be retrieved
9
+ op-output: the types of each of the retrieved properties
10
+
11
+ <<.from-version "5.2.4">> See [[JSON in TiddlyWiki]] for background.
12
+
13
+ The <<.op jsontype>> operator is used to retrieve the type of a property in JSON data. See also the following related operators:
14
+
15
+ * <<.olink jsonget>> to retrieve the values of a property in JSON data
16
+ * <<.olink jsonindexes>> to retrieve the names of the fields of a JSON object, or the indexes of a JSON array
17
+ * <<.olink jsonextract>> to retrieve a JSON value as a string of JSON
18
+
19
+ JSON supports the following data types:
20
+
21
+ * ''string'' - a Unicode string
22
+ * ''number'' - a floating point number
23
+ * ''boolean'' - Boolean value (true or false)
24
+ * ''array'' - an array of values
25
+ * ''object'' - an object of name/value pairs
26
+ * ''null'' - a special type representing a missing value
27
+
28
+ Properties within a JSON object are identified by a sequence of indexes. In the following example, the value at `[a]` is `one`, and the value at `[d][f][0]` is `five`.
29
+
30
+ ```
31
+ {
32
+ "a": "one",
33
+ "b": "",
34
+ "c": "three",
35
+ "d": {
36
+ "e": "four",
37
+ "f": [
38
+ "five",
39
+ "six",
40
+ true,
41
+ false,
42
+ null
43
+ ],
44
+ "g": {
45
+ "x": "max",
46
+ "y": "may",
47
+ "z": "maize"
48
+ }
49
+ }
50
+ }
51
+ ```
52
+
53
+ The following examples assume that this JSON data is contained in a variable called `jsondata`.
54
+
55
+ The <<.op jsontype>> operator uses multiple operands to specify the indexes of the property whose type is to be retrieved:
56
+
57
+ ```
58
+ [<jsondata>jsontype[a]] --> "string"
59
+ [<jsondata>jsontype[d]] --> "object"
60
+ [<jsondata>jsontype[d],[f]] --> "array"
61
+ [<jsondata>jsontype[d],[f],[2]] --> "boolean"
62
+ ```
63
+
64
+ Indexes can be dynamically composed from variables and transclusions:
65
+
66
+ ```
67
+ [<jsondata>jsontype<variable>,{!!field},[0]]
68
+ ```
69
+
70
+ A subtlety is that the special case of a single blank operand is used to identify the root object. Thus:
71
+
72
+ ```
73
+ [<jsondata>jsontype[]] --> "object"
74
+ ```
@@ -1,16 +1,12 @@
1
1
  created: 20131129090249275
2
- modified: 20200507203622933
2
+ modified: 20220819041016415
3
3
  tags: [[Working with TiddlyWiki]]
4
4
  title: GettingStarted
5
5
  type: text/vnd.tiddlywiki
6
6
 
7
- The easiest way to use TiddlyWiki is to sign up for a free account with [[Tiddlyhost]], an independently run community service:
7
+ The easiest way to use ~TiddlyWiki is to sign up for a free account with [[Tiddlyhost|https://tiddlyhost.com/]], an independently run community service. If you find Tiddlyhost useful, please consider [[donation or sponsorship|https://tiddlyhost.com/donate]].
8
8
 
9
- https://tiddlyhost.com/
10
-
11
- If you find Tiddlyhost useful, please consider [[donation or sponsorship|https://tiddlyhost.com/donate]].
12
-
13
- Click here to download an empty copy of TiddlyWiki: {{$:/editions/tw5.com/snippets/download-empty-button}}
9
+ Click here to download an empty copy of ~TiddlyWiki: {{$:/editions/tw5.com/snippets/download-empty-button}}
14
10
 
15
11
  The next step is to choose a method for saving changes. There's a wide variety of methods available, with different features and limitations. Click on the badge for a method to see more information about it. You can also click on one of the platform filters to restrict the listing to methods that work with that platform.
16
12
 
@@ -1,32 +1,39 @@
1
1
  created: 20130822170200000
2
- list: [[A Gentle Guide to TiddlyWiki]] [[Discover TiddlyWiki]] [[Some of the things you can do with TiddlyWiki]] [[Ten reasons to switch to TiddlyWiki]] Examples [[What happened to the original TiddlyWiki?]] [[HelloThumbnail - TWEUM2017]]
3
- modified: 20220802122551819
2
+ list: [[A Gentle Guide to TiddlyWiki]] [[Discover TiddlyWiki]] [[Some of the things you can do with TiddlyWiki]] [[Ten reasons to switch to TiddlyWiki]] Examples [[What happened to the original TiddlyWiki?]]
3
+ modified: 20221213163110439
4
4
  tags: TableOfContents
5
5
  title: HelloThere
6
6
  type: text/vnd.tiddlywiki
7
7
 
8
- ''Have you ever had the feeling that your head is not quite big enough to hold everything you need to remember?''
9
-
10
- Welcome to TiddlyWiki, a unique [[non-linear|Philosophy of Tiddlers]] notebook for [[capturing|Creating and editing tiddlers]], [[organising|Structuring TiddlyWiki]] and [[sharing|Sharing your tiddlers with others]] complex information.
8
+ !! ''Welcome to TiddlyWiki, a unique [[non-linear|Philosophy of Tiddlers]] notebook for [[capturing|Creating and editing tiddlers]], [[organising|Structuring TiddlyWiki]] and [[sharing|Sharing your tiddlers with others]] complex information''
11
9
 
12
10
  Use it to keep your [[to-do list|TaskManagementExample]], to plan an [[essay or novel|"TiddlyWiki for Scholars" by Alberto Molina]], or to organise your wedding. Record every thought that crosses your brain, or build a flexible and responsive website.
13
11
 
14
- <div style="font-size:0.7em;text-align:center;margin-top:2em;margin-bottom:2em;">
15
- <<list-thumbnails filter:"[tag[HelloThumbnail]]" width:"168" height:"95">>
12
+ Unlike conventional online services, TiddlyWiki lets you choose where to keep your data, guaranteeing that in the decades to come you will [[still be able to use|Future Proof]] the notes you take today.
13
+
14
+ !! ''Find Out More''
15
+
16
+ <div class="tc-cards">
17
+ <$list filter="[tag[HelloThumbnail]]">
18
+ <$macrocall $name="flex-card" captionField="caption" descriptionField="text"/>
19
+ </$list>
16
20
  </div>
17
21
 
18
- Unlike conventional online services, TiddlyWiki lets you choose where to keep your data, guaranteeing that in the decades to come you will [[still be able to use|Future Proof]] the notes you take today.
22
+ !! ''~TiddlyWiki Hubs''
19
23
 
20
- <div style="font-size:0.7em;text-align:center;margin:3em auto;">
24
+ <div class="tc-cards" style="font-size:0.7em;text-align:center;margin:3em auto;">
21
25
  <a href="https://talk.tiddlywiki.org/" class="tc-btn-big-green" style="border-radius:4px;background-color:#FF8C19;" target="_blank" rel="noopener noreferrer">
22
26
  {{$:/core/images/help}} ~TalkTW
23
27
  </a>
24
28
  <a href="https://www.youtube.com/c/JeremyRuston" class="tc-btn-big-green" style="border-radius:4px;background-color:#e52d27;" target="_blank" rel="noopener noreferrer">
25
29
  {{$:/core/images/video}} ~YouTube
26
30
  </a>
27
- <a href="https://twitter.com/TiddlyWiki" class="tc-btn-big-green" style="border-radius:4px;background-color:#5E9FCA;" target="_blank" rel="noopener noreferrer">
31
+ <a href="https://twitter.com/TiddlyWiki" class="tc-btn-big-green" style="border-radius:4px;background-color:#1DA1F2;" target="_blank" rel="noopener noreferrer">
28
32
  {{$:/core/images/twitter}} Twitter
29
33
  </a>
34
+ <a rel="me" href="https://fosstodon.org/@TiddlyWiki" class="tc-btn-big-green" style="border-radius:4px;background-color:#2b90d9;" target="_blank" rel="noopener noreferrer">
35
+ {{$:/core/images/globe}} Mastodon
36
+ </a>
30
37
  <a href="https://github.com/Jermolene/TiddlyWiki5" class="tc-btn-big-green" style="border-radius:4px;background-color:#444;" target="_blank" rel="noopener noreferrer">
31
38
  {{$:/core/images/github}} ~GitHub
32
39
  </a>
@@ -35,16 +42,10 @@ Unlike conventional online services, TiddlyWiki lets you choose where to keep yo
35
42
  </a>
36
43
  </div>
37
44
 
38
- <<<.tc-big-quote
39
- ''The ~TiddlyWiki is the best software I've ever found for organising my ideas.''
40
-
41
- It's well worth spending an hour or so playing with it to see how it can help you. This will be time well-spent and will change how you think and how you organise your ideas.
42
- <<< [[Joe Armstrong, Co-inventor of Erlang|https://joearms.github.io/]]
43
-
44
- <<<.tc-big-quote
45
- ''~TiddlyWiki gets a Gearhead rating of 6 out of 5 (it's that good).''
46
-
47
- Finding code that works flawlessly after just two or three years is magical enough but after seven years?!
48
- <<< [[Mark Gibbs, Network World|http://www.networkworld.com/article/3028098/open-source-tools/tiddlywiki-a-free-open-source-wiki-revisited.html]]
45
+ !! ''Testimonials & Reviews''
49
46
 
50
- <div style="font-size:0.7em;text-align:center;margin:3em auto;">{{Product Hunt Link}}</div>
47
+ <div class="tc-cards">
48
+ <$list filter="[tag[Testimonial]]">
49
+ <$macrocall $name="flex-card" class="tc-card-quote" captionField="caption" descriptionField="text"/>
50
+ </$list>
51
+ </div>
@@ -1,5 +1,5 @@
1
1
  created: 20150414070451144
2
- list: [[HelloThumbnail - Introduction Video]] [[HelloThumbnail - Gentle Guide]] [[HelloThumbnail - Grok TiddlyWiki]] [[HelloThumbnail - Firefox Apocalypse]] [[HelloThumbnail - Latest Version]] [[HelloThumbnail - TiddlyWikiLinks]] [[HelloThumbnail - TiddlyMap]] [[HelloThumbnail - HelpingTiddlyWiki]] [[HelloThumbnail - Developers]] [[HelloThumbnail - Classic]]
2
+ list: [[HelloThumbnail - Introduction Video]] [[HelloThumbnail - Grok TiddlyWiki]] [[HelloThumbnail - Latest Version]] [[HelloThumbnail - TiddlyWikiLinks]] [[HelloThumbnail - Developers]] [[HelloThumbnail - Funding]] [[HelloThumbnail - Marketplace]] [[HelloThumbnail - Federatial]]
3
3
  modified: 20150414070948246
4
4
  title: HelloThumbnail
5
5
  type: text/vnd.tiddlywiki
@@ -0,0 +1,10 @@
1
+ background-color: #EDB431
2
+ caption: How is ~TiddlyWiki Funded?
3
+ color: #ff0
4
+ image: Funding.png
5
+ link: Funding TiddlyWiki
6
+ tags: HelloThumbnail
7
+ title: HelloThumbnail - Funding
8
+ ribbon-text: NEW
9
+
10
+ Find out how you can help support ~TiddlyWiki financially
@@ -4,3 +4,5 @@ color: #D5B7EA
4
4
  image: Grok TiddlyWiki Banner
5
5
  caption: Grok ~TiddlyWiki
6
6
  link: "Grok TiddlyWiki" by Soren Bjornstad
7
+
8
+ Everything you need to know to get the best out of ~TiddlyWiki
@@ -6,3 +6,5 @@ icon: {{$:/core/images/video}}
6
6
  caption: Introduction to ~TiddlyWiki
7
7
  link: Introduction Video
8
8
  image: Introduction Video Thumbnail.jpg
9
+
10
+ Short video introducing basic ~TiddlyWiki concepts