1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-12-29 11:30:28 +00:00
Commit Graph

2197 Commits

Author SHA1 Message Date
Jermolene
22b7400de8 Move making a data uri into reusable utilities 2015-03-18 11:40:09 +00:00
Jermolene
a4a9daa40b Extend wiki.makeTranscludeWidget() to control mode 2015-03-18 11:39:50 +00:00
Roma Hicks
55ee327885 Removed uneeded function but still converts TW5 Date strings. 2015-03-13 13:14:30 -05:00
Jermolene
550ad4a1a9 Partial fix for #1570
Stop the logger from creating alert tiddlers on the server. They
propagate to the client but are not deletable from the client because
they are in the `$:/temp` namespace.

cc @loleg
2015-03-12 22:35:03 +00:00
Jermolene
c33a17a475 Revert "sort unlisted tags by title"
Revert “sort unlisted tags by title”
a8ab08e8fa by @tobibeer

The problem was that this commit changed the order of stylesheet
processing. For background see:

https://groups.google.com/d/topic/tiddlywiki/BPuuSkG6siU/discussion
2015-03-11 19:17:14 +00:00
Jermolene
657c266522 Coding style tweaks 2015-03-10 20:04:34 +00:00
Jermolene
e80a08f43b Fix problem with custom tag in reveal widget 2015-03-10 16:59:25 +00:00
Jermolene
1808b1597e Support custom HTML element tags for reveal widget 2015-03-10 12:44:47 +00:00
Jermolene
64e1a76987 Prevent edit-text widget from generating unsafe elements 2015-03-10 12:34:50 +00:00
Jermolene
65d81921f9 Further fixes to scrolling behaviour 2015-02-25 20:24:07 +00:00
Jermolene
8d46c18fc7 Refine fix for #1526
The previous fix changed the scrolling behaviour such that it only
scrolled to the top of a tiddler if the tiddler was entirely offscreen.
It wasn’t entirely satisfactory because scrolling was prevented even if
only a few pixels of a tiddler are in view. This commit ensures that
the scroll does occur if less than 50 pixels of the target is in view
2015-02-25 19:09:53 +00:00
Jermolene
489bc7a50b Only scroll to top when tiddlers are completely off-screen
Fixes #1526
2015-02-25 19:01:40 +00:00
Jermolene
05c3de3245 Extend list widget to invoke storyview for refreshes 2015-02-23 11:24:03 +01:00
Jermolene
950a86c7b7 Extend link widget with additional attributes
Add “tabindex”, “draggable” and “tag” attributes
2015-02-23 11:23:44 +01:00
Jermolene
0da1f3f554 Extend list widget to pass refreshes to the story view 2015-02-23 11:17:00 +01:00
Jermolene
60e6b584bf Extend link widget with new attributes
Add “draggable”, “tag” and “tabindex” attributes to link widget.
2015-02-23 11:16:44 +01:00
Roma Hicks
a5591dc7a5 Update the sameday and eachday filter to accept ISO date strings. Extends coverage to fields that are not automatically converted to Date objects. 2015-02-21 11:39:03 -06:00
Jermolene
bba4794c0a Coding style updates
@welford there were some minor tweaks with whitespace, coalescing
consecutive var statements, camelcase rather than underscores in
variable names.
2015-02-20 22:17:28 +00:00
James Welford Anderson
1901702557 bug fix
Createdirectory is removed as $tw.utils.createFileDirectories does it's
work

Fixed a bug for when tv-get-export-path returns null.
2015-02-21 07:06:59 +09:00
James Welford Anderson
cf59e7a71b re-add outputpath variable 2015-02-21 06:49:34 +09:00
James Welford Anderson
ee6b6a0f0c add macros for custom statically exported paths/links/images
tv-get-export-path tells render tiddlers where to export files
tv-get-export-image-link tells images.js where to look for images
tv-get-export-link tells tells link.js where to look for links to other
exported tiddlers
2015-02-21 06:45:40 +09:00
Jermolene
3df341621d Alternative fix for unnecessary startup scrolling
@aelocson here’s an alternative fix for #981, as discussed in
https://github.com/Jermolene/TiddlyWiki5/commit/691e5719a4ff74a04d389bd1
26ba2a69e7651a2a#commitcomment-9848682

It does seem a lot nicer. It avoids the problem you raised, and also
avoids scrolling when a permalink is used.

I suspect that we’d need to make the hard-coded 50 pixels be
configurable.
2015-02-20 20:04:18 +00:00
Jermolene
ead6eb00d4 Revert "Merge pull request #1509 from welford/static_export_macro"
This reverts commit b2b8006b58, reversing
changes made to e7e16137b2.

@welford my apologies it turns out there are a couple of problems, I’ll
comment more on the pull request
2015-02-20 18:39:13 +00:00
Jeremy Ruston
b2b8006b58 Merge pull request #1509 from welford/static_export_macro
Static export macro for custom paths
2015-02-20 18:15:43 +00:00
Jermolene
9e9b9a3bf1 Avoid navigating to an empty title
Fixes #1515
2015-02-20 16:19:53 +00:00
Jermolene
1e9e1a1fdc Single quotes should be HTML encoded
As raised here:
https://groups.google.com/d/topic/tiddlywiki/nYvgcImvBt8/discussion
2015-02-20 16:09:38 +00:00
James W. Anderson
d1809f352c explicitly pass through source params
from the image/link widget to the respective static export macros
2015-02-17 07:11:00 +09:00
Jermolene
42d130d49d Revert #1496
The change affects the default display of the story river, reversing
the order of entries.
2015-02-16 19:17:10 +00:00
Jermolene
25442e349e Restore missing whitespace
Accidentally deleted in e1a825f6b9
2015-02-16 17:31:50 +00:00
Jeremy Ruston
e1a825f6b9 Merge pull request #1496 from tobibeer/just-fix-list-filter-no-refactoring
just fixes list filter, no further refactoring
2015-02-16 17:30:54 +00:00
Jermolene
68165af081 Revert #1330 ("implements list iterator variables")
As discussed on the ticket, there is a problem:

https://github.com/Jermolene/TiddlyWiki5/pull/1330#issuecomment-74339195
2015-02-13 22:42:36 +00:00
Jermolene
e386e26b2d Fix problems with $tw.utils.checkVersions()
Previous changes since 5.1.7 broke the documented semantics by no
longer returning true when the versions match. It affected the upgrade
process, making it impossible to upgrade to a later pre-release (ie
where the version numbers in the upgrade.html match those in the file
being upgraded).

Also reviewed and updated the calls to checkVersions.

@felixhayashi I think that this effectively reverts the change you
original submitted. Are you OK with it?
2015-02-12 23:04:20 +00:00
Tobias Beer
4991c4d6dc just fixes list filter, no further refactoring
previously did not correctly handle / match the source but only output
the list as is

replaces https://github.com/Jermolene/TiddlyWiki5/pull/1419
2015-02-11 12:01:57 +01:00
Jermolene
c9ab873ba3 Fixes problem with drag and drop in Safari
Fixes #1415

The problem was that encodeURI() doesn’t encode slashes, which are not
legal in a data URI, although only Safari was failing. We switch to
encodeURIComponent(), which does encode slashes
2015-02-11 10:07:10 +00:00
Jermolene
1924eda8a9 Improvements for #1483
* Rename the global to $tw.dragInProgress for clarity.
* Abort the dragenter so that we don’t get extraneous feedback during
the drag
2015-02-10 23:17:38 +00:00
Jeremy Ruston
1b87d9134b Merge pull request #1483 from tobibeer/592-no-drag-n-drop-to-same-location
prevents drag and drop import in same window
2015-02-10 23:04:45 +00:00
Jermolene
691e5719a4 Avoid unnecessary scrolling at startup
The main fix is removing the fallback navigation to the first tiddler
in story.js. Also required is the fix to the startup behaviour of
zoomin.js.

Fixes #981
2015-02-10 22:40:38 +00:00
Tobias Beer
dc23963525 using $tw.dragging to prevent dnd in same window
Anything missing?
2015-02-10 23:34:37 +01:00
Tobias Beer
30f2c06c9e Revert "prevents drag and drop import in same window"
This reverts commit 09afa8297a.
2015-02-10 23:33:19 +01:00
Astrid Elocson
fd84370d7a Default eachday to the modified field 2015-02-10 16:21:53 +00:00
Tobias Beer
09afa8297a prevents drag and drop import in same window
fixes #592

Introduces and preserves **_origin** field when using drag-and-drop —
bad idea? discard? different field name?

demo http://592.tiddlyspot.com
2015-02-09 23:49:04 +01:00
Jermolene
8dcd080cdd Style fix 2015-02-09 21:46:54 +00:00
Jeremy Ruston
9cf1f8f96b Merge pull request #1476 from tobibeer/fix-tm-delete-tiddler-doesnt-exist
Fix issue deleting non-existent tiddler
2015-02-09 21:46:08 +00:00
Jermolene
d7d560897d Correct case of getindex filter operator 2015-02-09 21:42:25 +00:00
James Welford Anderson
0b68428bc5 add image export path macro 2015-02-10 05:59:56 +09:00
Jermolene
8643278a45 Add support for an integrated plugin library
Fixes #1450

Provides support for an integrated plugin library that can be used to
install plugins from tiddlywiki.com directly to wikis hosted online or
offline. See the Plugins tab of Control Panel.

Todo:

* Error checking(eg libraryserver.js HTTP GET)
* Translatability
* Documentation
** $:/tags/ServerConnection
** savelibrarytiddlers command
2015-02-09 19:04:11 +00:00
Tobias Beer
ca6ab6388a no error when tiddler doesn't exist
Currently **tm-delete-tiddler** throws a red error box:

```
<$button>
<$action-sendmessage $message="tm-delete-tiddler" $param="DoesntExist"/>
delete non-existing
</$button>
```

**Uncaught TypeError: Cannot read property 'fields' of undefined**
2015-02-09 12:28:42 +01:00
Jermolene
aae56f20af Display warning banner when plugins are modified
Fixes #1455

@aelocson have I got the docs right for the new filter?
2015-02-08 19:40:15 +00:00
Jermolene
e18825e897 Fix problem with stringifying missing fields 2015-02-08 18:46:22 +00:00
Jeremy Ruston
68930f333a Merge pull request #1452 from tobibeer/getIndex-filter
getIndex filter
2015-02-07 11:53:07 +00:00
Roma Hicks
687d6350d4 Added class mechanism to checkbox widget. #1463 2015-02-06 01:02:01 -06:00
Tobias Beer
7ed5c3ccfc use extractTiddlerDataItem not parseTextReference 2015-02-04 01:49:31 +01:00
Jeremy Ruston
d340277cb2 Merge pull request #1392 from tobibeer/1387-fix-tiddlyspot-backup-url
Add resolvepath macro
2015-02-03 14:22:48 +00:00
Tobias Beer
32fd03d2f5 rename macro 2015-02-03 15:19:03 +01:00
Tobias Beer
e4bd0c8633 added documentation
temporary documentation demo:
http://goto.bplaced.net/tw5/5.1.7.html#ResolvePath
2015-02-03 15:18:38 +01:00
Tobias Beer
a8a0d0d09e renaming in one go didn't work 2015-02-03 14:50:37 +01:00
Tobias Beer
8746e1ede0 renamed and documentation
* renamed to all lowercase
* added documentation
* added examples
2015-02-03 14:50:16 +01:00
James Welford Anderson
4049affb31 initial pass at static export macros 2015-02-03 07:30:24 +09:00
Jim Lehmer
8cd0c2afcd Make sure all "get" access to $tw.config.fileExtensionInfo goes through a $tw.utils.getFileExtensionInfo helper function that ensures the parameter is cast to lowercase. Fixes #1418. 2015-02-01 12:33:40 -06:00
Tobias Beer
4a05bd10e9 renamed to resolvePath using $tw.utils.resolvePath
adapted ControlPanel / Saving accordingly
2015-01-29 00:38:08 +01:00
Tobias Beer
8b771555a5 initial commit
Is `wiki.parseTextReference()` the appropriate way?
2015-01-28 22:15:52 +01:00
Jeremy Ruston
4cd8466adb Merge pull request #1396 from ng110/master
Allow widget actions to propagate to children
2015-01-28 16:28:11 +00:00
ng110
a7a205a754 Update select.js 2015-01-28 16:00:34 +00:00
Jermolene
050b643948 Sandbox HTML iframes
Otherwise Firefox allows code in html tiddlers to access the main
window:

https://groups.google.com/d/topic/tiddlywiki/NwOI-QER2ig/discussion
2015-01-28 13:50:39 +00:00
Jeremy Ruston
08f6e7f624 Merge pull request #1378 from tobibeer/tag-button-sort-tagging
sort unlisted tags by title
2015-01-27 14:30:36 +00:00
Jeremy Ruston
01cd5302f3 Merge pull request #1389 from aelocson/issue-1346
Fix #1346: Quotes around filter steps
2015-01-27 13:55:12 +00:00
Jeremy Ruston
e87aea6e1f Merge pull request #1413 from tobibeer/1410-is-numeric
fix isNumeric in sortTiddlers in wiki.js
2015-01-26 21:00:26 +00:00
Tobias Beer
e9bdf6f542 trying to show the conditional nicely aligned 2015-01-26 19:58:00 +01:00
Astrid Elocson
8d9f1e7477 Catch syntax errors in regexp filters 2015-01-23 14:32:57 +00:00
Tobias Beer
8a3991a619 extracted number comparision function
and added missing brackets
2015-01-23 14:57:04 +01:00
Tobias Beer
122e16d39c putting the variables in the right scope 2015-01-23 12:24:47 +01:00
Tobias Beer
ad62d9a083 first attempt at fixing wrong sort order in nsort and nsortcs
not working yet, no idea why
2015-01-23 12:06:32 +01:00
Tobias Beer
e504530005 introduce serverpath macro
for now, computes path to backup directory, appending the relative path
of UploadBackupDir to the absolute one from the UploadURL

Also added example for store.php to hint
2015-01-23 11:26:14 +01:00
ng110
16fe9fd5ce Update select.js 2015-01-20 13:02:06 +00:00
ng110
f9c4f6898e Add capability for widgets to trigger all descendant action widgets, rather than just immediate children.
Preserves compatibility with existing invokeActions call in button widget by creating a separate 'invokeActionCall' function to carry out the recursion.  Triggering all descendants permits use of action widgets inside list widgets or macros.  Also makes it possible to add triggering capability to select widget.
2015-01-20 12:34:24 +00:00
Tobias Beer
6006ed0ecf added case-insensitivity using wiki.sortTiddlers 2015-01-17 12:02:54 +01:00
Tobias Beer
a8ab08e8fa sort unlisted tags by title
when the tiddlers are not listed in the list field, sort them by title
nonetheless, otherwise we get a real poor taglist from
**$:/core/ui/TagTemplate**
2015-01-17 11:40:33 +01:00
Astrid Elocson
07c1dcb685 Improve a couple of comments 2015-01-14 20:09:15 +00:00
Astrid Elocson
82c0152e04 Fix #1346: Quotes around filter steps 2015-01-14 20:06:51 +00:00
Jeremy Ruston
d624066e73 Merge pull request #1352 from welford/rendertiddlers
add "noclean" parameter to rendertiddlers
2015-01-11 19:58:05 +00:00
James Welford Anderson
e87dadd61d update docs change var name 2015-01-12 02:55:42 +09:00
Jeremy Ruston
948756cdde Merge pull request #1341 from tobibeer/autolink-system-tiddlers
autolinks system tiddlers
2015-01-11 16:25:53 +00:00
Jermolene
b768dc332b Refactor edition-info handling
Introducing new filters that can be used under Node.js
2015-01-11 15:00:54 +00:00
Jermolene
0fdfbc482c Add nwsaveas and param attributes to browse widget
These are for TiddlyDesktop, and only work under node-webkit
2015-01-11 14:20:34 +00:00
Tobias Beer
b43d4a33d6 simplified regexp
Ok, I think I've got it now. The following matches all...

1. starting with a literal `$:`
2. then any number of character not a whitespace, `<` or  `|`
3. closing with anything that is, again, not a whitespace, `<` or  `|`

Test here...

http://tbdemo.tiddlyspot.com/#Autolink%20System%20Tiddlers
2015-01-11 11:04:02 +01:00
James Welford Anderson
ddb8daa15a add noclean parameter
deletes directory by default
2015-01-11 06:44:56 +09:00
Jermolene
3657bbe920 Switch from addEventListener to onbeforeunload
This makes it possible for TiddlyDesktop to reuse these functions to
handle detecting unsaved changes
2015-01-10 18:08:12 +00:00
Jermolene
280909bb68 Fix crash for macros that return undefined
Fixes #1348
2015-01-10 13:36:43 +00:00
Tobias Beer
795a929187 create syslink.js, revert extlink.js
introduces new parser for system links
2015-01-09 23:51:07 +01:00
Jermolene
31824f043e Remove obsolete parameters 2015-01-09 20:45:16 +00:00
Tobias Beer
8ba3e8973e autolinks system tiddlers
enhanced extlink parser to cover system tiddler links

of course, only those without spaces in their title

didn't want to open up an extra parser for this as extlink has all the
basics
2015-01-08 21:26:48 +01:00
Felix Küppers
3b2882cb48 Update browser.js 2015-01-08 20:18:41 +01:00
Jermolene
b68276e219 Fix for serverside rendering 2015-01-06 18:19:55 +00:00
Jeremy Ruston
ea07b558a3 Merge pull request #1327 from aelocson/railroad-links
Links and transclusions in railroad diagrams
2015-01-06 13:58:27 +00:00
Jermolene
ec829180f4 Coding style clean up for #1330 2015-01-06 13:49:05 +00:00
Tobias Beer
0dd3ad5e38 updated false states — looks more conclusive 2015-01-06 14:40:48 +01:00
Tobias Beer
a1ca53fa9b implements list iterator variables, see #1328
provides <<iterator>>, <<iterator-even>> and <<iterator-last>>
2015-01-06 14:31:20 +01:00
Astrid Elocson
2f42c9fb8d Links and transclusions in railroad diagrams 2015-01-06 01:39:24 +00:00
ng110
7d6769f6fd Update select.js
test change
2015-01-04 12:22:00 +00:00
Jermolene
9f087e7667 Ensure creation fields set for data tiddlers 2014-12-24 10:29:00 +00:00
Jermolene
e41285ae56 Make platform check work on node-webkit 2014-12-23 08:20:22 +00:00
Jermolene
1adfe20508 Fix problem with repeatedly cancelling a draft
Fixes #1266
2014-12-22 08:40:11 +00:00
Jermolene
230066eeae Incorporate stickytitles theme into snow white theme 2014-12-21 16:04:42 +00:00
Jermolene
2abc5dee78 Improve buffer allocation for copying files in utils/filesystem.js 2014-12-18 21:08:14 +00:00
Jermolene
d2c4920ba4 Refine node vs. browser behaviour
Now we’re using TiddlyWiki as the core of TiddlyDesktop we need more
granular control of the platform specific code.
2014-12-18 19:52:15 +00:00
Jeremy Ruston
182c2428ca Merge pull request #1238 from Drakor/fixDownloadSavingHandler
Filename will now be set to "tiddlywiki.html" when path does not contain...
2014-12-16 14:03:17 +00:00
Jermolene
86329f5daa Remove unused local variables 2014-12-16 08:35:28 +00:00
Andreas Hahn
513e1c8cbb Filename will now be set to "tiddlywiki.html" when path does not contain a filename. 2014-12-16 00:53:20 +01:00
Jermolene
0778ea6756 Some tests and style updates for #1229
@tobibeer I simplified the handling of matched strings a little.
2014-12-15 17:50:24 +00:00
Tobias Beer
609cb1fcbd fixes #1010
safe / sequential replacing of formatstrings for date conversions

please review & test
2014-12-13 13:30:39 +01:00
Jermolene
42dba113cc Adjust field and has filter handling of missing tiddlers
Now `[!field:name[value]]` and `[!has[name]` will treat missing
tiddlers as not having the specified field
2014-12-11 17:49:17 +00:00
Jermolene
51db48acc9 Fix checking for non-empty folders in initcommand 2014-12-10 22:14:27 +00:00
Jermolene
755693766a Removing debugging statements from popup mechanism 2014-12-10 17:09:14 +00:00
Jermolene
0e62d8f648 Fix problem with tm-add-field for existing fields
Fixes #1197
2014-12-05 10:20:25 +00:00
Jermolene
2689e2861b Revert to using fieldmangler for adding fields
In 5.1.5 we switched to using `<$action-setfield>` instead of
`<$fieldmangler>`. The problem was that in the process we lost the
validation of field names, making it possible to create fields with
illegal names

Fixes #1186
2014-12-04 09:39:14 +00:00
Jermolene
5154a25ab9 Add tooltip to browse widget
Fixes #1179
2014-12-02 19:16:38 +00:00
Jermolene
a8ee6c7b7c Add experimental system tiddler browser 2014-12-02 15:25:27 +00:00
Jermolene
56a0809768 Fix problem with edit-bitmap widget static rendering
The ‘introduction’ edition contains an edit-bitmap widget that was
failing under Node.js because the fake dom doesn’t support canvas.
2014-11-27 23:03:27 +00:00
Jermolene
962cdf500a Fix link dragging to text editors
We were just adding double square brackets if the title contains
spaces. We should be adding them if the title is not a valid wikilink.
2014-11-26 11:13:05 +00:00
Jermolene
1600beb193 Move the wikilink regexps into global config 2014-11-26 11:12:25 +00:00
Jeremy Ruston
92b957f6f8 Merge pull request #1118 from welford/hook
Add hooks mechanism and th-opening-default-tiddlers-list hook
2014-11-25 19:25:00 +00:00
Jermolene
996eecc79a Coding style cleanup 2014-11-25 13:49:22 +00:00
Jeremy Ruston
6f0d581d72 Merge pull request #1141 from tobibeer/auto-focus-title-on-edit
#371 focus title field on edit
2014-11-25 13:43:08 +00:00
Tobias Beer
c0834583a0 #371 focus title field on edit
* enhanced edit-text widget with a "focus=true" attribute
* modified title template to make it focus and select by default
2014-11-25 12:39:08 +01:00
Skeeve
79e428757b allow empty state tiddlers and missing state attributes act as missing state tiddlers
As described here: https://groups.google.com/d/msg/tiddlywikidev/ODJhIw6-UjQ/3ZKrlA4B810J

I think it would be a good small enhancement as the reveal widget can now be used in previously impossible ways.
2014-11-24 07:38:58 +01:00
Jermolene
84bebb65b7 Fix advanced filter search clear button
Thanks @BramChen
2014-11-23 16:02:08 +00:00
James Welford Anderson
90caf5bf42 Add hooks mechanism and th-opening-default-tiddlers-list hook
see: https://github.com/Jermolene/TiddlyWiki5/issues/1064
2014-11-23 01:11:56 +09:00
Jermolene
d6c5e51501 Fix popup handling in Cecily and Zoomin view
Cecily and Zoomin story views use a document.body that is smaller than
the document.documentElement. We were just clearing the popups on
clicks on the document.body Clicks on the document element (ie, on the
background of the page) were not being trapped, meaning that you
couldn’t dismiss a popup.
2014-11-22 10:19:03 +00:00
Jermolene
1f82ebc7c3 Fix problem with parsing text references 2014-11-21 18:16:22 +00:00
Jermolene
b882a0dff1 Fixes to make nested popups work
Thus making the export button a lot more useful
2014-11-21 17:07:03 +00:00
Jermolene
931d47e50c Fix problem with cloning tiddlers
We were ignoring the tags on the template tiddler.

Fixes #1097
2014-11-18 14:13:34 +00:00
Jermolene
93cb03eeab Allow whitespace after \end in macro definitions
Fixes #1090
2014-11-18 10:26:20 +00:00
Jermolene
6c6fda498f Fix bug in action-setfield widget 2014-11-17 16:26:18 +00:00
Jermolene
a9eab1b8fc Improve import logging 2014-11-14 10:33:41 +00:00
Jermolene
bd211ea082 Extend set variable widget to work with filters 2014-11-13 21:39:38 +00:00
Jermolene
4bf6fe7fe9 Fix JSON deserialiser to allow all fields
Previously we were filtering to a small set of known fields (which was
implemented at the beginning of TW5 as part of the build process for
TW2).
2014-11-13 16:04:30 +00:00
Jermolene
d1bbe7253c Remove flicker when resizing textareas
The `EditTextWidget.prototype.fixHeight()` function was defering its
work with `nextTick()`, which led to flickering on all browsers when
typing triggers a resize.
2014-11-13 11:19:21 +00:00
Jermolene
e69e2c1c91 Require confirmation before deleting non-empty new tiddlers 2014-11-11 11:54:46 +00:00
Jermolene
78735cde96 Refactor dropzone
I want to start figuring out #686
2014-11-11 11:44:00 +00:00
Jermolene
6fc5c70ace First pass at export button
New export button appears as a page control toolbar button, a tiddler
toolbar button, and a button in the advanced search filter tab.

Initially supports exporting as static HTML, CSV, JSON or `.tid` file.

Still to do:

* Made the exporter descriptions translatable
* Hide the export button by default
* User docs
* Cleaning up the existing templates (eg,
`$:/core/templates/alltiddlers.template.html` should work by
transcluding `$:/core/templates/exporters/Static`)
* Docs for the new macros `exportButton`, `csvtiddlers` and
`jsontiddlers`

Issues:

* OS X Numbers refuses to open CSV files that have been generated in
Chrome, because it thinks they’ve been downloaded from the Internet.
Firefox works OK
* The export button won’t work within the tiddler info panel, or from
the *more* popup (this is because we don’t support nested popups)
2014-11-10 20:59:15 +00:00
Jermolene
b520efdeb8 Update savers to specify variables, including filename
Now the `tm-download-file` and `tm-save-file` messages use the hashmap
to specify variables to be applied when rendering the tiddler.

We also add a convention that the variable “filename” is used to
specify a filename for the download.
2014-11-10 19:54:19 +00:00
Jermolene
3035badf14 Fix problem with done button not saving unchanged tiddlers 2014-11-10 12:56:33 +00:00
Jermolene
145713e766 Don't confirm deleting drafts with no original 2014-11-10 08:49:20 +00:00
Jermolene
1dfa6f369b Smarter cancel edit behaviour
If we cancel editing a tiddler that doesn’t exist, then we no longer
show the resulting missing tiddler.
2014-11-09 21:47:48 +00:00
Jermolene
3b08b5e9dd More resilience to Tiddler.isEqual() 2014-11-09 21:47:00 +00:00
Jermolene
cea0b74265 Improve detection of modified drafts
If the target tiddler of the draft is missing (as happens after
clicking “new tiddler”), then we count the draft as modified if the
text is not empty.

Also we count the the draft as modified if the draft title has been
changed
2014-11-09 21:46:41 +00:00
Jermolene
5ded01f2c6 Fix problem with blank values in action-setfield widget
One manifestation of this problem was that it wasn’t possible to use
the edit template to add a field without specifying a value
2014-11-09 17:15:40 +00:00
Jermolene
9bbd599f5c Refine refreshing of tiddler widget
We need to refresh if there is a change in the state that we copy to
variables.
2014-11-09 17:10:18 +00:00
Jermolene
d2ab7c5986 More action-deletetiddler fixes 2014-11-09 16:53:33 +00:00
Jermolene
8c67e11365 Fixes to action-deletetiddler widget 2014-11-09 16:45:14 +00:00
Jermolene
2c5d241d96 Improve error message for missing commands 2014-11-09 14:49:33 +00:00
Jermolene
853f5fd064 Add some logging for file import/paste 2014-11-08 08:37:08 +00:00
Jermolene
ec4beb7f0f Fix bug in navigator 2014-11-07 21:15:52 +00:00
Jermolene
91a7c39791 Update modal handling to allow variables to be passed
@felixhayashi I’m afraid I haven’t used your pull request as there were
a few details that I wanted to do differently. The main change is that
these changes allow both a param string and hashmap to be specified.
2014-11-07 14:54:46 +00:00
Jermolene
c7971d3da3 Update new tiddler message handling to accept title and fields
Now you can create a new tiddler with both a template and additional
specified fields.
2014-11-07 14:53:37 +00:00
Jermolene
d93c19daaa Improve the format of widget message parameters
In 5.1.3 we introduced the idea that the `event.param` variable could
optionally be a hashmap, allowing multiple values to be passed with the
message.

This change moves the hashmap to a separate `event.paramObject`
variable, allowing us to pass both a hashmap and a param string.
2014-11-07 14:52:32 +00:00
Jermolene
8260d000be Extend search filter to allow field to be specified 2014-11-06 20:56:32 +00:00
Jermolene
f1a2d8c2b9 Fix typo in action-setfield widget 2014-11-06 19:35:50 +00:00
Jermolene
12aec57086 Merge action-setfield and action-setfields widgets
Less confusion, hopefully.
2014-11-06 19:27:14 +00:00
Jermolene
92f69d44bf Use action-deletefield widget in edit template fields editor
On the way to deprecating the field mangler widget
2014-11-06 18:32:11 +00:00
Jermolene
efeeab45f8 Simplify action-setfield widget 2014-11-06 18:23:59 +00:00
Jermolene
0a2a5184c4 Add action-deletetiddler widget 2014-11-06 18:23:48 +00:00
Jermolene
741f853986 Add action-setfield widget 2014-11-06 18:06:47 +00:00
Jermolene
a18af9b760 Rename the action-setfield widget to action-setfields
It makes more sense, and allows us to add a widget: `<$action-setfield
$tiddler=“title” $name=“fieldname” $value=“fieldvalue”/>`
2014-11-06 17:45:03 +00:00
Jermolene
0bb8e08edc Provisionally make tag pill foreground colour be responsive
With this commit tag pills will now choose for the foreground colour
either the current palette “foreground” or “background” colours,
according to which has the higher contrast. It’s something @gernert has
expressed an interest in in the past, and I’ve tended to agree that it
is a nice piece of polish. It opens up the possibility of paler colours
for tag pills than are currently possible.

The trouble is that in order to implement it I’ve had to bring in a
third party library for parsing CSS colours. It weighs in just over
9KB, making quite a lot of weight for such a small feature. I don’t see
any other immediate uses for the colour parsing library either.

So, I’m undecided at the moment whether this should stay in the core.
2014-11-06 13:35:48 +00:00
Jermolene
335c470797 Include double square brackets when dragging titles
Dragging a tiddler link into a tiddler editor, or outside the browser
into another app, will now add double square brackets around the title
if it includes spaces. Suggested by @tgirod.

I’m not 100% sure about this change. It breaks one habit that I had
developed: typing `[[sometext|]]` and then dragging a title in between
the vertical bar and the first closing square bracket. What do others
think?
2014-11-03 23:00:11 +00:00
Jermolene
9022dfdf71 Add action-deletefield widget
We’re also going to need action-deletetiddler
2014-11-03 22:06:31 +00:00
Jermolene
5599f9f933 Fix problem with UTF-8 encoding of HTML tiddelrs
Fixes #1037
2014-11-03 16:20:49 +00:00
Andrey Yankin
f7a2849d27 disable enqueueTiddlerEvent during plugin switching 2014-11-01 16:32:52 +03:00
Jeremy Ruston
b1e2ea19a8 Merge pull request #1026 from andrey013/lazy-loading-indexed-transclusion
Lazy loading should be forced for indexing transclusion
2014-10-31 19:23:01 +00:00
Andrey Yankin
7eb8301020 Lazy loading should be forced for indexing also 2014-10-31 10:24:49 +03:00
Jermolene
cc33fee9fd Typo 2014-10-30 12:47:58 +00:00
Jermolene
17a594a97a Add unpackplugin command
Needed for the translators edition
2014-10-29 11:43:43 +00:00
Jermolene
04d26e6fae First pass at an --editions command
Also added a “description” field for wiki folders.

Right now there’s too many editions listed. I think we should by
default only list editions whose `tiddlywiki.info` file has
`showInListings` set to `true`, and have an `--editions all` command
that lists everything.

@pmario please could you check that the editions in your
`TIDDLYWIKI_EDITION_PATH` are correctly listed?
2014-10-27 21:50:25 +00:00
Jermolene
d8248cfba7 Introduce action-setfield widget 2014-10-25 14:02:34 +01:00
Jermolene
4b808396f2 Missing semicolon 2014-10-25 10:25:55 +01:00
Jermolene
4a17212576 Enhance height control for edit-text widget
Added the option to disable automatic resizing, and the ability to
specify the minimum height.
2014-10-25 10:09:17 +01:00
Jermolene
7f9fb117e9 Clarify warning 2014-10-22 16:47:20 +01:00
Jermolene
1b620387dd Extend the view widget to work with subtiddlers 2014-10-22 14:12:49 +01:00
Jermolene
9a067b8dac Ensure JS macros return text 2014-10-22 10:33:56 +01:00
Jermolene
53d834c86b Use titles when dragging links to non-TiddlyWiki destinations
Handily, this means that you can drag tiddler links from the sidebar
into the text editor, making it easier to create links and
transclusions.
2014-10-21 19:51:18 +01:00
Jermolene
b052e8f50b Report command errors through $tw.utils.error
So that we get the new colourisation
2014-10-21 19:31:50 +01:00
Jermolene
e62e38d66c Add warning when serving a non-existent wiki folder
The warning will be yellow to make it noticeable
2014-10-21 19:31:29 +01:00
Jermolene
5d600ce31b Coloured warnings and errors under Node.js 2014-10-21 19:30:27 +01:00
Jermolene
71bc78b176 Coding style cleanups 2014-10-20 16:53:42 +01:00
Jeremy Ruston
f6883e5365 Merge pull request #999 from Eucaly/browse-widget
adding a message attribute to the browse widget
2014-10-20 16:49:06 +01:00
Eucaly
0bbd5eb292 adding a message attribute to the browse widget
* extend browse widget with a message attribute. If blank then import as
original. Otherwise, dispatch the given message with selected files
2014-10-20 21:57:15 +08:00
Jeremy Ruston
f25053490e Merge pull request #998 from xcazin/ogg
Add audio/ogg  to the list of recognised formats
2014-10-20 12:30:00 +01:00
Xavier Cazin
6833bfb220 Add audio/ogg to the list of recognised audio formats 2014-10-19 22:09:17 +02:00
Jermolene
12e26009ee Allow percentage width and height on image widget 2014-10-19 13:21:20 +01:00
Jermolene
2ffe53f191 Add audio parser for handling audio content 2014-10-18 14:50:07 +01:00
Jermolene
564457de1c Update to KaTeX v0.1.1 2014-10-17 20:10:38 +01:00
Jermolene
06f9ed8bad Generate new tiddler titles that aren't already subject of a draft 2014-10-10 20:58:56 +01:00
Jermolene
644ced6d4e Preserve modified title when reusing drafts
Should fix the problem raised by @xcazin
2014-10-10 20:58:34 +01:00
Jermolene
f37a7101a7 Fix problem with new tiddler button 2014-10-10 10:17:42 +01:00
Jermolene
a8d83096d3 Fix behaviour of new tiddler message
Resolves some inconsistencies over the behaviour of the new tiddler
message under various circumstances.

“new journal here” when a journal for today already exists now brings
up the existing journal for editing, and adds the required tag.

I’d be very grateful for any testing of the behaviour here: try using
new tiddler, clone tiddler, new here, new journal here, and new journal
in various combinations (eg with the draft not existing, already
existing, open or closed etc), and let me know of any peculiarities.
2014-10-10 09:52:19 +01:00
Jermolene
1e02a9f0db Correct return value for makeDraftTiddler 2014-10-10 09:03:35 +01:00
Jermolene
3827f98a43 Improve new tiddler behaviour with existing tiddlers
Now repeatedly clicking “new journal” will reuse the existing journal
if one exists
2014-10-09 17:30:53 +01:00
Jermolene
612e05a247 pushTop should return resulting array 2014-10-09 17:28:39 +01:00
Jermolene
c6951ee912 Make date format strings be translateable
Note for translators: I’m planning to release 5.1.3 later today.

Fixes #954
2014-10-09 10:33:08 +01:00
Jermolene
e872f17842 Add a new journal page toolbar button
Spot the easter egg with the toolbar button…

Fixes #336
2014-10-08 17:46:34 +01:00
Jermolene
0dcf54c3b5 Add support for action widgets
This is part of the groundwork for fixing #336
2014-10-08 17:45:26 +01:00
Jermolene
3b69b7b6e8 Coding style tweak 2014-10-08 14:07:48 +01:00
Jermolene
ef1d531091 Add confirmation for clearing password
Fixes #925
2014-10-07 14:35:42 +01:00
Jermolene
a0460c391b Fix problem with recent zoomin changes 2014-10-07 14:07:55 +01:00
Jermolene
09b6540998 Update history for tm-home message 2014-10-07 14:07:41 +01:00
Jeremy Ruston
65504d5d41 Merge pull request #928 from TheDiveO/filter-operators-addsufprefix
addprefix and addsuffix filter operators
2014-10-07 09:44:31 +01:00
Jermolene
63c174d7ed Update KaTeX wrapper to support operation under Node.js
Now we can generate static HTML containing mathematical typesetting
2014-10-06 21:20:19 +01:00
Jermolene
cbe2a53d6a Extend fakedom for KaTeX on Node.js
To make KaTeX work on the server we need to add support for the style
attribute and for setting the textContent of an element.
2014-10-06 21:10:35 +01:00
Jermolene
b7bbcfa056 Prompt twice when setting password
Fixes #364
2014-10-06 10:22:09 +01:00
Jermolene
5dd6ebff05 Fix problem with zoomin storyview and hidden sidebar
Fixes #933
2014-10-06 09:18:29 +01:00
Jermolene
cc576b052e Fix "each" filter operator with missing tiddlers
Fixes #930
2014-10-05 16:25:01 +01:00
TheDiveO
05280f09d7 Added new filter operator for adding prefixes and suffixes to titles; these new filter operators are useful in contexts where only a filter expression is allowed and where macro processing isn't allowed. The filters complement the existing remove suffix and prefix filter operators. (So much for the "filter" in filter operator.) 2014-09-30 23:01:32 +02:00
Jermolene
23c2d90ee8 Added error handling to upload saver
A further fix for #251
2014-09-27 10:47:31 +01:00
Jermolene
115245a632 Improve storyview error detection
Fixes #912
2014-09-27 10:34:59 +01:00
TheDiveO
b1fb0a2a07 fix for broken plugin tiddlers that do not contain a tiddlers field;
avoids runtime errors upstream when accessing subtiddlers inside a
(broken) tiddler and when using the plugintiddlers filter operator.
2014-09-26 22:33:47 +02:00
Jermolene
eacb9e53eb Delete syncer tiddlerInfo when tiddlers are deleted 2014-09-24 16:21:59 +02:00
Jermolene
e2046ce4ff Treat HTTP 201 response code as success 2014-09-24 16:19:23 +02:00
Jermolene
a159b5baf3 Add tiddlerInfo to the syncadaptor saveTiddler method 2014-09-24 13:15:16 +02:00
Jermolene
61af1f9379 Add error formatting for transclusion recursion errors 2014-09-24 11:50:38 +02:00
Jermolene
62edd1e8a3 Remove support for deprecated "title" attribute on button widget 2014-09-21 11:25:43 +01:00
Jermolene
b239b3d623 Remove curly braces from qualified identifiers
Fixes #860
2014-09-19 11:33:49 +01:00
Jermolene
a9f46525a0 Stop classifying digits as lower case letters in wikilinks
Fixes #842
2014-09-17 12:55:39 +01:00
Jermolene
8cc236b4dc Fix problem with sorting missing tiddlers
Fixes #858
2014-09-17 12:17:43 +01:00
Jermolene
775482a242 Fix problem with radio widget and missing tiddlers
Fixes #840
2014-09-14 10:55:34 +01:00
Jermolene
2571f534aa Fix problem with dragging partially selected link
Fixes #841
2014-09-14 10:50:53 +01:00
Jermolene
ccd916ca7c Add "multiple" attribute to browse widget
And default to non-multiple upload; that’s enough to enable the ability
to take photos/videos directly on iOS
2014-09-10 21:54:52 +01:00
Jermolene
b7f638aef3 Change button widget 'title' attribute to 'tooltip'
Fixes remainder of #824
2014-09-10 10:25:50 +01:00
Jermolene
7ed1a2ebc7 Ensure that deprecations are clearly marks
So that we can easily remove them before we come out of beta.
2014-09-10 09:20:43 +01:00
Jermolene
d45c417c18 Add deprecation warning for regexp filter operators 2014-09-09 23:05:58 +01:00
Jermolene
f4fff7a330 Add new "regexp" filter operator
Fixes #762
2014-09-09 15:57:41 +01:00
Jermolene
f16d1832aa Add dumpvariables macro 2014-09-08 15:06:49 +01:00
Jermolene
f87ce7e98a Fix tiddler keyboard shortcuts
Maddeningly, I broke them in 5.0.16-beta…
2014-09-02 22:09:28 +01:00
Jermolene
7b1a9d84a1 Missed corrections of tm-auto-save-wiki message 2014-09-02 11:16:06 +01:00
Jermolene
b25351e834 Extend keyboard handling
To cope with the Mac’s “meta” key (ie command/⌘) preparatory to
trapping command-S
2014-09-02 10:41:48 +01:00
Jermolene
2f6d16b0fa Improve comments and coding style 2014-09-01 20:39:08 +01:00
Jermolene
05dfa1e1e3 Coding style tweak 2014-08-30 23:05:04 +01:00
Jeremy Ruston
032520fbe1 Merge pull request #769 from buggyj/xlink2
added support for xlink: attribute prefix
2014-08-30 23:04:14 +01:00
Jermolene
3a67fdb768 Obeisance to JSHint for core modules
There are still some warnings about making functions in a loop, but
I’ll fix those as a separate pull request because the fixes are more
than typographic errors.
2014-08-30 20:44:26 +01:00
buggyj
710759daed added support for xlink: attribute prefix 2014-08-30 17:25:04 +02:00
Jermolene
2952afe7af Fix for autosave
Re-introduces the “tw-auto-save-wiki” message. The previous approach of
automatically triggering autosave whenever a tiddler changed meant that
changing configuration changes in control panel was triggering an
autosave. Using the explicit message gives us better control of the
situations in which we’ll autosave.

Now we solve the earlier problem of there being outstanding tiddler
change events at the time that we process the “tw-auto-save-wiki” by
deferring the autosave until the outstanding change event comes in.
2014-08-29 09:58:30 +01:00
Jermolene
48312272ad Extend 'all' filter operator to select all source tiddlers 2014-08-29 09:54:31 +01:00
Jermolene
89fd5379dd Change "tw-*" variables to "tv-*" 2014-08-28 22:28:02 +01:00
Jermolene
2f69ea362c Rename "tw-*" messages to "tm-*" 2014-08-28 21:43:44 +01:00
Jermolene
43aeb47fc3 Skip whitespace from start of inline macro definitions
Now `\define mymacro() yes` will not have a leading space in the
variable value
2014-08-28 20:21:09 +01:00
Jermolene
d945492b8b Fixed text widget crashing when text is missing
`<$text text=<<missingVariable>>/>` was crashing
2014-08-28 20:20:38 +01:00
Jermolene
f223310d34 Yet more "tw-*" -> "tc-*"
Part of #764
2014-08-28 19:41:29 +01:00
Jermolene
a1ec52c5cb Rename more "tw-*" classes to "tc-*"
Part of #764
2014-08-28 19:08:31 +01:00
Jermolene
8b10994cfe Rename more "tw-*" classes to "tc-*"
Part of #764
2014-08-28 18:59:35 +01:00
Jermolene
1814d502a4 Convert more "tw-*" classes to "tc-*" 2014-08-28 18:47:21 +01:00
Jermolene
787481a804 Change more "tw-*" classes to "tc-*"
Part of #764
2014-08-28 18:21:08 +01:00
Jermolene
4a1c530da7 Rename "tw-tiddlylink-*" classes to "tc-tiddlylink-*"
Part of #764
2014-08-28 18:13:46 +01:00
Jermolene
54591100b5 Rename "modal-*" classes to "tc-modal-*"
Part of #764
2014-08-28 17:34:02 +01:00
Jermolene
90f0fc22ff Rename "title" class to "tc-title"
Part of #764
2014-08-28 17:25:07 +01:00
Jermolene
d8c3691bd1 Removed unneeded CSS classes
Part of #764
2014-08-28 17:17:50 +01:00
Jermolene
112a9a95d9 Make prefix/suffix operators be case sensitive
I think it was a mistake for them to be case insensitive in the first
place.

https://groups.google.com/d/topic/tiddlywiki/dzpFsRCC5D8/discussion

If case insensitivity is required then regexps can be used instead.
2014-08-28 15:27:10 +01:00
Jermolene
ad40223d6b Revert incorrect refreshing of tiddler widget
Mistakenly, I had changed the tiddler widget to refresh itself when the
value of the target tiddler changed. This is not in fact necessary; it
only needs to refresh itself when the identity of the target tiddler
changes.

Fixes #744
2014-08-28 15:16:14 +01:00
Jermolene
2e3221c4e0 Fix for removesuffic operator 2014-08-28 14:48:03 +01:00
Jermolene
dcf4e93a32 Add suffix and removesuffix filters 2014-08-28 14:46:00 +01:00
Jermolene
13c4e028b1 Refactored autosave mechanism
Previously we were using a message `tw-auto-save-wiki` to trigger an
autosave. The message was generated by certain UI actions such as
saving a tiddler. The trouble was that the message was being processed
before the wiki change event for the accompanying change had had a
chance to percolate. The end result was that the dirty indicator was
staying lit when using autosave.

The new approach abandons the autosave message and instead triggers the
autosave in the wiki change event when a relevant change occurs.

One happy side effect of these changes is that the dirty indicator now
works as expected with the client server edition - ie, when typing in a
draft tiddler the dirty indicator will flash briefly, and then clear
when the sync mechanism has completed saving the draft.
2014-08-27 10:04:54 +01:00
Jermolene
9d871309c2 Remove stray console.log 2014-08-27 09:59:15 +01:00
Jermolene
ab41462af3 Ensure that savers invoke the callback 2014-08-27 09:59:01 +01:00
Jermolene
e47852cb14 Stop clearing the location hash for tw-browser-refresh 2014-08-26 14:19:12 +01:00
Jermolene
2bbe9f76ec Block temporary state tiddlers from import/upgrade 2014-08-20 13:52:59 +01:00
Jermolene
a105b52399 Refactor saver handler
Fixing problems caused by c4b76ceb0b:

* We still need to initialise the saver-handler even when syncing to a
server, otherwise offline snapshots can’t be saved
* We need to override the default save template a bit further up the
stack, to avoid the server side serving the offline version of the wiki
at `/`
2014-08-20 10:02:44 +01:00
Jermolene
fbf307c648 Add alt attribute to image widget 2014-08-20 10:00:34 +01:00
Jermolene
0dfe23e0db Rename tw-refresh message to tw-browser-refresh 2014-08-19 13:11:18 +01:00
Jermolene
920e11e792 Introduce refresh button and revert home button
Now the home button behaves as it did in 5.0.13, and the new refresh
button does a full page refresh.
2014-08-19 12:12:36 +01:00
Jermolene
a637af022d Fix problem with parseTextReference not recognising missing indices 2014-08-18 10:13:30 +01:00
Jermolene
bea83bfe55 Fix problem with refreshing the edit widget 2014-08-16 15:01:04 +01:00
Jermolene
18592fe8f8 Fix problem with edit widget not refreshing
One symptom of this problem was that changing the type field of a
tiddler didn’t immediately switch to the bitmap editor
2014-08-15 10:06:52 +01:00
Jermolene
c8830d32f7 Fixed problem with building TW under Windows
Fixes #717

The issue was that under Windows we generate text nodes that contained
CRLF as a linebreak (rather than just LF as usual).

The subtle problem is that when these strings are placed in the DOM via
createTextNode(), the CR character is treated as a printable character,
not whitespace. When creating DOM notes with innerHTML or as part of a
static HTML document the HTML parser will strip out the CR characters.

The hacky solution is to manually remove CRs before building the text
node.
2014-08-15 09:40:22 +01:00
Jermolene
f75af2c983 Separate the saver handling out of the syncer 2014-08-14 11:43:07 +01:00
Jermolene
27f1f82a70 Rejigging syncer structuring
The goal is to separate out the saver handling from the syncadaptor
handling; it will take a few steps to get there
2014-08-14 11:12:25 +01:00
Jermolene
d57446f1e4 Remove $tw.syncer global from syncer.js 2014-08-14 08:54:31 +01:00
Jermolene
35fcdd270e Move syncer event handlers into syncer module 2014-08-13 20:25:23 +01:00
Jermolene
449edf99b5 Fix rootwidget handling 2014-08-13 20:20:58 +01:00
Jermolene
7c1cb97f7f Move syncer-browser startup handling into syncer.js 2014-08-13 20:07:08 +01:00
Jermolene
d16bff7787 Move construction of rootwidget into main startup 2014-08-13 20:06:44 +01:00
Jermolene
c9ce606b7c Move the unsaved changes warning into the syncer 2014-08-13 19:29:00 +01:00
Jermolene
57ab9f6167 Translatability for the unsaved changes message
Another bit of #491
2014-08-13 19:14:23 +01:00
Jermolene
b2e1dd2138 Allow whitespace after first line of multiline macro
Fixes the remaining part of #482
2014-08-11 13:52:10 +01:00
Jermolene
2ff2092615 More improvements to control panel plugin formatting 2014-08-08 17:19:48 +01:00
Jermolene
2526bfb078 Disable wikilinking when preceded with dash or underscore
“HelloThere” in “My-HelloThere” shouldn’t be wikified.

Part of #337
2014-08-08 16:20:15 +01:00
Jermolene
f8548cc8f2 Stop classifyinh "÷" (\u00f7) as an upper case letter
Part of #337
2014-08-08 16:12:23 +01:00
Jermolene
9c8564d5b0 Stop classifying "×" (\u00d7) as a lower case letter
Part of #337
2014-08-08 16:09:56 +01:00
Jermolene
d7390dbbe1 Remove support for underscore and dash in wikilinks
Starting to fix #337
2014-08-08 11:13:41 +01:00
Jermolene
5260899d8b Relax requirement for newline after macro definition 2014-08-07 16:00:20 +01:00
Jermolene
7953b95d13 Include subtiddler in transclusion recursion detection 2014-08-07 15:43:48 +01:00
Jermolene
3529625a6c Fix full screen button not supported 2014-08-03 12:35:53 +01:00
Jermolene
bf9a87dc0e Fix CR handling by HTML parser
@pmario and @welford - I’m not presenting this as a fix for #717
because I’m still not in a position to reproduce it.

However, I found this during a review of newline handling code, and
would be interested if it is implicated in the problems you are
reporting.
2014-08-03 09:43:22 +01:00
Jermolene
c8bba8caea Switch to "tw-tagged-" prefix for CSS tags 2014-08-02 13:38:39 +01:00
Jermolene
9b9f7d32a0 Add plugin blocklist
Starting with blocking the old fullscreen plugin
2014-08-02 12:42:05 +01:00
Jeremy Ruston
ae469c3f87 Merge pull request #702 from pmario/701-split-emphasis
splited emphasis.js into several modules to have fine grained control with rules pragma
2014-08-01 18:24:16 +01:00
Jermolene
c23f6af4b5 Add CSS classes for each tag 2014-08-01 17:48:26 +01:00
Jermolene
799a5b059a Move fullscreen button into core from plugin 2014-08-01 16:52:12 +01:00
Jermolene
a61169e7e8 Fix problem with parsing missing tiddlers 2014-07-31 18:07:52 +01:00
Jermolene
18f1634802 Make the tw-home message refresh the page 2014-07-30 22:31:15 +01:00
Jermolene
56945d91d3 Add unsaved changes indicator
The “save” icon changes to red to indicate that there are unsaved
changes.
2014-07-30 16:46:13 +01:00
Jermolene
aea06f7df4 Fix checkbox setting text field to empty string 2014-07-30 11:52:45 +01:00
Jermolene
758762eee3 Autosave after an import 2014-07-29 10:03:43 +01:00
Jermolene
cb0eba73c2 Typo 2014-07-28 14:20:18 +01:00
Jermolene
5f018c2092 More defensive dom utility hasClass()
It was failing on SVG elements such as `<path>`
2014-07-28 14:19:52 +01:00
Jermolene
40b4259e86 Clarify widget constructor docs 2014-07-25 15:26:53 +01:00
Jermolene
be040ea8a2 Add support for variable filter operands
Fixes #583
2014-07-25 15:26:44 +01:00
Mario Pietsch
6de453d796 remove stricethrough.js 2014-07-24 23:51:37 +02:00
Mario Pietsch
bb47f1dbad fix whitespace and filename 2014-07-24 23:49:42 +02:00
Mario Pietsch
95f6c92192 fixed whitespace 2014-07-24 23:47:13 +02:00
Mario Pietsch
7aa6c7c06d splited emphasis.js into several modules to have fine grained control with wikification rules eg: rules except bold ... This fixes #701 2014-07-24 17:43:03 +02:00
Jermolene
1f16ef6fa8 Add support for permalink and permaview 2014-07-24 15:49:09 +01:00
Jermolene
eecb9126cd Fix checkbox widget to work with missing tiddlers 2014-07-24 15:43:37 +01:00
Jermolene
fd82112700 Sort out info mechanism docs
Some of it belongs in the browser-sniff plugin

Also add a `$:/info/node` info tiddler.
2014-07-22 15:16:18 +01:00
Jermolene
3d8626dafa Move browser sniffing into a plugin 2014-07-21 13:17:16 +01:00
Jermolene
b4d47858e5 Introduce info mechanism
We expose browser information as shadow tiddlers so that wiki
applications can adapt to available features.
2014-07-20 18:07:30 +01:00
Jermolene
9ddff6d8c0 Move startup.js into the startup folder
Neater.
2014-07-20 18:06:33 +01:00
Jermolene
0cf63ab9f0 Add theme tweaks upgrader 2014-07-18 20:00:05 +01:00
Jermolene
f793816dfa Add subtiddler support to the transclude widget
Useful to be able to reach into plugins. It will enable us to do things
like extract readmes from themes that are not active.
2014-07-17 18:41:20 +01:00
Jermolene
89989c737e Fix bug with import tiddler handling 2014-07-17 15:02:42 +01:00
Jermolene
e40a0c07b8 Fix support for upgrading encrypted wikis
Importing an encrypted wiki ordinarily doesn’t place the password in
the password vault on the basis that one ought to be able to import
from a file without automatically inheriting its password.

Now there’s a configuration option that can be used by the upgrade
plugin to cause the password vault to be updated with any password
entered by the user. The end result is that the user only needs to
enter their password once.
2014-07-16 10:06:24 +01:00
Jermolene
c92a21ff14 Remove extraneous debugger statement 2014-07-14 21:51:56 +01:00
Jermolene
c0edca78c8 Beginning of one-shot UI for upgrade.html 2014-07-14 14:53:21 +01:00
Jermolene
5a23c883e2 More defensive checks
We’ve had a few bugs with the symptom of ‘text’ being undefined.
2014-07-14 14:52:00 +01:00
Jermolene
7998686cb3 Fix typo affecting transclusion recursion detection 2014-07-14 14:50:46 +01:00
Jermolene
1f6e16318a First pass at upgrade mechanism 2014-07-12 09:09:36 +01:00
Jermolene
f08f57c5d2 Extend checkbox widget to toggle fields 2014-07-12 09:09:13 +01:00
Jermolene
4743d0a863 Fix transclusion recursion detection
We were inadvertantly doing the recursion check before we were checking
if the transclusion target exists.
2014-07-12 09:08:52 +01:00
Jermolene
9de679b84b Fix tiddler widget to refresh properly
Previously wasn’t refreshing for changes to the tiddler that it refers
to
2014-07-12 09:08:20 +01:00
Jermolene
811df7bbf0 Refactor animation easings 2014-07-08 10:07:17 +01:00
Jermolene
3351ae7e29 Fix issue with localStorage error on Firefox
Firefox raises an error if window.localStorage is accessed when cookies
are disabled:

https://bugzilla.mozilla.org/show_bug.cgi?id=771890
2014-07-06 10:11:21 +01:00
Jermolene
465f4ac469 Fix problem with refreshing modal dialogues
Previously any refreshing of the content of a modal would cause a
crash. The problem is the way that we steal the root widget for the
render trees used in the modal. The root widget is tied to the
container DOM node for the main content area, which isn’t actually a
parent of the modal DOM nodes, hence the confusion for the refresh
mechanism.
2014-07-04 21:07:35 +01:00
Jermolene
c9d4714e98 Extend makeTranscludeWidget
Add support for specifying the filename, and the fallback content
within the transclude widget that is used if the transclusion target
isn’t found
2014-07-04 21:03:11 +01:00
Jermolene
5b3b62f93d Fix bug handling of build command
We were taking the commands expanded from the build targets and placing
them at the end of the queue. That caused a problem whereby the
prevailing output folder was always the last one in the command token
list.

Now we splice the new commands into the command token list at the
current position.
2014-06-24 12:09:10 +01:00
Jermolene
6f3e31abe5 Fixed problems with detecting changes to draft tiddlers 2014-06-23 23:28:22 +01:00
Jermolene
6d1eaeb0fc Fix detection of draft changes
We were getting a lot of problems where changes to a tiddler were not
being recognised
2014-06-23 08:10:32 +01:00
Jermolene
680fe41ed7 Add isEqual() method to tiddlers 2014-06-23 08:09:59 +01:00
Jermolene
32a1da7673 Fixed problem with pasted items lacking a type 2014-06-22 11:58:00 +01:00
Jermolene
9987e6de22 Fix problem with overwriting existing tiddlers 2014-06-22 11:45:00 +01:00
buggyj
0206358a1c added missing regex update for triple double-quotes macro params 2014-06-19 19:17:26 +02:00
Jeremy Ruston
0c48502e8e Merge pull request #660 from buggyj/jsonparams
added triple double-quotes delimiters for marco/widget parameters (to su...
2014-06-19 12:06:00 +01:00
buggyj
a2ec4c55e3 added triple double-quotes delimiters for marco/widget parameters (to support json strings) 2014-06-19 07:29:14 +02:00
Jermolene
a9b7df96c2 Add support for TIDDLYWIKI_EDITION_PATH 2014-06-17 21:59:20 +01:00
Jermolene
06b0f9adb7 Added aria-label attribute to link widget
And document it for the button widget
2014-06-17 07:54:10 +01:00
Jermolene
eeedcb6d94 First pass at accessibility improvements for #650 2014-06-14 18:06:56 +01:00
Jermolene
f09d69d1b7 Remove debugging code 2014-06-13 14:44:43 +01:00
Jermolene
eee3a0cf8e Extend server command to allow a path prefix
Thereby making the number of parameters to the command ludicrous
2014-06-13 14:44:34 +01:00
Jermolene
4238af2a40 Extend listed filter operator to use any field 2014-06-13 10:58:19 +01:00
Jermolene
9ab0c84140 Support global macros via the importvariables widget
The new importvariables widget imports macro/variable definitions from
the specified tiddlers and makes them available to its children.

Allows us to split PageMacros up into separate tiddlers.

We still support loading macros from $:/core/ui/PageMacros to help
people upgrading.

Fixes #644 and #559
2014-06-12 18:01:33 +01:00
Jermolene
9547a1f01c First pass at external image support
A bunch of little changes that together enable external image support.
Try:

```
tiddlywiki editions/tw5.com --verbose --build externalimages
```

Then open `externalimages.html`, look for the images in the more/types
tab of the sidebar, open them and verify that they are set with an
external SRC attribute, not a data URI.
2014-06-12 08:36:30 +01:00
Jermolene
f131c37893 Update HTML parser to use an IFRAME
Gives us better sandboxing of unsafe HTML content
2014-06-11 23:04:58 +01:00
Jermolene
d2796d0c9c Introduce setfield command
This new command will let us do the manipulations needed to set up
external image tiddlers
2014-06-11 10:05:35 +01:00
Jermolene
a03a15e7de Allow the text widget to refresh if needed 2014-06-10 19:32:55 +01:00
Jermolene
305617b632 Introduce savetiddlers command
Allows us to save tiddlers in their raw format.
2014-06-09 14:45:41 +01:00
Jermolene
247eb04b11 Extraneous semi-colon 2014-05-31 19:18:01 +01:00
Jermolene
3182a2d599 Add first pass at select widget 2014-05-31 18:37:43 +01:00
Jermolene
f999b2e931 Add wiki.setText() method 2014-05-31 18:37:27 +01:00
Jermolene
a330cb543e Better defaults for radio widget
Now the “field” attribute defaults to “text”.
2014-05-31 18:35:41 +01:00
Jermolene
3f25db0abe More permalink tweaks
And more documentation this time!
2014-05-29 23:17:21 +01:00
Jermolene
412cde6f53 Move "storyviews" filter operator to correct folder 2014-05-28 17:17:47 +01:00
Jermolene
f7b8813a27 Change permalink behaviour
Now a link to a single tiddler like http://tiddlywiki.com/#HelloThere
will just open that single tiddler (the old behaviour was to also open
the default tiddlers)
2014-05-28 17:07:41 +01:00
Jermolene
da273be054 Workaround Firefox "no element found" bug
See https://bugzilla.mozilla.org/show_bug.cgi?id=884693

Fixes #468
2014-05-27 09:49:48 +01:00
Jermolene
9aaa000d3f Fixed default tiddler not appearing in zoomin view
See https://groups.google.com/d/topic/tiddlywiki/c-z7f-h1CAo/discussion
2014-05-26 22:56:28 +01:00
Jermolene
f44f2b33ed Fixed missing class on external pretty links 2014-05-26 17:57:35 +01:00
Jermolene
86d182fd51 Fix importing blank fields from TiddlyWiki files 2014-05-26 17:47:07 +01:00
Jermolene
31e1088aa7 Clean up startup logging
Now we do boot logging to an array. We harvest it in the —verbose
command. We still need to provide a way to access the log in the
browser too.
2014-05-15 18:50:14 +01:00
Jermolene
c9c1b0fbb4 Get rid of the tweakParseTreeNode() hack
It’s an embarrassing hangover from a refactoring of the parsing
mechanism last year.
2014-05-14 08:51:08 +01:00
Jermolene
9a26c4259a Fix problem with widget.getStateQualifier()
Fixed to take into account the recent change to read variables from the
parent widget: e60fc9f81f
2014-05-13 18:16:45 +01:00
Jermolene
ad43958571 Make permalink behaviour configurable
In the process introducing a new advanced settings tab

Fixes #600
2014-05-13 14:16:58 +01:00
Jermolene
75fee26b58 Fix problem with variables containing an empty string
See
https://github.com/Jermolene/TiddlyWiki5/commit/e60fc9f81f2c8f0d115543d8
d330a1d68f9b890a#commitcomment-6301921
2014-05-13 10:15:55 +01:00
Jermolene
e83759e86d Add "before" and "after" filter operators
Fixes #357 by adding new “before” and “after” filter operators.
2014-05-12 15:16:44 +01:00
Jermolene
e60fc9f81f Fixed problem with widgets variable access
Previously, widgets were reading variables from themselves or their
cascaded ancestors. That means that if a widget sets a variable and
then reads the same variable, it will get the same variable back. That
sounds reasonable, until you consider a widget that wants to modify a
variable - eg the tiddler macro. For example:

```
<$tiddler tiddler={{!!report}}>
<$transclude mode="block" />
</$tiddler>
```

Here we first evaluate the `{{!!report}}` reference, which involves
reading the currentTiddler variable, looking up the tiddler, and
retrieving it’s `report` field. The next the tiddler widget is
refreshed, it will use the newly set currentTiddler as the basis for
resolving the `{{!!reference}}` reference.

The fix is to get variables from ancestors, but continue to set them on
ourselves.
2014-05-08 11:51:02 +01:00
Jermolene
6ab68e0fca Remove erroneous global wiki references
$tw.wiki is used as a global reference in the outer initialisation
modules. It shouldn’t be used in widgets etc.
2014-05-07 14:49:14 +01:00
Jermolene
e548dd35af Restored drag and drop functionality within TEXTAREAs and INPUTs
As mentioned by @Skeeve in #592
2014-05-07 14:32:14 +01:00
Jermolene
e676156b24 Fixes for running TiddlyWiki on node-webkit
See Jermolene/TiddlyWiki5NodeWebkit
2014-05-07 09:59:21 +01:00
Jermolene
854b739a35 Implement explicit external links 2014-05-06 20:05:51 +01:00
Jermolene
abe0ce28b9 Fix typos in docs for image parser 2014-05-06 19:00:34 +01:00
Jermolene
7c8c5cf745 Fix problem with parsing main UI boot tiddlers
We were parsing the boot tiddlers, making them into a widget and then
refreshing the widget tree. The problem is that subsequent chances to
the boot tiddlers themselves wouldn’t be picked up as part of the
refresh.

Now we indirectly parse those UI boot tiddlers through a transclusion,
which does get refreshed in the desired way.
2014-05-06 10:14:22 +01:00
Jermolene
b84c663215 Add proper rendering of document title 2014-05-05 23:00:09 +01:00
Jermolene
4e101e240c Suppress history when changing the permalink URL 2014-05-05 21:51:54 +01:00
Jermolene
56251dc1f8 Fixes #598
Ensure we don’t generate permalinks with a target that is not in the
current story
2014-05-05 21:23:29 +01:00
Jermolene
f368175cb0 Remove debugging code 2014-05-05 20:58:47 +01:00
Jermolene
986a20b22b Fixes for permalinks not working on Firefox
Sigh. It’s frustrating that the few browser differences I’m running
into in 2014 are mostly horribly familiar from 2005
2014-05-05 19:21:57 +01:00
Jermolene
ffb6c8ab81 Add hex colours to tag manager
Fixes #597
2014-05-05 18:42:25 +01:00
Jermolene
b24ec8009d Missing dependency 2014-05-05 17:06:24 +01:00
Jermolene
9965c64b6f More refactoring of startup.js 2014-05-05 15:25:51 +01:00
Jermolene
2a50277219 Fix problem with syncer not being initialised on server 2014-05-05 14:44:32 +01:00
Jermolene
3cce12e13f More refactoring of startup.js 2014-05-05 14:41:46 +01:00
Jermolene
887e9d978b Fix problem with saving if URL contains # 2014-05-05 13:30:31 +01:00
Jermolene
a0022a1cd6 Refactoring more of startup.js into modules 2014-05-05 10:17:50 +01:00
Jermolene
519e1b4a44 Pull more of startup.js out into separate modules 2014-05-03 21:23:51 +01:00
Jermolene
b9dec37fb7 Split main rendering into it's own startup module 2014-05-03 19:50:05 +01:00
Jermolene
78ba57d55d Remove support for browser-startup modules
Instead support startup modules that stipulate which platform they
require.

Also include docs updates and fixes to fullscreen plugin
2014-05-03 17:49:20 +01:00
Jermolene
749582ede0 Split module loading into a separate startup task
Still a work in progress.
2014-05-03 17:10:55 +01:00
Jermolene
b96aade28a WIP: Add support for dependencies between startup modules
See StartupMechanism for details.
2014-05-03 16:32:18 +01:00
Jermolene
6ccf02ed96 Add support for onhashchange
Now we respond dynamically to changes in the location hash in the URL
bar. It means that you can do links in HTML as `<a
href=“#HelloThere”>go</a>` and in Markdown as `[example
link](#HelloThere).`

We still need to make startup.js more modular
2014-05-03 12:20:28 +01:00
Jermolene
b2c1331c11 Fix oversight in isDraftModified
If the original tiddler doesn’t exist then we should count the draft as
always having been modified
2014-05-03 12:12:07 +01:00
Jermolene
a5e9ef9b5f Adopt new URL scheme for permalinks
Instead of using `%00` as a separator we do the more conventional
`#!<target-title>:<story filter>`.
2014-05-03 11:32:55 +01:00
Jermolene
327b53a641 Start adding support for permalinks
At this point we respect any permalink at startup, but we don’t yet
dynamically update the permalink, nor do we respond to ongoing
permalink changes.

The permalink separator being `%00` seems like it might be a bit
controversial. It buys us not having to wrap tiddler titles in double
square brackets if they contain spaces.

Another thing is that this scheme doesn’t support tiddler filters; the
plan is to support them like this:

http://tiddlywiki.com/#!Target%00%00[tag[task]sort[created]]
2014-05-02 19:21:32 +01:00
Jermolene
cb914ae853 Remove dead code typo 2014-05-02 18:07:47 +01:00
Jermolene
a4294b55f0 Add banner for binary tiddlers in edit mode
Makes it easier to add tags to a binary tiddler (eg a PDF).
2014-05-02 09:43:39 +01:00
Jermolene
bced7124e4 Accept single quotes for attributes in TW files 2014-05-01 17:58:49 +01:00
Jermolene
f5848c395a Fix problem with editing tiddler titles
The check whether a draft has been modified was ignoring changes to the
title.

Fixes #593
2014-05-01 17:39:37 +01:00
Jermolene
f6bd3b8c37 Optimise the all filter operator
Seems like quite a decent optimisation.
2014-04-30 22:50:47 +01:00
Jermolene
21b2d6fdc7 Allow filter operators to return an iterator
Previously filter operators were only permitted to return an array of
tiddler titles
2014-04-30 22:50:17 +01:00
Jermolene
fcb26419a6 Clear the tiddler event queue on startup
To avoid an unnecessary refresh cycle
2014-04-30 22:49:02 +01:00
Jermolene
a6f7da6c1c Suppress refresh cycle if no tiddlers have changed 2014-04-30 22:48:36 +01:00
Jermolene
0ac4c2b554 Allow digits in field names 2014-04-28 15:54:32 +01:00
Jermolene
84cd296c58 Minor tweaks to shadow warning infrastructure
1. Moved some methods out of boot.js because they are not needed until
after bootup
2. Added alternate message for editing an overridden shadow tiddler
3. Minor style tweaks
2014-04-28 15:16:31 +01:00
Jeremy Ruston
a90339d1e5 Merge pull request #586 from sukima/feature/issue-570-cancle-unchanged-drafts
Fix issue #570 Make it harder to accidentally modify a shadow tiddler
2014-04-28 13:22:44 +01:00
Devin Weaver
a505b6ffc0 Move isModified from Tiddler to Wiki
Replace this with a $tw.wiki.isModifiedTiddler(title) as part of the
wiki object. This allows it to be used outside of the current Wiki which
can change.
2014-04-27 17:15:42 -04:00
Devin Weaver
d0636f2124 Add a confirmation to edit a shadow tiddler
Should only display the confirmation if the shadow tiddler has not been
overridden in the first place. It checks this by looking for the
existence of a modified field for which the default system based shadow
do not have until a user changes them.

This addresses the second line item on issue #570

We will need new translations for the added string
`ConfirmEditShadowTiddler`
2014-04-27 17:15:42 -04:00
Devin Weaver
5226c7a2fa Prevent saving un-modified tiddlers
When saving a tiddler we check to see if the tiddler has changed
(isModified) if it hasn't then bounce the event to tw-cancel-tiddler
instead.

Addresses first line item in issue #570
2014-04-27 17:15:42 -04:00
Devin Weaver
8611867930 Remove dead code 💀 2014-04-27 17:15:41 -04:00
Jermolene
385c7e207c Refactor wiki.filterTiddlers()
Now we pass a widget instead of the current tiddler title. We can use
widget.getVariable(“currentTiddler”) to get the current tiddler.
2014-04-27 20:03:33 +01:00
Jermolene
570cad1c7f Add 'get' filter operator
Prompted by @sukima’s work on #586
2014-04-27 18:45:01 +01:00
Jermolene
e9557b578e Improve output directory handling
This change is likely to break most existing scripts that call
TiddlyWiki.

TL;DR - output paths are now relative to the editions/output folder,
rather than to the current folder

See [[Notes for upgrading to 5.0.11-beta]] for details.
2014-04-27 08:28:21 +01:00
Jermolene
f7e50e0950 Add --build command
First pass at the build system described in #356.

To test it, move to a new, empty directory and try `tiddlywiki
editions/tw5.com --verbose --build`
2014-04-25 22:41:59 +01:00
Jermolene
552657fc58 Fix text parser to use codeblocks
This means that JavaScript and JSON tiddlers will be properly
highlighted if the highlight plugin is loaded.
2014-04-24 19:41:07 +01:00
Jermolene
15d0c27e2a Add [is[tag]] filter operator 2014-04-18 17:57:55 +01:00
Jermolene
9fbe72a877 Rearrange system tag configuration
By rearranging the `[all[]]` operator we are able to ensure that shadow
tiddlers get processed before ordinary tiddlers. This makes it easier
to create custom stylesheets that override the core.
2014-04-18 09:28:14 +01:00
Jermolene
89165fc51d Fix problem with sorting date fields
Introduced a couple of commits ago when the localeCompare() stuff was
added.
2014-04-17 22:52:57 +01:00
Jermolene
4758874d13 Add path conversions from TiddlyWiki Classic
TiddlyWiki Classic converts local file URIs to various local native
formats. The same conversions are now performed by the TiddlyFox
adaptor for TW5.
2014-04-17 22:30:14 +01:00
Jermolene
bb42c0ab36 Use localCompare for sorting strings
So that accented characters get sorted correctly. Or at least as
correctly as browsers allow.
2014-04-17 20:15:52 +01:00
Jermolene
73cfd10218 Fix regression with untagged filter operator
Restored previous behaviour of considering a missing tiddler to be
untagged.
2014-04-17 16:10:50 +01:00
Jermolene
ad4b03506a Added wikitext image support
We’ve added a parser to recognise the `[img[URL or tiddler title]]`
format, and an associated image widget.
2014-04-17 12:52:32 +01:00
Jermolene
ace57dd205 Refactor utilities out of HTML parser
Some of the functions are useful general purpose parser helpers.
2014-04-17 12:00:32 +01:00
Jermolene
dad60cda05 Improve wiki.sortByList()
Previously list-before and list-after didn’t work if they referenced
entries that hadn’t yet been placed
2014-04-14 21:30:30 +01:00
Jermolene
4c648e7cdc Exclude more illegal characters from external links 2014-04-14 11:17:28 +01:00
Jermolene
0aa559cd23 Improve responsiveness during editting
Simple optimisation whereby we defer the main refresh cycle when only
draft tiddlers have been modified.

We defer for 400ms, and keep extending the delay at each fresh draft
modification. The effect is that if the user is using the preview then
they’ll need to pause typing for 400ms before the preview is updated.

Fixes #470, #454, and maybe #206.
2014-04-14 10:20:32 +01:00
Jermolene
28db76ddb3 Refactor page rendering into a separate function
Refactoring page rendering so that we can fix the performance issues
with editing drafts. The plan is to defer the refresh cycle if all the
changes are to draft tiddlers.

We need to do a bit more of this to get startup.js into better shape
(and more extensible).
2014-04-14 09:53:13 +01:00
Jermolene
e366aa3746 Use Date.now() instead of new Date()
Just for when what we actually want is a millisecond counter.

Interesting video about this:

https://www.youtube.com/watch?v=Vo72W1HWeFI
2014-04-14 09:02:52 +01:00
Jermolene
f1578d3409 Turn off instrumentation
All those console.log()s make editing very slow
2014-04-13 21:17:44 +01:00
Jermolene
93b9d16d6c Don't include pipe characters in URLs 2014-04-13 21:17:44 +01:00
Jermolene
be5f6f6700 Allow spaces in property names in text references 2014-04-12 17:14:09 +01:00
Jermolene
3afa26b9a3 Require confirmation before abandoning edits
Fixes #544
2014-04-12 14:15:49 +01:00
Jermolene
a3cf925e56 Add classes for the current theme and language
Add the classes to the tw-page-container DIV
2014-04-11 21:37:58 +01:00
Jermolene
ccf2cb36a1 Extend sameday operator to select field
Now the target field can be specified in the suffix:
`[sameday:created[20140808]]`
2014-04-10 20:19:12 +01:00
Jermolene
7a4a00f6ca Sort operator should default to title
Previously we were crashing if a sort field wasn’t specified
2014-04-10 19:56:21 +01:00
Jermolene
ccefc1b17b Tolerate more whitespace in block elements
Previously the double newlines marking a block mode element couldn’t be
interspersed with whitespace.
2014-04-10 11:05:27 +01:00
Jermolene
e5fe3f76ac Fix linkcatcher message sending
We need to send messages to the parent so that we don’t set up an
infinite loop by sending `tw-navigate` messages. Also we need to pass
along the target of the navigation.
2014-04-09 16:09:12 +01:00
Jeremy Ruston
9b52ca7cc0 Merge pull request #543 from welford/load-and-deserialize
Make deserializing a bit more robust
2014-04-09 11:51:16 +01:00
Jermolene
f9a274df85 Require confirmation for all tiddler deletions
Previously we only asked for confirmation when deleting a draft tiddler
2014-04-09 11:32:08 +01:00
James Welford Anderson
362df18a19 make deserializing a bit more robust
load.js references the encoding set in boot.js when loading a file.
boot.js can now register file type with different deserialization from
their actual type
2014-04-09 06:20:51 +09:00
Jermolene
426281539a Merge branch 'saner-filters' 2014-04-08 14:14:11 +01:00
Jermolene
3282bd948f Fix problem with search filter operator 2014-04-08 09:36:30 +01:00
Jermolene
1e960ffcac Fix problems with tiddlers called __proto__
Background:

http://www.2ality.com/2012/01/objects-as-maps.html
2014-04-06 22:43:10 +01:00
Jermolene
b51d851f93 Fix extraneous comma
Thanks to Danielo Rodríguez
2014-04-06 22:09:42 +01:00
Jermolene
4d91a7762e Optimise link widget
Handle the classes better, and stop using a default tooltip (parsing
the tooltip was a performance hog)
2014-04-05 17:37:58 +01:00
Jermolene
272a4bbe61 Filtering optimisations 2014-04-05 17:31:36 +01:00
Jermolene
b7f674c51a First pass at refactoring filter execution
This is the beginning of addressing #523.
2014-04-03 20:49:16 +01:00
Jermolene
d402d3c5a6 Add performance measurement features
This is an experimental module to help us measure the performance of
the refresh cycle and the filter mechanism. Not intended to replace the
performance measurement features in browser developer tools, just to
make it easier to automate performance checks cross-browser.

The immediate purpose is to help in refactoring the filter mechanism.
The recent change to encapsulate the wiki store “tiddlers” object has
hurt the performance of filters, and it’s going to be helpful to have
decent measurements while refactoring that code.

I’m still not convinced that this stuff should be in the core, and may
well end up removing it after the present refactoring cycle.
2014-04-01 08:33:36 +01:00
Jermolene
dcce487934 Add support for platform dependent high resolution performance timers
For profiling filter performance
2014-03-31 18:42:30 +01:00
Jermolene
c3e24c1228 Trim spaces from new field and tag names
Fixes #517
2014-03-31 17:59:28 +01:00
Jermolene
6307293469 Fix some Node.js cross-platform compatibility issues
Thanks to http://shapeshed.com/writing-cross-platform-node/

Surprising that file path format is pretty much the only issue.
2014-03-31 17:17:36 +01:00
Jeremy Ruston
0d0679de1b Merge pull request #514 from Skeeve/patch-6
Show site title when logging in
2014-03-31 12:59:15 +01:00
Jermolene
09214d1c33 Fix problem with --load command overwriting $:/core
Now we use the `wiki.importTiddler()` method - it rejects attempts to
load older versions of loaded plugins
2014-03-31 12:46:10 +01:00
Jermolene
914a536d82 Correct relative date handling of t=1s
We were incorrectly displaying “1 seconds ago”
2014-03-31 12:41:54 +01:00
Jermolene
5a085f7927 Add basic CSV parser 2014-03-31 12:41:02 +01:00
Skeeve
0595619d39 Show site title when logging in
I have several TW5 servers running on the same host and think it would be good, would the password prompt display the $:/SiteTitle
2014-03-31 08:58:13 +02:00
Jermolene
bca1d55280 Add validation of legal characters for fieldnames 2014-03-26 13:38:43 +00:00
Jermolene
79d643775d Fix scrollable widget not to crash on the server 2014-03-25 14:37:33 +00:00
Jermolene
d3e178becc Add scrollable widget
A new widget to handle scrollable areas. We’ll use it both for the
story river and the sidebar.
2014-03-25 14:26:54 +00:00
Jermolene
535837e017 Use client bounding rect rather than offset positions for computing scroll positions 2014-03-24 22:31:03 +00:00
Jermolene
20f6383528 Add storyviews list filter and use it in view switcher 2014-03-24 22:17:45 +00:00
Jermolene
3ce2159a95 Missing semicolon 2014-03-24 21:35:48 +00:00
Jeremy Ruston
4badabce4b Merge pull request #496 from buggyj/syncer
syncer freeze fix
2014-03-20 20:58:50 +00:00
Jermolene
178cfb1084 Make more core strings be translateable
Now we’re translating strings that occur in JavaScript modules.

Partially fixing #491
2014-03-20 20:55:59 +00:00
buggyj
aa63151815 syncer freeze fix 2014-03-19 20:20:54 +05:30
Jermolene
ba6edd42c1 Explicitly blacklist unsafe elements, starting with <script>
Are there are any other elements that might be considered unsafe?
2014-03-19 10:05:44 +00:00
Jermolene
925b3d2a5b Fix typo 2014-03-18 21:18:46 +00:00
Jermolene
b8d0fd059b Fix bug with plugintiddlers filter operator 2014-03-18 21:18:45 +00:00
Jermolene
bdbbf94326 Update transclusion wikitext syntax to allow a template without a target tiddler
This allows us to transclude a tiddler without changing the current
tiddler with `{{||MyTiddler}}`.
2014-03-17 21:44:10 +00:00
Jermolene
cdf3e101a8 Fix crash with headings
`this.match[1].length` can get overwritten when we parse the content of
the heading
2014-03-17 20:55:08 +00:00
Jermolene
06500e5f71 New error message text for recursive transclusion error 2014-03-17 11:54:41 +00:00
Jermolene
9de17aa206 Make shadowTiddlers, pluginTiddlers and pluginInfo be private to the Wiki object constructor 2014-03-17 10:50:18 +00:00
Jermolene
721e333a20 Starting to make the members of $tw.Wiki be private
We want to avoid plugins from directly accessing the tiddlers hashmap.
Later we’ll do pluginTiddlers, pluginInfo and shadowTiddlers.
2014-03-16 21:23:10 +00:00
Jermolene
f649b5b037 Extend button widget to set text references
Previously the `set` attribute could only be used to identify a
tiddler, not a full text reference.
2014-03-15 17:02:13 +00:00
Jermolene
42c67cfeb7 Add tiddler info "advanced" panel 2014-03-14 15:23:28 +00:00
Jermolene
f48701544e Enhance tiddler title for system tiddlers
Now the $:/ part of the name is rendered in grey, making the main part
of the title more prominent.

@tobibeer suggested this a long time ago; good idea!
2014-03-13 17:40:53 +00:00
Jermolene
50cf9678cb Add support for tw-home message 2014-03-12 22:32:13 +00:00
Jermolene
8e17c1dfd5 Fix setTextReference()
It wasn’t working for non-existent tiddlers. Also added support for
setting indexed properties of a data tiddler.
2014-03-12 21:54:43 +00:00
Jermolene
d0caf21b2d Exclude attributes starting "on" on HTML elements
Because:

* It doesn't work well with TW5's refresh mechanism, which relies on
being able to regenerate any portion of the DOM as required; this
frequently causes inline handlers to be re-executed at unexpected times
(see
http://tiddlywiki.com/static/TiddlyWiki%2520for%2520Developers.html)
* It mixes TW5 version-specific JavaScript with user content
* In multiuser environments there is a security risk to importing or
viewing tiddlers you didn't author if they can have JavaScript in them
2014-03-12 16:39:18 +00:00
Jermolene
0d18f3cc5d Add support for ordering tags by the 'list-before' and 'list-after' fields
See the discussion here:

https://groups.google.com/d/topic/tiddlywikidev/AXDJEjcAphs/discussion
2014-03-12 14:19:26 +00:00
Jermolene
0d7c4ae6c7 Include tags on shadow tiddlers in tagging filter
Ensures that for system tiddlers the info panel "Tagging" tab correctly
shows the tagged tiddlers.

Final fix for #478
2014-03-10 19:41:38 +00:00
Jermolene
8d612aefdd Fix problem with theme overrides triggering the syncer object
Fixes #479
2014-03-10 19:05:06 +00:00
Jermolene
db35bc36aa Disable storyviews when rendering to the fake dom 2014-03-10 18:41:11 +00:00
Jermolene
af34fbbca3 Only show command line help if no arguments are provided
Previously we were checking in a way that meant that `tiddlywiki
<wiki>` would trigger the help message.
2014-03-10 18:20:07 +00:00
Jermolene
01e1133219 Fix bug where count widget wasn't being updated correctly 2014-03-10 18:15:00 +00:00
Jermolene
98872bbe7c Allow pasting/dropping of HTML content
Fixes #477
2014-03-09 20:39:03 +00:00
Jermolene
bc8b72e6eb Use hasOwnProperty to text for tiddler existence 2014-03-09 19:20:58 +00:00
Jermolene
289bec0fd5 Parse the wiki link tooltip as wiki text 2014-03-08 16:06:57 +00:00
Jermolene
81af6bdd48 Fix typo in navigate handler for button widget 2014-03-08 10:22:09 +00:00
Jermolene
a5a2c718b1 Add support for a tooltip on the link widget 2014-03-06 12:38:47 +00:00
Jermolene
c277370e48 Display --help message if run without arguments
Fixes #389
2014-03-05 11:13:58 +00:00
Jermolene
67f3d58f71 Fix problem with "null" message when unloading under IE11
Fixes #457
2014-03-04 22:21:18 +00:00
Jermolene
df6436a12c Allow middle mouse button to trigger navigation suppression when clicking a tiddler link
Equivalent to holding control/command while clicking.
2014-03-03 09:09:13 +00:00
Jermolene
4194f9f20f Retract change to new tiddler handling in navigator.js
Original commit: d5c31ed07f
2014-02-28 15:31:35 +00:00
Jermolene
cadeb9654c Add help command 2014-02-25 14:50:18 +00:00
Jermolene
2ed8df0d1f Add a new "commands" filter 2014-02-25 14:49:56 +00:00
Jermolene
3636744d4f Add support for retrieving formatted text content from the fake dom
The idea is to convert HTML block elements into newlines, so that the
output is readable on a terminal.
2014-02-25 14:49:07 +00:00
Jermolene
8ce7c3920c Get rid of the old print command
We’ll be introducing a help command to replace it
2014-02-25 14:47:19 +00:00
Jermolene
a1ad735822 Extend the init command to allow editions to be merged
Now we can say “—init tw5.com clientserver” to get the tw5.com content
with the client server plugins.
2014-02-24 10:58:11 +00:00
Jermolene
3f6bf2452a Init command should remove any includeWikis definitions
The includeWikis references will otherwise be broken when the edition
is copied.
2014-02-24 10:14:17 +00:00
Jermolene
f3930ad69c Add init command to initialise a wiki folder
Fixes #362
2014-02-23 22:58:17 +00:00
Jermolene
b0394f1560 Add support for utils-node modules that are only run under Node.js 2014-02-23 22:57:25 +00:00
Jermolene
99ccdf4584 Add confirmation when deleting tiddlers
Fixes #381
2014-02-23 17:37:32 +00:00
Jermolene
260080164f Update setTiddlerData() to preserve tiddler dictionaries
Previously, data tiddlers were always being saved in JSON format,
regardless of the original format.
2014-02-23 12:33:00 +00:00
Jermolene
2ab0facf3a Extend button widget to allow navigating to a tiddler
Fixes #327
2014-02-22 16:13:16 +00:00
Jermolene
75ff9fb6c0 Allow the end of text to be treated as a linebreak for parsing HTML tags 2014-02-22 08:43:03 +00:00
Jermolene
0961b0426b Use import report tiddler only if more than one tiddler is imported
If there’s only one, just display the tiddler itself.
2014-02-21 20:17:34 +00:00
Jermolene
dfbb6e1fba Ensure that $:/isEncrypted is reset if modified 2014-02-21 18:21:10 +00:00
Jermolene
31975e0042 Update importing so we don't open every imported tiddler
Instead we just display a report with links to each imported tiddler.
Should make importing much faster.
2014-02-21 18:21:10 +00:00
Jermolene
cb5b95add2 Extend fakedom to support .value property
So that 88ffb2ad12 will work on the server
2014-02-21 15:43:25 +00:00
Jermolene
68bcbff753 Rough and ready control over bitmap editor line width and colour
Fixes #414
2014-02-21 14:06:04 +00:00
Skeeve
d5c31ed07f Update navigator.js
As described here: https://groups.google.com/d/msg/tiddlywikidev/AWvXz7RMIC4/gFF5crN2UJoJ

Providing a name for the new tiddler message only works if a skeleton tiddler already exists. If not, "New Tiddler" is taken. This change fixes that in that the provided name is taken even if there is no skeleton.
2014-02-21 10:37:20 +01:00
Jermolene
ec0769d7ca Fix typo
Fixes #417, thanks @pmario
2014-02-21 09:11:27 +00:00
Jermolene
c17844b815 Another fix for the block vs inline handline 2014-02-20 22:43:04 +00:00
Jermolene
06a0d21734 Use double linebreaks to indicate content of a widget or html element should be parsed in block mode
Fixes #82.

The old behaviour was to parse the content of a widget or html element
in block mode if the opening tag was followed by a line break. The new
behaviour requires two line breaks.

This makes it possible to include linebreaks more liberally within
wikitext, although care must still be taken to only use double line
breaks when the block mode behaviour is desired.

The code change here is very simple, just a single line change in
html.js. Most of the other changes are to convert various single line
breaks into double line breaks.
2014-02-20 21:42:31 +00:00
Jermolene
5417b8c4d7 Add 'indexes' filter operator
Returns the indexes within a data tiddler.

We’re about to use this to enumerate the colours within a palette.
2014-02-20 10:00:13 +00:00
Jermolene
2744671211 Fix generateTitle to avoid clashing with shadow tiddlers 2014-02-20 09:58:01 +00:00
Jermolene
88ffb2ad12 Fix problem that was causing Chrome to display black in colour picker swatches
Hurrah!
2014-02-20 09:57:44 +00:00
Jermolene
5e9dae8fb4 Fix view widget so that it works with indexes 2014-02-17 11:28:48 +00:00
Jermolene
e051eb7d90 Making more things translateable
Now we’re done with the text that lives in tiddlers, and we’ll need to
get on with the text that is embedded in code modules.
2014-02-16 09:46:43 +00:00
Jermolene
c43cd325ca Reduce the inconsistent use of "language" vs. "lingo"
Now we’re just using the word “lingo” for the macro defined in
PageTemplate (where the abbreviation is useful), and using the full
word “language” everywhere else.

It’s possible that we should be using “locale” instead of “language”,
what do you think?
2014-02-15 11:32:11 +00:00
Jermolene
69c0b5e031 Fix problem with pasting items into the browser 2014-02-14 20:00:23 +00:00
Jermolene
4836cf83e2 Enhance alerting to coalesce repeated alerts with the same text 2014-02-14 10:29:26 +00:00
Jermolene
70a120d4a6 Expand the logging mechanism to support alerts overlaid on the main screen
Now we get decent visual indication of sync errors, for instance. Still
work to do to coalesce alerts so that the screen doesn’t fill up with
them after an interval. And probably we should add a button to clear
all alerts.
2014-02-14 07:53:41 +00:00
Jermolene
9bb600299f Extend the navigator widget to maintain the "current-tiddler" field on the history list 2014-02-13 17:59:51 +00:00
Jermolene
9db887748b Extend setTiddlerData() to set arbitrary fields 2014-02-13 17:59:33 +00:00
Jermolene
800bc639f9 Fix problem with the reveal widget not refreshing properly when used with text references
The check for changed tiddlers was failing because `this.stateTitle`
contains the entire text reference, not just the tiddler title.
2014-02-13 17:59:10 +00:00
Jermolene
ad4e7ccb17 Add experimental support for building plugins in the browser
It’s a bit rough and ready, but works.
2014-02-13 14:23:27 +00:00
Jermolene
470beabf17 Enhance links so that control/command clicking suppresses navigation
Control- or Command-clicking on a link will now open the target tiddler
but suppress navigating to it. Kind of like opening in a background tab.
2014-02-12 22:00:12 +00:00
Jeremy Ruston
523eae83ff Merge pull request #407 from Skeeve/regexp_filter
fixed an awful typo in the regexp
2014-02-12 21:38:54 +00:00
Jermolene
ca0c352278 Extend the transclude widget to fallback to displaying it's child nodes if the target isn't defined 2014-02-12 21:38:37 +00:00
Stephan Hradek
0dc8de9dd2 fixed an awful typo in the regexp
The regexp fails when backslashes are used in the search-regexp. The closing bracket was at the wrong position.
2014-02-12 22:34:13 +01:00
Jermolene
ecad2bf7a8 Add better control over whether tiddlers are transcluded in block or inline mode 2014-02-12 17:59:28 +00:00
Jermolene
8b3bfa6805 Allow [title[Blah]] to match missing tiddlers
Fixes #404
2014-02-12 16:01:20 +00:00
Jermolene
d5b526914b Simplify the regular expression for HTML comments
We were getting catastrophic backtracking in Chrome for some input
texts where the closing “—>” of the comment was omitted.
2014-02-12 15:24:03 +00:00
Jermolene
5c66bc6dbc Update the reveal widget to allow control over content retention
Thus bringing back the animation of the opening and closing of the info
panel.
2014-02-12 08:32:19 +00:00
Jermolene
dd451800c7 Specify encoding for incoming requests
Fixes #397
2014-02-11 19:42:45 +00:00
Jermolene
190ced7cdd Sync from server even when not logged in 2014-02-11 19:10:40 +00:00
Jermolene
441d9078fa Coding style tweaks for #399 2014-02-10 17:34:10 +00:00
Jeremy Ruston
f0ab607ea1 Merge pull request #399 from shendaras/patch-1
getRelativeDate: support for negative deltas
2014-02-10 17:33:08 +00:00
Jermolene
ecba4f71ea Clean up the highlight plugin
Fixing various issues that were preventing language specifiers from
working.
2014-02-10 13:51:38 +00:00
Jermolene
dea08ed4f8 First pass at language plugins for internationalisation
Still quite a few details to work out, but this shows the basic idea of
re-using the theme mechanism to handle language plugins.

Comments and questions welcome.
2014-02-09 19:18:46 +00:00
Jermolene
8ad34e2db9 Refactor the theme switcher to be a generic plugin switcher 2014-02-08 09:29:37 +00:00
Jermolene
b26a32b93a Remove obsolete stylesheet helper 2014-02-08 09:29:11 +00:00
Jermolene
828fc9dcd0 Autosave when deleting a tiddler 2014-02-07 10:14:10 +00:00
Jermolene
f0d512edf0 Remove extraneous autosave attribute from navigator widget
Inadvertently committed.
2014-02-07 10:12:45 +00:00
Jermolene
a01bbd4b9c Add automatic saving and warning on exit with unsaved changes
We re-use some of the existing syncer mechanism. It was already keeping
track of changes to tiddlers in the store when working with a tiddler
syncadaptor. Now it also tracks changes when there is no syncadaptor,
allowing us to provide a warning if there are unsaved changes.
2014-02-06 21:36:30 +00:00
Jermolene
6d3d3322e5 Fix problem in server with URI encoding of titles in etags
Fixes #398
2014-02-05 19:39:29 +00:00