時間がないときに限ってプログラミングが無性にやりたくなるものですね、
表題の通りのスクリプトを作成してみました。右上の写真のような感じです。
// ==UserScript== // @name Check*Pad Coloring // @namespace chie@tamago.soup.jp // @description Check*Pad Coloring Tasks // @include http://www.checkpad.jp/?mode=pjt&act=detail&id=* // ==/UserScript== (function() { var ms_box = document.getElementById("ms_box_notyet"); var colors = ["", "#BF7360", "#60BF96", "#9F60BF", "#BF608A", "#73BF60"]; var ci = 0; var preTag = ""; var nowTag = ""; for(var i = 0;i < ms_box.childNodes.length;i++) { var n = ms_box.childNodes[i]; if(n.nodeName.match(/div/i)) { var iid = n.id.match(/(\d+)$/)[0]; var text = document.getElementById("ms_" + iid + "_edit").value; if(text.match(/^\[(.+)\]/) || text.match(/^【(.+)】/) || text.match(/^([●■▲★◆○□△☆◇※◎▽▼])/) || false) { nowTag = RegExp.$1; }else{ nowTag = ""; } if(preTag != nowTag) { preTag = nowTag; ci++; } n.style.color = colors[ci]; if(ci >= colors.length) ci = 1; } } })();
タスクリストなど、角括弧や墨付き括弧でのカテゴライズがなされている場合、各カテゴリを色分けして表示することができます。ついでにタグが一個もないタスクリストでは、色が変わりません。
編集時に色がそのままになるなどいろいろ問題もありますが、とりあえず公開してみます。
Check*Padはいろんな意味でシンプルなチェックリストなので、何かと使える機会があるかもしれません。ちょっといろいろ使ってみようかな。