From 051a468c631f017e9520f9bef91f7069b6e183c1 Mon Sep 17 00:00:00 2001 From: Simon Baird Date: Fri, 23 Apr 2021 12:45:44 -0400 Subject: [PATCH 01/18] Add info on TiddlyHost saving & revised TiddlySpot (#5622) I updated the English text only. Will need some help with the translations. Summary: - Mention that TiddlySpot is deprecated and doesn't allow site creation any more. Suggest using TiddlyHost instead. - Remove obsolete intructions about creating TiddlySpot sites. - Misc editing/rewording/tweaking of existing TiddlySpot info for tidiness and clarity. - Add new information about saving on TiddlyHost. - Add logos because why not.. Note: I usually prefer the non-camel case versions of Tiddlyspot and Tiddlyhost, but decided to go with the CamelCase WikiWords here to fit in with the existing conventions. --- .../tiddlers/saving/Saving on TiddlyHost.tid | 17 +++++++ .../tiddlers/saving/Saving on TiddlySpot.tid | 48 ++++++++----------- 2 files changed, 36 insertions(+), 29 deletions(-) create mode 100644 editions/tw5.com/tiddlers/saving/Saving on TiddlyHost.tid diff --git a/editions/tw5.com/tiddlers/saving/Saving on TiddlyHost.tid b/editions/tw5.com/tiddlers/saving/Saving on TiddlyHost.tid new file mode 100644 index 000000000..7cb9a1ec7 --- /dev/null +++ b/editions/tw5.com/tiddlers/saving/Saving on TiddlyHost.tid @@ -0,0 +1,17 @@ +caption: ~TiddlyHost +color: #29B6F6 +community-author: Simon Baird +created: 20210422191232572 +delivery: Service +description: Online service for creating and hosting TiddlyWikis +method: save +modified: 20210423003921468 +tags: Android Chrome Firefox [[Internet Explorer]] Linux Mac Opera PHP Safari Saving Windows iOS Edge +title: Saving on TiddlyHost +type: text/vnd.tiddlywiki + +[img width=140 [https://github.com/simonbaird/tiddlyhost/raw/main/rails/app/assets/images/logo-800.png]] + +[[TiddlyHost.com|https://tiddlyhost.com/]] is a hosting service for TiddlyWiki created by Simon Baird. Once you sign up and confirm your email you can create "sites", (i.e. ~TiddlyWikis), with support for online saving. Sites can be private or public, and you can optionally list them on the taggable and searchable [[TiddlyHost Hub|https://tiddlyhost.com/hub]] where they'll be discoverable by others. + +Unlike [[TiddlySpot|Saving on TiddlySpot]], [[TiddlyHost|https://tiddlyhost.com]] is secure, open source, and has proper support for TiddlyWiki5. It also allows uploading existing ~TiddlyWiki files, supports TiddlyWikiClassic, and lets you claim ownership of your ~TiddlySpot sites. For more information see the [[FAQ|https://github.com/simonbaird/tiddlyhost/wiki/FAQ]] and the [[About|https://tiddlyhost.com/about]] page. diff --git a/editions/tw5.com/tiddlers/saving/Saving on TiddlySpot.tid b/editions/tw5.com/tiddlers/saving/Saving on TiddlySpot.tid index 77361f307..f34daf59b 100644 --- a/editions/tw5.com/tiddlers/saving/Saving on TiddlySpot.tid +++ b/editions/tw5.com/tiddlers/saving/Saving on TiddlySpot.tid @@ -1,56 +1,46 @@ caption: ~TiddlySpot color: #29B6F6 -community-author: Simon Baird and Daniel Baird +community-author: Simon Baird & Daniel Baird created: 20130825213500000 delivery: Service -description: Free online service for hosting TiddlyWiki files +description: Online TiddlyWiki hosting. (Deprecated in favour of TiddlyHost) method: save -modified: 20200507202953380 +modified: 20210423004027196 tags: Android Chrome Firefox [[Internet Explorer]] Linux Mac Opera PHP Safari Saving Windows iOS Edge title: Saving on TiddlySpot type: text/vnd.tiddlywiki -[[TiddlySpot|http://tiddlyspot.com]] is a free hosting service for TiddlyWiki documents from Simon Baird and Daniel Baird. +---- +<<.warning "''Please note: ~TiddlySpot is in maintenance mode and no longer allows new sites to be created. Instead of ~TiddlySpot you can now use [[TiddlyHost|Saving on TiddlyHost]], a new service from the creator of ~TiddlySpot.''">> +---- +[img[https://raw.githubusercontent.com/simonbaird/tiddlyhost/main/rails/app/assets/images/tiddlyspot-banner-logo.png]] -! Setting up a TiddlyWiki on ~TiddlySpot -To set up a [[TiddlyWiki Classic|TiddlyWikiClassic]], you merely create a new wiki at http://tiddlyspot.com +[[TiddlySpot.com|http://tiddlyspot.com]] is a hosting service for TiddlyWiki created in 2006 by Simon Baird and Daniel Baird. -!!TiddlyWiki5 on ~TiddlySpot -~TiddlyWiki5 also functions well on ~TiddlySpot but this version is not offered directly in the ~TiddlySpot set-up. +In early 2021 it was superseded by [[TiddlyHost|Saving on TiddlyHost]], a new, secure, modern reimagining of ~TiddlySpot. Creating new sites on ~TiddlySpot is no longer supported, (though sites created in 2020 or earlier are still functional). -The simplest way to create a new ~TiddlySpot with ~TiddlyWiki5 is probably through the community created site http://tiddlywiki5.tiddlyspot.com +!! Security warning for ~TiddlySpot -Alternatively, you can upload an existing ~TiddlyWiki5 document from your local disc to ~TiddlySpot by following these steps: - -# Sign up for a new wiki at http://tiddlyspot.com/, and remember the wiki name and password -# Open your locally stored TiddlyWiki document in your browser -# Fill in the ~TiddlySpot wikiname and password in ''Saving'' tab of the ''control panel'' <<.icon $:/core/images/options-button>> -# Click the <<.icon $:/core/images/save-button>> ''save changes'' button. You should get a confirmation notification at the top right saying ''Saved wiki''. Saving can take several seconds if you're on a slow connection or working with a large wiki. -# Navigate to your ~TiddlySpot URL at http://{wikiname}.tiddlyspot.com/ - -Note that your password is sent unencrypted when using ~TiddlySpot. From http://faq.tiddlyspot.com/: +Note that your password is sent unencrypted when using ~TiddlySpot. From the [[FAQ|http://faq.tiddlyspot.com/]]: <<< ''Is Tiddlyspot secure?'' -No. Tiddlyspot does not use SSL/https. Your password is sent in clear text when uploading and when authenticating to access a private site. This means that your Tiddlyspot is vulnerable to packet sniffing and your password could be discovered by a malicious third party. Also your data is transmitted unencrypted when you view your site, even if it is a private site. For this reason please don't put sensitive information such as banking details in your Tiddlyspot and don't use a password that you use for other high security sites. +No. Tiddlyspot does not use SSL/https, so all ~Tiddlyspot web traffic is vulnerable to packet sniffing. This means your password and site data could be intercepted by a malicious third party. For this reason, please don't keep sensitive information in your ~TiddlySpot site, and don't use a password that you use for other web sites. <<< -! Problems with saving on ~TiddlySpot +!! Problems with saving on ~TiddlySpot -In case you run into this error when uploading a new or freshly upgraded local TiddlyWiki to ~TiddlySpot : +In case you run into this error when uploading a freshly upgraded local TiddlyWiki to ~TiddlySpot: <<< -Error while saving: - -Error:NS_ERROR_DOM_BAD_URI: Access to restricted URI denied +Error: NS_ERROR_DOM_BAD_URI: Access to restricted URI denied <<< The upgrade operation falls foul of a security restriction in Firefox. Until this can be resolved, we suggest using Chrome. -*# Use Chrome to open the local TiddlyWiki document you want to upload to ~TiddlySpot and follow the steps 1 through 5 described above -*# Once you've checked the ~TiddlySpot-hosted TiddlyWiki loads properly in Chrome, you should be able to access, edit and [[save using TiddlyFox|Saving with TiddlyFox]] again -* After you've uploaded your local document once, further editing and saving of the online version hosted on ~TiddlySpot should work with any modern browser of your choice. -** Don't forget to fill in the ~TiddlySpot wikiname and password in your ~TiddlySpot TiddlyWiki control panel for any new browser you want to use for saving changes +* Use Chrome to open the local TiddlyWiki document you want to upload to ~TiddlySpot and follow the steps 1 through 5 described at [[Upgrading]]. +* Once you've checked the ~TiddlySpot-hosted TiddlyWiki loads properly in Chrome, you should be able to access, edit and [[save using TiddlyFox|Saving with TiddlyFox]] again. +* After you've uploaded your local document once, further editing and saving of the online version hosted on ~TiddlySpot should work with any modern browser of your choice. (Don't forget to fill in the ~TiddlySpot password in your ~TiddlySpot TiddlyWiki control panel for any new browser you want to use for saving changes.) -* //See also : [[Upgrading]]// +//See also: [[Upgrading]]// From 792171c8fc8b1dbe4df095ef3678287ff7d822b1 Mon Sep 17 00:00:00 2001 From: Simon Baird Date: Sat, 24 Apr 2021 10:42:02 -0400 Subject: [PATCH 02/18] Two typo fixups related to surplus tilde chars (#5627) --- ...irebase TiddlyWiki5 for Google Firebase by Peter Neumark.tid | 2 +- editions/tw5.com/tiddlers/saving/Saving on TiddlySpot.tid | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/editions/tw5.com/tiddlers/community/resources/TW5-firebase TiddlyWiki5 for Google Firebase by Peter Neumark.tid b/editions/tw5.com/tiddlers/community/resources/TW5-firebase TiddlyWiki5 for Google Firebase by Peter Neumark.tid index ec5d60f58..0458b4a55 100644 --- a/editions/tw5.com/tiddlers/community/resources/TW5-firebase TiddlyWiki5 for Google Firebase by Peter Neumark.tid +++ b/editions/tw5.com/tiddlers/community/resources/TW5-firebase TiddlyWiki5 for Google Firebase by Peter Neumark.tid @@ -1,4 +1,4 @@ -caption: ~TW5-firebase +caption: TW5-firebase color: #FFEB3B community-author: Peter Neumark created: 20210115121027582 diff --git a/editions/tw5.com/tiddlers/saving/Saving on TiddlySpot.tid b/editions/tw5.com/tiddlers/saving/Saving on TiddlySpot.tid index f34daf59b..e65d171ae 100644 --- a/editions/tw5.com/tiddlers/saving/Saving on TiddlySpot.tid +++ b/editions/tw5.com/tiddlers/saving/Saving on TiddlySpot.tid @@ -26,7 +26,7 @@ Note that your password is sent unencrypted when using ~TiddlySpot. From the [[F <<< ''Is Tiddlyspot secure?'' -No. Tiddlyspot does not use SSL/https, so all ~Tiddlyspot web traffic is vulnerable to packet sniffing. This means your password and site data could be intercepted by a malicious third party. For this reason, please don't keep sensitive information in your ~TiddlySpot site, and don't use a password that you use for other web sites. +No. Tiddlyspot does not use SSL/https, so all ~TiddlySpot web traffic is vulnerable to packet sniffing. This means your password and site data could be intercepted by a malicious third party. For this reason, please don't keep sensitive information in your ~TiddlySpot site, and don't use a password that you use for other web sites. <<< !! Problems with saving on ~TiddlySpot From 41200ab6d76ef6cf9424c3a79a5e01b63ea95b05 Mon Sep 17 00:00:00 2001 From: Chris Nicoll Date: Thu, 29 Apr 2021 08:14:28 -0400 Subject: [PATCH 03/18] Fix #5310: docs for unique[] filter operator (#5651) Co-authored-by: clutterstack --- .../filters/examples/unique Operator (Examples).tid | 8 ++++++++ editions/tw5.com/tiddlers/filters/unique.tid | 10 ++++++++++ 2 files changed, 18 insertions(+) create mode 100644 editions/tw5.com/tiddlers/filters/examples/unique Operator (Examples).tid create mode 100644 editions/tw5.com/tiddlers/filters/unique.tid diff --git a/editions/tw5.com/tiddlers/filters/examples/unique Operator (Examples).tid b/editions/tw5.com/tiddlers/filters/examples/unique Operator (Examples).tid new file mode 100644 index 000000000..5a3f5d7c0 --- /dev/null +++ b/editions/tw5.com/tiddlers/filters/examples/unique Operator (Examples).tid @@ -0,0 +1,8 @@ +created: 20210216203925301 +modified: 20210217003209935 +tags: [[unique Operator]] [[Operator Examples]] +title: unique Operator (Examples) + +To remove duplicate entries from a list where deduplication has been prevented using the [[filter run prefix|Filter Expression]] `=`: + +<<.operator-example 1 """=[[E]] =[[A]] =[[B]] =[[C]] =[[C]] =[[D]] =[[C]] +[unique[]]""">> \ No newline at end of file diff --git a/editions/tw5.com/tiddlers/filters/unique.tid b/editions/tw5.com/tiddlers/filters/unique.tid new file mode 100644 index 000000000..672817968 --- /dev/null +++ b/editions/tw5.com/tiddlers/filters/unique.tid @@ -0,0 +1,10 @@ +caption: unique +op-input: a list of items +op-output: a list of unique items +op-parameter: ignored +op-purpose: remove all duplicate items from the current list +tags: [[Filter Operators]] [[Order Operators]] [[Listops Operators]] +title: unique Operator +type: text/vnd.tiddlywiki + +<<.operator-examples "unique">> From 9cd65efad9706ed60cbe4b0cd016704e4705540b Mon Sep 17 00:00:00 2001 From: ualich <44392621+ualich@users.noreply.github.com> Date: Thu, 6 May 2021 13:24:08 +0200 Subject: [PATCH 04/18] Signing the CLA (#5671) --- licenses/cla-individual.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/licenses/cla-individual.md b/licenses/cla-individual.md index c633abdbd..caf3df96a 100644 --- a/licenses/cla-individual.md +++ b/licenses/cla-individual.md @@ -449,3 +449,5 @@ J. Wilhelm, @jeremyredhead, 2021/01/27 Quentin Minster, @laomaiweng, 2021/03/10 Cindy Ruan, @cdruan, 2021/03/18 + +Urban Alič, @ualich, 2021/05/06 From e84f214280f72c0791004aa3b96f24ef91025897 Mon Sep 17 00:00:00 2001 From: "jeremy@jermolene.com" Date: Wed, 19 May 2021 11:08:48 +0100 Subject: [PATCH 05/18] Add link to @sobjornstad's "Grok TiddlyWiki" --- .../Grok TiddlyWiki by Soren Bjornstad.tid | 16 ++++++++++++++++ .../hellothere/A Gentle Guide to TiddlyWiki.tid | 7 +++++-- .../tiddlers/hellothere/HelloThumbnail.tid | 2 +- .../HelloThumbnail - Grok TiddlyWiki.tid | 6 ++++++ .../tw5.com/tiddlers/images/Grok TiddlyWiki.png | Bin 0 -> 96496 bytes .../tiddlers/images/Grok TiddlyWiki.png.meta | 3 +++ 6 files changed, 31 insertions(+), 3 deletions(-) create mode 100644 editions/tw5.com/tiddlers/community/resources/Grok TiddlyWiki by Soren Bjornstad.tid create mode 100644 editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Grok TiddlyWiki.tid create mode 100644 editions/tw5.com/tiddlers/images/Grok TiddlyWiki.png create mode 100644 editions/tw5.com/tiddlers/images/Grok TiddlyWiki.png.meta diff --git a/editions/tw5.com/tiddlers/community/resources/Grok TiddlyWiki by Soren Bjornstad.tid b/editions/tw5.com/tiddlers/community/resources/Grok TiddlyWiki by Soren Bjornstad.tid new file mode 100644 index 000000000..50f1972ef --- /dev/null +++ b/editions/tw5.com/tiddlers/community/resources/Grok TiddlyWiki by Soren Bjornstad.tid @@ -0,0 +1,16 @@ +created: 20210519110226889 +modified: 20210519110226889 +tags: [[Other Resources]] +title: "Grok TiddlyWiki" by Soren Bjornstad +type: text/vnd.tiddlywiki +url: https://groktiddlywiki.com/read/ + +This new textbook from Soren Bjornstad is highly recommended for learning ~TiddlyWiki. The presentation and design are also a first class example of using ~TiddlyWiki. + +From the site: + +> Grok ~TiddlyWiki is a textbook that helps you build a deep, lasting understanding of and proficiency with ~TiddlyWiki through a combination of detailed explanations, practical exercises, and spaced-repetition reviews of prompts called takeaways. + +{{!!url}} + + diff --git a/editions/tw5.com/tiddlers/hellothere/A Gentle Guide to TiddlyWiki.tid b/editions/tw5.com/tiddlers/hellothere/A Gentle Guide to TiddlyWiki.tid index ce3024414..9d2a93d34 100644 --- a/editions/tw5.com/tiddlers/hellothere/A Gentle Guide to TiddlyWiki.tid +++ b/editions/tw5.com/tiddlers/hellothere/A Gentle Guide to TiddlyWiki.tid @@ -1,5 +1,5 @@ created: 20150325170720682 -modified: 20150926171049725 +modified: 20210519110623819 tags: HelloThere title: A Gentle Guide to TiddlyWiki type: text/vnd.tiddlywiki @@ -16,4 +16,7 @@ How can you make ~TiddlyWiki work for you? We recommend you start with our intro <> -Also see [[TiddlyWiki Video Tutorials by Francis Meetze]] \ No newline at end of file +Also see: + +* [["Grok TiddlyWiki" by Soren Bjornstad]] +* [[TiddlyWiki Video Tutorials by Francis Meetze]] \ No newline at end of file diff --git a/editions/tw5.com/tiddlers/hellothere/HelloThumbnail.tid b/editions/tw5.com/tiddlers/hellothere/HelloThumbnail.tid index bb42aa6a7..f50bccca6 100644 --- a/editions/tw5.com/tiddlers/hellothere/HelloThumbnail.tid +++ b/editions/tw5.com/tiddlers/hellothere/HelloThumbnail.tid @@ -1,5 +1,5 @@ created: 20150414070451144 -list: [[HelloThumbnail - Introduction Video]] [[HelloThumbnail - Gentle Guide]] [[HelloThumbnail - Firefox Apocalypse]] [[HelloThumbnail - Latest Version]] [[HelloThumbnail - TiddlyWikiLinks]] [[HelloThumbnail - TiddlyMap]] [[HelloThumbnail - HelpingTiddlyWiki]] [[HelloThumbnail - Developers]] [[HelloThumbnail - Classic]] +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]] modified: 20150414070948246 title: HelloThumbnail type: text/vnd.tiddlywiki diff --git a/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Grok TiddlyWiki.tid b/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Grok TiddlyWiki.tid new file mode 100644 index 000000000..a8cb2d5be --- /dev/null +++ b/editions/tw5.com/tiddlers/hellothere/thumbnails/HelloThumbnail - Grok TiddlyWiki.tid @@ -0,0 +1,6 @@ +title: HelloThumbnail - Grok TiddlyWiki +tags: HelloThumbnail +color: #D5B7EA +image: Grok TiddlyWiki Banner +caption: Grok ~TiddlyWiki +link: "Grok TiddlyWiki" by Soren Bjornstad diff --git a/editions/tw5.com/tiddlers/images/Grok TiddlyWiki.png b/editions/tw5.com/tiddlers/images/Grok TiddlyWiki.png new file mode 100644 index 0000000000000000000000000000000000000000..1a2bec5783c244f2399a371ebae7d498c612f3cc GIT binary patch literal 96496 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 JPDHLkV1k`NmWTiV literal 0 HcmV?d00001 diff --git a/editions/tw5.com/tiddlers/images/Grok TiddlyWiki.png.meta b/editions/tw5.com/tiddlers/images/Grok TiddlyWiki.png.meta new file mode 100644 index 000000000..a0595cc9f --- /dev/null +++ b/editions/tw5.com/tiddlers/images/Grok TiddlyWiki.png.meta @@ -0,0 +1,3 @@ +title: Grok TiddlyWiki Banner +type: image/png +tags: picture From 07ac85d9fa985f6571a85068a81245293a3b7a76 Mon Sep 17 00:00:00 2001 From: Chris Nicoll Date: Fri, 21 May 2021 04:54:11 -0400 Subject: [PATCH 06/18] Add demo for keyboard-driven-input (#5710) --- ...nstration_ keyboard-driven-input Macro.tid | 121 ++++++++++++++++++ .../kdi-demo-configtid.tid | 6 + 2 files changed, 127 insertions(+) create mode 100644 editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/Demonstration_ keyboard-driven-input Macro.tid create mode 100644 editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/kdi-demo-configtid.tid diff --git a/editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/Demonstration_ keyboard-driven-input Macro.tid b/editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/Demonstration_ keyboard-driven-input Macro.tid new file mode 100644 index 000000000..519f01c0f --- /dev/null +++ b/editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/Demonstration_ keyboard-driven-input Macro.tid @@ -0,0 +1,121 @@ +created: 20210222140234737 +modified: 20210520174049056 +tags: Learning +title: Demonstration: keyboard-driven-input Macro +type: text/vnd.tiddlywiki + +\define allshortcuts(descriptor) +<$wikify name=scutlist text=<> > +<$list filter="[split[ ]join[ or ]addprefix[]addsuffix[]]" variable=scts><> + +\end + +\define kdi-demo-textmacrocall() +``` +<$macrocall $name=keyboard-driven-input + tiddler="$(tiddler)$" + storeTitle="$(storeTitle)$" + selectionStateTitle="$(selectionStateTitle)$" + configTiddlerFilter="$(configTiddlerFilter)$" + /> +``` +\end + +<$vars configTiddlerFilter="[[kdi-demo-configtid]]" tiddler="kdi-demo-tiddler" storeTitle="kdi-demo-storeTitle" selectionStateTitle="kdi-demo-selectionStateTitle" > + +The [[keyboard-driven-input Macro]] is used to create filtered lists that update as the user types. It also allows navigating the lists, and invoking macros using list items, with the keyboard. + +It consists of an ''[[edit-text widget|EditTextWidget]]'' wrapped in [[keyboard widgets|KeyboardWidget]]. There are <<.def keyboard>> widgets to listen for `((input-accept))`, `((input-accept-variant))`, and `((input-cancel))` keyboard shortcuts, but there is no default behaviour in response to these events; macros must be written to suit the use-case. There is also no default visualisation of the filtered options list. + +!!Types of keyboard input handled by the <<.var keyboard-driven-input>> macro: + +!!!Non-configurable: + +The following keyboard events invoke macros defined alongside <<.var keyboard-driven-input>> in [[$:/core/macros/keyboard-driven-input]]. + +|Input |Purpose |Macro |h +|typing input |composing a string to be used within list filters |<<.var keyboard-input-actions>> | +|`((input-up))` (<>) |temporarily selecting the previous item in the filtered list |<<.var input-next-actions>> with parameters <<.param afterOrBefore>>=`"before"`, <<.param reverse>>=`"reverse[]"` | +|`((input-down))` (<>) |temporarily selecting the next item in the filtered list |<<.var input-next-actions>> with <<.param afterOrBefore>>=`"after"`, <<.param reverse>>=`""` | + +All of the above actions generate or modify data which <<.var keyboard-driven-input>> keeps in tiddlers specified using the macro's parameters. The data can then be accessed not only by the macros invoked by keyboard shortcuts, but also outside of these, e.g. a macro to display the filtered list(s). + +!!!Configurable through parameters: + +The following keyboard events invoke macros whose names are specified in parameters to <<.var keyboard-driven-input>>. The intended purpose is suggested by the parameter name, but there are no default macros defined within [[$:/core/macros/keyboard-driven-input]]. + +|[[Keyboard shortcut descriptor |Keyboard Shortcut Descriptor]] |Key combination |Parameter |h +|`((input-accept))` |<> |<<.param inputAcceptActions>> | +|`((input-accept-variant))` |<> |<<.param inputAcceptVariantActions>> | +|`((input-cancel))` |<> |<<.param inputCancelActions>> | + +<<.var keyboard-driven-input>> can be seen in action as part of various core features in TiddlyWiki, e.g.: the [[search feature|Searching in TiddlyWiki]], the [[tag-picker Macro]], and dropdown interfaces in the [[Editor toolbar]] such as [[Insert link]]. + +!!Minimal ingredients for a demonstration + +Keeping in mind that the <<.var keyboard-driven-input>> macro does not, by itself, display list results, or do anything with a selected option, a minimal demonstration of the <<.var keyboard-driven-input>> macro requires: + +# ''a tiddler, containing a filter'' whose results depend on the user's text input, to generate the options from which the user can select +# ''several parameters:'' +#*''a filter'' to return the title of the tiddler where the filter described in step 1 can be found, and +#*''tiddler titles'' to use for storing state information in response to input events. These tiddlers do not need to exist already. If they do exist, the <<.var keyboard-driven-input>> macro will change their contents. + +!!The search filter(s) + +By default, <<.var keyboard-driven-input>> will look for filters in the <<.field first-search-filter>> and <<.field second-search-filter>> fields of a tiddler (whose title is specified by a parameter discussed below). + +This filter can refer to a variable called <<.var userInput>>, which shows the contents of the <<.def edit-text>> widget, as stored in a state tiddler (discussed below), at the time of the latest <> or <> event. + +''Note:'' If this filter is to be referred to in a context outside the <<.var keyboard-driven-input>> macro (such as in a popup showing the filtered options), the variable <<.var userInput>> has to be defined in those contexts as well (by reading it from a state tiddler). + +!!Minimal parameters + +|Parameter name |Notes |h +|<<.param configTiddlerFilter>> |This is a filter, rather than a tiddler title, allowing conditional behaviour (e.g. checking for an active tab, or preferring a filter that may not be present, with a fallback).
The title returned must belong to an existing tiddler, containing at least one filter with which <<.var keyboard-driven-input>> can generate its results list. | +|<<.param tiddler>> |This tiddler contains either the typed input, or the instantaneous result selection, depending upon the most recent event. It is updated with each keystroke in the ''edit-text'' widget, //and// when the user uses the <> or <> key to cycle through filtered results. | +|<<.param storeTitle>> |This tiddler always reflects the user input (transcluded from the tiddler <<.param tiddler>> after each keystroke into the ''edit-text'' widget). | +|<<.param selectionStateTitle>> |This tiddler is updated on <> or <> events and contains either the user input with the suffix `-userInput`, or the instantaneous selection with the suffix `-primaryList` or `-secondaryList`, depending on which of up to two filters generated the list it came from. | + +!!Demonstration setup + +I have created a tiddler called <$list filter=<> /> and put the following filter into its <<.field first-search-filter>> field: + +<$list filter=<> ><$text text={{!!first-search-filter}}/>. + +This filters for non-system tiddlers whose titles contain the text the user has typed. + +To use the above filter with <<.var keyboard-driven-input>>, the value of the parameter <<.param configTiddlerFilter>> should be a filter that returns <$list filter=<> />. + +I can select <<.param tiddler>>, <<.param storeTitle>>, and <<.param selectionStateTitle>> fairly arbitrarily (just making sure not to use titles of tiddlers that I do not want changed). + +This demonstration can now be invoked with the following macro call: + +<> + +!!Demo + +Try typing in here: <$macrocall $name=keyboard-driven-input + tiddler=<> + storeTitle=<> + selectionStateTitle=<> + configTiddlerFilter=<> + /> + +Observe the changes in the various state tiddlers in the below table. Use <> and <> keys to navigate among filter results. If nothing changes, try a shorter input to widen the filter. If the input has zero length, the list will contain all non-system tiddlers. + +@@.tablestyle + +|Parameter name |Tiddler title |Contents of <<.field text>> field of the tiddler |h +|<<.param tiddler>> |{{{[]}}} |

<$text text={{{[get[text]]}}}/>
| +|<<.param storeTitle>> |{{{[]}}} |
<$text text= {{{[get[text]]}}}/>
| +|<<.param selectionStateTitle>> |{{{[]}}} |
<$text text={{{[get[text]]}}}/>
| +@@ + +The <<.var keyboard-driven-input>> macro has many parameters available, including all the attributes of the enclosed ''edit-text'' widget, which make it very flexible in how it is used and how results can be displayed and interacted with. + +See also: [[Customising search results]] and [[$:/core/ui/DefaultSearchResultList]] + + \ No newline at end of file diff --git a/editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/kdi-demo-configtid.tid b/editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/kdi-demo-configtid.tid new file mode 100644 index 000000000..f13ff6b15 --- /dev/null +++ b/editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/kdi-demo-configtid.tid @@ -0,0 +1,6 @@ +created: 20210131043724146 +first-search-filter: [!is[system]search:titlesort[]] +modified: 20210204012422020 +tags: +title: kdi-demo-configtid +type: text/vnd.tiddlywiki \ No newline at end of file From c8528fd1f761963348c4723033916d1499ce9bc6 Mon Sep 17 00:00:00 2001 From: Saq Imtiaz Date: Fri, 21 May 2021 11:02:35 +0200 Subject: [PATCH 07/18] Update keyboard-driven-input_Macro.tid (#5712) --- .../tw5.com/tiddlers/macros/keyboard-driven-input_Macro.tid | 3 +++ 1 file changed, 3 insertions(+) diff --git a/editions/tw5.com/tiddlers/macros/keyboard-driven-input_Macro.tid b/editions/tw5.com/tiddlers/macros/keyboard-driven-input_Macro.tid index 720e612d1..8baff655c 100644 --- a/editions/tw5.com/tiddlers/macros/keyboard-driven-input_Macro.tid +++ b/editions/tw5.com/tiddlers/macros/keyboard-driven-input_Macro.tid @@ -20,3 +20,6 @@ The additional parameters are: |secondSearchFilterField |the field of the configTiddler where the second search-filter is stored. Defaults to <<.field second-search-filter>> | |filterMinLength |the minimum length of the user input after which items are filtered | +See [[Demonstration: keyboard-driven-input Macro]] for further guidance on using this macro. + + From 2f31eab8f41ab8cc94f34759262cb00cc28da9e6 Mon Sep 17 00:00:00 2001 From: Saq Imtiaz Date: Tue, 25 May 2021 23:16:02 +0200 Subject: [PATCH 08/18] Update docs for tabs macro (#5722) --- editions/tw5.com/tiddlers/macros/TabsMacro.tid | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/editions/tw5.com/tiddlers/macros/TabsMacro.tid b/editions/tw5.com/tiddlers/macros/TabsMacro.tid index b55e43545..310103e23 100644 --- a/editions/tw5.com/tiddlers/macros/TabsMacro.tid +++ b/editions/tw5.com/tiddlers/macros/TabsMacro.tid @@ -1,10 +1,9 @@ caption: tabs created: 20131228162203521 -modified: 20180408084453861 +modified: 20210525204556911 tags: Macros [[Core Macros]] title: tabs Macro type: text/vnd.tiddlywiki - The <<.def tabs>> [[macro|Macros]] presents a [[selection of tiddlers|Title Selection]] as a set of tabs that the user can switch between. The tabs display the <<.field caption>> field of a tiddler if it has one, or the tiddler's title otherwise. If specified, the tabs display the <<.field tooltip>> field of a tiddler as the respective button tooltip. @@ -28,7 +27,7 @@ By default the tabs are arranged horizontally above the content. To get vertical ;retain : Optionally, "yes" specifies that the content of the tabs should be retained when switching to another tab, avoiding re-rendering it (this can be useful to avoid video or audio sources unexpectedly resetting) ;actions -: Optionally, actions can be specified that are triggered when changing a tab +: Optionally, actions can be specified that are triggered when changing a tab. Within the actions, the title of the selected tab is available in the <<.var currentTab>> variable and the `currentTiddler` variable from outside the tabs macro is available in the <<.var save-currentTiddler>> ;explicitState : Optionally, an explicit state title can be specified. It will be preferred over the internally computed (qualified) state title From ca96f7f62b11ad8f1fe8578996a4fc4186174b36 Mon Sep 17 00:00:00 2001 From: Mario Pietsch Date: Tue, 25 May 2021 23:19:09 +0200 Subject: [PATCH 09/18] contain the long list inside a div which is 50% of vertical height (#5385) --- .../tiddlers/concepts/ShadowTiddlers.tid | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/editions/tw5.com/tiddlers/concepts/ShadowTiddlers.tid b/editions/tw5.com/tiddlers/concepts/ShadowTiddlers.tid index 3e1336c1f..014bb5fe4 100644 --- a/editions/tw5.com/tiddlers/concepts/ShadowTiddlers.tid +++ b/editions/tw5.com/tiddlers/concepts/ShadowTiddlers.tid @@ -1,11 +1,19 @@ -title: ShadowTiddlers -tags: Concepts -modified: 201308091623 +\define actions() +<$action-setfield $tiddler="$:/state/tab/moresidebar-1850697562" $field="text" $value="$:/core/ui/MoreSideBar/Shadows"/> +<$action-setfield $tiddler="$:/state/tab/sidebar--595412856" $field="text" $value="$:/core/ui/SideBar/More"/> +\end +\define click(text) +<$button actions=<>>$text$ +\end ShadowTiddlers are tiddlers that are loaded from within [[Plugins]]. Unlike ordinary tiddlers, they don't appear in most lists. ShadowTiddlers can be overridden with an ordinary tiddler of the same name. If that tiddler is subsequently deleted then the original shadow tiddler is automatically restored. -The current shadow tiddlers are: +!! Overridden Shadow Tiddlers -<$list filter="[all[shadows]sort[title]]"/> +<> + +!! Shadow Tiddlers + +A full list of shadow tiddlers can be found in the sidebar in the "More" -> "Shadows" tab From f342fdc41d4f9e5b469103df064c5fdf84959efe Mon Sep 17 00:00:00 2001 From: Mario Pietsch Date: Tue, 25 May 2021 23:19:28 +0200 Subject: [PATCH 10/18] improve setwidget examples and add a link to and from enlist operator (#5666) --- .../tiddlers/filters/enlist Operator.tid | 5 +- .../tiddlers/widgets/$__docs_anyField.tid | 8 ++ .../tw5.com/tiddlers/widgets/SetWidget.tid | 101 +++++++++++------- 3 files changed, 74 insertions(+), 40 deletions(-) create mode 100644 editions/tw5.com/tiddlers/widgets/$__docs_anyField.tid diff --git a/editions/tw5.com/tiddlers/filters/enlist Operator.tid b/editions/tw5.com/tiddlers/filters/enlist Operator.tid index 18df375f6..e45e97c2a 100644 --- a/editions/tw5.com/tiddlers/filters/enlist Operator.tid +++ b/editions/tw5.com/tiddlers/filters/enlist Operator.tid @@ -1,6 +1,6 @@ caption: enlist created: 20170221144241063 -modified: 20190610165246154 +modified: 20210505100241872 op-input: ignored op-neg-input: a [[selection of titles|Title Selection]] op-neg-output: those input titles that are <<.em not>> listed in <<.place L>> @@ -14,7 +14,7 @@ tags: [[Filter Operators]] [[Field Operators]] [[Selection Constructors]] [[Nega title: enlist Operator type: text/vnd.tiddlywiki -<<.tip " Literal filter operands cannot contain square brackets but you can work around the issue by using a variable:">> +<<.tip """Literal filter operands cannot contain square brackets but you can work around the issue by using a variable. ''Learn more at:'' [[SetWidget]] documentation under the heading "Filtered List Variable Assignment" """>> ``` <$set name="myList" value="first [[second with a space]] third"> @@ -22,5 +22,4 @@ type: text/vnd.tiddlywiki ... ``` - <<.operator-examples "enlist">> diff --git a/editions/tw5.com/tiddlers/widgets/$__docs_anyField.tid b/editions/tw5.com/tiddlers/widgets/$__docs_anyField.tid new file mode 100644 index 000000000..3e0c7f434 --- /dev/null +++ b/editions/tw5.com/tiddlers/widgets/$__docs_anyField.tid @@ -0,0 +1,8 @@ +created: 20210505094244703 +field: list +modified: 20210505094434740 +tags: +title: $:/docs/anyField +type: text/vnd.tiddlywiki + +This tiddler is needed for the last [[SetWidget]] example \ No newline at end of file diff --git a/editions/tw5.com/tiddlers/widgets/SetWidget.tid b/editions/tw5.com/tiddlers/widgets/SetWidget.tid index d34fa1658..12ed35176 100644 --- a/editions/tw5.com/tiddlers/widgets/SetWidget.tid +++ b/editions/tw5.com/tiddlers/widgets/SetWidget.tid @@ -1,6 +1,6 @@ caption: set created: 20131115182700000 -modified: 20180315165405442 +modified: 20210505095640228 tags: Widgets title: SetWidget type: text/vnd.tiddlywiki @@ -15,79 +15,106 @@ The content of the `<$set>` widget is the scope for the value assigned to the va |!Attribute |!Description | |name |The name of the variable to assign (defaults to "currentTiddler") | -|value |The value to assign to the variable if the filter is missing or not empty | +|value |The value to assign to the variable if the <<.attr filter>> attribute is missing or not empty | |tiddler |<<.from-version "5.1.15">> Optional title of the tiddler from which to read the value | |subtiddler |<<.from-version "5.1.16">> Optionally specifies the title of a subtiddler within a plugin tiddler identified by the ''tiddler'' attribute | |field |<<.from-version "5.1.15">> Optional field of the tiddler from which to read the value (only used if ''tiddler'' is used) | |index |<<.from-version "5.1.15">> Optional index of the tiddler from which to read the value (only used if ''tiddler'' is used) | -|filter |An optional filter to be evaluated and assigned to the variable (see below) | +|filter |An optional filter to be evaluated and assigned to the variable (see "Filtered List Variable Assignment" below). The variable can be used with the <<.olink enlist>> operator | |select |<<.from-version "5.1.14">> An optional zero-based index of the item to return from the filter output (see below) | |emptyValue |The value to assign to the variable if the specified value is missing or empty (see below) | <<.tip """If the value of your variable is enclosed in double square brackets this might indicate that you are returning a list of values from the filter. To use a single title from the filter output without the double square brackets see ''Filtered Item Variable Assignment'' below.""">> +! Examples + !! Simple Variable Assignment The simplest way of using set variable widget assigns a string to a variable. The following example assigns a literal string -``` -<$set name="myVariable" value="Some text"> +<<< + +<$macrocall $name='wikitext-example-without-html' +src='<$set name="myVariable" value="Some text"> <$text text=<>/> - -``` +' /> + +<<< Both the name and value attributes can be transcluded. For example: -``` -<$set name=<> value={{template!!text}}> -<$text text=<>/> - -``` +<<< + +<$macrocall $name='wikitext-example-without-html' +src='<$set name=anotherVariable value="myVariable"> + <$set name=<> value={{$:/language/DefaultNewTiddlerTitle}}> + <$text text=<>/> + +' /> + +<<< !! Conditional Variable Assignment This form of the set variable widget chooses one of two specified values according to whether a filter evaluates to an empty list. Here's an example that sets a variable according to whether the current tiddler is called "myMagicTitle": -``` -<$set name="myVariable" filter="[all[current]field:title[myMagicTitle]]" value="It's magic" emptyValue="It's not magic"> +<<< + +<$macrocall $name='wikitext-example-without-html' +src="""<$set name="myVariable" filter="[all[current]field:title[myMagicTitle]]" value="It's magic" emptyValue="It's not magic"> <$text text=<>/> - -``` +""" /> + +<<< !! Filtered List Variable Assignment This form of the set variable widget evaluates the filter and assigns the result to the variable as a space-separated list (using double square brackets for titles containing spaces). -``` -<$set name="myVariable" filter="[tag[HelloThere]]"> -<$text text=<>/> - -``` +<<< -!! Filtered Item Variable Assignment +<$macrocall $name='wikitext-example-without-html' +src='<$set name="myVariable" filter="[tag[HelloThere]]"> +<$text text=<>/> +' /> + +<<< + +!! Filtered Item Variable Assignment Single Element <<.from-version "5.1.14">> This form of the set variable widget evaluates the filter and assigns the specified result to the variable as a single item (ie, not using double square brackets for titles containing spaces). -``` -<$set name="myVariable" filter="[tag[HelloThere]]" select="0"> +<<< + +<$macrocall $name='wikitext-example-without-html' +src='<$set name="myVariable" filter="[tag[HelloThere]]" select="0"> <$text text=<>/> - -``` +'/> + +<<< !! Transcluded Variable Assignment <<.from-version "5.1.15">> This form of the set variable widget obtains the value to assign to the variable from a value in a tiddler field or index. For example: -``` -<$set name="myVariable" tiddler="HelloThere" field="text"> -<$text text=<>/> - -``` +<<< -The example above could also be written as `<$set name="myVariable" value={{HelloThere!!text}}>`. The advantage of using the ''tiddler'' attribute is that the tiddler title and field or index can themselves be computed. For example: - -``` -<$set name="myVariable" tiddler=<> field={{$:/currentField}}> +<$macrocall $name='wikitext-example-without-html' +src='<$set name="myVariable" tiddler="HelloThere" field="list"> <$text text=<>/> - -``` +'/> + +<<< + +The example above could also be written as `<$set name="myVariable" value={{HelloThere!!list}}>`. The advantage of using the ''tiddler'' attribute is that the tiddler title and field or index can themselves be computed. For example: + +<<< + +<$macrocall $name='wikitext-example-without-html' +src='<$set name="myTiddler" value="HelloThere"> + <$set name="myVariable" tiddler=<> field={{$:/docs/anyField!!field}}> + <$text text=<>/> + +'/> + +<<< From 8b8f654c9c641cb53092e641c0fdd3a3788d3060 Mon Sep 17 00:00:00 2001 From: Joe Bordes Date: Sun, 30 May 2021 19:47:34 +0200 Subject: [PATCH 11/18] Signing the CLA (#5730) --- licenses/cla-individual.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/licenses/cla-individual.md b/licenses/cla-individual.md index caf3df96a..e2b436769 100644 --- a/licenses/cla-individual.md +++ b/licenses/cla-individual.md @@ -451,3 +451,6 @@ Quentin Minster, @laomaiweng, 2021/03/10 Cindy Ruan, @cdruan, 2021/03/18 Urban Alič, @ualich, 2021/05/06 + +Joe Bordes, @joebordes, 2021/05/30 + From c4a7ae3164d293549ffc3016b8a6b3ada399344e Mon Sep 17 00:00:00 2001 From: "jeremy@jermolene.com" Date: Thu, 3 Jun 2021 14:14:11 +0100 Subject: [PATCH 12/18] Add demo of drag and drop from a standalone HTML file --- drag-and-drop-interop.html | 35 +++++++++++++++++++ editions/dev/tiddlers/HelloThere.tid | 1 + .../new/TiddlyWiki Drag and Drop Interop.tid | 15 ++++++++ .../dev/tiddlers/new/dragndropinterop.html | 35 +++++++++++++++++++ .../tiddlers/new/dragndropinterop.html.meta | 3 ++ .../tiddlers/new/save-dragndropinterop.tid | 3 ++ 6 files changed, 92 insertions(+) create mode 100644 drag-and-drop-interop.html create mode 100644 editions/dev/tiddlers/new/TiddlyWiki Drag and Drop Interop.tid create mode 100644 editions/dev/tiddlers/new/dragndropinterop.html create mode 100644 editions/dev/tiddlers/new/dragndropinterop.html.meta create mode 100644 editions/dev/tiddlers/new/save-dragndropinterop.tid diff --git a/drag-and-drop-interop.html b/drag-and-drop-interop.html new file mode 100644 index 000000000..ecd7aba12 --- /dev/null +++ b/drag-and-drop-interop.html @@ -0,0 +1,35 @@ + + + + + Drag and Drop Interoperability with TiddlyWiki Demo + + + +
+ Drag me to a TiddlyWiki window +
+ + + \ No newline at end of file diff --git a/editions/dev/tiddlers/HelloThere.tid b/editions/dev/tiddlers/HelloThere.tid index 8afc1b22c..021e0ad47 100644 --- a/editions/dev/tiddlers/HelloThere.tid +++ b/editions/dev/tiddlers/HelloThere.tid @@ -13,6 +13,7 @@ Welcome to the developer documentation for TiddlyWiki (https://tiddlywiki.com/). ** HookMechanism ** [[Using ES2016 for Writing Plugins]] ** [[Adding Babel Polyfill to TiddlyWiki]] +** [[TiddlyWiki Drag and Drop Interoperability]] * The original developer documentation from https://tiddlywiki.com: ** [[TiddlyWiki for Developers]] ** [[TiddlyWiki Coding Style Guidelines]] diff --git a/editions/dev/tiddlers/new/TiddlyWiki Drag and Drop Interop.tid b/editions/dev/tiddlers/new/TiddlyWiki Drag and Drop Interop.tid new file mode 100644 index 000000000..6808de4dd --- /dev/null +++ b/editions/dev/tiddlers/new/TiddlyWiki Drag and Drop Interop.tid @@ -0,0 +1,15 @@ +title: TiddlyWiki Drag and Drop Interoperability + +It is straightforward to allow any HTML file to interoperate with TiddlyWiki's drag and drop implementation. + +This example shows how to attach draggable data to a DOM element. The data is provided in two different forms: + +* the string data is used if the element is dragged onto a text editing area +* the tiddler data is used if the element is dragged into TiddlyWiki's import area + +<$button> +<$action-sendmessage $message="tm-download-file" $param="$:/dev/save/dragndropinterop" filename="index.html"/> +Download this sample code + + +<$codeblock code={{DragAndDropInterop}} language="text/html"/> diff --git a/editions/dev/tiddlers/new/dragndropinterop.html b/editions/dev/tiddlers/new/dragndropinterop.html new file mode 100644 index 000000000..ecd7aba12 --- /dev/null +++ b/editions/dev/tiddlers/new/dragndropinterop.html @@ -0,0 +1,35 @@ + + + + + Drag and Drop Interoperability with TiddlyWiki Demo + + + +
+ Drag me to a TiddlyWiki window +
+ + + \ No newline at end of file diff --git a/editions/dev/tiddlers/new/dragndropinterop.html.meta b/editions/dev/tiddlers/new/dragndropinterop.html.meta new file mode 100644 index 000000000..d4adb96b9 --- /dev/null +++ b/editions/dev/tiddlers/new/dragndropinterop.html.meta @@ -0,0 +1,3 @@ +title: DragAndDropInterop +type: text/html + diff --git a/editions/dev/tiddlers/new/save-dragndropinterop.tid b/editions/dev/tiddlers/new/save-dragndropinterop.tid new file mode 100644 index 000000000..3e9eab89f --- /dev/null +++ b/editions/dev/tiddlers/new/save-dragndropinterop.tid @@ -0,0 +1,3 @@ +title: $:/dev/save/dragndropinterop + +<$view tiddler="DragAndDropInterop" field="text"/> From a70b26cd55ec79b4f9dc659622144e1a00c2901e Mon Sep 17 00:00:00 2001 From: Frank Date: Wed, 9 Jun 2021 22:32:31 +0200 Subject: [PATCH 13/18] Sign the CLA (#5774) --- licenses/cla-individual.md | 1 + 1 file changed, 1 insertion(+) diff --git a/licenses/cla-individual.md b/licenses/cla-individual.md index e2b436769..e30cf0cfe 100644 --- a/licenses/cla-individual.md +++ b/licenses/cla-individual.md @@ -454,3 +454,4 @@ Urban Alič, @ualich, 2021/05/06 Joe Bordes, @joebordes, 2021/05/30 +Frank Bruns-Ballhausen, @FBB-de, 2021/06/09 From 4c56bd771af0b9e52d2f20e93ada23ae426a46d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Gonz=C3=A1lez=20Rinc=C3=B3n?= Date: Mon, 14 Jun 2021 18:42:26 +0200 Subject: [PATCH 14/18] Signing the CLA (#5794) --- licenses/cla-individual.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/licenses/cla-individual.md b/licenses/cla-individual.md index e30cf0cfe..e276f1327 100644 --- a/licenses/cla-individual.md +++ b/licenses/cla-individual.md @@ -455,3 +455,5 @@ Urban Alič, @ualich, 2021/05/06 Joe Bordes, @joebordes, 2021/05/30 Frank Bruns-Ballhausen, @FBB-de, 2021/06/09 + +Álvaro González Rincón, @Alzacon, 2021/06/10 From dd6bd58140f3153eb1ba2aaa0ea3fdfc95d3fdac Mon Sep 17 00:00:00 2001 From: GHSRobert Ciang Date: Tue, 29 Jun 2021 19:09:16 +0800 Subject: [PATCH 15/18] Update TiddlyWiki in the Sky for Dropbox.tid (#5832) --- .../tiddlers/saving/TiddlyWiki in the Sky for Dropbox.tid | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/editions/tw5.com/tiddlers/saving/TiddlyWiki in the Sky for Dropbox.tid b/editions/tw5.com/tiddlers/saving/TiddlyWiki in the Sky for Dropbox.tid index 715a1f9c0..c3fbfcd2c 100644 --- a/editions/tw5.com/tiddlers/saving/TiddlyWiki in the Sky for Dropbox.tid +++ b/editions/tw5.com/tiddlers/saving/TiddlyWiki in the Sky for Dropbox.tid @@ -12,6 +12,6 @@ url: https://twcloud.github.io/tw5-dropbox/ Originally built by Jeremy Ruston and now maintained by Arlen Beiler, TiddlyWiki Cloud (formerly known as TiddlyWiki in the Sky for Dropbox) is an online service that lets you edit TiddlyWiki documents directly in your own Dropbox using just a browser. -It works with TiddlyWiki 5 and Classic. +It works with TiddlyWiki 5. As for TiddlyWiki Classic, the mainstream loader does not work, and a newer loader may work. https://twcloud.github.io/ From 54d8b8a373d0079ab338d72d4dd8030096d9c9a9 Mon Sep 17 00:00:00 2001 From: "Tejasvi S. Tomar" <45873379+tejasvi@users.noreply.github.com> Date: Tue, 29 Jun 2021 16:54:09 +0530 Subject: [PATCH 16/18] Correct term usage (#5417) --- .../tw5.com/tiddlers/features/Performance Instrumentation.tid | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/editions/tw5.com/tiddlers/features/Performance Instrumentation.tid b/editions/tw5.com/tiddlers/features/Performance Instrumentation.tid index 65296c033..e9171f190 100644 --- a/editions/tw5.com/tiddlers/features/Performance Instrumentation.tid +++ b/editions/tw5.com/tiddlers/features/Performance Instrumentation.tid @@ -18,7 +18,7 @@ The information above should be interpreted as follows: * mainRender is the time taken for the initial display of the page template * styleRefresh is the time taken to refresh the page stylesheet -* mainRender is the time taken to refresh the main page template +* mainRefresh is the time taken to refresh the main page template As an example, try switching between the sidebar tabs to compare how long they take to render. From 4a7f078abd95dbde73a5a4ab39c2723caf630c63 Mon Sep 17 00:00:00 2001 From: twMat Date: Sat, 3 Jul 2021 17:43:20 +0100 Subject: [PATCH 17/18] Update qualify.tid (#5845) superfluous blockquoting --- editions/tw5.com/tiddlers/macros/examples/qualify.tid | 2 -- 1 file changed, 2 deletions(-) diff --git a/editions/tw5.com/tiddlers/macros/examples/qualify.tid b/editions/tw5.com/tiddlers/macros/examples/qualify.tid index fc48ecf24..81a9764d0 100644 --- a/editions/tw5.com/tiddlers/macros/examples/qualify.tid +++ b/editions/tw5.com/tiddlers/macros/examples/qualify.tid @@ -15,6 +15,4 @@ eg="""
  • <>
"""/> -
{{$:/editions/tw5.com/macro-examples/qualify-transcluded}} -
From b95f6ca084ecc4b63a352a31da9c376551a58e91 Mon Sep 17 00:00:00 2001 From: RJ Skerry-Ryan Date: Sun, 4 Jul 2021 03:57:38 -0700 Subject: [PATCH 18/18] Signing the CLA (#5847) --- licenses/cla-individual.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/licenses/cla-individual.md b/licenses/cla-individual.md index e276f1327..16909354b 100644 --- a/licenses/cla-individual.md +++ b/licenses/cla-individual.md @@ -457,3 +457,5 @@ Joe Bordes, @joebordes, 2021/05/30 Frank Bruns-Ballhausen, @FBB-de, 2021/06/09 Álvaro González Rincón, @Alzacon, 2021/06/10 + +RJ Skerry-Ryan, @rryan, 2021/07/03