Notes: AppleScript Studio のデバッグ機能を確実に使えるようにする


AppleScript Studio(Xcode)でデバッグを行っていると、時々うまくブレークポイントで止まってくれなかったり、Xcode がクラッシュしてしまうことがあります。私も FlightGear Alternative を開発している最中、それまでは大丈夫だったのに、デバッグを始めると必ず Xcode が落ちてしまうようになり、しばらくはデバッグ機能を使うのを諦めていたのですが、やはりコードがそこそこ長くなると、デバッグ機能が使えないと話になりません(私以外の例だと、だいぶ古いエントリになりますが、藤棚さんのブログ の、このエントリ)。そこで、解決方法を探してみることにしました。

結論

  • AppleScript Studio のコードのエンコーディングは「欧米(Mac OS Roman)」以外使うな。

どうして?

事実、コードをすべて「欧米(Mac OS Roman)」で書くように(コメントは英語、ダイアログなどに表示する文字列は localized string of を使う)なってからは、デバッグで怪しい動作をしたことはなく、快適に使えている(なんじゃそら)。

先ほど挙げた、藤棚さんのブログのエントリがヒントに……というかほぼ答えなのですが、「ウィンドウの中のボタンを押すと、『日本語だよ』というダイアログを表示する」というごく単純なプロジェクトを作って試してみれば、すぐ分かります。

ダイアログを表示する部分にブレークポイントを設置して試してみると、やはり「日本語(Mac OS)」「日本語(Shift JIS)」「Unicode(UTF-8)」ではブレークポイントを素通りしてしまいます。ここでコードの日本語部分を英語に直して、エンコーディングを「欧米(Mac OS Roman)」に直せば、完璧に動作します。

「欧米(Mac OS Roman)」でコードを書いていると、間違えて日本語を入力したときに、エンコードを「Unicode(UTF-8)」に変更するよう勧めるダイアログが表示されますので、そのときに変更してしまわないようにご注意ください。

こういった不具合が起きるのは、やはり AppleScript の開発環境が完全に MacOS X ネイティブにはなってはいない、ということなんでしょうね。でも私は、さほど不便だとは思っていません。


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です