1

私はAppleScriptでコードを書いていて、Obj-CCocoaアプリを他のものに接着しています。私はCocoaの学習についてもAppleScriptにあまり詳しくないので、もちろん、コードにはあらゆる種類のバグがあり、少なくともいくつかのログが必要です。

ただし、AppleScriptの「log」コマンドからの出力はXCodeのデバッガコンソールに表示されないようであり、NSLogの呼び出しは機能しないようです。AppleScriptObjCクラスメソッド内からデバッガコンソールに出力を送信する方法はありますか?

(提案:このQの新しいapplescriptobjcタグ-まだ新しいタグを作成できません)

4

2 に答える 2

3

私はapplescriptobjcを使用していないので、よくわかりません。しかし、私は以前Applescript Studioを使用していたので、おそらくそこでの私の経験が当てはまります。アプリケーションのtellブロックのコード内にlog(またはNSLog)ステートメントを含めることができないことに気付きました。基本的にこれを行うと、アプリケーションに何かをログに記録するように指示し、アプリケーションはlogコマンドを認識しません...したがって、機能しません。そのため、アプリケーションのtellブロックからログステートメントを取得するか、tellブロックで「何か」をログに記録するためにuse tell meを使用する必要があります...これは、基本的に、Applescriptにログを記録するように指示します。

于 2010-07-15T09:33:01.710 に答える
2

これはコンソールにログを記録してシェルを使用するため理想的ではありませんが、少なくともこれでうまくいくはずです。

log_entry("Hello, World!")

on log_entry(theLine)
    do shell script "echo " & theLine & " >> ~/Library/Logs/AppleScript-events.log"
end log_entry
于 2010-07-19T17:34:48.517 に答える