1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-06-26 07:13:15 +00:00
Commit Graph

3352 Commits

Author SHA1 Message Date
Jeremy Ruston
9d9b00bdb5 Merge branch 'master' into single-tiddler-mode 2020-04-02 11:45:01 +01:00
Jeremy Ruston
f9638f46ca Fix release note typo 2020-04-01 12:54:25 +01:00
Jeremy Ruston
2027bd7582 Update release note 2020-04-01 12:49:35 +01:00
Jeremy Ruston
1154372a7b Update syncer to distinguish connection errors from other errors
We can automatically remove connection errors when things resume working
2020-03-31 10:47:17 +01:00
Jeremy Ruston
010483f705 Fix ActionPopupWidget example
Thanks @twmat

The example had been written while there was a bug that changed the state tiddler titles used by the sidebar
2020-03-30 20:43:17 +01:00
Jeremy Ruston
b95723a022
Fix syncer to handler errors properly (#4373)
* First commit

* Add throttling of saves

Now we refuse to save a tiddler more often than once per second.

* Wait for a timeout before trying again after an error

* Modest optimisations of isDirty() method

* Synchronise system tiddlers and deletions from the server

Fixes two long-standing issues:

* Changes to system tiddlers are not synchronised from the server to the browser
* Deletions of tiddlers on the server are not propagated to browser clients

* Make sure we update the dirty status even if there isn't a task to perform

* Replace save-wiki button with popup sync menu

* Remove the "Server" control panel tab

We don't need it with the enhanced sync dropdown

* Add indentation to the save-wiki button

* Fix spacing in dropdown menu items

* Switch between cloud icons according to dirty status

* Add a menu item to copy syncer logs to the clipboard

* Improve animated icon

* Remove indentation from save-wiki button

@pmario the annoying thing is that using `\trim whitespace` trims significant whitespace too, so it means we have to use <$text text=" "/> when we need a space that won't be trimmed. For the moment, I've removed the indentation but will keep thinking about it.

* Further icon, UI and copy text tweaks

Move the icons and styles from the core into the TiddlyWeb plugin

* Clean up PR diff

* Tweak animation durations

* Break the actions from the syncer dropdown into separate tiddlers

@pmario I think this makes things a bit easier to follow

* Refactor syncadaptor creation and logging

The goal is for the syncadaptor to be able to log to the same logger as the syncer, so that the "copy syncer logs to clipboard" data is more useful.

* Don't transition the dirty indicator container colour, just the SVG's colour

* Only trigger a sync for changes to tiddlers we're interested in

Otherwise it is triggered by the creation of the alert tiddlers used to display errors.

* Restore deleting local tiddlers removed from the server

(I had commented it out for some testing and accidentally commited it).

* Guard against missing adaptor info

* We still need to trigger a timeout when there was no task to process

* Avoid repeatedly polling for changes

Instead we only trigger a timeout call at if there is a pending task (ie a tiddler that has changed but isn't yet old enough to save).

* Lazy loading: include skinny versions of lazily loaded tiddlers in the index.html

* Introduce _is_skinny field for indicating that a tiddler is subject to lazy loading

* Remove savetrail plugin from prerelease

It doesn't yet work with the new syncer

* Make the savetrail plugin work again

* Clear outstanding alerts when synchronisation is restored

* Logger: only remove alerts from the same component

Missed off 9f5c0de07

* Make the saving throttle interval configurable (#4385)

After switching Bob to use the core syncer the throttle interval makes saving feel very sluggish compared to the message queue setup that I had before.
The editing lock that I use to prevent conflicts with multiple users doesn't go away until the save is completed, and with the 1 second delay it means that if you edit a tiddler and save it than you have to wait one second before you can edit it again.

* Tweaks to appearance of alerts

* Exclude temp tiddlers from offline snapshots

Otherwise alerts will persist

* Tweak appearance of status line in dropdown

* Update release note

* Web server: Don't include full path in error messages

Fixes #3724

* In change event handler check for deletions

* Disable the official plugin library when the tiddlyweb plugin is loaded

* Hide error details from browser for /files/ route

See https://github.com/Jermolene/TiddlyWiki5/issues/3724#issuecomment-565702492 -- thanks @pmario

* Revert all the changes to the relationship between the syncer and the syncadaptor

Previously we had some major rearrangements to make it possible for the syncadaptor to route it's logging to the logger used by the syncer. The motivation is so that the "copy logs to clipboard" button is more useful.

On reflection, changing the interface this drastically is undesirable from a backwards compatibility perspective, so I'm going to investigate other ways to achieve the logger sharing

* Make the tiddlyweb adaptor use the syncer's logger

So that both are availavble when copying the syncer logs to the clipboard

* Update release note

* Support setting port=0 to get an OS assigned port

Quite useful

* Update code comment

* UI: Use "Get latest changes from server" instead of "Refresh"

* Add getUpdatedTiddlers() method to syncadaptor API

See https://github.com/Jermolene/TiddlyWiki5/pull/4373#issuecomment-573579495

* Refactor revision handling within the syncer

Thanks @pmario

* Fix typo in tiddlywebadaptor

* Improve presentation of errors

See https://github.com/Jermolene/TiddlyWiki5/pull/4373#issuecomment-573695267

* Add docs for getTiddlerRevision()

* Remove unused error animation

* Update comment for GET /recipes/default/tiddlers/tiddlers.json

* Optimise SVG cloud image

* Add optional list of allowed filters for get all tiddlers route

An attempt to address @Arlen22's concern here:

https://github.com/Jermolene/TiddlyWiki5/pull/4373#pullrequestreview-342146190

* Fix network error alert text translatability

* Fix error code and logging for GET /recipes/default/tiddlers/tiddlers.json

Thanks @Arlen22

* Flip GET /recipes/default/tiddlers/tiddlers.json allowed filter handling to be secure by default

* Validate updates received from getUpdatedTiddlers()

* Add syncer method to force loading of a tiddler from the server

* Remove the release note update to remove the merge conflict

* Fix crash when there's no config section in the tiddlywiki.info file

* Use config tiddler title to check filter query (merge into fix-syncer) (#4478)

* Use config tiddler title to check filter query

* Create config-tiddlers-filter.tid

* Add config switch to enable all filters on GET /recipes/default/tiddlers/tiddlers.json

And update docs

* Fix bug when deleting a tiddler with a shadow

Reported by @kookma at https://github.com/Jermolene/TiddlyWiki5/pull/4373#issuecomment-604027528

Co-authored-by: jed <inmysocks@fastmail.com>
Co-authored-by: Arlen22 <arlenbee@gmail.com>
2020-03-30 15:24:05 +01:00
Jeremy Ruston
15b8545d72 Update release note 2020-03-30 14:30:09 +01:00
Jeremy Ruston
9ae2c15638 Merge branch 'tiddlywiki-com' 2020-03-30 14:29:55 +01:00
Jeremy Ruston
091bcfce7d Fix the datauri macro to work with _canonical_uri tiddlers 2020-03-30 10:55:37 +01:00
Rob Hoelz
ae04a425c0
Add backlinks indexer (#4421)
* Add tests for backlinks

* Add backlinks indexer

* Use backlinks indexer in getTiddlerBacklinks if available

* Extract link extraction into its own method

This way we can provide an arbitrary parse tree, rather than just a
title, which will allow us to compare lists of outgoing links between
versions of a single tiddler

* Use new extractLinks method in backlinks indexer

...rather than copy-pasting the implementation

* Remove ES6-isms

TiddlyWiki needs to work with browsers that only support ES5
2020-03-26 13:15:02 +00:00
Jeremy Ruston
6928842bbf Update docs for disabling drag and drop 2020-03-20 11:02:14 +00:00
Jeremy Ruston
cb52d709c2 Improve ability to disable drag and drop
Now we disable the draggable list macros too.
2020-03-20 10:46:17 +00:00
Cameron Fischer
561662782e
Fixes issue with #4504 and importvariable copying (#4518)
* Fixes issue with #4504 and importvariable copying

ImportVariables widget was using $tw.utils.extend to copy the
variables from temporary set widgets into itself. However,
$tw.utils.extend does NOT behave like Object.assign. It not only
copies all self-owned variables over, but also all variables
in that object's prototype chain. This led to some redundant copying,
and a problem where some variables might show up more than once
(like transclusion).

Fixed now. importvariables widget does its own copying, since it
can't rely on $tw.utils.extend to do the right job, and it can't
count on Object.assign to be there.

* Added test to prevent reversion of #4504

* Slight corrections to new importvariables test
2020-03-19 20:32:51 +00:00
Jeremy Ruston
c16c2fe5e6 Docs: Clarify Node.js docs 2020-03-18 11:57:58 +00:00
Jeremy Ruston
bc687e5783 Add a hidden setting for disabling the page dropzone 2020-03-15 14:46:33 +00:00
Simon Huber
22e6b20f50
Better readability for "Community" Tiddler with various ... (#4493)
... color palettes
2020-03-12 13:34:59 +00:00
twMat
2ad8d1790b
Update LinkWidget.tid (#4489) 2020-03-11 17:37:53 +00:00
Jeremy Ruston
cab9fd11dc Clarify docs on the path-prefix subcommand of the listen command 2020-03-11 17:19:21 +00:00
Jeremy Ruston
9b48a1c829 Introducing "Dynannotate" plugin for overlaying annotations 2020-03-11 16:55:19 +00:00
JesseWeinstein
d950591051
Mention importing process more explicitly (#3666)
* Mention importing process more explicitly

* Explicitly mention "images"

So this page shows up in a search for "images".

* Apply PR suggestions
2020-03-09 21:34:23 +00:00
Jeremy Ruston
a22438589e Remove unsafe externalimages build target from server edition
See #4484
2020-03-09 21:05:50 +00:00
Jeremy Ruston
6091b01386 Add hidden setting for default tiddler icon 2020-03-06 14:52:37 +00:00
Jeremy Ruston
24d2804799 Add action-popup widget
Fixes #4185
2020-03-03 12:03:32 +00:00
Jeremy Ruston
7ffe3fc91f Prerelease: Disable browser storage to make testing less confusing 2020-02-29 15:51:42 +00:00
Jeremy Ruston
e8aafdfb66 Update release note 2020-02-28 15:56:55 +00:00
Jeremy Ruston
0247d0d88b Disable sticky titles for the prerelease
Sadly, they don't play nicely with the new menu bar
2020-02-28 14:36:23 +00:00
Jeremy Ruston
ad2d4503e5 First commit of new Menu Bar plugin 2020-02-28 14:33:15 +00:00
Jeremy Ruston
4afde5a722 Enhance colour macro with a fallback to a configuration tiddler 2020-02-28 14:31:02 +00:00
saqimtiaz
5b3443947e
Update documentation for tabindex support for ButtonWidget (#4465)
Documentation for changes introduced in https://github.com/Jermolene/TiddlyWiki5/pull/4442
2020-02-23 11:27:49 +00:00
Jeremy Ruston
a339491cc0 Update release note
Better late than never
2020-02-19 14:28:27 +00:00
Jeremy Ruston
dbd2a340e0 Temporarily remove markdown plugin from prerelease
It's giving errors under Travis CI
2020-02-04 14:44:01 +00:00
Jeremy Ruston
005c584d85 First attempt at sharing plugin/edition 2020-02-04 14:06:59 +00:00
Jeremy Ruston
3df1f9c9d0 Extend jsontiddlers macro to generate unformatted output 2020-02-04 13:57:24 +00:00
twMat
9d2eff61ca
Docs: Update ViewWidget.tid (#4437) 2020-02-01 13:41:43 +00:00
Jeremy Ruston
b454e809f3 Docs: Fix typos in button widget docs 2020-01-31 17:15:09 +00:00
Mario Pietsch
db13e49724
More listops tests (#4409)
* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* make eslint happy

* add more listops tests

* new listops filter tests

* remove new-line

* make eslint happier.

* revert eslint settings
2020-01-31 14:09:06 +00:00
Cameron Fischer
aa817f66d2
Changed importVariable to store its own variables (#4108)
* Changed importVariable to store its ownvariables

Before, importVariables was creating a setWidget for every single variable it would find in its tiddlers, and it would create a long-ass call tree. Now, instead, it just accumulates the variables in itself.

* Can't use Object.assign

Learned the hardway while working on tw5-relink that Object.assign
doesn't exist in IE11. Using $tw.utils.extend instead.

* Retaining setWidget transclusion flexibility

* One more test to verify mixing sets and macros
2020-01-30 12:53:26 +00:00
Mario Pietsch
ba10b4fb00
Docs: bring tm-fold-xxx message docs on par with the code, that is executed. (#4353) 2020-01-30 12:50:19 +00:00
Mario Pietsch
151eed5c81
Docs: fix typos and font-size (#2795) 2020-01-30 12:49:37 +00:00
twMat
cead051c73
Docs: Update sign Operator.tid (#4426) 2020-01-29 17:18:33 +00:00
twMat
35178f41b0
Docs: Update length Operator.tid (#4428) 2020-01-29 17:14:02 +00:00
Jeremy Ruston
17fb43bd6f Introduction edition: fix some display issues
Two of the tiddlers incorporate content dynamically drawn from the core, and so the size of the tiddlers has increased as the core has grown.
2020-01-29 17:09:28 +00:00
Jeremy Ruston
b88bfda0b4 Merge branch 'master' into single-tiddler-mode 2020-01-20 13:15:39 +00:00
Brooks Boyd
b258afea0d Replace Markdown parsing library with Remarkable (#3876)
* Replace Markdown parsing library with Remarkable

* Fix handling of block-level elements

* Update documentation

* Add config options for Parser actions

* Add Config options for Remarkable library

* Match code style

* Update documentation

* Handle ordered lists and horizontal rules

* Update to v2.0.0 of Remarkable library
2020-01-20 13:13:36 +00:00
Jeremy Ruston
5f25b21c0d Introduce new "solo" storyview
It's a single tiddler view with no animation, hopefully more suitable for things like @kookma's presentation plugin.
2020-01-18 10:36:10 +00:00
Jeremy Ruston
f256b7791d Merge branch 'master' into single-tiddler-mode 2020-01-17 13:06:07 +00:00
Jeremy Ruston
66fc63ed7f Revert "Merge branch 'master' into single-tiddler-mode"
This reverts commit f703330962.
2020-01-17 13:01:39 +00:00
Jeremy Ruston
f703330962 Merge branch 'master' into single-tiddler-mode 2020-01-17 12:54:51 +00:00
TonyM
8145caa104 Add a new example that shows using all before to determine the nummeric position of a title in a list. (#4412)
See discussion https://groups.google.com/forum/?hl=en#!topic/tiddlywiki/wY6haW2cYMA
2020-01-14 16:55:53 +00:00
Jeremy Ruston
6732b3c0d9 Use match operator instead of prefix
Fixes #4407
2020-01-05 13:54:06 +00:00