1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-06-29 08:43:14 +00:00
Commit Graph

110 Commits

Author SHA1 Message Date
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
Jermolene
299e9d15fb Add support for importing encrypted TiddlyWiki documents 2014-01-19 18:43:02 +00:00
Jermolene
60926198b1 Improve logic for initialising reading node tiddlers
We want fine control of whether tiddlers are read from the DOM or the
file system, without ganging it to whether we’re on node vs. browser.
2014-01-18 14:53:26 +00:00
Jermolene
839361d54f Futher refactoring for TiddlyDesktop
We need finer control over the boot process so that we can force it to
load tiddlers from the Node.js file APIs rather than from the DOM
2014-01-15 14:51:04 +00:00
Jermolene
c7fb0bd349 Start updating the boot kernel for more node-webkit integration
The goal is to make it possible to use the Node.js boot code under
node-webkit, so that we can directly load wiki folders
2014-01-14 14:09:04 +00:00
Jermolene
b04141fefd Don't load tiddlers that don't have a title
We were getting problems (eg, adding a `readme.md` to a plugin without
an accompanying `readme.md.meta` would end up creating a tiddler called
“undefined”)
2014-01-12 21:48:18 +00:00
Jermolene
b5d2b79a37 Add nbsp handling to htmlDecode 2014-01-12 20:11:51 +00:00