mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2026-01-25 12:23:42 +00:00
Compare commits
27 Commits
v5.0.0-alp
...
v5.0.0-alp
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3972e9150e | ||
|
|
0c8ba71edd | ||
|
|
a7bb331412 | ||
|
|
6f1c9d88cc | ||
|
|
e2d7c7aea5 | ||
|
|
dc0645725e | ||
|
|
06e0bdbfbb | ||
|
|
14db418519 | ||
|
|
d5e1a9d7d0 | ||
|
|
ccb7fac25e | ||
|
|
bbe9a9c191 | ||
|
|
4ee67986a5 | ||
|
|
0a657acbd8 | ||
|
|
d41feb63e3 | ||
|
|
b745e304a2 | ||
|
|
2a7f577366 | ||
|
|
73d301e63f | ||
|
|
fbfdd80f9b | ||
|
|
2d0ff5f8a2 | ||
|
|
ba7bd21cd7 | ||
|
|
16230549b7 | ||
|
|
03c6263e58 | ||
|
|
e54148033b | ||
|
|
f75cddfe53 | ||
|
|
ee63db8811 | ||
|
|
620eebd754 | ||
|
|
ec481415f9 |
@@ -180,6 +180,7 @@ var Command = function(params,commander,callback) {
|
||||
}
|
||||
});
|
||||
tiddlerFields["revision"] = state.wiki.getChangeCount(title);
|
||||
tiddlerFields.type = tiddlerFields.type || "text/vnd.tiddlywiki";
|
||||
tiddlers.push(tiddlerFields);
|
||||
});
|
||||
var text = JSON.stringify(tiddlers);
|
||||
@@ -207,6 +208,7 @@ var Command = function(params,commander,callback) {
|
||||
}
|
||||
});
|
||||
tiddlerFields["revision"] = state.wiki.getChangeCount(title);
|
||||
tiddlerFields.type = tiddlerFields.type || "text/vnd.tiddlywiki";
|
||||
response.writeHead(200, {"Content-Type": "application/json"});
|
||||
response.end(JSON.stringify(tiddlerFields),"utf8");
|
||||
} else {
|
||||
|
||||
@@ -181,7 +181,7 @@ Syncer.prototype.syncFromServer = function() {
|
||||
for(var t=0; t<tiddlers.length; t++) {
|
||||
// Get the incoming tiddler fields, and the existing tiddler
|
||||
var tiddlerFields = tiddlers[t],
|
||||
incomingRevision = tiddlerFields.revision,
|
||||
incomingRevision = tiddlerFields.revision + "",
|
||||
tiddler = self.wiki.getTiddler(tiddlerFields.title),
|
||||
tiddlerInfo = self.tiddlerInfo[tiddlerFields.title],
|
||||
currRevision = tiddlerInfo ? tiddlerInfo.revision : null;
|
||||
|
||||
@@ -63,16 +63,6 @@ BrowseWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return false;
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
BrowseWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.browse = BrowseWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -136,16 +136,6 @@ ButtonWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return this.refreshChildren(changedTiddlers);
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
ButtonWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.button = ButtonWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -103,16 +103,6 @@ CheckboxWidget.prototype.refresh = function(changedTiddlers) {
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
CheckboxWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.checkbox = CheckboxWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -66,16 +66,6 @@ CountWidget.prototype.refresh = function(changedTiddlers) {
|
||||
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget
|
||||
*/
|
||||
CountWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.count = CountWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -175,16 +175,6 @@ DropZoneWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return this.refreshChildren(changedTiddlers);
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
DropZoneWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.dropzone = DropZoneWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -94,16 +94,6 @@ EditBitmapWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return false;
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
EditBitmapWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
EditBitmapWidget.prototype.loadCanvas = function() {
|
||||
var tiddler = this.wiki.getTiddler(this.editTitle),
|
||||
currImage = new Image();
|
||||
|
||||
@@ -73,12 +73,21 @@ Get the tiddler being edited and current value
|
||||
*/
|
||||
EditTextWidget.prototype.getEditInfo = function() {
|
||||
// Get the edit value
|
||||
var tiddler = this.wiki.getTiddler(this.editTitle),
|
||||
value;
|
||||
var self = this,
|
||||
value,
|
||||
update;
|
||||
if(this.editIndex) {
|
||||
value = this.wiki.extractTiddlerDataItem(this.editTitle,this.editIndex,this.editDefault);
|
||||
update = function(value) {
|
||||
var data = self.wiki.getTiddlerData(self.editTitle,{});
|
||||
if(data[self.editIndex] !== value) {
|
||||
data[self.editIndex] = value;
|
||||
self.wiki.setTiddlerData(self.editTitle,data);
|
||||
}
|
||||
};
|
||||
} else {
|
||||
// Get the current tiddler and the field name
|
||||
var tiddler = this.wiki.getTiddler(this.editTitle);
|
||||
if(tiddler) {
|
||||
// If we've got a tiddler, the value to display is the field string value
|
||||
value = tiddler.getFieldString(this.editField);
|
||||
@@ -99,8 +108,16 @@ EditTextWidget.prototype.getEditInfo = function() {
|
||||
value = this.editDefault;
|
||||
}
|
||||
}
|
||||
update = function(value) {
|
||||
var tiddler = self.wiki.getTiddler(self.editTitle),
|
||||
updateFields = {
|
||||
title: self.editTitle
|
||||
};
|
||||
updateFields[self.editField] = value;
|
||||
self.wiki.addTiddler(new $tw.Tiddler(self.wiki.getCreationFields(),tiddler,updateFields,self.wiki.getModificationFields()));
|
||||
};
|
||||
}
|
||||
return {tiddler: tiddler, value: value};
|
||||
return {value: value, update: update};
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -224,36 +241,12 @@ EditTextWidget.prototype.handleFocusEvent = function(event) {
|
||||
};
|
||||
|
||||
EditTextWidget.prototype.saveChanges = function(text) {
|
||||
if(this.editField) {
|
||||
var tiddler = this.wiki.getTiddler(this.editTitle);
|
||||
if(!tiddler) {
|
||||
tiddler = new $tw.Tiddler({title: this.editTitle});
|
||||
}
|
||||
var oldValue = tiddler.getFieldString(this.editField);
|
||||
if(text !== oldValue) {
|
||||
var update = {};
|
||||
update[this.editField] = text;
|
||||
this.wiki.addTiddler(new $tw.Tiddler(tiddler,update));
|
||||
}
|
||||
} else {
|
||||
var data = this.wiki.getTiddlerData(this.editTitle,{});
|
||||
if(data[this.editIndex] !== text) {
|
||||
data[this.editIndex] = text;
|
||||
this.wiki.setTiddlerData(this.editTitle,data);
|
||||
}
|
||||
var editInfo = this.getEditInfo();
|
||||
if(text !== editInfo.value) {
|
||||
editInfo.update(text);
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
EditTextWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports["edit-text"] = EditTextWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -70,16 +70,6 @@ ElementWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return this.refreshChildren(changedTiddlers) || hasChangedAttributes;
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
ElementWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.element = ElementWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -70,16 +70,6 @@ EncryptWidget.prototype.refresh = function(changedTiddlers) {
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget
|
||||
*/
|
||||
EncryptWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.encrypt = EncryptWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -47,16 +47,6 @@ EntityWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return false;
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget
|
||||
*/
|
||||
EntityWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.entity = EntityWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -98,16 +98,6 @@ FieldsWidget.prototype.refresh = function(changedTiddlers) {
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget
|
||||
*/
|
||||
FieldsWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.fields = FieldsWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -169,16 +169,6 @@ LinkWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return this.refreshChildren(changedTiddlers);
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
LinkWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.link = LinkWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -77,16 +77,6 @@ PasswordWidget.prototype.refresh = function(changedTiddlers) {
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
PasswordWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.password = PasswordWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -190,16 +190,6 @@ RevealWidget.prototype.updateState = function() {
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
RevealWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.reveal = RevealWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -48,16 +48,6 @@ TextNodeWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return false;
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget
|
||||
*/
|
||||
TextNodeWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.text = TextNodeWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -30,9 +30,14 @@ ViewWidget.prototype.render = function(parent,nextSibling) {
|
||||
this.parentDomNode = parent;
|
||||
this.computeAttributes();
|
||||
this.execute();
|
||||
var textNode = this.document.createTextNode(this.text);
|
||||
parent.insertBefore(textNode,nextSibling);
|
||||
this.domNodes.push(textNode);
|
||||
if(this.text) {
|
||||
var textNode = this.document.createTextNode(this.text);
|
||||
parent.insertBefore(textNode,nextSibling);
|
||||
this.domNodes.push(textNode);
|
||||
} else {
|
||||
this.makeChildWidgets();
|
||||
this.renderChildren(parent,nextSibling);
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -170,16 +175,6 @@ ViewWidget.prototype.refresh = function(changedTiddlers) {
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget
|
||||
*/
|
||||
ViewWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.view = ViewWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -450,9 +450,18 @@ Widget.prototype.findFirstDomNode = function() {
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
Widget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.children,function(childWidget) {
|
||||
childWidget.removeChildDomNodes();
|
||||
});
|
||||
// If this widget has directly created DOM nodes, delete them and exit. This assumes that any child widgets are contained within the created DOM nodes, which would normally be the case
|
||||
if(this.domNodes.length > 0) {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
} else {
|
||||
// Otherwise, ask the child widgets to delete their DOM nodes
|
||||
$tw.utils.each(this.children,function(childWidget) {
|
||||
childWidget.removeChildDomNodes();
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
exports.widget = Widget;
|
||||
|
||||
@@ -690,6 +690,9 @@ exports.parseTiddler = function(title,options) {
|
||||
|
||||
exports.parseTextReference = function(title,field,index,options) {
|
||||
if(field === "text" || (!field && !index)) {
|
||||
// Force the tiddler to be lazily loaded
|
||||
this.getTiddlerText(title);
|
||||
// Parse it
|
||||
return this.parseTiddler(title,options);
|
||||
} else {
|
||||
var tiddler,text;
|
||||
|
||||
@@ -1,64 +0,0 @@
|
||||
title: $:/core/ui/MoreSideBar
|
||||
|
||||
<div class="tw-tab-set tw-more-sidebar"><div class="tw-tab-buttons">
|
||||
|
||||
<$button type="set" set=<<qualify "$:/state/moreSideBarTabSet">> setTo="allTab" selectedClass="tw-tab-selected">All</$button>
|
||||
|
||||
<$button type="set" set=<<qualify "$:/state/moreSideBarTabSet">> setTo="recentTab" selectedClass="tw-tab-selected">Recent</$button>
|
||||
|
||||
<$button type="set" set=<<qualify "$:/state/moreSideBarTabSet">> setTo="tagsTab" selectedClass="tw-tab-selected">Tags</$button>
|
||||
|
||||
<$button type="set" set=<<qualify "$:/state/moreSideBarTabSet">> setTo="missingTab" selectedClass="tw-tab-selected">Missing</$button>
|
||||
|
||||
<$button type="set" set=<<qualify "$:/state/moreSideBarTabSet">> setTo="draftsTab" selectedClass="tw-tab-selected">Drafts</$button>
|
||||
|
||||
<$button type="set" set=<<qualify "$:/state/moreSideBarTabSet">> setTo="orphanTab" selectedClass="tw-tab-selected">Orphans</$button>
|
||||
|
||||
<$button type="set" set=<<qualify "$:/state/moreSideBarTabSet">> setTo="typeTab" selectedClass="tw-tab-selected">Types</$button>
|
||||
|
||||
<$button type="set" set=<<qualify "$:/state/moreSideBarTabSet">> setTo="systemTab" selectedClass="tw-tab-selected">System</$button>
|
||||
|
||||
<$button type="set" set=<<qualify "$:/state/moreSideBarTabSet">> setTo="shadowsTab" selectedClass="tw-tab-selected">Shadows</$button>
|
||||
|
||||
</div><div class="tw-tab-content">
|
||||
<$reveal type="match" state=<<qualify "$:/state/moreSideBarTabSet">> text="allTab">
|
||||
<$list filter="[!is[system]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/ListItemTemplate"/>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/moreSideBarTabSet">> text="recentTab">
|
||||
{{$:/snippets/recentchanges}}
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/moreSideBarTabSet">> text="tagsTab">
|
||||
<$list filter="[tags[]sort[title]]" itemClass="tw-menu-list-item">
|
||||
<$transclude tiddler="$:/core/ui/TagTemplate"/> <small class="tw-menu-list-count"><$count filter="[is[current]tagging[]]"/></small>
|
||||
</$list>
|
||||
----
|
||||
{{$:/core/ui/UntaggedTemplate}} <small class="tw-menu-list-count"><$count filter="[untagged[]!is[system]] -[tags[]]"/></small>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/moreSideBarTabSet">> text="missingTab">
|
||||
<$list filter="[is[missing]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/MissingTemplate"/>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/moreSideBarTabSet">> text="draftsTab">
|
||||
<$list filter="[has[draft.of]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/ListItemTemplate"/>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/moreSideBarTabSet">> text="orphanTab">
|
||||
<$list filter="[is[orphan]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/ListItemTemplate"/>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/moreSideBarTabSet">> text="typeTab">
|
||||
<$list filter="[!is[system]has[type]each[type]sort[type]]">
|
||||
<div class="tw-menu-list-item">
|
||||
<$view field="type"/>
|
||||
<$list filter="[type{!!type}!is[system]sort[title]]">
|
||||
<div class="tw-menu-list-subitem">
|
||||
<$link to={{!!title}}><$view field="title"/></$link>
|
||||
</div>
|
||||
</$list>
|
||||
</div>
|
||||
</$list>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/moreSideBarTabSet">> text="systemTab">
|
||||
<$list filter="[is[system]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/ListItemTemplate"/>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/moreSideBarTabSet">> text="shadowsTab">
|
||||
<$list filter="[is[shadow]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/ListItemTemplate"/>
|
||||
</$reveal>
|
||||
</div></div>
|
||||
5
core/ui/MoreSideBar/All.tid
Normal file
5
core/ui/MoreSideBar/All.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/MoreSideBar/All
|
||||
tags: $:/tags/MoreSideBar
|
||||
caption: All
|
||||
|
||||
<$list filter="[!is[system]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/ListItemTemplate"/>
|
||||
5
core/ui/MoreSideBar/Drafts.tid
Normal file
5
core/ui/MoreSideBar/Drafts.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/MoreSideBar/Drafts
|
||||
tags: $:/tags/MoreSideBar
|
||||
caption: Drafts
|
||||
|
||||
<$list filter="[has[draft.of]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/ListItemTemplate"/>
|
||||
5
core/ui/MoreSideBar/Missing.tid
Normal file
5
core/ui/MoreSideBar/Missing.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/MoreSideBar/Missing
|
||||
tags: $:/tags/MoreSideBar
|
||||
caption: Missing
|
||||
|
||||
<$list filter="[is[missing]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/MissingTemplate"/>
|
||||
5
core/ui/MoreSideBar/Orphans.tid
Normal file
5
core/ui/MoreSideBar/Orphans.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/MoreSideBar/Orphans
|
||||
tags: $:/tags/MoreSideBar
|
||||
caption: Orphans
|
||||
|
||||
<$list filter="[is[orphan]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/ListItemTemplate"/>
|
||||
5
core/ui/MoreSideBar/Recent.tid
Normal file
5
core/ui/MoreSideBar/Recent.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/MoreSideBar/Recent
|
||||
tags: $:/tags/MoreSideBar
|
||||
caption: Recent
|
||||
|
||||
{{$:/snippets/recentchanges}}
|
||||
5
core/ui/MoreSideBar/Shadows.tid
Normal file
5
core/ui/MoreSideBar/Shadows.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/MoreSideBar/Shadows
|
||||
tags: $:/tags/MoreSideBar
|
||||
caption: Shadows
|
||||
|
||||
<$list filter="[is[shadow]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/ListItemTemplate"/>
|
||||
5
core/ui/MoreSideBar/System.tid
Normal file
5
core/ui/MoreSideBar/System.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/MoreSideBar/System
|
||||
tags: $:/tags/MoreSideBar
|
||||
caption: System
|
||||
|
||||
<$list filter="[is[system]sort[title]]" itemClass="tw-menu-list-item" template="$:/core/ui/ListItemTemplate"/>
|
||||
9
core/ui/MoreSideBar/Tags.tid
Normal file
9
core/ui/MoreSideBar/Tags.tid
Normal file
@@ -0,0 +1,9 @@
|
||||
title: $:/core/ui/MoreSideBar/Tags
|
||||
tags: $:/tags/MoreSideBar
|
||||
caption: Tags
|
||||
|
||||
<$list filter="[tags[]sort[title]]" itemClass="tw-menu-list-item">
|
||||
<$transclude tiddler="$:/core/ui/TagTemplate"/> <small class="tw-menu-list-count"><$count filter="[is[current]tagging[]]"/></small>
|
||||
</$list>
|
||||
----
|
||||
{{$:/core/ui/UntaggedTemplate}} <small class="tw-menu-list-count"><$count filter="[untagged[]!is[system]] -[tags[]]"/></small>
|
||||
14
core/ui/MoreSideBar/Types.tid
Normal file
14
core/ui/MoreSideBar/Types.tid
Normal file
@@ -0,0 +1,14 @@
|
||||
title: $:/core/ui/MoreSideBar/Types
|
||||
tags: $:/tags/MoreSideBar
|
||||
caption: Types
|
||||
|
||||
<$list filter="[!is[system]has[type]each[type]sort[type]]">
|
||||
<div class="tw-menu-list-item">
|
||||
<$view field="type"/>
|
||||
<$list filter="[type{!!type}!is[system]sort[title]]">
|
||||
<div class="tw-menu-list-subitem">
|
||||
<$link to={{!!title}}><$view field="title"/></$link>
|
||||
</div>
|
||||
</$list>
|
||||
</div>
|
||||
</$list>
|
||||
@@ -1,7 +1,7 @@
|
||||
title: $:/core/ui/PageMacros
|
||||
|
||||
\define tabs(tabsList,default,state:"$:/currentTab")
|
||||
<div class="tw-tab-buttons"><$list filter="$tabsList$" variable="currentTab"><$button set=<<qualify "$state$">> setTo=<<currentTab>> default="$default$" selectedClass="tw-tab-selected"><$macrocall $name="currentTab" $type="text/plain" $output="text/plain"/> </$button>
|
||||
<div class="tw-tab-buttons"><$list filter="$tabsList$" variable="currentTab"><$button set=<<qualify "$state$">> setTo=<<currentTab>> default="$default$" selectedClass="tw-tab-selected"><$view tiddler=<<currentTab>> field="caption"><$macrocall $name="currentTab" $type="text/plain" $output="text/plain"/></$view> </$button>
|
||||
</$list>
|
||||
</div>
|
||||
<div class="tw-tab-divider">
|
||||
|
||||
@@ -24,28 +24,7 @@ title: $:/core/ui/SideBar
|
||||
|
||||
<$reveal state="$:/temp/search" type="match" text="">
|
||||
|
||||
<div class="tw-tab-set">
|
||||
<div class="tw-tab-buttons"><$button type="set" set=<<qualify "$:/state/sideBarTabSet">> setTo="openTab" selectedClass="tw-tab-selected">Open</$button><$button type="set" set=<<qualify "$:/state/sideBarTabSet">> setTo="recentTab" selectedClass="tw-tab-selected">Recent</$button><$button type="set" set=<<qualify "$:/state/sideBarTabSet">> setTo="toolsTab" selectedClass="tw-tab-selected">Tools</$button><$button type="set" set=<<qualify "$:/state/sideBarTabSet">> setTo="moreTab" selectedClass="tw-tab-selected">More</$button></div>
|
||||
<div class="tw-tab-divider tw-sidebar-tab-divider">
|
||||
</div>
|
||||
<div class="tw-tab-content">
|
||||
<$reveal type="match" state=<<qualify "$:/state/sideBarTabSet">> text="openTab">
|
||||
<$list filter="[list[$:/StoryList]]" history="$:/HistoryList" storyview="pop" itemClass="tw-menu-list-item tw-open-tiddler-list">
|
||||
<$button message="tw-close-tiddler" class="btn-invisible btn-mini">×</$button> <$link to={{!!title}}><$view field="title"/></$link>
|
||||
</$list>
|
||||
<$button message="tw-close-all-tiddlers" class="btn-invisible btn-mini">close all</$button>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/sideBarTabSet">> text="recentTab">
|
||||
{{$:/snippets/recentchanges}}
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/sideBarTabSet">> text="toolsTab">
|
||||
{{$:/core/ui/ToolsPanel}}
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/sideBarTabSet">> text="moreTab">
|
||||
{{$:/core/ui/MoreSideBar}}
|
||||
</$reveal>
|
||||
</div>
|
||||
</div>
|
||||
<<tabs "[is[shadow]!has[draft.of]tag[$:/tags/SideBar]] [!is[shadow]!has[draft.of]tag[$:/tags/SideBar]]" "$:/core/ui/SideBar/Open" "$:/sidebartab">>
|
||||
|
||||
</$reveal>
|
||||
</div>
|
||||
|
||||
7
core/ui/SideBar/More.tid
Normal file
7
core/ui/SideBar/More.tid
Normal file
@@ -0,0 +1,7 @@
|
||||
title: $:/core/ui/SideBar/More
|
||||
tags: $:/tags/SideBar
|
||||
caption: More
|
||||
|
||||
<div class="tw-more-sidebar">
|
||||
<<tabs "[is[shadow]!has[draft.of]tag[$:/tags/MoreSideBar]] [!is[shadow]!has[draft.of]tag[$:/tags/MoreSideBar]]" "$:/core/ui/MoreSideBar/Open" "$:/moresidebartab">>
|
||||
</div>
|
||||
8
core/ui/SideBar/Open.tid
Normal file
8
core/ui/SideBar/Open.tid
Normal file
@@ -0,0 +1,8 @@
|
||||
title: $:/core/ui/SideBar/Open
|
||||
tags: $:/tags/SideBar
|
||||
caption: Open
|
||||
|
||||
<$list filter="[list[$:/StoryList]]" history="$:/HistoryList" storyview="pop" itemClass="tw-menu-list-item tw-open-tiddler-list">
|
||||
<$button message="tw-close-tiddler" class="btn-invisible btn-mini">×</$button> <$link to={{!!title}}><$view field="title"/></$link>
|
||||
</$list>
|
||||
<$button message="tw-close-all-tiddlers" class="btn-invisible btn-mini">close all</$button>
|
||||
5
core/ui/SideBar/Recent.tid
Normal file
5
core/ui/SideBar/Recent.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/SideBar/Recent
|
||||
tags: $:/tags/SideBar
|
||||
caption: Recent
|
||||
|
||||
{{$:/snippets/recentchanges}}
|
||||
@@ -1,4 +1,6 @@
|
||||
title: $:/core/ui/ToolsPanel
|
||||
title: $:/core/ui/SideBar/Tools
|
||||
tags: $:/tags/SideBar
|
||||
caption: Tools
|
||||
|
||||
[[Wiki Info|$:/WikiInfo]]
|
||||
|
||||
@@ -1,24 +1,3 @@
|
||||
title: $:/core/ui/TiddlerInfo
|
||||
|
||||
<div class="tw-tab-set"><div class="tw-tab-buttons"><$button type="set" set=<<qualify "$:/state/tiddlerDropDownTabSet">> setTo="refTab" selectedClass="tw-tab-selected">References</$button><$button type="set" set=<<qualify "$:/state/tiddlerDropDownTabSet">> setTo="taggingTab" selectedClass="tw-tab-selected">Tagging</$button><$button type="set" set=<<qualify "$:/state/tiddlerDropDownTabSet">> setTo="listTab" selectedClass="tw-tab-selected">List</$button><$button type="set" set=<<qualify "$:/state/tiddlerDropDownTabSet">> setTo="listedTab" selectedClass="tw-tab-selected">Listed</$button><$button type="set" set=<<qualify "$:/state/tiddlerDropDownTabSet">> setTo="fieldsTab" selectedClass="tw-tab-selected">Fields</$button></div>
|
||||
<div class="tw-tab-divider">
|
||||
</div>
|
||||
<div class="tw-tab-content">
|
||||
<$reveal type="match" state=<<qualify "$:/state/tiddlerDropDownTabSet">> text="refTab" default="refTab">
|
||||
<$list filter="[is[current]backlinks[]sort[title]]" emptyMessage="No tiddlers link to this one" template="$:/core/ui/ListItemTemplate">
|
||||
</$list>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/tiddlerDropDownTabSet">> text="taggingTab">
|
||||
<$list filter="[is[current]tagging[]]" itemClass="tw-menu-list-item" emptyMessage="No tiddlers are tagged with this one" template="$:/core/ui/ListItemTemplate"/>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/tiddlerDropDownTabSet">> text="listTab">
|
||||
<$list filter="[list{!!title}]" itemClass="tw-menu-list-item" emptyMessage="This tiddler does not have a list" template="$:/core/ui/ListItemTemplate"/>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/tiddlerDropDownTabSet">> text="listedTab">
|
||||
<$list filter="[is[current]listed[]!is[system]]" itemClass="tw-menu-list-item" emptyMessage="This tiddler is not listed by any others" template="$:/core/ui/ListItemTemplate"/>
|
||||
</$reveal>
|
||||
<$reveal type="match" state=<<qualify "$:/state/tiddlerDropDownTabSet">> text="fieldsTab">
|
||||
<$transclude tiddler="$:/core/ui/TiddlerFields"/>
|
||||
</$reveal>
|
||||
</div>
|
||||
</div>
|
||||
<<tabs "[is[shadow]!has[draft.of]tag[$:/tags/TiddlerInfo]] [!is[shadow]!has[draft.of]tag[$:/tags/TiddlerInfo]]" "$:/core/ui/TiddlerInfo/References">>
|
||||
|
||||
5
core/ui/TiddlerInfo/Fields.tid
Normal file
5
core/ui/TiddlerInfo/Fields.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/TiddlerInfo/Fields
|
||||
tags: $:/tags/TiddlerInfo
|
||||
caption: Fields
|
||||
|
||||
<$transclude tiddler="$:/core/ui/TiddlerFields"/>
|
||||
5
core/ui/TiddlerInfo/List.tid
Normal file
5
core/ui/TiddlerInfo/List.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/TiddlerInfo/List
|
||||
tags: $:/tags/TiddlerInfo
|
||||
caption: List
|
||||
|
||||
<$list filter="[list{!!title}]" itemClass="tw-menu-list-item" emptyMessage="This tiddler does not have a list" template="$:/core/ui/ListItemTemplate"/>
|
||||
5
core/ui/TiddlerInfo/Listed.tid
Normal file
5
core/ui/TiddlerInfo/Listed.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/TiddlerInfo/Listed
|
||||
tags: $:/tags/TiddlerInfo
|
||||
caption: Listed
|
||||
|
||||
<$list filter="[is[current]listed[]!is[system]]" itemClass="tw-menu-list-item" emptyMessage="This tiddler is not listed by any others" template="$:/core/ui/ListItemTemplate"/>
|
||||
6
core/ui/TiddlerInfo/References.tid
Normal file
6
core/ui/TiddlerInfo/References.tid
Normal file
@@ -0,0 +1,6 @@
|
||||
title: $:/core/ui/TiddlerInfo/References
|
||||
tags: $:/tags/TiddlerInfo
|
||||
caption: References
|
||||
|
||||
<$list filter="[is[current]backlinks[]sort[title]]" emptyMessage="No tiddlers link to this one" template="$:/core/ui/ListItemTemplate">
|
||||
</$list>
|
||||
5
core/ui/TiddlerInfo/Tagging.tid
Normal file
5
core/ui/TiddlerInfo/Tagging.tid
Normal file
@@ -0,0 +1,5 @@
|
||||
title: $:/core/ui/TiddlerInfo/Tagging
|
||||
tags: $:/tags/TiddlerInfo
|
||||
caption: Tagging
|
||||
|
||||
<$list filter="[is[current]tagging[]]" itemClass="tw-menu-list-item" emptyMessage="No tiddlers are tagged with this one" template="$:/core/ui/ListItemTemplate"/>
|
||||
@@ -1,4 +1,4 @@
|
||||
title: $:/core/ui/ViewTemplate/subtitle
|
||||
tags: $:/tags/ViewTemplate
|
||||
|
||||
<div class="tw-subtitle"><$view field="modifier" format="link"/> <$view field="modified" format="relativedate"/></div>
|
||||
<div class="tw-subtitle"><$link to={{!!modifier}}><$view field="modifier"/></$link> <$view field="modified" format="relativedate"/></div>
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
title: $:/state/moreSideBarTabSet-{$:/core/ui/MoreSideBar|$:/core/ui/MoreSideBar||}{$:/core/ui/SideBar|$:/core/ui/SideBar||}{$:/core/ui/PageTemplate|$:/core/ui/PageTemplate||}
|
||||
title: $:/moresidebartab-{$:/core/ui/SideBar|$:/core/ui/SideBar/More||}{$:/core/ui/SideBar|$:/core/ui/SideBar||}{$:/core/ui/PageTemplate|$:/core/ui/PageTemplate||}
|
||||
|
||||
tagsTab
|
||||
$:/core/ui/MoreSideBar/Tags
|
||||
@@ -1,3 +1,3 @@
|
||||
title: $:/state/sideBarTabSet-{$:/core/ui/SideBar|$:/core/ui/SideBar||}{$:/core/ui/PageTemplate|$:/core/ui/PageTemplate||}
|
||||
|
||||
openTab
|
||||
$:/core/ui/SideBar/Open
|
||||
3
core/wiki/tags/MoreSideBar.tid
Normal file
3
core/wiki/tags/MoreSideBar.tid
Normal file
@@ -0,0 +1,3 @@
|
||||
title: $:/tags/MoreSideBar
|
||||
list: [[$:/core/ui/MoreSideBar/All]] [[$:/core/ui/MoreSideBar/Recent]] [[$:/core/ui/MoreSideBar/Tags]] [[$:/core/ui/MoreSideBar/Missing]] [[$:/core/ui/MoreSideBar/Drafts]] [[$:/core/ui/MoreSideBar/Orphans]] [[$:/core/ui/MoreSideBar/Types]] [[$:/core/ui/MoreSideBar/System]] [[$:/core/ui/MoreSideBar/Shadows]]
|
||||
|
||||
3
core/wiki/tags/SideBar.tid
Normal file
3
core/wiki/tags/SideBar.tid
Normal file
@@ -0,0 +1,3 @@
|
||||
title: $:/tags/SideBar
|
||||
list: [[$:/core/ui/SideBar/Open]] [[$:/core/ui/SideBar/Recent]] [[$:/core/ui/SideBar/Tools]] [[$:/core/ui/SideBar/More]]
|
||||
|
||||
3
core/wiki/tags/TiddlerInfo.tid
Normal file
3
core/wiki/tags/TiddlerInfo.tid
Normal file
@@ -0,0 +1,3 @@
|
||||
title: $:/tags/TiddlerInfo
|
||||
list: [[$:/core/ui/TiddlerInfo/References]] [[$:/core/ui/TiddlerInfo/Tagging]] [[$:/core/ui/TiddlerInfo/List]] [[$:/core/ui/TiddlerInfo/Listed]] [[$:/core/ui/TiddlerInfo/Fields]]
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Publish to NPM
|
||||
|
||||
npm publish || exit 1
|
||||
|
||||
# Deploy latest build to github
|
||||
|
||||
# This deployment script needs several improvements:
|
||||
|
||||
# 1) deploying to NPM
|
||||
# 2) deploying to TiddlySpace
|
||||
|
||||
pushd ../jermolene.github.com
|
||||
|
||||
git add --all || exit 1
|
||||
|
||||
3
editions/clientserver/tiddlers/ClientServer Edition.tid
Normal file
3
editions/clientserver/tiddlers/ClientServer Edition.tid
Normal file
@@ -0,0 +1,3 @@
|
||||
title: ClientServer Edition
|
||||
|
||||
This is the client server edition of TiddlyWiki5.
|
||||
@@ -1,4 +0,0 @@
|
||||
title: TiddlyWiki5 Personal Client Server Edition
|
||||
modified: 201304152100
|
||||
|
||||
Experimental clientserver edition of TiddlyWiki5.
|
||||
@@ -1,14 +0,0 @@
|
||||
created: 201308231804000
|
||||
creator: JeremyRuston
|
||||
modified: 201311081422000
|
||||
modifier: JeremyRuston
|
||||
title: $:/DefaultTiddlers
|
||||
|
||||
[[TiddlyWiki5 Personal Client Server Edition]]
|
||||
HelloThere
|
||||
Features
|
||||
[[Release 5.0.0-alpha.11]]
|
||||
Community
|
||||
[[TiddlyWiki5 Editions]]
|
||||
RoadMap
|
||||
Docs
|
||||
@@ -1,19 +1,21 @@
|
||||
created: 201309091516000
|
||||
creator: JeremyRuston
|
||||
modified: 201311081421009
|
||||
modified: 201311091538002
|
||||
modifier: JeremyRuston
|
||||
tags: community
|
||||
title: Community
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
! Blog posts and articles about TiddlyWiki5:
|
||||
! Blog posts and articles about TiddlyWiki5
|
||||
|
||||
* A gamers guide to using TiddlyWiki5: "[[Shining Ark 7 Using TiddlyWiki|http://helugame.wordpress.com/2013/09/07/shining-ark-7-using-tiddlywiki/]]"
|
||||
|
||||
! Hints and tips for TiddlyWiki5:
|
||||
! Hints and tips for TiddlyWiki5
|
||||
|
||||
* [[TW5 Mall|http://www.giffmex.org/tw5mall.htm]] - DaveGifford's growing catalogue of hints and tips
|
||||
* A [[guide to creating a fixed top menu|https://dl.dropboxusercontent.com/u/2638511/TW5_Test.htm]] from TonGerner
|
||||
|
||||
! Examples of TiddlyWiki5 being used in the wild:
|
||||
! Examples of TiddlyWiki5 being used in the wild
|
||||
|
||||
|!Site |!Description |
|
||||
|http://freedombits.org |A manifesto for the preservation of free speech through the exchange of randomized data |
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
created: 201308221728
|
||||
created: 201308221728000
|
||||
creator: JeremyRuston
|
||||
modified: 201310281322
|
||||
modified: 201311091532005
|
||||
modifier: JeremyRuston
|
||||
tags: introduction
|
||||
title: Features
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
* The ability to save changes on almost any desktop HTML5 compatible-browser
|
||||
* The ability to save changes on almost any desktop HTML5 compatible-browser, with custom apps to enable saving on [[iPad/iPhone|How to use TiddlyWiki5 as a standalone HTML file with TWEdit]] and [[Android|How to use TiddlyWiki5 as a standalone HTML file with AndTidWiki]], and a cross-platform [[Firefox extension|How to use TiddlyWiki5 as a standalone HTML file with TiddlyFox]] that even runs on Android
|
||||
* [[Bitmap images|Motovun Jack.jpg]] and [[SVG images|UsingSVG]] are first-class citizens alongside text
|
||||
* Concise and expressive WikiText that generates semantic HTML
|
||||
* Integrated [[AES encryption|How to use TiddlyWiki5 as a standalone HTML file with encryption]]
|
||||
@@ -16,8 +17,8 @@ title: Features
|
||||
* TiddlyWiki is [[surprisingly scalable|Scalability]] to many thousands of tiddlers and megabytes of content
|
||||
* Try out the <$button message="tw-full-screen">full screen support</$button>
|
||||
* Explore the [[D3.js visualisation plugin|http://five.tiddlywiki.com/d3demo.html]]
|
||||
* Try out the [[CodeMirror plugin|http://five.tiddlywiki.com/codemirrordemo.html]]
|
||||
* Try out the [[Markdown plugin|http://five.tiddlywiki.com/markdowndemo.html]]
|
||||
* [[CodeMirror support via a plugin|http://five.tiddlywiki.com/codemirrordemo.html]]
|
||||
* [[Markdown support via a plugin|http://five.tiddlywiki.com/markdowndemo.html]]
|
||||
* Many internal improvements:
|
||||
** TiddlyWiki can now be run under [[node.js]] as well as in the browser, allowing it to be used as a personal web server
|
||||
** An elegant [[microkernel architecture|PluginMechanism]], that allows infinite customisation by replacing and augmenting the core modules
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
created: 201308221702
|
||||
created: 201308221702000
|
||||
creator: JeremyRuston
|
||||
modified: 201308252014
|
||||
modified: 201311091512009
|
||||
modifier: JeremyRuston
|
||||
tags: introduction
|
||||
title: HelloThere
|
||||
@@ -8,7 +8,7 @@ type: text/vnd.tiddlywiki
|
||||
|
||||
Welcome to TiddlyWiki5, a reboot of TiddlyWiki, the non-linear personal web notebook first released in 2004. It is a complete interactive wiki in JavaScript that can be run from a single HTML file in the browser or as a powerful [[node.js application|node.js]].
|
||||
|
||||
TiddlyWiki5 is currently in alpha, meaning it is working but incomplete. It is a great time to get involved and support its [[future development|RoadMap]]:
|
||||
This is TiddlyWiki5 version //<<version>>//. It is drawing to the end of the alpha phase, meaning it is almost ready for everyday use. It is a great time to get involved and support its [[future development|RoadMap]]:
|
||||
|
||||
* Explore its features online at http://five.tiddlywiki.com/
|
||||
* Join the discussions on [[the TiddlyWikiDev Google Group|http://groups.google.com/group/TiddlyWikiDev]]
|
||||
|
||||
@@ -3,6 +3,7 @@ creator: JeremyRuston
|
||||
modified: 201311081754007
|
||||
modifier: JeremyRuston
|
||||
title: Release 5.0.0-alpha.11
|
||||
tags: releasenote
|
||||
|
||||
This release is the culmination of a large scale refactoring of the widget mechanism of TiddlyWiki5. There are several changes to be aware of if upgrading from earlier versions:
|
||||
|
||||
@@ -16,13 +17,16 @@ This release is the culmination of a large scale refactoring of the widget mecha
|
||||
** `<$version>` - use the `<<version>>` built-in macro instead
|
||||
* The following widgets have had significant changes:
|
||||
** EditWidget
|
||||
** ListWidget
|
||||
** ViewWidget - `<$view format="link"/>` is no longer available; use an explicit `<$link>` widget instead
|
||||
** ListWidget - the list widget itself no longer generates HTML nodes, so you'll often need to wrap the template in a `<div>` or a `<span>` to be able to style the content
|
||||
** ViewWidget - has several changes:
|
||||
*** `<$view format="link"/>` is no longer available; use an explicit `<$link>` widget instead
|
||||
*** `<$view format="link"/>` is no longer available; use the TranscludeWidget instead
|
||||
* The following new widgets have been added:
|
||||
** BrowseWidget
|
||||
** DropzoneWidget
|
||||
** EditTextWidget and EditBitmapWidget
|
||||
** SetVariableWidget
|
||||
* Widget attribute names have been made more consistent. In particular, `tiddler` is used to reference a tiddler by title, not `title`
|
||||
|
||||
|
||||
* It is no longer possible to import the macro definitions within another tiddler by transcluding that tiddler
|
||||
* The `body` element now has the class `tw-body`, which will need to be specified in any overrides
|
||||
** This was done due to the new support for HTML foreign objects, which makes it possible to have multiple `<body>` elements in a document
|
||||
|
||||
11
editions/tw5.com/tiddlers/Release 5.0.0alpha12.tid
Normal file
11
editions/tw5.com/tiddlers/Release 5.0.0alpha12.tid
Normal file
@@ -0,0 +1,11 @@
|
||||
created: 201311081854007
|
||||
creator: JeremyRuston
|
||||
modified: 201311081854007
|
||||
modifier: JeremyRuston
|
||||
title: Release 5.0.0-alpha.12
|
||||
tags: releasenote
|
||||
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.0.0-alpha.11...v5.0.0-alpha.12]]//
|
||||
|
||||
This minor release just contains fixes for the syncer and related adaptor modules for the TiddlyWeb edition and for TiddlyWiki5's integrated server.
|
||||
25
editions/tw5.com/tiddlers/Release 5.0.0alpha13.tid
Normal file
25
editions/tw5.com/tiddlers/Release 5.0.0alpha13.tid
Normal file
@@ -0,0 +1,25 @@
|
||||
created: 201311091122007
|
||||
creator: JeremyRuston
|
||||
modified: 201311091122007
|
||||
modifier: JeremyRuston
|
||||
title: Release 5.0.0-alpha.13
|
||||
tags: releasenote
|
||||
|
||||
//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.0.0-alpha.12...v5.0.0-alpha.13]]//
|
||||
|
||||
This release has several bug fixes:
|
||||
|
||||
* Fixes to DaveGifford's themes ''blanca'', ''blue'' and ''rocker''
|
||||
* Fix an issue with the `<$edit-text>` widget
|
||||
* Documentation updates
|
||||
* Improved deployment scripts
|
||||
* Made the modifier field in the subtitle be a link
|
||||
* Styling improvements for the CodeMirror plugin
|
||||
* Improved the ViewWidget so that it falls back to displaying its content if the field/property is missing or empty
|
||||
* Extend use of the built-in `<<tabs>>` macro to the tiddler info panel, the control panel and the sidebar
|
||||
** This means that you can add new tabs by creating tiddlers with these tags, and optionally a `caption` field for the text of the tab:
|
||||
*** [[$:/tags/TiddlerInfo]] for tiddler info panel tabs
|
||||
*** [[$:/tags/ControlPanel]] for control panel tabs
|
||||
*** [[$:/tags/SideBar]] for sidebar tabs
|
||||
*** [[$:/tags/MoreSideBar]] for tabs in the "more" sidebar
|
||||
*** Change the order of tabs by adjusting the `list` field of the corresponding tag tiddler
|
||||
16
editions/tw5.com/tiddlers/ReleaseHistory.tid
Normal file
16
editions/tw5.com/tiddlers/ReleaseHistory.tid
Normal file
@@ -0,0 +1,16 @@
|
||||
created: 201311091054007
|
||||
creator: JeremyRuston
|
||||
modified: 201311091054007
|
||||
modifier: JeremyRuston
|
||||
title: ReleaseHistory
|
||||
|
||||
Here are the details of recent releases of TiddlyWiki5.
|
||||
|
||||
<$list filter="[tag[releasenote]!sort[created]]">
|
||||
<div>
|
||||
<h1><$link to={{!!title}}><$view field="title"/></$link></h1>
|
||||
<div>
|
||||
<$transclude/>
|
||||
</div>
|
||||
</div>
|
||||
</$list>
|
||||
@@ -1,11 +1,12 @@
|
||||
created: 201308230917
|
||||
created: 201308230917000
|
||||
creator: JeremyRuston
|
||||
modified: 201308231750
|
||||
modified: 201311091500004
|
||||
modifier: JeremyRuston
|
||||
tags: community
|
||||
title: TiddlyWiki Hangouts
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
The TiddlyWiki community holds regular Google Hangouts. They are announced in the [[TiddlyWiki Google group|https://groups.google.com/d/forum/tiddlywiki]] and on the [[TiddlyWiki Twitter account|https://twitter.com/TiddlyWiki]].
|
||||
The TiddlyWiki community holds regular Google Hangouts, usually every Tuesday from 4pm to 6pm (UK time). They are announced in the [[TiddlyWiki Google group|https://groups.google.com/d/forum/tiddlywiki]] and on the [[TiddlyWiki Twitter account|https://twitter.com/TiddlyWiki]].
|
||||
|
||||
Past Hangouts are archived in this YouTube playlist:
|
||||
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
created: 201308232038
|
||||
created: 201308232038000
|
||||
creator: JeremyRuston
|
||||
modified: 201311011116
|
||||
modified: 201311091553002
|
||||
modifier: JeremyRuston
|
||||
tags: planning
|
||||
title: RoadMap
|
||||
type: text/vnd.tiddlywiki
|
||||
|
||||
TiddlyWiki5 is under rapid development at the moment, moving through a series of stages from alpha, via beta into a stable release.
|
||||
|
||||
! Alpha Release
|
||||
|
||||
The most significant piece of work required before TiddlyWiki5 can move out of alpha into beta is to upgrade the release process so that end users can more easily keep track of the new features. See the [[Plan for moving from Alpha to Beta]] for details of the work that is required.
|
||||
The last remaining improvement before TiddlyWiki5 moves to beta is an easier upgrade mechanism.
|
||||
|
||||
! Beta Release
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ title: $:/DefaultTiddlers
|
||||
|
||||
HelloThere
|
||||
Features
|
||||
[[Release 5.0.0-alpha.11]]
|
||||
ReleaseHistory
|
||||
Community
|
||||
[[TiddlyWiki5 Editions]]
|
||||
RoadMap
|
||||
|
||||
@@ -11,7 +11,7 @@ The view widget displays the contents of a tiddler field in a specified format.
|
||||
|
||||
! Content and Attributes
|
||||
|
||||
The content of the `<$view>` widget is ignored.
|
||||
The content of the `<$view>` widget is displayed if the field or property is missing or empty.
|
||||
|
||||
|!Attribute |!Description |
|
||||
|tiddler |The title of the tiddler (defaults to the [[WidgetVariable: currentTiddler]]) |
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "tiddlywiki",
|
||||
"preferGlobal": "true",
|
||||
"version": "5.0.0-alpha.11",
|
||||
"version": "5.0.0-alpha.13",
|
||||
"author": "Jeremy Ruston <jeremy@jermolene.com>",
|
||||
"description": "a non-linear personal web notebook",
|
||||
"contributors": [
|
||||
|
||||
@@ -6,6 +6,8 @@ tags: [[$:/tags/stylesheet]]
|
||||
.CodeMirror {
|
||||
height: auto;
|
||||
border: 1px solid #ddd;
|
||||
line-height: 1.5;
|
||||
font-family: "Monaco", monospace;
|
||||
}
|
||||
|
||||
.CodeMirror-scroll {
|
||||
|
||||
10
plugins/tiddlywiki/d3/barwidget.js
vendored
10
plugins/tiddlywiki/d3/barwidget.js
vendored
@@ -199,16 +199,6 @@ BarWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return false;
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
BarWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.d3bar = BarWidget;
|
||||
|
||||
})();
|
||||
|
||||
10
plugins/tiddlywiki/d3/cloudwidget.js
vendored
10
plugins/tiddlywiki/d3/cloudwidget.js
vendored
@@ -128,16 +128,6 @@ CloudWidget.prototype.refresh = function(changedTiddlers) {
|
||||
return false;
|
||||
};
|
||||
|
||||
/*
|
||||
Remove any DOM nodes created by this widget or its children
|
||||
*/
|
||||
CloudWidget.prototype.removeChildDomNodes = function() {
|
||||
$tw.utils.each(this.domNodes,function(domNode) {
|
||||
domNode.parentNode.removeChild(domNode);
|
||||
});
|
||||
this.domNodes = [];
|
||||
};
|
||||
|
||||
exports.d3cloud = CloudWidget;
|
||||
|
||||
})();
|
||||
|
||||
@@ -130,6 +130,7 @@ TiddlyWebAdaptor.prototype.getCsrfToken = function() {
|
||||
Get an array of skinny tiddler fields from the server
|
||||
*/
|
||||
TiddlyWebAdaptor.prototype.getSkinnyTiddlers = function(callback) {
|
||||
var self = this;
|
||||
$tw.utils.httpRequest({
|
||||
url: this.host + "recipes/" + this.recipe + "/tiddlers.json",
|
||||
callback: function(err,data) {
|
||||
@@ -140,10 +141,7 @@ TiddlyWebAdaptor.prototype.getSkinnyTiddlers = function(callback) {
|
||||
// Process the tiddlers to make sure the revision is a string
|
||||
var tiddlers = JSON.parse(data);
|
||||
for(var t=0; t<tiddlers.length; t++) {
|
||||
var tiddlerFields = tiddlers[t];
|
||||
if(typeof tiddlerFields.revision === "number") {
|
||||
tiddlerFields.revision = tiddlerFields.revision.toString();
|
||||
}
|
||||
var tiddlerFields = self.convertTiddlerFromTiddlyWebFormat(tiddlers[t]);
|
||||
}
|
||||
// Invoke the callback with the skinny tiddlers
|
||||
callback(null,tiddlers);
|
||||
@@ -189,7 +187,7 @@ TiddlyWebAdaptor.prototype.loadTiddler = function(title,callback) {
|
||||
return callback(err);
|
||||
}
|
||||
// Invoke the callback
|
||||
callback(null,self.convertTiddlerFromTiddlyWebFormat(data));
|
||||
callback(null,self.convertTiddlerFromTiddlyWebFormat(JSON.parse(data)));
|
||||
}
|
||||
});
|
||||
};
|
||||
@@ -237,19 +235,19 @@ TiddlyWebAdaptor.prototype.convertTiddlerToTiddlyWebFormat = function(tiddler) {
|
||||
}
|
||||
});
|
||||
}
|
||||
// Convert the type "text/x-tiddlywiki" into null
|
||||
// Default the content type and convert the type "text/x-tiddlywiki" into null
|
||||
if(result.type === "text/x-tiddlywiki") {
|
||||
result.type = null;
|
||||
}
|
||||
};
|
||||
result.type = result.type || "text/vnd.tiddlywiki";
|
||||
return JSON.stringify(result,null,$tw.config.preferences.jsonSpaces);
|
||||
};
|
||||
|
||||
/*
|
||||
Convert a field set in TiddlyWeb format into ordinary TiddlyWiki5 format
|
||||
*/
|
||||
TiddlyWebAdaptor.prototype.convertTiddlerFromTiddlyWebFormat = function(data) {
|
||||
var tiddlerFields = JSON.parse(data),
|
||||
self = this,
|
||||
TiddlyWebAdaptor.prototype.convertTiddlerFromTiddlyWebFormat = function(tiddlerFields) {
|
||||
var self = this,
|
||||
result = {};
|
||||
// Transfer the fields, pulling down the `fields` hashmap
|
||||
$tw.utils.each(tiddlerFields,function(element,title,object) {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
title: $:/themes/giffmex/blanca/styles
|
||||
tags: [[$:/tags/stylesheet]]
|
||||
|
||||
html body {
|
||||
html body.tw-body {
|
||||
font-size:14px;
|
||||
line-height:20px;
|
||||
background-color:#ffffff;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
title: $:/themes/giffmex/blue/styles
|
||||
tags: [[$:/tags/stylesheet]]
|
||||
|
||||
html body {
|
||||
html body.tw-body {
|
||||
font-size:14px;
|
||||
line-height:20px;
|
||||
background-color:#ddddff;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
title: $:/themes/giffmex/rocker/styles
|
||||
tags: [[$:/tags/stylesheet]]
|
||||
|
||||
html body { font-size:14px;line-height:20px; background-color:#000000;}
|
||||
html body.tw-body { font-size:14px;line-height:20px; background-color:#000000;}
|
||||
html .tw-page-controls {background-color:#000000; padding:8px;}
|
||||
|
||||
html .title {color: #cc0000;}
|
||||
|
||||
@@ -2,7 +2,7 @@ title: $:/ControlPanel/ThemeTweaks
|
||||
|
||||
You can tweak certain aspects of the ''Snow White'' theme.
|
||||
|
||||
//Currently, you need to ''save and restart'' TiddlyWiki before these changes take effect. Also take care to preserve any backticks (`) in the settings//
|
||||
//Currently, you need to toggle to a different theme and back (or save and restart) TiddlyWiki before these changes take effect. Also take care to preserve any backticks (`) in the settings//
|
||||
|
||||
! Colours
|
||||
|
||||
|
||||
@@ -875,18 +875,18 @@ canvas.tw-edit-bitmapeditor {
|
||||
border-bottom: 1px solid #ececec;
|
||||
}
|
||||
|
||||
.tw-sidebar-tab-divider.tw-tab-divider {
|
||||
.tw-sidebar-lists .tw-tab-divider {
|
||||
border-top: none;
|
||||
height: 1px;
|
||||
<<background-linear-gradient "left, rgb(216,216,216) 0%, rgb(236,236,236) 250px">>
|
||||
}
|
||||
|
||||
.tw-more-sidebar.tw-tab-set {
|
||||
.tw-more-sidebar {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
@media (min-width: 770px) {
|
||||
.tw-more-sidebar.tw-tab-set {
|
||||
.tw-more-sidebar {
|
||||
margin-left: -14px;
|
||||
}
|
||||
}
|
||||
@@ -899,6 +899,16 @@ canvas.tw-edit-bitmapeditor {
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
.tw-more-sidebar .tw-tab-buttons button {
|
||||
display: block;
|
||||
width: 100%;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.tw-sidebar-lists .tw-more-sidebar .tw-tab-divider {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.tw-more-sidebar .tw-tab-content {
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
@@ -917,7 +927,7 @@ canvas.tw-edit-bitmapeditor {
|
||||
|
||||
.tw-more-sidebar .tw-tab-buttons button.tw-tab-selected {
|
||||
background-color: #fff;
|
||||
<<background-linear-gradient "left, rgb(236,236,236) 0%, rgb(255,255,255) 100%">>
|
||||
<<background-linear-gradient "left, rgb(236,236,236) 0%, rgb(248,248,248) 100%">>
|
||||
border: none;
|
||||
}
|
||||
|
||||
|
||||
17
verbump.sh
Executable file
17
verbump.sh
Executable file
@@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Bump to a new version number
|
||||
|
||||
if [ -z "$1" ]
|
||||
then
|
||||
echo "Missing version (eg '5.0.0-alpha.99')"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Set the new version number (will also commit and tag the release)
|
||||
|
||||
npm version $1 -m "Version update" || exit 1
|
||||
|
||||
# Make sure our tags are pushed to the origin server
|
||||
|
||||
git push origin --tags || exit 1
|
||||
Reference in New Issue
Block a user