1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-11-08 10:59:57 +00:00
Commit Graph

288 Commits

Author SHA1 Message Date
Jeremy Ruston
73236d72f5 Note 2012-01-17 14:36:37 +00:00
Jeremy Ruston
0297de3648 Cleaning up 2012-01-17 14:36:27 +00:00
Jeremy Ruston
102724b3e8 Changed the SVG parser to use IMG tags
Embed the SVG image in an IMG tag rather than directly, to ensure that
it has it's own DOM state (otherwise things like IDs in SVG images are
visible to the hosting page)
2012-01-17 13:53:04 +00:00
Jeremy Ruston
bd17a389cb Move the cache from the Tiddler object to the WikiStore
It's not really a concern of the Tiddler object
2012-01-17 13:31:06 +00:00
Jeremy Ruston
b898afe3e5 Refactor the Tiddler object to enforce immutability
And in the process move the fields out of the fields member
2012-01-17 13:01:55 +00:00
Jeremy Ruston
2ff603da0e Added support for wildcard references in recipes 2012-01-16 19:22:10 +00:00
Jeremy Ruston
9075b8a020 Mapped wiki image markup to image macro 2012-01-16 08:58:51 +00:00
Jeremy Ruston
ac61e2d251 Rejigged the link macro to accept child elements 2012-01-15 18:39:14 +00:00
Jeremy Ruston
606374e563 Added the image macro 2012-01-15 14:37:49 +00:00
Jeremy Ruston
4df13a3e24 Refactored link classes allocation
Don't need the classesForLink() method anymore. Also avoid modifying
the argument to adjustClassesForLink().
2012-01-15 13:48:13 +00:00
Jeremy Ruston
4681d14f39 Fixed the view macro to reuse the link macro 2012-01-15 13:37:50 +00:00
Jeremy Ruston
ca6e32bd5a Refactor link handling to use a link macro
Instead of the special case handling for <a> tags
2012-01-15 13:29:16 +00:00
Jeremy Ruston
c4f9efd894 Get rid of the obsolete link refreshing circuitry
We're going to redo links as macros and take advantage of that circuitry
2012-01-15 13:27:59 +00:00
Jeremy Ruston
2c20ef6aef Beefed up the stitchElement helper 2012-01-15 13:27:30 +00:00
Jeremy Ruston
c26f197462 Fixed problem with external links 2012-01-15 13:27:15 +00:00
Jeremy Ruston
e2a0955ced Renamed 'handler' member of macros
Used to be called "code". And associated documentation changes
2012-01-15 12:16:28 +00:00
Jeremy Ruston
c3c5334795 Fixed minor problem with backtick formatting
It's confusing if it behaves differently that the existing
tripe-curly-brace format
2012-01-15 11:41:54 +00:00
Jeremy Ruston
b671ecdedd Refactored story macro to use renderTiddler instead of renderText 2012-01-14 17:24:25 +00:00
Jeremy Ruston
7c4d5b76ef Refactored parameter names for renderTiddler() 2012-01-14 17:24:07 +00:00
Jeremy Ruston
b26bf8e278 Keeping JSHint happy 2012-01-14 17:23:43 +00:00
Jeremy Ruston
b7d0942625 Added support for store events and basic refreshing
1s after loading you'll see the link to TiddlyWiki5 flip from italic to
normal text as that tiddler is created on a timer
2012-01-14 15:49:12 +00:00
Jeremy Ruston
054977c912 Add markup to capture macro details 2012-01-14 15:48:17 +00:00
Jeremy Ruston
adf4a3bae1 New utilities stitchElement and nextTick 2012-01-14 15:47:41 +00:00
Jeremy Ruston
e046fd7cbf Avoided using jQuery when bootstrapping the page 2012-01-13 18:51:39 +00:00
Jeremy Ruston
8561fb979c Added support for # comment lines in recipe files 2012-01-13 18:50:37 +00:00
Jeremy Ruston
510006d67d Added story macro
And the PageTemplate for it to go into
2012-01-13 16:50:11 +00:00
Jeremy Ruston
f5c56c066e Added support for binary ingredients over HTTP 2012-01-13 15:37:58 +00:00
Jeremy Ruston
ecfbaaa564 Added support for JPEG and PNG bitmap tiddlers 2012-01-12 21:48:24 +00:00
Jeremy Ruston
ecabcd676b Added support for SVG tiddlers
Which means adding a parser for SVG, even though it doesn't actually do
any parsing at the moment
2012-01-12 19:17:32 +00:00
Jeremy Ruston
6f247640c6 Re-enabled RSS feed generation
It was temporarily turned off while all that refactoring was going on
2012-01-08 14:07:01 +00:00
Jeremy Ruston
d01ba66305 Added backtick notation for inline code blocks
Getting bored of typing {{{ and }}}, given that  my keyboard already
devotes a key to backtick
2012-01-08 11:33:24 +00:00
Jeremy Ruston
14e252590c Minor optimisation to the list macro
By moving the compiling of the template outside of the main loop
2012-01-08 11:03:20 +00:00
Jeremy Ruston
bc16400ef2 Cleared some temporary variables after use
To reduce memory consumption
2012-01-08 10:24:09 +00:00
Jeremy Ruston
cd0ecf6e1c Implemented <<list>> macro 2012-01-07 21:54:14 +00:00
Jeremy Ruston
b959c6ea22 Removed obsolete context handling in wikitext parse trees 2012-01-07 21:54:00 +00:00
Jeremy Ruston
3f10da9ed4 Keeping JSHint happy 2012-01-07 20:09:09 +00:00
Jeremy Ruston
5bb2a1e1b7 Added support for the "with" parameter to the tiddler macro 2012-01-07 20:09:01 +00:00
Jeremy Ruston
c865fabd3c Added support for macro parameters that trigger all dependencies 2012-01-07 20:08:46 +00:00
Jeremy Ruston
0910ada5fb Added support for compiling and rendering raw text blocks 2012-01-07 20:08:11 +00:00
Jeremy Ruston
4c19c76461 Fixed problem with ArgParser returning non-string argument names 2012-01-07 20:07:54 +00:00
Jeremy Ruston
3560703078 Fixed handling of "dependentAll" macros
Like <<list>>
2012-01-07 18:34:20 +00:00
Jeremy Ruston
3a98cc5389 Added verification of macro type compatibility 2012-01-07 18:33:57 +00:00
Jeremy Ruston
7a0f94343a Converted spaces to tabs
Dang things keep slipping in
2012-01-07 17:37:20 +00:00
Jeremy Ruston
9a73b0a6aa Rejigged macro implementation
Now each macro is in a separate file, and is implemented as a function,
rather than being inlined into the compiled tiddler rendering function
2012-01-07 17:33:42 +00:00
Jeremy Ruston
41f33a8639 Comments 2012-01-07 11:43:49 +00:00
Jeremy Ruston
d89ea0abd7 Cleaning up some macro definition wrinkles 2012-01-07 11:43:40 +00:00
Jeremy Ruston
306f305a25 Better comments 2012-01-07 11:43:24 +00:00
Jeremy Ruston
bd617b2483 Adjusted link class detection
The problem is that it's sometimes useful to use URLs as the title of
tiddlers, making it hard to distinguish URLs from tiddler titles...
2012-01-07 10:35:02 +00:00
Jeremy Ruston
b92183a3a7 Take links into account when accumulating dependencies 2012-01-07 10:30:50 +00:00
Jeremy Ruston
c716cdce20 Added support for macros that are dependent on all other tiddlers 2012-01-06 21:08:15 +00:00
Jeremy Ruston
82a83bd714 Added tracking of dependencies between tiddlers 2012-01-06 19:41:42 +00:00
Jeremy Ruston
3d507c3bab Refactored macro parameter parsing
So that it happens during parsing, not compilation. This will enable us
to do the dependency tracking during parsing, and not wait until
compilation time
2012-01-06 18:43:36 +00:00
Jeremy Ruston
86bf495dec Removed some unused requires 2012-01-06 17:53:37 +00:00
Jeremy Ruston
14243acec9 Adding caching for tiddler parse trees, render functions, and renditions 2012-01-06 17:40:22 +00:00
Jeremy Ruston
e190cadcca Minor tweaks to link class handling 2012-01-05 21:31:47 +00:00
Jeremy Ruston
f155c150e2 Improved handling of HTML links
And updates to tests and comments
2012-01-05 20:10:25 +00:00
Jeremy Ruston
9961ddc8b4 Fixed entities decoding in plain text renderings 2012-01-05 11:35:38 +00:00
Jeremy Ruston
037e083007 Corrected and simplified readme 2012-01-05 11:31:40 +00:00
Jeremy Ruston
8b7962c720 Missed off last commit
I hate git
2012-01-05 11:08:32 +00:00
Jeremy Ruston
57e3143d69 Refactoring the wikitext parser
To match the structure of the JavaScript parser, and make it less
complicated
2012-01-05 11:08:05 +00:00
Jeremy Ruston
b1b1b84b3e Cleaning up the JavaScript parser 2012-01-05 10:00:21 +00:00
Jeremy Ruston
1e02389f46 WikiStore cleanups 2012-01-04 19:44:38 +00:00
Jeremy Ruston
733e93de63 Refactored WikiTextCompiler
As promised, to reduce duplication of code
2012-01-04 19:32:38 +00:00
Jeremy Ruston
3ff1d9a76c Cleaned up JavaScript processing
I'm slowly trying to make the JavaScript processing and the WikiText
processing use the same conventions
2012-01-04 18:31:19 +00:00
Jeremy Ruston
e4d2213835 Added plain text support
Temporary hack; lots of code duplication to be resolved shortly
2012-01-04 11:58:08 +00:00
Jeremy Ruston
8a5a9bfa8b Macro fixes 2012-01-04 11:57:45 +00:00
Jeremy Ruston
91b94e5d1a Keeping JSHint happy
Because it's a fastidious master, etc….
2012-01-03 17:42:33 +00:00
Jeremy Ruston
8dd7315d3c Changed function ordering to keep jshint happy
It's a fastidious task master
2012-01-03 17:08:16 +00:00
Jeremy Ruston
36ba38d685 Bugfix and removed dead code 2012-01-03 12:42:34 +00:00
Jeremy Ruston
cc59a1b91d Refactored wikitest.js and tiddlywiki.js to use App.js 2012-01-03 12:23:02 +00:00
Jeremy Ruston
75e6bdef2b Changed App.js to be a proper object class 2012-01-03 11:57:30 +00:00
Jeremy Ruston
883956e855 Renamed Main.js to App.js
Because now we're going to use the same logic for the client and server
2012-01-03 11:38:15 +00:00
Jeremy Ruston
a865c05be7 Switched the parser to use the compiler rather than the renderer
The renderer will be going away shortly
2012-01-03 11:10:25 +00:00
Jeremy Ruston
b8e7681342 Added macro helpers and macro definitions
The macro definitions will go out into their own tiddlers shortly
2012-01-03 11:09:59 +00:00
Jeremy Ruston
0de633d28b Additional utilities for stringifying and escaping strings
Needed for JavaScript compilation
2012-01-03 11:09:26 +00:00
Jeremy Ruston
2b5676e187 Refactored use of ArgParser 2012-01-03 11:08:56 +00:00
Jeremy Ruston
3515016a7e Hacked the sandbox to expose a parse() method
The sandbox will be going shortly, it's convenient at the moment though
2012-01-03 11:08:41 +00:00
Jeremy Ruston
06f9887d59 Temporarily suppress RSS generation
It's going to be broken for a few days
2012-01-03 11:08:16 +00:00
Jeremy Ruston
304d54f8ca Terrible hack to add the new school macro definitions 2012-01-03 11:08:00 +00:00
Jeremy Ruston
b7137a7ab8 Changed ArgParser to defer evaluated parameters
In a compiled environment we evaluate the parameters at run time, not
parse time.
2012-01-03 11:07:45 +00:00
Jeremy Ruston
762985a846 Refactoring tiddler rendering
The new approach is to compile each tiddler into a JavaScript function
that renders it at run time. Lots of changes over the next few days,
and not all the tests are going to survive at all times...
2012-01-03 11:07:09 +00:00
Jeremy Ruston
04dc396f2a Added a temporary hack to get pegs working serverside 2011-12-28 22:21:31 +00:00
Jeremy Ruston
ed2e2ab14c Complete switch over to pegjs 2011-12-28 22:07:17 +00:00
Jeremy Ruston
e27d5392a1 Some mixups missed from previous commit 2011-12-28 17:45:58 +00:00
Jeremy Ruston
e02a484591 Removed TextProcessors() and TiddlerConverters() classes 2011-12-28 17:16:56 +00:00
Jeremy Ruston
32ff9e46b1 Added dummy support for missing tiddlers and orphans
And also proper support for getShadowTitles()
2011-12-28 16:10:30 +00:00
Jeremy Ruston
ed28773178 Added scrollTo animation for navigation in TW5 2011-12-28 16:10:03 +00:00
Jeremy Ruston
f381e95452 Note about JavaScript sanitisation 2011-12-28 16:09:49 +00:00
Jeremy Ruston
143454f784 Just open the HelloThere tiddler at startup 2011-12-28 16:09:33 +00:00
Jeremy Ruston
629a5b12da Added error checking and tests for evaluated parameters 2011-12-21 17:21:28 +00:00
Jeremy Ruston
4c11503bae Added skeleton support for evaluated macro parameters 2011-12-21 16:54:51 +00:00
Jeremy Ruston
02a2630dd6 Fixed problem with recipe files containing carriage returns 2011-12-21 14:03:39 +00:00
Jeremy Ruston
0d1a2ef21c Added uglify.js 2011-12-21 13:03:37 +00:00
Jeremy Ruston
f096b19e4a Simplified subrendering 2011-12-17 13:50:20 +00:00
Jeremy Ruston
4217ee3ccc Fixed timeline macro to exclude tiddlers that lack the target field 2011-12-17 10:55:53 +00:00
Jeremy Ruston
f0e9c4e7ff Added support for the timeline macro 2011-12-16 17:45:33 +00:00
Jeremy Ruston
0823beb85d Added template support to list macro 2011-12-16 10:48:36 +00:00
Jeremy Ruston
50e11a0da8 Added support for list all macro 2011-12-14 18:25:40 +00:00
Jeremy Ruston
d96053192b Added support for the view macro, and client side wikitext tiddler templates 2011-12-14 15:45:42 +00:00
Jeremy Ruston
00f8021749 JSHint makes a hard task master... 2011-12-14 14:11:11 +00:00
Jeremy Ruston
364d891ca6 Added skeleton browser support for navigating between tiddlers 2011-12-13 16:20:56 +00:00
Jeremy Ruston
5383368b51 Improved browser module implementation 2011-12-13 12:48:11 +00:00
Jeremy Ruston
8ed8772b82 Experimental support for client-side builds
These changes allow tiddlywiki.js to cook it's own components into a
skeletal new-school client-side TiddlyWiki.
2011-12-13 12:30:09 +00:00
Jeremy Ruston
f112048682 Added a function wrapper around all source files to keep JSHint happy 2011-12-12 10:52:04 +00:00
Jeremy Ruston
53d77edd01 Updated comments and documentation 2011-12-12 09:39:43 +00:00
Jeremy Ruston
820bd02f8f Added sortField and excludeTag to WikiStore.forEachTiddler 2011-12-12 08:59:28 +00:00
Jeremy Ruston
dc94b7a002 Improved comments 2011-12-11 19:00:21 +00:00
Jeremy Ruston
80d71d7bf4 Major refactoring of how wiki text parsing and rendering is packaged 2011-12-11 18:28:09 +00:00
Jeremy Ruston
afb80d5fa8 Updated comments 2011-12-11 16:00:01 +00:00
Jeremy Ruston
4eb464548b Refactored tiddler serialization and deserialization
Introduced TiddlerConverters, a sort of factory for them
2011-12-11 14:51:48 +00:00
Jeremy Ruston
d748d04d92 Added support for generating the <title> tag from wikifying WindowTitle 2011-12-10 11:46:37 +00:00
Jeremy Ruston
b526f8bfaf Refactored helper methods to be module private 2011-12-09 19:39:19 +00:00
Jeremy Ruston
32514df9f3 Refactored wiki text rendering 2011-12-09 18:29:29 +00:00
Jeremy Ruston
7184bc5fa5 Lots of JSHint induced tweaks
Still not spotless
2011-12-09 16:34:02 +00:00
Jeremy Ruston
91c183480c Fixed cascading for with: parameters to tiddler macro 2011-12-09 14:51:47 +00:00
Jeremy Ruston
1e015c72dd Removed extraneous debugging call 2011-12-09 12:27:00 +00:00
Jeremy Ruston
318381a21b Fixed problem with tiddler context within macros 2011-12-09 12:26:36 +00:00
Jeremy Ruston
ad5356f2f3 Added support for parameterised transclusions
Still no protection against infinite transclusion loops
2011-12-09 10:17:41 +00:00
Jeremy Ruston
a5a0567fe9 Added support for transclusion macro 2011-12-09 08:59:49 +00:00
Jeremy Ruston
ff73987457 Removed skeletons for macros that are not immediately planned for implementation 2011-12-08 18:09:22 +00:00
Jeremy Ruston
9d258eca88 Added skeletons for the other macros
And filled out the 'today' macro, including a bunch of date related
bits and bobs
2011-12-08 18:05:21 +00:00
Jeremy Ruston
172d4cdcf2 Added support for macros
And added a dummy version macro to get started
2011-12-08 17:18:03 +00:00
Jeremy Ruston
5b5bc2f756 Removed accidental debugging logging 2011-12-08 16:56:12 +00:00
Jeremy Ruston
c3331cb090 Added preliminary support for generating RSS feeds
Which also included adding the shadow shadow tiddlers that are built
into TiddlyWiki's source code, and are not handled by cook.rb and
ginsu.rb
2011-12-08 16:20:11 +00:00
Jeremy Ruston
e9d3a878c1 Added hasTag() method to wiki store 2011-12-08 16:19:19 +00:00
Jeremy Ruston
6d727437e7 Fixed problem with list wiki rule 2011-12-08 16:19:02 +00:00
Jeremy Ruston
3bef25194c Removed detection of external vs. internal links
This should be deferred until at least rendering, and possibly until
the runtime navigation handler
2011-12-08 13:16:07 +00:00
Jeremy Ruston
be52fbb5d1 Fixed problem with custom CSS classes 2011-12-08 13:04:12 +00:00
Jeremy Ruston
a09c43d456 Added support for hexadecimal HTML entities 2011-12-08 12:45:26 +00:00
Jeremy Ruston
ef60c9018e Fixed problems with HTML entity handling 2011-12-08 12:38:08 +00:00
Jeremy Ruston
eb9e8891cb Refactored TiddlyWikiInput to be a type of tiddlerFileInput 2011-12-07 17:39:55 +00:00
Jeremy Ruston
dd9537cd88 Renamed the store class from TiddlyWiki to WikiStore
Much less confusing.
2011-12-06 18:29:53 +00:00
Jeremy Ruston
391b1be3dc More tests, more fixes 2011-12-06 18:04:40 +00:00
Jeremy Ruston
6c06ef316d Removed unnecessary require() 2011-12-06 17:50:13 +00:00
Jeremy Ruston
e1e510cea2 Added proper HTML rendering of style attributes 2011-12-06 16:54:13 +00:00
Jeremy Ruston
ad26dd6be3 Test improvements and associated bug fixes 2011-12-06 10:40:49 +00:00
Jeremy Ruston
5297fa690d Fixed HTML encoding of rendered output 2011-12-06 09:53:21 +00:00
Jeremy Ruston
87aa8667ec Added plain text rendering of tiddlers 2011-12-06 09:27:39 +00:00
Jeremy Ruston
e3b1def010 Changed link code to generate ordinary <A> tags 2011-12-06 09:21:45 +00:00
Jeremy Ruston
e7cda202fb Added basic support for HTML rendering 2011-12-05 18:21:52 +00:00
Jeremy Ruston
620add5579 Integrated the TiddlyWiki wikifier
A large refactoring to tidy up the interface of the TiddlyWiki wikifier
code, and package it as a wiki text parser.
2011-12-05 16:50:25 +00:00
Jeremy Ruston
b829b1d28f Stopped formatters generating empty attributes 2011-12-05 13:15:06 +00:00
Jeremy Ruston
e43237e282 First pass at transliterating the wikifier to avoid DOM usage
Instead, the parse tree is built up as a JavaScript object tree
2011-12-05 10:34:43 +00:00
Jeremy Ruston
fc423ba336 Brought in the textPrimitives from TiddlyWiki's global config variable 2011-12-03 18:19:13 +00:00
Jeremy Ruston
8ac4a8bf87 Removed references to global store object 2011-12-03 17:43:21 +00:00
Jeremy Ruston
7521207e45 Refactored the interface to the wikifier class 2011-12-03 17:39:13 +00:00
Jeremy Ruston
2a36261f33 Removed support for highlighting
This is better done as post processing after wikification
2011-12-03 17:12:26 +00:00
Jeremy Ruston
f5665b47f3 Added ability to read shadow tiddlers 2011-12-03 17:02:34 +00:00
Jeremy Ruston
a896ac0d56 Get rid of the annoying //# style comments
They are used by the TiddlyWiki build tools to mark comments that
should be stripped. In fact I think we should strip all comments
2011-12-03 16:36:11 +00:00
Jeremy Ruston
f33880f506 Refactored formatters out of global config object 2011-12-03 16:32:29 +00:00