Scriptable Core Data フレームワーク

cocoa-dev は流れが速くて、とても全てを追いきれないのですが、今日たまたまチェックしてみたら、まだプロトタイプ段階で、ソースの公開は Leopard の発売直後になるようですが、面白そうなフレームワークの開発がアナウンスされていました。

Scriptable Core Data (SCD) Framework launched on SourceForge

Hello, all — We have initiated an open-source project on SourceForge with the UNIX name “scriptcoredata”: https://scriptcoredata.svn.sourceforge.net/svnroot/scriptcoredata/

僕の理解では、Core Data Document-based Application のコードにちょっと手を加えるだけで、自動(半自動?)的に AppleScript 用語辞書を生成してくれる フレームワークのようです。

リンク先にアップされている発表資料の動画では、Core Data のサンプルアプリ「OutlineEdit」をスクリプタブルにして、AppleScript で項目を追加するデモなどが見られます。

個人的には、「用語辞書が生成されるタイミングによっては、AppleScript Studio でも使える?」という、非常に狭い範囲の期待をしてしまいますが、開発が順調に進めば、自分の Core Data アプリに AppleScript サポートを追加したい開発者や、そのアプリのユーザーにとっては、朗報となるかもしれません。

プロジェクト参加者絶賛募集中 のようなので、腕に覚えのある方はぜひ。僕も、自分の技術力が及ぶなら(及ばない?)、バグレポートぐらいはしなくては、と思ってはいます。

Core Data で画像を扱う

前回の記事 で、「 Core Data によって、プログラムの骨格を作るのはかなり楽になるけれど、それだけでちゃんとしたプログラムができるわけではないし、もしそれができなければ、いま作っている Kaku の画像挿入機能は搭載しない」 ということを書いたと思います。

昨日はまさに、そういう「これじゃあ公開できない」という事態に直面していました。前回の記事を書く前に、うすうす気付いてはいたのですが、やはり大量の画像を登録したとき、画像挿入機能のパフォーマンスがかなり悪くなる のです。

結局原因は、Core Data に頼りすぎた、とかではなく、設計そのものがおかしかったというか、単純に、もっと勉強してから臨むべきだった、ということでしたが…(汗)

…というわけで今日は、その問題を解決していった過程を書いていきたいと思います。タイトルは「Core Data で画像を扱う」となっていますが、それについての 正しい答えが書いてあるわけではありません ので、悪しからず(僕が今のところどういった方法でやることにしたかは、書いてあります)。

何しろ、プログラム開発の専門教育を受けたこともないし、もろ文系なので、あまり笑わずに(?)読んでください。何かもっといいアドバイスがありましたら、ありがたく頂戴いたします。

“Core Data で画像を扱う” の続きを読む

Core Data は素敵 / AppleScript Studio プロジェクトと Core Data

最近、MarsEdit 2 を使って、それについての 記事 を書いてみたり、ecto 3 Alpha を使って 記事 を書いてみたりしていたわけですが、自分は?というと、Kaku の画像挿入機能を試しに作ってみていました。

なぜいま画像挿入機能を作っているのかというと、他に作ってみたい機能や、他に作ってみたいソフトもあるのですが、現実問題、いまとりあえず足りないのは、Kaku の画像・リンク挿入機能あたりだろう、と。また、すでに書いたように、Mac 向けの二大ブログエディタを実戦で使ってみた結果、「やっぱり画像やリンクの扱いをなんとかしないと、記事を書くのがなかなかスムースにならない」ということを痛感したからでもあります。

こういった機能を作るには、画像の扱いやら、外部ファイルの扱いやら、ドラッグ&ドロップの扱いやら、自分がこれまで学んできたことがほとんど役に立たなそうな領域(=避けてきた領域)に挑むことになるので、かなりビビっていますが(下にも弱気発言)、今日からしばらくは、その中で気付いたことを記事にしていきます(たぶん)。

“Core Data は素敵 / AppleScript Studio プロジェクトと Core Data” の続きを読む

Notes: AppleScript による XML-RPC で、受信した日付情報が勝手に変更される

ひとつ前の記事 でご紹介した対策を施しても、Kaku での WordPress の記事の日付表示が一向に直らないので、さらに調べてみたところ、AppleScript で行う XML-RPC で受信した日付情報がおかしくなってしまう不具合を見つけました。

問題

  • (舞台裏での XML データの受信は問題ないようだが、)受信した XML データを AppleScript 内で使えるよう変換を行う際、すべての日付情報("«data isotXXXX...»" という形のデータ。中身は ISO 8601 形式)に、UTC であることを表すためのタイムゾーン指定子 Z を付加してしまう。
  • かと言って、前述の記述情報を date 型に変換("... as date")しても、UTC の指定が考慮されるわけではなく、ローカルタイムとして(Z が付いていないときと同じように)扱われる。

対策

  • 直接的なものはない。XML-RPC に AppleScript を使わないようにするしかない。

date 型に変換したとき UTC の指定が考慮されないのはまだしも(もともとそんなのには対応していなさそうだし)、isot が受信されたデータを忠実に保持してさえいてくれれば、文字列に変換して、いくらでも処理できるのですが…。もとの情報は正確に送られてきている(後述)ので、もったいない不具合です。

以下では、(ここまで読めば分かる人もいるかもしれませんが)なぜ WordPress だけ直らないのかを説明しておきます。

“Notes: AppleScript による XML-RPC で、受信した日付情報が勝手に変更される” の続きを読む

公開されている AppleScript Studio ソースを探す(2)

前回の記事は こちら

今回ご紹介するのは Jon’s Little Page of AppleScripts です。

僕は AppleScript 関連の情報を逃さぬべく、RSS リーダーで、キーワード「AppleScript」の検索結果を購読しているのですが、その結果で『 Jon’s 〜 』と来られると、「『 Jon’s Commands(最も有名なスクリプティング機能拡張のひとつ) 』でしょ? そんなの知ってるよ!」という勝手な思い込みでバンバン無視していたのですが、最近普通に Web 検索で調べものをしていたら、それが勘違いであることに気が付きました。

そんなわけで、知っている人は当然知っているだろうし、AppleScript Studio でのソフト作りの参考、というより、ここで配布されているソフトを使っている方も少なくないのではないかと思いますが、この、AppleScript 界における、もうひとつの『 Jon’s 〜 』サイトを、ちょっとご紹介します。

“公開されている AppleScript Studio ソースを探す(2)” の続きを読む

公開されている AppleScript Studio ソースを探す

このサイトについて 」でも宣言していますので、たまには AppleScript Studio のことを書いてみます。

どんなプログラミングの勉強でも、人の書いたソースを読むことはとても役に立つ(…とか言いながら、「勉強」と言えるようなことはほとんどしていないのですが 汗)と思いますが、こと AppleScript ではなく AppleScript Studio で開発されていて、しかもソースが公開されているものというと、個人的にはほとんどお目にかかったことがありませんでした(ちなみに、「AppleScript Studio で開発されたソフト」なら割とよくあって、「あやしいな」と思ってパッケージを開けてみると「Scripts」フォルダがあるソフトが結構あります。今度はそっちの特集もしてみたいです)。

そこで、公開されているソースがどこかにないかと、探してみることにしました。その際、参考にしやすいソースとして、以下のような条件を設定しました:

  • 最近のものであること(実際に探してみると分かりますが、公開されている AppleScript Studio プロジェクトはその多くが、残念ながら、何年も前に更新の途絶えたものです。プロジェクトファイルの拡張子が「 .pbproj 」なのは基本!)
  • すぐにビルドでき、動作を確認できること
  • 探す場所は、オープンソースプロジェクトのホスティングサービスで代表的な「 SourceForge.net 」「 SourceForge.jp 」「 Google Code 」(つまり、個人的に公開されているものなどに関しては、今回は調べていません。いいものがあれば教えてください)

それでは、この条件で見つかったプロジェクトを紹介していきます。

“公開されている AppleScript Studio ソースを探す” の続きを読む

FlightGear 最新版とオブジェクト指向

たいへんご無沙汰しております。

FlightGear Alterenative をダウンロードしにお越し下さった方はご存知かもしれませんが、Win / Linux 環境ではすでにリリースされている、FlightGear v0.9.10 の正式版が、そう遠くないうちにリリースされそうです。

これは、Mac ユーザーも最新バージョンの FlightGear をプレイできる、というほかに、私が作ってきた FlightGear Alternative が、あんまし意味がなくなる、ということでもあります。それは、RubyCocoa という開発環境を使って、これまでとてもシンプルだった、Mac 版の起動ランチャが改良されているからです。

といっても、まだ機能的にかぶらない部分もありますし、現在 MacOS X 版公式サイトで配布されている開発途上版や、旧バージョンをお使いの方もいるかもしれないので、完全に意味がなくなるのはまだ先かもしれませんが、これから FlightGear Alternative をダウンロードされる方は、頭の端にでも置いておいてください。

“FlightGear 最新版とオブジェクト指向” の続きを読む