mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2026-01-26 21:03:42 +00:00
Compare commits
9 Commits
jsonset-op
...
internatio
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
56e254d8a3 | ||
|
|
3855a9f013 | ||
|
|
a7bd134c35 | ||
|
|
12f42ad62f | ||
|
|
23b75bbc5d | ||
|
|
3fb71e2553 | ||
|
|
9ee1ef7e23 | ||
|
|
bd99cf3385 | ||
|
|
697dc8db4c |
@@ -5,7 +5,7 @@
|
||||
# Default to the current version number for building the plugin library
|
||||
|
||||
if [ -z "$TW5_BUILD_VERSION" ]; then
|
||||
TW5_BUILD_VERSION=v5.3.2
|
||||
TW5_BUILD_VERSION=v5.3.1
|
||||
fi
|
||||
|
||||
echo "Using TW5_BUILD_VERSION as [$TW5_BUILD_VERSION]"
|
||||
@@ -104,15 +104,13 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
--build favicon static index \
|
||||
|| exit 1
|
||||
|
||||
# /empty.html Empty
|
||||
# /empty.hta For Internet Explorer
|
||||
# /empty-external-core.html External core empty
|
||||
# /tiddlywikicore-<version>.js Core plugin javascript
|
||||
# /empty.html Empty
|
||||
# /empty.hta For Internet Explorer
|
||||
node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/empty \
|
||||
--verbose \
|
||||
--output $TW5_BUILD_OUTPUT \
|
||||
--build empty emptyexternalcore \
|
||||
--build empty \
|
||||
|| exit 1
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
title: $:/language/Help/server
|
||||
description: (deprecated: see 'listen' command) Provides an HTTP server interface to TiddlyWiki
|
||||
description: Provides an HTTP server interface to TiddlyWiki (deprecated in favour of the new listen command)
|
||||
|
||||
Legacy command to serve a wiki over HTTP.
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@ function FramedEngine(options) {
|
||||
this.domNode.value = this.value;
|
||||
}
|
||||
// Set the attributes
|
||||
if(this.widget.editType && this.widget.editTag !== "textarea") {
|
||||
if(this.widget.editType) {
|
||||
this.domNode.setAttribute("type",this.widget.editType);
|
||||
}
|
||||
if(this.widget.editPlaceholder) {
|
||||
|
||||
@@ -34,7 +34,7 @@ function SimpleEngine(options) {
|
||||
this.domNode.value = this.value;
|
||||
}
|
||||
// Set the attributes
|
||||
if(this.widget.editType && this.widget.editTag !== "textarea") {
|
||||
if(this.widget.editType) {
|
||||
this.domNode.setAttribute("type",this.widget.editType);
|
||||
}
|
||||
if(this.widget.editPlaceholder) {
|
||||
|
||||
@@ -68,54 +68,6 @@ exports["jsontype"] = function(source,operator,options) {
|
||||
return results;
|
||||
};
|
||||
|
||||
exports["jsonset"] = function(source,operator,options) {
|
||||
var suffixes = operator.suffixes || [],
|
||||
type = suffixes[0] && suffixes[0][0],
|
||||
indexes = operator.operands.slice(0,-1),
|
||||
value = operator.operands[operator.operands.length - 1],
|
||||
results = [];
|
||||
if(operator.operands.length === 1 && operator.operands[0] === "") {
|
||||
value = undefined; // Prevents the value from being assigned
|
||||
}
|
||||
switch(type) {
|
||||
case "string":
|
||||
// Use value unchanged
|
||||
break;
|
||||
case "boolean":
|
||||
value = (value === "true" ? true : (value === "false" ? false : undefined));
|
||||
break;
|
||||
case "number":
|
||||
value = $tw.utils.parseNumber(value);
|
||||
break;
|
||||
case "array":
|
||||
indexes = operator.operands;
|
||||
value = [];
|
||||
break;
|
||||
case "object":
|
||||
indexes = operator.operands;
|
||||
value = {};
|
||||
break;
|
||||
case "null":
|
||||
indexes = operator.operands;
|
||||
value = null;
|
||||
break;
|
||||
case "json":
|
||||
value = $tw.utils.parseJSONSafe(value,function() {return undefined;});
|
||||
break;
|
||||
default:
|
||||
// Use value unchanged
|
||||
break;
|
||||
}
|
||||
source(function(tiddler,title) {
|
||||
var data = $tw.utils.parseJSONSafe(title,title);
|
||||
if(data) {
|
||||
data = setDataItem(data,indexes,value);
|
||||
results.push(JSON.stringify(data));
|
||||
}
|
||||
});
|
||||
return results;
|
||||
};
|
||||
|
||||
/*
|
||||
Given a JSON data structure and an array of index strings, return an array of the string representation of the values at the end of the index chain, or "undefined" if any of the index strings are invalid
|
||||
*/
|
||||
@@ -234,34 +186,5 @@ function getDataItem(data,indexes) {
|
||||
return item;
|
||||
}
|
||||
|
||||
/*
|
||||
Given a JSON data structure, an array of index strings and a value, return the data structure with the value added at the end of the index chain. If any of the index strings are invalid then the JSON data structure is returned unmodified. If the root item is targetted then a different data object will be returned
|
||||
*/
|
||||
function setDataItem(data,indexes,value) {
|
||||
// Ignore attempts to assign undefined
|
||||
if(value === undefined) {
|
||||
return data;
|
||||
}
|
||||
// Check for the root item
|
||||
if(indexes.length === 0 || (indexes.length === 1 && indexes[0] === "")) {
|
||||
return value;
|
||||
}
|
||||
// Traverse the JSON data structure using the index chain
|
||||
var current = data;
|
||||
for(var i = 0; i < indexes.length - 1; i++) {
|
||||
var index = indexes[i];
|
||||
if($tw.utils.hop(current,index)) {
|
||||
current = current[index];
|
||||
} else {
|
||||
// Return the original JSON data structure if any of the index strings are invalid
|
||||
return data;
|
||||
}
|
||||
}
|
||||
// Add the value to the end of the index chain
|
||||
var lastIndex = indexes[indexes.length - 1];
|
||||
current[lastIndex] = value;
|
||||
return data;
|
||||
}
|
||||
|
||||
})();
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
title: $:/config/OfficialPluginLibrary
|
||||
tags: $:/tags/PluginLibrary
|
||||
url: https://tiddlywiki.com/library/v5.3.2/index.html
|
||||
url: https://tiddlywiki.com/library/v5.3.1/index.html
|
||||
caption: {{$:/language/OfficialPluginLibrary}}
|
||||
|
||||
{{$:/language/OfficialPluginLibrary/Hint}}
|
||||
|
||||
@@ -10,7 +10,7 @@ color:$(foregroundColor)$;
|
||||
<!-- This has no whitespace trim to avoid modifying $actions$. Closing tags omitted for brevity. -->
|
||||
\define tag-pill-inner(tag,icon,colour,fallbackTarget,colourA,colourB,element-tag,element-attributes,actions)
|
||||
\whitespace trim
|
||||
<$let
|
||||
<$vars
|
||||
foregroundColor=<<contrastcolour target:"""$colour$""" fallbackTarget:"""$fallbackTarget$""" colourA:"""$colourA$""" colourB:"""$colourB$""">>
|
||||
backgroundColor=<<__colour__>>
|
||||
>
|
||||
@@ -23,7 +23,6 @@ color:$(foregroundColor)$;
|
||||
<$transclude tiddler=<<__icon__>>/>
|
||||
<$view tiddler=<<__tag__>> field="title" format="text" />
|
||||
</$element-tag$>
|
||||
</$let>
|
||||
\end
|
||||
|
||||
\define tag-pill-body(tag,icon,colour,palette,element-tag,element-attributes,actions)
|
||||
|
||||
@@ -12,9 +12,6 @@
|
||||
"empty": [
|
||||
"--render","$:/core/save/all","empty.html","text/plain",
|
||||
"--render","$:/core/save/all","empty.hta","text/plain"],
|
||||
"emptyexternalcore": [
|
||||
"--render","$:/core/save/offline-external-js","empty-external-core.html","text/plain",
|
||||
"--render","$:/core/templates/tiddlywiki5.js","[[tiddlywikicore-]addsuffix<version>addsuffix[.js]]","text/plain"],
|
||||
"externalimages": [
|
||||
"--savetiddlers","[is[image]]","images",
|
||||
"--setfield","[is[image]]","_canonical_uri","$:/core/templates/canonical-uri-external-image","text/plain",
|
||||
@@ -23,7 +20,7 @@
|
||||
"static": [
|
||||
"--render","$:/core/templates/static.template.html","static.html","text/plain",
|
||||
"--render","$:/core/templates/alltiddlers.template.html","alltiddlers.html","text/plain",
|
||||
"--render","[!is[system]]","[encodeuricomponent[]addprefix[static/]addsuffix[.html]]","text/plain",
|
||||
"--render","[!is[system]]","[encodeuricomponent[]addprefix[static/]addsuffix[.html]]","text/plain",
|
||||
"--render","$:/core/templates/static.template.css","static/static.css","text/plain"]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -17,8 +17,8 @@
|
||||
],
|
||||
"library": [
|
||||
"--makelibrary","$:/UpgradeLibrary",
|
||||
"--savelibrarytiddlers","$:/UpgradeLibrary","[prefix[$:/]] -[[$:/plugins/tiddlywiki/upgrade]] -[[$:/plugins/tiddlywiki/translators]] -[[$:/plugins/tiddlywiki/pluginlibrary]] -[[$:/plugins/tiddlywiki/jasmine]]","recipes/library/tiddlers/","$:/UpgradeLibrary/List",
|
||||
"--savetiddler","$:/UpgradeLibrary/List","recipes/library/tiddlers.json",
|
||||
"--savelibrarytiddlers","$:/UpgradeLibrary","[prefix[$:/]] -[[$:/plugins/tiddlywiki/upgrade]] -[[$:/plugins/tiddlywiki/translators]] -[[$:/plugins/tiddlywiki/pluginlibrary]] -[[$:/plugins/tiddlywiki/jasmine]]","recipes/library/tiddlers/","$:/UpgradeLibrary/List",
|
||||
"--savetiddler","$:/UpgradeLibrary/List","recipes/library/tiddlers.json",
|
||||
"--rendertiddler","$:/plugins/tiddlywiki/pluginlibrary/library.template.html","index.html","text/plain"]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
title: $:/config/LocalPluginLibrary
|
||||
tags: $:/tags/PluginLibrary
|
||||
url: http://127.0.0.1:8080/prerelease/library/v5.3.2/index.html
|
||||
url: http://127.0.0.1:8080/prerelease/library/v5.3.1/index.html
|
||||
caption: {{$:/language/OfficialPluginLibrary}} (Prerelease Local)
|
||||
|
||||
A locally installed version of the official ~TiddlyWiki plugin library at tiddlywiki.com for testing and debugging. //Requires a local web server to share the library//
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
title: $:/config/OfficialPluginLibrary
|
||||
tags: $:/tags/PluginLibrary
|
||||
url: https://tiddlywiki.com/prerelease/library/v5.3.2/index.html
|
||||
url: https://tiddlywiki.com/prerelease/library/v5.3.1/index.html
|
||||
caption: {{$:/language/OfficialPluginLibrary}} (Prerelease)
|
||||
|
||||
The prerelease version of the official ~TiddlyWiki plugin library at tiddlywiki.com. Plugins, themes and language packs are maintained by the core team.
|
||||
|
||||
@@ -20,4 +20,4 @@
|
||||
"favicon": [
|
||||
"--savetiddler","$:/favicon.ico","favicon.ico"]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -17,7 +17,7 @@
|
||||
"static": [
|
||||
"--render","$:/core/templates/static.template.html","static.html","text/plain",
|
||||
"--render","$:/core/templates/alltiddlers.template.html","alltiddlers.html","text/plain",
|
||||
"--render","[!is[system]]","[encodeuricomponent[]addprefix[static/]addsuffix[.html]]","text/plain",
|
||||
"--render","[!is[system]]","[encodeuricomponent[]addprefix[static/]addsuffix[.html]]","text/plain",
|
||||
"--render","$:/core/templates/static.template.css","static/static.css","text/plain"],
|
||||
"tiddlywikicore": [
|
||||
"--render","$:/core/templates/tiddlywiki5.js","[[tiddlywikicore-]addsuffix<version>addsuffix[.js]]","text/plain"]
|
||||
|
||||
@@ -103,24 +103,6 @@ describe("json filter tests", function() {
|
||||
expect(wiki.filterTiddlers("[{First}jsontype[d],[f],[4]]")).toEqual(["null"]);
|
||||
});
|
||||
|
||||
it("should support the jsonset operator", function() {
|
||||
expect(wiki.filterTiddlers("[{First}jsonset[]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]}}']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset[],[Antelope]]")).toEqual(['"Antelope"']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset:number[],[not a number]]")).toEqual(['0']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset[id],[Antelope]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]},"id":"Antelope"}']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset:notatype[id],[Antelope]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]},"id":"Antelope"}']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset:boolean[id],[false]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]},"id":false}']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset:boolean[id],[Antelope]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]}}']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset:number[id],[42]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]},"id":42}']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset:null[id]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]},"id":null}']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset:array[d],[f],[5]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null,[]]}}']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset:object[d],[f],[5]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null,{}]}}']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset[missing],[id],[Antelope]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]}}']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset:json[\"Antelope\"]]")).toEqual(['"Antelope"']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset:json[id],[{\"a\":313}]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]},"id":{"a":313}}']);
|
||||
expect(wiki.filterTiddlers("[{First}jsonset:json[notjson]]")).toEqual(['{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]}}']);
|
||||
});
|
||||
|
||||
it("should support the format:json operator", function() {
|
||||
expect(wiki.filterTiddlers("[{First}format:json[]]")).toEqual(["{\"a\":\"one\",\"b\":\"\",\"c\":1.618,\"d\":{\"e\":\"four\",\"f\":[\"five\",\"six\",true,false,null]}}"]);
|
||||
expect(wiki.filterTiddlers("[{First}format:json[4]]")).toEqual(["{\n \"a\": \"one\",\n \"b\": \"\",\n \"c\": 1.618,\n \"d\": {\n \"e\": \"four\",\n \"f\": [\n \"five\",\n \"six\",\n true,\n false,\n null\n ]\n }\n}"]);
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
"static": [
|
||||
"--render","$:/core/templates/static.template.html","static.html","text/plain",
|
||||
"--render","$:/core/templates/alltiddlers.template.html","alltiddlers.html","text/plain",
|
||||
"--render","[!is[system]]","[encodeuricomponent[]addprefix[static/]addsuffix[.html]]","text/plain","$:/core/templates/static.tiddler.html",
|
||||
"--render","[!is[system]]","[encodeuricomponent[]addprefix[static/]addsuffix[.html]]","text/plain","$:/core/templates/static.tiddler.html",
|
||||
"--render","$:/core/templates/static.template.css","static/static.css","text/plain"]
|
||||
},
|
||||
"config": {
|
||||
|
||||
82
editions/tw5.com/tiddlers/about/Archive.tid
Normal file
82
editions/tw5.com/tiddlers/about/Archive.tid
Normal file
@@ -0,0 +1,82 @@
|
||||
title: TiddlyWiki Archive
|
||||
created: 20231005205623086
|
||||
modified: 20231005210538879
|
||||
tags: About
|
||||
|
||||
\procedure versions()
|
||||
5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.1.8 5.1.9
|
||||
5.1.10 5.1.11 5.1.12 5.1.13 5.1.14 5.1.15 5.1.16 5.1.17 5.1.18 5.1.19
|
||||
5.1.20 5.1.21 5.1.22 5.1.23
|
||||
5.2.0 5.2.1 5.2.2 5.2.3 5.2.4 5.2.5 5.2.6 5.2.7
|
||||
5.3.0 5.3.1
|
||||
\end
|
||||
|
||||
Older versions of TiddlyWiki are available in the [[archive|https://github.com/Jermolene/jermolene.github.io/tree/master/archive]]:
|
||||
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>
|
||||
Version
|
||||
</th>
|
||||
<th>
|
||||
Released
|
||||
</th>
|
||||
<th>
|
||||
Lifetime
|
||||
</th>
|
||||
<th>
|
||||
Summary
|
||||
</th>
|
||||
<th>
|
||||
Download
|
||||
</th>
|
||||
</tr>
|
||||
<$list filter="[enlist<versions>reverse[]]" variable="version">
|
||||
<$let
|
||||
filename=`TiddlyWiki-$(version)$`
|
||||
emptyFilename=`Empty-$(filename)$`
|
||||
releaseTiddler={{{ [<version>addprefix[Release ]] }}}
|
||||
releaseDate={{{ [<releaseTiddler>get[released]format:date[TIMESTAMP]] }}}
|
||||
nextVersion={{{ [enlist<versions>after<version>] }}}
|
||||
nextReleaseTiddler={{{ [<nextVersion>addprefix[Release ]] }}}
|
||||
nextReleaseDate={{{ [<nextReleaseTiddler>get[released]format:date[TIMESTAMP]] }}}
|
||||
lifetime={{{ [<nextReleaseDate>subtract<releaseDate>divide[86400000]add[0.5]fixed[0]] }}}
|
||||
>
|
||||
<tr>
|
||||
<td>
|
||||
<$link to=<<releaseTiddler>>>
|
||||
<$text text=`v$(version)$`/>
|
||||
</$link>
|
||||
</td>
|
||||
<td>
|
||||
<$view tiddler=<<releaseTiddler>> field="released" format="date" template="DDth mmm YYYY"/>
|
||||
</td>
|
||||
<td>
|
||||
<$list filter="[<lifetime>compare:number:lt[0]]" variable="ignore">
|
||||
Current
|
||||
</$list>
|
||||
<$list filter="[<lifetime>compare:number:gteq[0]]" variable="ignore">
|
||||
<$text text=<<lifetime>>/>
|
||||
day<$list filter="[<lifetime>!compare:number:eq[1]]" variable="ignore">s</$list>
|
||||
</$list>
|
||||
</td>
|
||||
<td>
|
||||
<$transclude $tiddler=<<releaseTiddler>> $field="description" $format="inline">
|
||||
(none)
|
||||
</$transclude>
|
||||
</td>
|
||||
<td>
|
||||
<a href={{{ [<filename>addprefix[https://tiddlywiki.com/archive/full/]]}}} rel="noopener noreferrer" target="_blank">
|
||||
Complete
|
||||
</a>
|
||||
|
|
||||
<a href={{{ [<emptyFilename>addprefix[https://tiddlywiki.com/archive/empty/]]}}} rel="noopener noreferrer" target="_blank">
|
||||
Empty
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
</$let>
|
||||
</$list>
|
||||
</tbody>
|
||||
</table>
|
||||
20
editions/tw5.com/tiddlers/community/Chinese Community.tid
Normal file
20
editions/tw5.com/tiddlers/community/Chinese Community.tid
Normal file
@@ -0,0 +1,20 @@
|
||||
title: 中文社区 - Chinese Community
|
||||
tags: Community
|
||||
|
||||
# A Chinese community tutorial program that people can edit together:
|
||||
#* Main site: [ext[https://tw-cn.netlify.app/]]
|
||||
#* Accelerated access: [ext[https://tw-cn.cpolar.top/]]
|
||||
#* Alternate: [ext[https://tiddly-wiki-chinese-tutorial.vercel.app]]
|
||||
# Tiddlywiki Chinese Chat Forum: [ext[https://talk.tidgi.fun/topic/6]]
|
||||
# Chinese translation of Tiddlywiki official website [ext[https://bramchen.github.io/tw5-docs/zh-Hans/]]
|
||||
# The best Chinese introductory tutorial for newbies [ext[https://keatonlao.github.io/tiddlywiki-xp/]]
|
||||
|
||||
---
|
||||
|
||||
# 大家可以一起编辑的中文社区教程项目:
|
||||
#* 主站:[ext[https://tw-cn.netlify.app/]]
|
||||
#* 加速访问:[ext[https://tw-cn.cpolar.top/]]
|
||||
#* 备用:[ext[https://tiddly-wiki-chinese-tutorial.vercel.app]]
|
||||
# 太微中文交流论坛:[ext[https://talk.tidgi.fun/topic/6]]
|
||||
# 太微官网汉化版:[ext[https://bramchen.github.io/tw5-docs/zh-Hans/]]
|
||||
# 最适合新手的中文入门教程:[ext[https://keatonlao.github.io/tiddlywiki-xp/]]
|
||||
@@ -1,16 +0,0 @@
|
||||
created: 20220417010615742
|
||||
modified: 20220417011547812
|
||||
tags: [[Community Plugins]] [[Community Editions]] Resources
|
||||
title: TiddlyMemo by oflg
|
||||
type: text/vnd.tiddlywiki
|
||||
url: https://tiddlymemo.org/
|
||||
|
||||
Lifelong knowledge, deep in the Sea of Mind.
|
||||
|
||||
{{!!url}}
|
||||
|
||||
~TiddlyMemo uses advanced [[Incremental Learning|https://help.supermemo.org/wiki/Incremental_learning]] concepts to make it your powerful second brain for acquiring lifelong knowledge.
|
||||
|
||||
* [[Read Articles|https://tiddlymemo.org/#Read%20Articles]] like ~SuperMemo
|
||||
* [[Learn languages|https://tiddlymemo.org/#Learn%20languages]] like ~LingQ
|
||||
* [[Memory Notes|https://tiddlymemo.org/#Memory%20Notes]] like Anki
|
||||
@@ -0,0 +1,16 @@
|
||||
created: 20220417010615742
|
||||
modified: 20231005060241771
|
||||
tags: [[Community Editions]]
|
||||
title: Tidme by oflg
|
||||
type: text/vnd.tiddlywiki
|
||||
url: https://github.com/oflg/Tidme
|
||||
|
||||
Lifelong knowledge, deep in Mind.
|
||||
|
||||
{{!!url}}
|
||||
|
||||
Tidme uses advanced [[Incremental Learning|https://help.supermemo.org/wiki/Incremental_learning]] concepts to make it your powerful second brain for acquiring lifelong knowledge.
|
||||
|
||||
* Read Articles like SuperMemo
|
||||
* Learn languages like LingQ
|
||||
* Memory Notes like Anki
|
||||
@@ -0,0 +1,10 @@
|
||||
created: 20220417010615742
|
||||
modified: 20231005060241771
|
||||
tags: [[Community Plugins]]
|
||||
title: Free Spaced Repetition Scheduler for TiddlyWiki by oflg
|
||||
type: text/vnd.tiddlywiki
|
||||
url: https://github.com/open-spaced-repetition/fsrs4tw
|
||||
|
||||
TiddlyWiki-based memory programme using advanced FSRS algorithm
|
||||
|
||||
{{!!url}}
|
||||
@@ -0,0 +1,16 @@
|
||||
created: 20140312085406905
|
||||
modified: 20140312084543862
|
||||
tags: Tutorials
|
||||
title: "Install and run TiddlyWiki on a CentOS 6 VPS using Nginx" from RoseHosting
|
||||
type: text/vnd.tiddlywiki
|
||||
url: http://www.rosehosting.com/blog/install-and-run-tiddlywiki-on-a-centoos-6-vps-using-nginx/
|
||||
|
||||
A step by step guide to running TiddlyWiki on a ~CentOS Virtual Private Server.
|
||||
|
||||
{{!!url}}
|
||||
|
||||
<<<
|
||||
In this tutorial we will guide you through the steps of installing and running TiddlyWiki on a ~CentOS 6 VPS.
|
||||
|
||||
We will also install and configure Nginx as a reverse proxy, so you can run TiddlyWiki behind Nginx.
|
||||
<<<
|
||||
@@ -1,9 +0,0 @@
|
||||
created: 20171029155046637
|
||||
modified: 20171029155227382
|
||||
tags: [[Operator Examples]] [[stringify Operator]]
|
||||
title: jsonstringify Operator (Examples)
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.operator-example 1 """[[Title with "double quotes" and single ' and \backslash]] +[jsonstringify[]]""">>
|
||||
<<.operator-example 2 """[[Accents and emojis -> äñøßπ ⌛🎄🍪🍓 without suffix]] +[jsonstringify[]]""">>
|
||||
<<.operator-example 3 """[[Accents and emojis -> äñøßπ ⌛🎄🍪🍓 with rawunicode suffix]] +[jsonstringify:rawunicode[]]""">>
|
||||
@@ -1,9 +1,9 @@
|
||||
created: 20161017154944352
|
||||
modified: 20171029155233487
|
||||
modified: 20230919124059118
|
||||
tags: [[Operator Examples]] [[stringify Operator]]
|
||||
title: stringify Operator (Examples)
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.operator-example 1 """[[Title with "double quotes" and single ' and \backslash]] +[stringify[]]""">>
|
||||
<<.operator-example 2 """[[Accents and emojis -> äñøßπ ⌛🎄🍪🍓 without suffix]] +[stringify[]]""">>
|
||||
<<.operator-example 3 """[[Accents and emojis -> äñøßπ ⌛🎄🍪🍓 with rawunicode suffix]] +[stringify:rawunicode[]]""">>
|
||||
<<.operator-example 3 """[[Accents and emojis -> äñøßπ ⌛🎄🍪🍓 with rawunicode suffix]] +[stringify:rawunicode[]]""">>
|
||||
@@ -1,96 +0,0 @@
|
||||
created: 20230915121010948
|
||||
modified: 20230915121010948
|
||||
tags: [[Filter Operators]] [[JSON Operators]]
|
||||
title: jsonset Operator
|
||||
caption: jsonset
|
||||
op-purpose: set the value of a property in JSON strings
|
||||
op-input: a selection of JSON strings
|
||||
op-parameter: one or more indexes of the property to retrieve and sometimes a value to assign
|
||||
op-output: the JSON strings with the specified property assigned
|
||||
|
||||
<<.from-version "5.3.2">> See [[JSON in TiddlyWiki]] for background.
|
||||
|
||||
The <<.op jsonset>> operator is used to set a property value in JSON strings. See also the following related operators:
|
||||
|
||||
* <<.olink jsonget>> to retrieve the values of a property in JSON data
|
||||
* <<.olink jsontype>> to retrieve the type of a JSON value
|
||||
* <<.olink jsonindexes>> to retrieve the names of the fields of a JSON object, or the indexes of a JSON array
|
||||
* <<.olink jsonextract>> to retrieve a JSON value as a string of JSON
|
||||
|
||||
Properties within a JSON object are identified by a sequence of indexes. In the following example, the value at `[a]` is `one`, and the value at `[d][f][0]` is `five`.
|
||||
|
||||
```
|
||||
{
|
||||
"a": "one",
|
||||
"b": "",
|
||||
"c": "three",
|
||||
"d": {
|
||||
"e": "four",
|
||||
"f": [
|
||||
"five",
|
||||
"six",
|
||||
true,
|
||||
false,
|
||||
null
|
||||
],
|
||||
"g": {
|
||||
"x": "max",
|
||||
"y": "may",
|
||||
"z": "maize"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
The following examples assume that this JSON data is contained in a variable called `jsondata`.
|
||||
|
||||
The <<.op jsonset>> operator uses multiple operands to specify the indexes of the property to set. When used to assign strings the final operand is interpreted as the value to assign. For example:
|
||||
|
||||
```
|
||||
[<jsondata>jsonset[d],[Jaguar]] --> {"a": "one","b": "","c": "three","d": "Jaguar"}
|
||||
[<jsondata>jsonset[d],[f],[Panther]] --> {"a": "one","b": "","c": "three","d": "{"e": "four","f": "Panther","g": {"x": "max","y": "may","z": "maize"}}"}
|
||||
```
|
||||
|
||||
Indexes can be dynamically composed from variables and transclusions:
|
||||
|
||||
```
|
||||
[<jsondata>jsonset<variable>,{!!field},[0],{CurrentResult}]
|
||||
```
|
||||
|
||||
The data type of the value to be assigned to the property can be specified with an optional suffix:
|
||||
|
||||
|!Suffix |!Description |
|
||||
|''string'' |The string is specified as the final operand |
|
||||
|''boolean'' |The boolean value is true if the final operand is the string "true" and false if the final operand is the string "false". Any other value for the final string results prevents the property from being assigned |
|
||||
|''number'' |The numeric value is taken from the final operand. Invalid numbers are interpreted as zero |
|
||||
|''json'' |The JSON string value is taken from the final operand. Invalid JSON prevents the property from being assigned |
|
||||
|''object'' |An empty object is assigned to the property. The final operand is not used as a value |
|
||||
|''array'' |An empty array is assigned to the property. The final operand is not used as a value |
|
||||
|''null'' |The special value null is assigned to the property. The final operand is not used as a value |
|
||||
|
||||
For example:
|
||||
|
||||
```
|
||||
Input string:
|
||||
{"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]}}
|
||||
|
||||
[jsonset[]] --> {"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]}}
|
||||
[jsonset[],[Antelope]] --> "Antelope"
|
||||
[jsonset:number[],[not a number]] --> 0
|
||||
[jsonset[id],[Antelope]] --> {"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]},"id":"Antelope"}
|
||||
[jsonset:notatype[id],[Antelope]] --> {"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]},"id":"Antelope"}
|
||||
[jsonset:boolean[id],[false]] --> {"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]},"id":false}
|
||||
[jsonset:boolean[id],[Antelope]] --> {"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]}}
|
||||
[jsonset:number[id],[42]] --> {"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]},"id":42}
|
||||
[jsonset:null[id]] --> {"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]},"id":null}
|
||||
[jsonset:array[d],[f],[5]] --> {"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null,[]]}}
|
||||
[jsonset:object[d],[f],[5]] --> {"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null,{}]}}
|
||||
[jsonset[missing],[id],[Antelope]] --> {"a":"one","b":"","c":1.618,"d":{"e":"four","f":["five","six",true,false,null]}}
|
||||
```
|
||||
|
||||
A subtlety is that the special case of a single operand sets the value of that operand as the new JSON string, entirely replacing the input object. If that operand is blank, the operation is ignored and no assignment takes place. Thus:
|
||||
|
||||
```
|
||||
[<jsondata>jsonset[Panther]] --> "Panther"
|
||||
[<jsondata>jsonset[]] --> {"a": "one","b": "","c": "three","d": "{"e": "four","f": ["five", "six", true, false, null],"g": {"x": "max","y": "may","z": "maize"}}"}
|
||||
```
|
||||
@@ -1,36 +1,12 @@
|
||||
caption: jsonstringify
|
||||
created: 20171029155051467
|
||||
from-version: 5.1.14
|
||||
modified: 20171029155143797
|
||||
op-input: a [[selection of titles|Title Selection]]
|
||||
op-output: the input with JSON string encodings applied
|
||||
modified: 20230919124826880
|
||||
op-parameter:
|
||||
op-parameter-name:
|
||||
op-purpose: apply JSON string encoding to a string
|
||||
op-suffix: <<.from-version "5.1.23">> optionally, the keyword `rawunicode`
|
||||
op-purpose: deprecated, use <<.olink stringify>> instead
|
||||
op-suffix-name: R
|
||||
tags: [[Filter Operators]] [[String Operators]]
|
||||
title: jsonstringify Operator
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
The following substitutions are made:
|
||||
|
||||
|!Character |!Replacement |!Condition |
|
||||
|`\` |`\\` |Always |
|
||||
|`"` |`\"` |Always |
|
||||
|Carriage return (0x0d) |`\\r` |Always |
|
||||
|Line feed (0x0a) |`\\n` |Always |
|
||||
|Backspace (0x08) |`\\b` |Always |
|
||||
|Form field (0x0c) |`\\f` |Always |
|
||||
|Tab (0x09) |`\\t` |Always |
|
||||
|Characters from 0x00 to 0x1f |`\\u####` where #### is four hex digits |Always |
|
||||
|Characters from 0x80 to 0xffff|`\\u####` where #### is four hex digits |If `rawunicode` suffix is not present (default) |
|
||||
|Characters from 0x80 to 0xffff|Unchanged |If `rawunicode` suffix is present <<.from-version "5.1.23">> |
|
||||
|
||||
<<.from-version "5.1.23">> If the suffix `rawunicode` is present, Unicode characters above 0x80 (such as ß, ä, ñ or 🎄) will be passed through unchanged. Without the suffix, they will be substituted with `\\u` codes, which was the default behavior before 5.1.23.
|
||||
|
||||
<<.note """Technical note: Characters outside the Basic Multilingual Plane, such as 🎄 and other emojis, will be encoded as a UTF-16 surrogate pair, i.e. with two `\u` sequences.""">>
|
||||
|
||||
Also see the [[stringify Operator]].
|
||||
|
||||
<<.operator-examples "jsonstringify">>
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
caption: stringify
|
||||
created: 20161017153038029
|
||||
modified: 20171029155143797
|
||||
from-version: 5.1.14
|
||||
modified: 20230919130847809
|
||||
op-input: a [[selection of titles|Title Selection]]
|
||||
op-output: the input with ~JavaScript string encodings applied
|
||||
op-parameter:
|
||||
@@ -11,26 +12,25 @@ op-suffix-name: R
|
||||
tags: [[Filter Operators]] [[String Operators]]
|
||||
title: stringify Operator
|
||||
type: text/vnd.tiddlywiki
|
||||
from-version: 5.1.14
|
||||
|
||||
The following substitutions are made:
|
||||
|
||||
|!Character |!Replacement |!Condition |
|
||||
|`\` |`\\` |Always |
|
||||
|`"` |`\"` |Always |
|
||||
|Carriage return (0x0d) |`\\r` |Always |
|
||||
|Line feed (0x0a) |`\\n` |Always |
|
||||
|Backspace (0x08) |`\\b` |Always |
|
||||
|Form field (0x0c) |`\\f` |Always |
|
||||
|Tab (0x09) |`\\t` |Always |
|
||||
|Characters from 0x00 to 0x1f |`\\x##` where ## is two hex digits |Always |
|
||||
|Characters from 0x80 to 0xffff|`\\u####` where #### is four hex digits |If `rawunicode` suffix is not present (default) |
|
||||
|Carriage return (0x0d) |`\r` |Always |
|
||||
|Line feed (0x0a) |`\n` |Always |
|
||||
|Backspace (0x08) |`\b` |Always |
|
||||
|Form field (0x0c) |`\f` |Always |
|
||||
|Tab (0x09) |`\t` |Always |
|
||||
|Characters from 0x00 to 0x1f |`\x##` where ## is two hex digits |Always |
|
||||
|Characters from 0x80 to 0xffff|`\u####` where #### is four hex digits |If `rawunicode` suffix is not present (default) |
|
||||
|Characters from 0x80 to 0xffff|<<.from-version "5.1.23">> Unchanged |If `rawunicode` suffix is present |
|
||||
|
||||
<<.from-version "5.1.23">> If the suffix `rawunicode` is present, Unicode characters above 0x80 (such as ß, ä, ñ or 🎄) will be passed through unchanged. Without the suffix, they will be substituted with `\\u` codes, which was the default behavior before 5.1.23.
|
||||
<<.from-version "5.1.23">> If the suffix `rawunicode` is present, Unicode characters above 0x80 (such as ß, ä, ñ or 🎄) will be passed through unchanged. Without the suffix, they will be substituted with `\u` codes, which was the default behavior before 5.1.23.
|
||||
|
||||
<<.note """Technical note: Characters outside the Basic Multilingual Plane, such as 🎄 and other emojis, will be encoded as a UTF-16 surrogate pair, i.e. with two `\u` sequences.""">>
|
||||
<<.note """Characters outside the Basic Multilingual Plane, such as 🎄 and other emojis, will be encoded as a UTF-16 surrogate pair, i.e. with two `\u` sequences.""">>
|
||||
|
||||
Also see the [[jsonstringify Operator]].
|
||||
<<.olink jsonstringify>> is considered deprecated, as it duplicates the functionality of <<.op stringify>>.
|
||||
|
||||
<<.operator-examples "stringify">>
|
||||
<<.operator-examples "stringify">>
|
||||
@@ -50,7 +50,7 @@ In technical / logical terms:
|
||||
|`~run` |`:else[run]` |else |... ELSE run |
|
||||
||`:intersection`|intersection of sets||
|
||||
|
||||
For the difference between `+` and `:intersection`, see [[Filter Run Prefix (Examples)]].
|
||||
For the difference between `+` and `:intersection`, see [[Intersection Filter Run Prefix (Examples)]].
|
||||
|
||||
The input of a run is normally a list of all the non-[[shadow|ShadowTiddlers]] tiddler titles in the wiki (in no particular order). But the `+` prefix can change this:
|
||||
|
||||
|
||||
@@ -18,6 +18,11 @@ TiddlyWiki lets you choose where to keep your data, guaranteeing that in the dec
|
||||
<$macrocall $name="flex-card" bordercolor={{!!color}} textcolor={{!!text-color}} backgroundcolor={{!!background-color}} captionField="caption" descriptionField="text"/>
|
||||
</$list>
|
||||
</div>
|
||||
<div class="tc-cards tc-small">
|
||||
<$link to="中文社区 - Chinese Community" class="tc-btn-big-green tc-card">
|
||||
中文社区 - Chinese Community
|
||||
</$link>
|
||||
</div>
|
||||
|
||||
!! ''Find Out More''
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
title: Constructing JSON tiddlers
|
||||
tags: [[JSON in TiddlyWiki]] [[Learning]]
|
||||
created: 20220427174702859
|
||||
modified: 20220427174702859
|
||||
modified: 20230809113620964
|
||||
tags: [[JSON in TiddlyWiki]] Learning
|
||||
title: Constructing JSON tiddlers
|
||||
|
||||
See [[JSON in TiddlyWiki]] for an overview of using JSON in TiddlyWiki.
|
||||
|
||||
@@ -13,4 +13,4 @@ At a high level, we have several ways to generate JSON data in TiddlyWiki's own
|
||||
* [[jsontiddler Macro]]
|
||||
* [[jsontiddlers Macro]]
|
||||
|
||||
When constructing JSON data manually, the [[jsonstringify Operator]] is needed to ensure that any special characters are properly escaped.
|
||||
When constructing JSON data manually, the [[stringify Operator]] is needed to ensure that any special characters are properly escaped.
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 102 KiB After Width: | Height: | Size: 42 KiB |
@@ -1,13 +1,17 @@
|
||||
created: 20220917113002350
|
||||
modified: 20230419103154329
|
||||
modified: 20230921180332436
|
||||
tags: Pragmas
|
||||
title: Pragma: \whitespace
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.from-version "5.1.15">> The ''\whitespace'' [[pragma|Pragmas]] determines how spaces and newlines are treated within wikitext. Note that this only applies to the printable text, and not to other text, such as the values of attributes.
|
||||
<<.from-version "5.1.15">> The ''\whitespace'' [[pragma|Pragmas]] determines how spaces and newlines are treated within wikitext.
|
||||
|
||||
* ''notrim'' -- whitespace text is not subject to special processing (the default)
|
||||
* ''trim'' -- whitespace text is removed
|
||||
* ''trim'' -- whitespace text is ignored
|
||||
|
||||
Note that the processing only applies to the printable text, and not to other text, such as the values of attributes.
|
||||
|
||||
The whitespace setting only applies to the parsed content in which it appears. The setting is inherited by embedded [[Procedure Definitions]] and [[Custom Widgets]] definitions, but is not inherited by [[Macro definitions]].
|
||||
|
||||
```
|
||||
\whitespace trim|notrim
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
created: 20221007125701001
|
||||
modified: 20230419103154329
|
||||
modified: 20230921180332436
|
||||
tags: WikiText Procedures
|
||||
title: Procedure Definitions
|
||||
type: text/vnd.tiddlywiki
|
||||
@@ -18,6 +18,8 @@ This is the procedure text (param=<<param>>)
|
||||
\end
|
||||
```
|
||||
|
||||
Note that the [[Pragma: \whitespace]] setting is inherited from the parsing context in which the procedure definition occurs. That means that a tiddler containing multiple procedure definitions only needs a single whitespace pragma at the top of the tiddler, and the setting will be automatically inherited by the procedure definitions without needing the pragma to be repeated.
|
||||
|
||||
!! Procedure Definition with Set Widget
|
||||
|
||||
Procedures are implemented as a special kind of [[variable|Variables]] and so internally are actually defined with a <<.wlink SetWidget>> widget.
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.0
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 201409201500
|
||||
description: First non-beta release
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.0.18-beta...v5.1.0]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.1
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 201409221100
|
||||
description: [[KaTeX Plugin]]
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.0...v5.1.1]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.10
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 20160107231609312
|
||||
description: Text slicer, fold/unfold, performance optimisations, translations, external text tiddlers
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.9...v5.1.10]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.11
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 20160130124109312
|
||||
description: Bug fix release for v5.1.10
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.10...v5.1.11]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.12
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 20160713104714652
|
||||
description: Editor toolbars, improved bitmap editor, Internals plugin, WikifyWidget
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.11...v5.1.12]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20160725084810809
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.1.13
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Bug fix release for v5.1.12
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.12...v5.1.13]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20170426160031661
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.1.14
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Drag and drop improvements, initial RTL support, plugins for XLSX import, QR Codes, ~BibTeX, Google Analytics, Twitter
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.13...v5.1.14]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20171113161124237
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.1.15
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Explorer tab, whitespace pragma, save and render commands
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.14...v5.1.15]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20180425155658451
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.1.16
|
||||
type: text/vnd.tiddlywiki
|
||||
description: [[Dynaview Plugin]], import previews, DiffTextWidget, rotate left in bitmap editor, StartupActions
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.15...v5.1.16]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20180512104329616
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.1.17
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Minor bug fix release
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.16...v5.1.17]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20181206090053690
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.1.18
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Global keyboard shortcuts, HTTP server improvements, support for splash screens, `~` filter run prefix, external JS support
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.17...v5.1.18]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20181220163418974
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.1.19
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Bug fix release for v5.1.18
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.18...v5.1.19]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.2
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 20140927162659979
|
||||
description: Minor fixes
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.1...v5.1.2]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20190809141328809
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.1.20
|
||||
type: text/vnd.tiddlywiki
|
||||
description: New conditional, mathematics and string operators, GitHub Saver, save wiki folder command, [[Innerwiki Plugin]]
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.19...v5.1.20]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20190910152313608
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.1.21
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Bug fix release for v5.1.20
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.20...v5.1.21]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20200415160825341
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.1.22
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Dynamic plugin loading, compare operator, new plugins: Menubar, Freelinks, Dynannotate, Share
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.21...v5.1.22]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20201224132933812
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.1.23
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Switchable page templates, EventCatcherWidget, Rename during import, many plugin and filter improvements
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.22...v5.1.23]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.3
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 20141020171015200
|
||||
description: Journals, ActionWidgets, <<.olink addprefix>> and <<.olink addsuffix>> operators, "includeWikis"
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.2...v5.1.3]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.4
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 20141022155524581
|
||||
description: Dragging links into text boxes, coloured errors and warnings under Node.js
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.3...v5.1.4]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.5
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 20141126153016142
|
||||
description: Export button, more ActionWidgets, Danish and Greek translations
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.4...v5.1.5]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.6
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 20141219155007260
|
||||
description: Minor bug fix release for v5.1.5
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.5...v5.1.6]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.7
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 20141219215007260
|
||||
description: Hot fix release for v5.1.7
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.6...v5.1.7]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.8
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 2015041716307227
|
||||
description: Plugin library, Railroad Plugin, sticky titles, 7 new translations
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.7...v5.1.8]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ tags: ReleaseNotes
|
||||
title: Release 5.1.9
|
||||
type: text/vnd.tiddlywiki
|
||||
released: 20150703153725652
|
||||
description: Fluid-fixed layout, vars widget, open in new window
|
||||
|
||||
\define custom-colour-picker(tiddler,colour)
|
||||
<$edit-text tiddler="""$tiddler$""" index="""$colour$""" type="color" tag="input"/>
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20211003151502543
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.2.0
|
||||
type: text/vnd.tiddlywiki
|
||||
description: JSON store area, nestable macros, counter attribute for ListWidget, MessageCatcherWidget
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.1.23...v5.2.0]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20211208115833846
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.2.1
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Filter cascades, LetWidget, trigonometric operators
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.2.0...v5.2.1]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20220325130817150
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.2.2
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Minor bug fix release
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.2.1...v5.2.2]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20220802122551819
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.2.3
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Minor fixes and improvements
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.2.2...v5.2.3]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20221213163110439
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.2.4
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Hot fixes for v5.2.3, Twitter archivist plugin, GenesisWidget, JSON read operators, nested macro definitions
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.2.3...v5.2.4]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20221219184500440
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.2.5
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Hot fix release for v5.2.4
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.2.4...v5.2.5]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20230320184352916
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.2.6
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Markdown improvements, indentable pragmas, accessible save wiki button
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.2.5...v5.2.6]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20230326083239710
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.2.7
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Bug fix release for v5.2.6
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.2.6...v5.2.7]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20230701123439630
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.3.0
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Parameterised transclusions, procedures, functions, custom widgets
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.2.7...v5.3.0]]//
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ released: 20230820112855583
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.3.1
|
||||
type: text/vnd.tiddlywiki
|
||||
description: Bug fix release for v5.3.0
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.3.0...v5.3.1]]//
|
||||
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
created: 20150419144523070
|
||||
modified: 20220802100223019
|
||||
modified: 20231005205612322
|
||||
tags: About
|
||||
title: Releases
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
New releases of TiddlyWiki and TiddlyDesktop are announced via the [[official discussion groups|Forums]] and [[Twitter|https://twitter.com/TiddlyWiki]]
|
||||
|
||||
See the [[TiddlyWiki Archive]] to download older versions.
|
||||
|
||||
<<tabs "[[TiddlyWiki Releases]] [[TiddlyDesktop Releases]]" "TiddlyWiki Releases" "$:/state/tab">>
|
||||
|
||||
@@ -147,6 +147,10 @@ type: text/vnd.tiddlywiki
|
||||
gap: 1em;
|
||||
}
|
||||
|
||||
.tc-cards.tc-small {
|
||||
font-size: 0.7em;
|
||||
}
|
||||
|
||||
.tc-cards.tc-action-card {
|
||||
text-align: center;
|
||||
background: none;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
created: 20221007144237585
|
||||
modified: 20230419103154328
|
||||
modified: 20230921180332436
|
||||
tags: Concepts Reference
|
||||
title: Custom Widgets
|
||||
type: text/vnd.tiddlywiki
|
||||
@@ -22,6 +22,8 @@ This is the widget, and the attribute is <<attribute>>.
|
||||
|
||||
The name of the widget must start with a dollar sign. If it is a user defined widget that does not override an existing widget then it must include at least one period (dot) within the name (for example `$my.widget` or `$acme.logger`).
|
||||
|
||||
Note that the [[Pragma: \whitespace]] setting is inherited from the parsing context in which the procedure definition occurs. That means that a tiddler containing multiple procedure definitions only needs a single whitespace pragma at the top of the tiddler, and the setting will be automatically inherited by the procedure definitions without needing the pragma to be repeated.
|
||||
|
||||
!! Using Custom Widgets
|
||||
|
||||
Custom widgets are called in the same way as ordinary built-in widgets:
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
"static": [
|
||||
"--render","$:/core/templates/static.template.html","static.html","text/plain",
|
||||
"--render","$:/core/templates/alltiddlers.template.html","alltiddlers.html","text/plain",
|
||||
"--render","[!is[system]]","[encodeuricomponent[]addprefix[static/]addsuffix[.html]]","text/plain","$:/core/templates/static.tiddler.html",
|
||||
"--render","[!is[system]]","[encodeuricomponent[]addprefix[static/]addsuffix[.html]]","text/plain","$:/core/templates/static.tiddler.html",
|
||||
"--render","$:/core/templates/static.template.css","static/static.css","text/plain"],
|
||||
"external-js": [
|
||||
"--render","$:/core/save/offline-external-js","[[external-]addsuffix<version>addsuffix[.html]]","text/plain",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
title: $:/language/Help/server
|
||||
description: (已弃用:请参阅 'listen' 命令)提供一个 HTTP 服务器界面到 TiddlyWiki
|
||||
description: 提供一个 HTTP 服务器界面到 TiddlyWiki (已弃用,支持新的 listen 命令)
|
||||
|
||||
在服务器中内置 TiddlyWiki5 是非常简单。虽与 TiddlyWeb 兼容,但不支持许多健全互联网面向的使用方式所需的功能。
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
title: $:/language/Help/server
|
||||
description: (已棄用:請參閱 'listen' 命令)提供一個 HTTP 伺服器介面到 TiddlyWiki
|
||||
description: 提供一個 HTTP 伺服器介面到 TiddlyWiki (已棄用,支持新的 listen 命令)
|
||||
|
||||
在伺服器中內建 TiddlyWiki5 是非常簡單。雖與 TiddlyWeb 相容,但不支援許多健全網際網路面向的使用方式所需的功能。
|
||||
|
||||
|
||||
@@ -549,3 +549,7 @@ Eric Haberstroh, @pille1842, 2023/07/23
|
||||
@cmo-pomerium, 2023/08/03
|
||||
|
||||
BuckarooBanzay, @BuckarooBanzay, 2023/09/01
|
||||
|
||||
Timur, @T1mL3arn, 2023/10/04
|
||||
|
||||
Wang Ke, @Gk0Wk, 2023/10/17
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "tiddlywiki",
|
||||
"preferGlobal": "true",
|
||||
"version": "5.3.2-prerelease",
|
||||
"version": "5.3.1",
|
||||
"author": "Jeremy Ruston <jeremy@jermolene.com>",
|
||||
"description": "a non-linear personal web notebook",
|
||||
"contributors": [
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
title: $:/themes/tiddlywiki/vanilla/settings/
|
||||
|
||||
fontfamily: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji
|
||||
fontfamily: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;
|
||||
codefontfamily: "SFMono-Regular",Consolas,"Liberation Mono",Menlo,Courier,monospace
|
||||
backgroundimageattachment: fixed
|
||||
backgroundimagesize: auto
|
||||
|
||||
Reference in New Issue
Block a user