スクリプトをWeb上に掲載するときに、そのまま書式を反映できないと困る。
AppleScriptの世界は文法要素ごとに色分けされたStyled Textの世界なので、いきなり単色のプレーンなテキストを読まされると、理解しづらいことこのうえない。そんなわけで、Web上にAppleScriptのリストを載せる場合に、色分けしたものでないと辛い。
海外では、スクリプトをHTML化するプログラムが配布されているが、これは英語環境でないとうまく動かない。また、Script DebuggerにHTMLでExportする機能が用意されているものの、これは昔から日本語をうまく処理できず、書き出したHTMLは日本語部分が文字化けする。
やり方がないわけではない。Jeditはスタイル付きテキストのペーストを受け付けるし、JeditにペーストすればAppleScriptでHTML書き出しを行うことは可能だ。
だが、それではJedit 4.xの存在が必須になってしまう。完全に単独のソリューションとして提供することはできないのか?
ここで、幾つか試行錯誤を行ってみた。TextFieldにペーストされたスタイル付きテキストは、AppleScriptからRTFとして書き出すことが可能だ。RTFに書き出してしまえば、rtf2htmlを用いてHTMLに書き出せるのだ。
あれっ? rtf2htmlが必要なことには変わりないではないか……。ただ、rtf2htmlはフリーで配布されているので、Jeditを買ってくださいという話よりはまだよいだろうか。
この話には、まだ「先」がある。
AppleScriptをHTMLに書き出した際に、ただリストがHTMLになっていればよいというわけでもない。
最近のスクリプトエディタはURLエンコードされたリンクのクリックを受信して、スクリプトエディタ上にその内容をデコードして展開できるようになっている。スクリプトの利用という面では、このURLエンコードしたAppleScriptをリストに収めておくことは必須だろう。
AppleがWeb上でこのエンコードルーチンを公開しているが、例によって日本語のコンテンツをエンコードできない。
いろいろと試してみて、日本語が化けない方法が見つかったので、URLエンコードする機能をGUIアプリに実装してみた。
これで、だいたいの機能は用意できたが、単体でHTML書き出しが行えればなおよし、というところだろうか。もう一息だ。