1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2025-03-24 04:16:56 +00:00

Added "removePrefix" parameter to include macro

This commit is contained in:
Jeremy Ruston 2012-05-29 21:59:14 +01:00
parent 61936d4640
commit 2a1b0cec00

View File

@ -16,19 +16,33 @@ exports.info = {
name: "include",
params: {
filter: {byPos: 0, type: "filter"},
as: {byPos: 1, as: "text"},
shadow: {byPos: 2, as: "text"}
as: {byPos: 1, type: "text"},
shadow: {byPos: 2, type: "text"},
removePrefix: {byName: true, type: "text"}
}
};
exports.executeMacro = function() {
var as = this.params.as || "text/plain",
wiki = this.hasParameter("shadow") ? this.wiki.shadows : this.wiki;
wiki = this.hasParameter("shadow") ? this.wiki.shadows : this.wiki,
t;
if(this.hasParameter("filter")) {
var titles = wiki.filterTiddlers(this.params.filter),
result = [];
for(var t=0; t<titles.length; t++) {
result.push(this.wiki.serializeTiddler(titles[t],as));
if(this.hasParameter("removePrefix")) {
for(t=0; t<titles.length; t++) {
var originalTiddler = this.wiki.getTiddler(titles[t]),
title = titles[t];
if(title.indexOf(this.params.removePrefix) === 0) {
title = title.substr(this.params.removePrefix.length);
var modifiedTiddler = new $tw.Tiddler(originalTiddler,{title: title});
result.push(this.wiki.serializeTiddler(modifiedTiddler,as));
}
}
} else {
for(t=0; t<titles.length; t++) {
result.push(this.wiki.serializeTiddler(titles[t],as));
}
}
return [$tw.Tree.Element("pre",{},[
$tw.Tree.Text(result.join("\n"))