mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2024-11-10 11:59:58 +00:00
Merge branch 'master' into cascade-filter-run-prefix
This commit is contained in:
commit
52907b98f9
@ -52,7 +52,13 @@ CodeBlockWidget.prototype.execute = function() {
|
||||
Selectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering
|
||||
*/
|
||||
CodeBlockWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return false;
|
||||
var changedAttributes = this.computeAttributes();
|
||||
if(changedAttributes.code || changedAttributes.language) {
|
||||
this.refreshSelf();
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
exports.codeblock = CodeBlockWidget;
|
||||
|
12
editions/tw5.com/tiddlers/MessageHandlerWidgets.tid
Normal file
12
editions/tw5.com/tiddlers/MessageHandlerWidgets.tid
Normal file
@ -0,0 +1,12 @@
|
||||
created: 20211031174746965
|
||||
modified: 20211031181800684
|
||||
title: MessageHandlerWidgets
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
Message handler widgets are those widgets which can react to one or more [[widget messages|Messages]].
|
||||
|
||||
<<.tip "Widget messages are similar to low-level DOM events, except they are higher-level and specific to TiddlyWiki. To handle DOM events see the EventCatcherWidget">>
|
||||
|
||||
The following message handler widgets are provided:
|
||||
|
||||
<<list-links "[tag[MessageHandlerWidgets]]">>
|
12
editions/tw5.com/tiddlers/TriggeringWidgets.tid
Normal file
12
editions/tw5.com/tiddlers/TriggeringWidgets.tid
Normal file
@ -0,0 +1,12 @@
|
||||
created: 20211031172716741
|
||||
modified: 20211031174029381
|
||||
title: TriggeringWidgets
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
Triggering widgets are a type of widget which can trigger ActionWidgets. Typically these widgets (such as the ButtonWidget) will trigger actions based on interaction from the user.
|
||||
|
||||
The following triggering widgets are provided:
|
||||
|
||||
<<list-links "[tag[TriggeringWidgets]]">>
|
||||
|
||||
See ActionWidgets for more information and examples of how TriggeringWidgets and ActionWidgets work together.
|
@ -5,7 +5,7 @@ modified: 20210506130322593
|
||||
op-input: ignored
|
||||
op-output: the title of each available deserializer
|
||||
op-parameter: none
|
||||
tags: [[Filter Operators]] [[Special Operators]]
|
||||
tags: [[Filter Operators]] [[Special Operators]] [[Selection Constructors]]
|
||||
title: deserializers Operator
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -6,7 +6,7 @@ op-output: the titles stored as a [[title list|Title List]] in each input title
|
||||
op-purpose: select titles by interpreting each input title as a [[title list|Title List]]
|
||||
op-suffix: `dedupe` (the default) to remove duplicates, `raw` to leave duplicates untouched
|
||||
op-suffix-name: D
|
||||
tags: [[Filter Operators]] [[String Operators]] [[Selection Constructors]]
|
||||
tags: [[Filter Operators]] [[String Operators]]
|
||||
title: enlist-input Operator
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -18,4 +18,4 @@ Cycle through a list of values to add as a tag, in reverse order:
|
||||
|
||||
<<.using-days-of-week>>
|
||||
<<.operator-example 1 """[list[Days of the Week]first[]] +[cycle{Days of the Week!!list}]""">>
|
||||
<<.operator-example 1 """[list[Days of the Week]first[]] +[cycle{Days of the Week!!list},[2]]""">>
|
||||
<<.operator-example 2 """[list[Days of the Week]first[]] +[cycle{Days of the Week!!list},[2]]""">>
|
||||
|
@ -11,4 +11,4 @@ Logarithm of `100` with base `10`:
|
||||
<<.operator-example 2 "[[100]log[10]]">>
|
||||
|
||||
Natural logarithm of 10 (base `e`), equivalent to `ln(10)` in mathematics:
|
||||
<<.operator-example 2 "[[10]log[]]">>
|
||||
<<.operator-example 3 "[[10]log[]]">>
|
||||
|
@ -5,4 +5,4 @@ title: match Operator (Examples)
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.operator-example 1 "a b c +[match[b]]">>
|
||||
<<.operator-example 1 "[match[HelloThere]]">>
|
||||
<<.operator-example 2 "[match[HelloThere]]">>
|
||||
|
@ -1,8 +1,30 @@
|
||||
created: 20181031175129475
|
||||
modified: 20181031175129475
|
||||
modified: 20211030223407188
|
||||
tags: [[subfilter Operator]] [[Operator Examples]]
|
||||
title: subfilter Operator (Examples)
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.operator-example 1 "[subfilter[one two three]addsuffix[!]]">>
|
||||
<<.operator-example 2 "[subfilter{$:/StoryList!!list}]">>
|
||||
\define recent-mods() [has[modified]!sort[modified]limit[5]]
|
||||
\define display-variable(name)
|
||||
''<$text text=<<__name__>>/>'': <code><$text text={{{ [<__name__>getvariable[]] }}}/></code>
|
||||
\end
|
||||
|
||||
Literal filter operands can be used, but such cases are better rewritten without using <<.op subfilter>>:
|
||||
<<.operator-example 1 "[subfilter[one two three]addsuffix[!]]" "same as `one two three +[addsuffix[!]]`">>
|
||||
|
||||
The <<.op subfilter>> operator can be used to dynamically define parts of a [[filter run|Filter Run]]. This is useful for sharing a common pieces of a filter across multiple filters.
|
||||
|
||||
For example, this variable:
|
||||
|
||||
* <<display-variable recent-mods>>
|
||||
|
||||
can be used in one filter like this:
|
||||
|
||||
<<.operator-example 2 "[tag[Filter Operators]subfilter<recent-mods>addsuffix[!]]" "same as `[tag[Filter Operators]has[modified]!sort[modified]limit[5]addsuffix[!]]`">>
|
||||
|
||||
and in another similar filter like this:
|
||||
<<.operator-example 3 "[tag[ActionWidgets]subfilter<recent-mods>addprefix[!]]">>
|
||||
|
||||
Variables are not the only way to define dynamic subfilters. [[Text references|TextReference]] can be used to load a subfilter from a tiddler field (see also [[Filter Parameter]]):
|
||||
<<.operator-example 4 "[subfilter{$:/StoryList!!list}limit[5]]">>
|
||||
<<.operator-example 5 "[subfilter{$:/StoryList!!list}subfilter<recent-mods>]">>
|
||||
|
@ -1,6 +1,6 @@
|
||||
created: 20171221184734665
|
||||
modified: 20210907170339891
|
||||
tags: [[Filter Operators]] [[Negatable Operators]]
|
||||
tags: [[Filter Operators]] [[Negatable Operators]] [[Selection Constructors]]
|
||||
title: range Operator
|
||||
type: text/vnd.tiddlywiki
|
||||
caption: range
|
||||
|
@ -1,6 +1,6 @@
|
||||
created: 20150126141718000
|
||||
modified: 20150203191420000
|
||||
tags: [[Filter Operators]] [[Special Operators]]
|
||||
tags: [[Filter Operators]] [[Special Operators]] [[Selection Constructors]]
|
||||
title: storyviews Operator
|
||||
type: text/vnd.tiddlywiki
|
||||
caption: storyviews
|
||||
|
@ -1,6 +1,6 @@
|
||||
caption: subfilter
|
||||
created: 20181031175129475
|
||||
modified: 20181031175129475
|
||||
modified: 20211030223407188
|
||||
op-input: a [[selection of titles|Title Selection]] passed as input to the subfilter
|
||||
op-neg-input: a [[selection of titles|Title Selection]] passed as input to the subfilter
|
||||
op-neg-output: those input titles that are <<.em not>> returned from the subfilter <<.place S>>
|
||||
@ -12,7 +12,7 @@ tags: [[Filter Operators]] [[Field Operators]] [[Selection Constructors]] [[Nega
|
||||
title: subfilter Operator
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.from-version "5.1.18">> Note that the subfilter operator was introduced in version 5.1.18 and is not available in earlier versions.
|
||||
<<.from-version "5.1.18">> Note that the <<.op subfilter>> operator was introduced in version 5.1.18 and is not available in earlier versions.
|
||||
|
||||
<<.tip " Literal filter operands cannot contain square brackets but you can work around the issue by using a variable:">>
|
||||
|
||||
@ -24,4 +24,6 @@ type: text/vnd.tiddlywiki
|
||||
|
||||
<<.tip "Compare with the similar [[filter|filter Operator]] operator which runs a subfilter against each title, returning those titles that return a non-empty list (and discards the results of the subfilter)">>
|
||||
|
||||
The <<.op subfilter>> operator will act as a [[constructor|Selection Constructors]] whenever the filter defined by its operand is a [[constructor|Selection Constructors]]. Otherwise, it will act as a [[modifier|Selection Constructors]].
|
||||
|
||||
<<.operator-examples "subfilter">>
|
||||
|
@ -1,5 +1,5 @@
|
||||
created: 20140617211749290
|
||||
modified: 20140912141809800
|
||||
modified: 20211104172343220
|
||||
tags: [[TiddlyWiki on Node.js]]
|
||||
title: Environment Variables on Node.js
|
||||
type: text/vnd.tiddlywiki
|
||||
@ -11,7 +11,9 @@ type: text/vnd.tiddlywiki
|
||||
* `TIDDLYWIKI_LANGUAGE_PATH` - Search path for languages
|
||||
* `TIDDLYWIKI_EDITION_PATH` - Search path for editions (used by the InitCommand)
|
||||
|
||||
''Note'': The delimiter may vary between operating systems. While on Windows a semicolon `;` is used, Linux implements a colon `:`.
|
||||
''Note 1'': The delimiter may vary between operating systems. While on Windows a semicolon `;` is used, Linux implements a colon `:`.
|
||||
|
||||
''Note 2'': On Linux systems, it may be necessary to //''export''// the variable as well as to define it.
|
||||
|
||||
The additional paths should each point to folders structured like the equivalent directories in the TiddlyWiki5 GitHub repository: the plugin, theme and language directories contain `publisher/pluginname/<files>` while the edition directories contain `editionname/<files>`
|
||||
|
||||
|
@ -1,10 +1,10 @@
|
||||
created: 20141008134425548
|
||||
modified: 20210630163127249
|
||||
modified: 20211031172913375
|
||||
tags: Widgets
|
||||
title: ActionWidgets
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
Action widgets are a special type of widget that have no visual appearance but perform an action when triggered (such as sending a message, navigating to a tiddler, or changing the value of a tiddler). Action widgets are used in association with other widgets that trigger those actions (for example, the ButtonWidget).
|
||||
Action widgets are a special type of widget that have no visual appearance but perform an action when triggered (such as sending a message, navigating to a tiddler, or changing the value of a tiddler). Action widgets are used in association with other widgets that [[trigger those actions|TriggeringWidgets]] (for example, the ButtonWidget).
|
||||
|
||||
The following action widgets are provided:
|
||||
|
||||
@ -17,7 +17,7 @@ There are two ways to use action widgets:
|
||||
|
||||
!! Using action string attributes
|
||||
|
||||
The action widgets are passed as a string to the `actions` attribute of the triggering widget. Usually, it is more convenient to use a macro to assign the action widgets to a variable. For example, here is a button that triggers two actions of sending different messages:
|
||||
The action widgets are passed as a string to the `actions` attribute of the [[triggering widget|TriggeringWidgets]]. Usually, it is more convenient to use a macro to assign the action widgets to a variable. For example, here is a button that triggers two actions of sending different messages:
|
||||
|
||||
```
|
||||
\define my-actions()
|
||||
@ -32,7 +32,7 @@ Click me!
|
||||
|
||||
!! Directly embedding action widgets
|
||||
|
||||
The action widgets need not be immediate children of their triggering widget, but they must be descendents of it. The actions are performed in sequence. Here is the above example rewritten to use embedding:
|
||||
The action widgets need not be immediate children of their [[triggering widget|TriggeringWidgets]], but they must be descendents of it. The actions are performed in sequence. Here is the above example rewritten to use embedding:
|
||||
|
||||
```
|
||||
<$button>
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: button
|
||||
created: 20131024141900000
|
||||
modified: 20201108183908170
|
||||
tags: Widgets
|
||||
modified: 20211009121239795
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: ButtonWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: checkbox
|
||||
created: 20131024141900000
|
||||
modified: 20201109090732190
|
||||
tags: Widgets
|
||||
modified: 20211009121239806
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: CheckboxWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: draggable
|
||||
created: 20170406081938627
|
||||
modified: 20210912141544224
|
||||
tags: Widgets
|
||||
modified: 20211009122105437
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: DraggableWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: droppable
|
||||
created: 20170406082820317
|
||||
modified: 20200317142604572
|
||||
tags: Widgets
|
||||
modified: 20211009122023265
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: DroppableWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: dropzone
|
||||
created: 20131024141900000
|
||||
modified: 20210506115809131
|
||||
tags: Widgets
|
||||
modified: 20211009122205481
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: DropzoneWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: edit-text
|
||||
created: 20131024141900000
|
||||
modified: 20211021091910134
|
||||
tags: Widgets
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: EditTextWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: edit
|
||||
created: 20131024141900000
|
||||
modified: 20201130184647904
|
||||
tags: Widgets
|
||||
modified: 20211009121634055
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: EditWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
created: 20201123113532200
|
||||
modified: 20210805083352068
|
||||
tags: Widgets
|
||||
modified: 20211031180336257
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: EventCatcherWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,9 +1,9 @@
|
||||
caption: fieldmangler
|
||||
created: 20131024141900000
|
||||
modified: 20150220161229000
|
||||
tags: Widgets
|
||||
modified: 20211009122821085
|
||||
tags: Widgets MessageHandlerWidgets
|
||||
title: FieldManglerWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
caption: fieldmangler
|
||||
|
||||
! Introduction
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: keyboard
|
||||
created: 20140302192136805
|
||||
modified: 20210612101618855
|
||||
tags: Widgets
|
||||
modified: 20211009121239821
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: KeyboardWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: linkcatcher
|
||||
created: 20131024141900000
|
||||
modified: 20170707111536556
|
||||
tags: Widgets
|
||||
modified: 20211009122821108
|
||||
tags: Widgets MessageHandlerWidgets TriggeringWidgets
|
||||
title: LinkCatcherWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
created: 20210309133636211
|
||||
modified: 20210711193113104
|
||||
tags: Widgets
|
||||
modified: 20211009122821123
|
||||
tags: Widgets MessageHandlerWidgets TriggeringWidgets
|
||||
title: MessageCatcherWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: navigator
|
||||
created: 20131024141900000
|
||||
modified: 20170629074415261
|
||||
tags: Widgets
|
||||
modified: 20211009122821140
|
||||
tags: Widgets MessageHandlerWidgets
|
||||
title: NavigatorWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: radio
|
||||
created: 20131212195353929
|
||||
modified: 20210307154753471
|
||||
tags: Widgets
|
||||
modified: 20211009121654734
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: RadioWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: range
|
||||
created: 20171102134825376
|
||||
modified: 20201130193635857
|
||||
tags: Widgets
|
||||
modified: 20211009121606405
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: RangeWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
caption: select
|
||||
created: 20131024141900000
|
||||
modified: 20190304122040876
|
||||
tags: Widgets
|
||||
modified: 20211009121812691
|
||||
tags: Widgets TriggeringWidgets
|
||||
title: SelectWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user