2009-09-06

Applescript/HTMLシンタックスカラーリング


何でもいいから更新しよう月間その2。

AppleScript を Blog に張るのにシンタックスカラーリングしてくれるモノを、かなり今更ながら探してみました。

最初に見つけたわかばマークのMacの備忘録さんで紹介されていたScript factoryさんの AppleScriptHTML が完全に希望通りのアプリなのですが、Snow Leopard のせいかエラーが出てうまく動かない。
マメに更新されているようなので、きっとそのうち対応して頂けると期待しつつ今回は他の方法を探すことに。


10/26のアップデートで Snow Leopard に対応したようです。
続・Applescript/HTMLシンタックスカラーリング

(11/03追記)


次に発見したのがザリガニが見ていた...。さんの
シンタックスハイライトなHTMLに変換するオブジェクト指向AppleScript その1
シンタックスハイライトなHTMLに変換するオブジェクト指向AppleScript その2
シンタックスハイライトなHTMLに変換するオブジェクト指向AppleScript その3
シンタックスハイライトなHTMLに変換するオブジェクト指向AppleScript その4
の AppleScript。

このスクリプトのすごい所は、リッチテキスト形式でカラーリングやら太文字やらにされていれば AppleScript に限らず変換可能な所なのです。
一番前面のアプリウインドウからリッチテキストを取得して変換してくれるよう。
AppleScript 以外のソースコードにも色々使えそうです。

準備


シンタックスハイライトなHTMLに変換するオブジェクト指向AppleScript その4
の最後辺りのダウンロードページへのリンクから「_lib.scpt」「_rtf.scpt」「rtf_to_html.scpt」の3つのソースを貰ってきます。
※私は一番上のダウンロードボタンが使えなかったので、それぞれのソースの raw リンクからダウンロードしました。この方法だと?AppleScript エディタでスクリプトとして保存し直さないとだめでした。

これを「ユーザー/ライブラリ/Scripts」に置いて準備完了です。
※Snow Leopard からスクリプトメニューの表示は AppleScript エディタの環境設定で行うようになりましたので注意。

いち


変換したい AppleScript をコンパイルしてカラーリングされた状態にする。


AppleScript エディタ(カラーリングされていれば、テキストエディットでも大丈夫)を一番手前にして、スクリプトメニューから「rtf_to_html.scpt」を実行

さん


クリップボードにHTML化された AppleScript が!


↓以前使った AppleScript もこんな感じになります。1色より確実に見やすい。
Xillion Script Tipsさんのスクリプトリンク作成スクリプトで更に便利。




on handle_string(s)
try
set tagString to s

tell application "Finder"
try

set theFiles to selection

repeat with theItem in theFiles

-- Set Label Color On/Off
-- set label index of theItem to 0

-- Set SpotlightComment
set newSptcomString to ""
set sptcomString to comment of theItem
if sptcomString is "" then
set newSptcomString to tagString
else
set newSptcomString to sptcomString & " " & tagString
end if

set comment of theItem to newSptcomString

end repeat

open location "x-launchbar:hide"

on error msg number val
{errMsg:msg, errVal:val}
end try
end tell

end try
end handle_string






byT

2 件のコメント:

匿名 さんのコメント...

AppleScriptHTML の snow leopard 対応版のベータ版の公開を始めています。

できれば、動作報告など頂けると助かります。

MameApp さんのコメント...

コメントに気付くのが遅くてすみません、情報ありがとうございます!
実は既に動作確認してあったのですが、Bloggerで使えないんじゃないかと思い至り、Blogへの投稿は宙に浮いていました。
せっかくですのでSnow Leopardでの動作確認も兼ねて後ほどアップさせていただきます。