1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-11-17 15:24:50 +00:00
Commit Graph

2384 Commits

Author SHA1 Message Date
Jermolene
6f93ce6ea7 Enhance rendertiddler command with support for additional variable
Passing an arbitrary variable allows us to e.g. reuse the export
filters as shown in the example
2017-02-18 13:17:44 +00:00
Jermolene
91b341e8e0 Better error trapping for WebDAV saver
Without these checks we get a startup crash when using TiddlyWiki in
client-server configuration.
2017-02-18 12:12:29 +00:00
FND
6505e6f448 WebDAV file overwrite protection (#2614)
* putSaver: detect edit conflicts to prevent clobbering, if possible

if the server supplies an ETag, we send it back when saving, allowing
the server to detect edit conflicts and respond with 412 (cf.
https://www.w3.org/1999/04/Editing/)

caveats:
* this only kicks in after the first save, as we don't have access to
  the ETag when first loading the document
* there's no recovery mechanism (e.g. resetting `this.etag` in order to
  force clobbering), other than manually reloading the document

* putSaver: retrieve ETag upon initialization for clobbering protection

this addresses one of the caveats from the previous commit
(2d75cb83af) - while theoretically prone
to a race condition, it seems unlikely that saving will be triggered
before the server responds

* putSaver: simplify URI extraction

this simplifies the approach introduced in
f51f6bf774, with the purpose of removing
the fragment identifier

* putSaver: localize error message

* putSaver: switch to built-in HTTP helper

in the process, fixed ETag assignment in `#save` method (was
`this.etag`, now `self.etag`) as well as a syntax error due to a missing
closing brace

* putSaver: consolidate URI handling
2017-02-17 12:26:15 +00:00
Jermolene
3708f6c8e4 Major refactoring of filesystemadaptor
The code here had got a bit broken by some PRs that I should have
checked more carefully. I’ve done a major refactoring which will
hopefully make it easier to understand, and fixes a number of problems:

* Problem with eg .md tiddlers not being deleted correctly
* Problem with Windows path separators not being usable within
$:/config/FileSystemPaths on Windows
* Problem with filename clashes not being detected correctly when
saving to a different directory via $:/config/FileSystemPaths
* Enables slashes within tiddler titles to be mapped into folders
* Enables plain text files like .md and .css to be saved with .meta
files instead of as .tid files (see #2558)
* No longer replaces spaces with underscores

As this is such a major update, I’d be grateful if Node.js users could
give it a careful run through — in particular, you’ll need to try
creating new tiddlers of various types and ensure that the expected
files are created.
2017-02-11 12:56:42 +00:00
Jermolene
97e995e0c7 Add wiki.checkTiddlerText() convenience method 2017-02-09 15:43:28 +00:00
Jermolene
2397f0aa6f Add several new hooks for UI actions 2017-02-09 15:42:55 +00:00
Jermolene
73ded6a82a Add new "count" filter operator
See discussion here:
https://groups.google.com/d/msgid/tiddlywiki/fe51b7f5-5369-493b-82e5-94c
18e863fe0%40googlegroups.com?utm_medium=email&utm_source=footer
2017-02-08 20:11:44 +00:00
Jermolene
9bc523fdef Fix bug in renameTiddler
This operation isn’t used by the core, but is used by the TextSlicer
plugin
2017-02-08 20:04:36 +00:00
Jermolene
db056a84a5 Remove obsolete code 2017-02-04 18:14:20 +00:00
Jermolene
6c65aa2a6d Make the syncer more configurable, including names for sync adaptors
@danielo515 you may want to add a name to your sync adaptor 😄
2017-02-04 17:25:30 +00:00
Jermolene
ced9f315a1 Rename variable for clarity
It’s called an iterator in filter.js
2017-02-04 17:24:25 +00:00
Jermolene
b5059c612a Adds support for autosave with the download saver
Also does some reorganisation of control panel to move “saving” related
settings together, and expose a UI for savers to plug into.

Fixes #2741
2017-01-30 18:19:28 +00:00
Tobias Beer
1b339e17bc Add "tag" attribute to keyboard widget (#2593)
* allows to define the tag for keyboard widget

* added from 5.1.14 to docs
2017-01-13 11:17:19 -07:00
Tobias Beer
d4db283d61 Refresh simple editor when empty text, e.g. hitting ENTER (#2702)
fixes #2592, missing bit of deleting the field for adding a new tag in
edit-mode

also fix for:
https://groups.google.com/forum/?fromgroups=#!topic/tiddlywiki/L6Z7gSvBWjw
2017-01-09 10:31:40 +00:00
Jermolene
ab1b1f2cde Fix problem with beaker saver and default index pages
As discussed on the mailing list, we need to check for a URL that is
missing the default `/index.html`

https://groups.google.com/d/msg/tiddlywikidev/n6yUdu2zHWo/m32R2BuIDgAJ
2016-12-29 16:45:47 +00:00
Jermolene
0383b98555 Add support for other movie content types 2016-12-23 08:34:07 +00:00
Jermolene
f143164cbe Correct the name of the video parser 2016-12-22 22:07:28 +00:00
Jermolene
ba9d6187af Rename the dat saver to Beaker
It’s actually specific to the API provided by the Beaker browser, and
not a generic Dat saver
2016-12-22 08:15:16 +00:00
Jermolene
a20da9f530 Add preliminary Dat file saver
See https://datproject.org/ and https://beakerbrowser.com/
2016-12-21 12:09:08 +00:00
Arlen22
66a13cb915 TiddlyFox saver canSave() should always return true (#2626)
Whether saving is allowed should be determined by the parent side of the TiddlyFox, as this plugin can be used in many places.
2016-12-17 15:27:25 +00:00
Arlen22
1530b3e2d8 Put request handler on SimpleServer.prototype (#2627)
The request handler may be used by ExpressJS apps directly and can do most of the heavy lifting without any modification. Note that the self variable must be assignee using `[Function].bind(null,SimpleServer instance)`.
2016-12-17 15:06:10 +00:00
Tobias Beer
e5b432a86b Allows checkbox widget to worth with indexes within data tiddlers (#2103) 2016-12-17 11:59:59 +00:00
Tobias Beer
d6d3aab36a Allow radio widget to work with indexes in a data tiddler (#2104)
* allow radio widget to set an index in a data tiddler

* updated RadioWidget docs, with same demo macro as for CheckboxWidget
in #2103
* removed docs in widget code (seems the wrong place)

* added from version to docs

* revert doc maros to master

* using wikitext-example-without-html and .tip macro now

* fix quotes
2016-12-17 11:51:24 +00:00
Matt Lauber
9c3a6976f0 #2312 Prevent move filter from wrapping (#2658)
given a list `A B C D` if I run `A B C D +[move:-1 [A]]` I get `B C A D`.  However, if I were to do `A B C D +[move:1[D]]` it doesn't wrap around, and I get `A B C D`.  This fixes that such that `A B C D +[move:-1 [A]]` gives 'A B C D`
2016-12-16 17:58:45 +00:00
Jermolene
e8bb897e26 Add support for relinking when renaming tiddlers
When renaming an existing tiddler, the edit template now shows a
checkbox that determines whether or not to relink references to the
tiddler in the list or tags fields of other tiddlers.
2016-12-15 17:13:32 +00:00
Jermolene
1bba9dc315 Reuse $tw.loadTiddlersFromPath() in --load command
Thus allowing things like tiddlywiki.files to be used with the —load
command
2016-12-15 17:13:32 +00:00
Jermolene
74def9e080 Separate the PDF parser from the image parser
It was a bit of a hack, and made it harder to customise PDF presentation
2016-12-15 17:13:32 +00:00
Mario Pietsch
b43b89f44a fix for 2634 problems with week calculation 2016-11-29 17:31:54 +01:00
Jermolene
9a38642141 Add new "order" filter operator 2016-11-28 19:16:08 +00:00
Jermolene
a3dc3b4b98 Add new [all[tags]] filter operator 2016-11-28 19:04:04 +00:00
Jermolene
cf28eeb2a1 Fix problem with checkbox widget and empty strings
If the value of `tiddler.fields[this.checkboxField]` was an empty
string then it would incorrectly fall back to the value of
`this.checkboxDefault`.
2016-11-28 13:45:41 +00:00
Jermolene
b759d82f4c @pmario's fix for #2635
This got reverted due to my git inabilities
2016-11-28 13:43:43 +00:00
Jermolene
c65d08240b Add strict mode to tag operator 2016-11-28 13:42:30 +00:00
Jermolene
c460cc03a4 Change "is" filter with blank operand to pass through arguments 2016-11-28 13:42:06 +00:00
Jeremy Ruston
a9b54d6fce Revert "Add provisional version of new tagger manager" 2016-11-28 10:40:55 +00:00
Jeremy Ruston
a85d034015 Merge pull request #2637: Introduce tiddler manager
Introduce tiddler manager
2016-11-28 10:28:12 +00:00
Mario Pietsch
766bc7acee Fix for #2634 problem with week calculations (#2635) 2016-11-27 17:33:19 +00:00
Jermolene
8e033eb0d4 Add new "all[tags]" filter operator 2016-11-27 14:52:04 +00:00
Jermolene
0b4669621a Return all tiddlers when "is" filter operand is missing 2016-11-27 14:51:51 +00:00
Jermolene
1a2ec12831 Fix problem with checkbox widget and empty strings
If the value of `tiddler.fields[this.checkboxField]` was an empty
string then it would incorrectly fall back to the value of
`this.checkboxDefault`.
2016-11-27 14:51:23 +00:00
Jermolene
e98d324e66 Add provisional version of new tagger manager
For discussion
2016-11-26 12:48:47 +00:00
Jermolene
3bceb98119 Add support for actions attribute to CheckboxWidget 2016-11-26 08:21:58 +00:00
Jermolene
d1121787c0 Add new button to temporarily suspend timestamps
Useful when you want to make an edit but preserve the modification
date/time.
2016-11-23 18:20:31 +00:00
Jermolene
c8f7573a23 Make fakedom more resilient to non-string data 2016-11-22 20:24:59 +00:00
Jermolene
8d35178bc4 Undo 664225f6fd and 56640b90bb
See the discussion at #2628
2016-10-26 21:41:41 +01:00
Jermolene
664225f6fd Ensure list widget item title is used in getStateQualifier
Resolves a longstanding problem where the same state qualifier is
generated for every member of a list.

Fixes #2628
2016-10-25 15:34:20 +01:00
Jermolene
7108e0d861 Add support for filtered attributes to HTML elements and widgets
Fixes #2624
2016-10-21 11:27:07 +01:00
Jermolene
c72a0b7a67 Add action-createtiddler widget
Basically the same as sending a tm-new-tiddler message except that the
newly created tiddler is not added to the story.
2016-10-21 11:26:26 +01:00
Jermolene
0b76c327c2 Add page print button
cc @silvyn
2016-10-20 09:44:52 +01:00
Jermolene
8e02bde938 Refinements to 87fa7f972c 2016-10-18 16:39:18 +01:00
Jermolene
87fa7f972c Ensure global macros are available in modals and notifications 2016-10-18 09:18:56 +01:00
Jermolene
b4b77d1681 Add new filter operators for various string encoding/decodings 2016-10-18 09:18:32 +01:00
Jermolene
b35544bf49 Extend set widget to support returning a single result from a filter
This solves the problem with extraneous double square brackets when
using the filtered set widget.
2016-10-18 09:16:47 +01:00
Jermolene
d9f301f755 Add 'formattedtext' output type to Wikify widget 2016-10-18 09:13:52 +01:00
Jermolene
2f590a365e Expose document location via $:/info/url/* info tiddlers 2016-10-18 09:12:55 +01:00
Jermolene
accd4a1b65 Fix regexp performance problem introduced in c7b31b0242
This fixes a problem introduced in
c7b31b0242.

The changes by @tobibeer inadvertently made the regular expression
evaluation significantly more expensive because of lookahead. The is
less elegant but reverts the performance problem.
2016-10-17 19:08:01 +01:00
Jermolene
892a1f560e Trap JSON syntax errors during import
Fixes #2609
2016-10-13 14:16:55 +01:00
Jermolene
da298f037d Remove extraneous console.log()
Fixing f97c1226aa
2016-10-12 15:50:43 +01:00
Jermolene
f97c1226aa Prevent HTML parser from mis-recognising email addresses
Email addresses such as `<jeremy@example.com>` were being erroneously
parsed as HTML tags.

Fixes #2604
2016-10-12 13:17:53 +01:00
Jermolene
ffcbcbfa82 Add new 'minlength' operator
Fixes #1493
2016-10-11 09:26:20 +01:00
Devin Weaver
f1090d749e Fix str.length strEndsWith bug (#2572)
This was some how missed in dev testing I guess. @buggyj suggested this.

Should fix #2571
2016-10-08 14:06:30 +01:00
Tobias Beer
b9299309cc Fixes #2076 single line macros shouldn't need terminating line break 2016-10-08 13:44:30 +01:00
Tobias Beer
bf253a603b Removed unused vars + some whitespace (#2106) 2016-10-08 13:32:14 +01:00
Tobias Beer
f575389d89 Update wikiparserrules operator for no operand (#2193)
* return all wikiparserrules w/o operand

* simpler layout & code / updated instruction details

Also wanted to link each rule to the official docs using a dictionary at
`$:/language/Docs/ParserRules/`. However, without #2194 this is not
doable.
2016-10-08 13:04:11 +01:00
Tobias Beer
3486acaec6 Remove old titles from story on save (#2587)
fix for #2381
2016-10-08 12:17:27 +01:00
Tobias Beer
c7b31b0242 allows textPrimitives.anyLetter in syslink (#2596)
* allows textPrimitives.anyLetter in syslink

now only supports anyletter as per request by @jermolene
2016-10-08 11:51:07 +01:00
Jermolene
641eeaf611 Refresh action widgets before invoking them
Fixes #2599, at least partially.
2016-10-08 10:19:09 +01:00
Jermolene
c4e13bc94a Add icon and message handler for print button
I’m inclined to think it’s not worth adding a corresponding page
control button because it’ll require a lot of tiddlers for the
translation etc.
2016-10-08 10:10:54 +01:00
Jermolene
292d653880 Fix typo affecting created/creator fields when deleting field
Fixes #2579
2016-09-28 11:18:58 +01:00
Jermolene
5f0a1dd967 Revision of 03db25cf38
We should only fallback to the classic storyview if a storyview was
specified; if none was specified then we shouldn’t use a storyview.
2016-08-27 14:24:07 +01:00
Jermolene
03db25cf38 Fallback to "classic" if specified storyview not found
Fixes #2555
2016-08-26 11:34:43 +01:00
Jermolene
4d74f52202 Remove extraneous text
Copy/paste whoops.
2016-08-20 17:11:54 +01:00
Jermolene
05b32728bc Allow browser-based file reading to use deserializers for binary files 2016-08-20 17:09:22 +01:00
Jermolene
7bc7f643b6 Remove extraneous console.log 2016-08-16 15:48:25 +01:00
Jermolene
18dd8d4433 Fix problem with lazy loading under Node.js
Fixes #2514
2016-08-16 15:48:14 +01:00
Jermolene
e20bce5450 Add experimental support for RTL languages
This commit permits language plugins to carry the field
“text-direction” with the value “rtl” to trigger right-to-left layout
of the entire page. We also adjust the sidebar layout to work in RTL
mode.

There are still a number of problems to be addressed:

* Brackets and other punctuation incorrectly placed within en-GB UI text
* System tiddler titles are rendered semi-back-to-front (eg
`languages/ca-ES/:$`)

Starting to address #1845 and the discussion in #2523.
2016-08-15 19:47:26 +01:00
Jermolene
7326a3a4cc Only call isReady() for sync adaptors that support it
Fixes #2522
2016-08-06 14:45:33 +01:00
Jermolene
08cfa88249 Fix problem with unsafe use of String.prototype.replace()
We were using `String.prototype.replace()` without addressing the
wrinkle that dollar signs in the replacement string have special
handling. This caused problems in situations where the replacement
string is derived from user input and contains dollar signs.

Fixes #2517
2016-08-06 14:45:33 +01:00
Jermolene
e49d310ea9 Relax external link matching to ignore illegal characters
Fixes #2501, and rolls back some of #2324
2016-07-20 11:37:44 +01:00
Jermolene
782553eb62 Remove tilde from characters not allowed in external URLs 2016-07-13 14:06:47 +01:00
Myeongjin
98b435d550 Fix inconsistencies in language string IDs (#2494) 2016-07-13 10:00:21 +01:00
Jermolene
dca9e008ce Remove single quote from illegal characters in URLs
Fixes #2493
2016-07-12 17:22:20 +01:00
Devin Weaver
bf74d13df5 Handle binary files better when saving on Node.JS (#2420)
* Save binary tiddlers with meta file

The filesystemadaptor plugin was a little simplistic in its
understanding of a binary file. It was using the typeInfo dictionary to
choose what tiddler types were binary (and hence needed a meta file when
saving).

I looked as if it was trying to be smart by looking for the hasMetaFile
*OR* had the encoding of base64. Unfortunately the typeInfo only defined
image/jpeg and so any other base64 encoded tiddler was assumed to be of
type text/vnd.tiddlywiki.

The net effect was only JPG images got a meta file and everything else
were saved as .tid files with base64 encoding. It all still worked but
made working with binary data in a Git repo a bit daunting.

There is enough information in the $tw.config.contentTypeInfo to
determine if a tiddler type is encoded with base64 or not. A better list
is available from boot/boot.js who registers all the types thorough the
registerFileType and marks then with base64 were appropriate.

This commit uses the typeInfo dictionary first for any filesystem
specific overrides, then the contentTypeInfo, and finally defaults to
the typeInfo["text/vnd.tiddlywiki"]. It also eliminates the now
unnecessary override for image/jpeg.

I think this might have been the original intent from commit 10b192e7.
From my limited testing all files described in boot/boot.js (lines
1832-1856) with an encoding of base64 now save as the original binary
and a meta file. Meaning that when you start the node server and then
drag-n-drop a binary file (i.e. image/png) it will PUT to the server
and then save it on the filesystem as-is allowing the file to be managed
as a binary file and not a text file. (Binary diffs are better and
GitHub supports them as well).

* Prevent duplicate file extensions

A side effects of using the $tw.config.contentFileInfo in the previous
commit is that it will always append a file extension to the tiddler
title when saving. In most cases this is the correct course of action.
However, sometimes that title is already a proper filename with an
extension (for example importing 'foobar.png' would save a file named
'foobar.png.png') which seemed silly.

This commit simply checks to make sure the title does not already end
with the file extension before appending it to the filename. A little
convenience really.

Since IE apparently doesn't have the String endsWith method I took the
liberty to add a helper method to $tw.utils trying to follow the other
polyfill patterns. I figured this was more generic and readable then
attempting to use a one-off solution inline. I got the polyfill code
from MDN.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith#Polyfill

Is strEndsWith the best method name?
2016-07-11 11:18:19 +01:00
Jermolene
c3d18364c1 Don't use syncadaptors until they are ready
Fixes #2453
2016-07-05 11:29:59 +01:00
Jermolene
ff57b4084a Extend notification handler to accept variables
Now we can provide variables to be passed to the rendering of the
notification text
2016-07-03 14:55:41 +01:00
Jermolene
6f8ee52e90 Text-editor: fix placeholder colour in Chrome 2016-07-03 14:53:37 +01:00
Jermolene
3d5885f5a5 Extend view widget with plainwikified format 2016-06-23 16:28:59 +01:00
Jermolene
f51f6bf774 Fix URI in "put" save handler
We don’t want the location hash
2016-06-23 16:23:36 +01:00
Jermolene
bdd5aa9343 Trap missing tiddlers in savetiddler command 2016-06-23 16:19:00 +01:00
Richard Smith
b326ba5b2c Fixed: Titles containing a URL are interpreted as external links (#2324) 2016-06-05 20:03:04 +01:00
Jermolene
f846a004b6 Partial fix for copyStyles problem under Chrome
There’s still a problem: in Chrome, the styling of the textarea
placeholder isn’t correct.
2016-05-17 15:45:10 -06:00
Jermolene
682b1e7027 Fix sandbox attribute for html parser generated iframes
See
https://developer.mozilla.org/en/docs/Web/HTML/Element/iframe#attr-sandb
ox
2016-05-17 15:45:10 -06:00
Myeongjin
6388f859d1 Add localisable strings for error (#2447)
* Add localisable strings for error

* Update tiddler Transclusion Basic Usage in fr-FR
2016-05-17 21:58:47 +01:00
Myeongjin
8afc1e9354 Add localisable strings (#2438)
* Add localisable string for recursive transclusion error

* Add localisable string for count

* Add localisable strings for syncer
2016-05-12 08:44:28 -06:00
Jermolene
e54cc7b211 Fix copyStyles() not working in Firefox
Yet more browser incompatibilities to weep over…
2016-05-09 14:11:08 -06:00
Jermolene
c8777ea012 Add control panel setting for disabling the new editor toolbar 2016-05-09 10:33:15 -06:00
Jermolene
3a3754aebb Add rel="noopener noreferrer" to external links
Background:
https://medium.com/@jitbit/target-blank-the-most-underestimated-vulnerab
ility-ever-96e328301f4c#.hduwdbjlb
2016-05-05 11:49:40 +01:00
Jermolene
854a9a3b75 Refine behaviour of heading formatting toolbar buttons
Previous behaviour was that the H1 button on `!!! x` gave us `!! x`
2016-05-05 07:54:32 +01:00
Jermolene
e3415796b2 Fix problem with lazy loading images
Fixes @2263

Thanks @buggyj
2016-05-02 10:29:26 +01:00
Jermolene
a11a4de6af Fix problem with editing missing tiddlers
Fixes #2412
2016-05-02 10:12:08 +01:00
Jermolene
cdeca55d45 Fix another IE11 problem
IE11 doesn’t support String.prototype.repeat
2016-05-01 18:17:47 +01:00
Jermolene
01eb45946c Fix problem with IE11
It turns out that IE11 has a horrible bug whereby setting the
placeholder attribute before setting the text will trigger an input
event:

https://social.msdn.microsoft.com/Forums/ie/en-US/ae4832b0-8eee-4729-b93
3-a9977ea1b583/internet-explorer-input-event-get-fired-when-settingunset
ting-the-placeholder?forum=iewebdevelopment
2016-05-01 18:17:28 +01:00
Jermolene
6dce8d9763 Remove final vestiges of undo/redo buttons 2016-05-01 13:54:16 +01:00
Jermolene
72fb1e22ed Remove undo/redo formatting toolbar buttons
There have been long standing problems with the buttons not working in
Firefox, and now a [further
problem](https://groups.google.com/d/msg/tiddlywiki/GlsruQyPOag/BAhnI2mt
BgAJ) has come to light, and been similarly hard to resolve.

On balance, I’ve decided to remove the undo/redo buttons from the
toolbar (the ctrl/cmd-Z shortcut is still operational), thus avoiding
the problems, and saving some space in the core.
2016-05-01 13:51:45 +01:00
Jermolene
1515fd42ed Fix text editor for Internet Explorer
By switching from text events to execCommand.
2016-04-30 14:36:53 +01:00
Jermolene
7224fea961 Introduce "link" editor toolbar button
As proposed by Alex Hough
2016-04-29 18:54:44 +01:00
Jermolene
b1fb1070ef Enhance linkcatcher widget to use actions attribute 2016-04-29 18:54:44 +01:00
Jermolene
3c20f2396e Add support for assigning action widgets via the actions attribute
This is quite a big change: a new way to invoke action widgets.

The advantage is that it solves #2217 and #1564, a long running problem
that prevented us from adding action widgets to widgets that modify the
store.

This commit adds the new technique for the button and keyboard widgets,
but also extends the select widget to trigger action widgets for the
first time
2016-04-29 18:54:44 +01:00
Jermolene
39f0c19c9a Allow "yes" as a synonym of "true"
For consistency
2016-04-29 18:54:44 +01:00
nameanyone
19ee5bcf4e "days" filter: yesterday and tomorrow edge cases (#2364)
* Change the negation logic to address an edge case

Make it possible to get an interval ending with yesterday or starting with tomorrow.

* "days" filter: adjust documentation
2016-04-27 17:23:46 +01:00
nome
1ae428e323 Make tiddler file paths configurable (#2379)
When saving new tiddlers on node.js, allow the user to override the path of the
generated .tid file. This is done by creating a tiddler
$:/config/FileSystemPaths which contains one or more filter expressions, one
per line. These filters are applied in turn to the tiddler to be saved, and
the first output produced is taken as a logical path relative to the wiki's
tiddlers directory. Any occurences of "/" in the logical path are replaced with
the platform's path separator, the extension ".tid" is appended, illegal
characters are replaced by "_" and the path is disambiguated (if necessary) in
order to arrive at the final tiddler file path. If none of the filters matches,
or the configuration tiddler does not exist, fall back to the previous file
naming scheme (i.e. replacing "/" by "_").

This implies we will now, for tiddlers matching the user-specified filters,
create directory trees below the tiddlers directory. In order to avoid
cluttering it with empty directory trees when renaming or removing tiddlers, any
directories that become empty by deleting a tiddler file are removed
(recursively).

Benefits of this configuration option include the ability to organize git
repositories of TiddlyWikis running on node.js, ability to replace characters
that cause trouble with particular operating systems or workflows (e.g. '$' on
unix) and the ability to replicate tiddler "paths" in the filesystem (by
including a filter like "[!has[draft.of]]") without forcing such a (potentially
problematic) change on all users.
2016-04-25 08:36:32 +01:00
Jermolene
b7530bac44 Ensure iframe textarea styles are updated
Previously, changing the palette didn’t update the textarea styles.
2016-04-24 12:30:44 +01:00
Jermolene
3e9cc3e8fd Add a warning for undo/redo buttons in Firefox 2016-04-24 09:32:06 +01:00
Jermolene
3b49cd17fc Fixes from @Infurnoape 2016-04-23 17:23:14 +01:00
Jeremy Ruston
2adf09129d Introduce text editor toolbar (#2315)
Tada!
2016-04-22 08:36:29 +01:00
Jermolene
4dd701c2dd Fix problem with missing link logic
See
https://github.com/Jermolene/TiddlyWiki5/commit/7908e10488cc4280dd8e4f40
5bcb09f2fb6d3524#commitcomment-17174321
2016-04-20 11:57:38 +01:00
Jermolene
1e0d019610 Don't repeatedly lazy load the same tiddler
If we don’t get a “text” field back the first time we shouldn’t keep
asking for it.
2016-04-18 14:50:13 +01:00
Myeongjin
e6e346ea29 change string 'Close' to lowercase for dialog (#2366) 2016-04-14 23:03:14 +01:00
Devin Weaver
bea6d741e3 Reword makedatauri.js description (#2373)
Closes issue #2372
2016-04-14 23:02:40 +01:00
Devin Weaver
7908e10488 Add option to disable linking to missing tiddlers
* Add LinkWidget option to ignore missing tiddlers
* Add missing link option to settings
2016-04-04 12:43:40 +01:00
Myeongjin
c9b0e15201 add localisable strings for dialog 2016-03-28 16:24:55 +09:00
webninjasi
47d518d6d4 Fix invalid header in upload plugin 2016-03-03 19:08:24 +02:00
Jermolene
5f6a53eae1 Fix typo from 4a03dcab20 2016-02-20 21:44:52 +00:00
Jeremy Ruston
35fe5a5fc3 Merge pull request #2294 from mklauber/patch-2
Update has.js for improvement to #2274
2016-02-20 21:43:58 +00:00
Matt Lauber
899c5cb835 Update has.js 2016-02-18 11:51:29 -05:00
Jermolene
4a03dcab20 Fix problem with double-byte Unicode entities
Entities such as `&#128119;` were broken because
`String.fromCharCode()` is not fully Unicode aware. The fix is to use
`String.fromCodePoint()` where available.

Noted by @ericshulman
2016-02-18 13:49:09 +00:00
Eric Drechsel
60d585f7d5 putSaver: probe for server support on startup
save fails until probe succeeds,
allowing other saver methods to take over

Follow up to #2288, #2277
2016-02-16 10:53:15 -08:00
Jeremy Ruston
1f4df88960 Merge pull request #2284 from mklauber/patch-2
Fix for #2274
2016-02-16 16:37:46 +00:00
Matt Lauber
5a14b37686 Update to check if empty sting OR (is array AND is empty) 2016-02-16 08:08:09 -05:00
Eric Drechsel
dd43759ecc putSaver: return null on save success, TODOs 2016-02-15 15:20:30 -08:00
Jeremy Ruston
2203c2b38a Merge pull request #2277 from edrex/put_saver
add a simple put saver, for saving to a webdav or REST server
2016-02-15 22:00:46 +00:00
Matt Lauber
22145e2e51 Fix for #2274
List fields (such as tags) when evaluated to produce tiddlers result in empty arrays.  Using the exact not equals, an empty array is not the same as an empty string.  By using equivelent not equals, we state that the field is either != "" or anything that can be coerced to "".  Which, based on https://dorey.github.io/JavaScript-Equality-Table/ is `false` `0` `[]` or `[[]]`` neither `false` nor `0` can be set as a tiddler field as both will end up being quoted (`"false"`, `"0"`) so this should work.
2016-02-15 08:31:23 -05:00
Jermolene
df3e39d97a Update wikiparser file comment 2016-02-15 11:33:47 +00:00
Jeremy Ruston
581634d282 Merge pull request #2164 from pmario/issue-2158
Issue 2158 - check for new draft fields and warn if cancel is clicked
2016-02-11 09:31:58 +00:00
Eric Drechsel
f8565443d7 add a simple put saver, for saving to a webdav or REST server 2016-02-08 13:40:10 -08:00
Jermolene
b873df0ba2 Revert "Merge pull request #2166 from matabele/patch-5"
This reverts commit 83c54f4bb5, reversing
changes made to 0cbe97615a.
2016-01-06 09:38:39 +00:00
Jeremy Ruston
83c54f4bb5 Merge pull request #2166 from matabele/patch-5
Fix inadvertent clearing of text field (default) when `field` attribu…
2016-01-05 19:10:26 +00:00
Jermolene
0cbe97615a Add size attribute to select widget for multiple selection mode 2016-01-05 18:48:21 +00:00
Jermolene
93f7d8c028 Fix bug with tiddler widget and a blank tiddler title 2016-01-05 18:48:04 +00:00
Jeremy Ruston
31b4f104e4 Merge pull request #2161 from matabele/patch-3
Tidied up the code in the x-listops filters
2016-01-05 15:30:39 +00:00
Jeremy Ruston
2cd812c15f Merge pull request #2160 from matabele/patch-2
Changed the name of the 'list' attribute to 'field' for the $action-listops widget
2016-01-05 13:06:48 +00:00
Jeremy Ruston
791f97983e Merge pull request #2153 from tobibeer/rows-for-edittext
add rows attribute to edittext, plus docs
2016-01-05 12:31:37 +00:00
Jermolene
5cc1f2b313 Fix problem with search popup disappearing
This one took quite a lot of tracking down…

Fixes #2172
2016-01-03 18:05:08 +00:00
William Jackson
ac8b706d42 Correct Formatting
Removed extra tab spacing and corrected syntax error
2016-01-03 16:30:00 +02:00
William Jackson
a44edee782 Changed indents from spaces to tabs
I am informed this is the correct convention for TW5.
2015-12-28 18:12:22 +02:00
William Jackson
471f28e52b Fix inadvertent clearing of text field (default) when field attribute of the ActionSetField widget isn't set.
When using the widget with only short form SetText attributes (field="value) -- the default field (text) of the default tiddler is set to the default value ("") -- thus clearing the text field of the current tiddler. I have inserted a conditional to test for the presence of the `field` attribute.

Whilst I was about this, I have inserted code to enable the setting of any number of TextReferences -- this fixes the issue of only being able to set one index per widget and also allows different tiddlers to be targeted by the same widget.
2015-12-28 18:08:05 +02:00
Mario Pietsch
3977cf009b fixes #2158 check if new fields are present and warn on cancel 2015-12-28 11:31:36 +01:00
Mario Pietsch
7c4ea64210 fixes #2158 check if new fields are present and warn on cancel 2015-12-28 11:29:43 +01:00
William Jackson
48987e186a Tidied up the code in the filters 2015-12-28 10:31:39 +02:00
William Jackson
2f51c3695d Changed the name of the 'list' attribute to 'field'
Other users found this to be confusing -- I have made this change in both this widget and the $checklist widget to maintain consistency
2015-12-28 10:22:28 +02:00
Jeremy Ruston
fe00229ad5 Merge pull request #2004 from inmysocks/patch-9
Modified fieldmangler to create a tiddler if adding a tag (see #2001 )
2015-12-24 15:22:41 +00:00
Tobias Beer
456e7abc5d add rows attribute to edittext, plus docs 2015-12-24 15:40:00 +01:00
Jeremy Ruston
e344dbe077 Merge pull request #2049 from inmysocks/patch-11
Let $keyboard trigger action-widgets
2015-12-24 14:12:32 +00:00
Jeremy Ruston
dcc53b8e96 Merge pull request #2074 from mklauber/master
Manage a list field by allowing the <$select> widget to select multiple items.
2015-12-24 13:48:43 +00:00
Jeremy Ruston
7676f93932 Merge pull request #2125 from tobibeer/set-emptyValue-always
always set emptyValue, not just for filter
2015-12-23 17:42:41 +00:00
Jermolene
57ceffd67c Merge #1909 from @nameanyone 2015-12-23 12:19:47 +00:00
Jeremy Ruston
ccf6edb940 Merge pull request #1933 from felixhayashi/fix/scrolling
Auto-height fix for text area which is contained in a scroll container
2015-12-22 14:08:56 +00:00
Jeremy Ruston
fa1814d0f4 Merge pull request #2048 from felixhayashi/fix/count
Replacing count with Object.keys
2015-12-22 12:41:24 +00:00
Jeremy Ruston
ef1cd5f55f Merge pull request #1967 from Drakor/fixActionSetField
fixed bug in $action-setfield introduced by #1963
2015-12-21 22:17:51 +00:00
Tobias Beer
ea8a8f1b53 always set emptyValue, not just for filter 2015-12-09 23:33:07 +01:00
Jeremy Ruston
da36f1c728 Merge pull request #2037 from matabele/Listops
ActionListopsWidget
2015-12-06 19:04:26 +00:00
jed
848e351685 removed the handled variable
because it serves no purpose here. That test isn't required in this context.
2015-11-16 10:48:25 +01:00
Jermolene
15f52bd7ce Add support for Nw.js special features to browse widget 2015-11-13 18:47:30 +00:00
Matt Lauber
8ccee5d015 Remove cla for separate PR, and clean up variable declaration. 2015-11-13 11:30:06 -05:00
Matt Lauber
f540be4ac4 use $tw.utils.stringifyList 2015-11-13 08:06:51 -05:00
Matt Lauber
065b274b98 Use the $tw.utls.parseStringArray function to break up a list. 2015-11-13 08:04:13 -05:00
Matt Lauber
c535dd605c Grant the select widget the ability to select multiple values.
Multiple values are placed in a given tiddler-field combination as if
that field were a list field.
2015-11-13 07:50:34 -05:00
Tobias Beer
ef3e44eb48 rename suffix each:list to each_list-item
based on #1422, improves readability of the filter expression

tests passed
2015-11-13 11:07:24 +01:00
Jermolene
ac00aa8407 Allow server module to work under Node even if $tw.browser is defined
Needed for TiddlyDesktop, where want to be able to run the HTTP server
in a hybrid browser/node environment.
2015-11-10 18:13:30 +00:00
William Jackson
befb13dde1 Update x-listops.js
Change default suffix for append[], prepend[] and remove[] operators from 1 to All
2015-11-08 09:49:07 +02:00
Jeremy Ruston
583ed07af2 Merge pull request #1422 from tobibeer/each-list
added list suffix for each filter
2015-11-05 12:45:27 +00:00
Felix Hayashi
f217451fc5 Replacing count's function body with Object.keys
see #2046
2015-11-03 23:47:47 +01:00
William Jackson
817882a404 Update x-listops.js
Added prefix and suffix options to 'append' and 'prepend' operators
2015-10-27 10:17:07 +02:00
Felix Hayashi
d3ab4144d4 Allows text areas to be auto-height while being wrapped in an
element that has scrollbars. The wrapper element with the
scroll bar does not need to be a direct parent of the text area.

**update:** fixed a bug that came up in the discussion

This is fixed now: https://github.com/Jermolene/TiddlyWiki5/pull/1933#issuecomment-141774881

The problem was the check in getScrollContainer()
2015-10-26 21:22:10 +01:00
jed
e55c5b0669 Let $keyboard trigger action-widgets
Because of the refresh problems with the other widgets triggering action-widgets I am doing this one by itself. I hadn't included it before.

This shouldn't have any more problems than the button widget does, and any problems caused by it should be fixed by any fix we use for the button widget. See #1564 for more background
2015-10-26 20:23:09 +01:00
William Jackson
3e445b8853 Update x-listops.js
Corrected the logic of the 'allafter' filter and added a new 'move' filter.
2015-10-22 16:40:36 +02:00
William Jackson
56d467fb47 Create action-listops.js
Action widget designed to apply filters to the current list and save the modified list back to the list. The widget is able to manipulate lists in any field or any data index of the target tiddler, and includes an option to manipulate the tags of the target tiddler. The widget is used in conjunction with the extended list operator filters (xlistops.js)
2015-10-18 18:41:40 +02:00
William Jackson
49894abaf4 Create x-listops.js
These filters are designed to be used with the action-listops widget.
2015-10-18 18:37:08 +02:00
Myeongjin
4347d91c57 add localisable strings for Import/Imported 2015-10-18 17:29:04 +09:00
Jeremy Ruston
b1633e0f2d Merge pull request #1952 from tobibeer/1937-set-refresh-filter
fixes #1937 — filter refresh in set widget
2015-10-14 14:18:29 +01:00
Jermolene
33563d01ba Add user interface for enabling performance instrumentation 2015-10-14 10:59:55 +01:00
Jermolene
85553609b1 Ensure edit-text widget fixes height even if refresh isn't required
Fixes #1995
2015-10-12 17:54:51 +01:00
jed
4c95dc9bbb Modified fieldmangler to create a tiddler if adding a tag to one that doesn't exist
This came up as an issue and I don't have any reason it shouldn't be here. It could be useful.
2015-10-08 20:39:19 +02:00
Tobias Beer
b34e4f628d adopted style recommendations 2015-10-08 14:21:57 +02:00
Tobias Beer
32c41479cc using variable declaration for readability 2015-10-08 14:18:55 +02:00
Tobias Beer
95eb8810b6 removed pushOnce 2015-10-08 14:07:12 +02:00
Tobias Beer
91b5547cdf adopted style recommendations 2015-10-08 14:07:08 +02:00
Tobias Beer
d0a24bd9f0 added $tw.utils.pushOnce
retained check for basic each nonetheless

tests pass
2015-10-08 14:07:06 +02:00
Tobias Beer
f684a6beb0 fixed helper function and added tests
tests: ok
2015-10-08 14:07:00 +02:00
Tobias Beer
a88ead9c0f removed conditional from iterator
I'd really like to see a profiler run against the two to see the
performance impact of one over the other
2015-10-08 14:06:57 +02:00
Tobias Beer
c3cbbc3f66 renamed value to items 2015-10-08 14:06:54 +02:00
Tobias Beer
f9464dfaf8 using variable declaration for readability 2015-10-08 14:06:51 +02:00
Tobias Beer
baca2703f1 added list suffix for each filter
implements #1369

when the suffix is `list`, interprets the field as a list of individual
tiddler titles and returns all titles referenced in the list field of
the source list, existing or not
2015-10-08 14:06:48 +02:00
Jermolene
99df9f46f7 Add support for tiddlers containing mp4 videos 2015-10-01 12:13:38 +01:00
Jermolene
814353d8ce Fix accidental inconsistency between savetiddlers and rendertiddlers
“-do-not-delete” flag for savetiddlers command was introduced in 5.1.10
without consistency with the already implemented “noclean” flag for the
rendertiddlers command
2015-09-29 17:04:01 +01:00
Jermolene
7b8928886b Add tw.utils.tagToCssSelector() helper method 2015-09-28 20:27:43 +01:00
Andreas Hahn
99c5fa46dd fixed bug in $action-setfield introduced by #1963: At least one of '$field', '$value' or '$index' must be specified in order to act upon the information from the fields. Prevents default deletion of the 'text' field when none are specified. 2015-09-27 15:35:54 +02:00
Tobias Beer
6b3fc8d538 updated #1480 "undefined value removes field or index"
when $value is unspecified, $action-setfield removes field or index...

modified

setText() — $:/core/modules/wiki.js
invokeAction() — $:/core/modules/widgets/action-setfield

demo

http://tobibeer.github.io/tw/batch/#ActionSetField-RemoveIndex
2015-09-25 15:20:37 +02:00
Jermolene
57c40a8a56 Text-slicer: Tweaks to fix recently introduced bugs!
* Fixes problem with slicing wikitext tiddlers
* Adjusts position of heading expand/collapse icons in the view
template segment
2015-09-22 12:57:53 +02:00
Tobias Beer
a1ce254e95 fixes #1937 — filter refresh in set widget
as per @EvanBalster
2015-09-21 17:24:26 +02:00
Jermolene
939596bd47 Add new "htmlencodedplainwikified" format to view widget
Triggered by the text-slicer plugin, but general purpose.

The clunky implementation shows the shortcomings of the view widget. It
was one of the first widgets to be implemented; subsequently, the
implementation of macros gives us a potentially more flexible way of
implementing these kinds of text transformations.
2015-09-11 13:34:01 +01:00
Jermolene
eb9fb6635d Fix issues with creation and modification dates
There were several places where tiddlers were being written without the
creation/modification details being updated.

See
https://groups.google.com/d/msgid/tiddlywiki/17ef8ab0-0128-4467-8a9d-f17
bdbcf3618%40googlegroups.com
2015-09-11 13:34:01 +01:00
Jermolene
424b2fea32 Add th-saving-tiddler hook for autotagging etc.
@danielo515 this enhancement is intended to make it easier to implement
things like the auto tag plugin. Does it meet your needs?
2015-09-08 16:16:50 +01:00
Jermolene
ecdae4ceff Make lazy loading message be translateable 2015-09-08 10:41:27 +01:00
Jermolene
5176f008f0 Enhance savetiddlers command with do not delete option 2015-09-03 08:54:17 +01:00
Jermolene
4ccdaf3faf Enhance rendertiddler command with template option 2015-09-03 08:53:08 +01:00
Jermolene
51d771a074 Extend tm-open-window to pass variables 2015-08-31 14:13:32 +01:00
Jermolene
3fbe07f1f8 Fix link widget propogation behaviour
Without this fix, using nested link widgets with custom elements causes
clicks on the inner element to trigger links on each of the containing
widgets
2015-08-30 19:12:12 +01:00
Jermolene
68e15c1064 Move rename tiddler handling into navigator widget
For consistency with the other tiddler manipulation primitives.
2015-08-30 19:11:14 +01:00
Jermolene
a204784c0c Limited implementation of external text tiddlers in the browser
Triggered by the discussion in #1917
2015-08-29 16:33:04 +01:00
Jermolene
2eb645e5e5 Add getAttribute to fakeDom 2015-08-10 20:32:13 +01:00
Jermolene
3cfad8b044 Refactoring of text-slicer
Now we process the rendered HTML of tiddlers, which allows us to
process HTML generated by MS Word. In fact, the HTML that MS Word
generates is so awful, I’ve instead been using Mammoth to do the
conversion: https://github.com/mwilliamson/mammoth.js

Also some necessary improvements to the fake dom implementation.
2015-08-10 11:41:23 +01:00
Jermolene
ac08dc2e35 Added fold/unfold all buttons
More translations, @BramChen, apologies…
2015-08-09 17:25:01 +01:00
Jermolene
16c69bb419 Tweaks to fold button 2015-08-09 16:11:37 +01:00
Jermolene
bad4a19f8e Add fold others button 2015-08-09 12:56:48 +01:00
Jermolene
5d43cd7408 Add fold tiddler toolbar button
Addressing this tweet:
https://twitter.com/s_stryjecki/status/629349768280604672
2015-08-09 11:10:04 +01:00
Jermolene
6a3c4d6c91 Flip logic for suppressing timestamps
Fixing a mistake from the earlier commits, so that the default remains
that the timestamps are applied.
2015-08-09 11:09:02 +01:00
Jermolene
e5cd8313a0 Update actionsetfield widget to allow timestamp to be preserved 2015-08-06 18:17:09 +01:00
Jermolene
fdce67399d Provide option to suppress navigation for edit/cancel/save 2015-08-05 15:07:19 +01:00
Jermolene
72ed4b2673 Add renaming to text-slicer tiddler toolbar
The plan is to expose the functionality in other places, too - for
example, the edit template and the tag manager
2015-08-04 17:44:07 +01:00
Jermolene
9168480d18 Clear caches when changing plugins 2015-08-02 22:22:33 +01:00
Jermolene
8444961cd2 Introduce Story object
A lightweight object to encapsulate manipulation of the story and
history lists
2015-08-01 18:09:00 +01:00
Jermolene
cd29eed067 Fix problem with importing using wrong import tiddler name 2015-08-01 13:48:46 +01:00
Jermolene
8f746f9dde Add parse tree utility for collecting text 2015-08-01 13:14:32 +01:00
Jermolene
f708b4df65 Turn off performance instrumentation
The plan is to make it be a user configurable option
2015-08-01 13:13:47 +01:00
Jermolene
58188cf805 Improvements to parser rule configuration
* Ignore parser rule configuration in safe mode
* Made text translatable
* Added new setting for camelcase links
* Added warning on parser rule configuration tab

See #1875
2015-07-31 13:33:33 +01:00
Jermolene
d5e690a06d First pass at global disabling of parser rules
This is to address #1875 more quickly than via #345.

This commit only includes a partial implementation of the UI - see the
ticket for details.
2015-07-30 12:28:29 +01:00
Jermolene
18e38bb2bc Fix bug with 2cb6400773
The problem was that we failed to escape the dash in the regexp,
meaning that it was matching all characters from “.” to “_”.
2015-07-14 08:33:12 +01:00
Jermolene
2cb6400773 Extend automatic system tiddler linking to digits and underscore
Fixes #1877
2015-07-13 14:42:55 +01:00
Jermolene
32f6d7f1b0 Revert getTiddlerData() and add getTiddlerDataCached()
For backwards compatibility, we now explicitly request the cacheable
version of this method.

Fixes #1873
2015-07-10 16:43:50 +01:00
Jermolene
862e358b57 Refine check for client server plugins
Fixes #1870
2015-07-08 15:48:13 +01:00
Jermolene
8bfc6f3557 Adjust cache names for parse caches
The old names were a hangover from an old refactoring.
2015-07-08 08:26:19 +01:00
Jermolene
848a7f4e74 Optimise getStateQualifier()
Another fix for #1864, this time we’re caching state qualifiers as they
are expensive to compute.
2015-07-06 11:23:12 +01:00
Jermolene
c6e48ebc2d Performance optimisations
In some situations, I’m seeing x2.5 speedups with these optimisations

Starts fixing #1864
2015-07-05 19:47:44 +01:00
Jermolene
a86cfe2663 Minor coding style tweaks 2015-07-05 18:09:35 +01:00
Jeremy Ruston
c4397792f5 Merge pull request #1863 from nameanyone/master
New filter "recent"
2015-07-05 18:04:05 +01:00
Jermolene
b0cb17cd83 Re-establish caching of results of parsing a tiddler
I switched this optimisation off back in
ed35d91be6, in October 2013, as part of a
big refactoring of the parsing and widget mechanism. I’ve been meaning
to switch it back on for some time.

My rough measurements suggest that this optimisation can reduce
rendering time by 5-10%.
2015-07-05 17:48:18 +01:00
Jermolene
3a7e29674b Fix problem with checkbox widget and missing tiddlers
The newly added invertTag code was crashing if the tiddler doesn’t
exist.
2015-07-02 17:33:51 +01:00
nameanyone
a37ba2afbe New filter operator "recent"
Select tiddlers with a specified date field (default "modified") within the last N days (default 0, meaning today).
2015-06-30 14:05:03 -07:00
Jermolene
63f802efda Rename checkbox "invert" attribute to "invertTag"
And update docs
2015-06-26 10:18:15 +01:00
James Welford Anderson
379181ded5 add invert parameter to checkbox plugin
for when you want a tag to denote the lack of a check rather than the
presence of one.
2015-06-26 05:10:13 +09:00
Jermolene
50c6ce8b73 Improve syslink parsing
Fixes #1767
2015-06-24 09:24:03 +01:00
Jermolene
b31803608b Refactor navigator widget configuration
@felixhayashi sorry I should have realised earlier that it’s worth
doing it this way so that we can have different settings for different
story rivers.
2015-06-19 16:44:20 +01:00
Jermolene
4a3a5bf1f0 Don't autosave when cancelling an edit
Fixes #1762
2015-06-13 18:08:09 +01:00
Jermolene
1c72e77106 Add warning if required client-server plugins are missing 2015-05-22 09:05:25 +01:00
Jeremy Ruston
8a999ea745 Merge pull request #1706 from buggyj/zoomin_nav
fix for issue -  Story freezing in zooming mode #1704
2015-05-18 22:39:55 +01:00
Jermolene
9b4b9d4d88 Update sendmessage widget to allow name/value parameters
Using `$name` and `$value` attributes allows more flexibility in how
parameter names are specified, allowing parameter names that are not
valid attribute names.
2015-05-18 22:15:23 +01:00
Jermolene
ecdcfe41ac Fix problem with #1723
Restoring operation of the “default” attribute
2015-05-14 00:07:53 +01:00
Jeremy Ruston
f0206283cf Merge pull request #1723 from cehmke/fix-buttonwidget-textreference-selected
Use of getTextRefence in ButtonWidget.isSelected
2015-05-12 11:20:47 +01:00
Jeremy Ruston
cf3b63c13c Merge pull request #1724 from cehmke/select-refresh-children-first
SelectWidget: Update selected value if children have been refreshed
2015-05-12 11:20:06 +01:00
Jermolene
b5ad255d0c Allow drafts typing timeout to be configured 2015-05-11 20:15:42 +01:00
cehmke
4d3103ff25 Update selected value if children have been refreshed
If the children have been refreshed, it is necessary to check, whether
the value of the select box has been changed.
2015-05-10 19:32:38 +02:00
cehmke
b8addaa520 use of getTextRefence in isSelected
Instead of a particular implementation make use of the overall function
getTextReference to determine the current value.
Add a missing semicolon.
2015-05-10 13:26:00 +02:00
Jermolene
42a3e31b1b Tweaks to #1678 2015-05-07 19:44:08 +01:00
Jeremy Ruston
e93d32cdd7 Merge pull request #1678 from felixhayashi/feature/vars_widget
Introducing the vars widget
2015-05-07 19:36:25 +01:00
Jermolene
61b75be94c Add "navigateFromTitle" to action-sendmessage
Fixes #1665
2015-05-06 08:14:26 +01:00
Jermolene
86e901f375 Fix event handler leak for modals and notifications
Also add support for passing custom variables into notifications.

Fixes #1694
2015-05-06 08:07:12 +01:00
buggyj
45e0f09ade fix multiply displayed tiddlers zoomin error 2015-05-06 07:42:55 +01:00
Jermolene
cad5917eeb Request scrollbars in external windows 2015-05-05 21:47:37 +01:00
Jermolene
a79e7a1c57 Tweaks for #1662
Coding style and ui copy
2015-05-04 20:29:00 +01:00
Jeremy Ruston
4656a7e8f6 Merge pull request #1662 from felixhayashi/feature/navigator_widget
upgrading the navigator widget
2015-05-04 20:21:38 +01:00
Jermolene
403a460002 Check for dom node not found 2015-05-03 16:56:37 +01:00
Jermolene
0932c15e5c Clarify rendering parameters
srcDocument.body.firstChild will in fact be null, but it’s clearer to
write it out
2015-05-03 16:56:27 +01:00
Jermolene
3f26492ac8 Close subwindows when closing main window 2015-05-03 16:24:02 +01:00
Jermolene
48dcf959ff Refactor browser unload task handling
Make it possible to register multiple task functions that will be
called when the window is unloaded
2015-05-03 16:23:35 +01:00
Jermolene
d23f174d01 Add a margin for single tiddler windows 2015-05-03 15:05:26 +01:00
Jermolene
fdeb8a925f Introduce template for single tiddler windows
Lets us include global macros etc.
2015-05-03 14:58:33 +01:00
Felix Hayashi
9693f97b16 upgrading the navigator widget
Motivation / Agenda

* https://github.com/Jermolene/TiddlyWiki5/issues/1651
* https://github.com/Jermolene/TiddlyWiki5/issues/1650

Summary

* Changed the NavigatorWidget (primarily `addToStory()`)
* Applied lingo to settings
* Applied lingo to selectbox options
2015-05-03 13:24:16 +02:00
Jermolene
ec567f67d3 Set title of external window 2015-05-03 08:49:37 +01:00
Jermolene
8708f817fa Improve garbage collection of external windows
Now we remove event listeners when a window is closed
2015-05-02 17:22:53 +01:00
Jermolene
7866f9b2de Typo
Typically for JavaScript, initialising an object as an array doesn’t
break anything because an array is an object. Anyhow, it should be an
object in this case.
2015-05-02 17:22:23 +01:00
Jermolene
9cf5d88cc9 Add "open new window" tiddler toolbar button 2015-05-02 12:12:51 +01:00
Felix Hayashi
740627795f This widget allows the user to set multiple variables in one go.
It thereby reduces code complexity that would arise when setting
many variables using "<$set>".

```
\define helloworld() Hello world!
<$vars greeting="Hi" me={{!!title}} sentence=<<helloworld>>>
  <<greeting>>! I am <<me>> and I say: <<sentence>>
</$vars>
```

How this Widget differs from the set widget:

 * Variables may be created by using the "key=value" notation
   that you already know from widgets like action-setfield.
 * You cannot specify a fallback ("emptyValue")
 * You cannot use a filter to produce a conditional variable assignement

Original discussion that led to the creation of this widget:
https://github.com/Jermolene/TiddlyWiki5/issues/1610
2015-04-27 17:07:13 +02:00
Jermolene
3c7082e181 Fix contrastcolour typo 2015-04-24 11:13:10 +01:00
Jermolene
75a33f5dff Fix problem with "foreground"/"background" palette colours using <<colour>> macro
See discussion here:

https://groups.google.com/d/topic/tiddlywiki/XDlO0EydXtY/discussion
2015-04-21 22:07:16 +01:00
Jermolene
139496209f Add support for custom elements to the button widget 2015-04-21 19:29:54 +01:00
Jeremy Ruston
13a5e8f31c Merge pull request #1520 from roma0104/master
Update the sameday and eachday filter to accept TW5 date strings.
2015-04-06 17:40:32 +01:00
Jermolene
b7465c5eb1 Missed off 7c9976f1d9 2015-04-02 15:22:50 +01:00
Jermolene
7c9976f1d9 Partially revert to 5.1.7 scroll behaviour
We’re keeping the new logic that prevents unnecessary scrolling at
startup

Fixes #1543
2015-04-02 15:21:49 +01:00
Jermolene
758ba5edc2 Allow widgets to choose not to propagate actions
Allow widgets to choose not to propagate actions. This is important for
widgets that themselves trigger actions.

Note that this change will cause problems with any existing
5.1.8-prerelease plugins that call `invokeActions()`.
2015-03-25 22:13:22 +00:00
Jermolene
4eb2e3d3b4 Fix undefined tabindex problem with link widget
The tabindex attribute was being set to the string “undefined” if the
attribute was not specified. The fix is to only set the tabindex
attribute if the attribute was specified.
2015-03-25 11:11:07 +00:00
Jermolene
bd6472c1d1 Add style attribute to reveal widget 2015-03-23 15:28:26 +00:00
Jeremy Ruston
7daddfc5ea Merge pull request #1588 from andreasabeck/passwd-lang
added localisation for encryption dialog & de-DE translation
2015-03-21 19:05:39 +00:00
Jermolene
00f35fe41a Don't HTML encode single quotes
They don’t get automatically decoded when the browser reads the
resulting HTML. So, instead, we’ll solve
1e9e1a1fdc by switching to double quotes
for attribute values.
2015-03-21 14:17:42 +00:00
Andreas Abeck
2c367c5476 added localisation for encryption dialog & de-DE translation 2015-03-18 18:52:33 +01:00
Jermolene
24435a46be Lots of improvements to the plugin library
* Moved “add new plugin” into a modal wizard
* Adopt big friendly buttons
* Add plugin icons and readmes to “add new plugin” modal
* Use tabs for splitting plugins/themes/languages
* Consistent styling between the “add new plugin” modal and the
“installed plugins” control panel tab
* Behind the scenes, moved from addressing the library as
`recipes/defaults/tiddlers/<etc>` to `recipes/library/tiddlers<etc>`
2015-03-18 11:46:28 +00:00
Jermolene
421ac16389 Use inline parsing for header and footer of modals
This may cause backwards compatibility problems for people relying on
the block mode parsing, but it’s much better for the rest of us as it
avoids an unsightly paragraph tag
2015-03-18 11:41:10 +00:00
Jermolene
22b7400de8 Move making a data uri into reusable utilities 2015-03-18 11:40:09 +00:00
Jermolene
a4a9daa40b Extend wiki.makeTranscludeWidget() to control mode 2015-03-18 11:39:50 +00:00
Roma Hicks
55ee327885 Removed uneeded function but still converts TW5 Date strings. 2015-03-13 13:14:30 -05:00
Jermolene
550ad4a1a9 Partial fix for #1570
Stop the logger from creating alert tiddlers on the server. They
propagate to the client but are not deletable from the client because
they are in the `$:/temp` namespace.

cc @loleg
2015-03-12 22:35:03 +00:00
Jermolene
c33a17a475 Revert "sort unlisted tags by title"
Revert “sort unlisted tags by title”
a8ab08e8fa by @tobibeer

The problem was that this commit changed the order of stylesheet
processing. For background see:

https://groups.google.com/d/topic/tiddlywiki/BPuuSkG6siU/discussion
2015-03-11 19:17:14 +00:00
Jermolene
657c266522 Coding style tweaks 2015-03-10 20:04:34 +00:00
Jermolene
e80a08f43b Fix problem with custom tag in reveal widget 2015-03-10 16:59:25 +00:00
Jermolene
1808b1597e Support custom HTML element tags for reveal widget 2015-03-10 12:44:47 +00:00
Jermolene
64e1a76987 Prevent edit-text widget from generating unsafe elements 2015-03-10 12:34:50 +00:00
Jermolene
65d81921f9 Further fixes to scrolling behaviour 2015-02-25 20:24:07 +00:00
Jermolene
8d46c18fc7 Refine fix for #1526
The previous fix changed the scrolling behaviour such that it only
scrolled to the top of a tiddler if the tiddler was entirely offscreen.
It wasn’t entirely satisfactory because scrolling was prevented even if
only a few pixels of a tiddler are in view. This commit ensures that
the scroll does occur if less than 50 pixels of the target is in view
2015-02-25 19:09:53 +00:00
Jermolene
489bc7a50b Only scroll to top when tiddlers are completely off-screen
Fixes #1526
2015-02-25 19:01:40 +00:00
Jermolene
05c3de3245 Extend list widget to invoke storyview for refreshes 2015-02-23 11:24:03 +01:00
Jermolene
950a86c7b7 Extend link widget with additional attributes
Add “tabindex”, “draggable” and “tag” attributes
2015-02-23 11:23:44 +01:00
Jermolene
0da1f3f554 Extend list widget to pass refreshes to the story view 2015-02-23 11:17:00 +01:00
Jermolene
60e6b584bf Extend link widget with new attributes
Add “draggable”, “tag” and “tabindex” attributes to link widget.
2015-02-23 11:16:44 +01:00
Roma Hicks
a5591dc7a5 Update the sameday and eachday filter to accept ISO date strings. Extends coverage to fields that are not automatically converted to Date objects. 2015-02-21 11:39:03 -06:00
Jermolene
bba4794c0a Coding style updates
@welford there were some minor tweaks with whitespace, coalescing
consecutive var statements, camelcase rather than underscores in
variable names.
2015-02-20 22:17:28 +00:00
James Welford Anderson
1901702557 bug fix
Createdirectory is removed as $tw.utils.createFileDirectories does it's
work

Fixed a bug for when tv-get-export-path returns null.
2015-02-21 07:06:59 +09:00
James Welford Anderson
cf59e7a71b re-add outputpath variable 2015-02-21 06:49:34 +09:00
James Welford Anderson
ee6b6a0f0c add macros for custom statically exported paths/links/images
tv-get-export-path tells render tiddlers where to export files
tv-get-export-image-link tells images.js where to look for images
tv-get-export-link tells tells link.js where to look for links to other
exported tiddlers
2015-02-21 06:45:40 +09:00
Jermolene
3df341621d Alternative fix for unnecessary startup scrolling
@aelocson here’s an alternative fix for #981, as discussed in
https://github.com/Jermolene/TiddlyWiki5/commit/691e5719a4ff74a04d389bd1
26ba2a69e7651a2a#commitcomment-9848682

It does seem a lot nicer. It avoids the problem you raised, and also
avoids scrolling when a permalink is used.

I suspect that we’d need to make the hard-coded 50 pixels be
configurable.
2015-02-20 20:04:18 +00:00
Jermolene
ead6eb00d4 Revert "Merge pull request #1509 from welford/static_export_macro"
This reverts commit b2b8006b58, reversing
changes made to e7e16137b2.

@welford my apologies it turns out there are a couple of problems, I’ll
comment more on the pull request
2015-02-20 18:39:13 +00:00
Jeremy Ruston
b2b8006b58 Merge pull request #1509 from welford/static_export_macro
Static export macro for custom paths
2015-02-20 18:15:43 +00:00
Jermolene
9e9b9a3bf1 Avoid navigating to an empty title
Fixes #1515
2015-02-20 16:19:53 +00:00
Jermolene
1e9e1a1fdc Single quotes should be HTML encoded
As raised here:
https://groups.google.com/d/topic/tiddlywiki/nYvgcImvBt8/discussion
2015-02-20 16:09:38 +00:00
James W. Anderson
d1809f352c explicitly pass through source params
from the image/link widget to the respective static export macros
2015-02-17 07:11:00 +09:00
Jermolene
42d130d49d Revert #1496
The change affects the default display of the story river, reversing
the order of entries.
2015-02-16 19:17:10 +00:00
Jermolene
25442e349e Restore missing whitespace
Accidentally deleted in e1a825f6b9
2015-02-16 17:31:50 +00:00
Jeremy Ruston
e1a825f6b9 Merge pull request #1496 from tobibeer/just-fix-list-filter-no-refactoring
just fixes list filter, no further refactoring
2015-02-16 17:30:54 +00:00
Jermolene
68165af081 Revert #1330 ("implements list iterator variables")
As discussed on the ticket, there is a problem:

https://github.com/Jermolene/TiddlyWiki5/pull/1330#issuecomment-74339195
2015-02-13 22:42:36 +00:00
Jermolene
e386e26b2d Fix problems with $tw.utils.checkVersions()
Previous changes since 5.1.7 broke the documented semantics by no
longer returning true when the versions match. It affected the upgrade
process, making it impossible to upgrade to a later pre-release (ie
where the version numbers in the upgrade.html match those in the file
being upgraded).

Also reviewed and updated the calls to checkVersions.

@felixhayashi I think that this effectively reverts the change you
original submitted. Are you OK with it?
2015-02-12 23:04:20 +00:00
Tobias Beer
4991c4d6dc just fixes list filter, no further refactoring
previously did not correctly handle / match the source but only output
the list as is

replaces https://github.com/Jermolene/TiddlyWiki5/pull/1419
2015-02-11 12:01:57 +01:00
Jermolene
c9ab873ba3 Fixes problem with drag and drop in Safari
Fixes #1415

The problem was that encodeURI() doesn’t encode slashes, which are not
legal in a data URI, although only Safari was failing. We switch to
encodeURIComponent(), which does encode slashes
2015-02-11 10:07:10 +00:00
Jermolene
1924eda8a9 Improvements for #1483
* Rename the global to $tw.dragInProgress for clarity.
* Abort the dragenter so that we don’t get extraneous feedback during
the drag
2015-02-10 23:17:38 +00:00
Jeremy Ruston
1b87d9134b Merge pull request #1483 from tobibeer/592-no-drag-n-drop-to-same-location
prevents drag and drop import in same window
2015-02-10 23:04:45 +00:00
Jermolene
691e5719a4 Avoid unnecessary scrolling at startup
The main fix is removing the fallback navigation to the first tiddler
in story.js. Also required is the fix to the startup behaviour of
zoomin.js.

Fixes #981
2015-02-10 22:40:38 +00:00
Tobias Beer
dc23963525 using $tw.dragging to prevent dnd in same window
Anything missing?
2015-02-10 23:34:37 +01:00
Tobias Beer
30f2c06c9e Revert "prevents drag and drop import in same window"
This reverts commit 09afa8297a.
2015-02-10 23:33:19 +01:00
Astrid Elocson
fd84370d7a Default eachday to the modified field 2015-02-10 16:21:53 +00:00
Tobias Beer
09afa8297a prevents drag and drop import in same window
fixes #592

Introduces and preserves **_origin** field when using drag-and-drop —
bad idea? discard? different field name?

demo http://592.tiddlyspot.com
2015-02-09 23:49:04 +01:00
Jermolene
8dcd080cdd Style fix 2015-02-09 21:46:54 +00:00
Jeremy Ruston
9cf1f8f96b Merge pull request #1476 from tobibeer/fix-tm-delete-tiddler-doesnt-exist
Fix issue deleting non-existent tiddler
2015-02-09 21:46:08 +00:00
Jermolene
d7d560897d Correct case of getindex filter operator 2015-02-09 21:42:25 +00:00
James Welford Anderson
0b68428bc5 add image export path macro 2015-02-10 05:59:56 +09:00
Jermolene
8643278a45 Add support for an integrated plugin library
Fixes #1450

Provides support for an integrated plugin library that can be used to
install plugins from tiddlywiki.com directly to wikis hosted online or
offline. See the Plugins tab of Control Panel.

Todo:

* Error checking(eg libraryserver.js HTTP GET)
* Translatability
* Documentation
** $:/tags/ServerConnection
** savelibrarytiddlers command
2015-02-09 19:04:11 +00:00
Tobias Beer
ca6ab6388a no error when tiddler doesn't exist
Currently **tm-delete-tiddler** throws a red error box:

```
<$button>
<$action-sendmessage $message="tm-delete-tiddler" $param="DoesntExist"/>
delete non-existing
</$button>
```

**Uncaught TypeError: Cannot read property 'fields' of undefined**
2015-02-09 12:28:42 +01:00
Jermolene
aae56f20af Display warning banner when plugins are modified
Fixes #1455

@aelocson have I got the docs right for the new filter?
2015-02-08 19:40:15 +00:00
Jermolene
e18825e897 Fix problem with stringifying missing fields 2015-02-08 18:46:22 +00:00
Jeremy Ruston
68930f333a Merge pull request #1452 from tobibeer/getIndex-filter
getIndex filter
2015-02-07 11:53:07 +00:00
Roma Hicks
687d6350d4 Added class mechanism to checkbox widget. #1463 2015-02-06 01:02:01 -06:00
Tobias Beer
7ed5c3ccfc use extractTiddlerDataItem not parseTextReference 2015-02-04 01:49:31 +01:00
Jeremy Ruston
d340277cb2 Merge pull request #1392 from tobibeer/1387-fix-tiddlyspot-backup-url
Add resolvepath macro
2015-02-03 14:22:48 +00:00
Tobias Beer
32fd03d2f5 rename macro 2015-02-03 15:19:03 +01:00
Tobias Beer
e4bd0c8633 added documentation
temporary documentation demo:
http://goto.bplaced.net/tw5/5.1.7.html#ResolvePath
2015-02-03 15:18:38 +01:00
Tobias Beer
a8a0d0d09e renaming in one go didn't work 2015-02-03 14:50:37 +01:00
Tobias Beer
8746e1ede0 renamed and documentation
* renamed to all lowercase
* added documentation
* added examples
2015-02-03 14:50:16 +01:00
James Welford Anderson
4049affb31 initial pass at static export macros 2015-02-03 07:30:24 +09:00
Jim Lehmer
8cd0c2afcd Make sure all "get" access to $tw.config.fileExtensionInfo goes through a $tw.utils.getFileExtensionInfo helper function that ensures the parameter is cast to lowercase. Fixes #1418. 2015-02-01 12:33:40 -06:00
Tobias Beer
4a05bd10e9 renamed to resolvePath using $tw.utils.resolvePath
adapted ControlPanel / Saving accordingly
2015-01-29 00:38:08 +01:00
Tobias Beer
8b771555a5 initial commit
Is `wiki.parseTextReference()` the appropriate way?
2015-01-28 22:15:52 +01:00
Jeremy Ruston
4cd8466adb Merge pull request #1396 from ng110/master
Allow widget actions to propagate to children
2015-01-28 16:28:11 +00:00
ng110
a7a205a754 Update select.js 2015-01-28 16:00:34 +00:00
Jermolene
050b643948 Sandbox HTML iframes
Otherwise Firefox allows code in html tiddlers to access the main
window:

https://groups.google.com/d/topic/tiddlywiki/NwOI-QER2ig/discussion
2015-01-28 13:50:39 +00:00
Jeremy Ruston
08f6e7f624 Merge pull request #1378 from tobibeer/tag-button-sort-tagging
sort unlisted tags by title
2015-01-27 14:30:36 +00:00
Jeremy Ruston
01cd5302f3 Merge pull request #1389 from aelocson/issue-1346
Fix #1346: Quotes around filter steps
2015-01-27 13:55:12 +00:00
Jeremy Ruston
e87aea6e1f Merge pull request #1413 from tobibeer/1410-is-numeric
fix isNumeric in sortTiddlers in wiki.js
2015-01-26 21:00:26 +00:00
Tobias Beer
e9bdf6f542 trying to show the conditional nicely aligned 2015-01-26 19:58:00 +01:00
Astrid Elocson
8d9f1e7477 Catch syntax errors in regexp filters 2015-01-23 14:32:57 +00:00
Tobias Beer
8a3991a619 extracted number comparision function
and added missing brackets
2015-01-23 14:57:04 +01:00
Tobias Beer
122e16d39c putting the variables in the right scope 2015-01-23 12:24:47 +01:00
Tobias Beer
ad62d9a083 first attempt at fixing wrong sort order in nsort and nsortcs
not working yet, no idea why
2015-01-23 12:06:32 +01:00
Tobias Beer
e504530005 introduce serverpath macro
for now, computes path to backup directory, appending the relative path
of UploadBackupDir to the absolute one from the UploadURL

Also added example for store.php to hint
2015-01-23 11:26:14 +01:00
ng110
16fe9fd5ce Update select.js 2015-01-20 13:02:06 +00:00
ng110
f9c4f6898e Add capability for widgets to trigger all descendant action widgets, rather than just immediate children.
Preserves compatibility with existing invokeActions call in button widget by creating a separate 'invokeActionCall' function to carry out the recursion.  Triggering all descendants permits use of action widgets inside list widgets or macros.  Also makes it possible to add triggering capability to select widget.
2015-01-20 12:34:24 +00:00
Tobias Beer
6006ed0ecf added case-insensitivity using wiki.sortTiddlers 2015-01-17 12:02:54 +01:00
Tobias Beer
a8ab08e8fa sort unlisted tags by title
when the tiddlers are not listed in the list field, sort them by title
nonetheless, otherwise we get a real poor taglist from
**$:/core/ui/TagTemplate**
2015-01-17 11:40:33 +01:00
Astrid Elocson
07c1dcb685 Improve a couple of comments 2015-01-14 20:09:15 +00:00
Astrid Elocson
82c0152e04 Fix #1346: Quotes around filter steps 2015-01-14 20:06:51 +00:00
Jeremy Ruston
d624066e73 Merge pull request #1352 from welford/rendertiddlers
add "noclean" parameter to rendertiddlers
2015-01-11 19:58:05 +00:00
James Welford Anderson
e87dadd61d update docs change var name 2015-01-12 02:55:42 +09:00
Jeremy Ruston
948756cdde Merge pull request #1341 from tobibeer/autolink-system-tiddlers
autolinks system tiddlers
2015-01-11 16:25:53 +00:00
Jermolene
b768dc332b Refactor edition-info handling
Introducing new filters that can be used under Node.js
2015-01-11 15:00:54 +00:00
Jermolene
0fdfbc482c Add nwsaveas and param attributes to browse widget
These are for TiddlyDesktop, and only work under node-webkit
2015-01-11 14:20:34 +00:00
Tobias Beer
b43d4a33d6 simplified regexp
Ok, I think I've got it now. The following matches all...

1. starting with a literal `$:`
2. then any number of character not a whitespace, `<` or  `|`
3. closing with anything that is, again, not a whitespace, `<` or  `|`

Test here...

http://tbdemo.tiddlyspot.com/#Autolink%20System%20Tiddlers
2015-01-11 11:04:02 +01:00
James Welford Anderson
ddb8daa15a add noclean parameter
deletes directory by default
2015-01-11 06:44:56 +09:00
Jermolene
3657bbe920 Switch from addEventListener to onbeforeunload
This makes it possible for TiddlyDesktop to reuse these functions to
handle detecting unsaved changes
2015-01-10 18:08:12 +00:00
Jermolene
280909bb68 Fix crash for macros that return undefined
Fixes #1348
2015-01-10 13:36:43 +00:00
Tobias Beer
795a929187 create syslink.js, revert extlink.js
introduces new parser for system links
2015-01-09 23:51:07 +01:00
Jermolene
31824f043e Remove obsolete parameters 2015-01-09 20:45:16 +00:00
Tobias Beer
8ba3e8973e autolinks system tiddlers
enhanced extlink parser to cover system tiddler links

of course, only those without spaces in their title

didn't want to open up an extra parser for this as extlink has all the
basics
2015-01-08 21:26:48 +01:00
Felix Küppers
3b2882cb48 Update browser.js 2015-01-08 20:18:41 +01:00
Jermolene
b68276e219 Fix for serverside rendering 2015-01-06 18:19:55 +00:00
Jeremy Ruston
ea07b558a3 Merge pull request #1327 from aelocson/railroad-links
Links and transclusions in railroad diagrams
2015-01-06 13:58:27 +00:00
Jermolene
ec829180f4 Coding style clean up for #1330 2015-01-06 13:49:05 +00:00
Tobias Beer
0dd3ad5e38 updated false states — looks more conclusive 2015-01-06 14:40:48 +01:00
Tobias Beer
a1ca53fa9b implements list iterator variables, see #1328
provides <<iterator>>, <<iterator-even>> and <<iterator-last>>
2015-01-06 14:31:20 +01:00
Astrid Elocson
2f42c9fb8d Links and transclusions in railroad diagrams 2015-01-06 01:39:24 +00:00
ng110
7d6769f6fd Update select.js
test change
2015-01-04 12:22:00 +00:00
Jermolene
9f087e7667 Ensure creation fields set for data tiddlers 2014-12-24 10:29:00 +00:00
Jermolene
e41285ae56 Make platform check work on node-webkit 2014-12-23 08:20:22 +00:00
Jermolene
1adfe20508 Fix problem with repeatedly cancelling a draft
Fixes #1266
2014-12-22 08:40:11 +00:00
Jermolene
230066eeae Incorporate stickytitles theme into snow white theme 2014-12-21 16:04:42 +00:00
Jermolene
2abc5dee78 Improve buffer allocation for copying files in utils/filesystem.js 2014-12-18 21:08:14 +00:00
Jermolene
d2c4920ba4 Refine node vs. browser behaviour
Now we’re using TiddlyWiki as the core of TiddlyDesktop we need more
granular control of the platform specific code.
2014-12-18 19:52:15 +00:00
Jeremy Ruston
182c2428ca Merge pull request #1238 from Drakor/fixDownloadSavingHandler
Filename will now be set to "tiddlywiki.html" when path does not contain...
2014-12-16 14:03:17 +00:00
Jermolene
86329f5daa Remove unused local variables 2014-12-16 08:35:28 +00:00
Andreas Hahn
513e1c8cbb Filename will now be set to "tiddlywiki.html" when path does not contain a filename. 2014-12-16 00:53:20 +01:00
Jermolene
0778ea6756 Some tests and style updates for #1229
@tobibeer I simplified the handling of matched strings a little.
2014-12-15 17:50:24 +00:00
Tobias Beer
609cb1fcbd fixes #1010
safe / sequential replacing of formatstrings for date conversions

please review & test
2014-12-13 13:30:39 +01:00
Jermolene
42dba113cc Adjust field and has filter handling of missing tiddlers
Now `[!field:name[value]]` and `[!has[name]` will treat missing
tiddlers as not having the specified field
2014-12-11 17:49:17 +00:00
Jermolene
51db48acc9 Fix checking for non-empty folders in initcommand 2014-12-10 22:14:27 +00:00
Jermolene
755693766a Removing debugging statements from popup mechanism 2014-12-10 17:09:14 +00:00
Jermolene
0e62d8f648 Fix problem with tm-add-field for existing fields
Fixes #1197
2014-12-05 10:20:25 +00:00
Jermolene
2689e2861b Revert to using fieldmangler for adding fields
In 5.1.5 we switched to using `<$action-setfield>` instead of
`<$fieldmangler>`. The problem was that in the process we lost the
validation of field names, making it possible to create fields with
illegal names

Fixes #1186
2014-12-04 09:39:14 +00:00
Jermolene
5154a25ab9 Add tooltip to browse widget
Fixes #1179
2014-12-02 19:16:38 +00:00
Jermolene
a8ee6c7b7c Add experimental system tiddler browser 2014-12-02 15:25:27 +00:00
Jermolene
56a0809768 Fix problem with edit-bitmap widget static rendering
The ‘introduction’ edition contains an edit-bitmap widget that was
failing under Node.js because the fake dom doesn’t support canvas.
2014-11-27 23:03:27 +00:00
Jermolene
962cdf500a Fix link dragging to text editors
We were just adding double square brackets if the title contains
spaces. We should be adding them if the title is not a valid wikilink.
2014-11-26 11:13:05 +00:00
Jermolene
1600beb193 Move the wikilink regexps into global config 2014-11-26 11:12:25 +00:00
Jeremy Ruston
92b957f6f8 Merge pull request #1118 from welford/hook
Add hooks mechanism and th-opening-default-tiddlers-list hook
2014-11-25 19:25:00 +00:00
Jermolene
996eecc79a Coding style cleanup 2014-11-25 13:49:22 +00:00
Jeremy Ruston
6f0d581d72 Merge pull request #1141 from tobibeer/auto-focus-title-on-edit
#371 focus title field on edit
2014-11-25 13:43:08 +00:00
Tobias Beer
c0834583a0 #371 focus title field on edit
* enhanced edit-text widget with a "focus=true" attribute
* modified title template to make it focus and select by default
2014-11-25 12:39:08 +01:00
Skeeve
79e428757b allow empty state tiddlers and missing state attributes act as missing state tiddlers
As described here: https://groups.google.com/d/msg/tiddlywikidev/ODJhIw6-UjQ/3ZKrlA4B810J

I think it would be a good small enhancement as the reveal widget can now be used in previously impossible ways.
2014-11-24 07:38:58 +01:00
Jermolene
84bebb65b7 Fix advanced filter search clear button
Thanks @BramChen
2014-11-23 16:02:08 +00:00
James Welford Anderson
90caf5bf42 Add hooks mechanism and th-opening-default-tiddlers-list hook
see: https://github.com/Jermolene/TiddlyWiki5/issues/1064
2014-11-23 01:11:56 +09:00
Jermolene
d6c5e51501 Fix popup handling in Cecily and Zoomin view
Cecily and Zoomin story views use a document.body that is smaller than
the document.documentElement. We were just clearing the popups on
clicks on the document.body Clicks on the document element (ie, on the
background of the page) were not being trapped, meaning that you
couldn’t dismiss a popup.
2014-11-22 10:19:03 +00:00
Jermolene
1f82ebc7c3 Fix problem with parsing text references 2014-11-21 18:16:22 +00:00
Jermolene
b882a0dff1 Fixes to make nested popups work
Thus making the export button a lot more useful
2014-11-21 17:07:03 +00:00
Jermolene
931d47e50c Fix problem with cloning tiddlers
We were ignoring the tags on the template tiddler.

Fixes #1097
2014-11-18 14:13:34 +00:00
Jermolene
93cb03eeab Allow whitespace after \end in macro definitions
Fixes #1090
2014-11-18 10:26:20 +00:00
Jermolene
6c6fda498f Fix bug in action-setfield widget 2014-11-17 16:26:18 +00:00
Jermolene
a9eab1b8fc Improve import logging 2014-11-14 10:33:41 +00:00
Jermolene
bd211ea082 Extend set variable widget to work with filters 2014-11-13 21:39:38 +00:00
Jermolene
4bf6fe7fe9 Fix JSON deserialiser to allow all fields
Previously we were filtering to a small set of known fields (which was
implemented at the beginning of TW5 as part of the build process for
TW2).
2014-11-13 16:04:30 +00:00
Jermolene
d1bbe7253c Remove flicker when resizing textareas
The `EditTextWidget.prototype.fixHeight()` function was defering its
work with `nextTick()`, which led to flickering on all browsers when
typing triggers a resize.
2014-11-13 11:19:21 +00:00
Jermolene
e69e2c1c91 Require confirmation before deleting non-empty new tiddlers 2014-11-11 11:54:46 +00:00
Jermolene
78735cde96 Refactor dropzone
I want to start figuring out #686
2014-11-11 11:44:00 +00:00
Jermolene
6fc5c70ace First pass at export button
New export button appears as a page control toolbar button, a tiddler
toolbar button, and a button in the advanced search filter tab.

Initially supports exporting as static HTML, CSV, JSON or `.tid` file.

Still to do:

* Made the exporter descriptions translatable
* Hide the export button by default
* User docs
* Cleaning up the existing templates (eg,
`$:/core/templates/alltiddlers.template.html` should work by
transcluding `$:/core/templates/exporters/Static`)
* Docs for the new macros `exportButton`, `csvtiddlers` and
`jsontiddlers`

Issues:

* OS X Numbers refuses to open CSV files that have been generated in
Chrome, because it thinks they’ve been downloaded from the Internet.
Firefox works OK
* The export button won’t work within the tiddler info panel, or from
the *more* popup (this is because we don’t support nested popups)
2014-11-10 20:59:15 +00:00
Jermolene
b520efdeb8 Update savers to specify variables, including filename
Now the `tm-download-file` and `tm-save-file` messages use the hashmap
to specify variables to be applied when rendering the tiddler.

We also add a convention that the variable “filename” is used to
specify a filename for the download.
2014-11-10 19:54:19 +00:00
Jermolene
3035badf14 Fix problem with done button not saving unchanged tiddlers 2014-11-10 12:56:33 +00:00
Jermolene
145713e766 Don't confirm deleting drafts with no original 2014-11-10 08:49:20 +00:00
Jermolene
1dfa6f369b Smarter cancel edit behaviour
If we cancel editing a tiddler that doesn’t exist, then we no longer
show the resulting missing tiddler.
2014-11-09 21:47:48 +00:00
Jermolene
3b08b5e9dd More resilience to Tiddler.isEqual() 2014-11-09 21:47:00 +00:00
Jermolene
cea0b74265 Improve detection of modified drafts
If the target tiddler of the draft is missing (as happens after
clicking “new tiddler”), then we count the draft as modified if the
text is not empty.

Also we count the the draft as modified if the draft title has been
changed
2014-11-09 21:46:41 +00:00
Jermolene
5ded01f2c6 Fix problem with blank values in action-setfield widget
One manifestation of this problem was that it wasn’t possible to use
the edit template to add a field without specifying a value
2014-11-09 17:15:40 +00:00
Jermolene
9bbd599f5c Refine refreshing of tiddler widget
We need to refresh if there is a change in the state that we copy to
variables.
2014-11-09 17:10:18 +00:00
Jermolene
d2ab7c5986 More action-deletetiddler fixes 2014-11-09 16:53:33 +00:00
Jermolene
8c67e11365 Fixes to action-deletetiddler widget 2014-11-09 16:45:14 +00:00
Jermolene
2c5d241d96 Improve error message for missing commands 2014-11-09 14:49:33 +00:00
Jermolene
853f5fd064 Add some logging for file import/paste 2014-11-08 08:37:08 +00:00
Jermolene
ec4beb7f0f Fix bug in navigator 2014-11-07 21:15:52 +00:00
Jermolene
91a7c39791 Update modal handling to allow variables to be passed
@felixhayashi I’m afraid I haven’t used your pull request as there were
a few details that I wanted to do differently. The main change is that
these changes allow both a param string and hashmap to be specified.
2014-11-07 14:54:46 +00:00
Jermolene
c7971d3da3 Update new tiddler message handling to accept title and fields
Now you can create a new tiddler with both a template and additional
specified fields.
2014-11-07 14:53:37 +00:00
Jermolene
d93c19daaa Improve the format of widget message parameters
In 5.1.3 we introduced the idea that the `event.param` variable could
optionally be a hashmap, allowing multiple values to be passed with the
message.

This change moves the hashmap to a separate `event.paramObject`
variable, allowing us to pass both a hashmap and a param string.
2014-11-07 14:52:32 +00:00
Jermolene
8260d000be Extend search filter to allow field to be specified 2014-11-06 20:56:32 +00:00
Jermolene
f1a2d8c2b9 Fix typo in action-setfield widget 2014-11-06 19:35:50 +00:00
Jermolene
12aec57086 Merge action-setfield and action-setfields widgets
Less confusion, hopefully.
2014-11-06 19:27:14 +00:00
Jermolene
92f69d44bf Use action-deletefield widget in edit template fields editor
On the way to deprecating the field mangler widget
2014-11-06 18:32:11 +00:00
Jermolene
efeeab45f8 Simplify action-setfield widget 2014-11-06 18:23:59 +00:00
Jermolene
0a2a5184c4 Add action-deletetiddler widget 2014-11-06 18:23:48 +00:00
Jermolene
741f853986 Add action-setfield widget 2014-11-06 18:06:47 +00:00