> と入れると 09:00-10:30(1.50H) と表示するマクロ

2018年2月24日

この記事は最初の投稿日から18年経過しています。内容が古い可能性があります。

TiddlyWiki のマクロって、結構容易に作れるのですね。

TiddlyWikiのススメ(HSJ.jp) の解説のおかげでマクロ作成のはじめの一歩を容易に踏み出すことができました。

開始、終了時間を入れると整形して表示するというマクロを作ってみました。

<<h 9 0 10 30>> 報告書の作成

てな感じで書くと、

09:00-10:30(1.50H) 報告書の作成

と表示されます。

マクロ名は、超短くして「h」の1文字にしました。

タイプ量を少しでも減らしたかったので・・・。

h

下記の内容の tiddler を作成し、タグに、SystemConfig を設定してリロードすると使えるようになります。


//{{{
config.macros.h = {};
config.macros.h.handler = function(place,macroName, params)
{
var from = new Date(1970,1,1,params[0],params[1],0);
var to = new Date(1970,1,1,params[2],params[3],0);
if (from > to) {
to.setDate(to.getDate() + 1);
}
var diff = to - from;
var H = Math.floor(diff / 3600000);
diff = diff - (H * 3600000);
var M = Math.floor(diff / 36000);
var s = zp(params[0]) + ":" + zp(params[1]) + "-" + zp(params[2]) + ":" + zp(params[3]) + "(" + H + "." + M + "H)";
place.appendChild(document.createTextNode(s));
return(true);
}
function zp(s) {
if (s < 10) {
s = "0" + s;
}
return s;
}
//}}}

TiddlyWiki

Posted by toshyon