mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2026-01-23 03:14:40 +00:00
Compare commits
2 Commits
nested-mac
...
revised-js
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
418aab50a5 | ||
|
|
f82d15e55f |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,6 +1,5 @@
|
||||
.DS_Store
|
||||
.c9/
|
||||
.vscode/
|
||||
tmp/
|
||||
output/
|
||||
node_modules/
|
||||
|
||||
13
boot/boot.js
13
boot/boot.js
@@ -1230,16 +1230,13 @@ $tw.Wiki = function(options) {
|
||||
this.getTiddler = function(title) {
|
||||
if(title) {
|
||||
var t = tiddlers[title];
|
||||
if(t !== undefined) {
|
||||
if(t instanceof $tw.Tiddler) {
|
||||
return t;
|
||||
} else {
|
||||
var s = shadowTiddlers[title];
|
||||
if(s !== undefined) {
|
||||
return s.tiddler;
|
||||
}
|
||||
} else if(title !== undefined && shadowTiddlers[title]) {
|
||||
return shadowTiddlers[title].tiddler;
|
||||
}
|
||||
return undefined;
|
||||
}
|
||||
return undefined;
|
||||
};
|
||||
|
||||
// Get an array of all tiddler titles
|
||||
@@ -2419,7 +2416,7 @@ $tw.boot.initStartup = function(options) {
|
||||
$tw.utils.registerFileType("application/epub+zip","base64",".epub");
|
||||
$tw.utils.registerFileType("application/octet-stream","base64",".octet-stream");
|
||||
// Create the wiki store for the app
|
||||
$tw.wiki = new $tw.Wiki($tw.safeMode && {enableIndexers: []});
|
||||
$tw.wiki = new $tw.Wiki();
|
||||
// Install built in tiddler fields modules
|
||||
$tw.Tiddler.fieldModules = $tw.modules.getModulesByTypeAsHashmap("tiddlerfield");
|
||||
// Install the tiddler deserializer modules
|
||||
|
||||
@@ -13,7 +13,7 @@ dependents: For a plugin, lists the dependent plugin titles
|
||||
description: The descriptive text for a plugin, or a modal dialogue
|
||||
draft.of: For draft tiddlers, contains the title of the tiddler of which this is a draft
|
||||
draft.title: For draft tiddlers, contains the proposed new title of the tiddler
|
||||
footer: The footer text for a modal
|
||||
footer: The footer text for a wizard
|
||||
hide-body: The view template will hide bodies of tiddlers if set to ''yes''
|
||||
icon: The title of the tiddler containing the icon associated with a tiddler
|
||||
library: Indicates that a tiddler should be saved as a JavaScript library if set to ''yes''
|
||||
@@ -28,7 +28,7 @@ plugin-type: The type of plugin in a plugin tiddler
|
||||
revision: The revision of the tiddler held at the server
|
||||
released: Date of a TiddlyWiki release
|
||||
source: The source URL associated with a tiddler
|
||||
subtitle: The subtitle text for a modal
|
||||
subtitle: The subtitle text for a wizard
|
||||
tags: A list of tags associated with a tiddler
|
||||
text: The body text of a tiddler
|
||||
throttle.refresh: If present, throttles refreshes of this tiddler
|
||||
|
||||
@@ -87,7 +87,7 @@ function FramedEngine(options) {
|
||||
$tw.utils.addEventListeners(this.domNode,[
|
||||
{name: "click",handlerObject: this,handlerMethod: "handleClickEvent"},
|
||||
{name: "input",handlerObject: this,handlerMethod: "handleInputEvent"},
|
||||
{name: "keydown",handlerObject: this,handlerMethod: "handleKeydownEvent"},
|
||||
{name: "keydown",handlerObject: this.widget,handlerMethod: "handleKeydownEvent"},
|
||||
{name: "focus",handlerObject: this,handlerMethod: "handleFocusEvent"}
|
||||
]);
|
||||
// Add drag and drop event listeners if fileDrop is enabled
|
||||
@@ -192,17 +192,6 @@ FramedEngine.prototype.handleFocusEvent = function(event) {
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
Handle a keydown event
|
||||
*/
|
||||
FramedEngine.prototype.handleKeydownEvent = function(event) {
|
||||
if ($tw.keyboardManager.handleKeydownEvent(event, {onlyPriority: true})) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return this.widget.handleKeydownEvent(event);
|
||||
};
|
||||
|
||||
/*
|
||||
Handle a click
|
||||
*/
|
||||
|
||||
@@ -12,9 +12,6 @@ Adds tiddler filtering methods to the $tw.Wiki object.
|
||||
/*global $tw: false */
|
||||
"use strict";
|
||||
|
||||
/* Maximum permitted filter recursion depth */
|
||||
var MAX_FILTER_DEPTH = 300;
|
||||
|
||||
/*
|
||||
Parses an operation (i.e. a run) within a filter string
|
||||
operators: Array of array of operator nodes into which results should be inserted
|
||||
@@ -331,7 +328,7 @@ exports.compileFilter = function(filterString) {
|
||||
})());
|
||||
});
|
||||
// Return a function that applies the operations to a source iterator of tiddler titles
|
||||
var fnMeasured = $tw.perf.measure("filter: " + filterString,function filterFunction(source,widget) {
|
||||
var compiled = $tw.perf.measure("filter: " + filterString,function filterFunction(source,widget) {
|
||||
if(!source) {
|
||||
source = self.each;
|
||||
} else if(typeof source === "object") { // Array or hashmap
|
||||
@@ -341,15 +338,9 @@ exports.compileFilter = function(filterString) {
|
||||
widget = $tw.rootWidget;
|
||||
}
|
||||
var results = new $tw.utils.LinkedList();
|
||||
self.filterRecursionCount = (self.filterRecursionCount || 0) + 1;
|
||||
if(self.filterRecursionCount < MAX_FILTER_DEPTH) {
|
||||
$tw.utils.each(operationFunctions,function(operationFunction) {
|
||||
operationFunction(results,source,widget);
|
||||
});
|
||||
} else {
|
||||
results.push("/**-- Excessive filter recursion --**/");
|
||||
}
|
||||
self.filterRecursionCount = self.filterRecursionCount - 1;
|
||||
$tw.utils.each(operationFunctions,function(operationFunction) {
|
||||
operationFunction(results,source,widget);
|
||||
});
|
||||
return results.toArray();
|
||||
});
|
||||
if(this.filterCacheCount >= 2000) {
|
||||
@@ -359,9 +350,9 @@ exports.compileFilter = function(filterString) {
|
||||
this.filterCache = Object.create(null);
|
||||
this.filterCacheCount = 0;
|
||||
}
|
||||
this.filterCache[filterString] = fnMeasured;
|
||||
this.filterCache[filterString] = compiled;
|
||||
this.filterCacheCount++;
|
||||
return fnMeasured;
|
||||
return compiled;
|
||||
};
|
||||
|
||||
})();
|
||||
|
||||
@@ -19,13 +19,13 @@ exports.variable = function(source,prefix,options) {
|
||||
var results = [];
|
||||
if(prefix === "!") {
|
||||
source(function(tiddler,title) {
|
||||
if(options.widget.getVariable(title) === undefined) {
|
||||
if(!(title in options.widget.variables)) {
|
||||
results.push(title);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
source(function(tiddler,title) {
|
||||
if(options.widget.getVariable(title) !== undefined) {
|
||||
if(title in options.widget.variables) {
|
||||
results.push(title);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -16,15 +16,9 @@ Filter operator for returning the names of the active variables
|
||||
Export our filter function
|
||||
*/
|
||||
exports.variables = function(source,operator,options) {
|
||||
var names = [],
|
||||
widget = options.widget;
|
||||
while(widget && !widget.hasOwnProperty("variables")) {
|
||||
widget = widget.parentWidget;
|
||||
}
|
||||
if(widget && widget.variables) {
|
||||
for(var variable in widget.variables) {
|
||||
names.push(variable);
|
||||
}
|
||||
var names = [];
|
||||
for(var variable in options.widget.variables) {
|
||||
names.push(variable);
|
||||
}
|
||||
return names.sort();
|
||||
};
|
||||
|
||||
@@ -141,7 +141,6 @@ function KeyboardManager(options) {
|
||||
this.shortcutKeysList = [], // Stores the shortcut-key descriptors
|
||||
this.shortcutActionList = [], // Stores the corresponding action strings
|
||||
this.shortcutParsedList = []; // Stores the parsed key descriptors
|
||||
this.shortcutPriorityList = []; // Stores the parsed shortcut priority
|
||||
this.lookupNames = ["shortcuts"];
|
||||
this.lookupNames.push($tw.platform.isMac ? "shortcuts-mac" : "shortcuts-not-mac")
|
||||
this.lookupNames.push($tw.platform.isWindows ? "shortcuts-windows" : "shortcuts-not-windows");
|
||||
@@ -319,23 +318,12 @@ KeyboardManager.prototype.updateShortcutLists = function(tiddlerList) {
|
||||
this.shortcutKeysList[i] = tiddlerFields.key !== undefined ? tiddlerFields.key : undefined;
|
||||
this.shortcutActionList[i] = tiddlerFields.text;
|
||||
this.shortcutParsedList[i] = this.shortcutKeysList[i] !== undefined ? this.parseKeyDescriptors(this.shortcutKeysList[i]) : undefined;
|
||||
this.shortcutPriorityList[i] = tiddlerFields.priority === "yes" ? true : false;
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
event: the keyboard event object
|
||||
options:
|
||||
onlyPriority: true if only priority global shortcuts should be invoked
|
||||
*/
|
||||
KeyboardManager.prototype.handleKeydownEvent = function(event, options) {
|
||||
options = options || {};
|
||||
KeyboardManager.prototype.handleKeydownEvent = function(event) {
|
||||
var key, action;
|
||||
for(var i=0; i<this.shortcutTiddlers.length; i++) {
|
||||
if(options.onlyPriority && this.shortcutPriorityList[i] !== true) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if(this.shortcutParsedList[i] !== undefined && this.checkKeyDescriptors(event,this.shortcutParsedList[i])) {
|
||||
key = this.shortcutParsedList[i];
|
||||
action = this.shortcutActionList[i];
|
||||
|
||||
@@ -58,7 +58,7 @@ exports.parse = function() {
|
||||
var reEnd;
|
||||
if(this.match[3]) {
|
||||
// If so, the end of the body is marked with \end
|
||||
reEnd = new RegExp("(\\r?\\n\\\\end[^\\S\\n\\r]*(?:" + $tw.utils.escapeRegExp(this.match[1]) + ")?(?:$|\\r?\\n))","mg");
|
||||
reEnd = /(\r?\n\\end[^\S\n\r]*(?:$|\r?\n))/mg;
|
||||
} else {
|
||||
// Otherwise, the end of the definition is marked by the end of the line
|
||||
reEnd = /($|\r?\n)/mg;
|
||||
|
||||
@@ -41,6 +41,9 @@ exports.parse = function() {
|
||||
var node = {
|
||||
type: "element",
|
||||
tag: "span",
|
||||
attributes: {
|
||||
"class": {type: "string", value: "tc-inline-style"}
|
||||
},
|
||||
children: tree
|
||||
};
|
||||
if(classString) {
|
||||
@@ -49,9 +52,6 @@ exports.parse = function() {
|
||||
if(stylesString) {
|
||||
$tw.utils.addAttributeToParseTreeNode(node,"style",stylesString);
|
||||
}
|
||||
if(!classString && !stylesString) {
|
||||
$tw.utils.addClassToParseTreeNode(node,"tc-inline-style");
|
||||
}
|
||||
return [node];
|
||||
};
|
||||
|
||||
|
||||
@@ -116,7 +116,7 @@ WikiParser.prototype.loadRemoteTiddler = function(url) {
|
||||
*/
|
||||
WikiParser.prototype.setupRules = function(proto,configPrefix) {
|
||||
var self = this;
|
||||
if(!$tw.safeMode) {
|
||||
if(!$tw.safemode) {
|
||||
$tw.utils.each(proto,function(object,name) {
|
||||
if(self.wiki.getTiddlerText(configPrefix + name,"enable") !== "enable") {
|
||||
delete proto[name];
|
||||
|
||||
@@ -42,7 +42,7 @@ var TW_TextNode = function(text) {
|
||||
this.textContent = text + "";
|
||||
};
|
||||
|
||||
Object.setPrototypeOf(TW_TextNode,TW_Node.prototype);
|
||||
TW_TextNode.prototype = Object.create(TW_Node.prototype);
|
||||
|
||||
Object.defineProperty(TW_TextNode.prototype, "nodeType", {
|
||||
get: function() {
|
||||
@@ -67,7 +67,7 @@ var TW_Element = function(tag,namespace) {
|
||||
this.namespaceURI = namespace || "http://www.w3.org/1999/xhtml";
|
||||
};
|
||||
|
||||
Object.setPrototypeOf(TW_Element,TW_Node.prototype);
|
||||
TW_Element.prototype = Object.create(TW_Node.prototype);
|
||||
|
||||
Object.defineProperty(TW_Element.prototype, "style", {
|
||||
get: function() {
|
||||
|
||||
@@ -48,9 +48,7 @@ Logger.prototype.log = function(/* args */) {
|
||||
this.saveBufferLogger.buffer = this.saveBufferLogger.buffer.slice(-this.saveBufferLogger.saveLimit);
|
||||
}
|
||||
if(console !== undefined && console.log !== undefined) {
|
||||
var logMessage = [$tw.utils.terminalColour(this.colour) + this.componentName + ":"].concat(Array.prototype.slice.call(arguments,0));
|
||||
logMessage[logMessage.length-1] += $tw.utils.terminalColour();
|
||||
return Function.apply.call(console.log, console, logMessage);
|
||||
return Function.apply.call(console.log, console, [$tw.utils.terminalColour(this.colour),this.componentName + ":"].concat(Array.prototype.slice.call(arguments,0)).concat($tw.utils.terminalColour()));
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -12,26 +12,12 @@ Parse tree utility functions.
|
||||
/*global $tw: false */
|
||||
"use strict";
|
||||
|
||||
/*
|
||||
Add attribute to parse tree node
|
||||
Can be invoked as (node,name,value) or (node,attr)
|
||||
*/
|
||||
exports.addAttributeToParseTreeNode = function(node,name,value) {
|
||||
var attribute = typeof name === "object" ? name : {name: name, type: "string", value: value};
|
||||
name = attribute.name;
|
||||
var attribute = {name: name, type: "string", value: value};
|
||||
node.attributes = node.attributes || {};
|
||||
node.orderedAttributes = node.orderedAttributes || [];
|
||||
node.attributes[name] = attribute;
|
||||
var foundIndex = -1;
|
||||
$tw.utils.each(node.orderedAttributes,function(attr,index) {
|
||||
if(attr.name === name) {
|
||||
foundIndex = index;
|
||||
}
|
||||
});
|
||||
if(foundIndex === -1) {
|
||||
if(node.orderedAttributes) {
|
||||
node.orderedAttributes.push(attribute);
|
||||
} else {
|
||||
node.orderedAttributes[foundIndex] = attribute;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -65,8 +51,10 @@ exports.addClassToParseTreeNode = function(node,classString) {
|
||||
// If the class attribute does not exist, we must create it first.
|
||||
attribute = {name: "class", type: "string", value: ""};
|
||||
node.attributes["class"] = attribute;
|
||||
node.orderedAttributes = node.orderedAttributes || [];
|
||||
node.orderedAttributes.push(attribute);
|
||||
if(node.orderedAttributes) {
|
||||
// If there are orderedAttributes, we've got to add them there too.
|
||||
node.orderedAttributes.push(attribute);
|
||||
}
|
||||
}
|
||||
if(attribute.type === "string") {
|
||||
if(attribute.value !== "") {
|
||||
@@ -86,8 +74,10 @@ exports.addStyleToParseTreeNode = function(node,name,value) {
|
||||
if(!attribute) {
|
||||
attribute = {name: "style", type: "string", value: ""};
|
||||
node.attributes.style = attribute;
|
||||
node.orderedAttributes = node.orderedAttributes || [];
|
||||
node.orderedAttributes.push(attribute);
|
||||
if(node.orderedAttributes) {
|
||||
// If there are orderedAttributes, we've got to add them there too.
|
||||
node.orderedAttributes.push(attribute);
|
||||
}
|
||||
}
|
||||
if(attribute.type === "string") {
|
||||
attribute.value += name + ":" + value + ";";
|
||||
|
||||
@@ -66,14 +66,14 @@ CheckboxWidget.prototype.render = function(parent,nextSibling) {
|
||||
CheckboxWidget.prototype.getValue = function() {
|
||||
var tiddler = this.wiki.getTiddler(this.checkboxTitle);
|
||||
if(tiddler || this.checkboxFilter) {
|
||||
if(tiddler && this.checkboxTag) {
|
||||
if(this.checkboxTag) {
|
||||
if(this.checkboxInvertTag === "yes") {
|
||||
return !tiddler.hasTag(this.checkboxTag);
|
||||
} else {
|
||||
return tiddler.hasTag(this.checkboxTag);
|
||||
}
|
||||
}
|
||||
if(tiddler && (this.checkboxField || this.checkboxIndex)) {
|
||||
if(this.checkboxField || this.checkboxIndex) {
|
||||
// Same logic applies to fields and indexes
|
||||
var value;
|
||||
if(this.checkboxField) {
|
||||
@@ -206,18 +206,11 @@ CheckboxWidget.prototype.handleChangeEvent = function(event) {
|
||||
}
|
||||
// Set the list field (or index) if specified
|
||||
if(this.checkboxListField || this.checkboxListIndex) {
|
||||
var fieldContents, listContents, oldPos, newPos;
|
||||
var listContents, oldPos, newPos;
|
||||
if(this.checkboxListField) {
|
||||
fieldContents = tiddler ? tiddler.fields[this.checkboxListField] : undefined;
|
||||
listContents = tiddler.getFieldList(this.checkboxListField);
|
||||
} else {
|
||||
fieldContents = this.wiki.extractTiddlerDataItem(this.checkboxTitle,this.checkboxListIndex);
|
||||
}
|
||||
if($tw.utils.isArray(fieldContents)) {
|
||||
// Make a copy so we can modify it without changing original that's refrenced elsewhere
|
||||
listContents = fieldContents.slice(0);
|
||||
} else {
|
||||
listContents = $tw.utils.parseStringArray(fieldContents) || [];
|
||||
// No need to copy since parseStringArray returns a fresh array, not refrenced elsewhere
|
||||
listContents = $tw.utils.parseStringArray(this.wiki.extractTiddlerDataItem(this.checkboxTitle,this.checkboxListIndex) || "") || [];
|
||||
}
|
||||
oldPos = notValue ? listContents.indexOf(notValue) : -1;
|
||||
newPos = value ? listContents.indexOf(value) : -1;
|
||||
|
||||
@@ -1,63 +0,0 @@
|
||||
/*\
|
||||
title: $:/core/modules/widgets/error.js
|
||||
type: application/javascript
|
||||
module-type: widget
|
||||
|
||||
Error widget
|
||||
|
||||
\*/
|
||||
(function(){
|
||||
|
||||
/*jslint node: true, browser: true */
|
||||
/*global $tw: false */
|
||||
"use strict";
|
||||
|
||||
var Widget = require("$:/core/modules/widgets/widget.js").widget;
|
||||
|
||||
var ErrorWidget = function(parseTreeNode,options) {
|
||||
this.initialise(parseTreeNode,options);
|
||||
};
|
||||
|
||||
/*
|
||||
Inherit from the base widget class
|
||||
*/
|
||||
ErrorWidget.prototype = new Widget();
|
||||
|
||||
/*
|
||||
Render this widget into the DOM
|
||||
*/
|
||||
ErrorWidget.prototype.render = function(parent,nextSibling) {
|
||||
this.parentDomNode = parent;
|
||||
this.computeAttributes();
|
||||
this.execute();
|
||||
var message = this.getAttribute("$message","Unknown error"),
|
||||
domNode = this.document.createElement("span");
|
||||
domNode.appendChild(this.document.createTextNode(message));
|
||||
domNode.className = "tc-error";
|
||||
parent.insertBefore(domNode,nextSibling);
|
||||
this.domNodes.push(domNode);
|
||||
};
|
||||
|
||||
/*
|
||||
Compute the internal state of the widget
|
||||
*/
|
||||
ErrorWidget.prototype.execute = function() {
|
||||
// Nothing to do for a text node
|
||||
};
|
||||
|
||||
/*
|
||||
Selectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering
|
||||
*/
|
||||
ErrorWidget.prototype.refresh = function(changedTiddlers) {
|
||||
var changedAttributes = this.computeAttributes();
|
||||
if(changedAttributes["$message"]) {
|
||||
this.refreshSelf();
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
exports.error = ErrorWidget;
|
||||
|
||||
})();
|
||||
@@ -1,108 +0,0 @@
|
||||
/*\
|
||||
title: $:/core/modules/widgets/genesis.js
|
||||
type: application/javascript
|
||||
module-type: widget
|
||||
|
||||
Genesis widget for dynamically creating widgets
|
||||
|
||||
\*/
|
||||
(function(){
|
||||
|
||||
/*jslint node: true, browser: true */
|
||||
/*global $tw: false */
|
||||
"use strict";
|
||||
|
||||
var Widget = require("$:/core/modules/widgets/widget.js").widget;
|
||||
|
||||
var GenesisWidget = function(parseTreeNode,options) {
|
||||
this.initialise(parseTreeNode,options);
|
||||
};
|
||||
|
||||
/*
|
||||
Inherit from the base widget class
|
||||
*/
|
||||
GenesisWidget.prototype = new Widget();
|
||||
|
||||
/*
|
||||
Render this widget into the DOM
|
||||
*/
|
||||
GenesisWidget.prototype.render = function(parent,nextSibling) {
|
||||
this.parentDomNode = parent;
|
||||
this.computeAttributes({filterFn: function(name) {
|
||||
// Only compute our own attributes which start with a single dollar
|
||||
return name.charAt(0) === "$" && name.charAt(1) !== "$";
|
||||
}});
|
||||
this.execute();
|
||||
this.renderChildren(parent,nextSibling);
|
||||
};
|
||||
|
||||
/*
|
||||
Compute the internal state of the widget
|
||||
*/
|
||||
GenesisWidget.prototype.execute = function() {
|
||||
var self = this;
|
||||
// Collect attributes
|
||||
this.genesisType = this.getAttribute("$type","element");
|
||||
this.genesisRemappable = this.getAttribute("$remappable","yes") === "yes";
|
||||
this.genesisNames = this.getAttribute("$names","");
|
||||
this.genesisValues = this.getAttribute("$values","");
|
||||
// Construct parse tree
|
||||
var isElementWidget = this.genesisType.charAt(0) !== "$",
|
||||
nodeType = isElementWidget ? "element" : this.genesisType.substr(1),
|
||||
nodeTag = isElementWidget ? this.genesisType : undefined;
|
||||
var parseTreeNodes = [{
|
||||
type: nodeType,
|
||||
tag: nodeTag,
|
||||
attributes: {},
|
||||
orderedAttributes: [],
|
||||
children: this.parseTreeNode.children || [],
|
||||
isNotRemappable: !this.genesisRemappable
|
||||
}];
|
||||
// Apply explicit attributes
|
||||
$tw.utils.each($tw.utils.getOrderedAttributesFromParseTreeNode(this.parseTreeNode),function(attribute) {
|
||||
var name = attribute.name;
|
||||
if(name.charAt(0) === "$") {
|
||||
if(name.charAt(1) === "$") {
|
||||
// Double $$ is changed to a single $
|
||||
name = name.substr(1);
|
||||
} else {
|
||||
// Single dollar is ignored
|
||||
return;
|
||||
}
|
||||
}
|
||||
$tw.utils.addAttributeToParseTreeNode(parseTreeNodes[0],$tw.utils.extend({},attribute,{name: name}));
|
||||
});
|
||||
// Apply attributes in $names/$values
|
||||
this.attributeNames = [];
|
||||
this.attributeValues = [];
|
||||
if(this.genesisNames && this.genesisValues) {
|
||||
this.attributeNames = this.wiki.filterTiddlers(self.genesisNames,this);
|
||||
this.attributeValues = this.wiki.filterTiddlers(self.genesisValues,this);
|
||||
$tw.utils.each(this.attributeNames,function(varname,index) {
|
||||
$tw.utils.addAttributeToParseTreeNode(parseTreeNodes[0],varname,self.attributeValues[index] || "");
|
||||
});
|
||||
}
|
||||
// Construct the child widgets
|
||||
this.makeChildWidgets(parseTreeNodes);
|
||||
};
|
||||
|
||||
/*
|
||||
Selectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering
|
||||
*/
|
||||
GenesisWidget.prototype.refresh = function(changedTiddlers) {
|
||||
var changedAttributes = this.computeAttributes(),
|
||||
filterNames = this.getAttribute("$names",""),
|
||||
filterValues = this.getAttribute("$values",""),
|
||||
attributeNames = this.wiki.filterTiddlers(filterNames,this),
|
||||
attributeValues = this.wiki.filterTiddlers(filterValues,this);
|
||||
if($tw.utils.count(changedAttributes) > 0 || !$tw.utils.isArrayEqual(this.attributeNames,attributeNames) || !$tw.utils.isArrayEqual(this.attributeValues,attributeValues)) {
|
||||
this.refreshSelf();
|
||||
return true;
|
||||
} else {
|
||||
return this.refreshChildren(changedTiddlers);
|
||||
}
|
||||
};
|
||||
|
||||
exports.genesis = GenesisWidget;
|
||||
|
||||
})();
|
||||
@@ -39,10 +39,7 @@ Compute the internal state of the widget
|
||||
ImportVariablesWidget.prototype.execute = function(tiddlerList) {
|
||||
var widgetPointer = this;
|
||||
// Got to flush all the accumulated variables
|
||||
this.variables = Object.create(null);
|
||||
if(this.parentWidget) {
|
||||
Object.setPrototypeOf(this.variables,this.parentWidget.variables);
|
||||
}
|
||||
this.variables = new this.variablesConstructor();
|
||||
// Get our parameters
|
||||
this.filter = this.getAttribute("filter");
|
||||
// Compute the filter
|
||||
|
||||
@@ -53,10 +53,6 @@ KeyboardWidget.prototype.render = function(parent,nextSibling) {
|
||||
};
|
||||
|
||||
KeyboardWidget.prototype.handleChangeEvent = function(event) {
|
||||
if ($tw.keyboardManager.handleKeydownEvent(event, {onlyPriority: true})) {
|
||||
return true;
|
||||
}
|
||||
|
||||
var keyInfo = $tw.keyboardManager.getMatchingKeyDescriptor(event,this.keyInfoArray);
|
||||
if(keyInfo) {
|
||||
var handled = this.invokeActions(this,event);
|
||||
|
||||
@@ -51,9 +51,11 @@ LetWidget.prototype.computeAttributes = function() {
|
||||
$tw.utils.each($tw.utils.getOrderedAttributesFromParseTreeNode(this.parseTreeNode),function(attribute) {
|
||||
var value = self.computeAttribute(attribute),
|
||||
name = attribute.name;
|
||||
// Now that it's prepped, we're allowed to look this variable up
|
||||
// when defining later variables
|
||||
self.currentValueFor[name] = value;
|
||||
if(name.charAt(0) !== "$") {
|
||||
// Now that it's prepped, we're allowed to look this variable up
|
||||
// when defining later variables
|
||||
self.currentValueFor[name] = value;
|
||||
}
|
||||
});
|
||||
// Run through again, setting variables and looking for differences
|
||||
$tw.utils.each(this.currentValueFor,function(value,name) {
|
||||
|
||||
@@ -175,11 +175,6 @@ SelectWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return true;
|
||||
// If the target tiddler value has changed, just update setting and refresh the children
|
||||
} else {
|
||||
if(changedAttributes.class) {
|
||||
this.selectClass = this.getAttribute("class");
|
||||
this.getSelectDomNode().setAttribute("class",this.selectClass);
|
||||
}
|
||||
|
||||
var childrenRefreshed = this.refreshChildren(changedTiddlers);
|
||||
if(changedTiddlers[this.selectTitle] || childrenRefreshed) {
|
||||
this.setSelectValue();
|
||||
|
||||
@@ -70,9 +70,11 @@ TranscludeWidget.prototype.execute = function() {
|
||||
// Check for recursion
|
||||
if(parser) {
|
||||
if(this.parentWidget && this.parentWidget.hasVariable("transclusion",recursionMarker)) {
|
||||
parseTreeNodes = [{type: "error", attributes: {
|
||||
"$message": {type: "string", value: $tw.language.getString("Error/RecursiveTransclusion")}
|
||||
}}];
|
||||
parseTreeNodes = [{type: "element", tag: "span", attributes: {
|
||||
"class": {type: "string", value: "tc-error"}
|
||||
}, children: [
|
||||
{type: "text", text: $tw.language.getString("Error/RecursiveTransclusion")}
|
||||
]}];
|
||||
}
|
||||
}
|
||||
// Construct the child widgets
|
||||
|
||||
@@ -12,9 +12,6 @@ Widget base class
|
||||
/*global $tw: false */
|
||||
"use strict";
|
||||
|
||||
/* Maximum permitted depth of the widget tree for recursion detection */
|
||||
var MAX_WIDGET_TREE_DEPTH = 1000;
|
||||
|
||||
/*
|
||||
Create a widget object for a parse tree node
|
||||
parseTreeNode: reference to the parse tree node to be rendered
|
||||
@@ -41,10 +38,9 @@ Widget.prototype.initialise = function(parseTreeNode,options) {
|
||||
this.parseTreeNode = parseTreeNode;
|
||||
this.wiki = options.wiki;
|
||||
this.parentWidget = options.parentWidget;
|
||||
this.variables = Object.create(null);
|
||||
if(this.parentWidget) {
|
||||
Object.setPrototypeOf(this.variables,this.parentWidget.variables);
|
||||
}
|
||||
this.variablesConstructor = function() {};
|
||||
this.variablesConstructor.prototype = this.parentWidget ? this.parentWidget.variables : {};
|
||||
this.variables = new this.variablesConstructor();
|
||||
this.document = options.document;
|
||||
this.attributes = {};
|
||||
this.children = [];
|
||||
@@ -361,20 +357,6 @@ Widget.prototype.assignAttributes = function(domNode,options) {
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
Get the number of ancestor widgets for this widget
|
||||
*/
|
||||
Widget.prototype.getAncestorCount = function() {
|
||||
if(this.ancestorCount === undefined) {
|
||||
if(this.parentWidget) {
|
||||
this.ancestorCount = this.parentWidget.getAncestorCount() + 1;
|
||||
} else {
|
||||
this.ancestorCount = 0;
|
||||
}
|
||||
}
|
||||
return this.ancestorCount;
|
||||
};
|
||||
|
||||
/*
|
||||
Make child widgets correspondng to specified parseTreeNodes
|
||||
*/
|
||||
@@ -382,29 +364,21 @@ Widget.prototype.makeChildWidgets = function(parseTreeNodes,options) {
|
||||
options = options || {};
|
||||
this.children = [];
|
||||
var self = this;
|
||||
// Check for too much recursion
|
||||
if(this.getAncestorCount() > MAX_WIDGET_TREE_DEPTH) {
|
||||
this.children.push(this.makeChildWidget({type: "error", attributes: {
|
||||
"$message": {type: "string", value: $tw.language.getString("Error/RecursiveTransclusion")}
|
||||
}}));
|
||||
} else {
|
||||
// Create set variable widgets for each variable
|
||||
$tw.utils.each(options.variables,function(value,name) {
|
||||
var setVariableWidget = {
|
||||
type: "set",
|
||||
attributes: {
|
||||
name: {type: "string", value: name},
|
||||
value: {type: "string", value: value}
|
||||
},
|
||||
children: parseTreeNodes
|
||||
};
|
||||
parseTreeNodes = [setVariableWidget];
|
||||
});
|
||||
// Create the child widgets
|
||||
$tw.utils.each(parseTreeNodes || (this.parseTreeNode && this.parseTreeNode.children),function(childNode) {
|
||||
self.children.push(self.makeChildWidget(childNode));
|
||||
});
|
||||
}
|
||||
// Create set variable widgets for each variable
|
||||
$tw.utils.each(options.variables,function(value,name) {
|
||||
var setVariableWidget = {
|
||||
type: "set",
|
||||
attributes: {
|
||||
name: {type: "string", value: name},
|
||||
value: {type: "string", value: value}
|
||||
},
|
||||
children: parseTreeNodes
|
||||
};
|
||||
parseTreeNodes = [setVariableWidget];
|
||||
});
|
||||
$tw.utils.each(parseTreeNodes || (this.parseTreeNode && this.parseTreeNode.children),function(childNode) {
|
||||
self.children.push(self.makeChildWidget(childNode));
|
||||
});
|
||||
};
|
||||
|
||||
/*
|
||||
|
||||
@@ -34,8 +34,6 @@ external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #0000aa
|
||||
external-link-foreground: #0000ee
|
||||
foreground: #333333
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-background: #ecf2ff
|
||||
message-border: #cfd6e6
|
||||
message-foreground: #547599
|
||||
|
||||
@@ -34,8 +34,6 @@ external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #0000aa
|
||||
external-link-foreground: #0000ee
|
||||
foreground: #333353
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-background: #ecf2ff
|
||||
message-border: #cfd6e6
|
||||
message-foreground: #547599
|
||||
|
||||
@@ -34,8 +34,6 @@ external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #0000aa
|
||||
external-link-foreground: #0000ee
|
||||
foreground: #333333
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-background: #ecf2ff
|
||||
message-border: #cfd6e6
|
||||
message-foreground: #547599
|
||||
|
||||
@@ -34,8 +34,6 @@ external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #00a
|
||||
external-link-foreground: #00e
|
||||
foreground: #000
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-background: <<colour foreground>>
|
||||
message-border: <<colour background>>
|
||||
message-foreground: <<colour background>>
|
||||
|
||||
@@ -34,8 +34,6 @@ external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #00a
|
||||
external-link-foreground: #00e
|
||||
foreground: #fff
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-background: <<colour foreground>>
|
||||
message-border: <<colour background>>
|
||||
message-foreground: <<colour background>>
|
||||
|
||||
@@ -32,8 +32,6 @@ external-link-foreground-hover:
|
||||
external-link-foreground-visited: #BF5AF2
|
||||
external-link-foreground: #32D74B
|
||||
foreground: #FFFFFF
|
||||
highlight-background: #ffff78
|
||||
highlight-foreground: #000000
|
||||
menubar-background: #464646
|
||||
menubar-foreground: #ffffff
|
||||
message-background: <<colour background>>
|
||||
|
||||
@@ -36,8 +36,6 @@ external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #0000aa
|
||||
external-link-foreground: #0000ee
|
||||
foreground: #333333
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-background: #ecf2ff
|
||||
message-border: #cfd6e6
|
||||
message-foreground: #547599
|
||||
|
||||
@@ -40,8 +40,6 @@ external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #313163
|
||||
external-link-foreground: #555592
|
||||
foreground: #2D2A23
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
menubar-background: #CDC2A6
|
||||
menubar-foreground: #5A5446
|
||||
message-background: #ECE5CF
|
||||
|
||||
@@ -41,8 +41,6 @@ external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #d3869b
|
||||
external-link-foreground: #8ec07c
|
||||
foreground: #fbf1c7
|
||||
highlight-background: #ffff79
|
||||
highlight-foreground: #000000
|
||||
menubar-background: #504945
|
||||
menubar-foreground: <<colour foreground>>
|
||||
message-background: #83a598
|
||||
|
||||
@@ -41,8 +41,6 @@ external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #5E81AC
|
||||
external-link-foreground: #8FBCBB
|
||||
foreground: #d8dee9
|
||||
highlight-background: #ffff78
|
||||
highlight-foreground: #000000
|
||||
menubar-background: #2E3440
|
||||
menubar-foreground: #d8dee9
|
||||
message-background: #2E3440
|
||||
|
||||
@@ -34,8 +34,6 @@ external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #0000aa
|
||||
external-link-foreground: #0000ee
|
||||
foreground: #333333
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-background: #ecf2ff
|
||||
message-border: #cfd6e6
|
||||
message-foreground: #547599
|
||||
|
||||
@@ -131,8 +131,6 @@ external-link-background-hover: inherit
|
||||
external-link-background-visited: inherit
|
||||
external-link-background: inherit
|
||||
external-link-foreground-hover: inherit
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-border: #cfd6e6
|
||||
modal-border: #999999
|
||||
select-tag-background:
|
||||
|
||||
@@ -35,8 +35,6 @@ external-link-foreground: #268bd2
|
||||
external-link-foreground-hover:
|
||||
external-link-foreground-visited: #268bd2
|
||||
foreground: #839496
|
||||
highlight-background: #ffff78
|
||||
highlight-foreground: #000000
|
||||
message-background: #002b36
|
||||
message-border: #586e75
|
||||
message-foreground: #839496
|
||||
|
||||
@@ -35,8 +35,6 @@ external-link-foreground: #268bd2
|
||||
external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #268bd2
|
||||
foreground: #657b83
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-background: #fdf6e3
|
||||
message-border: #93a1a1
|
||||
message-foreground: #657b83
|
||||
|
||||
@@ -34,8 +34,6 @@ external-link-foreground-hover:
|
||||
external-link-foreground-visited:
|
||||
external-link-foreground:
|
||||
foreground: rgba(0, 0, 0, 0.87)
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-background: <<colour background>>
|
||||
message-border: <<colour very-muted-foreground>>
|
||||
message-foreground: rgba(0, 0, 0, 0.54)
|
||||
|
||||
@@ -34,8 +34,6 @@ external-link-foreground-hover:
|
||||
external-link-foreground-visited: #7c318c
|
||||
external-link-foreground: #9e3eb3
|
||||
foreground: rgba(255, 255, 255, 0.7)
|
||||
highlight-background: #ffff78
|
||||
highlight-foreground: #000000
|
||||
message-background: <<colour background>>
|
||||
message-border: <<colour very-muted-foreground>>
|
||||
message-foreground: rgba(255, 255, 255, 0.54)
|
||||
|
||||
@@ -43,8 +43,6 @@ external-link-foreground: rgb(179, 179, 255)
|
||||
external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: rgb(153, 153, 255)
|
||||
foreground: rgb(179, 179, 179)
|
||||
highlight-background: #ffff78
|
||||
highlight-foreground: #000000
|
||||
message-background: <<colour tag-foreground>>
|
||||
message-border: #96ccff
|
||||
message-foreground: <<colour tag-background>>
|
||||
|
||||
@@ -42,8 +42,6 @@ external-link-foreground-hover: inherit
|
||||
external-link-foreground-visited: #0000aa
|
||||
external-link-foreground: #0000ee
|
||||
foreground: #333333
|
||||
highlight-background: #ffff00
|
||||
highlight-foreground: #000000
|
||||
message-background: #ecf2ff
|
||||
message-border: #cfd6e6
|
||||
message-foreground: #547599
|
||||
|
||||
@@ -18,7 +18,7 @@ tc-page-container tc-page-view-$(storyviewTitle)$ tc-language-$(languageTitle)$
|
||||
|
||||
<$navigator story="$:/StoryList" history="$:/HistoryList">
|
||||
|
||||
<$transclude tiddler="$:/core/ui/ViewTemplate/body" mode="block"/>
|
||||
<$transclude mode="block"/>
|
||||
|
||||
</$navigator>
|
||||
|
||||
|
||||
@@ -2,5 +2,11 @@ title: $:/core/ui/Actions/new-image
|
||||
tags: $:/tags/Actions
|
||||
description: create a new image tiddler
|
||||
|
||||
\define get-type()
|
||||
image/$(imageType)$
|
||||
\end
|
||||
\define get-tags() $(textFieldTags)$ $(tagsFieldTags)$
|
||||
\whitespace trim
|
||||
<$action-sendmessage $message="tm-new-tiddler" type={{{ [{$:/config/NewImageType}addprefix[image/]] }}}/>
|
||||
<$vars imageType={{$:/config/NewImageType}} textFieldTags={{$:/config/NewJournal/Tags}} tagsFieldTags={{$:/config/NewJournal/Tags!!tags}}>
|
||||
<$action-sendmessage $message="tm-new-tiddler" type=<<get-type>> tags=<<get-tags>>/>
|
||||
</$vars>
|
||||
|
||||
@@ -5,6 +5,6 @@ caption: {{$:/language/EditTemplate/Body/Preview/Type/Output}}
|
||||
\import [all[shadows+tiddlers]tag[$:/tags/Macro/View]!has[draft.of]] [all[shadows+tiddlers]tag[$:/tags/Macro/View/Body]!has[draft.of]]
|
||||
<$set name="tv-tiddler-preview" value="yes">
|
||||
|
||||
<$transclude tiddler={{{ [<currentTiddler>] :cascade[all[shadows+tiddlers]tag[$:/tags/ViewTemplateBodyFilter]!is[draft]get[text]] :and[!is[blank]else[$:/core/ui/ViewTemplate/body/default]] }}} />
|
||||
<$transclude />
|
||||
|
||||
</$set>
|
||||
|
||||
33
editions/fr-FR/tiddlers/$__core_ui_TagTemplate.tid
Normal file
33
editions/fr-FR/tiddlers/$__core_ui_TagTemplate.tid
Normal file
@@ -0,0 +1,33 @@
|
||||
created: 20160504080001125
|
||||
modified: 20160504080318928
|
||||
title: $:/core/ui/TagTemplate
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
\define tag-styles()
|
||||
background-color:$(backgroundColor)$;
|
||||
fill:$(foregroundColor)$;
|
||||
color:$(foregroundColor)$;
|
||||
\end
|
||||
|
||||
\define tag-body-inner(colour,fallbackTarget,colourA,colourB)
|
||||
<$set name="foregroundColor" value=<<contrastcolour target:"""$colour$""" fallbackTarget:"""$fallbackTarget$""" colourA:"""$colourA$""" colourB:"""$colourB$""">>>
|
||||
<$set name="backgroundColor" value="""$colour$""">
|
||||
<$button popup=<<qualify "$:/state/popup/tag">> class="tc-btn-invisible tc-tag-label" style=<<tag-styles>>>
|
||||
<$transclude tiddler={{!!icon}}/> <$view field="fr-title"><$view field="title" format="text" /></$view>
|
||||
</$button>
|
||||
<$reveal state=<<qualify "$:/state/popup/tag">> type="popup" position="below" animate="yes"><div class="tc-drop-down"><$transclude tiddler="$:/core/ui/ListItemTemplate"/>
|
||||
<hr>
|
||||
<$list filter="[all[current]tagging[]]" template="$:/core/ui/ListItemTemplate"/>
|
||||
</div>
|
||||
</$reveal>
|
||||
</$set>
|
||||
</$set>
|
||||
\end
|
||||
|
||||
\define tag-body(colour,palette)
|
||||
<span class="tc-tag-list-item">
|
||||
<$macrocall $name="tag-body-inner" colour="""$colour$""" fallbackTarget={{$palette$##tag-background}} colourA={{$palette$##foreground}} colourB={{$palette$##background}}/>
|
||||
</span>
|
||||
\end
|
||||
|
||||
<$macrocall $name="tag-body" colour={{!!color}} palette={{$:/palette}}/>
|
||||
@@ -117,7 +117,7 @@ C'est un exemple de tiddler. Voir [[Macros Table des matières (Exemples)|Table-
|
||||
<table class="doc-bad-example">
|
||||
<tbody>
|
||||
<tr class="evenRow">
|
||||
<td><span style="font-size:1.5em;">⚠</span> Attention :<br> Ne faites pas comme ça !</td>
|
||||
<td><span class="tc-inline-style" style="font-size:1.5em;">⚠</span> Attention :<br> Ne faites pas comme ça !</td>
|
||||
<td>
|
||||
|
||||
$eg$
|
||||
|
||||
@@ -1,113 +0,0 @@
|
||||
created: 20220830224607117
|
||||
modified: 20220830224638865
|
||||
tags: $:/tags/Macro
|
||||
title: $:/core/macros/list
|
||||
|
||||
\define list-links(filter,type:"ul",subtype:"li",class:"",emptyMessage)
|
||||
\whitespace trim
|
||||
<$type$ class="$class$">
|
||||
<$list filter="$filter$" emptyMessage=<<__emptyMessage__>>>
|
||||
<$subtype$>
|
||||
<$link to={{!!title}}>
|
||||
<$let tv-wikilinks="no">
|
||||
<$transclude field="caption">
|
||||
<$view field="title"/>
|
||||
</$transclude>
|
||||
</$let>
|
||||
</$link>
|
||||
</$subtype$>
|
||||
</$list>
|
||||
</$type$>
|
||||
\end
|
||||
|
||||
\define list-links-draggable-drop-actions()
|
||||
<$action-listops $tiddler=<<targetTiddler>> $field=<<targetField>> $subfilter="+[insertbefore<actionTiddler>,<currentTiddler>]"/>
|
||||
\end
|
||||
|
||||
\define list-links-draggable(tiddler,field:"list",emptyMessage,type:"ul",subtype:"li",class:"",itemTemplate)
|
||||
\whitespace trim
|
||||
<span class="tc-links-draggable-list">
|
||||
<$vars targetTiddler="""$tiddler$""" targetField="""$field$""">
|
||||
<$type$ class="$class$">
|
||||
<$list filter="[list[$tiddler$!!$field$]]" emptyMessage=<<__emptyMessage__>>>
|
||||
<$droppable actions=<<list-links-draggable-drop-actions>> tag="""$subtype$""" enable=<<tv-enable-drag-and-drop>>>
|
||||
<div class="tc-droppable-placeholder"/>
|
||||
<div>
|
||||
<$transclude tiddler="""$itemTemplate$""">
|
||||
<$link to={{!!title}}>
|
||||
<$let tv-wikilinks="no">
|
||||
<$transclude field="caption">
|
||||
<$view field="title"/>
|
||||
</$transclude>
|
||||
</$let>
|
||||
</$link>
|
||||
</$transclude>
|
||||
</div>
|
||||
</$droppable>
|
||||
</$list>
|
||||
<$tiddler tiddler="">
|
||||
<$droppable actions=<<list-links-draggable-drop-actions>> tag="div" enable=<<tv-enable-drag-and-drop>>>
|
||||
<div class="tc-droppable-placeholder">
|
||||
{{$:/core/images/blank}}
|
||||
</div>
|
||||
<div style="height:0.5em;"/>
|
||||
</$droppable>
|
||||
</$tiddler>
|
||||
</$type$>
|
||||
</$vars>
|
||||
</span>
|
||||
\end
|
||||
|
||||
\define list-tagged-draggable-drop-actions(tag)
|
||||
\whitespace trim
|
||||
<!-- Save the current ordering of the tiddlers with this tag -->
|
||||
<$set name="order" filter="[<__tag__>tagging[]]">
|
||||
<!-- Remove any list-after or list-before fields from the tiddlers with this tag -->
|
||||
<$list filter="[<__tag__>tagging[]]">
|
||||
<$action-deletefield $field="list-before"/>
|
||||
<$action-deletefield $field="list-after"/>
|
||||
</$list>
|
||||
<!-- Save the new order to the Tag Tiddler -->
|
||||
<$action-listops $tiddler=<<__tag__>> $field="list" $filter="+[enlist<order>] +[insertbefore<actionTiddler>,<currentTiddler>]"/>
|
||||
<!-- Make sure the newly added item has the right tag -->
|
||||
<!-- Removing this line makes dragging tags within the dropdown work as intended -->
|
||||
<!--<$action-listops $tiddler=<<actionTiddler>> $tags=<<__tag__>>/>-->
|
||||
<!-- Using the following 5 lines as replacement makes dragging titles from outside into the dropdown apply the tag -->
|
||||
<$list filter="[<actionTiddler>!contains:tags<__tag__>]">
|
||||
<$fieldmangler tiddler=<<actionTiddler>>>
|
||||
<$action-sendmessage $message="tm-add-tag" $param=<<__tag__>>/>
|
||||
</$fieldmangler>
|
||||
</$list>
|
||||
</$set>
|
||||
\end
|
||||
|
||||
\define list-tagged-draggable(tag,subFilter,emptyMessage,itemTemplate,elementTag:"div",storyview:"")
|
||||
\whitespace trim
|
||||
<span class="tc-tagged-draggable-list">
|
||||
<$set name="tag" value=<<__tag__>>>
|
||||
<$list filter="[<__tag__>tagging[]$subFilter$]" emptyMessage=<<__emptyMessage__>> storyview=<<__storyview__>>>
|
||||
<$elementTag$ class="tc-menu-list-item">
|
||||
<$droppable actions="""<$macrocall $name="list-tagged-draggable-drop-actions" tag=<<__tag__>>/>""" enable=<<tv-enable-drag-and-drop>>>
|
||||
<$elementTag$ class="tc-droppable-placeholder"/>
|
||||
<$elementTag$>
|
||||
<$transclude tiddler="""$itemTemplate$""">
|
||||
<$link to={{!!title}}>
|
||||
<$view field="fr-title">
|
||||
<$view field="title"/>
|
||||
</$view>
|
||||
</$link>
|
||||
</$transclude>
|
||||
</$elementTag$>
|
||||
</$droppable>
|
||||
</$elementTag$>
|
||||
</$list>
|
||||
<$tiddler tiddler="">
|
||||
<$droppable actions="""<$macrocall $name="list-tagged-draggable-drop-actions" tag=<<__tag__>>/>""" enable=<<tv-enable-drag-and-drop>>>
|
||||
<$elementTag$ class="tc-droppable-placeholder"/>
|
||||
<$elementTag$ style="height:0.5em;">
|
||||
</$elementTag$>
|
||||
</$droppable>
|
||||
</$tiddler>
|
||||
</$set>
|
||||
</span>
|
||||
\end
|
||||
@@ -1,39 +0,0 @@
|
||||
created: 20220830190922373
|
||||
modified: 20220830191056761
|
||||
tags: $:/tags/Macro
|
||||
title: $:/core/macros/tag
|
||||
|
||||
\define tag-pill-styles()
|
||||
background-color:$(backgroundColor)$;
|
||||
fill:$(foregroundColor)$;
|
||||
color:$(foregroundColor)$;
|
||||
\end
|
||||
|
||||
<!-- 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)
|
||||
<$vars
|
||||
foregroundColor=<<contrastcolour target:"""$colour$""" fallbackTarget:"""$fallbackTarget$""" colourA:"""$colourA$""" colourB:"""$colourB$""">>
|
||||
backgroundColor="""$colour$"""
|
||||
><$element-tag$
|
||||
$element-attributes$
|
||||
class="tc-tag-label tc-btn-invisible"
|
||||
style=<<tag-pill-styles>>
|
||||
>$actions$<$transclude tiddler="""$icon$"""/><$view tiddler=<<__tag__>> field="fr-title" format="text"><$view tiddler=<<__tag__>> field="title" format="text" /></$view></$element-tag$>
|
||||
\end
|
||||
|
||||
\define tag-pill-body(tag,icon,colour,palette,element-tag,element-attributes,actions)
|
||||
<$macrocall $name="tag-pill-inner" tag=<<__tag__>> icon="""$icon$""" colour="""$colour$""" fallbackTarget={{$palette$##tag-background}} colourA={{$palette$##foreground}} colourB={{$palette$##background}} element-tag="""$element-tag$""" element-attributes="""$element-attributes$""" actions="""$actions$"""/>
|
||||
\end
|
||||
|
||||
\define tag-pill(tag,element-tag:"span",element-attributes:"",actions:"")
|
||||
\whitespace trim
|
||||
<span class="tc-tag-list-item" data-tag-title=<<__tag__>>>
|
||||
<$let currentTiddler=<<__tag__>>>
|
||||
<$macrocall $name="tag-pill-body" tag=<<__tag__>> icon={{{ [<currentTiddler>] :cascade[all[shadows+tiddlers]tag[$:/tags/TiddlerIconFilter]!is[draft]get[text]] }}} colour={{{ [<currentTiddler>] :cascade[all[shadows+tiddlers]tag[$:/tags/TiddlerColourFilter]!is[draft]get[text]] }}} palette={{$:/palette}} element-tag="""$element-tag$""" element-attributes="""$element-attributes$""" actions="""$actions$"""/>
|
||||
</$let>
|
||||
</span>
|
||||
\end
|
||||
|
||||
\define tag(tag)
|
||||
{{$tag$||$:/core/ui/TagTemplate}}
|
||||
\end
|
||||
@@ -1,25 +0,0 @@
|
||||
created: 20220830194301860
|
||||
modified: 20220830194658750
|
||||
title: $:/core/ui/TagPickerTagTemplate
|
||||
|
||||
\whitespace trim
|
||||
<$button class=<<button-classes>> tag="a" tooltip={{$:/language/EditTemplate/Tags/Add/Button/Hint}}>
|
||||
<$list filter="[<saveTiddler>minlength[1]]">
|
||||
<$action-listops $tiddler=<<saveTiddler>> $field=<<tagField>> $subfilter="[<tag>]"/>
|
||||
</$list>
|
||||
<$set name="currentTiddlerCSSEscaped" value={{{ [<saveTiddler>escapecss[]] }}}>
|
||||
<$action-sendmessage $message="tm-focus-selector" $param=<<get-tagpicker-focus-selector>> preventScroll="true"/>
|
||||
</$set>
|
||||
<<delete-tag-state-tiddlers>>
|
||||
<$list filter="[<refreshTitle>minlength[1]]">
|
||||
<$action-setfield $tiddler=<<refreshTitle>> text="yes"/>
|
||||
</$list>
|
||||
<<actions>>
|
||||
<$set name="backgroundColor" value={{{ [<currentTiddler>] :cascade[all[shadows+tiddlers]tag[$:/tags/TiddlerColourFilter]!is[draft]get[text]] }}}>
|
||||
<$wikify name="foregroundColor" text="""<$macrocall $name="contrastcolour" target=<<backgroundColor>> fallbackTarget=<<fallbackTarget>> colourA=<<colourA>> colourB=<<colourB>>/>""">
|
||||
<span class="tc-tag-label tc-btn-invisible" style=<<tag-pill-styles>>>
|
||||
{{||$:/core/ui/TiddlerIcon}}<$view field="fr-title" format="text"><$view field="title" format="text"/></$view>
|
||||
</span>
|
||||
</$wikify>
|
||||
</$set>
|
||||
</$button>
|
||||
@@ -1,6 +1,6 @@
|
||||
caption: 5.2.4
|
||||
created: 20221017165036377
|
||||
modified: 20221017165036377
|
||||
created: 20220802100223020
|
||||
modified: 20220802100223020
|
||||
tags: ReleaseNotes
|
||||
title: Release 5.2.4
|
||||
type: text/vnd.tiddlywiki
|
||||
@@ -11,19 +11,9 @@ type: text/vnd.tiddlywiki
|
||||
|
||||
*
|
||||
|
||||
! Translation improvement
|
||||
! Translation improvements
|
||||
|
||||
Improvements to the following translations:
|
||||
|
||||
* Chinese
|
||||
* Polish
|
||||
* Spanish
|
||||
* Japanese
|
||||
|
||||
Improvements to the translation features of TiddlyWiki:
|
||||
|
||||
* <<.link-badge-improved "https://github.com/Jermolene/TiddlyWiki5/pull/6882">> the [[Translators Edition|Translate TiddlyWiki into your language]] to add an option to display the original English text underneath the text area
|
||||
* <<.link-badge-updated "https://github.com/Jermolene/TiddlyWiki5/pull/6933">> "delete" button text in $:/AdvancedSearch so that it is translatable
|
||||
*
|
||||
|
||||
! Accessibility Improvements
|
||||
|
||||
@@ -31,17 +21,11 @@ Improvements to the translation features of TiddlyWiki:
|
||||
|
||||
! Usability Improvements
|
||||
|
||||
* <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/commit/d62a16ee464fb9984b766b48504829a1a3eb143b">> problem with long presses on tiddler links triggering a preview on iOS/iPadOS
|
||||
* <<.link-badge-improved "https://github.com/Jermolene/TiddlyWiki5/pull/6910">> consistency of button and input elements across browsers
|
||||
* <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/commit/d825f1c875f5e46158c9c41c8c66471138c162d1">> edit preview to use the [[View Template Body Cascade]]
|
||||
* <<.link-badge-improved "https://github.com/Jermolene/TiddlyWiki5/pull/6970">> detection of infinite recursion errors in widgets and filters
|
||||
* <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/commit/36896c3db8c9678c0385a561996248a6f00a45ff">> opening a tiddler in a new window to use the [[View Template Body Cascade]]
|
||||
* <<.link-badge-extended "https://github.com/Jermolene/TiddlyWiki5/pull/6877">> default styles for [[styled runs|Styles and Classes in WikiText]]
|
||||
*
|
||||
|
||||
! Widget Improvements
|
||||
|
||||
* <<.link-badge-added "https://github.com/Jermolene/TiddlyWiki5/pull/6961">> new GenesisWidget that allows the dynamic construction of another widget, where the name and attributes of the new widget can be dynamically determined, without needing to be known in advance
|
||||
* <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/commit/127f660c91020dcbb43897d954066b31af729e74">> EditTextWidget to remove the default text "Type the text for the tiddler 'foo'"
|
||||
*
|
||||
|
||||
! Filter improvements
|
||||
|
||||
@@ -49,17 +33,11 @@ Improvements to the translation features of TiddlyWiki:
|
||||
|
||||
! Hackability Improvements
|
||||
|
||||
* <<.link-badge-added "https://github.com/Jermolene/TiddlyWiki5/pull/6936">> new operators for reading and formatting JSON data: [[jsonget Operator]], [[jsonindexes Operator]], [[jsontype Operator]] and [[format Operator]]
|
||||
* <<.link-badge-improved "https://github.com/Jermolene/TiddlyWiki5/commit/c5d3d4c26e8fe27f272dda004aec27d6b66c4f60">> safe mode to disable wiki store indexers
|
||||
* <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/commit/166a1565843878083fb1eba47c73b8e67b78400d">> safe mode to prevent globally disabling parser rules
|
||||
* <<.link-badge-removed "https://github.com/Jermolene/TiddlyWiki5/commit/1df4c29d73073788ba3859668112e8bb46171a6c">> restriction of the LetWidget being unable to create variables whose names begin with a dollar sign
|
||||
* <<.link-badge-extended "https://github.com/Jermolene/TiddlyWiki5/pull/6735">> keyboard shortcut handling to allow to global shortcuts to override all other shortcuts
|
||||
|
||||
*
|
||||
|
||||
! Bug Fixes
|
||||
|
||||
* <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/commit/fb34df84ed41882c1c2a6ff54f0e908b43ef95a3">> "new image" keyboard shortcut not to assign journal tags
|
||||
* <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/pull/6987">> SelectWidget class to update if it uses a filter
|
||||
*
|
||||
|
||||
! Developer Improvements
|
||||
|
||||
@@ -67,29 +45,15 @@ Improvements to the translation features of TiddlyWiki:
|
||||
|
||||
! Node.js Improvements
|
||||
|
||||
* <<.link-badge-improved "https://github.com/Jermolene/TiddlyWiki5/pull/6947">> console logging to avoid spaces and `<empty string>` message
|
||||
*
|
||||
|
||||
! Performance Improvements
|
||||
|
||||
* <<.link-badge-improved "https://github.com/Jermolene/TiddlyWiki5/commit/53d229592df76c6dd607e40be5bea4d5e063c48e">> performance of `wiki.getTiddler()`
|
||||
* <<.link-badge-improved "https://github.com/Jermolene/TiddlyWiki5/commit/81ac9874846b3ead275f67010fcfdb49f3d2f43c">> performance of variable prototype chain handling
|
||||
|
||||
*
|
||||
|
||||
! Acknowledgements
|
||||
|
||||
[[@Jermolene|https://github.com/Jermolene]] would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki:
|
||||
|
||||
<<.contributors """
|
||||
bestony
|
||||
BramChen
|
||||
flibbles
|
||||
fu-sen
|
||||
Marxsal
|
||||
oflg
|
||||
pmario
|
||||
rmunn
|
||||
roma0104
|
||||
tw-FRed
|
||||
twMat
|
||||
xcazin
|
||||
""">>
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
title: Filters/Recursion
|
||||
description: Filter recursion detection
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: Output
|
||||
|
||||
\whitespace trim
|
||||
\define myfilter() [subfilter<myfilter>]
|
||||
|
||||
<$text text={{{ [subfilter<myfilter>] }}}/>
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
<p>/**-- Excessive filter recursion --**/</p>
|
||||
@@ -1,27 +0,0 @@
|
||||
title: Filters/FakeVariables
|
||||
description: Test for https://github.com/Jermolene/TiddlyWiki5/issues/6303
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: Output
|
||||
|
||||
\whitespace trim
|
||||
<$list variable="var" filter="[[existing variable should have output]] :filter[[..currentTiddler]is[variable]]">
|
||||
<p><<var>></p>
|
||||
</$list>
|
||||
|
||||
<$list variable="var" filter="[[non-existing variable should not have output]] :filter[[nonExistingVariable]is[variable]]">
|
||||
<p><<var>></p>
|
||||
</$list>
|
||||
|
||||
<$list variable="var" filter="[[existing variable negated should not have output]] :filter[[..currentTiddler]!is[variable]]">
|
||||
<p><<var>></p>
|
||||
</$list>
|
||||
|
||||
<$list variable="var" filter="[[non-existing variable negated should have output]] :filter[[nonExistingVariable]!is[variable]]">
|
||||
<p><<var>></p>
|
||||
</$list>
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
<p><p>existing variable should have output</p></p><p></p><p></p><p><p>non-existing variable negated should have output</p></p>
|
||||
@@ -1,14 +0,0 @@
|
||||
title: Genesis/DollarSigns
|
||||
description: Usage of genesis widget with attributes starting with dollar signs
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: Output
|
||||
|
||||
\whitespace trim
|
||||
<$genesis $type="$let" myvar="Kitten">(<$text text=<<myvar>>/>)</$genesis>
|
||||
<$genesis $type="$let" $$myvar="Kitten">(<$text text=<<$myvar>>/>)</$genesis>
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
<p>(Kitten)(Kitten)</p>
|
||||
@@ -1,14 +0,0 @@
|
||||
title: Genesis/MultipleAttributes
|
||||
description: Usage of genesis widget with multiple attributes
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: Output
|
||||
|
||||
\whitespace trim
|
||||
<$genesis $type="$let" $names="myvar other" $values="Kitten Donkey" myvar={{{ Shark }}}>(<$text text=<<myvar>>/>|<$text text=<<other>>/>)</$genesis>
|
||||
<$genesis $type="$let" $names="$myvar $other" $values="Kitten Donkey" $$myvar="Shark">(<$text text=<<$myvar>>/>|<$text text=<<$other>>/>)</$genesis>
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
<p>(Kitten|Donkey)(Kitten|Donkey)</p>
|
||||
@@ -1,14 +0,0 @@
|
||||
title: Genesis/Simple
|
||||
description: Simple usage of genesis widget
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: Output
|
||||
|
||||
\whitespace trim
|
||||
<$genesis $type="div">Mouse</$genesis>
|
||||
<$genesis $type="div" class="tc-thing" label="Squeak">Mouse</$genesis>
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
<p><div>Mouse</div><div class="tc-thing" label="Squeak">Mouse</div></p>
|
||||
@@ -1,36 +0,0 @@
|
||||
title: Macros/NestedMacros
|
||||
description: Nested Macros
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: Output
|
||||
|
||||
\whitespace trim
|
||||
|
||||
\define outer()
|
||||
\whitespace trim
|
||||
|
||||
\define middle()
|
||||
\whitespace trim
|
||||
|
||||
\define inner()
|
||||
\whitespace trim
|
||||
|
||||
Jaguar
|
||||
|
||||
\end inner
|
||||
|
||||
<<inner>>
|
||||
|
||||
\end middle
|
||||
|
||||
<<middle>>
|
||||
|
||||
\end outer
|
||||
|
||||
<<outer>>
|
||||
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
<p>Jaguar</p>
|
||||
@@ -1,13 +0,0 @@
|
||||
title: Transclude/Recursion
|
||||
description: Transclusion recursion detection
|
||||
type: text/vnd.tiddlywiki-multiple
|
||||
tags: [[$:/tags/wiki-test-spec]]
|
||||
|
||||
title: Output
|
||||
|
||||
\whitespace trim
|
||||
<$transclude $tiddler="Output"/>
|
||||
+
|
||||
title: ExpectedResult
|
||||
|
||||
<p><span class="tc-error">Recursive transclusion error in transclude widget</span></p>
|
||||
@@ -234,38 +234,6 @@ Tests the checkbox widget thoroughly.
|
||||
},
|
||||
];
|
||||
|
||||
// https://github.com/Jermolene/TiddlyWiki5/issues/6871
|
||||
const listModeTestsWithListField = (
|
||||
listModeTests
|
||||
.filter(data => data.widgetText.includes("listField='colors'"))
|
||||
.map(data => {
|
||||
const newData = {
|
||||
...data,
|
||||
tiddlers: data.tiddlers.map(tiddler => ({...tiddler, list: tiddler.colors, colors: undefined})),
|
||||
widgetText: data.widgetText.replace("listField='colors'", "listField='list'"),
|
||||
expectedChange: {
|
||||
"Colors": { list: data.expectedChange.Colors.colors.split(' ') }
|
||||
},
|
||||
}
|
||||
return newData;
|
||||
})
|
||||
);
|
||||
const listModeTestsWithTagsField = (
|
||||
listModeTests
|
||||
.filter(data => data.widgetText.includes("listField='colors'"))
|
||||
.map(data => {
|
||||
const newData = {
|
||||
...data,
|
||||
tiddlers: data.tiddlers.map(tiddler => ({...tiddler, tags: tiddler.colors, colors: undefined})),
|
||||
widgetText: data.widgetText.replace("listField='colors'", "listField='tags'"),
|
||||
expectedChange: {
|
||||
"Colors": { tags: data.expectedChange.Colors.colors.split(' ') }
|
||||
},
|
||||
}
|
||||
return newData;
|
||||
})
|
||||
);
|
||||
|
||||
const indexListModeTests = listModeTests.map(data => {
|
||||
const newData = {...data};
|
||||
const newName = data.testName.replace('list mode', 'index list mode');
|
||||
@@ -485,8 +453,6 @@ Tests the checkbox widget thoroughly.
|
||||
const checkboxTestData = fieldModeTests.concat(
|
||||
indexModeTests,
|
||||
listModeTests,
|
||||
listModeTestsWithListField,
|
||||
listModeTestsWithTagsField,
|
||||
indexListModeTests,
|
||||
filterModeTests,
|
||||
);
|
||||
@@ -529,7 +495,7 @@ Tests the checkbox widget thoroughly.
|
||||
for (const fieldName of Object.keys(change)) {
|
||||
const expectedValue = change[fieldName];
|
||||
const fieldValue = tiddler.fields[fieldName];
|
||||
expect(fieldValue).toEqual(expectedValue);
|
||||
expect(fieldValue).toBe(expectedValue);
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
@@ -63,22 +63,6 @@ describe("WikiText tests", function() {
|
||||
expect(wiki.renderText("text/html","text/vnd-tiddlywiki","@@color:red;\n<div>\n\nContent</div>\n@@")).toBe("<div style=\"color:red;\"><p>Content</p></div>");
|
||||
expect(wiki.renderText("text/html","text/vnd-tiddlywiki","@@color:red;\n---\n@@")).toBe("<hr style=\"color:red;\">");
|
||||
});
|
||||
it("handles inline style wikitext notation", function() {
|
||||
expect(wiki.renderText("text/html","text/vnd-tiddlywiki",
|
||||
"some @@highlighted@@ text")).toBe('<p>some <span class="tc-inline-style">highlighted</span> text</p>');
|
||||
expect(wiki.renderText("text/html","text/vnd-tiddlywiki",
|
||||
"some @@color:green;.tc-inline-style 1 style and 1 class@@ text")).toBe('<p>some <span class=" tc-inline-style " style="color:green;">1 style and 1 class</span> text</p>');
|
||||
expect(wiki.renderText("text/html","text/vnd-tiddlywiki",
|
||||
"some @@background-color:red;red@@ text")).toBe('<p>some <span style="background-color:red;">red</span> text</p>');
|
||||
expect(wiki.renderText("text/html","text/vnd-tiddlywiki",
|
||||
"some @@.myClass class@@ text")).toBe('<p>some <span class=" myClass ">class</span> text</p>');
|
||||
expect(wiki.renderText("text/html","text/vnd-tiddlywiki",
|
||||
"some @@.myClass.secondClass 2 classes@@ text")).toBe('<p>some <span class=" myClass secondClass ">2 classes</span> text</p>');
|
||||
expect(wiki.renderText("text/html","text/vnd-tiddlywiki",
|
||||
"some @@background:red;.myClass style and class@@ text")).toBe('<p>some <span class=" myClass " style="background:red;">style and class</span> text</p>');
|
||||
expect(wiki.renderText("text/html","text/vnd-tiddlywiki",
|
||||
"some @@background:red;color:white;.myClass 2 style and 1 class@@ text")).toBe('<p>some <span class=" myClass " style="background:red;color:white;">2 style and 1 class</span> text</p>');
|
||||
});
|
||||
});
|
||||
|
||||
})();
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
created: 20220721200137586
|
||||
modified: 20220819200137586
|
||||
modified: 20220721200137586
|
||||
tags: [[Table of Contents]]
|
||||
title: Code of Conduct
|
||||
type: text/vnd.tiddlywiki
|
||||
@@ -17,7 +17,6 @@ These principles guide technical and non-technical decisions, and help contribut
|
||||
* We recognise that the motivation for sharing and helping is usually for appreciation, and not financial gain, and so we take care to acknowledge and ''thank the people who enrich the community by sharing what they have created''
|
||||
* While we are united in our interest in TiddlyWiki, we differ in every other conceivable way. We choose to focus on what unites us, and ''avoid unnecessarily mixing contentious topics like religion and politics''
|
||||
* We treat each other with respect, and start with the assumption that ''others are acting in good faith''
|
||||
* We avoid discriminatory language
|
||||
* We try to use our strength as a community to help others
|
||||
* We avoid responding when angry or upset because we try to de-escalate conflict
|
||||
* We make sure we critique ideas, not people
|
||||
@@ -28,6 +27,4 @@ These principles guide technical and non-technical decisions, and help contribut
|
||||
|
||||
Our discussions are in English. It is not the first language of many people in the community, nor do we all share the same cultural background and reference points. So we take care to use language that is clear and unambigous, and avoid cultural references or jokes that will not be widely understood.
|
||||
|
||||
It is not acceptable to make jokes or other comments that discriminate by race, gender, sexuality, or other protected characteristic.
|
||||
|
||||
As an inclusive community, we are committed to making sure that TiddlyWiki is an accessible tool that understands the needs of people with disabilities.
|
||||
@@ -2,6 +2,4 @@ title: RenderTiddlerCommand
|
||||
tags: Commands
|
||||
caption: rendertiddler
|
||||
|
||||
<<.deprecated-since "5.1.15" "RenderCommand">>.
|
||||
|
||||
{{$:/language/Help/rendertiddler}}
|
||||
|
||||
@@ -2,6 +2,4 @@ title: RenderTiddlersCommand
|
||||
tags: Commands
|
||||
caption: rendertiddlers
|
||||
|
||||
<<.deprecated-since "5.1.15" "RenderCommand">>.
|
||||
|
||||
{{$:/language/Help/rendertiddlers}}
|
||||
|
||||
@@ -4,6 +4,4 @@ created: 20131218121606089
|
||||
modified: 20131218121606089
|
||||
caption: savetiddler
|
||||
|
||||
<<.deprecated-since "5.1.15" "SaveCommand">>.
|
||||
|
||||
{{$:/language/Help/savetiddler}}
|
||||
|
||||
@@ -4,6 +4,4 @@ created: 20140609121606089
|
||||
modified: 20140609121606089
|
||||
caption: savetiddlers
|
||||
|
||||
<<.deprecated-since "5.1.15" "SaveCommand">>.
|
||||
|
||||
{{$:/language/Help/savetiddlers}}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
created: 20141230182901899
|
||||
modified: 20220226205227090
|
||||
modified: 20210106151027090
|
||||
tags: [[Community Editions]] [[Community Plugins]]
|
||||
title: "GSD5" by Roma Hicks
|
||||
type: text/vnd.tiddlywiki
|
||||
url: http://gsd5.tiddlyhost.com/
|
||||
url: http://gsd5.tiddlyspot.com/
|
||||
|
||||
An adaptation of the [[TiddlyWiki powered GTD® system formerly known as MonkeyGTD|http://mgsd.tiddlyspot.com/]] for TiddlyWiki version 5.
|
||||
|
||||
|
||||
@@ -7,8 +7,6 @@ A ''Keyboard Shortcut Tiddler'' is made of three parts:
|
||||
* The ''field'' `key` with a [[Keyboard Shortcut Descriptor]] as its ''value''
|
||||
* Actions in its ''text'' field
|
||||
|
||||
<<.tip """<<.from-version "5.2.4">> By default <<.wlink KeyboardWidget>> and text editor shortcuts take priority, which can be circumvented by setting the ''field'' `priority` to `yes`.""">>
|
||||
|
||||
If the [[Keyboard Shortcut Descriptor]] has the form `((my-shortcut))` it's a ''reference'' to a ''configuration Tiddler'' that stores the corresponding [[Keyboard Shortcut|KeyboardShortcuts]]
|
||||
|
||||
In order to make a ''shortcut'' editable through the <<.controlpanel-tab KeyboardShortcuts>> Tab in the $:/ControlPanel it's sufficient to create a tiddler `$:/config/ShortcutInfo/my-shortcut`, where the ''suffix'' is the ''reference'' used for the [[Keyboard Shortcut|KeyboardShortcuts]]
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
created: 20131129090249275
|
||||
modified: 20220819041016415
|
||||
modified: 20200507203622933
|
||||
tags: [[Working with TiddlyWiki]]
|
||||
title: GettingStarted
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
The easiest way to use ~TiddlyWiki is to sign up for a free account with [[Tiddlyhost|https://tiddlyhost.com/]], an independently run community service. If you find Tiddlyhost useful, please consider [[donation or sponsorship|https://tiddlyhost.com/donate]].
|
||||
The easiest way to use TiddlyWiki is to sign up for a free account with [[Tiddlyhost]], an independently run community service:
|
||||
|
||||
Click here to download an empty copy of ~TiddlyWiki: {{$:/editions/tw5.com/snippets/download-empty-button}}
|
||||
https://tiddlyhost.com/
|
||||
|
||||
If you find Tiddlyhost useful, please consider [[donation or sponsorship|https://tiddlyhost.com/donate]].
|
||||
|
||||
Click here to download an empty copy of TiddlyWiki: {{$:/editions/tw5.com/snippets/download-empty-button}}
|
||||
|
||||
The next step is to choose a method for saving changes. There's a wide variety of methods available, with different features and limitations. Click on the badge for a method to see more information about it. You can also click on one of the platform filters to restrict the listing to methods that work with that platform.
|
||||
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
created: 20220909094340097
|
||||
modified: 20220909094340097
|
||||
title: Hidden Setting: Sync System Tiddlers From Server
|
||||
tags: [[Hidden Settings]]
|
||||
|
||||
<<.from-version "5.1.23">> Determines whether system tiddlers are synced from the server under Node.js. (Note that this is a one-way setting; system tiddlers are always synced //to// the server).
|
||||
|
||||
* `no` -- system tiddlers are not synced from the server (default)
|
||||
* `yes` -- system tiddlers are synced from the server
|
||||
|
||||
Engaging sync of system tiddlers means that tiddlers such as $:/StoryList and $:/HistoryList get synced, which can lead to unexpected outcomes when multiple users are connected to the same server at the same time (it means that the story sequence is synced between all the users).
|
||||
|
||||
$:/config/SyncSystemTiddlersFromServer
|
||||
@@ -66,8 +66,6 @@ In the [[Keyboard Shortcuts Tab|$:/core/ui/ControlPanel/KeyboardShortcuts]] the
|
||||
|
||||
!! Using global Keyboard Shortcuts
|
||||
|
||||
> See [[Keyboard Shortcut Tiddler]] for detailed information about creating new global keyboard shortcuts.
|
||||
|
||||
> The actions for ''global'' keyboard shortcuts are stored in the ''text'' field of tiddlers tagged with <<tag $:/tags/KeyboardShortcut>>
|
||||
|
||||
> The ''key field'' connects an action-tiddler with the corresponding shortcut through the `((my-shortcut))` syntax, called [[Keyboard Shortcut Descriptor]]
|
||||
|
||||
@@ -22,7 +22,7 @@ The new tiddler message is usually generated with the ButtonWidget or ActionSend
|
||||
|
||||
! Examples
|
||||
|
||||
To make a button that creates new tiddlers tagged "task", create a tiddler called "~TaskTemplate" with that tag, and then make your button like this:
|
||||
To make a button that creates new tiddlers tagged "task", create a tiddler called "TaskTemplate" with that tag, and then make your button like this:
|
||||
|
||||
```
|
||||
<$button message="tm-new-tiddler" param="TaskTemplate">New Task</$button>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
created: 20140912140651119
|
||||
modified: 20220812144516626
|
||||
modified: 20220401151525812
|
||||
saving-browser: Firefox Chrome Edge [[Internet Explorer]] Safari Opera [[Standalone App]]
|
||||
saving-os: Windows Mac Linux Android iOS
|
||||
tags: [[Working with TiddlyWiki]]
|
||||
@@ -34,7 +34,7 @@ type: text/vnd.tiddlywiki
|
||||
\end
|
||||
<$vars stateTiddler=<<qualify "$:/state/gettingstarted">> >
|
||||
|
||||
Available methods for saving changes with ~TiddlyWiki:
|
||||
Available methods for saving changes with TiddlyWiki:
|
||||
|
||||
<div class="tc-wrapper-flex">
|
||||
<div class="tc-saving-sidebar">
|
||||
|
||||
@@ -117,7 +117,7 @@ This is an example tiddler. See [[Table-of-Contents Macros (Examples)]].
|
||||
<table class="doc-bad-example">
|
||||
<tbody>
|
||||
<tr class="evenRow">
|
||||
<td><span style="font-size:1.5em;">⚠</span> Warning:<br> Don't do it this way!</td>
|
||||
<td><span class="tc-inline-style" style="font-size:1.5em;">⚠</span> Warning:<br> Don't do it this way!</td>
|
||||
<td>
|
||||
|
||||
$eg$
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
code-body: yes
|
||||
created: 20161008085627406
|
||||
modified: 20221007122259593
|
||||
modified: 20220704174221300
|
||||
tags: $:/tags/Macro
|
||||
title: $:/editions/tw5.com/version-macros
|
||||
type: text/vnd.tiddlywiki
|
||||
@@ -10,5 +9,7 @@ type: text/vnd.tiddlywiki
|
||||
\end
|
||||
|
||||
\define .deprecated-since(version, superseded:"TODO-Link")
|
||||
<$link to="Deprecated - What does it mean" class="doc-deprecated-version tc-btn-invisible">{{$:/core/images/warning}} Deprecated since: <$text text=<<__version__>>/></$link> (see <$link to=<<__superseded__>>><$text text=<<__superseded__>>/></$link>)
|
||||
<$link to="Deprecated - What does it mean" class="doc-deprecated-version tc-btn-invisible">{{$:/core/images/warning}} Deprecated since: <$text text=<<__version__>>/></$link>. Use <$link to=<<__superseded__>>><$text text=<<__superseded__>>/></$link> instead
|
||||
\end
|
||||
|
||||
<pre><$view field="text"/></pre>
|
||||
@@ -46,17 +46,21 @@ open the ''example edition'' in a new window
|
||||
|
||||
<$macrocall $name="copy-to-clipboard-above-right" src=<<__src__>>/>
|
||||
|
||||
<$codeblock code=<<__src__>>/>
|
||||
```
|
||||
$src$
|
||||
```
|
||||
|
||||
That renders as:
|
||||
|
||||
<$macrocall $name="__src__"/>
|
||||
$$$text/vnd.tiddlywiki
|
||||
$src$
|
||||
$$$
|
||||
|
||||
... and the underlying HTML is:
|
||||
|
||||
<$wikify name="html" text=<<__src__>> output="html">
|
||||
<$codeblock code=<<html>>/>
|
||||
</$wikify>
|
||||
$$$text/vnd.tiddlywiki>text/html
|
||||
$src$
|
||||
$$$
|
||||
</div>
|
||||
\end
|
||||
|
||||
@@ -65,12 +69,15 @@ That renders as:
|
||||
|
||||
<$macrocall $name="copy-to-clipboard-above-right" src=<<__src__>>/>
|
||||
|
||||
<$codeblock code=<<__src__>>/>
|
||||
```
|
||||
$src$
|
||||
```
|
||||
|
||||
That renders as:
|
||||
|
||||
<$macrocall $name="__src__"/>
|
||||
|
||||
$$$text/vnd.tiddlywiki
|
||||
$src$
|
||||
$$$
|
||||
</div>
|
||||
\end
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
created: 20181002131215403
|
||||
modified: 20220909094340097
|
||||
modified: 2020031109590546
|
||||
tags: [[WebServer API]]
|
||||
title: WebServer API: Get All Tiddlers
|
||||
type: text/vnd.tiddlywiki
|
||||
@@ -17,8 +17,6 @@ Parameters:
|
||||
|
||||
In order to avoid denial of service attacks with malformed filters in the default configuration the only filter that is accepted is the default filter "[all[tiddlers]!is[system]sort[title]]"; attempts to use any other filter will result in an HTTP 403 error.
|
||||
|
||||
<<.note "System tiddlers will not be returned by this API unless the [[Hidden Setting: Sync System Tiddlers From Server]] is explicitly switched on by setting $:/config/SyncSystemTiddlersFromServer to `yes`">>
|
||||
|
||||
To enable a particular filter, create a tiddler with the title "$:/config/Server/ExternalFilters/" concatenated with the filter text, and the text field set to "yes". For example, the TiddlyWeb plugin includes the following shadow tiddler to enable the filter that it requires:
|
||||
|
||||
```
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
caption: error
|
||||
created: 20220909111836951
|
||||
modified: 20220909111836951
|
||||
tags: Widgets
|
||||
title: ErrorWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
<<.from-version "5.2.4">> The <<.wlink ErrorWidget>> widget is used by the core to display error messages such as the recursion errors reported by the <<.wlink TranscludeWidget>> widget.
|
||||
|
||||
The <<.wlink ErrorWidget>> does not provide any useful functionality to end users. It is only required by the core for technical reasons.
|
||||
|
||||
! Content and Attributes
|
||||
|
||||
The content of the <<.wlink ErrorWidget>> widget is ignored.
|
||||
|
||||
|!Attribute |!Description |
|
||||
|$message |The error message |
|
||||
@@ -1,29 +0,0 @@
|
||||
caption: genesis
|
||||
created: 20220924140702430
|
||||
modified: 20220924140702430
|
||||
tags: Widgets
|
||||
title: GenesisWidget
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
! Introduction
|
||||
|
||||
<<.from-version "5.2.4">> The <<.wlink GenesisWidget>> widget allows the dynamic construction of another widget, where the name and attributes of the new widget can be dynamically determined, without needing to be known in advance.
|
||||
|
||||
! Content and Attributes
|
||||
|
||||
The content of the <<.wlink GenesisWidget>> widget is used as the content of the dynamically created widget.
|
||||
|
||||
|!Attribute |!Description |
|
||||
|$type |The type of widget or element to create (an initial `$` indicates a widget, otherwise an HTML element will be created) |
|
||||
|$names |An optional filter evaluating to the names of a list of attributes to be applied to the widget |
|
||||
|$values |An optional filter evaluating to the values corresponding to the list of names specified in `$names` |
|
||||
|//{other attributes starting with $}// |Other attributes starting with a single dollar sign are reserved for future use |
|
||||
|//{attributes starting with $$}// |Attributes starting with two dollar signs are appplied as attributes to the output widget, but with the attribute name changed to use a single dollar sign |
|
||||
|//{attributes not starting with $}// |Any other attributes that do not start with a dollar are applied as attributes to the output widget |
|
||||
|
||||
Note that attributes explicitly specified take precedence over attributes with the same name specified in the `$names` filter.
|
||||
|
||||
! Examples
|
||||
|
||||
<$macrocall $name='wikitext-example-without-html'
|
||||
src='<$genesis $type="div" class="tc-thing" label="Squeak">Mouse</$genesis>'/>
|
||||
@@ -1,6 +1,5 @@
|
||||
title: LetWidget
|
||||
created: 20211028115900000
|
||||
modified: 20221001094658854
|
||||
tags: Widgets
|
||||
caption: let
|
||||
|
||||
@@ -13,12 +12,10 @@ caption: let
|
||||
The content of the <<.wid let>> widget is the scope for the value assigned to the variable.
|
||||
|
||||
|!Attribute |!Description |
|
||||
|//{attributes}// |Each attribute name specifies a variable name. The attribute value is assigned to the variable |
|
||||
|//{attributes not starting with $}// |Each attribute name specifies a variable name. The attribute value is assigned to the variable |
|
||||
|
||||
Attributes are evaluated in the order they are written. Attributes with the same name are allowed. Each time a duplicate attribute is encountered, it will replace the existing value set by the earlier duplicate.
|
||||
|
||||
<<.note """<<.from-version "5.2.4">> There is no longer any restriction on using variable names that start with the $ character.""">>
|
||||
|
||||
! Examples
|
||||
|
||||
Consider a case where you need to set multiple variables, where some depend on the evaluation of others.
|
||||
|
||||
@@ -36,7 +36,7 @@ This example requires the following CSS definitions from [[$:/_tw5.com-styles]]:
|
||||
This wiki text shows how to display a list within the scrollable widget:
|
||||
|
||||
<<wikitext-example-without-html "<$scrollable class='tc-scrollable-demo'>
|
||||
<$list filter='[tag[Reference]]'>
|
||||
<$list filter='[!is[system]]'>
|
||||
|
||||
<$view field='title'/>: <$list filter='[all[current]links[]sort[title]]' storyview='pop'>
|
||||
<$link><$view field='title'/></$link>
|
||||
|
||||
@@ -1,15 +1,13 @@
|
||||
caption: Macro Definitions
|
||||
created: 20150220181617000
|
||||
modified: 20221022135909352
|
||||
modified: 20180820165115455
|
||||
tags: WikiText
|
||||
title: Macro Definitions in WikiText
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
A [[macro|Macros]] is defined using a `\define` [[pragma|Pragma]]. Like any pragma, this can only appear at the start of a tiddler.
|
||||
|
||||
The first line of the definition specifies the macro name and any parameters. Each parameter has a name and, optionally, a default value that is used if no value is supplied on a particular call to the macro.
|
||||
|
||||
The lines that follow contain the text of the macro text (i.e. the snippet represented by the macro name), until `\end` appears on a line by itself:
|
||||
The first line of the definition specifies the macro name and any parameters. Each parameter has a name and, optionally, a default value that is used if no value is supplied on a particular call to the macro. The lines that follow contain the text of the macro text (i.e. the snippet represented by the macro name), until `\end` appears on a line by itself:
|
||||
|
||||
<$codeblock code={{$:/editions/tw5.com/macro-examples/say-hi}}/>
|
||||
|
||||
@@ -19,20 +17,6 @@ Alternatively, the entire definition can be presented on a single line without a
|
||||
\define sayhi(name:"Bugs Bunny") Hi, I'm $name$.
|
||||
```
|
||||
|
||||
Macro definitions can be nested by specifying the name of the macro in the `\end` marker. For example:
|
||||
|
||||
<<wikitext-example-without-html src:"""\define special-button(caption:"Click me")
|
||||
\define actions()
|
||||
<$action-sendmessage $message="tm-notify" $param="HelloThere"/>
|
||||
\end actions
|
||||
<$button actions=<<actions>>>
|
||||
$caption$
|
||||
</$button>
|
||||
\end special-button
|
||||
|
||||
<<special-button>>
|
||||
""">>
|
||||
|
||||
A more formal [[presentation|Macro Definition Syntax]] of this syntax is also available.
|
||||
|
||||
!! Accessing variables and parameters
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
created: 20131205160532119
|
||||
modified: 20131205160549129
|
||||
tags: WikiText [[How to apply custom styles]]
|
||||
tags: WikiText
|
||||
title: Styles and Classes in WikiText
|
||||
type: text/vnd.tiddlywiki
|
||||
caption: Styles and Classes
|
||||
|
||||
@@ -2,8 +2,12 @@ title: $:/language/Buttons/
|
||||
|
||||
AdvancedSearch/Caption: Búsqueda avanzada
|
||||
AdvancedSearch/Hint: Búsqueda avanzada
|
||||
Bold/Caption: Negrita
|
||||
Bold/Hint: Aplicar formato de negrita a la selección
|
||||
Cancel/Caption: Cancelar
|
||||
Cancel/Hint: Descarta los cambios
|
||||
Clear/Caption: Limpiar
|
||||
Clear/Hint: Limpiar imagen a color solido
|
||||
Clone/Caption: Clonar
|
||||
Clone/Hint: Hace una copia exacta de este tiddler
|
||||
Close/Caption: Cerrar
|
||||
@@ -18,114 +22,45 @@ CopyToClipboard/Caption: copiar a portapapeles
|
||||
CopyToClipboard/Hint: Copia este texto al portapapeles
|
||||
Delete/Caption: Borrar
|
||||
Delete/Hint: Borra este tiddler
|
||||
DeleteTiddlers/Caption: borrar tiddlers
|
||||
DeleteTiddlers/Hint: Borrar tiddlers
|
||||
Edit/Caption: Editar
|
||||
Edit/Hint: Permite editar este tiddler
|
||||
EditorHeight/Caption: Altura del editor
|
||||
EditorHeight/Caption/Auto: Ajustar al contenido
|
||||
EditorHeight/Caption/Fixed: Altura fija
|
||||
EditorHeight/Hint: Determina la altura del cuadro de edición
|
||||
Encryption/Caption: Cifrado
|
||||
Encryption/Hint: Asigna o revoca la contraseña de cifrado para este wiki
|
||||
Encryption/ClearPassword/Caption: Borrar contraseña
|
||||
Encryption/ClearPassword/Hint: Borra la contraseña actual y guarda este wiki sin cifrar
|
||||
Encryption/Hint: Asigna o revoca la contraseña de cifrado para este wiki
|
||||
Encryption/SetPassword/Caption: Asignar contraseña
|
||||
Encryption/SetPassword/Hint: Asigna contraseña de cifrado
|
||||
Excise/Caption: Escindir
|
||||
Excise/Caption/Excise: Escindir
|
||||
Excise/Caption/MacroName: Nombre de la macro
|
||||
Excise/Caption/NewTitle: Título del nuevo tiddler
|
||||
Excise/Caption/Replace: Reemplazar texto escindido con:
|
||||
Excise/Caption/Replace/Link: enlace
|
||||
Excise/Caption/Replace/Macro: macro
|
||||
Excise/Caption/Replace/Transclusion: transclusión
|
||||
Excise/Caption/Tag: Etiqueta el nuevo tiddler con el título de este
|
||||
Excise/Caption/TiddlerExists: ¡Atención! El tiddler ya existe
|
||||
Excise/Hint: Corta el texto seleccionado y lo pega en un tiddler nuevo
|
||||
ExportPage/Caption: Exportar todos
|
||||
ExportPage/Hint: Exporta todos los tiddlers
|
||||
ExportTiddler/Caption: Exportar tiddler
|
||||
ExportTiddler/Hint: Exporta este tiddler
|
||||
ExportTiddlers/Caption: Exportar tiddlers
|
||||
ExportTiddlers/Hint: Exporta el grupo de tiddlers
|
||||
SidebarSearch/Hint: Selecciona el campo de búsqueda de la barra lateral
|
||||
Fold/Caption: Comprimir tiddler
|
||||
Fold/Hint: Comprime la vista del tiddler ocultando el cuerpo y sólo muestra el título
|
||||
Fold/FoldBar/Caption: Barra de vista comprimida
|
||||
Fold/FoldBar/Hint: Barras opcionales para comprimir y desplegar tiddlers
|
||||
Unfold/Caption: Desplegar tiddler
|
||||
Unfold/Hint: Despliega el cuerpo de este tiddler y muestra su contenido
|
||||
FoldOthers/Caption: Comprimir los demás
|
||||
FoldOthers/Hint: Comprime la vista de todos los tiddlers abiertos excepto este
|
||||
Fold/Hint: Comprime la vista del tiddler ocultando el cuerpo y sólo muestra el título
|
||||
FoldAll/Caption: Comprimir todos
|
||||
FoldAll/Hint: Comprime la vista de todos los tiddlers abiertos
|
||||
UnfoldAll/Caption: Desplegar todos
|
||||
UnfoldAll/Hint: Despliega y muestra el contenido de todos los tiddlers abiertos
|
||||
FoldOthers/Caption: Comprimir los demás
|
||||
FoldOthers/Hint: Comprime la vista de todos los tiddlers abiertos excepto este
|
||||
FullScreen/Caption: Pantalla completa
|
||||
FullScreen/Hint: Entra y sale del modo de pantalla completa
|
||||
Help/Caption: Ayuda
|
||||
Help/Hint: Muestra el panel de ayuda
|
||||
Import/Caption: Importar
|
||||
Import/Hint: Importa multitud de tipos de archivo, incluyendo textos, imágenes, TiddlyWiki y JSON
|
||||
Info/Caption: Información
|
||||
Info/Hint: Muestra información sobre este tiddler
|
||||
Home/Caption: Inicio
|
||||
Home/Hint: Cierra todos los tiddlers abiertos y abre los que se muestran por defecto al inicio
|
||||
Language/Caption: Idioma
|
||||
Language/Hint: Selecciona idioma de la interfaz de usuario
|
||||
Manager/Caption: Administrador tiddler
|
||||
Manager/Hint: Abre el administrador del tiddler
|
||||
More/Caption: Más
|
||||
More/Hint: Otras acciones
|
||||
NewHere/Caption: Nuevo aquí
|
||||
NewHere/Hint: Crea un nuevo tiddler etiquetado con el título de este tiddler
|
||||
NewJournal/Caption: Nueva entrada
|
||||
NewJournal/Hint: Crea una nueva entrada de diario
|
||||
NewJournalHere/Caption: Entrada nueva aquí
|
||||
NewJournalHere/Hint: Crea una nueva entrada de diario etiquetada con el título de este tiddler
|
||||
NewImage/Caption: Nueva imagen
|
||||
NewImage/Hint: Crea un nuevo tiddler de imagen
|
||||
NewMarkdown/Caption: Nuevo tiddler en Markdown
|
||||
NewMarkdown/Hint: Crea un nuevo tiddler en Markdown
|
||||
NewTiddler/Caption: Nuevo tiddler
|
||||
NewTiddler/Hint: Crea un tiddler nuevo
|
||||
OpenWindow/Caption: Abrir en ventana nueva
|
||||
OpenWindow/Hint: Abre el tiddler en una nueva ventana
|
||||
Palette/Caption: Paleta
|
||||
Palette/Hint: Selecciona la paleta de color
|
||||
Permalink/Caption: Enlace permanente
|
||||
Permalink/Hint: Crea en la barra de direcciones del navegador un enlace directo a este tiddler
|
||||
Permaview/Caption: Permaview
|
||||
Permaview/Hint: Crea en la barra de direcciones del navegador un enlace directo a todos los tiddlers abiertos
|
||||
Print/Caption: Imprimir página
|
||||
Print/Hint: Imprime la página actual
|
||||
Refresh/Caption: Recargar
|
||||
Refresh/Hint: Actualiza completamente este wiki
|
||||
Save/Caption: Vale
|
||||
Save/Hint: Confirma y guarda los cambios realizados en el tiddler
|
||||
SaveWiki/Caption: Guardar cambios
|
||||
SaveWiki/Hint: Confirma y guarda todos los cambios realizados en el wiki
|
||||
StoryView/Caption: Vista
|
||||
StoryView/Hint: Selecciona el modo de visualización de los tiddlers
|
||||
HideSideBar/Caption: Ocultar barra lateral
|
||||
HideSideBar/Hint: Oculta la barra lateral
|
||||
ShowSideBar/Caption: Mostrar barra lateral
|
||||
ShowSideBar/Hint: Muestra la barra lateral
|
||||
TagManager/Caption: Administrador de etiquetas
|
||||
TagManager/Hint: Abre el gestor de etiquetas
|
||||
Timestamp/Caption: Marcas de tiempo
|
||||
Timestamp/Hint: Elige si las modificaciones actualizan las marcas de tiempo
|
||||
Timestamp/On/Caption: las marcas de tiempo están activadas
|
||||
Timestamp/On/Hint: Actualizar las marcas de tiempo cuando se modifican los tiddlers
|
||||
Timestamp/Off/Caption: las marcas de tiempo están desactivadas
|
||||
Timestamp/Off/Hint: No actualizar las marcas de tiempo cuando se modifican los tiddlers
|
||||
Theme/Caption: Tema
|
||||
Theme/Hint: Selecciona un estilo visual para el wiki
|
||||
Bold/Caption: Negrita
|
||||
Bold/Hint: Aplicar formato de negrita a la selección
|
||||
Clear/Caption: Limpiar
|
||||
Clear/Hint: Limpiar imagen a color solido
|
||||
EditorHeight/Caption: Altura del editor
|
||||
EditorHeight/Caption/Auto: Ajustar al contenido
|
||||
EditorHeight/Caption/Fixed: Altura fija
|
||||
EditorHeight/Hint: Determina la altura del cuadro de edición
|
||||
Excise/Caption: Escindir
|
||||
Excise/Caption/Excise: Escindir
|
||||
Excise/Caption/MacroName: Nombre de la macro
|
||||
Excise/Caption/NewTitle: Título del nuevo tiddler
|
||||
Excise/Caption/Replace: Reemplazar texto escindido con:
|
||||
Excise/Caption/Replace/Macro: macro
|
||||
Excise/Caption/Replace/Link: enlace
|
||||
Excise/Caption/Replace/Transclusion: transclusión
|
||||
Excise/Caption/Tag: Etiqueta el nuevo tiddler con el título de este
|
||||
Excise/Caption/TiddlerExists: ¡Atención! El tiddler ya existe
|
||||
Excise/Hint: Corta el texto seleccionado y lo pega en un tiddler nuevo
|
||||
Heading1/Caption: Encabezamiento 1
|
||||
Heading1/Hint: Aplica formato de encabezamiento 1 a la selección
|
||||
Heading2/Caption: Encabezamiento 2
|
||||
@@ -138,8 +73,20 @@ Heading5/Caption: Encabezamiento 5
|
||||
Heading5/Hint: Aplica formato de encabezamiento 5 a la selección
|
||||
Heading6/Caption: Encabezamiento 6
|
||||
Heading6/Hint: Aplica formato de encabezamiento 6 a la selección
|
||||
Help/Caption: Ayuda
|
||||
Help/Hint: Muestra el panel de ayuda
|
||||
HideSideBar/Caption: Ocultar barra lateral
|
||||
HideSideBar/Hint: Oculta la barra lateral
|
||||
Home/Caption: Inicio
|
||||
Home/Hint: Cierra todos los tiddlers abiertos y abre los que se muestran por defecto al inicio
|
||||
Import/Caption: Importar
|
||||
Import/Hint: Importa multitud de tipos de archivo, incluyendo textos, imágenes, TiddlyWiki y JSON
|
||||
Info/Caption: Información
|
||||
Info/Hint: Muestra información sobre este tiddler
|
||||
Italic/Caption: Cursiva
|
||||
Italic/Hint: Aplica formato de cursiva a la selección
|
||||
Language/Caption: Idioma
|
||||
Language/Hint: Selecciona idioma de la interfaz de usuario
|
||||
LineWidth/Caption: Ancho del trazo
|
||||
LineWidth/Hint: Establece el ancho del trazo para pintar
|
||||
Link/Caption: Enlace
|
||||
@@ -150,24 +97,59 @@ ListBullet/Caption: Lista con viñetas
|
||||
ListBullet/Hint: Aplica formato de lista con viñetas a la selección
|
||||
ListNumber/Caption: Lista numerada
|
||||
ListNumber/Hint: Aplica formato de lista numerada a la selección
|
||||
Manager/Caption: Administrador tiddler
|
||||
Manager/Hint: Abre el administrador del tiddler
|
||||
MonoBlock/Caption: Bloque monoespaciado
|
||||
MonoBlock/Hint: Aplica formato de bloque monoespaciado a la selección
|
||||
MonoLine/Caption: Monoespacio
|
||||
MonoLine/Hint: Aplica formato de monoespacio a la selección
|
||||
More/Caption: Más
|
||||
More/Hint: Otras acciones
|
||||
NewHere/Caption: Nuevo aquí
|
||||
NewHere/Hint: Crea un nuevo tiddler etiquetado con el título de este tiddler
|
||||
NewImage/Caption: Nueva imagen
|
||||
NewImage/Hint: Crea un nuevo tiddler de imagen
|
||||
NewJournal/Caption: Nueva entrada
|
||||
NewJournal/Hint: Crea una nueva entrada de diario
|
||||
NewJournalHere/Caption: Entrada nueva aquí
|
||||
NewJournalHere/Hint: Crea una nueva entrada de diario etiquetada con el título de este tiddler
|
||||
NewMarkdown/Caption: Nuevo tiddler en Markdown
|
||||
NewMarkdown/Hint: Crea un nuevo tiddler en Markdown
|
||||
NewTiddler/Caption: Nuevo tiddler
|
||||
NewTiddler/Hint: Crea un tiddler nuevo
|
||||
Opacity/Caption: Opacidad
|
||||
Opacity/Hint: Establece la opacidad del trazo
|
||||
OpenWindow/Caption: Abrir en ventana nueva
|
||||
OpenWindow/Hint: Abre el tiddler en una nueva ventana
|
||||
Paint/Caption: Color del trazo
|
||||
Paint/Hint: Establece el color del trazo
|
||||
Palette/Caption: Paleta
|
||||
Palette/Hint: Selecciona la paleta de color
|
||||
Permalink/Caption: Enlace permanente
|
||||
Permalink/Hint: Crea en la barra de direcciones del navegador un enlace directo a este tiddler
|
||||
Permaview/Caption: Permaview
|
||||
Permaview/Hint: Crea en la barra de direcciones del navegador un enlace directo a todos los tiddlers abiertos
|
||||
Picture/Caption: Imagen
|
||||
Picture/Hint: Inserta imagen
|
||||
Preview/Caption: Vista previa
|
||||
Preview/Hint: Muestra el panel de vista previa
|
||||
PreviewType/Caption: Tipo de vista previa
|
||||
PreviewType/Hint: Selecciona el tipo de vista previa
|
||||
Print/Caption: Imprimir página
|
||||
Print/Hint: Imprime la página actual
|
||||
Quote/Caption: Bloque de cita
|
||||
Quote/Hint: Aplica formato de bloque de cita a la selección
|
||||
Refresh/Caption: Recargar
|
||||
Refresh/Hint: Actualiza completamente este wiki
|
||||
RotateLeft/Caption: girar a la izquierda
|
||||
RotateLeft/Hint: Girar la imagen a la izquierda 90 grados
|
||||
Save/Caption: Vale
|
||||
Save/Hint: Confirma y guarda los cambios realizados en el tiddler
|
||||
SaveWiki/Caption: Guardar cambios
|
||||
SaveWiki/Hint: Confirma y guarda todos los cambios realizados en el wiki
|
||||
ShowSideBar/Caption: Mostrar barra lateral
|
||||
ShowSideBar/Hint: Muestra la barra lateral
|
||||
SidebarSearch/Hint: Selecciona el campo de búsqueda de la barra lateral
|
||||
Size/Caption: Tamaño de imagen
|
||||
Size/Caption/Height: Altura:
|
||||
Size/Caption/Resize: Cambiar tamaño
|
||||
@@ -176,16 +158,32 @@ Size/Hint: Establece tamaño de la imagen
|
||||
Stamp/Caption: Snippet
|
||||
Stamp/Caption/New: Añade el tuyo propio
|
||||
Stamp/Hint: Inserta un snippet o fragmento de texto preconfigurado
|
||||
Stamp/New/Title: Nombre para mostrar en el menú
|
||||
Stamp/New/Text: Texto del snippet (Recuerda añadir un título descriptivo en el campo "caption" ).
|
||||
Stamp/New/Title: Nombre para mostrar en el menú
|
||||
StoryView/Caption: Vista
|
||||
StoryView/Hint: Selecciona el modo de visualización de los tiddlers
|
||||
Strikethrough/Caption: Tachado
|
||||
Strikethrough/Hint: Aplica formado de tachado a la selección
|
||||
Subscript/Caption: Subíndice
|
||||
Subscript/Hint: Aplica formato de subíndice a la selección
|
||||
Superscript/Caption: Superíndice
|
||||
Superscript/Hint: Aplica formato de superíndice a la selección
|
||||
TagManager/Caption: Administrador de etiquetas
|
||||
TagManager/Hint: Abre el gestor de etiquetas
|
||||
Theme/Caption: Tema
|
||||
Theme/Hint: Selecciona un estilo visual para el wiki
|
||||
Timestamp/Caption: Marcas de tiempo
|
||||
Timestamp/Hint: Elige si las modificaciones actualizan las marcas de tiempo
|
||||
Timestamp/Off/Caption: las marcas de tiempo están desactivadas
|
||||
Timestamp/Off/Hint: No actualizar las marcas de tiempo cuando se modifican los tiddlers
|
||||
Timestamp/On/Caption: las marcas de tiempo están activadas
|
||||
Timestamp/On/Hint: Actualizar las marcas de tiempo cuando se modifican los tiddlers
|
||||
ToggleSidebar/Hint: Alternar la visibilidad de la barra lateral
|
||||
Transcludify/Caption: Transclusión
|
||||
Transcludify/Hint: Envolver la selección entre llaves
|
||||
Underline/Caption: Subrayado
|
||||
Underline/Hint: Aplica formato de subrayado a la selección
|
||||
Unfold/Caption: Desplegar tiddler
|
||||
Unfold/Hint: Despliega el cuerpo de este tiddler y muestra su contenido
|
||||
UnfoldAll/Caption: Desplegar todos
|
||||
UnfoldAll/Hint: Despliega y muestra el contenido de todos los tiddlers abiertos
|
||||
|
||||
@@ -27,17 +27,10 @@ Basics/Tiddlers/Prompt: Número de tiddlers
|
||||
Basics/Title/Prompt: Título de este ~TiddlyWiki:
|
||||
Basics/Username/Prompt: Nombre de usuario
|
||||
Basics/Version/Prompt: Versión de ~TiddlyWiki
|
||||
Cascades/Caption: Cascadas
|
||||
Cascades/Hint: Estas reglas globales se utilizan para elegir dinámicamente ciertas plantillas. El resultado de la cascada es el resultado del primer filtro en la secuencia que devuelve un resultado
|
||||
Cascades/TagPrompt: Filtros etiquetados <$macrocall $name="tag" tag=<<currentTiddler>>/>
|
||||
EditorTypes/Caption: Tipos de editor
|
||||
EditorTypes/Editor/Caption: Editor
|
||||
EditorTypes/Hint: Editores usados para ciertos tipos específicos de tiddler
|
||||
EditorTypes/Type/Caption: Tipo
|
||||
EditTemplateBody/Caption: Editar Cuerpo de Plantilla
|
||||
EditTemplateBody/Hint: La plantilla de edición predeterminada utiliza esta cascada de reglas para elegir dinámicamente la plantilla para editar el cuerpo de un tiddler.
|
||||
FieldEditor/Caption: Editor de Campos
|
||||
FieldEditor/Hint: Esta cascada de reglas se usa para elegir dinámicamente la plantilla para representar un campo en función de su nombre. Se utiliza dentro de la plantilla de edición.
|
||||
Info/Caption: Información
|
||||
Info/Hint: Información acerca de este TiddlyWiki
|
||||
KeyboardShortcuts/Add/Caption: Añadir atajo
|
||||
@@ -198,8 +191,6 @@ Settings/TitleLinks/Yes/Description: Mostrar como enlaces
|
||||
Settings/MissingLinks/Caption: Enlaces Wiki
|
||||
Settings/MissingLinks/Hint: Elige si quieres vincular a tiddlers que aún no existen
|
||||
Settings/MissingLinks/Description: Habilitar enlaces a tiddlers inexistentes
|
||||
StoryTiddler/Caption: Tiddler de Historia
|
||||
StoryTiddler/Hint: Esta cascada de reglas se usa para elegir dinámicamente la plantilla para mostrar un tiddler en el río de la historia.
|
||||
StoryView/Caption: Vista
|
||||
StoryView/Prompt: Vista actual
|
||||
Stylesheets/Caption: Hojas de estilo
|
||||
@@ -210,10 +201,6 @@ Theme/Caption: Tema
|
||||
Theme/Prompt: Tema actual
|
||||
TiddlerFields/Caption: Campos de tiddler
|
||||
TiddlerFields/Hint: Esta es la colección completa de campos de tiddler (TiddlerFields) actualmente en uso en este wiki, que incluye los tiddlers de sistema, pero no los ocultos
|
||||
TiddlerColour/Caption: Color del Tiddler
|
||||
TiddlerColour/Hint: Esta cascada de reglas se utiliza para elegir dinámicamente el color de un tiddler (utilizado para el icono y la etiqueta asociada).
|
||||
TiddlerIcon/Caption: Icono del Tiddler
|
||||
TiddlerIcon/Hint: Esta cascada de reglas se utiliza para elegir dinámicamente el icono de un tiddler.
|
||||
Toolbars/Caption: Barras de herramientas
|
||||
Toolbars/EditToolbar/Caption: Barra de edición
|
||||
Toolbars/EditToolbar/Hint: Selecciona qué botones mostrar en modo de edición
|
||||
@@ -225,7 +212,3 @@ Toolbars/EditorToolbar/Hint: Elige qué botones se muestran en la barra de herra
|
||||
Toolbars/ViewToolbar/Caption: Barra de visualización
|
||||
Toolbars/ViewToolbar/Hint: Selecciona qué botones mostrar en modo de visualización
|
||||
Tools/Download/Full/Caption: Descargar el wiki completo
|
||||
ViewTemplateBody/Caption: Ver el Cuerpo de la Plantilla
|
||||
ViewTemplateBody/Hint: La plantilla de vista predeterminada utiliza esta cascada de reglas para elegir dinámicamente la plantilla para mostrar el cuerpo de un tiddler.
|
||||
ViewTemplateTitle/Caption: Ver el Título de la Plantilla
|
||||
ViewTemplateTitle/Hint: La plantilla de vista predeterminada utiliza esta cascada de reglas para elegir dinámicamente la plantilla para mostrar el título de un tiddler.
|
||||
|
||||
@@ -44,8 +44,8 @@ muted-foreground: Primario general silenciado
|
||||
notification-background: Fondo Notificación
|
||||
notification-border: Borde Notificación
|
||||
page-background: Fondo Página
|
||||
pre-background: Fondo de código preformateado
|
||||
pre-border: Borde de código preformateado
|
||||
pre-background: Preformatted code background
|
||||
pre-border: Preformatted code border
|
||||
primary: Primario general
|
||||
select-tag-background: Fondo `<select>`
|
||||
select-tag-foreground: Primario `<select>`
|
||||
|
||||
@@ -1,11 +1,8 @@
|
||||
title: $:/language/EditTemplate/
|
||||
|
||||
Caption: Editor
|
||||
Body/External/Hint: Este es un tiddler externo, es decir, guardado fuera del archivo TiddlyWiki principal <br> Puedes editar sus etiquetas y campos, pero no se puede editar directamente el contenido
|
||||
Body/Placeholder: Escribe el texto aquí
|
||||
Body/Preview/Type/Output: Visible
|
||||
Body/Preview/Type/DiffShadow: diferencias con la copia (si las hay)
|
||||
Body/Preview/Type/DiffCurrent: diferencias con el actual
|
||||
Field/Remove/Caption: Eliminar campo
|
||||
Field/Remove/Hint: Elimina el campo y su valor
|
||||
Field/Dropdown/Caption: lista de campos
|
||||
|
||||
@@ -3,7 +3,6 @@ title: $:/language/Docs/Fields/
|
||||
_canonical_uri: Dirección (URI) completa -absoluta o relativa- de un tiddler externo de imagen
|
||||
bag: Nombre de la bolsa de la que procede un tiddler
|
||||
caption: Texto que se muestra en una pestaña o botón, con independencia del título del tiddler que lo define
|
||||
code-body: La plantilla de vista mostrará el tiddler como código si se establece en ''yes''
|
||||
color: Valor CSS del color de fondo asociado a un tiddler
|
||||
component: Nombre del componente responsable de un [[tiddler de alerta|AlertMechanism]]
|
||||
current-tiddler: Usado para incluir el tiddler superior en una [[historia|HistoryMechanism]]
|
||||
@@ -14,9 +13,9 @@ description: Descripción de un complemento, extensión, o diálogo modal
|
||||
draft.of: Título del tiddler del que el actual es borrador
|
||||
draft.title: Nuevo título propuesto para el presente borrador
|
||||
footer: Texto al pie que figurará en un asistente
|
||||
hide-body: La plantilla de vista ocultará los cuerpos de los tiddlers si se establece en ''yes''
|
||||
hide-body: La plantilla de vista ocultará los cuerpos de los tiddlers si se establece en: ''yes''
|
||||
icon: Nombre del tiddler que contiene el icono que se quiere asociar al presente tiddler
|
||||
library: Si su valor es ''yes'', indica que el tiddler debe guardarse como librería de JavaScript
|
||||
library: Si su valor es "Sí", indica que el tiddler debe guardarse como librería de JavaScript
|
||||
list: Lista ordenada de tiddlers asociados al presente tiddler
|
||||
list-before: Título del tiddler antes del que el presente será añadido a una lista<br> Si el campo existe pero está vacío, el tiddler se añadirá al principio de la lista
|
||||
list-after: Título del tiddler tras el que el presente será añadido a una lista de tiddlers.
|
||||
@@ -33,7 +32,7 @@ tags: Lista de etiquetas asignadas al tiddler
|
||||
text: Texto principal de un tiddler
|
||||
throttle.refresh: Si está presente, regula las actualizaciones de este tiddler
|
||||
title: Nombre único de un tiddler
|
||||
toc-link: Suprime el enlace del tiddler en la tabla de contenido si se establece en ''no''
|
||||
toc-link: Suprime el enlace del tiddler en la tabla de contenido si se establece en: ''no''
|
||||
type: Tipo de contenido en un tiddler
|
||||
version: Versión de un complemento o extensión
|
||||
_is_skinny: Si está presente, indica que el campo de texto tiddler debe cargarse desde el servidor
|
||||
|
||||
@@ -11,10 +11,9 @@ Visita https://tiddlywiki.com/#GettingStarted para más información (en inglés
|
||||
|
||||
<div class="tc-control-panel">
|
||||
|
||||
|tc-table-no-border tc-first-col-min-width tc-first-link-nowrap|k
|
||||
| <$link to="$:/SiteTitle"><<lingo Title/Prompt>></$link>|<$edit-text tiddler="$:/SiteTitle" default="" tag="input"/> |
|
||||
| <$link to="$:/SiteSubtitle"><<lingo Subtitle/Prompt>></$link>|<$edit-text tiddler="$:/SiteSubtitle" default="" tag="input"/> |
|
||||
|^ <$link to="$:/DefaultTiddlers"><<lingo DefaultTiddlers/Prompt>></$link><br><<lingo DefaultTiddlers/TopHint>>|<$edit tag="textarea" tiddler="$:/DefaultTiddlers"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |
|
||||
|<$link to="$:/SiteTitle"><<lingo Title/Prompt>></$link> |<$edit-text tiddler="$:/SiteTitle" default="" tag="input"/> |
|
||||
|<$link to="$:/SiteSubtitle"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler="$:/SiteSubtitle" default="" tag="input"/> |
|
||||
|<$link to="$:/DefaultTiddlers"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag="textarea" tiddler="$:/DefaultTiddlers"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |
|
||||
</div>
|
||||
|
||||
Consulta más opciones en el [[panel de control|$:/ControlPanel]]
|
||||
|
||||
@@ -4,7 +4,6 @@ description:
|
||||
\define commandTitle()
|
||||
$:/language/Help/$(command)$
|
||||
\end
|
||||
\whitespace trim
|
||||
```
|
||||
Uso: tiddlywiki [<wikifolder>] [--<command> [<args>...]...]
|
||||
```
|
||||
@@ -13,9 +12,7 @@ Comandos disponibles:
|
||||
|
||||
<ul>
|
||||
<$list filter="[commands[]sort[title]]" variable="command">
|
||||
<li><$link to=<<commandTitle>>><$macrocall $name="command" $type="text/plain" $output="text/plain"/></$link>:
|
||||
 
|
||||
<$transclude tiddler=<<commandTitle>> field="description"/></li>
|
||||
<li><$link to=<<commandTitle>>><$macrocall $name="command" $type="text/plain" $output="text/plain"/></$link>: <$transclude tiddler=<<commandTitle>> field="description"/></li>
|
||||
</$list>
|
||||
</ul>
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@ Todos los parámetros son opcionales con valores predeterminados seguros y se pu
|
||||
* ''readers'' - lista separada por comas de los usuarios autorizados a leer de este wiki
|
||||
* ''writers'' - lista separada por comas de los usuarios autorizados a escribir en este wiki
|
||||
* ''csrf-disable'' - establecer a "yes" para deshabilitar las comprobaciones CSRF (el valor predeterminado es "no")
|
||||
* ''sse-enabled'' - establecer a "yes" para habilitar los eventos enviados por el servidor (el valor predeterminado es "no")
|
||||
* ''root-tiddler'' - el tiddler para servir en la raíz (por defecto es "$:/core/save/all")
|
||||
* ''root-render-type'' - el tipo de contenido del tiddler raíz (por defecto es "text/plain")
|
||||
* ''root-serve-type'' - el tipo de contenido con el que se debe servir el tiddler raíz (el valor predeterminado es "text/html")
|
||||
|
||||
@@ -31,5 +31,5 @@ Notas:
|
||||
|
||||
Ejemplos:
|
||||
|
||||
* `--render '[!is[system]]' '[encodeuricomponent[]addprefix[tiddlers/]addsuffix[.html]]'` -- renders all non-system tiddlers as files in the subdirectory "tiddlers" with URL-encoded titles and the extension HTML
|
||||
* `--render '.' 'tiddlers.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' '[tag[HelloThere]]'` -- renders the tiddlers tagged "HelloThere" to a JSON file named "tiddlers.json"
|
||||
* `--render "[!is[system]]" "[encodeuricomponent[]addprefix[tiddlers/]addsuffix[.html]]"` -- muestra todos los tiddlers que no son del sistema como archivos en el subdirectorio "tiddlers" con títulos codificados en URL y la extensión HTML
|
||||
|
||||
|
||||
@@ -30,5 +30,5 @@ Upgrader/System/Warning: tiddler del sistema principal.
|
||||
Upgrader/System/Alert: Estás a punto de importar un tiddler que sobrescribirá un tiddler del sistema principal. Esto no se recomienda ya que puede hacer que el sistema sea inestable.
|
||||
Upgrader/ThemeTweaks/Created: Ajuste de tema migrado de <$text text=<<from>>/>
|
||||
Upgrader/Tiddler/Disabled: Tiddler deshabilitado.
|
||||
Upgrader/Tiddler/Selected: Tiddler seleccionado.
|
||||
Upgrader/Tiddler/Selected: Usuario seleccionado.
|
||||
Upgrader/Tiddler/Unselected: Tiddler no seleccionado.
|
||||
|
||||
@@ -8,14 +8,13 @@ CloseAll/Button: Cerrar todo
|
||||
ColourPicker/Recent: Recientes:
|
||||
ConfirmCancelTiddler: ¿Deseas descartar los cambios efectuados en "<$text text=<<title>>/>"?
|
||||
ConfirmDeleteTiddler: ¿Deseas borrar "<$text text=<<title>>/>"?
|
||||
ConfirmDeleteTiddlers: ¿Deseas borrar <<resultCount>> tiddler(s)?
|
||||
ConfirmOverwriteTiddler: ¿Deseas sobrescribir "<$text text=<<title>>/>"?
|
||||
ConfirmEditShadowTiddler: Estás a punto de editar un tiddler oculto<br> Todo cambio en él afectará al sistema por defecto y pondrá en riesgo futuras actualizaciones del sistema<br> ¿Estás seguro de querer editar "<$text text=<<title>>/>"?
|
||||
ConfirmAction: ¿Desea continuar?
|
||||
Count: Número
|
||||
DefaultNewTiddlerTitle: Nuevo Tiddler
|
||||
Diffs/CountMessage: <<diff-count>> diferencias
|
||||
DropMessage: Suéltalo ahora o pulsa ''ESC'' para cancelar
|
||||
DropMessage: Suéltalo aquí o pulsa ''ESC'' para cancelar
|
||||
Encryption/Cancel: Cancelar
|
||||
Encryption/ConfirmClearPassword: ¿Deseas borrar la contraseña? <br> Revocarás el cifrado que se aplica para guardar este wiki
|
||||
Encryption/PromptSetPassword: Especifica nueva contraseña para este TiddlyWiki
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
title: $:/language/SideBar/
|
||||
|
||||
Caption: Panel Lateral
|
||||
All/Caption: Todos
|
||||
Contents/Caption: Contenido
|
||||
Drafts/Caption: Borradores
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
title: $:/language/Snippets/ListByTag
|
||||
tags: $:/tags/TextEditor/Snippet
|
||||
caption: Liste de tiddlers por etiqueta
|
||||
caption: Liste de tiddlers par etiqueta
|
||||
|
||||
<<list-links "[tag[task]sort[title]]">>
|
||||
|
||||
@@ -18,8 +18,6 @@ CopyToClipboard/Caption: skopiuj do schowka
|
||||
CopyToClipboard/Hint: Skopiuj ten tekst do schowka
|
||||
Delete/Caption: usuń
|
||||
Delete/Hint: Usuń tiddlera
|
||||
DeleteTiddlers/Caption: usuń tiddlery
|
||||
DeleteTiddlers/Hint: Usuwa tiddlery
|
||||
Edit/Caption: edytuj
|
||||
Edit/Hint: Edytuj tego tiddlera
|
||||
Encryption/Caption: szyfrowanie
|
||||
|
||||
@@ -9,10 +9,9 @@ Zanim zaczniesz zapisywać ważne informacje w swojej ~TiddlyWiki ważne jest,
|
||||
|
||||
<div class="tc-control-panel">
|
||||
|
||||
|tc-table-no-border tc-first-col-min-width tc-first-link-nowrap|k
|
||||
| <$link to="$:/SiteTitle"><<lingo Title/Prompt>></$link>|<$edit-text tiddler="$:/SiteTitle" default="" tag="input"/> |
|
||||
| <$link to="$:/SiteSubtitle"><<lingo Subtitle/Prompt>></$link>|<$edit-text tiddler="$:/SiteSubtitle" default="" tag="input"/> |
|
||||
|^ <$link to="$:/DefaultTiddlers"><<lingo DefaultTiddlers/Prompt>></$link><br><<lingo DefaultTiddlers/TopHint>>|<$edit tag="textarea" tiddler="$:/DefaultTiddlers"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |
|
||||
|<$link to="$:/SiteTitle"><<lingo Title/Prompt>></$link> |<$edit-text tiddler="$:/SiteTitle" default="" tag="input"/> |
|
||||
|<$link to="$:/SiteSubtitle"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler="$:/SiteSubtitle" default="" tag="input"/> |
|
||||
|<$link to="$:/DefaultTiddlers"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag="textarea" tiddler="$:/DefaultTiddlers"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |
|
||||
</div>
|
||||
|
||||
Przejdź do [[panelu sterowania|$:/ControlPanel]] by zmienić pozostałe opcje.
|
||||
|
||||
@@ -31,5 +31,5 @@ Notatki:
|
||||
|
||||
Przykłady:
|
||||
|
||||
* `--render '[!is[system]]' '[encodeuricomponent[]addprefix[tiddlers/]addsuffix[.html]]'` -- renderuje wszystkie niesystemowe tiddlery jako pliki w podfolderze "tiddlers", kodując znaki URI w nazwie i dodając rozszerzenie .html
|
||||
* `--render '.' 'tiddlers.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' '[tag[HelloThere]]'` -- renderuje wszystkie tiddlery z tagiem "HelloThere" do pliku JSON o nazwie "tiddlers.json"
|
||||
* `--render "[!is[system]]" "[encodeuricomponent[]addprefix[tiddlers/]addsuffix[.html]]"` -- renderuje wszystkie niesystemowe tiddlery jako pliki w podfolderze "tiddlers", kodując znaki URI w nazwie i dodając rozszerzenie .html
|
||||
|
||||
|
||||
@@ -8,7 +8,6 @@ CloseAll/Button: zamknij wszystkie
|
||||
ColourPicker/Recent: Ostatnie:
|
||||
ConfirmCancelTiddler: Czy na pewno chcesz odrzucić zmiany w tiddlerze "<$text text=<<title>>/>"?
|
||||
ConfirmDeleteTiddler: Czy na pewno chcesz usunąc tiddlera "<$text text=<<title>>/>"?
|
||||
ConfirmDeleteTiddlers: Na pewno chcesz usunąć <<resultCount>> tiddler/y/ów?
|
||||
ConfirmOverwriteTiddler: Czy na pewno chcesz nadpisać tiddlera "<$text text=<<title>>/>"?
|
||||
ConfirmEditShadowTiddler: Próbujesz utworzyć tiddler-cień. Zmiany te nadpiszą oryginalne, systemowe tiddlery co może utrudniać aktualizację wiki. Czy na pewno chcesz zmodyfikować"<$text text=<<title>>/>"?
|
||||
ConfirmAction: Na pewno chcesz kontynuować?
|
||||
|
||||
@@ -13,7 +13,7 @@ dependents: 插件的相依插件列表
|
||||
description: 插件的说明、描述
|
||||
draft.of: 草稿条目,包含条目的标题、标签、栏位 ...
|
||||
draft.title: 草稿条目的标题
|
||||
footer: 互动窗口的注脚
|
||||
footer: wizard 的注脚
|
||||
hide-body: 若设置为 ''yes'',视图模板将隐藏条目的主体
|
||||
icon: 条目的标题含有与条目关联的图标
|
||||
library: 若设置为 ''yes'',表示条目应该被保存为一个 JavaScript 程序库
|
||||
@@ -28,7 +28,7 @@ plugin-type: 插件条目的类型
|
||||
released: TiddlyWiki 的发布日期
|
||||
revision: 条目存放于服务器中的修订版本
|
||||
source: 条目的网址
|
||||
subtitle: 互动窗口的副标题
|
||||
subtitle: 一个 wizard 的副标题
|
||||
tags: 条目的标签清单
|
||||
text: 条目的内文
|
||||
throttle.refresh: 如果存在,则限制此条目的刷新
|
||||
|
||||
@@ -13,7 +13,7 @@ dependents: 插件的相依插件列表
|
||||
description: 插件的說明、描述
|
||||
draft.of: 草稿條目,包含條目的標題、標籤、欄位 ...
|
||||
draft.title: 草稿條目的標題
|
||||
footer: 互動視窗的註腳
|
||||
footer: wizard 的註腳
|
||||
hide-body: 若設定為 ''yes'',檢視範本將隱藏條目的主體
|
||||
icon: 條目的標題含有與條目關聯的圖示
|
||||
library: 若設定為 ''yes'',表示條目應該被儲存為一個 JavaScript 程式庫
|
||||
@@ -28,7 +28,7 @@ plugin-type: 套件條目的類型
|
||||
released: TiddlyWiki 的釋出日期
|
||||
revision: 條目存放於伺服器中的修訂版本
|
||||
source: 條目的網址
|
||||
subtitle: 互動視窗的副標題
|
||||
subtitle: 一個 wizard 的副標題
|
||||
tags: 條目的標籤清單
|
||||
text: 條目的內文
|
||||
throttle.refresh: 如果存在,則限制此條目的刷新
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user