mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2025-02-28 08:50:01 +00:00
Merge branch 'master' into multi-wiki-support
This commit is contained in:
commit
517dae8242
2
.github/workflows/cla-check.yml
vendored
2
.github/workflows/cla-check.yml
vendored
@ -14,7 +14,7 @@ jobs:
|
||||
if: ${{ (github.event.pull_request.user.login != github.repository_owner) }}
|
||||
steps:
|
||||
- run: |
|
||||
if ! curl -s https://raw.githubusercontent.com/Jermolene/TiddlyWiki5/tiddlywiki-com/licenses/cla-individual.md | grep -o "@$USER,"; then
|
||||
if ! curl -s https://raw.githubusercontent.com/Jermolene/TiddlyWiki5/tiddlywiki-com/licenses/cla-individual.md | grep -io "@$USER,"; then
|
||||
echo "CLA not signed"
|
||||
gh pr comment "$NUMBER" -b "@$USER It appears that this is your first contribution to the project, welcome.
|
||||
|
||||
|
@ -164,20 +164,6 @@ node $TW5_BUILD_TIDDLYWIKI \
|
||||
--rendertiddler $:/core/save/all tour.html text/plain \
|
||||
|| exit 1
|
||||
|
||||
# /dev/index.html Developer docs
|
||||
# /dev/favicon.ico Favicon for dev site
|
||||
# /dev/static.html Static rendering of default tiddlers
|
||||
# /dev/alltiddlers.html Static rendering of all tiddlers
|
||||
# /dev/static/* Static single tiddlers
|
||||
# /dev/static/static.css Static stylesheet
|
||||
node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/dev \
|
||||
--verbose \
|
||||
--load $TW5_BUILD_OUTPUT/build.tid \
|
||||
--output $TW5_BUILD_OUTPUT/dev \
|
||||
--build index favicon static \
|
||||
|| exit 1
|
||||
|
||||
# /share.html Custom edition for sharing via the URL
|
||||
node $TW5_BUILD_TIDDLYWIKI \
|
||||
./editions/share \
|
||||
|
@ -26,7 +26,8 @@ Tags/ClearInput/Caption: clear input
|
||||
Tags/ClearInput/Hint: Clear tag input
|
||||
Tags/Dropdown/Caption: tag list
|
||||
Tags/Dropdown/Hint: Show tag list
|
||||
Tags/EmptyMessage: (no search result)
|
||||
Tags/EmptyMessage: No tags found
|
||||
Tags/EmptyMessage/System: No system tags found
|
||||
Title/BadCharacterWarning: Warning: avoid using any of the characters <<bad-chars>> in tiddler titles
|
||||
Title/Exists/Prompt: Target tiddler already exists
|
||||
Title/Relink/Prompt: Update ''<$text text=<<fromTitle>>/>'' to ''<$text text=<<toTitle>>/>'' in the //tags// and //list// fields of other tiddlers
|
||||
|
@ -42,7 +42,7 @@ Error/RetrievingSkinny: Error retrieving skinny tiddler list
|
||||
Error/SavingToTWEdit: Error saving to TWEdit
|
||||
Error/WhileSaving: Error while saving
|
||||
Error/XMLHttpRequest: XMLHttpRequest error code
|
||||
Error/ZoominTextNode: Błąd Widoku: Wykryto błędną interakcję z tiddlerem, który wyświetlany jest w niestandardowym kontenerze. Jest to najprawdopodobniej spowodowane użyciem `$:/tags/StoryTiddlerTemplateFilter` z motywem, który ma tekst lub białe znaki na początku. Użyj pragmy `\whitespace trim` i upewnij się, że cała treść tiddlera opakowana jest w jeden element HTML. Tekst, który spowodał problem:
|
||||
Error/ZoominTextNode: Story View Error: It appears you tried to interact with a tiddler that displays in a custom container. This is most likely caused by using `$:/tags/StoryTiddlerTemplateFilter` with a template that contains text or whitespace at the start. Please use the pragma `\whitespace trim` and ensure the whole contents of the tiddler is wrapped in a single HTML element. The text that caused this issue:
|
||||
InternalJavaScriptError/Title: Internal JavaScript Error
|
||||
InternalJavaScriptError/Hint: Well, this is embarrassing. It is recommended that you restart TiddlyWiki by refreshing your browser
|
||||
LayoutSwitcher/Description: Open the layout switcher
|
||||
|
@ -13,7 +13,7 @@ Text editor operation to excise the selection to a new tiddler
|
||||
"use strict";
|
||||
|
||||
function isMarkdown(mediaType) {
|
||||
return mediaType === 'text/markdown' || mediatype === 'text/x-markdown';
|
||||
return mediaType === 'text/markdown' || mediaType === 'text/x-markdown';
|
||||
}
|
||||
|
||||
exports["excise"] = function(event,operation) {
|
||||
|
@ -18,89 +18,6 @@ var ViewWidget = function(parseTreeNode,options) {
|
||||
this.initialise(parseTreeNode,options);
|
||||
};
|
||||
|
||||
var ViewHandler = function(widget) {
|
||||
this.wiki = widget.wiki;
|
||||
this.widget = widget;
|
||||
this.document = widget.document;
|
||||
};
|
||||
|
||||
/*
|
||||
Base ViewHandler render method
|
||||
*/
|
||||
ViewHandler.prototype.render = function(parent,nextSibling) {
|
||||
this.text = this.getValue();
|
||||
this.createTextNode(parent,nextSibling);
|
||||
};
|
||||
|
||||
/*
|
||||
Base ViewHandler render method for wikified views
|
||||
*/
|
||||
ViewHandler.prototype.renderWikified = function(parent,nextSibling) {
|
||||
this.createFakeWidget();
|
||||
this.text = this.getValue();
|
||||
this.createWikifiedTextNode(parent,nextSibling);
|
||||
};
|
||||
|
||||
/*
|
||||
ViewHandler method to create a simple text node
|
||||
*/
|
||||
ViewHandler.prototype.createTextNode = function(parent,nextSibling) {
|
||||
if(this.text) {
|
||||
var textNode = this.document.createTextNode(this.text);
|
||||
parent.insertBefore(textNode,nextSibling);
|
||||
this.widget.domNodes.push(textNode);
|
||||
} else {
|
||||
this.widget.makeChildWidgets();
|
||||
this.widget.renderChildren(parent,nextSibling);
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
ViewHandler method to always create a text node, even if there's no text
|
||||
*/
|
||||
ViewHandler.prototype.createWikifiedTextNode = function(parent,nextSibling) {
|
||||
var textNode = this.document.createTextNode(this.text || "");
|
||||
parent.insertBefore(textNode,nextSibling);
|
||||
this.widget.domNodes.push(textNode);
|
||||
};
|
||||
|
||||
/*
|
||||
ViewHandler method to create a fake widget used by wikified views
|
||||
*/
|
||||
ViewHandler.prototype.createFakeWidget = function() {
|
||||
this.fakeWidget = this.wiki.makeTranscludeWidget(this.widget.viewTitle,{
|
||||
document: $tw.fakeDocument,
|
||||
field: this.widget.viewField,
|
||||
index: this.widget.viewIndex,
|
||||
parseAsInline: this.widget.viewMode !== "block",
|
||||
mode: this.widget.viewMode === "block" ? "block" : "inline",
|
||||
parentWidget: this.widget,
|
||||
subTiddler: this.widget.viewSubTiddler
|
||||
});
|
||||
this.fakeNode = $tw.fakeDocument.createElement("div");
|
||||
this.fakeWidget.makeChildWidgets();
|
||||
this.fakeWidget.render(this.fakeNode,null);
|
||||
};
|
||||
|
||||
ViewHandler.prototype.refreshWikified = function(changedTiddlers) {
|
||||
var refreshed = this.fakeWidget.refresh(changedTiddlers);
|
||||
if(refreshed) {
|
||||
var newText = this.getValue();
|
||||
if(newText !== this.text) {
|
||||
this.widget.domNodes[0].textContent = newText;
|
||||
this.text = newText;
|
||||
}
|
||||
}
|
||||
return refreshed;
|
||||
};
|
||||
|
||||
/*
|
||||
Base ViewHandler refresh method
|
||||
*/
|
||||
ViewHandler.prototype.refresh = function(changedTiddlers) {
|
||||
return false;
|
||||
};
|
||||
|
||||
/*
|
||||
Inherit from the base widget class
|
||||
*/
|
||||
@ -113,8 +30,14 @@ ViewWidget.prototype.render = function(parent,nextSibling) {
|
||||
this.parentDomNode = parent;
|
||||
this.computeAttributes();
|
||||
this.execute();
|
||||
this.view = this.getView(this.viewFormat);
|
||||
this.view.render(parent,nextSibling);
|
||||
if(this.text) {
|
||||
var textNode = this.document.createTextNode(this.text);
|
||||
parent.insertBefore(textNode,nextSibling);
|
||||
this.domNodes.push(textNode);
|
||||
} else {
|
||||
this.makeChildWidgets();
|
||||
this.renderChildren(parent,nextSibling);
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
@ -129,238 +52,49 @@ ViewWidget.prototype.execute = function() {
|
||||
this.viewFormat = this.getAttribute("format","text");
|
||||
this.viewTemplate = this.getAttribute("template","");
|
||||
this.viewMode = this.getAttribute("mode","block");
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise the view subclasses
|
||||
*/
|
||||
ViewWidget.prototype.getView = function(format) {
|
||||
var View = this.initialiseView();
|
||||
View.prototype = Object.create(ViewHandler.prototype);
|
||||
switch(format) {
|
||||
switch(this.viewFormat) {
|
||||
case "htmlwikified":
|
||||
View = this.initialiseHTMLWikifiedView(View);
|
||||
this.text = this.getValueAsHtmlWikified(this.viewMode);
|
||||
break;
|
||||
case "plainwikified":
|
||||
View = this.initialisePlainWikifiedView(View);
|
||||
this.text = this.getValueAsPlainWikified(this.viewMode);
|
||||
break;
|
||||
case "htmlencodedplainwikified":
|
||||
View = this.initialiseHTMLEncodedPlainWikifiedView(View);
|
||||
this.text = this.getValueAsHtmlEncodedPlainWikified(this.viewMode);
|
||||
break;
|
||||
case "htmlencoded":
|
||||
View = this.initialiseHTMLEncodedView(View);
|
||||
this.text = this.getValueAsHtmlEncoded();
|
||||
break;
|
||||
case "htmltextencoded":
|
||||
View = this.initialiseHTMLTextEncodedView(View);
|
||||
this.text = this.getValueAsHtmlTextEncoded();
|
||||
break;
|
||||
case "urlencoded":
|
||||
View = this.initialiseURLEncodedView(View);
|
||||
this.text = this.getValueAsUrlEncoded();
|
||||
break;
|
||||
case "doubleurlencoded":
|
||||
View = this.initialiseDoubleURLEncodedView(View);
|
||||
this.text = this.getValueAsDoubleUrlEncoded();
|
||||
break;
|
||||
case "date":
|
||||
View = this.initialiseDateView(View);
|
||||
this.text = this.getValueAsDate(this.viewTemplate);
|
||||
break;
|
||||
case "relativedate":
|
||||
View = this.initialiseRelativeDateView(View);
|
||||
this.text = this.getValueAsRelativeDate();
|
||||
break;
|
||||
case "stripcomments":
|
||||
View = this.initialiseStripCommentsView(View);
|
||||
this.text = this.getValueAsStrippedComments();
|
||||
break;
|
||||
case "jsencoded":
|
||||
View = this.initialiseJSEncodedView(View);
|
||||
this.text = this.getValueAsJsEncoded();
|
||||
break;
|
||||
default: // "text"
|
||||
View = this.initialiseTextView(View);
|
||||
this.text = this.getValueAsText();
|
||||
break;
|
||||
};
|
||||
return new View(this);
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
Return the function to intitialise the view subclass
|
||||
The various formatter functions are baked into this widget for the moment. Eventually they will be replaced by macro functions
|
||||
*/
|
||||
ViewWidget.prototype.initialiseView = function() {
|
||||
return function(widget) {
|
||||
ViewHandler.call(this,widget);
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise HTML wikified view methods
|
||||
*/
|
||||
ViewWidget.prototype.initialiseHTMLWikifiedView = function(View) {
|
||||
|
||||
View.prototype.render = function(parent,nextSibling) {
|
||||
this.renderWikified(parent,nextSibling);
|
||||
};
|
||||
|
||||
View.prototype.getValue = function() {
|
||||
return this.fakeNode.innerHTML;
|
||||
};
|
||||
|
||||
View.prototype.refresh = function(changedTiddlers) {
|
||||
return this.refreshWikified(changedTiddlers);
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise plain wikified view methods
|
||||
*/
|
||||
ViewWidget.prototype.initialisePlainWikifiedView = function(View) {
|
||||
|
||||
View.prototype.render = function(parent,nextSibling) {
|
||||
this.renderWikified(parent,nextSibling);
|
||||
};
|
||||
|
||||
View.prototype.getValue = function() {
|
||||
return this.fakeNode.textContent;
|
||||
};
|
||||
|
||||
View.prototype.refresh = function(changedTiddlers) {
|
||||
return this.refreshWikified(changedTiddlers);
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise HTML encoded plain wikified methods
|
||||
*/
|
||||
ViewWidget.prototype.initialiseHTMLEncodedPlainWikifiedView = function(View) {
|
||||
|
||||
View.prototype.render = function(parent,nextSibling) {
|
||||
this.renderWikified(parent,nextSibling);
|
||||
};
|
||||
|
||||
View.prototype.getValue = function() {
|
||||
return $tw.utils.htmlEncode(this.fakeNode.textContent);
|
||||
};
|
||||
|
||||
View.prototype.refresh = function(changedTiddlers) {
|
||||
return this.refreshWikified(changedTiddlers);
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise HTML encoded mehods
|
||||
*/
|
||||
ViewWidget.prototype.initialiseHTMLEncodedView = function(View) {
|
||||
var self = this;
|
||||
View.prototype.getValue = function() {
|
||||
return $tw.utils.htmlEncode(self.getValueAsText());
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise HTML text encoded mehods
|
||||
*/
|
||||
ViewWidget.prototype.initialiseHTMLTextEncodedView = function(View) {
|
||||
var self = this;
|
||||
View.prototype.getValue = function() {
|
||||
return $tw.utils.htmlTextEncode(self.getValueAsText());
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise URL encoded mehods
|
||||
*/
|
||||
ViewWidget.prototype.initialiseURLEncodedView = function(View) {
|
||||
var self = this;
|
||||
View.prototype.getValue = function() {
|
||||
return $tw.utils.encodeURIComponentExtended(self.getValueAsText());
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise double URL encoded mehods
|
||||
*/
|
||||
ViewWidget.prototype.initialiseDoubleURLEncodedView = function(View) {
|
||||
var self = this;
|
||||
View.prototype.getValue = function() {
|
||||
return $tw.utils.encodeURIComponentExtended($tw.utils.encodeURIComponentExtended(self.getValueAsText()));
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise date mehods
|
||||
*/
|
||||
ViewWidget.prototype.initialiseDateView = function(View) {
|
||||
var self = this;
|
||||
View.prototype.getValue = function(format) {
|
||||
format = format || "YYYY MM DD 0hh:0mm";
|
||||
var value = $tw.utils.parseDate(self.getValue());
|
||||
if(value && $tw.utils.isDate(value) && value.toString() !== "Invalid Date") {
|
||||
return $tw.utils.formatDateString(value,format);
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise relative date mehods
|
||||
*/
|
||||
ViewWidget.prototype.initialiseRelativeDateView = function(View) {
|
||||
var self = this;
|
||||
View.prototype.getValue = function(format) {
|
||||
var value = $tw.utils.parseDate(self.getValue());
|
||||
if(value && $tw.utils.isDate(value) && value.toString() !== "Invalid Date") {
|
||||
return $tw.utils.getRelativeDate((new Date()) - (new Date(value))).description;
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise stripcomments mehods
|
||||
*/
|
||||
ViewWidget.prototype.initialiseStripCommentsView = function(View) {
|
||||
var self = this;
|
||||
View.prototype.getValue = function() {
|
||||
var lines = self.getValueAsText().split("\n"),
|
||||
out = [];
|
||||
for(var line=0; line<lines.length; line++) {
|
||||
var text = lines[line];
|
||||
if(!/^\s*\/\/#/.test(text)) {
|
||||
out.push(text);
|
||||
}
|
||||
}
|
||||
return out.join("\n");
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise JS encoded mehods
|
||||
*/
|
||||
ViewWidget.prototype.initialiseJSEncodedView = function(View) {
|
||||
var self = this;
|
||||
View.prototype.getValue = function() {
|
||||
return $tw.utils.stringify(self.getValueAsText());
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Initialise text mehods
|
||||
*/
|
||||
ViewWidget.prototype.initialiseTextView = function(View) {
|
||||
var self = this;
|
||||
View.prototype.getValue = function() {
|
||||
return self.getValueAsText();
|
||||
};
|
||||
return View;
|
||||
};
|
||||
|
||||
/*
|
||||
Retrieve the value of the widget. Options are:
|
||||
@ -404,6 +138,78 @@ ViewWidget.prototype.getValueAsText = function() {
|
||||
return this.getValue({asString: true});
|
||||
};
|
||||
|
||||
ViewWidget.prototype.getValueAsHtmlWikified = function(mode) {
|
||||
return this.wiki.renderText("text/html","text/vnd.tiddlywiki",this.getValueAsText(),{
|
||||
parseAsInline: mode !== "block",
|
||||
parentWidget: this
|
||||
});
|
||||
};
|
||||
|
||||
ViewWidget.prototype.getValueAsPlainWikified = function(mode) {
|
||||
return this.wiki.renderText("text/plain","text/vnd.tiddlywiki",this.getValueAsText(),{
|
||||
parseAsInline: mode !== "block",
|
||||
parentWidget: this
|
||||
});
|
||||
};
|
||||
|
||||
ViewWidget.prototype.getValueAsHtmlEncodedPlainWikified = function(mode) {
|
||||
return $tw.utils.htmlEncode(this.wiki.renderText("text/plain","text/vnd.tiddlywiki",this.getValueAsText(),{
|
||||
parseAsInline: mode !== "block",
|
||||
parentWidget: this
|
||||
}));
|
||||
};
|
||||
|
||||
ViewWidget.prototype.getValueAsHtmlEncoded = function() {
|
||||
return $tw.utils.htmlEncode(this.getValueAsText());
|
||||
};
|
||||
|
||||
ViewWidget.prototype.getValueAsHtmlTextEncoded = function() {
|
||||
return $tw.utils.htmlTextEncode(this.getValueAsText());
|
||||
};
|
||||
|
||||
ViewWidget.prototype.getValueAsUrlEncoded = function() {
|
||||
return $tw.utils.encodeURIComponentExtended(this.getValueAsText());
|
||||
};
|
||||
|
||||
ViewWidget.prototype.getValueAsDoubleUrlEncoded = function() {
|
||||
return $tw.utils.encodeURIComponentExtended($tw.utils.encodeURIComponentExtended(this.getValueAsText()));
|
||||
};
|
||||
|
||||
ViewWidget.prototype.getValueAsDate = function(format) {
|
||||
format = format || "YYYY MM DD 0hh:0mm";
|
||||
var value = $tw.utils.parseDate(this.getValue());
|
||||
if(value && $tw.utils.isDate(value) && value.toString() !== "Invalid Date") {
|
||||
return $tw.utils.formatDateString(value,format);
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
};
|
||||
|
||||
ViewWidget.prototype.getValueAsRelativeDate = function(format) {
|
||||
var value = $tw.utils.parseDate(this.getValue());
|
||||
if(value && $tw.utils.isDate(value) && value.toString() !== "Invalid Date") {
|
||||
return $tw.utils.getRelativeDate((new Date()) - (new Date(value))).description;
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
};
|
||||
|
||||
ViewWidget.prototype.getValueAsStrippedComments = function() {
|
||||
var lines = this.getValueAsText().split("\n"),
|
||||
out = [];
|
||||
for(var line=0; line<lines.length; line++) {
|
||||
var text = lines[line];
|
||||
if(!/^\s*\/\/#/.test(text)) {
|
||||
out.push(text);
|
||||
}
|
||||
}
|
||||
return out.join("\n");
|
||||
};
|
||||
|
||||
ViewWidget.prototype.getValueAsJsEncoded = function() {
|
||||
return $tw.utils.stringify(this.getValueAsText());
|
||||
};
|
||||
|
||||
/*
|
||||
Selectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering
|
||||
*/
|
||||
@ -413,7 +219,7 @@ ViewWidget.prototype.refresh = function(changedTiddlers) {
|
||||
this.refreshSelf();
|
||||
return true;
|
||||
} else {
|
||||
return this.view.refresh(changedTiddlers);
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -335,7 +335,7 @@ Widget.prototype.makeFakeWidgetWithVariables = function(variables) {
|
||||
};
|
||||
} else {
|
||||
opts = opts || {};
|
||||
opts.variables = $tw.utils.extend(variables,opts.variables);
|
||||
opts.variables = $tw.utils.extend({},variables,opts.variables);
|
||||
return self.getVariableInfo(name,opts);
|
||||
};
|
||||
},
|
||||
|
@ -75,13 +75,13 @@ $:/state/add-plugin-info/$(connectionTiddler)$/$(assetInfo)$
|
||||
<h2><$view tiddler=<<assetInfo>> field="original-title"/></h2>
|
||||
<div>
|
||||
<%if [<assetInfo>get[stability]match[STABILITY_0_DEPRECATED]] %>
|
||||
<span class="tc-plugin-info-stability tc-plugin-info-stability-deprecated">DEPRECATED</span>
|
||||
<span class="tc-plugin-info-stability tc-plugin-info-stability-deprecated">{{$:/language/ControlPanel/Plugins/Stability/Deprecated}}</span>
|
||||
<%elseif [<assetInfo>get[stability]match[STABILITY_1_EXPERIMENTAL]] %>
|
||||
<span class="tc-plugin-info-stability tc-plugin-info-stability-experimental">EXPERIMENTAL</span>
|
||||
<span class="tc-plugin-info-stability tc-plugin-info-stability-experimental">{{$:/language/ControlPanel/Plugins/Stability/Experimental}}</span>
|
||||
<%elseif [<assetInfo>get[stability]match[STABILITY_2_STABLE]] %>
|
||||
<span class="tc-plugin-info-stability tc-plugin-info-stability-stable">STABLE</span>
|
||||
<span class="tc-plugin-info-stability tc-plugin-info-stability-stable">{{$:/language/ControlPanel/Plugins/Stability/Stable}}</span>
|
||||
<%elseif [<assetInfo>get[stability]match[STABILITY_3_LEGACY]] %>
|
||||
<span class="tc-plugin-info-stability tc-plugin-info-stability-legacy">LEGACY</span>
|
||||
<span class="tc-plugin-info-stability tc-plugin-info-stability-legacy">{{$:/language/ControlPanel/Plugins/Stability/Legacy}}</span>
|
||||
<%endif%>
|
||||
<em><$view tiddler=<<assetInfo>> field="version"/></em></div>
|
||||
<$list filter="[<assetInfo>get[original-title]get[version]]" variable="installedVersion"><div><em>{{$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint}}</em></div></$list>
|
||||
|
10
core/ui/ViewTemplate/lazy-loading.tid
Normal file
10
core/ui/ViewTemplate/lazy-loading.tid
Normal file
@ -0,0 +1,10 @@
|
||||
title: $:/core/ui/ViewTemplate/lazy-loading
|
||||
tags: $:/tags/ViewTemplate
|
||||
|
||||
\whitespace trim
|
||||
<%if [<currentTiddler>has:field[_is_skinny]] %>
|
||||
<!-- Render the text to trigger lazy-loading -->
|
||||
{{||$:/core/ui/ViewTemplate/body/default}}
|
||||
<!-- Indicator of loading state -->
|
||||
<div class="tc-tiddler-lazy-loading" />
|
||||
<%endif%>
|
@ -77,14 +77,14 @@ The second ESC tries to close the "draft tiddler"
|
||||
<!-- <$action-log /> -->
|
||||
|
||||
<!-- create dropdown list -->
|
||||
\procedure tag-picker-listTags(filter, suffix)
|
||||
\procedure tag-picker-listTags(filter, suffix, empty)
|
||||
<$let userInput=<<_tf.getUserInput>> >
|
||||
<$list filter="[<userInput>minlength{$:/config/Tags/MinLength}limit[1]]"
|
||||
emptyMessage="<div class='tc-search-results'>{{$:/language/Search/Search/TooShort}}</div>" variable="listItem"
|
||||
>
|
||||
<$list filter=<<filter>> variable="tag">
|
||||
<$list-empty>
|
||||
<span class="tc-small-gap-left">{{$:/language/EditTemplate/Tags/EmptyMessage}}</span>
|
||||
<span class="tc-small-gap-left"><<empty>></span>
|
||||
</$list-empty>
|
||||
<!-- The buttonClasses filter is used to define tc-tag-button-selected state -->
|
||||
<!-- tf.get-tagpicker-focus-selector has to be resolved for $:/core/ui/TagPickerTagTemplate,
|
||||
@ -146,9 +146,9 @@ The second ESC tries to close the "draft tiddler"
|
||||
<div class="tc-block-dropdown-wrapper">
|
||||
<%if [<tf.tagpicker-dropdown-id>has[text]] %>
|
||||
<div class="tc-block-dropdown tc-block-tags-dropdown">
|
||||
<$macrocall $name="tag-picker-listTags" filter=<<nonSystemTagsFilter>> suffix="-primaryList" />
|
||||
<$macrocall $name="tag-picker-listTags" filter=<<nonSystemTagsFilter>> suffix="-primaryList" empty={{$:/language/EditTemplate/Tags/EmptyMessage}}/>
|
||||
<hr>
|
||||
<$macrocall $name="tag-picker-listTags" filter=<<systemTagsFilter>> suffix="-secondaryList" />
|
||||
<$macrocall $name="tag-picker-listTags" filter=<<systemTagsFilter>> suffix="-secondaryList" empty={{$:/language/EditTemplate/Tags/EmptyMessage/System}}/>
|
||||
</div>
|
||||
<%endif%>
|
||||
</div>
|
||||
|
@ -1,2 +1,2 @@
|
||||
title: $:/tags/ViewTemplate
|
||||
list: [[$:/core/ui/ViewTemplate/title]] [[$:/core/ui/ViewTemplate/unfold]] [[$:/core/ui/ViewTemplate/subtitle]] [[$:/core/ui/ViewTemplate/tags]] [[$:/core/ui/ViewTemplate/classic]] [[$:/core/ui/ViewTemplate/body]]
|
||||
list: [[$:/core/ui/ViewTemplate/title]] [[$:/core/ui/ViewTemplate/unfold]] [[$:/core/ui/ViewTemplate/subtitle]] [[$:/core/ui/ViewTemplate/tags]] [[$:/core/ui/ViewTemplate/classic]] [[$:/core/ui/ViewTemplate/body]] [[$:/core/ui/ViewTemplate/lazy-loading]]
|
||||
|
@ -2,15 +2,11 @@
|
||||
"description": "Full edition, containing all languages, themes and plugins",
|
||||
"plugins": [
|
||||
"tiddlywiki/bibtex",
|
||||
"tiddlywiki/blog",
|
||||
"tiddlywiki/browser-sniff",
|
||||
"tiddlywiki/browser-storage",
|
||||
"tiddlywiki/cecily",
|
||||
"tiddlywiki/classictools",
|
||||
"tiddlywiki/codemirror",
|
||||
"tiddlywiki/comments",
|
||||
"tiddlywiki/d3",
|
||||
"tiddlywiki/github-fork-ribbon",
|
||||
"tiddlywiki/help",
|
||||
"tiddlywiki/highlight",
|
||||
"tiddlywiki/innerwiki",
|
||||
@ -18,7 +14,6 @@
|
||||
"tiddlywiki/jszip",
|
||||
"tiddlywiki/katex",
|
||||
"tiddlywiki/markdown",
|
||||
"tiddlywiki/nodewebkitsaver",
|
||||
"tiddlywiki/powered-by-tiddlywiki",
|
||||
"tiddlywiki/qrcode",
|
||||
"tiddlywiki/railroad",
|
||||
@ -50,6 +45,7 @@
|
||||
"mk-MK",
|
||||
"nl-NL",
|
||||
"pa-IN",
|
||||
"pl-PL",
|
||||
"pt-PT",
|
||||
"pt-BR",
|
||||
"ru-RU",
|
||||
@ -75,4 +71,4 @@
|
||||
"index": [
|
||||
"--rendertiddler","$:/core/save/all","index.html","text/plain"]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,20 @@
|
||||
title: Functions/FunctionFilterrunVariables4
|
||||
description: Nested functions in filter runs that set variables should not pollute upstream widget tree
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: Output
|
||||
|
||||
\function .a() [.b[]]
|
||||
\function .b() [all[]] :map[subtract[1].c[]]
|
||||
\function .c() [all[]] :map[subtract[1].d[]]
|
||||
\function .d() [all[]] :map[subtract[1].e[]]
|
||||
\function .e() [all[]] :map[subtract[1]]
|
||||
|
||||
|
||||
<$text text={{{ [[10]] :map:flat[.a[]then<currentTiddler>] }}}/>
|
||||
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
10
|
@ -0,0 +1,22 @@
|
||||
title: Widgets/ViewWidget/Parameter/field-format-doubleurlencoded
|
||||
description: Test view-widget parameters tiddler, field and format=*
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: input
|
||||
|
||||
Some text > "aaa"
|
||||
+
|
||||
title: Output
|
||||
|
||||
<$view tiddler="input" field="text" format="doubleurlencoded"/>
|
||||
---
|
||||
<$view tiddler="input" field="text"/>
|
||||
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
<p>Some%2520text%2520%253E%2520%2522aaa%2522
|
||||
—
|
||||
Some text > "aaa"
|
||||
</p>
|
@ -0,0 +1,21 @@
|
||||
title: Widgets/ViewWidget/Parameter/field-format-htmlencoded
|
||||
description: Test view-widget parameters tiddler, field and format=*
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: input
|
||||
|
||||
Some text > "aaa"
|
||||
|
||||
+
|
||||
title: Output
|
||||
|
||||
<$view tiddler="input" field="text" format="htmlencoded"/>
|
||||
|
||||
<$view tiddler="input" field="text"/>
|
||||
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
Some text &gt; &quot;aaa&quot;
|
||||
Some text > "aaa"
|
@ -0,0 +1,21 @@
|
||||
title: Widgets/ViewWidget/Parameter/field-format-htmltextencoded
|
||||
description: Test view-widget parameters tiddler, field and format=*
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: input
|
||||
|
||||
Some text > "aaa"
|
||||
|
||||
+
|
||||
title: Output
|
||||
|
||||
<$view tiddler="input" field="text" format="htmltextencoded"/>
|
||||
|
||||
<$view tiddler="input" field="text"/>
|
||||
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
Some text &gt; "aaa"
|
||||
Some text > "aaa"
|
@ -0,0 +1,22 @@
|
||||
title: Widgets/ViewWidget/Parameter/field-format-urlencoded
|
||||
description: Test view-widget parameters tiddler, field and format=*
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: input
|
||||
|
||||
Some text > "aaa"
|
||||
+
|
||||
title: Output
|
||||
|
||||
<$view tiddler="input" field="text" format="urlencoded"/>
|
||||
---
|
||||
<$view tiddler="input" field="text"/>
|
||||
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
<p>Some%20text%20%3E%20%22aaa%22
|
||||
—
|
||||
Some text > "aaa"
|
||||
</p>
|
@ -0,0 +1,19 @@
|
||||
title: Widgets/ViewWidget/Parameter/field-format-text
|
||||
description: Test view-widget parameters tiddler, field and format=*
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: input
|
||||
caption: [[HelloThere]]
|
||||
|
||||
Some text
|
||||
+
|
||||
title: Output
|
||||
|
||||
<$view tiddler="input" field="caption" format="text"/>
|
||||
|
||||
<$view tiddler="input" field="caption"/>
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
[[HelloThere]]<p>[[HelloThere]]</p>
|
@ -0,0 +1,28 @@
|
||||
title: Widgets/ViewWidget/Parameter/field-index
|
||||
description: Test view-widget parameters index type=application/json and type=application/x-tiddler-dictionary
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: input
|
||||
type: application/x-tiddler-dictionary
|
||||
|
||||
01: value 01
|
||||
02: value 02
|
||||
+
|
||||
title: input-json
|
||||
type: application/json
|
||||
|
||||
{
|
||||
"01": "value 01",
|
||||
"02": "value 02"
|
||||
}
|
||||
+
|
||||
title: Output
|
||||
|
||||
<$view tiddler="input-json" index="01"/>
|
||||
|
||||
<$view tiddler="input" index="02"/>
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
value 01<p>value 02</p>
|
@ -0,0 +1,18 @@
|
||||
title: Widgets/ViewWidget/Parameter/field-text
|
||||
description: Test view-widget parameters tiddler and field=text
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: input
|
||||
|
||||
Some text
|
||||
+
|
||||
title: Output
|
||||
|
||||
<$view tiddler="input" field="text"/>
|
||||
|
||||
<$view tiddler="input" />
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
Some text<p>Some text</p>
|
@ -0,0 +1,17 @@
|
||||
title: Widgets/ViewWidget/Parameter/field-title
|
||||
description: Test view-widget parameters tiddler and field=title
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: input
|
||||
|
||||
Some text
|
||||
+
|
||||
title: Output
|
||||
|
||||
<$view tiddler="input" field="title"/>
|
||||
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
input
|
@ -0,0 +1,20 @@
|
||||
title: Widgets/ViewWidget/Parameter/format-data-template
|
||||
description: Test view-widget parameters format, date and template
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: input
|
||||
modified: 20240920162221000
|
||||
|
||||
Some text
|
||||
+
|
||||
title: Output
|
||||
|
||||
<!-- This can not be tested atm, since test-server timezone can be different
|
||||
<$view tiddler="input" field="modified" format="date"/>
|
||||
-->
|
||||
<$view tiddler="input" field="modified" format="date" template="[UTC]DDth MMM YYYY at hh12:0mmam"/>
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
<p>20th September 2024 at 4:22pm</p>
|
@ -4,9 +4,19 @@ tags: About
|
||||
title: History of TiddlyWiki
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
//These are personal reflections on the history and development of TiddlyWiki from JeremyRuston.//
|
||||
! Twenty Years of ~TiddlyWiki
|
||||
|
||||
//There is also a [[podcast from 2016|https://changelog.com/podcast/196]] discussing TiddlyWiki's backstory as well as a [[recording from 2021|https://twit.tv/shows/floss-weekly/episodes/620]].//
|
||||
We've held a number of livestreams to celebrate twenty years of ~TiddlyWiki. You can watch the recordings here:
|
||||
|
||||
* 19th September 2024 - https://youtube.com/live/z9slx92TyrU
|
||||
* 20th September 2024 - https://youtube.com/live/puFdN-FgOjg
|
||||
* 21st September 2024 - https://youtube.com/live/0SjsHvwjHGE
|
||||
* 22nd September 2024 - https://youtube.com/live/oD7Jtq2D4lg
|
||||
|
||||
Some recent podcasts featuring ~TiddlyWiki:
|
||||
|
||||
* The changelog podcast from 2016 - https://changelog.com/podcast/196 discussing ~TiddlyWiki's backstory
|
||||
* Floss Weekly recording from 2021 - https://twit.tv/shows/floss-weekly/episodes/620
|
||||
|
||||
! Origins of TiddlyWiki
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
created: 20150414070451144
|
||||
list: [[HelloThumbnail - Newsletter]] [[HelloThumbnail - Introduction Video]] [[HelloThumbnail - Grok TiddlyWiki]] [[HelloThumbnail - Latest Version]] [[HelloThumbnail - TiddlyWikiLinks]] [[HelloThumbnail - Developers]] [[HelloThumbnail - Funding]] [[HelloThumbnail - Marketplace]] [[HelloThumbnail - Intertwingled Innovations]]
|
||||
list: [[HelloThumbnail - Twenty Years of TiddlyWiki]] [[HelloThumbnail - Newsletter]] [[HelloThumbnail - Introduction Video]] [[HelloThumbnail - Grok TiddlyWiki]] [[HelloThumbnail - Latest Version]] [[HelloThumbnail - TiddlyWikiLinks]] [[HelloThumbnail - Developers]] [[HelloThumbnail - Funding]] [[HelloThumbnail - Marketplace]] [[HelloThumbnail - Intertwingled Innovations]]
|
||||
modified: 20150414070948246
|
||||
title: HelloThumbnail
|
||||
type: text/vnd.tiddlywiki
|
||||
|
@ -5,6 +5,5 @@ image: Funding.png
|
||||
link: Funding TiddlyWiki
|
||||
tags: HelloThumbnail
|
||||
title: HelloThumbnail - Funding
|
||||
ribbon-text: NEW
|
||||
|
||||
Find out how you can help support ~TiddlyWiki financially
|
@ -5,6 +5,5 @@ background-color: #EAE57D
|
||||
image: TiddlyWiki Marketplace Banner
|
||||
caption: ~TiddlyWiki Marketplace
|
||||
link: TiddlyWiki Marketplace
|
||||
ribbon-text: NEW
|
||||
|
||||
Explore commercial products and services for ~TiddlyWiki
|
@ -0,0 +1,9 @@
|
||||
title: HelloThumbnail - Twenty Years of TiddlyWiki
|
||||
tags: HelloThumbnail
|
||||
color: #D5B7EA
|
||||
image: Twenty Years of TiddlyWiki
|
||||
caption: Twenty Years of ~TiddlyWiki
|
||||
link: History of TiddlyWiki
|
||||
ribbon-text: NEW
|
||||
|
||||
Celebrating 20 years since the launch of ~TiddlyWiki
|
BIN
editions/tw5.com/tiddlers/images/Twenty Years of TiddlyWiki.png
Normal file
BIN
editions/tw5.com/tiddlers/images/Twenty Years of TiddlyWiki.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 224 KiB |
@ -0,0 +1,4 @@
|
||||
title: Twenty Years of TiddlyWiki
|
||||
type: image/png
|
||||
tags: picture
|
||||
alt-text: Screenshot of TiddlyWiki from 20th September 2004 with a banner reading "Twenty Years"
|
@ -1,11 +1,11 @@
|
||||
created: 20160107223425581
|
||||
list:
|
||||
modified: 20170228102531138
|
||||
tags: OfficialPlugins [[Plugin Editions]]
|
||||
caption: {{!!title}} - ^^deprecated^^
|
||||
modified: 20240913122437925
|
||||
tags: OfficialPlugins [[Plugin Editions]] $:/deprecated
|
||||
title: D3 Plugin
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
The D3 plugin integrates the D3 visualisation library with TiddlyWiki.
|
||||
<<.deprecated-since "5.3.4">> The D3 plugin integrates the D3 visualisation library with TiddlyWiki.
|
||||
|
||||
See https://tiddlywiki.com/plugins/tiddlywiki/d3/
|
||||
|
||||
|
@ -1,7 +1,8 @@
|
||||
created: 20170328173820802
|
||||
modified: 20170328174328792
|
||||
tags: OfficialPlugins
|
||||
caption: {{!!title}} - ^^deprecated^^
|
||||
modified: 20240913122844238
|
||||
tags: OfficialPlugins $:/deprecated
|
||||
title: Mobile Drag And Drop Shim Plugin
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
The Mobile Drag And Drop Shim Plugin provides a "shim" that enables HTML 5 compatible drag and drop operations on mobile browsers, including iOS and Android. The shim was created by Tim Ruffles and is published at https://github.com/timruffles/ios-html5-drag-drop-shim.
|
||||
<<.deprecated-since "5.3.4">> The Mobile Drag And Drop Shim Plugin provides a "shim" that enables HTML 5 compatible drag and drop operations on mobile browsers, including iOS and Android. The shim was created by Tim Ruffles and is published at https://github.com/timruffles/ios-html5-drag-drop-shim.
|
||||
|
@ -1,6 +1,6 @@
|
||||
caption: ignore parser mode
|
||||
created: 20220111000929700
|
||||
modified: 20220122182842038
|
||||
modified: 20240921085112396
|
||||
tags: [[WikiText Parser Modes]]
|
||||
title: Places where the parser ignores WikiText
|
||||
type: text/vnd.tiddlywiki
|
||||
@ -10,5 +10,5 @@ Text enclosed by these constructs is skipped by the parser and WikiText punctuat
|
||||
|[[Code Blocks in WikiText]]|One of the main purposes of code blocks is to suppress wikitext expansion. Once the code block starts, the parser will ignore all WikiText punctuation until the code block ends.|
|
||||
|[[Images in WikiText]]|`[[img|literal image link text]]` - the text enclosed by square braces will be ignored. This means, for example, [[transclusions|Transclusion in WikiText]] and [[macro calls|Macro Calls]] cannot be used to dynamically construct the link text|
|
||||
|[[Linking in WikiText]]|`[[literal link target|literal link text]]` - the text enclosed by square braces will be ignored. This means, for example, [[transclusions|Transclusion in WikiText]] and [[macro calls|Macro Calls]] cannot be used to dynamically construct the link target or the link text|
|
||||
|[[Macro Calls]]|`<<mymacro ''notbold'' "literal text" "<<macro_expansion_ignored>>" {{transclusion_ignored}}>>` - while processing the text enclosed by a macro call, the parser will follow special rules for detecting macro parameters. These rules do not include detection of WikiText. However, after the parameters are substituted into the macro definition, the result will be parsed using [[normal rules|Wiki Text Parser Modes]]. This will likely result in the detection of any WikiText.|
|
||||
|[[Macro Calls]]|`<<mymacro ''notbold'' "literal text" "<<macro_expansion_ignored>>" {{transclusion_ignored}}>>` - while processing the text enclosed by a macro call, the parser will follow special rules for detecting macro parameters. These rules do not include detection of WikiText. However, after the parameters are substituted into the macro definition, the result will be parsed using the [[normal rules|WikiText Parser Modes]]. This will likely result in the detection of any WikiText.|
|
||||
|
||||
|
@ -96,6 +96,10 @@ Plugins/PluginWillRequireReload: (wymaga przeładowania)
|
||||
Plugins/Plugins/Caption: Wtyczki
|
||||
Plugins/Plugins/Hint: Wtyczki
|
||||
Plugins/Reinstall/Caption: zainstaluj ponownie
|
||||
Plugins/Stability/Deprecated: WYCOFANY
|
||||
Plugins/Stability/Experimental: EKSPERYMENTALNY
|
||||
Plugins/Stability/Legacy: STARY
|
||||
Plugins/Stability/Stable: STABILNY
|
||||
Plugins/Themes/Caption: Motywy
|
||||
Plugins/Themes/Hint: Wtyczki z motywami
|
||||
Plugins/Update/Caption: aktualizuj
|
||||
|
@ -29,7 +29,7 @@ name: Czytelna nazwa powiązana z tiddlerem wtyczki
|
||||
parent-plugin: Określa nadrzędną wtyczkę
|
||||
plugin-priority: Numeryczna wartość określająca tiddlera wtyczki
|
||||
plugin-type: Typ tiddlera wtyczki
|
||||
stability: Stan rozwoju wtyczki: wycofany (deprecated), eksperymentalny (experimental), stabilny (stable), stary (legacy)
|
||||
stability: Stan rozwoju wtyczki: wycofany, eksperymentalny, stabilny, stary
|
||||
revision: Numer rewizji tiddlera przechowywany na serwerze
|
||||
released: Data wydania TiddlyWiki
|
||||
source: URL źródłowy powiązany z tiddlerem
|
||||
|
@ -42,7 +42,7 @@ Error/RetrievingSkinny: Bład przy pobieraniu listy tiddlerów
|
||||
Error/SavingToTWEdit: Bład przy zapisywaniu do TWEdit
|
||||
Error/WhileSaving: Bład przy zapisywaniu
|
||||
Error/XMLHttpRequest: Kod błedu XMLHttpRequest
|
||||
Error/ZoominTextNode: Story View Error: It appears you tried to interact with a tiddler that displays in a custom container. This is most likely caused by using `$:/tags/StoryTiddlerTemplateFilter` with a template that contains text or whitespace at the start. Please use the pragma `\whitespace trim` and ensure the whole contents of the tiddler is wrapped in a single HTML element. The text that caused this issue:
|
||||
Error/ZoominTextNode: Błąd Widoku: Wykryto błędną interakcję z tiddlerem, który wyświetlany jest w niestandardowym kontenerze. Jest to najprawdopodobniej spowodowane użyciem `$:/tags/StoryTiddlerTemplateFilter` z motywem, który ma tekst lub białe znaki na początku. Użyj pragmy `\whitespace trim` i upewnij się, że cała treść tiddlera opakowana jest w jeden element HTML. Tekst, który spowodał problem:
|
||||
InternalJavaScriptError/Title: Wewnętrzny bład JavaScript
|
||||
InternalJavaScriptError/Hint: Ups, to się nie powinno zdarzyć. Zalecamy ponowne uruchomienie TiddlyWiki poprzez odświeżenie strony w przeglądarce.
|
||||
LayoutSwitcher/Description: Otwórzy wybór motywu
|
||||
|
@ -1,4 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/browser-storage/settings
|
||||
caption: Browser Storage
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
! Disable
|
||||
|
||||
|
@ -1,4 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/comments/config
|
||||
caption: Comments
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
\define select(description,filter)
|
||||
<$button>
|
||||
|
@ -1,4 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/consent-banner/config
|
||||
caption: Consent Banner
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
! [[Greeting Message|$:/config/plugins/tiddlywiki/consent-banner/greeting-message]]
|
||||
|
||||
|
@ -1,4 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/dynaview/config
|
||||
caption: Dynaview
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
<$checkbox tiddler="$:/config/DynaView/ViewportDimensions" field="text" checked="yes" unchecked="no" default="no"> Enable dynamic saving of the viewport [[width|$:/state/DynaView/ViewportDimensions/Width]] and [[height|$:/state/DynaView/ViewportDimensions/Height]]</$checkbox>
|
||||
|
||||
|
@ -1,4 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/external-attachments/settings
|
||||
caption: External Attachments
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
When used on platforms that provide the necessary support (such as ~TiddlyDesktop), you can optionally import binary files as external tiddlers that reference the original file via the ''_canonical_uri'' field.
|
||||
|
||||
|
@ -1,4 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/freelinks/settings
|
||||
caption: Freelinks
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
Filter defining tiddlers to which freelinks are made: <$edit-text tiddler="$:/config/Freelinks/TargetFilter" tag="input" placeholder="Filter expression..." default=""/>
|
||||
|
||||
|
@ -1,4 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/geospatial/settings
|
||||
caption: Geospatial
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
! Geospatial Plugin Settings
|
||||
|
||||
|
@ -292,7 +292,7 @@ GeomapWidget.prototype.setMapView = function() {
|
||||
this.map.setMaxZoom($tw.utils.parseInt(this.getAttribute("maxZoom")));
|
||||
}
|
||||
// Set the view to the content of the state tiddler
|
||||
var stateTiddler = this.geomapStateTitle && this.wiki.getTiddler(this.geomapStateTitle);
|
||||
var stateTiddler = this.getAttribute("state") && this.wiki.getTiddler(this.getAttribute("state"));
|
||||
if(stateTiddler) {
|
||||
this.map.setView([$tw.utils.parseNumber(stateTiddler.fields.lat,0),$tw.utils.parseNumber(stateTiddler.fields.long,0)], $tw.utils.parseNumber(stateTiddler.fields.zoom,0));
|
||||
return true;
|
||||
|
@ -1,4 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/googleanalytics/settings
|
||||
caption: Google Analytics
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
''[[Google Analytics Measurement ID|$:/GoogleAnalyticsMeasurementID]]'': (mandatory) a code of the form `G-XXXXXXXXXX` where X are digits or uppercase letters<br/><$edit-text tiddler="$:/GoogleAnalyticsMeasurementID" default="" tag="input"/>
|
||||
|
||||
|
@ -1,4 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/katex/config
|
||||
caption: KaTeX
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
<div class="tc-control-panel">
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/savetrail/settings
|
||||
|
||||
caption: Save Trail
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
<$checkbox tiddler="$:/config/SaveTrailPlugin/enable" field="text" checked="yes" unchecked="no"> Enable automatic saving of modified tiddlers</$checkbox>
|
||||
|
||||
|
@ -1,4 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/share/settings
|
||||
caption: Share
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
!! Base sharing URL
|
||||
|
||||
|
@ -1,4 +1,6 @@
|
||||
title: $:/plugins/tiddlywiki/tour/settings
|
||||
caption: Tour
|
||||
tags: $:/tags/ControlPanel/SettingsTab
|
||||
|
||||
\import [[$:/plugins/tiddlywiki/tour/variables]]
|
||||
\procedure button-expand-collapse-all(caption,text)
|
||||
|
@ -1201,6 +1201,20 @@ button.tc-btn-invisible.tc-remove-tag-button {
|
||||
color: <<colour muted-foreground>>;
|
||||
}
|
||||
|
||||
.tc-tiddler-lazy-loading {
|
||||
height: 4px;
|
||||
width: 100%;
|
||||
background: no-repeat linear-gradient(<<colour background>> 0 0),no-repeat linear-gradient(<<colour background>> 0 0),<<colour primary>>;
|
||||
background-size: 60% 100%;
|
||||
animation: animation-loading-progress 3s infinite;
|
||||
}
|
||||
|
||||
@keyframes animation-loading-progress {
|
||||
0% {background-position:-150% 0,-150% 0}
|
||||
66% {background-position: 250% 0,-150% 0}
|
||||
100% {background-position: 250% 0, 250% 0}
|
||||
}
|
||||
|
||||
.tc-titlebar h2 {
|
||||
font-size: 1em;
|
||||
display: inline;
|
||||
|
Loading…
x
Reference in New Issue
Block a user