1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-10-01 16:30:46 +00:00

Allow the let widget to create variables starting with $

This commit is contained in:
jeremy@jermolene.com 2022-05-03 08:44:33 +01:00
parent 3000d3339c
commit 2ea0374b55
2 changed files with 8 additions and 7 deletions

View File

@ -51,11 +51,9 @@ LetWidget.prototype.computeAttributes = function() {
$tw.utils.each($tw.utils.getOrderedAttributesFromParseTreeNode(this.parseTreeNode),function(attribute) { $tw.utils.each($tw.utils.getOrderedAttributesFromParseTreeNode(this.parseTreeNode),function(attribute) {
var value = self.computeAttribute(attribute), var value = self.computeAttribute(attribute),
name = attribute.name; name = attribute.name;
if(name.charAt(0) !== "$") { // Now that it's prepped, we're allowed to look this variable up
// Now that it's prepped, we're allowed to look this variable up // when defining later variables
// when defining later variables self.currentValueFor[name] = value;
self.currentValueFor[name] = value;
}
}); });
// Run through again, setting variables and looking for differences // Run through again, setting variables and looking for differences
$tw.utils.each(this.currentValueFor,function(value,name) { $tw.utils.each(this.currentValueFor,function(value,name) {

View File

@ -1,5 +1,6 @@
title: LetWidget title: LetWidget
created: 20211028115900000 created: 20220502144738010
modified: 20220502144738010
tags: Widgets tags: Widgets
caption: let caption: let
@ -12,7 +13,9 @@ caption: let
The content of the <<.wid let>> widget is the scope for the value assigned to the variable. The content of the <<.wid let>> widget is the scope for the value assigned to the variable.
|!Attribute |!Description | |!Attribute |!Description |
|//{attributes not starting with $}// |Each attribute name specifies a variable name. The attribute value is assigned to the variable | |//{any attributes}// |Each attribute name specifies a variable name. The attribute value is assigned to the variable |
<<.from-version "5.2.3">> Previously, variable names were restricted to not start with a dollar sign. That restriction is no longer applied.
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. 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.