Shibuya.jsでのmalaさんの発表をみて、萌ディタ+Sleipnirをやってみようかと思った。同じことをやろうとしたのだけれど、面倒臭がりなので、萌ディタ内で済ませてしまった。本家のブログはまだ「あとで書く」の状態だけど、ブックマークレット使ってとかあったので、実際にはどうやっているのか楽しみ。とりあえず、それっぽい動きはできたので、以下手順。
まずは、萌ディタから。萌ディタのscriptディレクトリ内にある「srcfile.javascript.txt」を開いて
addClass(new class_srcfile());
の上部に以下を追記する。
f.onSave = function() { var pnir = new ActiveXObject("Sleipnir.API"); var tabid = pnir.GetDocumentID(pnir.ActiveIndex); var window = pnir.GetWindowObject(tabid); var links = window.document.getElementsByTagName("link"); for (var i = 0; i < links.length; i++) { var link = links[i]; if (link.href == App.Buffer.FileName) { link.href = App.Buffer.FileName; return; } } var heads = window.document.getElementsByTagName("head"); var linkTag = window.document.createElement("link"); linkTag.setAttribute("href", App.Buffer.FileName); linkTag.setAttribute("rel", "stylesheet"); linkTag.setAttribute("type", "text/css"); heads[0].appendChild(linkTag); }
萌ディタ自体の設定としては『書式 -> むずかしい設定 -> スクリプト』で「srcfile.javascript.txt」と「css.javascript.txt」を追加して、『書式 -> スクリプトを有効』を選択する。
Sleipnirの設定は『ツール -> Sleipnirオプション -> 全般 -> スクリプトによるクライアントの操作を許可する』をチェックすれば良い。
あとは萌ディタで.cssなファイルをローカルに保存すればSlepipnirのアクティブタブにCSSが適用される。headタグがあることが前提とか結構雑な作りだけど、これだけでも結構心地良いツールだなと思う。でも、本家はもっと良い感じにやってるんだろうなぁ。