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
09156af475
Add support for "before" field on startup modules
2014-05-03 19:49:50 +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
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
bd3e955821
Add compound iterators to boot wiki object
2014-04-30 22:49:28 +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
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
23a71b433e
Rename isEqual to isArrayEqual
2014-04-27 17:15:42 -04:00
Devin Weaver
8556e0ea49
Fix coding style
2014-04-27 17:15:42 -04:00
Devin Weaver
3a78465d2d
Add isModified to Tiddler object
...
Adds a check to see if this tiddler differers from the tiddler
referenced in the draft.of field. It iterates of the fields property
skiping those feilds that offer a false positives. Uses the isEqual util
for the tags array.
2014-04-27 17:15:42 -04:00
Devin Weaver
23640d7af4
Add isDraft to Tiddler object
...
Check to see if this tiddler is a draft (has a draft.of field)
2014-04-27 17:15:42 -04:00
Devin Weaver
540681b2bc
Add $tw.util.isEqual
...
This checks to see if an array is equal. Should handle case where an
array is considered null or undefined. It short circuits when the
lengths are different and will only loop when needed.
2014-04-27 17:15:42 -04: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
ba576d9f1b
Add support for safe mode
2014-04-19 09:36:08 +01:00
Jermolene
f57e047877
Fix issues with tiddlers with null fields
...
Fixing #567
2014-04-17 14:43:12 +01:00
Jermolene
bd4a031df8
Fix problem with version checking logic
...
Previously, importing a plugin with a semantically identical version
number was not rejected. This meant that attempts to import
5.0.9-prerelease wikis into 5.0.9-beta led to a corrupted wiki, with a
beta core and prerelease plugins.
2014-04-17 11:59:42 +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
James Welford Anderson
0f07977930
deserializertype -> deserializerType
2014-04-09 06:26:01 +09: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
ea46f85a8a
Fix problem with fields called "__proto__"
2014-04-06 22:49:20 +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
8a7d0f53d3
Add a sourceURL to the end of eval'd code
...
This, miraculously, lets Chrome dev tools list tiddler modules in the
script tag by their proper titles. Which lets you set breakpoints
within them!!!!!
https://chromedevtools.googlecode.com/svn-history/r421/trunk/tutorials/b
reapoints/index.html#regular
2014-04-06 22:36:51 +01:00
Jermolene
272a4bbe61
Filtering optimisations
2014-04-05 17:31:36 +01:00
Jermolene
53ca7f6a2f
More defensive handling of pluginInfo
2014-03-31 18:30:45 +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
Jermolene
b8d0fd059b
Fix bug with plugintiddlers filter operator
2014-03-18 21:18:45 +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
279626a3e3
Freeze array or object tiddler fields
...
Previously object fields like the tags array weren’t frozen.
2014-03-17 08:58:42 +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
b714c67374
Refactor plugin loading to retain plugin info for all plugins
...
Previously we were not reading the plugin info for plugins that hadn’t
been loaded.
2014-03-14 15:23:12 +00:00
Jermolene
24b6603c42
Fix problem with checking versions of plugins carrying a badly formatted "version" field
2014-03-14 10:43:22 +00:00
Jermolene
a3507bf611
Freeze the fields of a tiddler
...
Thus enforcing the immutability of tiddler objects
2014-03-12 08:33:13 +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
8bd1fa50dc
Fixed typo in dom maker
2014-03-08 10:43:01 +00:00
Jermolene
3994f0dbc6
Add new option to retain tiddler paths
2014-02-27 16:30:05 +00:00
Jermolene
f3930ad69c
Add init command to initialise a wiki folder
...
Fixes #362
2014-02-23 22:58:17 +00:00
Jermolene
ecb845f1cd
Require that wiki folders have a tiddlywiki.info file
...
Previously, we were just using default content if the tiddlywiki.info
file was missing. This allowed us to do things like `tiddlywiki
—server` without actually being in a valid wiki folder.
Fixes #361
2014-02-22 16:38:34 +00:00
Jermolene
dfbb6e1fba
Ensure that $:/isEncrypted is reset if modified
2014-02-21 18:21:10 +00:00
Jermolene
9b6c59e9a6
Allow .multids files to contain blank lines and ": " sequences
...
Also added a warning for multiple definitions of the same tiddler in a
multids file.
Fixes #415
2014-02-21 09:24:36 +00:00
Jermolene
d21fb85d94
Change .tids
file extension to .multids
...
Hopefully less confusing
2014-02-20 10:27:02 +00:00
Jermolene
1f41daf433
Add support for multi-tiddler files with a .tids extension
2014-02-09 20:34:42 +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
02ba92c6b5
Add [is[image]]
filter operator
2014-01-29 09:04:41 +00:00
Jermolene
175e86078c
Fix crash when wiki/themes folder contains files that are not themes
...
Fixes #370
2014-01-28 18:58:01 +00:00
Jermolene
5af30086c0
Fix substitution for nbsp
...
We were substituting the wrong character for non-breaking spaces
2014-01-28 15:23:58 +00:00
Jermolene
3f9561dd95
Better logging
2014-01-26 18:53:31 +00:00
Jermolene
2fc6451bf7
Rejigged encrypted import so that the current password isn't changed
...
We still try the currently stored password. If that doesn’t work then
we prompt for a password, but we no longer store the password in the
store.
2014-01-20 13:35:55 +00:00