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
b7f674c51a
First pass at refactoring filter execution
...
This is the beginning of addressing #523 .
2014-04-03 20:49:16 +01:00
Jermolene
925b3d2a5b
Fix typo
2014-03-18 21:18:46 +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
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
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
bc8b72e6eb
Use hasOwnProperty to text for tiddler existence
2014-03-09 19:20:58 +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
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
ec0769d7ca
Fix typo
...
Fixes #417 , thanks @pmario
2014-02-21 09:11:27 +00:00
Jermolene
2744671211
Fix generateTitle to avoid clashing with shadow tiddlers
2014-02-20 09:58:01 +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
9db887748b
Extend setTiddlerData() to set arbitrary fields
2014-02-13 17:59:33 +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
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
1d685df928
Add support for autosave
...
Causes the wiki to be autosaved whenever clicking “done” after editing
a tiddler. Only works with savers that support autosave. We should
probably make autosave configurable
2014-02-04 21:21:01 +00:00
Jermolene
02ba92c6b5
Add [is[image]]
filter operator
2014-01-29 09:04:41 +00:00
Jermolene
0b3efe179e
Extend list filter operator to take a text reference
...
Instead of just a title. Means that we can apply the list operator to
fields other than the list field.
2014-01-25 18:14:30 +00:00
Jermolene
f4b27b33de
Fixed problem with multiple tiddlers created from dragging a single file
2014-01-24 14:09:06 +00:00
Jermolene
ed5cf8b044
Refactor importing of encrypted TiddlyWiki files so that it works on Node.js
2014-01-19 20:13:55 +00:00
Jermolene
299e9d15fb
Add support for importing encrypted TiddlyWiki documents
2014-01-19 18:43:02 +00:00
Jermolene
2c790d982f
Switch to using $tw.fakeDocument
for the fakedom document object
...
So that we can free us `$tw.document` to be the actual DOM document
2014-01-15 14:57:35 +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
1a74e2538c
Cleaning up further coding style inconsistencies that have crept in
2014-01-03 10:50:00 +00:00
Stephan Hradek
ce8c79ecfa
changed sort and sortcs to support nsort and nsortcs
2013-12-29 00:15:11 +01:00
Jermolene
12b4cc5d3e
Update wiki.readFiles() to call the callback just once
...
Now we accumulate the results and just pass them to the callback once.
2013-12-23 08:55:11 +00:00
Jermolene
bd80bf4acc
Regex optimisation suggested by @Skeeve
2013-12-20 18:14:11 +00:00
Jermolene
e66fb948c1
Typo from #296
2013-12-20 17:07:30 +00:00
Stephan Hradek
04077549ca
Fixed the typos Mario noticed
2013-12-19 20:38:59 +01:00
Stephan Hradek
42ba6852d1
changed 2 loops resolving name conflicts for new tiddlers as suggested in issue 294
2013-12-18 23:48:04 +01:00
Jermolene
6298c7aa43
Refactor wiki.forEachTiddler() and wiki.getTiddlers() to take an options parameter
2013-12-11 22:01:02 +00:00
Jermolene
6a71b399b0
Fix problem with transcluding non-string fields
...
Transcluding date or list fields (like `modified` or `tags`) was
crashing.
2013-12-11 15:51:32 +00:00
Jermolene
1b99dbb677
Add wiki.importTiddler()
...
Exactly like addTiddler except that it rejects plugins that are older
than the currently installed version.
2013-12-02 09:59:17 +00:00
Jermolene
0956ae10a0
Add support for downloading files
...
We were re-using the `tw-save-wiki` message both for saving the current
wiki and downloading a new wiki. Now we’ll use the separate
`tw-download-file` message for downloading.
Fixes #236
2013-11-27 20:51:08 +00:00
Jermolene
42fce1929c
Improve save notifications for TiddlySpot
2013-11-26 12:50:40 +00:00
Jermolene
b805633dc9
Reorganise the main file saving templates
...
We’re introducing a mechanism that allows us to decide which tiddlers
get saved. Using `$:/core/save/all` gives all tiddlers, as before.
Using `$:/core/save/empty` gives an empty wiki. Saving an empty wiki
from tw5.com isn’t the same as the empty wiki cooked from
editions/empty because the two editions have different plugins and
other system tiddlers.
2013-11-25 21:16:27 +00:00
Jermolene
939ad11eae
Rename the 'setvariable' widget to 'set'
...
Sleeker.
2013-11-15 18:31:39 +00:00
Jermolene
45c51481de
Improve performance of tag handling with some caching
2013-11-13 23:33:32 +00:00
Jermolene
d2dbc73448
Correct typo
2013-11-12 19:52:25 +00:00
Jermolene
51fe1e20e8
Make sure that searching for the empty string returns all available tiddlers
...
Makes sense because every tiddler contains the empty string. This
restores the functionality of the tag editor dropdown.
2013-11-11 15:26:41 +00:00
Jeremy Ruston
ec481415f9
Fixes for TiddlyWeb
2013-11-08 20:18:26 +00:00
Jeremy Ruston
cc0011abd3
Get rid of the "new_" prefix we had on some methods
...
There's still the "old_" prefix to get rid of too.
2013-11-08 08:51:14 +00:00
Jeremy Ruston
b7cb1d3391
Change new_widget
to widget
...
I was avoiding doing this until after the merge.
2013-11-08 08:47:00 +00:00
Jeremy Ruston
35adf4269a
Merge backlog of changes from master branch
...
This is too easy. I'm worried.
2013-11-08 08:33:27 +00:00
Jeremy Ruston
4eebe7388d
Add a wiki.makeWidget() method
...
Encapsulates some logic that has been duplicated elsewhere.
2013-10-29 14:48:24 +00:00
Jeremy Ruston
20f03de712
The big purge of the old widget mechanism
...
Getting rid of the old widget mechanism files finally gives us a payoff
for all the refactoring. Still a bit of tidying up to do, and we need
to re-introduce the animation mechanisms.
2013-10-27 22:55:36 +00:00
Jeremy Ruston
b1208a8d37
Fix problem with getTiddlerLinks()
...
It was crashing if it encountered a link widget that didn't have a `to`
attribute.
2013-10-27 13:54:39 +00:00
Jeremy Ruston
8c2fb7b8d0
Extend wiki object to have methods required for importing
2013-10-25 21:15:20 +01:00
Jeremy Ruston
26ac940637
Fix typo
2013-10-21 18:32:29 +01:00
Jeremy Ruston
e33f588b73
Let the new rendering methods accept a parent widget
2013-10-21 18:32:19 +01:00
Jeremy Ruston
25612958d7
Fixed bugs in previous commit to extend search to titles and tags of binary tiddlers
2013-10-18 16:09:10 +01:00
Jeremy Ruston
e11c620c27
Fix search filter so that titles and tags of binary tiddlers are searched
2013-10-17 16:34:50 +01:00
Jeremy Ruston
cc4940f41f
Use the setvariable widget instead of macrodef
...
setvariable is more general
2013-10-13 23:40:11 +01:00
Jeremy Ruston
9278c43a91
Add support for macro definitions
2013-10-13 22:39:05 +01:00
Jeremy Ruston
ed35d91be6
Initial Commit
...
Carried over from the abortive pull request #169
2013-10-12 17:05:13 +01:00
Jeremy Ruston
d3d72eff1b
Search over tags as well as the title and text fields
2013-10-11 08:46:09 +01:00
Jeremy Ruston
b563d8e98a
Ensure getTiddlerList() returns a copy of the tiddler list
...
Fixes #155
2013-09-18 12:12:29 +01:00
Jeremy Ruston
df0a1a7c42
Fix problem with wiki.search() incorrectly searching missing tiddlers
2013-08-24 16:51:54 +01:00
Jeremy Ruston
b88079442c
Add "listed" filter operator for retrieving the tiddlers that list a specified tiddler
2013-08-16 09:31:05 +01:00
Jeremy Ruston
6fc4e5db7c
Get rid of the old "fieldgrid" and "fieldlist" widgets
...
Instead, we'll use the "list" widget with the new support for macros.
2013-08-15 18:17:11 +01:00
Jeremy Ruston
0bda00ae71
Extend the fieldlist widget to retrieve all fields used across all tiddlers
2013-08-09 16:46:17 +01:00
Jeremy Ruston
a9a2ae2223
Add sorting by tiddler lists
...
The tag and tagging filters now sort their results by the list field of
the tag, if present
2013-08-08 17:39:34 +01:00
Jeremy Ruston
83ea953a1d
Switch the story list over to using the new list field
2013-08-07 17:54:27 +01:00
Jeremy Ruston
85007cb1e1
Correct comments
2013-08-06 15:27:02 +01:00
Jeremy Ruston
86e73ee323
Set modified field and other metadata for newly created and modified tiddlers
...
Right now we're setting the created/modified time, and only setting the
creator/modifier if the tiddler `$:/status/UserName` is defined.
2013-08-04 14:02:07 +01:00
Jeremy Ruston
1a160485a8
Documentation correction
2013-07-08 21:44:12 +01:00
Jeremy Ruston
1304bfd0d4
Special treatment so that text reference to title field works for missing tiddlers
...
The title field is the one field that we know for missing tiddlers.
This is needed in a subsequent commit of viewswitcher.
2013-07-08 15:16:55 +01:00
Jeremy Ruston
647bd51299
Fix problem with erroneous initialisation of changedTiddlers member
2013-07-03 16:00:48 +01:00
Jeremy Ruston
bf4216f3ac
Don't count references to shadow tiddlers as missing tiddlers
2013-05-31 17:53:11 +01:00
Jeremy Ruston
31a4b96f57
Fixed problem with getTextReference() not always returning a string
2013-05-27 17:55:23 +01:00
Jeremy Ruston
551ebdc005
Major refactoring of rendering mechanism
...
We now use a fake DOM implementation on the server to let us share more
rendering code between the text output vs. DOM output paths.
2013-05-17 10:12:25 +01:00
Jeremy Ruston
8564602256
Refactor rendertree to simplify context handling
...
Get rid of the separate renderContext stack and instead have a parent
pointer on renderer nodes. This lets us walk back up the render tree to
resolve context references
2013-05-15 17:32:17 +01:00
Jeremy Ruston
e501c0ec2a
Enhance TiddlyFox saver to display a notification on success
2013-05-07 18:09:15 +01:00
Jeremy Ruston
e12fbf0f9f
Comment clarification
2013-04-30 22:35:52 +01:00
Jeremy Ruston
f487ea68d1
Store the parser list in the wiki constructor
2013-04-25 17:40:12 +01:00
Jeremy Ruston
e39d246317
Added basic support for drag and drop of tiddlers
...
Links are now draggable. Dragging outside the browser will drop the
wiki text of the tiddler. Dragging to another TW5 browser window will
drop the entire tiddler, including fields.
2013-04-08 18:47:46 +01:00
Jeremy Ruston
dc00e584fb
Add support for filtering shadow tiddlers
2013-04-03 14:29:12 +01:00
Jeremy Ruston
cd36f594c5
Make the core into a plugin
2013-03-28 17:07:30 +00:00
Jeremy Ruston
e88db07085
Fixed problem with ignored default in wiki.getTiddlerText()
2013-03-27 13:48:17 +00:00
Jeremy Ruston
f427339a78
Add renderContext parameter to wiki.renderTiddler
2013-03-25 10:42:14 +00:00
Jeremy Ruston
6f88a57a41
Add wiki.countTiddlers() method
2013-03-21 22:21:00 +00:00
Jeremy Ruston
952f1b3900
Add tiddler info dropdown
...
Including backlinks
2013-03-19 16:45:07 +00:00
Jeremy Ruston
7cb65a3816
Add 'missing' and 'orphan' tabs
2013-03-19 10:14:44 +00:00
Jeremy Ruston
8e6ce3733d
Use "self" rather than "me" for consistency
2013-03-17 15:06:09 +00:00
Jeremy Ruston
17a9cdd1e3
Remove initSyncers() from wiki.js
2013-03-16 11:06:44 +00:00
Jeremy Ruston
71aa79013d
Remove invokeSyncers() method from wiki.js
2013-03-16 10:58:47 +00:00
Jeremy Ruston
854e8d7083
Use the wiki event mechanism to dispatch lazyLoad notifications to syncers
...
We're trying to get to the point where wiki.js doesn't know about
syncers
2013-03-16 10:50:36 +00:00
Jeremy Ruston
c3b57507b0
Refactored wiki event mechanism to support multiple event types
2013-03-16 10:42:46 +00:00
Jeremy Ruston
623a3ec8f8
Rename "shadow" tiddlers to "system" tiddlers
...
What we have at the moment isn't really the same as TiddlyWiki
classic's shadow tiddlers, it's a much simpler system for excluding
tiddlers. We'll use the term "shadow" instead to refer to the way that
tiddlers in plugins behave, which is exactly like TiddlyWiki classic's
shadow tiddlers.
2013-03-15 22:00:19 +00:00
Jeremy Ruston
e5443e27cb
Minor tweaks to getTiddlers
2013-03-15 20:02:31 +00:00
Jeremy Ruston
00ad0bc7a9
Docs update
2013-03-10 19:27:44 +00:00
Jeremy Ruston
83a141752c
Further simplifications to syncer interface
...
Dropped the idea of exposing separate server connections
2013-03-09 09:54:01 +00:00
Jeremy Ruston
3da508b7c4
Simplify syncer interface
2013-03-08 20:29:13 +00:00
Jeremy Ruston
06c5308c4b
More explicit name for "touchTiddler"
...
Thanks to @boycook for the conversation that triggered this refactoring
2013-03-05 19:59:55 +00:00
Jeremy Ruston
9a71117853
Prettify JSON
2013-01-28 19:27:22 +00:00
Jeremy Ruston
d28ee0b82a
Change module type for parsers to "parser"
2013-01-16 13:56:11 +00:00
Jeremy Ruston
baff901685
Added ability to transclude fields of data tiddlers
...
This allows us to transclude colours into CSS
2013-01-15 17:50:47 +00:00
Jeremy Ruston
12683c7d5f
Removed dead code
...
Left over from the big parser refactoring
2012-12-29 22:27:36 +00:00
Jeremy Ruston
b006cf163f
Remove the old parser code
...
Thus introducing a few functional regressions, but it's going to be
easier to fix things up without the old code knocking around and
getting in the way.
2012-12-28 22:08:32 +00:00
Jeremy Ruston
d6e531e87c
Extend new parser mechanism to determine parser based on content type
...
And add an image parser and a plain text parser
2012-12-27 17:08:29 +00:00
Jeremy Ruston
c703fb1267
Get rid of the wikivocabulary object
2012-12-26 22:02:59 +00:00
Jeremy Ruston
055bdd8d8f
Added inline transclusion as well as block transclusion
2012-12-20 15:07:38 +00:00
Jeremy Ruston
d338a54370
Introduce refactored wiki parser and renderer
...
This is a half-way through a big refactoring of the parsing and
rendering infrastructure. The main change is to separate the parse and
render trees, which makes the code a lot cleaner. The new parser isn't
yet functional enough to replace the existing parser so for the moment
you have to manually invoke it with `$tw.testNewParser()` in your
browser console. I really ought to use branches for this kind of
thing...
2012-12-13 21:34:31 +00:00
Jeremy Ruston
580bd6438e
Fixed issues with blank tiddler text
...
The empty string is falsy in JavaScript, to keep us on our toes.
2012-11-23 13:08:10 +00:00
Jeremy Ruston
3d38d4add3
Use text/x-tiddlywiki for old format TiddlyWiki text for compatibility
2012-11-19 16:58:16 +00:00
Jeremy Ruston
84650b9a54
Swap over to the new mime type conventions
...
Discussed in
https://groups.google.com/forum/#!topic/tiddlywikidev/re8xfLqZNCE
2012-11-18 15:22:13 +00:00
Jeremy Ruston
5c87b437ee
Support for lazy loaded tiddlers
2012-11-18 13:14:28 +00:00
Jeremy Ruston
4742ab14fc
Start using the server connection tiddler to store host details
2012-11-17 21:15:19 +00:00
Jeremy Ruston
e194aed449
Introduce syncer mechanism
2012-11-17 20:18:36 +00:00
Jeremy Ruston
0dbe4c0291
Get rid of more vestiges of the old empty generation mechanism
2012-11-16 22:40:25 +00:00
Jeremy Ruston
539b64b626
Refactoring module mechanism
...
Changed the data structure $tw.modules.types to make it possible to
detect repeated registrations
2012-11-14 11:23:43 +00:00
Jeremy Ruston
9612aac296
New implementation for shadow tiddlers
...
Now shadow tiddlers are any tiddler whose title starts with "$:/"
2012-11-11 14:31:45 +00:00
Jeremy Ruston
9f6909ddc4
Appeasing the gods of JSHint
2012-11-06 17:21:56 +00:00
Jeremy Ruston
b81b2c0c63
Fixed problem with tiddler hashmap handling
...
We need to check hasOwnProperty to avoid problems with tiddlers called
eg "__proto__". There are more changes like this to come
2012-11-06 14:10:55 +00:00
Jeremy Ruston
ba4e140147
Fixed problem with retrieving non-existent list tiddlers
2012-10-25 22:44:00 +01:00
Jeremy Ruston
e063ec6b1a
Added new getTiddlerList() method to wiki
2012-10-25 14:57:33 +01:00
Jeremy Ruston
c087228b33
Starting to introduce list views
...
These are custom modules for visualising list manipulations and
navigations
2012-10-23 17:13:47 +01:00
Jeremy Ruston
5ced636abf
Rename "viewer" modules to "fieldviewer"
2012-10-23 16:40:22 +01:00
Jeremy Ruston
3a710ad9ce
Fix problem with sortTiddlers
2012-10-23 16:28:38 +01:00
Jeremy Ruston
092e495e90
Fixes the text reference parsing
2012-10-18 23:20:27 +01:00
Jeremy Ruston
971bc68163
Fixed search bug
2012-10-18 18:27:58 +01:00
Jeremy Ruston
cd04fa22c6
Introduce extensible viewer modules for the view macro
2012-10-18 18:27:27 +01:00
Jeremy Ruston
10ed746209
Seach titles as well as bodies
2012-10-18 10:51:52 +01:00
Jeremy Ruston
caaa798ced
Support search terms vs. literal search
...
Search terms like "one two" are searched like Google, returning
tiddlers with both terms
2012-10-17 20:38:36 +01:00
Jeremy Ruston
915caf2a18
Improvements and fixes to search
2012-10-17 14:57:13 +01:00
Jeremy Ruston
0982bcbf45
Added function to search a wiki
...
Crude at the moment
2012-10-17 14:34:59 +01:00
Jeremy Ruston
343a2c2340
Fixed problem with sorting by missing fields
2012-10-16 21:41:12 +01:00
Jeremy Ruston
3070357d70
Refactor serialisers to work on an array of tiddlers
2012-09-02 20:28:32 +01:00
Jeremy Ruston
389b6513b6
Fixed wiki.saveWiki to pass the correct parameters to the template
2012-08-25 17:32:43 +01:00
Jeremy Ruston
175d7c67fd
Moved support for parameter substitution into wiki.parseText()
...
We'll later refactor the same logic out of the tiddler macro
2012-08-25 12:05:57 +01:00
Jeremy Ruston
daff9c10f3
Tighten terminology for plugins vs. modules
...
"Plugins" are bundles of tiddlers managed as one, "modules" are
JavaScript tiddlers with a module type identifying when and how they
should be executed.
2012-08-03 15:09:48 +01:00
Jeremy Ruston
a2caf46b1e
Added new wiki methods for reading and writing a toddler as data
2012-07-22 22:03:06 +01:00
Jeremy Ruston
c74d608418
Removed parser switch
2012-07-14 18:08:00 +01:00
Jeremy Ruston
5e11de719c
Added HTTP upload saver
...
Now we can save changes to TiddlySpot
2012-07-13 13:03:38 +01:00
Jeremy Ruston
05d9cb60fc
Passed host wiki to saver constructors
2012-07-12 16:58:49 +01:00
Jeremy Ruston
c340082653
Added primitive save changes mechanism
...
Works in Firefox for now
2012-07-10 23:18:44 +01:00
Jeremy Ruston
2282a825ec
Extraneous var
2012-06-19 16:56:40 +01:00
Jeremy Ruston
08d7a12d04
Finishing off the text reference support
2012-06-19 16:47:25 +01:00
Jeremy Ruston
ec3f16f50f
Enabled sorting by title of tiddlers that don't exist
2012-06-19 10:40:05 +01:00
Jeremy Ruston
381d0715e9
The beginnings of support for text references
2012-06-19 08:56:15 +01:00
Jeremy Ruston
3584d854aa
Add case sensitive sorting
2012-06-14 11:36:26 +01:00
Jeremy Ruston
a160fb07e4
Sort tagged tiddlers
2012-06-13 13:19:32 +01:00
Jeremy Ruston
84a352b804
Added wiki.getTiddlersWithTag()
...
We should probably use the filter mechanism for this...
2012-06-13 09:10:03 +01:00
Jeremy Ruston
45cf175b8b
Made sorting be case insensitive
2012-06-10 22:53:29 +01:00
Jeremy Ruston
b5f8f97ccc
Refactored loading of tiddlywiki.plugin
files
...
Now we read the files raw, rather than through the deserialiser
2012-06-08 11:47:05 +01:00
Jeremy Ruston
e8c69ae7dc
Comment updates
2012-06-07 11:31:44 +01:00
Jeremy Ruston
3da70b925f
Saving a shadow tiddler preserves its shadow status
2012-06-06 22:19:34 +01:00
Jeremy Ruston
22b836e4ac
Added 'isShadow' flag for system tiddlers
...
Shadow tiddlers are omitted from lists by default
2012-06-06 13:21:20 +01:00