1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2026-01-22 19:04:38 +00:00

Compare commits

..

236 Commits

Author SHA1 Message Date
Jermolene
72bf150eac Version number update for 5.1.3 2014-10-20 18:14:33 +01:00
Jermolene
deebb90b46 Update release instructions 2014-10-20 18:14:00 +01:00
Jermolene
7dce3c3ecc Move release note and update HelloThere
Preparing for release of 5.1.3
2014-10-20 18:11:22 +01:00
Jermolene
d83666c24b Readme update 2014-10-20 18:06:18 +01:00
Jermolene
561aaa925b Filename typo 2014-10-20 18:06:08 +01:00
Jermolene
5c137b9002 Docs for update to browse widget 2014-10-20 16:57:06 +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
Jermolene
9bc4345cb4 Release note update 2014-10-20 16:12:32 +01:00
Jermolene
cf12bcd58a Docs updates 2014-10-20 16:12:24 +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
Jermolene
244b3256a9 Docs on putting last modification date in banner 2014-10-20 12:24:28 +01:00
Jermolene
b8ac80fd1a Docs tweaks 2014-10-20 12:09:02 +01:00
Jermolene
aec4c3cd91 Clean up formatting of github fork ribbon 2014-10-20 11:56:13 +01:00
Jermolene
4314fb478d Add new Japanese site to community links 2014-10-20 08:30:53 +01:00
Xavier Cazin
66765ce158 Explicitly states that external Audio uri may also point to audio streams, not only files 2014-10-19 22:13:28 +02:00
Xavier Cazin
6833bfb220 Add audio/ogg to the list of recognised audio formats 2014-10-19 22:09:17 +02:00
Jeremy Ruston
1914b3d8e1 Merge pull request #932 from Marxsal/patch-1
Create How to apply custom style classes by tag
2014-10-19 18:07:28 +01:00
Jermolene
f9cab4bc12 Add fake dom documentation 2014-10-19 13:34:07 +01:00
Jermolene
12e26009ee Allow percentage width and height on image widget 2014-10-19 13:21:20 +01:00
Jeremy Ruston
299bef2a77 Merge pull request #991 from andrey013/ru-RU
Russian translation update
2014-10-19 09:46:30 +01:00
Jeremy Ruston
02b8a8b9d4 Merge pull request #994 from Marxsal/patch-2
Update cla-individual.md
2014-10-19 09:39:53 +01:00
Jermolene
55397e0ab1 Docs tweaks
Thanks @xcazin
2014-10-19 09:39:33 +01:00
Jermolene
9d53a1b5c4 Update macros docs 2014-10-19 09:18:39 +01:00
Jermolene
e1ac85ddd5 Docs: Clarify importing simplified TW files 2014-10-18 19:50:42 +01:00
Jermolene
744245ea32 Raise error for missing wiki folders
Only raise the error if the wiki path is explicitly specified on the
command line, avoiding `tiddlywiki —version` raising an error if the
current directory isn’t a wiki folder.

Fixes #990
2014-10-18 19:39:39 +01:00
Jermolene
9a4bda9c85 Docs tweaks 2014-10-18 19:15:04 +01:00
Marxsal
18ceb63f18 Update cla-individual.md 2014-10-18 11:05:17 -07:00
Jeremy Ruston
3305874235 Merge pull request #992 from Eucaly/variables
add Subsitutions in WikiText
2014-10-18 18:57:13 +01:00
Jermolene
6c76670137 Removed outdated comment 2014-10-18 17:46:19 +01:00
Jermolene
9a36dc61ec Improve docs on TW file format 2014-10-18 17:42:24 +01:00
Jeremy Ruston
da9f634cf7 Merge pull request #993 from xcazin/new_fr-FR
fr-FR upgrader module description string + change case of long version of month names
2014-10-18 17:30:11 +01:00
Xavier Cazin
ae7cce3c59 fr-FR months are more often displayed in lowercase 2014-10-18 17:40:26 +02:00
Xavier Cazin
67dbbc8d65 fr-FR description of the upgrader module type 2014-10-18 17:40:11 +02:00
Jermolene
2ffe53f191 Add audio parser for handling audio content 2014-10-18 14:50:07 +01:00
Jermolene
ea3bdb5556 Release note update 2014-10-18 14:49:43 +01:00
Eucaly
159a310bab add Subsitutions in WikiText 2014-10-18 18:49:10 +08:00
Eucaly
15f3c284ae add Subsitutions in WikiText 2014-10-18 18:45:46 +08:00
Eucaly
7121828980 Merge pull request #1 from Jermolene/master
sync with master
2014-10-18 16:42:00 +08:00
Andrey Yankin
b2dd87f44a russian translation update 2014-10-18 00:01:05 +04:00
Jermolene
564457de1c Update to KaTeX v0.1.1 2014-10-17 20:10:38 +01:00
Andrey Yankin
4194c7e3dd Merge remote-tracking branch 'upstream/master' 2014-10-17 22:56:54 +04:00
Jermolene
21a791cdcd Docs updates 2014-10-17 16:29:27 +01:00
Jermolene
ad13d57523 Use separate state for each slider demo
Fixes #988
2014-10-17 10:02:21 +01:00
Jeremy Ruston
713792831e Merge pull request #989 from BramChen/master
Update chinese translations for adding description for "upgrader" modules
2014-10-17 09:59:16 +01:00
Jermolene
209c018c38 Docs updates 2014-10-16 10:01:02 +01:00
Jermolene
a4c1fee075 Update test.cmd 2014-10-16 10:00:55 +01:00
Jermolene
fc2d3ce56a Docs update 2014-10-16 09:27:25 +01:00
Bram Chen
f20286fb26 Update chinese translations for adding description for "upgrader" modules 2014-10-16 15:48:07 +08:00
Jermolene
dcc33e52b3 Docs updates 2014-10-15 21:56:32 +01:00
Jermolene
e188662438 Move prerelease release note
The release note for the pending release should be part of the
prerelease edition
2014-10-15 21:56:24 +01:00
Jermolene
7672fb37a7 Simplify test script 2014-10-15 21:55:45 +01:00
Jermolene
b0b89fac72 Moved to build.jermolene.github.io 2014-10-15 21:55:33 +01:00
Jermolene
d91e4be74e Docs updates 2014-10-15 19:46:11 +01:00
Jeremy Ruston
ec7eddfc4e Merge pull request #974 from xcazin/fixtw5.com
Fix caption field of the NowMacro doc tiddler
2014-10-15 19:34:15 +01:00
Jermolene
b94fc7b647 Clarify docs for limit parameter of timeline macro
Prompted by a comment in #975
2014-10-15 17:57:00 +01:00
Jermolene
5211f9c40c Fix problem with timeline subfilter
Fixes #975
2014-10-15 17:48:45 +01:00
Jermolene
c1e60736d8 Add description for "upgrader" modules
Fixes #982
2014-10-15 17:07:49 +01:00
Jeremy Ruston
9a43f9df7c Merge pull request #985 from pmario/language-de
some adjustments due to feedback
2014-10-15 16:41:54 +01:00
Jermolene
b0bd5ba96f Build and release docs update 2014-10-15 16:18:08 +01:00
Jermolene
ca650e2012 Stop building a separate readme for tw2 edition 2014-10-15 16:18:00 +01:00
Jermolene
5dfda99388 Remove scripts that have moved to build.jermolene.github.io 2014-10-15 16:17:46 +01:00
Mario Pietsch
230f2d96de some adjustments due to feedback 2014-10-15 15:49:53 +02:00
Jermolene
ed5a87c019 Docs tweaks 2014-10-15 09:17:00 +01:00
Jermolene
f721e25b8c Docs update 2014-10-14 15:15:56 +01:00
Jermolene
86ec42c8c7 Readme for build.jermolene.github.io 2014-10-14 15:15:48 +01:00
Jermolene
62c31ed37a Add prerelease edition
This is the edition that we’ll use for publishing prerelease/beta
builds of TW
2014-10-14 15:15:20 +01:00
Jermolene
49dc5694a3 Enhance "includeWikis" to merge build targets
Build targets found in included wikis are merged behind any found in
the wiki itself
2014-10-14 15:14:50 +01:00
Xavier Cazin
4b3d634b25 Fix caption field of NowMacro doc tiddler 2014-10-13 18:08:28 +02:00
Jermolene
2d25c40227 Remove backslashes from example commands 2014-10-13 09:59:34 +01:00
Jermolene
6ec87efb5a Remove references to $TW5_BUILD_OUTPUT 2014-10-13 09:56:52 +01:00
Jeremy Ruston
a501115afb Merge pull request #972 from pmario/language-de
revert leading 0 for timeline, but use it with Journal
2014-10-13 09:26:57 +01:00
Jermolene
5154a83cf9 Exclude search string tiddler from search results 2014-10-13 09:11:34 +01:00
Jermolene
18fa5a4a5d Fix typo
Thanks @TheDiveO
2014-10-12 16:57:01 +01:00
Jeremy Ruston
90ac41b9ec Merge pull request #967 from pmario/german-videos
german video links for saving with chrome, firefox, ie
2014-10-12 16:50:14 +01:00
Mario Pietsch
316e1eca3f fix video protocol 2014-10-12 17:45:54 +02:00
Jermolene
c39b5b913c Docs tweak 2014-10-12 16:45:53 +01:00
Jeremy Ruston
d053b960b6 Merge pull request #963 from Evolena/patch-3
Fix some bad links
2014-10-12 16:38:08 +01:00
Mario Pietsch
554d2c689c revert leading 0 for timeline, but use it with Journal 2014-10-12 17:31:59 +02:00
Jeremy Ruston
0cbe396efb Merge pull request #968 from pmario/language-de
Language de Misc and Dates according to en-GB
2014-10-12 16:26:12 +01:00
Jermolene
601884d894 Docs tweaks 2014-10-12 16:25:52 +01:00
Mario Pietsch
73bc2a1848 remove duplicated elements 2014-10-12 17:20:04 +02:00
Jermolene
4519c47551 Docs update 2014-10-12 16:15:08 +01:00
Mario Pietsch
473b28585a dates and misc same as en-GB now 2014-10-12 17:05:04 +02:00
Mario Pietsch
6fc14e5c1f german video links for saving with chrome, firefox, ie 2014-10-12 16:28:02 +02:00
Evolena
2fe095fcd1 Fix bad links 2014-10-12 13:59:26 +02:00
Jeremy Ruston
824f9c1d8c Merge pull request #965 from xcazin/renew-fr-FR
Journal- and NewTiddler- related fr-FR strings
2014-10-12 10:25:04 +01:00
Xavier Cazin
b81095349f Revert NewJournal fr-FR pattern to be the same as en-GB 2014-10-12 11:14:16 +02:00
Jeremy Ruston
7f7ab768f7 Merge pull request #964 from simonbaird/master
Add span wrapper around button caption text
2014-10-12 09:42:24 +01:00
Jermolene
1695d5fe29 Docs tweaks 2014-10-12 09:42:16 +01:00
Xavier Cazin
4840357ea0 Typo in fr-FR Dates 2014-10-11 20:19:43 +02:00
Xavier Cazin
ca2afd9eef Journal- and NewTiddler- related fr-FR strings 2014-10-11 20:18:20 +02:00
Simon Baird
0671e59fed Add span wrapper around button caption text
Reasons:
- can show or hide the button text with CSS (assuming
  tv-config-toolbar-text is yes).
- can have different looking buttons in the page controls versus the
  view toolbar, etc
- more flexibility styling the button appearance, for example you
  can change the text size compared to the icon size
- button appearance is more themeable
2014-10-12 01:43:01 +10: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
a671e72706 Fix problem with import button triggering checkbox on Firefox
It seems that there is a broader problem with the way that the button
is embedded within the label of a checkbox; even on Chrome it meant
that the checkbox active state was triggered when clicking on any of
the buttons. The user experience was in any case confusing; it wasn’t
obvious that clicking on the label to the right of the button would
flick the checkbox.

The solution takes the buttons and labels out of the checkbox label.
2014-10-10 20:50:50 +01:00
Jermolene
f7bdb1c04d Docs updates 2014-10-10 20:32:22 +01:00
Jermolene
9a6f1f66be Yet more fixing for the Firefox jumping toolbar problem...
See #282
2014-10-10 20:32:12 +01:00
Jermolene
6e4dccda4c Docs update 2014-10-10 10:35:43 +01:00
Jermolene
03defe4256 Docs cleanup 2014-10-10 10:35:36 +01:00
Jermolene
39b7771f87 Update release notes 2014-10-10 10:31:17 +01:00
Jermolene
087a0aec58 Fixed typo in language files 2014-10-10 10:31:10 +01:00
Jermolene
f37a7101a7 Fix problem with new tiddler button 2014-10-10 10:17:42 +01:00
Jermolene
e90e588621 Missed from last commit 2014-10-10 10:13:02 +01:00
Jermolene
353f641bcc Move date-related translateable strings into their own file 2014-10-10 10:12:40 +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
Jeremy Ruston
d74fc931c1 Merge pull request #960 from BramChen/master
Update chinese translations
2014-10-10 08:05:52 +01:00
Bram Chen
1460b6ec12 Add chinese translations of new journal here button 2014-10-10 09:10:50 +08:00
Jermolene
a7c9112c40 Add new filter example 2014-10-09 20:51:58 +01:00
Jermolene
9cd420290b Fix for titles including double quotes 2014-10-09 20:11:11 +01:00
Jermolene
5f08f89956 Add link to Iannis Zannos hints site 2014-10-09 18:08:05 +01:00
Jermolene
ea7d9652c5 Move new journal here button to the correct directory 2014-10-09 18:00:34 +01:00
Jermolene
515b556b48 Fix for previous fix
Fix for problem introduced in 25f4ce93ac
2014-10-09 17:51:29 +01:00
Jermolene
25f4ce93ac Fixed truncation of tiddler info panel
Caused by the fix to #282
2014-10-09 17:42:18 +01:00
Jermolene
d6dc4c14d7 Add new-journal-here button to viewtoolbar ordering 2014-10-09 17:36:33 +01:00
Jeremy Ruston
fcf843d5b1 Merge pull request #959 from simonbaird/new-journal-here
Add a 'new journal here' button
2014-10-09 17:34:13 +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
Simon Baird
00cdd04edd Add a 'new journal here' button
The journal tiddler will be tagged with the name of the current
tiddler. This is similar to how the new here button works.

(Would have liked to reuse the journalButton code which is almost
identical between new-journal-here and new-journal, but I'm not
sure how to do it.)
2014-10-10 02:06:56 +10:00
Jermolene
5010859ed6 This deals with one of the specific issues raised in #922, but doesn’t
address the general issue.
2014-10-09 14:56:38 +01:00
Jeremy Ruston
7ed7cbc948 Merge pull request #950 from BramChen/master
Update chinese translations
2014-10-09 13:49:29 +01:00
Jeremy Ruston
b05ff2a5d7 Merge pull request #952 from fghhfg/patch-10
Update Searching.tid
2014-10-09 13:38:43 +01:00
Bram Chen
804c7de635 Add NewJournal.multids for chinese translations 2014-10-09 20:33:57 +08:00
Jermolene
4e37a9fb09 Navigate widget docs update 2014-10-09 13:28:12 +01:00
Bram Chen
4255084913 Merge remote-tracking branch 'upstream/master' 2014-10-09 20:21:11 +08:00
Jeremy Ruston
c538712a2e Merge pull request #953 from buggyj/tw2parserdoc
add install instruction
2014-10-09 13:13:56 +01:00
Jeremy Ruston
f2b8d0b2f9 Merge pull request #955 from pmario/language-de
new UI texts, fixing some more typos
2014-10-09 13:13:28 +01:00
Jermolene
3682c26817 Move new journal strings into language directory 2014-10-09 13:09:59 +01:00
Jermolene
36a43c3f41 Ensure new-here tag is quoted
Fixes problem with new here on tiddlers with spaces in their title.
Thanks to @simonbaird

Fixes #956
2014-10-09 13:08:11 +01:00
Mario Pietsch
896b7c2585 added date translations. Fix default date formats 2014-10-09 14:00:45 +02:00
Bram Chen
01b515a4f4 Add chinese date format strings 2014-10-09 18:29:14 +08:00
Bram Chen
e8c56e57cc Merge remote-tracking branch 'upstream/master' 2014-10-09 18:01:26 +08: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
Mario Pietsch
8b1d6d235b new UI texts, fixing some more typos 2014-10-09 10:56:27 +02:00
Bram Chen
9075495cc8 Revert to simple tooltip for newhere button for chinese translations 2014-10-09 16:33:46 +08:00
Bram Chen
be3239ecc0 Merge remote-tracking branch 'upstream/master' 2014-10-09 16:32:12 +08:00
Jermolene
e34b4f18e5 Improve new here button 2014-10-09 09:31:26 +01:00
Jermolene
90997020e7 Revert to simple tooltip for newhere button
At present we can’t arrange for the hint to be wikified when it’s used
as the button tooltip.
2014-10-09 08:44:23 +01:00
buggyj
18877f9237 add install instruction 2014-10-09 08:21:00 +02:00
Bram Chen
e5f20d1a9c Update chinese translations
* Add "new here" button
* Add "new journal" button
* Add default title of new tiddler
2014-10-09 13:54:47 +08:00
Bram Chen
b486846a74 Merge remote-tracking branch 'upstream/master' 2014-10-09 09:27:50 +08:00
Jermolene
70984aa39f Add "new here" button
This is a basic “new here” tiddler toolbar button that just creates a
new tiddler tagged with the title of the current tiddler.

@pmario is there anything else required?
2014-10-08 22:02:32 +01:00
Jermolene
c322dc82c3 Simplify new journal button 2014-10-08 20:11:54 +01:00
Jermolene
b53074a0cc Update "Introduction to Filters" docs 2014-10-08 19:02:54 +01:00
Jermolene
d778a90eb0 Make new journal title and tags be configurable 2014-10-08 18:35:25 +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
fghhfg
a361ab0608 Update Searching.tid 2014-10-08 16:21:09 +08:00
Bram Chen
96d1981dcc Update chinese translations
* Add confirmation for clearing password
2014-10-08 09:21:54 +08:00
Jermolene
a604afe871 Fix list in "Filters" tiddler
Mentioned by @Evolena in #922
2014-10-07 22:33:06 +01:00
Jermolene
dc9981322a Increase size of search cancel button 2014-10-07 22:11:43 +01:00
Jermolene
ff23a84d28 Docs tweaks 2014-10-07 21:44:54 +01:00
Jeremy Ruston
bbc1d18e25 Merge pull request #949 from fghhfg/patch-8
Update Learning.tid
2014-10-07 21:41:17 +01:00
fghhfg
b3c3442024 Update Learning.tid 2014-10-08 04:21:13 +08:00
Jermolene
b3dcd7d625 Fix tiddler title background colour for sticky titles 2014-10-07 20:41:22 +01:00
Jermolene
70c8659948 Update release note 2014-10-07 15:50:46 +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
c475302663 Merge pull request #940 from fghhfg/patch-1
Simplify upgrading instructions
2014-10-07 13:26:30 +01:00
Jermolene
dd829d9140 Docs tweaks 2014-10-07 13:16:24 +01:00
Jermolene
cda495d692 Doc tweaks 2014-10-07 13:16:04 +01:00
Jeremy Ruston
e108799791 Merge pull request #942 from fghhfg/patch-3
add how to install plugin
2014-10-07 13:03:55 +01:00
Jermolene
811e92c0eb Docs update 2014-10-07 13:02:43 +01:00
Jeremy Ruston
766ec38487 Merge pull request #944 from fghhfg/patch-5
more clear "How to sign the CLA"
2014-10-07 13:00:58 +01:00
Jeremy Ruston
002b07d096 Merge pull request #945 from fghhfg/patch-6
add a example
2014-10-07 09:57:34 +01:00
Jeremy Ruston
68b7212150 Merge pull request #946 from fghhfg/patch-7
add some way to invoke macro
2014-10-07 09:46:29 +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
548776e828 Add KaTeX static build 2014-10-06 21:20:28 +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
TheDiveO
f6f9c74fe9 added documentation tiddlers for addprefix and addsuffix; updated
documentation tiddlers for prefix, suffix, removeprefix, removesuffix to
reference the new addprefix and addsuffix filter operators.
2014-10-06 21:49:54 +02:00
fghhfg
651ed60987 add some way to invoke macro 2014-10-07 02:28:40 +08:00
fghhfg
f2e97eeb25 add a example 2014-10-07 00:38:12 +08:00
fghhfg
0d7209ff2f more clear "How to sign the CLA" 2014-10-06 23:38:48 +08:00
Jeremy Ruston
3630a2191e Merge pull request #943 from fghhfg/patch-4
CLA signature from @fghhfg
2014-10-06 16:21:36 +01:00
fghhfg
a2ddf6c4a0 i'm not sure what i'm doing... 2014-10-06 23:19:16 +08:00
fghhfg
e6d59ece6f add how to install plugin 2014-10-06 22:36:02 +08:00
Jermolene
b7bbcfa056 Prompt twice when setting password
Fixes #364
2014-10-06 10:22:09 +01:00
Jermolene
0c8e538077 Add support for custom password prompts 2014-10-06 10:02:34 +01:00
Jermolene
67db9d57a2 Boot prefix should preserve $tw in the browser
This change allows raw markup tiddlers to preload configuration values
into the `$tw` global
2014-10-06 10:02:20 +01:00
fghhfg
61acea7e8d make simpler 2014-10-06 16:32:23 +08:00
Jermolene
5dd6ebff05 Fix problem with zoomin storyview and hidden sidebar
Fixes #933
2014-10-06 09:18:29 +01:00
Andrey Yankin
2b236ceed3 Merge pull request #2 from Jermolene/master
Following the origin
2014-10-05 21:00:16 +04:00
Jeremy Ruston
c126294ae5 Merge pull request #924 from andrey013/ru-RU
Russian translation
2014-10-05 16:35:47 +01:00
Jermolene
3048b79a45 Update button widget docs
Fixes #927
2014-10-05 16:33:05 +01:00
Jeremy Ruston
b9ed7e52c2 Merge pull request #929 from Eucaly/update-dev-doc
update JavaScript Macros reference link to dev document
2014-10-05 16:25:55 +01:00
Jermolene
cc576b052e Fix "each" filter operator with missing tiddlers
Fixes #930
2014-10-05 16:25:01 +01:00
Jermolene
535b695167 Docs edit 2014-10-05 16:18:56 +01:00
Jeremy Ruston
4d732c5733 Merge pull request #931 from gernert/patch-2
Update Lists in WikiText.tid
2014-10-05 16:06:39 +01:00
Jeremy Ruston
02d37dcfcc Merge pull request #934 from pmario/fix-untagged-pill-css
tc-untagged-label doesn't work, because button.tc-tag-label is more specific
2014-10-05 16:00:10 +01:00
Jeremy Ruston
cf6efa7ee5 Merge pull request #935 from Eucaly/variables
add WidgetVariable documentation
2014-10-05 15:59:32 +01:00
Jermolene
15905f3b7a Correct fix for #282
Thanks @pmario and @andrey013
2014-10-05 12:44:06 +01:00
Andrey Yankin
1c5c899096 dragger, dropdown, untagged pill, static alert 2014-10-04 23:38:09 +04:00
Andrey Yankin
e624f52374 Russian palette colours not finished 2014-10-04 23:38:09 +04:00
Andrey Yankin
46749d5f46 Russian fields 2014-10-04 23:38:09 +04:00
Andrey Yankin
cf6c8e23fb Russian ModuleTypes 2014-10-04 23:38:09 +04:00
Andrey Yankin
90ac097f38 svg 2014-10-04 23:38:09 +04:00
Andrey Yankin
e14d151273 types 2014-10-04 23:38:09 +04:00
Andrey Yankin
443dae39ba move fields translation to docs folder 2014-10-04 23:38:09 +04:00
Andrey Yankin
2188ecb91d Upgrader Russian translation 2014-10-04 23:38:09 +04:00
Andrey Yankin
3fd52fab0c LoadedModules incomplete translation 2014-10-04 23:38:09 +04:00
Andrey Yankin
a81375b432 small fix 2014-10-04 23:38:09 +04:00
Andrey Yankin
9a5c7a063c Date format 2014-10-04 23:38:09 +04:00
Andrey Yankin
352c3189da Russian control panel 2014-10-04 23:38:09 +04:00
Andrey Yankin
40cc1fcf5e misc 2014-10-04 23:38:09 +04:00
Andrey Yankin
ad71a102c2 Sign the CLA 2014-10-04 23:38:09 +04:00
Andrey Yankin
b311409924 edit form, filters, getting started, importer, search and info form russian translation 2014-10-04 23:38:09 +04:00
Andrey Yankin
65ba441e81 Russian sidebar 2014-10-04 23:38:09 +04:00
Andrey Yankin
10e7e53a10 Russian buttons 2014-10-04 23:38:09 +04:00
Andrey Yankin
9add946484 Russian flag 2014-10-04 23:38:09 +04:00
Andrey Yankin
fb799a57ff Start russian translation 2014-10-04 23:38:08 +04:00
Andrey Yankin
25cf30b946 Merge pull request #1 from Jermolene/master
Fix Firefox toolbar jump
2014-10-04 23:25:48 +04:00
Jermolene
3ca8d7b6cc Fix Firefox toolbar jump
Fixes #282
2014-10-04 12:17:47 +01:00
Eucaly
52a2d5ade2 update WidgetVariable documentation 2014-10-03 07:15:06 +08:00
Eucaly
d9ccac21d0 add WidgetVariable documentation 2014-10-02 23:02:48 +08:00
Mario Pietsch
f85b07e70b tc-untagged-label because button.tc-tag-label is more specific and also defines the background color. ... weak design 2014-10-02 15:41:40 +02:00
Markqz
6071f3d385 Create How to apply custom style classes by tag 2014-10-01 13:06:44 -08:00
gernert
e343ccc458 Update Lists in WikiText.tid
An extra example with numbers as first level
2014-10-01 19:54:34 +02:00
Eucaly
3acb5de407 update JavaScript Macros reference link to dev document 2014-10-01 18:36:04 +08: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
459133cc57 Remove unused file watching code from filesystemadaptor
This code was contributed by @natecain and added in #176. It was almost
immediately disabled because of problems in the field.

I’m removing the code now to simplify the adaptor in advance of some
planned refactoring.
2014-09-28 23:46:55 +01:00
Jeremy Ruston
860a7070a9 Merge pull request #920 from xcazin/list-links
Tweak of the list-links macro in order to display caption fields if present
2014-09-28 20:33:30 +01:00
Xavier Cazin
c26bd4c5a8 Tweak of the list-links macro in order to display caption fields if present 2014-09-28 21:11:58 +02:00
Jermolene
6626da9b3b Update tabs macro documentation 2014-09-28 12:25:27 +01:00
Jermolene
e51c4fcb92 Adjust list macro docs 2014-09-28 09:58:27 +01:00
Jeremy Ruston
e028b87ce8 Merge pull request #918 from pmario/fr-coremacro-classes
Like the tabs macro, the list macro should get a possibility to add a class parameter
2014-09-28 09:56:40 +01:00
Jermolene
7ccf43d3ca Preparing for 5.1.3 2014-09-28 09:56:17 +01:00
Mario Pietsch
1f7a4e3336 fix docs, typo 2014-09-28 10:42:15 +02:00
Mario Pietsch
59f04ffd31 add class parameter to list-links macro 2014-09-28 10:32:54 +02:00
Mario Pietsch
32fcd2e21b Merge branch 'master' of https://github.com/Jermolene/TiddlyWiki5 2014-09-28 10:20:32 +02:00
Mario Pietsch
10040f51e1 Merge branch 'master' of https://github.com/Jermolene/TiddlyWiki5 2014-09-27 12:55:47 +02:00
Mario Pietsch
a4b9032d9c Merge branch 'master' of https://github.com/Jermolene/TiddlyWiki5 2014-09-26 09:04:10 +02:00
356 changed files with 3389 additions and 1406 deletions

View File

@@ -2,15 +2,6 @@
rem build TiddlyWiki 2.x
rem Prepare the readme file from the revelant content in the tw5.com wiki
node .\tiddlywiki.js ^
editions\tw5.com ^
--verbose ^
--output editions\tw2 ^
--rendertiddler TiddlyWiki2ReadMe readme.md text/html ^
|| exit 1
rem cook the TiddlyWiki 2.x.x index file
node .\tiddlywiki.js ^

View File

@@ -2,15 +2,6 @@
# build TiddlyWiki 2.x
# Prepare the readme file from the revelant content in the tw5.com wiki
node ./tiddlywiki.js \
editions/tw5.com \
--verbose \
--output editions/tw2 \
--rendertiddler TiddlyWiki2ReadMe readme.md text/html \
|| exit 1
# cook the TiddlyWiki 2.x.x index file
node ./tiddlywiki.js \

View File

@@ -1,65 +0,0 @@
#!/bin/bash
# Abbreviated version of bld.sh for quicker builds
# Set up the build output directory
if [ -z "$TW5_BUILD_OUTPUT" ]; then
TW5_BUILD_OUTPUT=../jermolene.github.com
fi
if [ ! -d "$TW5_BUILD_OUTPUT" ]; then
echo 'A valid TW5_BUILD_OUTPUT environment variable must be set'
exit 1
fi
echo "Using TW5_BUILD_OUTPUT as [$TW5_BUILD_OUTPUT]"
# /languages/de-AT/index.html Demo wiki with de-AT language
# /languages/de-AT/empty.html Empty wiki with de-AT language
node ./tiddlywiki.js \
./editions/de-AT \
--verbose \
--output $TW5_BUILD_OUTPUT/languages/de-AT \
--build favicon empty static index \
|| exit 1
# /languages/de-DE/index.html Demo wiki with de-DE language
# /languages/de-DE/empty.html Empty wiki with de-DE language
node ./tiddlywiki.js \
./editions/de-DE \
--verbose \
--output $TW5_BUILD_OUTPUT/languages/de-DE \
--build favicon empty static index \
|| exit 1
# /languages/fr-FR/index.html Demo wiki with fr-FR language
# /languages/fr-FR/empty.html Empty wiki with fr-FR language
node ./tiddlywiki.js \
./editions/fr-FR \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all languages/fr-FR/index.html text/plain \
--rendertiddler $:/core/save/empty languages/fr-FR/empty.html text/plain \
|| exit 1
# /languages/zh-Hans/index.html Demo wiki with zh-Hans language
# /languages/zh-Hans/empty.html Empty wiki with zh-Hans language
node ./tiddlywiki.js \
./editions/zh-Hans \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all languages/zh-Hans/index.html text/plain \
--rendertiddler $:/core/save/empty languages/zh-Hans/empty.html text/plain \
|| exit 1
# /languages/zh-Hant/index.html Demo wiki with zh-Hant language
# /languages/zh-Hant/empty.html Empty wiki with zh-Hant language
node ./tiddlywiki.js \
./editions/zh-Hant \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all languages/zh-Hant/index.html text/plain \
--rendertiddler $:/core/save/empty languages/zh-Hant/empty.html text/plain \
|| exit 1

View File

@@ -1,130 +0,0 @@
@echo off
rem build TiddlyWiki5 for tiddlywiki.com
rem Set up the build output directory
if "x%TW5_BUILD_OUTPUT%" == "x" (
set TW5_BUILD_OUTPUT=..\jermolene.github.com
)
if not exist %TW5_BUILD_OUTPUT%\nul (
echo A valid TW5_BUILD_OUTPUT environment variable must be set
exit 1
)
echo Using TW5_BUILD_OUTPUT as %TW5_BUILD_OUTPUT%
echo.
rem Create the `static` directories if necessary
setlocal enableextensions
mkdir %TW5_BUILD_OUTPUT%\static
setlocal disableextensions
rem Delete any existing content
del /q /s %TW5_BUILD_OUTPUT%\static
rem The tw5.com wiki
rem index.html: the main file, including content
rem empty.html: the main file, excluding content
rem static.html: the static version of the default tiddlers
node .\tiddlywiki.js ^
.\editions\tw5.com ^
--verbose ^
--output . ^
--build readmes ^
--output %TW5_BUILD_OUTPUT% ^
--build favicon empty static index ^
|| exit 1
rem dev/: developer material
node .\tiddlywiki.js ^
.\editions\dev ^
--verbose ^
--output %TW5_BUILD_OUTPUT%\dev ^
--build index favicon static ^
|| exit 1
rem upgrade.html: custom edition for handling upgrades
node .\tiddlywiki.js ^
.\editions\upgrade ^
--verbose ^
--output %TW5_BUILD_OUTPUT% ^
--build upgrade ^
|| exit 1
rem encrypted.html: a version of the main file encrypted with the password "password"
node .\tiddlywiki.js ^
.\editions\tw5.com ^
--verbose ^
--output %TW5_BUILD_OUTPUT% ^
--build encrypted ^
|| exit 1
rem tahoelafs.html: empty wiki with plugin for Tahoe-LAFS
node .\tiddlywiki.js ^
.\editions\tahoelafs ^
--verbose ^
--output %TW5_BUILD_OUTPUT% ^
--rendertiddler $:/core/save/all tahoelafs.html text/plain ^
|| exit 1
rem d3demo.html: wiki to demo d3 plugin
node .\tiddlywiki.js ^
.\editions\d3demo ^
--verbose ^
--output %TW5_BUILD_OUTPUT% ^
--rendertiddler $:/core/save/all d3demo.html text/plain ^
|| exit 1
rem codemirrordemo.html: wiki to demo codemirror plugin
node .\tiddlywiki.js ^
.\editions\codemirrordemo ^
--verbose ^
--output %TW5_BUILD_OUTPUT% ^
--rendertiddler $:/core/save/all codemirrordemo.html text/plain ^
|| exit 1
rem markdowndemo.html: wiki to demo markdown plugin
node .\tiddlywiki.js ^
.\editions\markdowndemo ^
--verbose ^
--output %TW5_BUILD_OUTPUT% ^
--rendertiddler $:/core/save/all markdowndemo.html text/plain ^
|| exit 1
rem classicparserdemo.html: wiki to demo classicparser plugin
node .\tiddlywiki.js ^
.\editions\classicparserdemo ^
--verbose ^
--output %TW5_BUILD_OUTPUT% ^
--rendertiddler $:/core/save/all classicparserdemo.html text/plain ^
|| exit 1
rem highlightdemo.html: wiki to demo highlight plugin
node .\tiddlywiki.js ^
.\editions\highlightdemo ^
--verbose ^
--output %TW5_BUILD_OUTPUT% ^
--rendertiddler $:/core/save/all highlightdemo.html text/plain ^
|| exit 1
rem Make the CNAME file that GitHub Pages requires
echo tiddlywiki.com > %TW5_BUILD_OUTPUT%\CNAME
rem Run the test edition to run the Node.js tests and to generate test.html for tests in the browser
.\bin\test.cmd

View File

@@ -1,127 +0,0 @@
#!/bin/bash
# build TiddlyWiki5 for tiddlywiki.com
# Set up the build output directory
if [ -z "$TW5_BUILD_OUTPUT" ]; then
TW5_BUILD_OUTPUT=../jermolene.github.com
fi
if [ ! -d "$TW5_BUILD_OUTPUT" ]; then
echo 'A valid TW5_BUILD_OUTPUT environment variable must be set'
exit 1
fi
echo "Using TW5_BUILD_OUTPUT as [$TW5_BUILD_OUTPUT]"
# Make the CNAME file that GitHub Pages requires
echo "tiddlywiki.com" > $TW5_BUILD_OUTPUT/CNAME
# Create the `static` directories if necessary
mkdir -p $TW5_BUILD_OUTPUT/static
# Delete any existing content
rm $TW5_BUILD_OUTPUT/static/*
# The tw5.com wiki
# index.html: the main file, including content
# empty.html: the main file, excluding content
# static.html: the static version of the default tiddlers
node ./tiddlywiki.js \
./editions/tw5.com \
--verbose \
--output . \
--build readmes \
--output $TW5_BUILD_OUTPUT \
--build favicon empty static index \
|| exit 1
# dev/: developer material
node ./tiddlywiki.js \
./editions/dev \
--verbose \
--output $TW5_BUILD_OUTPUT/dev \
--build index favicon static \
|| exit 1
# upgrade.html: custom edition for handling upgrades
node ./tiddlywiki.js \
./editions/upgrade \
--verbose \
--output $TW5_BUILD_OUTPUT \
--build upgrade \
|| exit 1
# encrypted.html: a version of the main file encrypted with the password "password"
node ./tiddlywiki.js \
./editions/tw5.com \
--verbose \
--output $TW5_BUILD_OUTPUT \
--build encrypted \
|| exit 1
# tahoelafs.html: empty wiki with plugin for Tahoe-LAFS
node ./tiddlywiki.js \
./editions/tahoelafs \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all tahoelafs.html text/plain \
|| exit 1
# d3demo.html: wiki to demo d3 plugin
node ./tiddlywiki.js \
./editions/d3demo \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all d3demo.html text/plain \
|| exit 1
# codemirrordemo.html: wiki to demo codemirror plugin
node ./tiddlywiki.js \
./editions/codemirrordemo \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all codemirrordemo.html text/plain \
|| exit 1
# markdowndemo.html: wiki to demo markdown plugin
node ./tiddlywiki.js \
./editions/markdowndemo \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all markdowndemo.html text/plain \
|| exit 1
# classicparserdemo.html: wiki to demo classicparser plugin
node ./tiddlywiki.js \
./editions/classicparserdemo \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all classicparserdemo.html text/plain \
|| exit 1
# highlightdemo.html: wiki to demo highlight plugin
node ./tiddlywiki.js \
./editions/highlightdemo \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all highlightdemo.html text/plain \
|| exit 1
# Run the test edition to run the Node.js tests and to generate test.html for tests in the browser
./bin/test.sh

View File

@@ -1,17 +0,0 @@
@echo off
rem Publish to NPM
npm publish || exit 1
rem Deploy latest build to github
pushd ..\jermolene.github.com
git add --all || exit 1
git commit -m "Updates" || exit 1
git push origin || exit 1
popd

View File

@@ -1,17 +0,0 @@
#!/bin/bash
# Publish to NPM
npm publish || exit 1
# Deploy latest build to github
pushd ../jermolene.github.com
git add --all || exit 1
git commit -m "Updates" || exit 1
git push origin || exit 1
popd

View File

@@ -1,30 +0,0 @@
#!/bin/bash
# Build the dev wiki
# Set up the build output directory
if [ -z "$TW5_BUILD_OUTPUT" ]; then
TW5_BUILD_OUTPUT=../jermolene.github.com
fi
if [ ! -d "$TW5_BUILD_OUTPUT" ]; then
echo 'A valid TW5_BUILD_OUTPUT environment variable must be set'
exit 1
fi
echo "Using TW5_BUILD_OUTPUT as [$TW5_BUILD_OUTPUT]"
# Make the CNAME file that GitHub Pages requires
echo "tiddlywiki.com" > $TW5_BUILD_OUTPUT/CNAME
# The tw5.com wiki
# index.html: the main file, including content
node ./tiddlywiki.js \
./editions/dev \
--verbose \
--output $TW5_BUILD_OUTPUT/dev \
--build index favicon \
|| exit 1

View File

@@ -1,238 +0,0 @@
#!/bin/bash
# Perform a full build for tiddlywiki.com
# Set up the build output directory
if [ -z "$TW5_BUILD_OUTPUT" ]; then
TW5_BUILD_OUTPUT=../jermolene.github.com
fi
if [ ! -d "$TW5_BUILD_OUTPUT" ]; then
echo 'A valid TW5_BUILD_OUTPUT environment variable must be set'
exit 1
fi
echo "Using TW5_BUILD_OUTPUT as [$TW5_BUILD_OUTPUT]"
# Make the CNAME file that GitHub Pages requires
echo "tiddlywiki.com" > $TW5_BUILD_OUTPUT/CNAME
# Delete any existing static content
mkdir -p $TW5_BUILD_OUTPUT/static
mkdir -p $TW5_BUILD_OUTPUT/dev
mkdir -p $TW5_BUILD_OUTPUT/dev/static
rm $TW5_BUILD_OUTPUT/static/*
rm $TW5_BUILD_OUTPUT/dev/static/*
rm $TW5_BUILD_OUTPUT/languages/de_AT/static/*
rm $TW5_BUILD_OUTPUT/languages/de_DE/static/*
# Redirects
echo "<a href='./plugins/tiddlywiki/tw2parser/index.html'>Moved to http://tiddlywiki.com/plugins/tiddlywiki/tw2parser/index.html</a>" > $TW5_BUILD_OUTPUT/classicparserdemo.html
echo "<a href='./plugins/tiddlywiki/codemirror/index.html'>Moved to http://tiddlywiki.com/plugins/tiddlywiki/codemirror/index.html</a>" > $TW5_BUILD_OUTPUT/codemirrordemo.html
echo "<a href='./plugins/tiddlywiki/d3/index.html'>Moved to http://tiddlywiki.com/plugins/tiddlywiki/d3/index.html</a>" > $TW5_BUILD_OUTPUT/d3demo.html
echo "<a href='./plugins/tiddlywiki/highlight/index.html'>Moved to http://tiddlywiki.com/plugins/tiddlywiki/highlight/index.html</a>" > $TW5_BUILD_OUTPUT/highlightdemo.html
echo "<a href='./plugins/tiddlywiki/markdown/index.html'>Moved to http://tiddlywiki.com/plugins/tiddlywiki/markdown/index.html</a>" > $TW5_BUILD_OUTPUT/markdowndemo.html
echo "<a href='./plugins/tiddlywiki/tahoelafs/index.html'>Moved to http://tiddlywiki.com/plugins/tiddlywiki/tahoelafs/index.html</a>" > $TW5_BUILD_OUTPUT/tahoelafs.html
######################################################
#
# Core distribution
#
######################################################
# /index.html Main site
# /favicon.ico Favicon for main site
# /empty.html Empty
# /empty.hta For Internet Explorer
# /static.html Static rendering of default tiddlers
# /alltiddlers.html Static rendering of all tiddlers
# /static/* Static single tiddlers
# /static/static.css Static stylesheet
# /static/favicon.ico Favicon for static pages
node ./tiddlywiki.js \
./editions/tw5.com \
--verbose \
--output . \
--build readmes \
--output $TW5_BUILD_OUTPUT \
--build favicon empty static index \
|| exit 1
# /dev/index.html Developer docs
# /dev/favicon.ico Favicon for dev site
# /dev/static.html Static rendering of default tiddlers
# /dev/alltiddlers.html Static rendering of all tiddlers
# /dev/static/* Static single tiddlers
# /dev/static/static.css Static stylesheet
node ./tiddlywiki.js \
./editions/dev \
--verbose \
--output $TW5_BUILD_OUTPUT/dev \
--build index favicon static \
|| exit 1
# /upgrade.html Custom edition for performing upgrades
node ./tiddlywiki.js \
./editions/upgrade \
--verbose \
--output $TW5_BUILD_OUTPUT \
--build upgrade \
|| exit 1
# /encrypted.html Copy of the main file encrypted with the password "password"
node ./tiddlywiki.js \
./editions/tw5.com \
--verbose \
--output $TW5_BUILD_OUTPUT \
--build encrypted \
|| exit 1
######################################################
#
# Plugin demos
#
######################################################
# /plugins/tiddlywiki/katex/index.html Demo wiki with KaTeX plugin
# /plugins/tiddlywiki/katex/empty.html Empty wiki with KaTeX plugin
node ./tiddlywiki.js \
./editions/katexdemo \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all plugins/tiddlywiki/katex/index.html text/plain \
--rendertiddler $:/core/save/empty plugins/tiddlywiki/katex/empty.html text/plain \
|| exit 1
# /plugins/tiddlywiki/tahoelafs/index.html Demo wiki with Tahoe-LAFS plugin
# /plugins/tiddlywiki/tahoelafs/empty.html Empty wiki with Tahoe-LAFS plugin
node ./tiddlywiki.js \
./editions/tahoelafs \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all plugins/tiddlywiki/tahoelafs/index.html text/plain \
--rendertiddler $:/core/save/empty plugins/tiddlywiki/tahoelafs/empty.html text/plain \
|| exit 1
# /plugins/tiddlywiki/d3/index.html Demo wiki with D3 plugin
# /plugins/tiddlywiki/d3/empty.html Empty wiki with D3 plugin
node ./tiddlywiki.js \
./editions/d3demo \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all plugins/tiddlywiki/d3/index.html text/plain \
--rendertiddler $:/core/save/empty plugins/tiddlywiki/d3/empty.html text/plain \
|| exit 1
# /plugins/tiddlywiki/codemirror/index.html Demo wiki with codemirror plugin
# /plugins/tiddlywiki/codemirror/empty.html Empty wiki with codemirror plugin
node ./tiddlywiki.js \
./editions/codemirrordemo \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all plugins/tiddlywiki/codemirror/index.html text/plain \
--rendertiddler $:/core/save/empty plugins/tiddlywiki/codemirror/empty.html text/plain \
|| exit 1
# /plugins/tiddlywiki/markdown/index.html Demo wiki with Markdown plugin
# /plugins/tiddlywiki/markdown/empty.html Empty wiki with Markdown plugin
node ./tiddlywiki.js \
./editions/markdowndemo \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all plugins/tiddlywiki/markdown/index.html text/plain \
--rendertiddler $:/core/save/empty plugins/tiddlywiki/markdown/empty.html text/plain \
|| exit 1
# /plugins/tiddlywiki/tw2parser/index.html Demo wiki with tw2parser plugin
# /plugins/tiddlywiki/tw2parser/empty.html Empty wiki with tw2parser plugin
node ./tiddlywiki.js \
./editions/classicparserdemo \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all plugins/tiddlywiki/tw2parser/index.html text/plain \
--rendertiddler $:/core/save/empty plugins/tiddlywiki/tw2parser/empty.html text/plain \
|| exit 1
# /plugins/tiddlywiki/highlight/index.html Demo wiki with highlight plugin
# /plugins/tiddlywiki/highlight/empty.html Empty wiki with highlight plugin
node ./tiddlywiki.js \
./editions/highlightdemo \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all plugins/tiddlywiki/highlight/index.html text/plain \
--rendertiddler $:/core/save/empty plugins/tiddlywiki/highlight/empty.html text/plain \
|| exit 1
######################################################
#
# Language editions
#
######################################################
# /languages/de-AT/index.html Demo wiki with de-AT language
# /languages/de-AT/empty.html Empty wiki with de-AT language
node ./tiddlywiki.js \
./editions/de-AT \
--verbose \
--output $TW5_BUILD_OUTPUT/languages/de-AT \
--build favicon empty static index \
|| exit 1
# /languages/de-DE/index.html Demo wiki with de-DE language
# /languages/de-DE/empty.html Empty wiki with de-DE language
node ./tiddlywiki.js \
./editions/de-DE \
--verbose \
--output $TW5_BUILD_OUTPUT/languages/de-DE \
--build favicon empty static index \
|| exit 1
# /languages/fr-FR/index.html Demo wiki with fr-FR language
# /languages/fr-FR/empty.html Empty wiki with fr-FR language
node ./tiddlywiki.js \
./editions/fr-FR \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all languages/fr-FR/index.html text/plain \
--rendertiddler $:/core/save/empty languages/fr-FR/empty.html text/plain \
|| exit 1
# /languages/zh-Hans/index.html Demo wiki with zh-Hans language
# /languages/zh-Hans/empty.html Empty wiki with zh-Hans language
node ./tiddlywiki.js \
./editions/zh-Hans \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all languages/zh-Hans/index.html text/plain \
--rendertiddler $:/core/save/empty languages/zh-Hans/empty.html text/plain \
|| exit 1
# /languages/zh-Hant/index.html Demo wiki with zh-Hant language
# /languages/zh-Hant/empty.html Empty wiki with zh-Hant language
node ./tiddlywiki.js \
./editions/zh-Hant \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all languages/zh-Hant/index.html text/plain \
--rendertiddler $:/core/save/empty languages/zh-Hant/empty.html text/plain \
|| exit 1
######################################################
#
# Tests
#
######################################################
# /test.html Wiki for running tests in browser
# Also runs the serverside tests
node ./tiddlywiki.js \
./editions/test \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all test.html text/plain \
|| exit 1

View File

@@ -1,28 +0,0 @@
@echo off
rem Abbreviated version of bld.sh for quicker builds
rem Set up the build output directory
if "x%TW5_BUILD_OUTPUT%" == "x" (
set TW5_BUILD_OUTPUT=..\jermolene.github.com
)
if not exist %TW5_BUILD_OUTPUT%\nul (
echo A valid TW5_BUILD_OUTPUT environment variable must be set
exit 1
)
echo Using TW5_BUILD_OUTPUT as %TW5_BUILD_OUTPUT%
echo.
rem The tw5.com wiki
rem index.html: the main file, including content
node .\tiddlywiki.js ^
.\editions\tw5.com ^
--verbose ^
--output %TW5_BUILD_OUTPUT% ^
--rendertiddler $:/core/save/all index.html text/plain ^
--savetiddler $:/favicon.ico favicon.ico ^
|| exit 1

View File

@@ -1,30 +0,0 @@
#!/bin/bash
# Abbreviated version of bld.sh for quicker builds
# Set up the build output directory
if [ -z "$TW5_BUILD_OUTPUT" ]; then
TW5_BUILD_OUTPUT=../jermolene.github.com
fi
if [ ! -d "$TW5_BUILD_OUTPUT" ]; then
echo 'A valid TW5_BUILD_OUTPUT environment variable must be set'
exit 1
fi
echo "Using TW5_BUILD_OUTPUT as [$TW5_BUILD_OUTPUT]"
# Make the CNAME file that GitHub Pages requires
echo "tiddlywiki.com" > $TW5_BUILD_OUTPUT/CNAME
# The tw5.com wiki
# index.html: the main file, including content
node ./tiddlywiki.js \
./editions/tw5.com \
--verbose \
--output $TW5_BUILD_OUTPUT \
--build index favicon \
|| exit 1

View File

@@ -1,7 +1,3 @@
<h1 class=''>Script Files</h1><p>The <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a> repository contains several scripts in the <code>bin</code> folder that are used to build and deploy <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> (<code>.sh</code> for *nix and <code>.cmd</code> for Windows). They can serve as a useful starting point for your own scripts.</p><p>All the scripts expect to be run from the root folder of the repository.</p><h2 class=''><code>fullbld</code>: builds tw5.com</h2><p>This script builds several variants of <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a> for deployment on tiddlywiki.com.</p><p>By default, files are output to a folder called <code>jermolene.github.com</code>, sibling to the <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a> repo directory. For example:</p><pre><code>/TiddlyWork/ - Directory for working with TiddlyWiki5
|
+--+-- /TiddlyWiki5/ - Directory containing the TiddlyWiki5 repo from GitHub
|
+-- /jermolene.github.com/ - Directory for output files</code></pre><p>You can override the build output directory by defining the environment variable <code>TW5_BUILD_OUTPUT</code>. The easiest way to do this is to create a personal batch file to invoke <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a> that first sets the environment variable and then invokes <code>fullbld</code>.</p><p><code>fullbld</code> also runs the <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a> Node.js-based test suite (see <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TestingMechanism.html'>TestingMechanism</a>)</p><h2 class=''><code>serve</code>: serves tw5.com</h2><pre><code>./bin/serve.sh -h
<h1 class=''>Script Files</h1><p>The <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a> repository contains several scripts in the <code>bin</code> folder that you can use to automate common tasks, or as a useful starting point for your own scripts. See <a class='tc-tiddlylink tc-tiddlylink-missing' href='http://tiddlywiki.com/static/Scripts%2520for%2520building%2520tiddlywiki.com.html'>Scripts for building tiddlywiki.com</a> for details of the scripts used to build and release <a class='tc-tiddlylink-external' href='http://tiddlywiki.com/' target='_blank'>http://tiddlywiki.com/</a>.</p><p>All the scripts expect to be run from the root folder of the repository.</p><h2 class=''><code>serve</code>: serves tw5.com</h2><pre><code>./bin/serve.sh -h
./bin/serve.sh [edition dir] [username] [password] [host] [port]</code></pre><p>Or:</p><pre><code>./bin/serve.cmd -h
./bin/serve.cmd [edition dir] [username] [password] [host] [port]</code></pre><p>This script starts <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a> running as an HTTP server, defaulting to the content from the <code>tw5.com-server</code> edition. By default, the Node.js serves on port 8080. If the optional <code>username</code> parameter is provided, it is used for signing edits. If the <code>password</code> is provided then HTTP basic authentication is used. Run the script with the <code>-h</code> parameter to see online help.</p><p>To experiment with this configuration, run the script and then visit <code>http://127.0.0.1:8080</code> in a browser.</p><p>Changes made in the browser propagate to the server over HTTP (use the browser developer console to see these requests). The server then syncs changes to the file system (and logs each change to the screen).</p><h2 class=''><code>test</code>: build and run tests</h2><p>This script runs the <code>test</code> edition of <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> on the server to perform the server-side tests and to build <code>test.html</code> for running the tests in the browser.</p><h2 class=''><code>lazy</code>: serves tw5.com with lazily loaded images</h2><pre><code>./bin/lazy.sh &lt;username&gt; [&lt;password&gt;]</code></pre><p>Or:</p><pre><code>./bin/lazy.cmd &lt;username&gt; [&lt;password&gt;]</code></pre><p>This script serves the <code>tw5.com-server</code> edition content with <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/LazyLoading.html'>LazyLoading</a> applied to images.</p><h2 class=''><code>wbld</code>: builds <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> for <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWeb.html'>TiddlyWeb</a></h2><p>This script builds and deploys the code for <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki%2520in%2520the%2520Sky%2520for%2520TiddlyWeb.html'>TiddlyWiki in the Sky for TiddlyWeb</a>. If you want to experiment with your own builds of <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a> for <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWeb.html'>TiddlyWeb</a> you could use this batch file as a base.</p><h2 class=''><code>2bld</code>: builds <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> 2.6.5</h2><p>This script builds <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> 2.6.5 from the original source and then displays the differences between them (<code>diff</code> is used for *nix, <code>fc</code> for Windows).</p><h2 class=''><code>deploy</code> &amp; <code>verbump</code>: deploy <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> and bump the <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> version number</h2><p>These scripts are concerned with releasing a new version of <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a>. See <a class='tc-tiddlylink tc-tiddlylink-missing' href='http://tiddlywiki.com/static/Releasing%2520a%2520new%2520version%2520of%2520TiddlyWiki5.html'>Releasing a new version of TiddlyWiki5</a>.</p>
./bin/serve.cmd [edition dir] [username] [password] [host] [port]</code></pre><p>This script starts <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a> running as an HTTP server, defaulting to the content from the <code>tw5.com-server</code> edition. By default, the Node.js serves on port 8080. If the optional <code>username</code> parameter is provided, it is used for signing edits. If the <code>password</code> is provided then HTTP basic authentication is used. Run the script with the <code>-h</code> parameter to see online help.</p><p>To experiment with this configuration, run the script and then visit <code>http://127.0.0.1:8080</code> in a browser.</p><p>Changes made in the browser propagate to the server over HTTP (use the browser developer console to see these requests). The server then syncs changes to the file system (and logs each change to the screen).</p><h2 class=''><code>test</code>: build and run tests</h2><p>This script runs the <code>test</code> edition of <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> on the server to perform the server-side tests and to build <code>test.html</code> for running the tests in the browser.</p><h2 class=''><code>lazy</code>: serves tw5.com with lazily loaded images</h2><pre><code>./bin/lazy.sh &lt;username&gt; [&lt;password&gt;]</code></pre><p>Or:</p><pre><code>./bin/lazy.cmd &lt;username&gt; [&lt;password&gt;]</code></pre><p>This script serves the <code>tw5.com-server</code> edition content with <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/LazyLoading.html'>LazyLoading</a> applied to images.</p><h2 class=''><code>2bld</code>: builds <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> 2.6.5</h2><p>This script builds <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> 2.6.5 from the original source and then displays the differences between them (<code>diff</code> is used for *nix, <code>fc</code> for Windows).</p>

View File

@@ -43,8 +43,8 @@ echo - %%3 .. password .. can be empty like this: '""'
echo - %%4 .. IP address or HOST .. defaults to localhost
echo - %%5 .. PORT .. defaults to 8080
echo.
echo Example 1 .\serve .\edition\tw5.com-server username
echo Example 2 .\serve .\edition\tw5.com-server '""' '""' localhost 9090
echo Example 1 .\serve .\editions\tw5.com-server username
echo Example 2 .\serve .\editions\tw5.com-server '""' '""' localhost 9090
echo .. Example 2 defines: empty username, empty password
echo.
echo Help information

View File

@@ -45,8 +45,8 @@ help() {
echo $'\t'-v .. Version
echo $'\t'-h .. Help
echo
echo Example 1 ./serve ./edition/tw5.com-server username
echo Example 2 ./serve ./edition/tw5.com-server \"\" \"\" localhost 9090
echo Example 1 ./serve ./editions/tw5.com-server username
echo Example 2 ./serve ./editions/tw5.com-server \"\" \"\" localhost 9090
echo .. Example 2 defines: empty username, empty password
echo
}

View File

@@ -2,24 +2,10 @@
rem test TiddlyWiki5 for tiddlywiki.com
rem Set up the build output directory
if "x%TW5_BUILD_OUTPUT%" == "x" (
set TW5_BUILD_OUTPUT=..\jermolene.github.com
)
if not exist %TW5_BUILD_OUTPUT%\nul (
echo A valid TW5_BUILD_OUTPUT environment variable must be set
exit 1
)
echo Using TW5_BUILD_OUTPUT as %TW5_BUILD_OUTPUT%
rem Run the test edition to run the node.js tests and to generate test.html for tests in the browser
node .\tiddlywiki.js ^
.\editions\test ^
--output %TW5_BUILD_OUTPUT% ^
--verbose ^
--rendertiddler $:/core/save/all test.html text/plain ^
|| exit 1

View File

@@ -2,24 +2,12 @@
# test TiddlyWiki5 for tiddlywiki.com
# Set up the build output directory
if [ -z "$TW5_BUILD_OUTPUT" ]; then
TW5_BUILD_OUTPUT=../jermolene.github.com
fi
if [ ! -d "$TW5_BUILD_OUTPUT" ]; then
echo 'A valid TW5_BUILD_OUTPUT environment variable must be set'
exit 1
fi
echo "Using TW5_BUILD_OUTPUT as [$TW5_BUILD_OUTPUT]"
# Run the test edition to run the node.js tests and to generate test.html for tests in the browser
node ./tiddlywiki.js \
./editions/test \
--verbose \
--output $TW5_BUILD_OUTPUT \
--rendertiddler $:/core/save/all test.html text/plain \
|| exit 1
echo To run the tests in a browser, open "editions/test/output/test.html"

View File

@@ -1,16 +0,0 @@
@echo off
rem Bump to a new version number
if "x%1" == "x" (
echo Missing version (eg '5.0.0-alpha'^)
exit 1
)
rem Set the new version number (will also commit and tag the release)
npm version %1 -m "Version number update for %1" || exit 1
rem Make sure our tags are pushed to the origin server
git push origin --tags || exit 1

View File

@@ -1,17 +0,0 @@
#!/bin/bash
# Bump to a new version number
if [ -z "$1" ]
then
echo "Missing version (eg '5.0.0-alpha')"
exit 1
fi
# Set the new version number (will also commit and tag the release)
npm version $1 -m "Version number update for $1" || exit 1
# Make sure our tags are pushed to the origin server
git push origin --tags || exit 1

View File

@@ -1,26 +0,0 @@
@echo off
rem build the TiddlyWeb edition of TiddlyWiki5 and upload it to TiddlySpace. Requires the TiddlySpace credentials
rem of a member of the tw5tiddlyweb space
rem usage:
rem .\wbld.cmd <tiddlyspace username> <tiddlyspace password>
rem Open the tw5tiddlyweb edition in TW5 and save the template for the main HTML file
node .\tiddlywiki.js ^
editions\tw5tiddlyweb ^
--verbose ^
--output tmp ^
--rendertiddler $:/core/save/all tiddlyweb.html text/plain ^
|| exit 1
rem Prepend the type information that TiddlyWeb needs to turn the .html file into a .tid file
echo "type: text/html" > tmp\tiddlerforupload.txt
echo "" >> tmp\tiddlerforupload.txt
type tmp\tiddlyweb.html >> tmp\tiddlerforupload.txt
rem Upload the tiddler file
curl -u %1:%2 -X PUT -H "content-type: text/plain" http://tw5tiddlyweb.tiddlyspace.com/bags/tw5tiddlyweb_public/tiddlers/tw5 --data-binary @tmp/tiddlerforupload.txt

View File

@@ -1,30 +0,0 @@
#!/bin/bash
# build the TiddlyWeb edition of TiddlyWiki5 and upload it to TiddlySpace. Requires the TiddlySpace credentials
# of a member of the tw5tiddlyweb space
# usage:
# ./wbld.sh <tiddlyspace username> <tiddlyspace password>
# Create the tmp directory if needed
mkdir -p tmp
# Open the tw5tiddlyweb edition in TW5 and save the template for the main HTML file
node ./tiddlywiki.js \
editions/tw5tiddlyweb \
--verbose \
--output tmp \
--rendertiddler $:/core/save/all tiddlyweb.html text/plain \
|| exit 1
# Prepend the type information that TiddlyWeb needs to turn the .html file into a .tid file
echo "type: text/html" > tmp/tiddlerforupload.txt
echo "" >> tmp/tiddlerforupload.txt
cat tmp/tiddlyweb.html >> tmp/tiddlerforupload.txt
# Upload the tiddler file
curl -u $1:$2 -X PUT -H "content-type: text/plain" http://tw5tiddlyweb.tiddlyspace.com/bags/tw5tiddlyweb_public/tiddlers/tw5 --data-binary @tmp/tiddlerforupload.txt

View File

@@ -4,20 +4,7 @@ type: application/javascript
The main boot kernel for TiddlyWiki. This single file creates a barebones TW environment that is just sufficient to bootstrap the modules containing the main logic of the application.
On the server this file is executed directly to boot TiddlyWiki. In the browser, this file is packed into a single HTML file along with other elements:
# bootprefix.js
# <module definitions>
# boot.js
The module definitions on the browser look like this:
$tw.defineModule("MyModule","moduletype",function(module,exports,require) {
// Module code inserted here
return exports;
});
In practice, each module is wrapped in a separate script block.
On the server this file is executed directly to boot TiddlyWiki. In the browser, this file is packed into a single HTML file.
\*/
@@ -477,6 +464,7 @@ submitText: text to use for submit button (defaults to "Login")
serviceName: text of the human readable service name
noUserName: set true to disable username prompt
canCancel: set true to enable a cancel button (callback called with null)
repeatPassword: set true to prompt for the password twice
callback: function to be called on submission with parameter of object {username:,password:}. Callback must return `true` to remove the password prompt
*/
$tw.utils.PasswordPrompt.prototype.createPrompt = function(options) {
@@ -493,6 +481,11 @@ $tw.utils.PasswordPrompt.prototype.createPrompt = function(options) {
children.push(dm("input",{
attributes: {type: "password", name: "password", placeholder: "Password"}
}));
if(options.repeatPassword) {
children.push(dm("input",{
attributes: {type: "password", name: "password2", placeholder: "Repeat password"}
}));
}
if(options.canCancel) {
children.push(dm("button",{
text: "Cancel",
@@ -527,18 +520,23 @@ $tw.utils.PasswordPrompt.prototype.createPrompt = function(options) {
data[element.name] = element.value;
}
});
// Call the callback
if(options.callback(data)) {
// Remove the prompt if the callback returned true
self.removePrompt(promptInfo);
// Check that the passwords match
if(options.repeatPassword && data.password !== data.password2) {
alert("Passwords do not match");
} else {
// Clear the password if the callback returned false
$tw.utils.each(form.elements,function(element) {
if(element.name === "password") {
element.value = "";
}
});
}
// Call the callback
if(options.callback(data)) {
// Remove the prompt if the callback returned true
self.removePrompt(promptInfo);
} else {
// Clear the password if the callback returned false
$tw.utils.each(form.elements,function(element) {
if(element.name === "password" || element.name === "password2") {
element.value = "";
}
});
}
}
event.preventDefault();
return false;
},true);
@@ -1244,10 +1242,14 @@ Decrypt any tiddlers stored within the element with the ID "encryptedArea". The
$tw.boot.decryptEncryptedTiddlers = function(callback) {
var encryptedArea = document.getElementById("encryptedStoreArea");
if(encryptedArea) {
var encryptedText = encryptedArea.innerHTML;
var encryptedText = encryptedArea.innerHTML,
prompt = "Enter a password to decrypt this TiddlyWiki";
// Prompt for the password
if($tw.utils.hop($tw.boot,"encryptionPrompts")) {
prompt = $tw.boot.encryptionPrompts.decrypt;
}
$tw.passwordPrompt.createPrompt({
serviceName: "Enter a password to decrypt this TiddlyWiki",
serviceName: prompt,
noUserName: true,
submitText: "Decrypt",
callback: function(data) {
@@ -1568,7 +1570,9 @@ $tw.loadWikiTiddlers = function(wikiPath,parentPaths) {
$tw.utils.each(wikiInfo.includeWikis,function(includedWikiPath) {
var resolvedIncludedWikiPath = path.resolve(wikiPath,includedWikiPath);
if(parentPaths.indexOf(resolvedIncludedWikiPath) === -1) {
$tw.loadWikiTiddlers(resolvedIncludedWikiPath,parentPaths);
var subWikiInfo = $tw.loadWikiTiddlers(resolvedIncludedWikiPath,parentPaths);
// Merge the build targets
wikiInfo.build = $tw.utils.extend([],subWikiInfo.build,wikiInfo.build);
} else {
$tw.utils.error("Cannot recursively include wiki " + resolvedIncludedWikiPath);
}
@@ -1710,7 +1714,9 @@ $tw.boot.startup = function(options) {
// If the first command line argument doesn't start with `--` then we
// interpret it as the path to the wiki folder, which will otherwise default
// to the current folder
var explicitWikiPath;
if($tw.boot.argv[0] && $tw.boot.argv[0].indexOf("--") !== 0) {
explicitWikiPath = true;
$tw.boot.wikiPath = $tw.boot.argv[0];
$tw.boot.argv = $tw.boot.argv.slice(1);
} else {
@@ -1742,6 +1748,9 @@ $tw.boot.startup = function(options) {
$tw.utils.registerFileType("image/svg+xml","utf8",".svg",{flags:["image"]});
$tw.utils.registerFileType("image/x-icon","base64",".ico",{flags:["image"]});
$tw.utils.registerFileType("application/font-woff","base64",".woff");
$tw.utils.registerFileType("audio/ogg","base64",".ogg");
$tw.utils.registerFileType("audio/mp3","base64",".mp3");
$tw.utils.registerFileType("audio/mp4","base64",[".mp4",".m4a"]);
$tw.utils.registerFileType("text/x-markdown","utf8",[".md",".markdown"]);
// Create the wiki store for the app
$tw.wiki = new $tw.Wiki();
@@ -1755,6 +1764,9 @@ $tw.boot.startup = function(options) {
$tw.loadTiddlersBrowser();
} else {
$tw.loadTiddlersNode();
if(!$tw.boot.wikiInfo && explicitWikiPath) {
return $tw.utils.error("Wiki folder '" + $tw.boot.wikiPath + "' is missing a 'tiddlywiki.info' file");
}
}
// Unpack plugin tiddlers
$tw.wiki.readPluginInfo();

View File

@@ -99,7 +99,7 @@ return $tw
if(typeof(exports) === "undefined") {
// Set up $tw global for the browser
window.$tw = _bootprefix();
window.$tw = _bootprefix(window.$tw);
} else {
// Export functionality as a module
exports.bootprefix = _bootprefix;

View File

@@ -1,3 +1,3 @@
<h1 class=''>Contributing to <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a></h1><p>We welcome contributions to the code and documentation of <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> in several ways:</p><ul><li><a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/ReportingBugs.html'>ReportingBugs</a></li><li>Helping to <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/Improving%2520TiddlyWiki%2520Documentation.html'>improve our documentation</a></li><li>Contributing to the code via <a class='tc-tiddlylink-external' href='https://github.com/Jermolene/TiddlyWiki5' target='_blank'>GitHub</a><ul><li>See <a class='tc-tiddlylink-external' href='http://tiddlywiki.com/dev' target='_blank'>http://tiddlywiki.com/dev</a> for more details</li></ul></li></ul><p>There are other ways to <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/HelpingTiddlyWiki.html'>help TiddlyWiki</a> too.</p><h1 class=''>Contributor License Agreement</h1><p>Like other <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/OpenSource.html'>OpenSource</a> projects, <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a> needs a signed contributor license agreement from individual contributors. This is a legal agreement that allows contributors to assert that they own the copyright of their contribution, and that they agree to license it to the <a class='tc-tiddlylink tc-tiddlylink-missing' href='http://tiddlywiki.com/static/UnaMesa.html'>UnaMesa</a> Association (the legal entity that owns <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> on behalf of the community).</p><ul><li>For individuals use: <a class='tc-tiddlylink-external' href='https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses/cla-individual.md' target='_blank'>licenses/CLA-individual</a></li><li>For entities use: <a class='tc-tiddlylink-external' href='https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses/cla-entity.md' target='_blank'>licenses/CLA-entity</a></li></ul><h1 class=''>How to sign the CLA</h1><p>Create a <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/GitHub.html'>GitHub</a> pull request to add your name to <code>cla-individual.md</code> or <code>cla-entity.md</code>, with the date in the format (YYYY/MM/DD).</p><p>eg: <code>Jeremy Ruston, @Jermolene, 2011/11/22</code></p><hr><p><em>The CLA documents used for this project were created using <a class='tc-tiddlylink-external' href='http://www.harmonyagreements.org' target='_blank'>Harmony Project Templates</a>. &quot;HA-CLA-I-LIST Version 1.0&quot; for &quot;CLA-individual&quot; and &quot;HA-CLA-E-LIST Version 1.0&quot; for &quot;CLA-entity&quot;.</em>
<h1 class=''>Contributing to <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a></h1><p>We welcome contributions to the code and documentation of <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> in several ways:</p><ul><li><a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/ReportingBugs.html'>ReportingBugs</a></li><li>Helping to <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/Improving%2520TiddlyWiki%2520Documentation.html'>improve our documentation</a></li><li>Contributing to the code via <a class='tc-tiddlylink-external' href='https://github.com/Jermolene/TiddlyWiki5' target='_blank'>GitHub</a><ul><li>See <a class='tc-tiddlylink-external' href='http://tiddlywiki.com/dev' target='_blank'>http://tiddlywiki.com/dev</a> for more details</li></ul></li></ul><p>There are other ways to <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/HelpingTiddlyWiki.html'>help TiddlyWiki</a> too.</p><h1 class=''>Contributor License Agreement</h1><p>Like other <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/OpenSource.html'>OpenSource</a> projects, <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a> needs a signed contributor license agreement from individual contributors. This is a legal agreement that allows contributors to assert that they own the copyright of their contribution, and that they agree to license it to the <a class='tc-tiddlylink tc-tiddlylink-missing' href='http://tiddlywiki.com/static/UnaMesa.html'>UnaMesa</a> Association (the legal entity that owns <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki.html'>TiddlyWiki</a> on behalf of the community).</p><ul><li>For individuals use: <a class='tc-tiddlylink-external' href='https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses/cla-individual.md' target='_blank'>licenses/CLA-individual</a></li><li>For entities use: <a class='tc-tiddlylink-external' href='https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses/cla-entity.md' target='_blank'>licenses/CLA-entity</a></li></ul><h1 class=''>How to sign the CLA</h1><p>Create a <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/GitHub.html'>GitHub</a> pull request to add your name to <code>cla-individual.md</code> or <code>cla-entity.md</code>, with the date in the format (YYYY/MM/DD).</p><p><strong>step by step</strong></p><ol><li>click <a class='tc-tiddlylink-external' href='https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses/cla-individual.md' target='_blank'>licenses/CLA-individual</a> or <a class='tc-tiddlylink-external' href='https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses/cla-entity.md' target='_blank'>licenses/CLA-entity</a></li><li>in <code>cla-individual.md</code> or <code>cla-entity.md</code> click icon on the top-right corner (clicking this button will fork the project so you can edit the file)</li><li>add your name at the bottom</li></ol><p>eg: <code>Jeremy Ruston, @Jermolene, 2011/11/22</code></p><hr><p><em>The CLA documents used for this project were created using <a class='tc-tiddlylink-external' href='http://www.harmonyagreements.org' target='_blank'>Harmony Project Templates</a>. &quot;HA-CLA-I-LIST Version 1.0&quot; for &quot;CLA-individual&quot; and &quot;HA-CLA-E-LIST Version 1.0&quot; for &quot;CLA-entity&quot;.</em>
</p><p><em>This file was automatically generated by <a class='tc-tiddlylink tc-tiddlylink-resolves' href='http://tiddlywiki.com/static/TiddlyWiki5.html'>TiddlyWiki5</a></em>
</p>

View File

@@ -0,0 +1,8 @@
title: $:/core/images/new-here-button
tags: $:/tags/Image
<svg class="tc-image-new-here-button tc-image-button" width="22pt" height="22pt" viewBox="0 0 128 128">
<g fill-rule="evenodd">
<path d="M56.5301831,72 L48.53728,72 C44.1183542,72 40.5301831,68.418278 40.5301831,64 C40.5301831,59.5907123 44.1150825,56 48.53728,56 L56.5301831,56 L56.5301831,48.0070969 C56.5301831,43.5881712 60.1119051,40 64.5301831,40 C68.9394708,40 72.5301831,43.5848994 72.5301831,48.0070969 L72.5301831,56 L80.5230862,56 C84.9420119,56 88.5301831,59.581722 88.5301831,64 C88.5301831,68.4092877 84.9452837,72 80.5230862,72 L72.5301831,72 L72.5301831,79.9929031 C72.5301831,84.4118288 68.9484611,88 64.5301831,88 C60.1208954,88 56.5301831,84.4151006 56.5301831,79.9929031 L56.5301831,72 Z M64.5301831,128 C99.8764071,128 128.530183,99.346224 128.530183,64 C128.530183,28.653776 99.8764071,0 64.5301831,0 C29.1839591,0 0.530183077,28.653776 0.530183077,64 C0.530183077,99.346224 29.1839591,128 64.5301831,128 Z M64.5301831,118 C94.3535596,118 118.530183,93.8233765 118.530183,64 C118.530183,34.1766235 94.3535596,10 64.5301831,10 C34.7068066,10 10.5301831,34.1766235 10.5301831,64 C10.5301831,93.8233765 34.7068066,118 64.5301831,118 Z M64.5301831,108 C88.8307121,108 108.530183,88.300529 108.530183,64 C108.530183,39.699471 88.8307121,20 64.5301831,20 C40.2296541,20 20.5301831,39.699471 20.5301831,64 C20.5301831,88.300529 40.2296541,108 64.5301831,108 Z M64.5301831,98 C83.3078646,98 98.5301831,82.7776815 98.5301831,64 C98.5301831,45.2223185 83.3078646,30 64.5301831,30 C45.7525016,30 30.5301831,45.2223185 30.5301831,64 C30.5301831,82.7776815 45.7525016,98 64.5301831,98 Z"></path>
</g>
</svg>

View File

@@ -0,0 +1,16 @@
title: $:/core/images/new-journal-button
tags: $:/tags/Image
<svg class="tc-image-new-journal-button tc-image-button" width="22pt" height="22pt" viewBox="0 0 128 128">
<g fill-rule="evenodd">
<path d="M102.545455,112.818182 L102.545455,124.636364 L102.545455,124.636364 L102.545455,124.636364 C102.545455,125.941761 103.630828,127 104.969697,127 L111.030303,127 C112.369172,127 113.454545,125.941761 113.454545,124.636364 L113.454545,112.818182 L125.575758,112.818182 C126.914626,112.818182 128,111.759982 128,110.454545 L128,104.545455 C128,103.240018 126.914626,102.181818 125.575758,102.181818 L113.454545,102.181818 L113.454545,90.3636364 C113.454545,89.0582 112.369172,88 111.030303,88 L104.969697,88 L104.969697,88 C103.630828,88 102.545455,89.0582 102.545455,90.3636364 L102.545455,102.181818 L90.4242424,102.181818 L90.4242424,102.181818 C89.0853705,102.181818 88,103.240018 88,104.545455 L88,110.454545 L88,110.454545 L88,110.454545 C88,111.759982 89.0853705,112.818182 90.4242424,112.818182 L102.545455,112.818182 Z"></path>
<g transform="translate(59.816987, 64.316987) rotate(30.000000) translate(-59.816987, -64.316987) translate(20.316987, 12.816987)">
<g transform="translate(0.000000, 0.000000)">
<path d="M9.99631148,0 C4.4755011,0 -2.27373675e-13,4.48070044 -2.27373675e-13,9.99759461 L-2.27373675e-13,91.6128884 C-2.27373675e-13,97.1344074 4.46966773,101.610483 9.99631148,101.610483 L68.9318917,101.610483 C74.4527021,101.610483 78.9282032,97.1297826 78.9282032,91.6128884 L78.9282032,9.99759461 C78.9282032,4.47607557 74.4585355,0 68.9318917,0 L9.99631148,0 Z M20.8885263,26 C24.2022348,26 26.8885263,23.3137085 26.8885263,20 C26.8885263,16.6862915 24.2022348,14 20.8885263,14 C17.5748178,14 14.8885263,16.6862915 14.8885263,20 C14.8885263,23.3137085 17.5748178,26 20.8885263,26 Z M57.3033321,25.6783342 C60.6170406,25.6783342 63.3033321,22.9920427 63.3033321,19.6783342 C63.3033321,16.3646258 60.6170406,13.6783342 57.3033321,13.6783342 C53.9896236,13.6783342 51.3033321,16.3646258 51.3033321,19.6783342 C51.3033321,22.9920427 53.9896236,25.6783342 57.3033321,25.6783342 Z"></path>
<text font-family="Helvetica" font-size="47.1724138" font-weight="bold" fill="#FFFFFF">
<tspan x="42" y="77.4847912" text-anchor="middle"><<now "DD">></tspan>
</text>
</g>
</g>
</g>
</svg>

View File

@@ -34,10 +34,16 @@ Home/Caption: home
Home/Hint: Open the default tiddlers
Language/Caption: language
Language/Hint: Choose the user interface language
NewTiddler/Caption: new tiddler
NewTiddler/Hint: Create a new tiddler
More/Caption: more
More/Hint: More actions
NewHere/Caption: new here
NewHere/Hint: Create a new tiddler tagged with this one
NewJournal/Caption: new journal
NewJournal/Hint: Create a new journal tiddler
NewJournalHere/Caption: new journal here
NewJournalHere/Hint: Create a new journal tiddler tagged with this one
NewTiddler/Caption: new tiddler
NewTiddler/Hint: Create a new tiddler
Permalink/Caption: permalink
Permalink/Hint: Set browser address bar to a direct link to this tiddler
Permaview/Caption: permaview

View File

@@ -10,6 +10,8 @@ Basics/DefaultTiddlers/BottomHint: Use &#91;&#91;double square brackets&#93;&#93
Basics/DefaultTiddlers/Prompt: Default tiddlers:
Basics/DefaultTiddlers/TopHint: Choose which tiddlers are displayed at startup:
Basics/Language/Prompt: Hello! Current language:
Basics/NewJournal/Title/Prompt: Title of new journal tiddlers
Basics/NewJournal/Tags/Prompt: Tags for new journal tiddlers
Basics/OverriddenShadowTiddlers/Prompt: Number of overridden shadow tiddlers:
Basics/ShadowTiddlers/Prompt: Number of shadow tiddlers:
Basics/Subtitle/Prompt: Subtitle:

View File

@@ -0,0 +1,87 @@
title: $:/language/
Date/DaySuffix/1: st
Date/DaySuffix/2: nd
Date/DaySuffix/3: rd
Date/DaySuffix/4: th
Date/DaySuffix/5: th
Date/DaySuffix/6: th
Date/DaySuffix/7: th
Date/DaySuffix/8: th
Date/DaySuffix/9: th
Date/DaySuffix/10: th
Date/DaySuffix/11: th
Date/DaySuffix/12: th
Date/DaySuffix/13: th
Date/DaySuffix/14: th
Date/DaySuffix/15: th
Date/DaySuffix/16: th
Date/DaySuffix/17: th
Date/DaySuffix/18: th
Date/DaySuffix/19: th
Date/DaySuffix/20: th
Date/DaySuffix/21: st
Date/DaySuffix/22: nd
Date/DaySuffix/23: rd
Date/DaySuffix/24: th
Date/DaySuffix/25: th
Date/DaySuffix/26: th
Date/DaySuffix/27: th
Date/DaySuffix/28: th
Date/DaySuffix/29: th
Date/DaySuffix/30: th
Date/DaySuffix/31: st
Date/Long/Day/0: Sunday
Date/Long/Day/1: Monday
Date/Long/Day/2: Tuesday
Date/Long/Day/3: Wednesday
Date/Long/Day/4: Thursday
Date/Long/Day/5: Friday
Date/Long/Day/6: Saturday
Date/Long/Month/1: January
Date/Long/Month/2: February
Date/Long/Month/3: March
Date/Long/Month/4: April
Date/Long/Month/5: May
Date/Long/Month/6: June
Date/Long/Month/7: July
Date/Long/Month/8: August
Date/Long/Month/9: September
Date/Long/Month/10: October
Date/Long/Month/11: November
Date/Long/Month/12: December
Date/Period/am: am
Date/Period/pm: pm
Date/Short/Day/0: Sun
Date/Short/Day/1: Mon
Date/Short/Day/2: Tue
Date/Short/Day/3: Wed
Date/Short/Day/4: Thu
Date/Short/Day/5: Fri
Date/Short/Day/6: Sat
Date/Short/Month/1: Jan
Date/Short/Month/2: Feb
Date/Short/Month/3: Mar
Date/Short/Month/4: Apr
Date/Short/Month/5: May
Date/Short/Month/6: Jun
Date/Short/Month/7: Jul
Date/Short/Month/8: Aug
Date/Short/Month/9: Sep
Date/Short/Month/10: Oct
Date/Short/Month/11: Nov
Date/Short/Month/12: Dec
RelativeDate/Future/Days: <<period>> days from now
RelativeDate/Future/Hours: <<period>> hours from now
RelativeDate/Future/Minutes: <<period>> minutes from now
RelativeDate/Future/Months: <<period>> months from now
RelativeDate/Future/Second: 1 second from now
RelativeDate/Future/Seconds: <<period>> seconds from now
RelativeDate/Future/Years: <<period>> years from now
RelativeDate/Past/Days: <<period>> days ago
RelativeDate/Past/Hours: <<period>> hours ago
RelativeDate/Past/Minutes: <<period>> minutes ago
RelativeDate/Past/Months: <<period>> months ago
RelativeDate/Past/Second: 1 second ago
RelativeDate/Past/Seconds: <<period>> seconds ago
RelativeDate/Past/Years: <<period>> years ago

View File

@@ -14,6 +14,7 @@ storyview: Story views customise the animation and behaviour of list widgets.
tiddlerdeserializer: Converts different content types into tiddlers.
tiddlerfield: Defines the behaviour of an individual tiddler field.
tiddlermethod: Adds methods to the `$tw.Tiddler` prototype.
upgrader: Applies upgrade processing to tiddlers during an upgrade/import.
utils: Adds methods to `$tw.utils`.
utils-node: Adds Node.js-specific methods to `$tw.utils`.
widget: Widgets encapsulate DOM rendering and refreshing.

View File

@@ -8,24 +8,13 @@ ConfirmCancelTiddler: Do you wish to discard changes to the tiddler "<$text text
ConfirmDeleteTiddler: Do you wish to delete the tiddler "<$text text=<<title>>/>"?
ConfirmOverwriteTiddler: Do you wish to overwrite the tiddler "<$text text=<<title>>/>"?
ConfirmEditShadowTiddler: You are about to edit a ShadowTiddler. Any changes will override the default system making future upgrades non-trivial. Are you sure you want to edit "<$text text=<<title>>/>"?
DefaultNewTiddlerTitle: New Tiddler
DropMessage: Drop here (or click escape to cancel)
Encryption/ConfirmClearPassword: Do you wish to clear the password? This will remove the encryption applied when saving this wiki
Encryption/PromptSetPassword: Set a new password for this TiddlyWiki
InvalidFieldName: Illegal characters in field name "<$text text=<<fieldName>>/>". Fields can only contain lowercase letters, digits and the characters underscore (`_`), hyphen (`-`) and period (`.`)
MissingTiddler/Hint: Missing tiddler "<$text text=<<currentTiddler>>/>" - click {{$:/core/images/edit-button}} to create
RecentChanges/DateFormat: DDth MMM YYYY
RelativeDate/Future/Days: <<period>> days from now
RelativeDate/Future/Hours: <<period>> hours from now
RelativeDate/Future/Minutes: <<period>> minutes from now
RelativeDate/Future/Months: <<period>> months from now
RelativeDate/Future/Second: 1 second from now
RelativeDate/Future/Seconds: <<period>> seconds from now
RelativeDate/Future/Years: <<period>> years from now
RelativeDate/Past/Days: <<period>> days ago
RelativeDate/Past/Hours: <<period>> hours ago
RelativeDate/Past/Minutes: <<period>> minutes ago
RelativeDate/Past/Months: <<period>> months ago
RelativeDate/Past/Second: 1 second ago
RelativeDate/Past/Seconds: <<period>> seconds ago
RelativeDate/Past/Years: <<period>> years ago
SystemTiddler/Tooltip: This is a system tiddler
TagManager/Colour/Heading: Colour
TagManager/Icon/Heading: Icon

View File

@@ -0,0 +1,4 @@
title: $:/config/NewJournal/
Title: DDth MMM YYYY
Tags: Journal

View File

@@ -17,20 +17,6 @@ exports.preferences = {};
exports.preferences.notificationDuration = 3 * 1000;
exports.preferences.jsonSpaces = 4;
exports.dateFormats = {
months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November","December"],
days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
shortMonths: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
shortDays: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
// suffixes for dates, eg "1st","2nd","3rd"..."30th","31st"
daySuffixes: ["st","nd","rd","th","th","th","th","th","th","th",
"th","th","th","th","th","th","th","th","th","th",
"st","nd","rd","th","th","th","th","th","th","th",
"st"],
am: "am",
pm: "pm"
};
exports.htmlEntities = {quot:34, amp:38, apos:39, lt:60, gt:62, nbsp:160, iexcl:161, cent:162, pound:163, curren:164, yen:165, brvbar:166, sect:167, uml:168, copy:169, ordf:170, laquo:171, not:172, shy:173, reg:174, macr:175, deg:176, plusmn:177, sup2:178, sup3:179, acute:180, micro:181, para:182, middot:183, cedil:184, sup1:185, ordm:186, raquo:187, frac14:188, frac12:189, frac34:190, iquest:191, Agrave:192, Aacute:193, Acirc:194, Atilde:195, Auml:196, Aring:197, AElig:198, Ccedil:199, Egrave:200, Eacute:201, Ecirc:202, Euml:203, Igrave:204, Iacute:205, Icirc:206, Iuml:207, ETH:208, Ntilde:209, Ograve:210, Oacute:211, Ocirc:212, Otilde:213, Ouml:214, times:215, Oslash:216, Ugrave:217, Uacute:218, Ucirc:219, Uuml:220, Yacute:221, THORN:222, szlig:223, agrave:224, aacute:225, acirc:226, atilde:227, auml:228, aring:229, aelig:230, ccedil:231, egrave:232, eacute:233, ecirc:234, euml:235, igrave:236, iacute:237, icirc:238, iuml:239, eth:240, ntilde:241, ograve:242, oacute:243, ocirc:244, otilde:245, ouml:246, divide:247, oslash:248, ugrave:249, uacute:250, ucirc:251, uuml:252, yacute:253, thorn:254, yuml:255, OElig:338, oelig:339, Scaron:352, scaron:353, Yuml:376, fnof:402, circ:710, tilde:732, Alpha:913, Beta:914, Gamma:915, Delta:916, Epsilon:917, Zeta:918, Eta:919, Theta:920, Iota:921, Kappa:922, Lambda:923, Mu:924, Nu:925, Xi:926, Omicron:927, Pi:928, Rho:929, Sigma:931, Tau:932, Upsilon:933, Phi:934, Chi:935, Psi:936, Omega:937, alpha:945, beta:946, gamma:947, delta:948, epsilon:949, zeta:950, eta:951, theta:952, iota:953, kappa:954, lambda:955, mu:956, nu:957, xi:958, omicron:959, pi:960, rho:961, sigmaf:962, sigma:963, tau:964, upsilon:965, phi:966, chi:967, psi:968, omega:969, thetasym:977, upsih:978, piv:982, ensp:8194, emsp:8195, thinsp:8201, zwnj:8204, zwj:8205, lrm:8206, rlm:8207, ndash:8211, mdash:8212, lsquo:8216, rsquo:8217, sbquo:8218, ldquo:8220, rdquo:8221, bdquo:8222, dagger:8224, Dagger:8225, bull:8226, hellip:8230, permil:8240, prime:8242, Prime:8243, lsaquo:8249, rsaquo:8250, oline:8254, frasl:8260, euro:8364, image:8465, weierp:8472, real:8476, trade:8482, alefsym:8501, larr:8592, uarr:8593, rarr:8594, darr:8595, harr:8596, crarr:8629, lArr:8656, uArr:8657, rArr:8658, dArr:8659, hArr:8660, forall:8704, part:8706, exist:8707, empty:8709, nabla:8711, isin:8712, notin:8713, ni:8715, prod:8719, sum:8721, minus:8722, lowast:8727, radic:8730, prop:8733, infin:8734, ang:8736, and:8743, or:8744, cap:8745, cup:8746, int:8747, there4:8756, sim:8764, cong:8773, asymp:8776, ne:8800, equiv:8801, le:8804, ge:8805, sub:8834, sup:8835, nsub:8836, sube:8838, supe:8839, oplus:8853, otimes:8855, perp:8869, sdot:8901, lceil:8968, rceil:8969, lfloor:8970, rfloor:8971, lang:9001, rang:9002, loz:9674, spades:9824, clubs:9827, hearts:9829, diams:9830 };
exports.htmlVoidElements = "area,base,br,col,command,embed,hr,img,input,keygen,link,meta,param,source,track,wbr".split(",");

View File

@@ -0,0 +1,28 @@
/*\
title: $:/core/modules/filters/addprefix.js
type: application/javascript
module-type: filteroperator
Filter operator for adding a prefix to each title in the list. This is
especially useful in contexts where only a filter expression is allowed
and macro substitution isn't available.
\*/
(function(){
/*jslint node: true, browser: true */
/*global $tw: false */
"use strict";
/*
Export our filter function
*/
exports.addprefix = function(source,operator,options) {
var results = [];
source(function(tiddler,title) {
results.push(operator.operand + title);
});
return results;
};
})();

View File

@@ -0,0 +1,28 @@
/*\
title: $:/core/modules/filters/addsuffix.js
type: application/javascript
module-type: filteroperator
Filter operator for adding a suffix to each title in the list. This is
especially useful in contexts where only a filter expression is allowed
and macro substitution isn't available.
\*/
(function(){
/*jslint node: true, browser: true */
/*global $tw: false */
"use strict";
/*
Export our filter function
*/
exports.addsuffix = function(source,operator,options) {
var results = [];
source(function(tiddler,title) {
results.push(title + operator.operand);
});
return results;
};
})();

View File

@@ -20,7 +20,12 @@ exports.each = function(source,operator,options) {
values = {};
source(function(tiddler,title) {
if(tiddler) {
var value = tiddler.getFieldString(operator.operand);
var value;
if((operator.operand === "") || (operator.operand === "title")) {
value = title;
} else {
value = tiddler.getFieldString(operator.operand);
}
if(!$tw.utils.hop(values,value)) {
values[value] = true;
results.push(title);

View File

@@ -0,0 +1,32 @@
/*\
title: $:/core/modules/macros/now.js
type: application/javascript
module-type: macro
Macro to return a formatted version of the current time
\*/
(function(){
/*jslint node: true, browser: true */
/*global $tw: false */
"use strict";
/*
Information about this macro
*/
exports.name = "now";
exports.params = [
{name: "format"}
];
/*
Run the macro
*/
exports.run = function(format) {
return $tw.utils.formatDateString(new Date(),format || "0hh:0mm, DDth MMM YYYY");
};
})();

View File

@@ -0,0 +1,38 @@
/*\
title: $:/core/modules/parsers/audioparser.js
type: application/javascript
module-type: parser
The audio parser parses an audio tiddler into an embeddable HTML element
\*/
(function(){
/*jslint node: true, browser: true */
/*global $tw: false */
"use strict";
var AudioParser = function(type,text,options) {
var element = {
type: "element",
tag: "audio",
attributes: {
controls: {type: "string", value: "controls"}
}
},
src;
if(options._canonical_uri) {
element.attributes.src = {type: "string", value: options._canonical_uri};
} else if(text) {
element.attributes.src = {type: "string", value: "data:" + type + ";base64," + text};
}
this.tree = [element];
};
exports["audio/ogg"] = AudioParser;
exports["audio/mpeg"] = AudioParser;
exports["audio/mp3"] = AudioParser;
exports["audio/mp4"] = AudioParser;
})();

View File

@@ -21,10 +21,11 @@ exports.synchronous = true;
exports.startup = function() {
$tw.rootWidget.addEventListener("tm-set-password",function(event) {
$tw.passwordPrompt.createPrompt({
serviceName: "Set a new password for this TiddlyWiki",
serviceName: $tw.language.getString("Encryption/PromptSetPassword"),
noUserName: true,
submitText: "Set password",
canCancel: true,
repeatPassword: true,
callback: function(data) {
if(data) {
$tw.crypto.setPassword(data.password);
@@ -34,6 +35,11 @@ exports.startup = function() {
});
});
$tw.rootWidget.addEventListener("tm-clear-password",function(event) {
if($tw.browser) {
if(!confirm($tw.language.getString("Encryption/ConfirmClearPassword"))) {
return;
}
}
$tw.crypto.setPassword(null);
});
// Ensure that $:/isEncrypted is maintained properly

View File

@@ -59,6 +59,9 @@ exports.startup = function() {
var storyFilter = $tw.wiki.getTiddlerText(DEFAULT_TIDDLERS_TITLE),
storyList = $tw.wiki.filterTiddlers(storyFilter);
$tw.wiki.addTiddler({title: DEFAULT_STORY_TITLE, text: "", list: storyList},$tw.wiki.getModificationFields());
if(storyList[0]) {
$tw.wiki.addToHistory(storyList[0]);
}
});
// Listen for the tm-permalink message
$tw.rootWidget.addEventListener("tm-permalink",function(event) {

View File

@@ -35,7 +35,7 @@ var ZoominListView = function(listWidget) {
} else {
self.currentTiddlerDomNode = domNode;
}
domNode.style.position = "absolute";
$tw.utils.addClass(domNode,"tc-storyview-zoomin-tiddler");
});
};
@@ -52,8 +52,8 @@ ZoominListView.prototype.navigateTo = function(historyInfo) {
return;
}
// Make the new tiddler be position absolute and visible so that we can measure it
$tw.utils.addClass(targetElement,"tc-storyview-zoomin-tiddler");
$tw.utils.setStyle(targetElement,[
{position: "absolute"},
{display: "block"},
{transformOrigin: "0 0"},
{transform: "translateX(0px) translateY(0px) scale(1)"},
@@ -134,9 +134,9 @@ ZoominListView.prototype.insert = function(widget) {
return;
}
// Make the newly inserted node position absolute and hidden
$tw.utils.addClass(targetElement,"tc-storyview-zoomin-tiddler");
$tw.utils.setStyle(targetElement,[
{display: "none"},
{position: "absolute"}
{display: "none"}
]);
};
@@ -152,8 +152,8 @@ ZoominListView.prototype.remove = function(widget) {
return;
}
// Set up the tiddler that is being closed
$tw.utils.addClass(targetElement,"tc-storyview-zoomin-tiddler");
$tw.utils.setStyle(targetElement,[
{position: "absolute"},
{display: "block"},
{transformOrigin: "50% 50%"},
{transform: "translateX(0px) translateY(0px) scale(1)"},
@@ -168,8 +168,8 @@ ZoominListView.prototype.remove = function(widget) {
var toWidgetDomNode = toWidget && toWidget.findFirstDomNode();
// Set up the tiddler we're moving back in
if(toWidgetDomNode) {
$tw.utils.addClass(toWidgetDomNode,"tc-storyview-zoomin-tiddler");
$tw.utils.setStyle(toWidgetDomNode,[
{position: "absolute"},
{display: "block"},
{transformOrigin: "50% 50%"},
{transform: "translateX(0px) translateY(0px) scale(10)"},

View File

@@ -39,6 +39,7 @@ var TW_Element = function(tag,namespace) {
this.attributes = {};
this.isRaw = false;
this.children = [];
this.style = {};
this.namespaceURI = namespace || "http://www.w3.org/1999/xhtml";
};
@@ -137,6 +138,15 @@ Object.defineProperty(TW_Element.prototype, "outerHTML", {
}
}
}
if(this.style) {
var style = [];
for(var s in this.style) {
style.push(s + ":" + this.style[s] + ";");
}
if(style.length > 0) {
output.push(" style='",style.join(""),"'")
}
}
output.push(">");
if($tw.config.htmlVoidElements.indexOf(this.tag) === -1) {
output.push(this.innerHTML);
@@ -179,6 +189,9 @@ Object.defineProperty(TW_Element.prototype, "textContent", {
});
return b.join("");
}
},
set: function(value) {
this.children = [new TW_TextNode(value)];
}
});
@@ -219,6 +232,7 @@ var document = {
createTextNode: function(text) {
return new TW_TextNode(text);
},
compatMode: "CSS1Compat", // For KaTeX to know that we're not a browser in quirks mode
isTiddlyWikiFakeDom: true
};

View File

@@ -87,6 +87,7 @@ exports.pushTop = function(array,value) {
}
array.push(value);
}
return array;
};
/*
@@ -167,61 +168,118 @@ exports.slowInSlowOut = function(t) {
return (1 - ((Math.cos(t * Math.PI) + 1) / 2));
};
exports.formatDateString = function (date,template) {
var t = template.replace(/0hh12/g,$tw.utils.pad($tw.utils.getHours12(date)));
t = t.replace(/hh12/g,$tw.utils.getHours12(date));
t = t.replace(/0hh/g,$tw.utils.pad(date.getHours()));
t = t.replace(/hh/g,date.getHours());
t = t.replace(/mmm/g,$tw.config.dateFormats.shortMonths[date.getMonth()]);
t = t.replace(/0mm/g,$tw.utils.pad(date.getMinutes()));
t = t.replace(/mm/g,date.getMinutes());
t = t.replace(/0ss/g,$tw.utils.pad(date.getSeconds()));
t = t.replace(/ss/g,date.getSeconds());
t = t.replace(/[ap]m/g,$tw.utils.getAmPm(date).toLowerCase());
t = t.replace(/[AP]M/g,$tw.utils.getAmPm(date).toUpperCase());
t = t.replace(/wYYYY/g,$tw.utils.getYearForWeekNo(date));
t = t.replace(/wYY/g,$tw.utils.pad($tw.utils.getYearForWeekNo(date)-2000));
t = t.replace(/YYYY/g,date.getFullYear());
t = t.replace(/YY/g,$tw.utils.pad(date.getFullYear()-2000));
t = t.replace(/MMM/g,$tw.config.dateFormats.months[date.getMonth()]);
t = t.replace(/0MM/g,$tw.utils.pad(date.getMonth()+1));
t = t.replace(/MM/g,date.getMonth()+1);
t = t.replace(/0WW/g,$tw.utils.pad($tw.utils.getWeek(date)));
t = t.replace(/WW/g,$tw.utils.getWeek(date));
t = t.replace(/DDD/g,$tw.config.dateFormats.days[date.getDay()]);
t = t.replace(/ddd/g,$tw.config.dateFormats.shortDays[date.getDay()]);
t = t.replace(/0DD/g,$tw.utils.pad(date.getDate()));
t = t.replace(/DDth/g,date.getDate()+$tw.utils.getDaySuffix(date));
t = t.replace(/DD/g,date.getDate());
var tz = date.getTimezoneOffset();
var atz = Math.abs(tz);
t = t.replace(/TZD/g,(tz < 0 ? '+' : '-') + $tw.utils.pad(Math.floor(atz / 60)) + ':' + $tw.utils.pad(atz % 60));
exports.formatDateString = function(date,template) {
var t = template;
t = t.replace(/0hh12/g,function() {
return $tw.utils.pad($tw.utils.getHours12(date));
});
t = t.replace(/hh12/g,function() {
return $tw.utils.getHours12(date);
});
t = t.replace(/0hh/g,function() {
return $tw.utils.pad(date.getHours());
});
t = t.replace(/hh/g,function() {
return date.getHours();
});
t = t.replace(/mmm/g,function() {
return $tw.language.getString("Date/Short/Month/" + (date.getMonth() + 1));
});
t = t.replace(/0mm/g,function() {
return $tw.utils.pad(date.getMinutes());
});
t = t.replace(/mm/g,function() {
return date.getMinutes();
});
t = t.replace(/0ss/g,function() {
return $tw.utils.pad(date.getSeconds());
});
t = t.replace(/ss/g,function() {
return date.getSeconds();
});
t = t.replace(/[ap]m/g,function() {
return $tw.utils.getAmPm(date).toLowerCase();
});
t = t.replace(/[AP]M/g,function() {
return $tw.utils.getAmPm(date).toUpperCase();
});
t = t.replace(/wYYYY/g,function() {
return $tw.utils.getYearForWeekNo(date);
});
t = t.replace(/wYY/g,function() {
return $tw.utils.pad($tw.utils.getYearForWeekNo(date)-2000);
});
t = t.replace(/YYYY/g,function() {
return date.getFullYear();
});
t = t.replace(/YY/g,function() {
return $tw.utils.pad(date.getFullYear()-2000);
});
t = t.replace(/MMM/g,function() {
return $tw.language.getString("Date/Long/Month/" + (date.getMonth() + 1));
});
t = t.replace(/0MM/g,function() {
return $tw.utils.pad(date.getMonth()+1);
});
t = t.replace(/MM/g,function() {
return date.getMonth() + 1;
});
t = t.replace(/0WW/g,function() {
return $tw.utils.pad($tw.utils.getWeek(date));
});
t = t.replace(/WW/g,function() {
return $tw.utils.getWeek(date);
});
t = t.replace(/DDD/g,function() {
return $tw.language.getString("Date/Long/Day/" + date.getDay());
});
t = t.replace(/ddd/g,function() {
return $tw.language.getString("Date/Short/Day/" + date.getDay());
});
t = t.replace(/0DD/g,function() {
return $tw.utils.pad(date.getDate());
});
t = t.replace(/DDth/g,function() {
return date.getDate() + $tw.utils.getDaySuffix(date);
});
t = t.replace(/DD/g,function() {
return date.getDate();
});
t = t.replace(/TZD/g,function() {
var tz = date.getTimezoneOffset(),
atz = Math.abs(tz);
return (tz < 0 ? '+' : '-') + $tw.utils.pad(Math.floor(atz / 60)) + ':' + $tw.utils.pad(atz % 60);
});
t = t.replace(/\\(.)/g,"$1");
return t;
};
exports.getAmPm = function(date) {
return date.getHours() >= 12 ? $tw.config.dateFormats.pm : $tw.config.dateFormats.am;
return $tw.language.getString("Date/Period/" + (date.getHours() >= 12 ? "pm" : "am"));
};
exports.getDaySuffix = function(date) {
return $tw.config.dateFormats.daySuffixes[date.getDate()-1];
return $tw.language.getString("Date/DaySuffix/" + date.getDate());
};
exports.getWeek = function(date) {
var dt = new Date(date.getTime());
var d = dt.getDay();
if(d === 0) d=7;// JavaScript Sun=0, ISO Sun=7
dt.setTime(dt.getTime()+(4-d)*86400000);// shift day to Thurs of same week to calculate weekNo
var n = Math.floor((dt.getTime()-new Date(dt.getFullYear(),0,1)+3600000)/86400000);
return Math.floor(n/7)+1;
if(d === 0) {
d = 7; // JavaScript Sun=0, ISO Sun=7
}
dt.setTime(dt.getTime() + (4 - d) * 86400000);// shift day to Thurs of same week to calculate weekNo
var n = Math.floor((dt.getTime()-new Date(dt.getFullYear(),0,1) + 3600000) / 86400000);
return Math.floor(n / 7) + 1;
};
exports.getYearForWeekNo = function(date) {
var dt = new Date(date.getTime());
var d = dt.getDay();
if(d === 0) d=7;// JavaScript Sun=0, ISO Sun=7
dt.setTime(dt.getTime()+(4-d)*86400000);// shift day to Thurs of same week
if(d === 0) {
d = 7; // JavaScript Sun=0, ISO Sun=7
}
dt.setTime(dt.getTime() + (4 - d) * 86400000);// shift day to Thurs of same week
return dt.getFullYear();
};

View File

@@ -0,0 +1,79 @@
/*\
title: $:/core/modules/widgets/action-navigate.js
type: application/javascript
module-type: widget
Action widget to navigate to a tiddler
\*/
(function(){
/*jslint node: true, browser: true */
/*global $tw: false */
"use strict";
var Widget = require("$:/core/modules/widgets/widget.js").widget;
var NavigateWidget = function(parseTreeNode,options) {
this.initialise(parseTreeNode,options);
};
/*
Inherit from the base widget class
*/
NavigateWidget.prototype = new Widget();
/*
Render this widget into the DOM
*/
NavigateWidget.prototype.render = function(parent,nextSibling) {
this.computeAttributes();
this.execute();
};
/*
Compute the internal state of the widget
*/
NavigateWidget.prototype.execute = function() {
this.actionTo = this.getAttribute("$to");
this.actionScroll = this.getAttribute("$scroll");
};
/*
Refresh the widget by ensuring our attributes are up to date
*/
NavigateWidget.prototype.refresh = function(changedTiddlers) {
var changedAttributes = this.computeAttributes();
if(changedAttributes["$to"] || changedAttributes["$scroll"]) {
this.refreshSelf();
return true;
}
return this.refreshChildren(changedTiddlers);
};
/*
Invoke the action associated with this widget
*/
NavigateWidget.prototype.invokeAction = function(triggeringWidget,event) {
var bounds = triggeringWidget && triggeringWidget.getBoundingClientRect && triggeringWidget.getBoundingClientRect(),
suppressNavigation = event.metaKey || event.ctrlKey || (event.button === 1);
if(this.actionScroll === "yes") {
suppressNavigation = false;
} else if(this.actionScroll === "no") {
suppressNavigation = true;
}
this.dispatchEvent({
type: "tm-navigate",
navigateTo: this.actionTo === undefined ? this.getVariable("currentTiddler") : this.actionTo,
navigateFromTitle: this.getVariable("storyTiddler"),
navigateFromNode: triggeringWidget,
navigateFromClientRect: bounds && { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height
},
navigateSuppressNavigation: suppressNavigation
});
return true; // Action was invoked
};
exports["action-navigate"] = NavigateWidget;
})();

View File

@@ -0,0 +1,82 @@
/*\
title: $:/core/modules/widgets/action-sendmessage.js
type: application/javascript
module-type: widget
Action widget to send a message
\*/
(function(){
/*jslint node: true, browser: true */
/*global $tw: false */
"use strict";
var Widget = require("$:/core/modules/widgets/widget.js").widget;
var SendMessageWidget = function(parseTreeNode,options) {
this.initialise(parseTreeNode,options);
};
/*
Inherit from the base widget class
*/
SendMessageWidget.prototype = new Widget();
/*
Render this widget into the DOM
*/
SendMessageWidget.prototype.render = function(parent,nextSibling) {
this.computeAttributes();
this.execute();
};
/*
Compute the internal state of the widget
*/
SendMessageWidget.prototype.execute = function() {
this.actionMessage = this.getAttribute("$message");
this.actionParam = this.getAttribute("$param");
};
/*
Refresh the widget by ensuring our attributes are up to date
*/
SendMessageWidget.prototype.refresh = function(changedTiddlers) {
var changedAttributes = this.computeAttributes();
if(changedAttributes["$message"] || changedAttributes["$param"]) {
this.refreshSelf();
return true;
}
return this.refreshChildren(changedTiddlers);
};
/*
Invoke the action associated with this widget
*/
SendMessageWidget.prototype.invokeAction = function(triggeringWidget,event) {
// Get the parameter
var param = this.actionParam;
// If the parameter is missing then we'll assemble the attributes as a hashmap
if(!param) {
param = Object.create(null);
var count = 0;
$tw.utils.each(this.attributes,function(attribute,name) {
if(name.charAt(0) !== "$") {
param[name] = attribute;
count++;
}
});
// Revert to an empty parameter if no values were found
if(!count) {
param = undefined;
}
}
// Dispatch the message
this.dispatchEvent({type: this.actionMessage, param: param, tiddlerTitle: this.getVariable("currentTiddler")});
return true; // Action was invoked
};
exports["action-sendmessage"] = SendMessageWidget;
})();

View File

@@ -41,9 +41,13 @@ BrowseWidget.prototype.render = function(parent,nextSibling) {
}
// Add a click event handler
domNode.addEventListener("change",function (event) {
self.wiki.readFiles(event.target.files,function(tiddlerFieldsArray) {
self.dispatchEvent({type: "tm-import-tiddlers", param: JSON.stringify(tiddlerFieldsArray)});
});
if(self.message) {
self.dispatchEvent({type: self.message, param: event.target.files});
} else {
self.wiki.readFiles(event.target.files,function(tiddlerFieldsArray) {
self.dispatchEvent({type: "tm-import-tiddlers", param: JSON.stringify(tiddlerFieldsArray)});
});
}
return false;
},false);
// Insert element
@@ -57,6 +61,7 @@ Compute the internal state of the widget
*/
BrowseWidget.prototype.execute = function() {
this.browseMultiple = this.getAttribute("multiple");
this.message = this.getAttribute("message");
};
/*

View File

@@ -59,6 +59,9 @@ ButtonWidget.prototype.render = function(parent,nextSibling) {
// Add a click event handler
domNode.addEventListener("click",function (event) {
var handled = false;
if(self.invokeActions(event)) {
handled = true;
}
if(self.to) {
self.navigateTo(event);
handled = true;
@@ -87,6 +90,10 @@ ButtonWidget.prototype.render = function(parent,nextSibling) {
this.domNodes.push(domNode);
};
ButtonWidget.prototype.getBoundingClientRect = function() {
return this.domNodes[0].getBoundingClientRect();
}
ButtonWidget.prototype.isSelected = function() {
var tiddler = this.wiki.getTiddler(this.set);
return tiddler ? tiddler.fields.text === this.setTo : this.defaultSetValue === this.setTo;
@@ -99,7 +106,7 @@ ButtonWidget.prototype.isPoppedUp = function() {
};
ButtonWidget.prototype.navigateTo = function(event) {
var bounds = this.domNodes[0].getBoundingClientRect();
var bounds = this.getBoundingClientRect();
this.dispatchEvent({
type: "tm-navigate",
navigateTo: this.to,

View File

@@ -97,10 +97,10 @@ ImageWidget.prototype.render = function(parent,nextSibling) {
domNode.setAttribute("class",this.imageClass);
}
if(this.imageWidth) {
domNode.setAttribute("width",parseInt(this.imageWidth,10) + "px");
domNode.setAttribute("width",this.imageWidth);
}
if(this.imageHeight) {
domNode.setAttribute("height",parseInt(this.imageHeight,10) + "px");
domNode.setAttribute("height",this.imageHeight);
}
if(this.imageTooltip) {
domNode.setAttribute("title",this.imageTooltip);

View File

@@ -177,12 +177,7 @@ NavigatorWidget.prototype.handleCloseOtherTiddlersEvent = function(event) {
NavigatorWidget.prototype.handleEditTiddlerEvent = function(event) {
var self = this;
function isUnmodifiedShadow(title) {
// jshint eqnull:true
var tiddler = self.wiki.getTiddler(title);
return (
self.wiki.isShadowTiddler(title) &&
tiddler.fields.modified == null
);
return self.wiki.isShadowTiddler(title) && !self.wiki.tiddlerExists(title);
}
function confirmEditShadow(title) {
return confirm($tw.language.getString(
@@ -253,19 +248,14 @@ Create/reuse the draft tiddler for a given title
*/
NavigatorWidget.prototype.makeDraftTiddler = function(targetTitle) {
// See if there is already a draft tiddler for this tiddler
var drafts = [];
this.wiki.forEachTiddler({includeSystem: true},function(title,tiddler) {
if(tiddler.fields["draft.title"] && tiddler.fields["draft.of"] === targetTitle) {
drafts.push(tiddler);
}
});
if(drafts.length > 0) {
return drafts[0];
var draftTitle = this.wiki.findDraft(targetTitle);
if(draftTitle) {
return this.wiki.getTiddler(draftTitle);
}
// Get the current value of the tiddler we're editing
var tiddler = this.wiki.getTiddler(targetTitle),
draftTitle = this.generateDraftTitle(targetTitle);
var tiddler = this.wiki.getTiddler(targetTitle);
// Save the initial value of the draft tiddler
draftTitle = this.generateDraftTitle(targetTitle);
var draftTiddler = new $tw.Tiddler(
tiddler,
{
@@ -372,29 +362,76 @@ NavigatorWidget.prototype.handleCancelTiddlerEvent = function(event) {
};
// Create a new draft tiddler
// event.param can either be the title of a template tiddler, or a hashmap of fields.
//
// The title of the newly created tiddler follows these rules:
// * If a hashmap was used and a title field was specified, use that title
// * If a hashmap was used without a title field, use a default title, if necessary making it unique with a numeric suffix
// * If a template tiddler was used, use the title of the template, if necessary making it unique with a numeric suffix
//
// If a draft of the target tiddler already exists then it is reused
NavigatorWidget.prototype.handleNewTiddlerEvent = function(event) {
// Get the story details
var storyList = this.getStoryList();
// Get the template tiddler if there is one
var templateTiddler = this.wiki.getTiddler(event.param);
// Title the new tiddler
var title = this.wiki.generateNewTitle((templateTiddler && templateTiddler.fields.title) || "New Tiddler");
// Create the draft tiddler
var draftTitle = this.generateDraftTitle(title),
draftTiddler = new $tw.Tiddler({
text: ""
},templateTiddler,
var storyList = this.getStoryList(),
templateTiddler, title, draftTitle, existingTiddler, mergedTags;
// Work out the title of the target tiddler
if(typeof event.param === "object") {
// If we got a hashmap use it as the template
templateTiddler = event.param;
if(templateTiddler.title) {
// Use the provided title
title = templateTiddler.title
} else {
// Generate a new unique title
title = this.wiki.generateNewTitle($tw.language.getString("DefaultNewTiddlerTitle"));
}
} else {
// If we got a string, use it as the template and generate a new title
templateTiddler = this.wiki.getTiddler(event.param);
title = this.wiki.generateNewTitle(event.param || $tw.language.getString("DefaultNewTiddlerTitle"));
}
// Find any existing draft for this tiddler
draftTitle = this.wiki.findDraft(title);
// Pull in any existing tiddler
if(draftTitle) {
existingTiddler = this.wiki.getTiddler(draftTitle);
} else {
draftTitle = this.generateDraftTitle(title);
existingTiddler = this.wiki.getTiddler(title);
}
// Merge the tags
if(existingTiddler && existingTiddler.fields.tags && templateTiddler && templateTiddler.tags) {
// Merge tags
mergedTags = $tw.utils.pushTop($tw.utils.parseStringArray(templateTiddler.tags),existingTiddler.fields.tags);
} else if(existingTiddler && existingTiddler.fields.tags) {
mergedTags = existingTiddler.fields.tags;
} else if(templateTiddler && templateTiddler.tags) {
mergedTags = templateTiddler.tags;
} else if(templateTiddler && templateTiddler.fields && templateTiddler.fields.tags) {
mergedTags = templateTiddler.fields.tags;
}
// Save the draft tiddler
var draftTiddler = new $tw.Tiddler({
text: "",
"draft.title": title
},
templateTiddler,
existingTiddler,
this.wiki.getCreationFields(),
{
title: draftTitle,
"draft.title": title,
"draft.of": title
"draft.of": title,
tags: mergedTags
},this.wiki.getModificationFields());
this.wiki.addTiddler(draftTiddler);
// Update the story to insert the new draft at the top
var slot = storyList.indexOf(event.navigateFromTitle);
storyList.splice(slot + 1,0,draftTitle);
// Save the updated story
// Update the story to insert the new draft at the top and remove any existing tiddler
if(storyList.indexOf(draftTitle) === -1) {
var slot = storyList.indexOf(event.navigateFromTitle);
storyList.splice(slot + 1,0,draftTitle);
}
if(storyList.indexOf(title) !== -1) {
storyList.splice(storyList.indexOf(title),1);
}
this.saveStoryList(storyList);
// Add a new record to the top of the history stack
this.addToHistory(draftTitle);

View File

@@ -475,6 +475,20 @@ Widget.prototype.removeChildDomNodes = function() {
}
};
/*
Invoke any action widgets that are immediate children of this widget
*/
Widget.prototype.invokeActions = function(event) {
var handled = false;
for(var t=0; t<this.children.length; t++) {
var child = this.children[t];
if(child.invokeAction && child.invokeAction(this,event)) {
handled = true;
}
}
return handled;
};
exports.widget = Widget;
})();

View File

@@ -177,7 +177,7 @@ exports.generateNewTitle = function(baseTitle,options) {
options = options || {};
var c = 0,
title = baseTitle;
while(this.tiddlerExists(title) || this.isShadowTiddler(title)) {
while(this.tiddlerExists(title) || this.isShadowTiddler(title) || this.findDraft(title)) {
title = baseTitle +
(options.prefix || " ") +
(++c);
@@ -1132,6 +1132,19 @@ exports.readFile = function(file,callback) {
}
};
/*
Find any existing draft of a specified tiddler
*/
exports.findDraft = function(targetTitle) {
var draftTitle = undefined;
this.forEachTiddler({includeSystem: true},function(title,tiddler) {
if(tiddler.fields["draft.title"] && tiddler.fields["draft.of"] === targetTitle) {
draftTitle = title;
}
});
return draftTitle;
}
/*
Check whether the specified draft tiddler has been modified
*/

View File

@@ -17,7 +17,7 @@ caption: {{$:/language/Search/Shadows/Caption}}
<<lingo Shadows/Matches>>
<$list filter="[all[shadows]search{$:/temp/advancedsearch}sort[title]limit[250]]" template="$:/core/ui/ListItemTemplate"/>
<$list filter="[all[shadows]search{$:/temp/advancedsearch}sort[title]limit[250]] -[[$:/temp/advancedsearch]]" template="$:/core/ui/ListItemTemplate"/>
</div>

View File

@@ -17,7 +17,7 @@ caption: {{$:/language/Search/Standard/Caption}}
<<lingo Standard/Matches>>
<$list filter="[!is[system]search{$:/temp/advancedsearch}sort[title]limit[250]]" template="$:/core/ui/ListItemTemplate"/>
<$list filter="[!is[system]search{$:/temp/advancedsearch}sort[title]limit[250]] -[[$:/temp/advancedsearch]]" template="$:/core/ui/ListItemTemplate"/>
</div>

View File

@@ -17,7 +17,7 @@ caption: {{$:/language/Search/System/Caption}}
<<lingo System/Matches>>
<$list filter="[is[system]search{$:/temp/advancedsearch}sort[title]limit[250]]" template="$:/core/ui/ListItemTemplate"/>
<$list filter="[is[system]search{$:/temp/advancedsearch}sort[title]limit[250]] -[[$:/temp/advancedsearch]]" template="$:/core/ui/ListItemTemplate"/>
</div>

View File

@@ -9,6 +9,8 @@ caption: {{$:/language/ControlPanel/Basics/Caption}}
|<$link to="$:/status/UserName"><<lingo Username/Prompt>></$link> |<$edit-text tiddler="$:/status/UserName" default="" tag="input"/> |
|<$link to="$:/config/AnimationDuration"><<lingo AnimDuration/Prompt>></$link> |<$edit-text tiddler="$:/config/AnimationDuration" default="" tag="input"/> |
|<$link to="$:/DefaultTiddlers"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit-text tag="textarea" tiddler="$:/DefaultTiddlers"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |
|<$link to="$:/config/NewJournal/Title"><<lingo NewJournal/Title/Prompt>></$link> |<$edit-text tiddler="$:/config/NewJournal/Title" default="" tag="input"/> |
|<$link to="$:/config/NewJournal/Tags"><<lingo NewJournal/Tags/Prompt>></$link> |<$edit-text tiddler="$:/config/NewJournal/Tags" default="" tag="input"/> |
|<<lingo Language/Prompt>> |{{$:/snippets/minilanguageswitcher}} |
|<<lingo Tiddlers/Prompt>> |''<$count filter="[!is[system]]"/>'' |
|<<lingo Tags/Prompt>> |''<$count filter="[tags[]]"/>'' |

View File

@@ -15,7 +15,7 @@ $:/config/EditToolbarButtons/Visibility/$(listItem)$
<$list filter="[all[shadows+tiddlers]tag[$:/tags/EditToolbar]!has[draft.of]]" variable="listItem">
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show"> <$transclude tiddler=<<listItem>> field="caption"/> <i class="tc-muted">-- <$transclude tiddler=<<listItem>> field="description"/></i></$checkbox>
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show"/> <$transclude tiddler=<<listItem>> field="caption"/> <i class="tc-muted">-- <$transclude tiddler=<<listItem>> field="description"/></i>
</$list>

View File

@@ -15,7 +15,7 @@ $:/config/PageControlButtons/Visibility/$(listItem)$
<$list filter="[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]" variable="listItem">
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show"> <$transclude tiddler=<<listItem>> field="caption"/> <i class="tc-muted">-- <$transclude tiddler=<<listItem>> field="description"/></i></$checkbox>
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show"/> <$transclude tiddler=<<listItem>> field="caption"/> <i class="tc-muted">-- <$transclude tiddler=<<listItem>> field="description"/></i>
</$list>

View File

@@ -15,7 +15,7 @@ $:/config/ViewToolbarButtons/Visibility/$(listItem)$
<$list filter="[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]" variable="listItem">
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show"> <$transclude tiddler=<<listItem>> field="caption"/> <i class="tc-muted">-- <$transclude tiddler=<<listItem>> field="description"/></i></$checkbox>
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show"/> <$transclude tiddler=<<listItem>> field="caption"/> <i class="tc-muted">-- <$transclude tiddler=<<listItem>> field="description"/></i>
</$list>

View File

@@ -4,7 +4,7 @@ tags: $:/tags/EditTemplate
\define config-title()
$:/config/EditToolbarButtons/Visibility/$(listItem)$
\end
<div class="tc-tiddler-title">
<div class="tc-tiddler-title tc-tiddler-edit-title">
<$view field="title"/>
<span class="tc-tiddler-controls tc-titlebar"><$list filter="[all[shadows+tiddlers]tag[$:/tags/EditToolbar]!has[draft.of]]" variable="listItem"><$reveal type="nomatch" state=<<config-title>> text="hide"><$transclude tiddler=<<listItem>>/></$reveal></$list></span>
<div style="clear: both;"></div>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/Cancel/Hint}}
{{$:/core/images/cancel-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Cancel/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Cancel/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/Delete/Hint}}
{{$:/core/images/delete-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Delete/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Delete/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/Save/Hint}}
{{$:/core/images/done-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Save/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Save/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/CloseAll/Hint}}
{{$:/core/images/close-all-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/CloseAll/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/CloseAll/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/ControlPanel/Hint}}
{{$:/core/images/options-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/ControlPanel/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/ControlPanel/Caption}}/></span>
</$list>
</$button>

View File

@@ -9,7 +9,7 @@ description: {{$:/language/Buttons/Encryption/Hint}}
{{$:/core/images/locked-padlock}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Encryption/ClearPassword/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Encryption/ClearPassword/Caption}}/></span>
</$list>
</$button>
</$reveal>
@@ -19,7 +19,7 @@ description: {{$:/language/Buttons/Encryption/Hint}}
{{$:/core/images/unlocked-padlock}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Encryption/SetPassword/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Encryption/SetPassword/Caption}}/></span>
</$list>
</$button>
</$reveal>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/FullScreen/Hint}}
{{$:/core/images/full-screen-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/FullScreen/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/FullScreen/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/Home/Hint}}
{{$:/core/images/home-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Home/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Home/Caption}}/></span>
</$list>
</$button>

View File

@@ -9,7 +9,7 @@ description: {{$:/language/Buttons/Import/Hint}}
{{$:/core/images/import-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Import/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Import/Caption}}/></span>
</$list>
</$button>
<$browse/>

View File

@@ -15,7 +15,7 @@ $(languagePluginTitle)$/icon
</span>
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Language/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Language/Caption}}/></span>
</$list>
</$button>
<$reveal state=<<qualify "$:/state/popup/language">> type="popup" position="below" animate="yes">

View File

@@ -11,7 +11,7 @@ $:/config/PageControlButtons/Visibility/$(listItem)$
{{$:/core/images/down-arrow}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/More/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/More/Caption}}/></span>
</$list>
</$button>
<$reveal state=<<qualify "$:/state/popup/more">> type="popup" position="below" animate="yes">

View File

@@ -0,0 +1,20 @@
title: $:/core/ui/Buttons/new-journal
tags: $:/tags/PageControls
caption: {{$:/core/images/new-journal-button}} {{$:/language/Buttons/NewJournal/Caption}}
description: {{$:/language/Buttons/NewJournal/Hint}}
\define journalButton()
<$button tooltip={{$:/language/Buttons/NewJournal/Hint}} aria-label={{$:/language/Buttons/NewJournal/Caption}} class=<<tv-config-toolbar-class>>>
<$action-sendmessage $message="tm-new-tiddler" title=<<now "$(journalTitleTemplate)$">> tags="$(journalTags)$"/>
<$list filter="[<tv-config-toolbar-icons>prefix[yes]]">
{{$:/core/images/new-journal-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<span class="tc-btn-text"><$text text={{$:/language/Buttons/NewJournal/Caption}}/></span>
</$list>
</$button>
\end
<$set name="journalTitleTemplate" value={{$:/config/NewJournal/Title}}>
<$set name="journalTags" value={{$:/config/NewJournal/Tags}}>
<<journalButton>>
</$set></$set>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/NewTiddler/Hint}}
{{$:/core/images/new-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/NewTiddler/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/NewTiddler/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/Refresh/Hint}}
{{$:/core/images/refresh-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Refresh/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Refresh/Caption}}/></span>
</$list>
</$button>

View File

@@ -9,7 +9,7 @@ description: {{$:/language/Buttons/SaveWiki/Hint}}
{{$:/core/images/save-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/SaveWiki/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/SaveWiki/Caption}}/></span>
</$list>
</span>
</$button>

View File

@@ -13,7 +13,7 @@ $:/core/images/storyview-$(storyview)$
</$set>
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/StoryView/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/StoryView/Caption}}/></span>
</$list>
</$button>
<$reveal state=<<qualify "$:/state/popup/storyview">> type="popup" position="below" animate="yes">

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/TagManager/Hint}}
{{$:/core/images/tag-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/TagManager/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/TagManager/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,7 +8,7 @@ description: {{$:/language/Buttons/Theme/Hint}}
{{$:/core/images/theme-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Theme/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Theme/Caption}}/></span>
</$list>
</$button>
<$reveal state=<<qualify "$:/state/popup/theme">> type="popup" position="below" animate="yes">

View File

@@ -17,7 +17,7 @@ $:/config/PageControlButtons/Visibility/$(listItem)$
<$list filter="[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]" variable="listItem">
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show"> <$transclude tiddler=<<listItem>>/> <i class="tc-muted"><$transclude tiddler=<<listItem>> field="description"/></i></$checkbox>
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show"/> <$transclude tiddler=<<listItem>>/> <i class="tc-muted"><$transclude tiddler=<<listItem>> field="description"/></i>
</$list>

View File

@@ -14,7 +14,7 @@ $:/config/ViewToolbarButtons/Visibility/$(listItem)$
<$list filter="[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]" variable="listItem">
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show"> <$transclude tiddler=<<listItem>>/> <i class="tc-muted"><$transclude tiddler=<<listItem>> field="description"/></i></$checkbox>
<$checkbox tiddler=<<config-title>> field="text" checked="show" unchecked="hide" default="show"/> <$transclude tiddler=<<listItem>>/> <i class="tc-muted"><$transclude tiddler=<<listItem>> field="description"/></i>
</$list>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/Clone/Hint}}
{{$:/core/images/clone-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Clone/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Clone/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/CloseOthers/Hint}}
{{$:/core/images/close-others-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/CloseOthers/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/CloseOthers/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/Close/Hint}}
{{$:/core/images/close-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Close/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Close/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/Edit/Hint}}
{{$:/core/images/edit-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Edit/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Edit/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/Info/Hint}}
{{$:/core/images/info-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Info/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Info/Caption}}/></span>
</$list>
</$button>

View File

@@ -11,7 +11,7 @@ $:/config/ViewToolbarButtons/Visibility/$(listItem)$
{{$:/core/images/down-arrow}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/More/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/More/Caption}}/></span>
</$list>
</$button>
<$reveal state=<<qualify "$:/state/popup/more">> type="popup" position="below" animate="yes">

View File

@@ -0,0 +1,20 @@
title: $:/core/ui/Buttons/new-here
tags: $:/tags/ViewToolbar
caption: {{$:/core/images/new-here-button}} {{$:/language/Buttons/NewHere/Caption}}
description: {{$:/language/Buttons/NewHere/Hint}}
\define newHereButtonTags()
[[$(currentTiddler)$]]
\end
\define newHereButton()
<$button tooltip={{$:/language/Buttons/NewHere/Hint}} aria-label={{$:/language/Buttons/NewHere/Caption}} class=<<tv-config-toolbar-class>>>
<$action-sendmessage $message="tm-new-tiddler" tags=<<newHereButtonTags>>/>
<$list filter="[<tv-config-toolbar-icons>prefix[yes]]">
{{$:/core/images/new-here-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<span class="tc-btn-text"><$text text={{$:/language/Buttons/NewHere/Caption}}/></span>
</$list>
</$button>
\end
<<newHereButton>>

View File

@@ -0,0 +1,24 @@
title: $:/core/ui/Buttons/new-journal-here
tags: $:/tags/ViewToolbar
caption: {{$:/core/images/new-journal-button}} {{$:/language/Buttons/NewJournalHere/Caption}}
description: {{$:/language/Buttons/NewJournalHere/Hint}}
\define journalButtonTags()
[[$(currentTiddlerTag)$]] $(journalTags)$
\end
\define journalButton()
<$button tooltip={{$:/language/Buttons/NewJournalHere/Hint}} aria-label={{$:/language/Buttons/NewJournalHere/Caption}} class=<<tv-config-toolbar-class>>>
<$action-sendmessage $message="tm-new-tiddler" title=<<now "$(journalTitleTemplate)$">> tags=<<journalButtonTags>>/>
<$list filter="[<tv-config-toolbar-icons>prefix[yes]]">
{{$:/core/images/new-journal-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<span class="tc-btn-text"><$text text={{$:/language/Buttons/NewJournalHere/Caption}}/></span>
</$list>
</$button>
\end
<$set name="journalTitleTemplate" value={{$:/config/NewJournal/Title}}>
<$set name="journalTags" value={{$:/config/NewJournal/Tags}}>
<$set name="currentTiddlerTag" value=<<currentTiddler>>>
<<journalButton>>
</$set></$set></$set>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/Permalink/Hint}}
{{$:/core/images/permalink-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Permalink/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Permalink/Caption}}/></span>
</$list>
</$button>

View File

@@ -8,6 +8,6 @@ description: {{$:/language/Buttons/Permaview/Hint}}
{{$:/core/images/permaview-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<$text text={{$:/language/Buttons/Permaview/Caption}}/>
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Permaview/Caption}}/></span>
</$list>
</$button>

View File

@@ -9,6 +9,7 @@ core/ui/Buttons/import: hide
core/ui/Buttons/language: hide
core/ui/Buttons/tag-manager: hide
core/ui/Buttons/more-page-actions: hide
core/ui/Buttons/new-journal: hide
core/ui/Buttons/permaview: hide
core/ui/Buttons/storyview: hide
core/ui/Buttons/theme: hide

View File

@@ -3,5 +3,7 @@ title: $:/config/ViewToolbarButtons/Visibility/$:/
core/ui/Buttons/clone: hide
core/ui/Buttons/close-others: hide
core/ui/Buttons/more-tiddler-actions: hide
core/ui/Buttons/new-here: hide
core/ui/Buttons/new-journal-here: hide
core/ui/Buttons/permalink: hide
core/ui/Buttons/permaview: hide

View File

@@ -1,12 +1,14 @@
title: $:/core/macros/list
tags: $:/tags/Macro
\define list-links(filter,type:"ul",subtype:"li")
<$type$>
\define list-links(filter,type:"ul",subtype:"li",class:"")
<$type$ class="$class$">
<$list filter="$filter$">
<$subtype$>
<$link to={{!!title}}>
<$transclude field="caption">
<$view field="title"/>
</$transclude>
</$link>
</$subtype$>
</$list>

View File

@@ -6,7 +6,7 @@ tags: $:/tags/Macro
<$list filter="[!is[system]$subfilter$has[modified]!sort[modified]limit[$limit$]eachday[modified]]">
<div class="tc-menu-list-item">
<$view field="modified" format="date" template="$format$"/>
<$list filter="[sameday{!!modified}!is[system]!sort[modified]]">
<$list filter="[sameday{!!modified}!is[system]$subfilter$!sort[modified]]">
<div class="tc-menu-list-subitem">
<$link to={{!!title}}>
<$view field="title"/>

View File

@@ -1,2 +1,2 @@
title: $:/tags/PageControls
list: [[$:/core/ui/Buttons/home]] [[$:/core/ui/Buttons/close-all]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/new-tiddler]] [[$:/core/ui/Buttons/import]] [[$:/core/ui/Buttons/control-panel]] [[$:/core/ui/Buttons/tag-manager]] [[$:/core/ui/Buttons/language]] [[$:/core/ui/Buttons/theme]] [[$:/core/ui/Buttons/storyview]] [[$:/core/ui/Buttons/encryption]] [[$:/core/ui/Buttons/full-screen]] [[$:/core/ui/Buttons/save-wiki]] [[$:/core/ui/Buttons/refresh]] [[$:/core/ui/Buttons/more-page-actions]]
list: [[$:/core/ui/Buttons/home]] [[$:/core/ui/Buttons/close-all]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/new-tiddler]] [[$:/core/ui/Buttons/new-journal]] [[$:/core/ui/Buttons/import]] [[$:/core/ui/Buttons/control-panel]] [[$:/core/ui/Buttons/tag-manager]] [[$:/core/ui/Buttons/language]] [[$:/core/ui/Buttons/theme]] [[$:/core/ui/Buttons/storyview]] [[$:/core/ui/Buttons/encryption]] [[$:/core/ui/Buttons/full-screen]] [[$:/core/ui/Buttons/save-wiki]] [[$:/core/ui/Buttons/refresh]] [[$:/core/ui/Buttons/more-page-actions]]

View File

@@ -1,2 +1,2 @@
title: $:/tags/ViewToolbar
list: [[$:/core/ui/Buttons/more-tiddler-actions]] [[$:/core/ui/Buttons/info]] [[$:/core/ui/Buttons/clone]] [[$:/core/ui/Buttons/edit]] [[$:/core/ui/Buttons/permalink]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/close-others]] [[$:/core/ui/Buttons/close]]
list: [[$:/core/ui/Buttons/more-tiddler-actions]] [[$:/core/ui/Buttons/info]] [[$:/core/ui/Buttons/new-here]] [[$:/core/ui/Buttons/new-journal-here]] [[$:/core/ui/Buttons/clone]] [[$:/core/ui/Buttons/edit]] [[$:/core/ui/Buttons/permalink]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/close-others]] [[$:/core/ui/Buttons/close]]

View File

@@ -12,3 +12,8 @@ At present there is limited support for Classic macros. See below for examples o
!!Status
See here for <<slider $:/temp/1 Issues "Issues»" "more" >>
!!See also [[Developers Notes]]
! Installation
To add this plugin to your own TiddlyWiki5, just drag this link to your tiddlywiki's browser window:
[[$:/plugins/tiddlywiki/tw2parser]]

View File

@@ -6,22 +6,22 @@ tags: InhaltsVerzeichnis Intro
title: Willkommen!
type: text/vnd.tiddlywiki
~TiddlyWiki ist eine Web-Applikation, die sie frei herunterladen können. Sie können sie speichern, wo sie wollen:
~TiddlyWiki ist eine Web-Applikation, die Sie frei herunterladen können. Sie können sie speichern, wo Sie wollen:
* Auf ihrem Laufwerk,
* Auf Ihrem Laufwerk,
* USB-Wechselspeicher
* oder ihrem "Cloud Speicher"
* oder Ihrem "Cloud Speicher"
Sie sind der Herr über ihre Daten!
Sie sind der Herr über Ihre Daten!
Sie können ~TiddlyWiki verwenden um Ihre Notizen zu erstellen / organisieren / oder mit Freunden zu teilen, in einer Weise, die kein anderes Textverarbeitungsprogramm vermag. ~TiddlyWiki speichert ihre Texte in einer "nicht-linearen" Form, mit Hilfe von [[Tags]], [[Hyperlinks]] und vielen weiteren Möglichkeiten. So können sie Ihre Notizen strukturieren, in einer
Sie können ~TiddlyWiki verwenden um Ihre Notizen zu erstellen / organisieren / oder mit Freunden zu teilen, in einer Weise, die kein anderes Textverarbeitungsprogramm vermag. ~TiddlyWiki speichert Ihre Texte in einer "nicht-linearen" Form, mit Hilfe von [[Tags]], [[Hyperlinks]] und vielen weiteren Möglichkeiten. So können Sie Ihre Notizen strukturieren, in einer
Weise, die mehr dem entspricht, "wie wir denken", nicht in einem vom Entwickler vorgegebenen starren Korsett.
Sie können TiddlyWiki als eine einzige Datei speichern, die sie mit dem Web-Browser, online oder offline, verwenden können. Für geübte Benutzer kann ~TiddlyWiki als [[Node.js Applikation|Node.js]] verwendet werden, die jeden [[Tiddler]] als einzelne Datei behandelt und dabei als zentrales Archiv fungiert.
Sie können TiddlyWiki als eine einzige Datei speichern, die Sie mit dem Web-Browser, online oder offline, verwenden können. Für geübte Benutzer kann ~TiddlyWiki als [[Node.js Applikation|Node.js]] verwendet werden, die jeden [[Tiddler]] als einzelne Datei behandelt und dabei als zentrales Archiv fungiert.
!!! Wie können sie ~TiddlyWiki nun für sich nutzen?
!!! Wie können Sie ~TiddlyWiki nun für sich nutzen?
* Im Anschluss sind einige Links aufgeführt, mit denen sie starten sollten, oder sie können jederzeit das InhaltsVerzeichnis verwenden.
* Im Anschluss sind einige Links aufgeführt, mit denen Sie starten sollten, oder Sie können jederzeit das InhaltsVerzeichnis verwenden.
* Das ~InhaltsVerzeichnis kann auch über den Reiter "Inhalt" auf der rechten Seite aufgerufen werden.

View File

@@ -11,13 +11,13 @@ TiddlySpot ist ein freier Hosting Service von Simon und Daniel Baird. Er ist bei
~TiddlyWiki5 wird momentan noch nicht als Standard Wiki angeboten, Sie können aber folgende Schritte verwenden um ~TiddlyWiki auf ~TiddlySpot zu speichern.
# Erstellen Sie ein Wiki auf http://tiddlyspot.com/ und merken Sie sich den Namen und Ihr Passwort!
# Für Österreich: öffnen Sie http://tiddlywiki.com/languages/de-AT/empty.html in ihrem Browser.
# Für Österreich: öffnen Sie http://tiddlywiki.com/languages/de-AT/empty.html in Ihrem Browser.
#* Für Deutschland: http://tiddlywiki.com/languages/de-DE/empty.html
# Wählen Sie im [[Control Panel|$:/ControlPanel]], den "Speichern" Tab und tragen Sie im "~TiddlySpot" Bereich, den Wiki Namen und das Passwort ein.
# Klicken Sie den "Speichern" Button. Nach einiger Zeit, bekommen Sie rechts oben die Mitteilung "Wiki gespeichert". Das Speichern kann je nach Internetverbindung und Wiki Größe einige Sekunden dauern.
#* //Das Erstellen eines neuen Wikis funktioniert nicht mit Firefox, da die Sicherheitseinstellungen diese Vorgehensweise nicht erlauben. Google Chrome kann verwendet werden. Ein späteres Editieren von tiddlyspot.com ist auch mit Firefox möglich!//
# Gehen Sie nun zu ihrem Wiki: ~http://{wikiname}.tiddlyspot.com/
# Gehen Sie nun zu Ihrem Wiki: ~http://{wikiname}.tiddlyspot.com/
# Beim ersten Besuch müssen Sie eventuell den Wiki-Namen und das Passwort neu eingeben.
# Sie sollten jetzt eine Kopie ihres Wikis sehen. Sie können nun Änderungen vornehmen und mit "Speichern" direkt in "die Cloud" speichern.
# Sie sollten jetzt eine Kopie Ihres Wikis sehen. Sie können nun Änderungen vornehmen und mit "Speichern" direkt in "die Cloud" speichern.
# Die ~TiddlySpot Verwaltungs-Seite ist unter: ~http://{wikiname}.tiddlyspot.com/controlpanel zu finden.

View File

@@ -1,20 +1,26 @@
created: 20131129092604900
creator: pmario
modified: 20140922125135926
modifier: ChrisK
modified: 20141012120259664
modifier: pmario
tags: howto
title: Speichern mit Chrome
type: text/vnd.tiddlywiki
Diese Methode ist etwas umständlich, da man Einstellungen immer wieder manuell vornehmen muss. Der Vorteil ist, dass diese Methode jedoch mit fast allen Desktop- und vielen mobilen Browsern funktioniert.
!! Video
<iframe width="560" height="315" src="http://www.youtube.com/embed/LcoZ7hQCuFI" frameborder="0" allowfullscreen></iframe>
!! Speichern mit Chrome
# Speichern Sie eine leere Datei der deutschen Version.
#> {{$:/editions/de-AT-DE/snippets/download-empty-button}}
#> Wenn der Button nicht funktioniert, dann klicken Sie den Link mit der rechten Maustaste und wählen: "Ziel Speichern unter ..." http://tiddlywiki.com/languages/de-AT/empty.html oder http://tiddlywiki.com/languages/de-DE/empty.html
#> Je nach Browser folgen Sie den Dialogen!
# Suchen Sie die eben geladene Datei im Datei Manager.
#* Geben Sie der Datei einen vernünftigen Namen und stellen Sie sicher, dass die Endung `.html` oder `.htm` ist.
# Öffnen Sie die Datei mit ihrem Browser.
# Öffnen Sie die Datei mit Ihrem Browser.
# Erstellen Sie einen neuen Tiddler mit dem {{$:/core/images/new-button}} ''plus'' im rechten Menü.
# Geben Sie den Text ein und bestätigen die Eingabe mit dem {{$:/core/images/done-button}} ''OK''.
# Speichern Sie die Änderungen mit: {{$:/core/images/save-button}} ''speichern'' im rechten Menü
@@ -22,4 +28,4 @@ Diese Methode ist etwas umständlich, da man Einstellungen immer wieder manuell
# Suchen Sie die eben geladene Datei im Datei Manager.
# Überprüfen sie, ob die Änderungen richtig gespeichert wurden.
''Tip'': Die meisten Browser haben eine Einstellung, dass der "Datei Speichern" Dialog immer angezeigt wird. Das ermöglicht ihnen, die bestehende Datei auszuwählen und zu überschreiben.
''Tip'': Die meisten Browser haben eine Einstellung, dass der "Datei Speichern" Dialog immer angezeigt wird. Das ermöglicht Ihnen, die bestehende Datei auszuwählen und zu überschreiben.

View File

@@ -13,7 +13,7 @@ Diese Methode ist etwas umständlich, da jeder Schritt manuell gemacht werden mu
#> Ihr Browser kann eventuell nachfragen, ob die Datei gespeichert werden soll.
# Suchen Sie die eben geladene Datei im Datei Manager.
#* Geben Sie der Datei einen vernünftigen Namen und stellen Sie sicher, dass die Endung `.html` oder `.htm` ist.
# Öffnen Sie die Datei mit ihrem Browser.
# Öffnen Sie die Datei mit Ihrem Browser.
# Erstellen Sie einen neuen Tiddler mit dem {{$:/core/images/new-button}} ''plus'' im rechten Menü.
# Geben Sie den Text ein und bestätigen die Eingabe mit dem {{$:/core/images/done-button}} ''OK''.
# Speichern Sie die Änderungen mit: {{$:/core/images/save-button}} ''speichern'' im rechten Menü

View File

@@ -1,13 +1,20 @@
created: 20131221085742684
creator: pmario
modified: 20140922125640163
modifier: ChrisK
modified: 20141012083445443
modifier: pmario
tags: howto TiddlyFox
title: Speichern mit TiddlyFox
type: text/vnd.tiddlywiki
!! Android
Wenn Sie "Firefox for Android" verwenden, dann beachten sie: [[Speichern mit TiddlyFox - Android]].
!! Video (de)
<iframe width="560" height="315" src="http://www.youtube.com/embed/bsWE7jXPbb0" frameborder="0" allowfullscreen></iframe>
!! Speichern mit TiddlyFox
# Stellen Sie sicher, dass Sie die [[aktuelle Version von Firefox|http://getfirefox.com]] verwenden.
# Installieren Sie die aktuelle TiddlyFox Erweiterung von: https://addons.mozilla.org/en-US/firefox/addon/tiddlyfox/
# Firefox neu starten!

Some files were not shown because too many files have changed in this diff Show More