• ベストアンサー
  • 困ってます

AppleScriptやXcodeについて質問できるフォーラムやサイトをご存知ありませんか?

AppleScriptやXcodeについて質問できるフォーラムやサイトをご存知ありませんか? このサイトでも簡単なScript程度なら回答を得られますでしょうか? ちなみに以下の質問をしたいです tell application "System Events" key code {1, 2, 3} end tell の様な記述をAppleScriptでアプリケーション化してDockに登録したのですがスクリプトが上手く起動する時と起動しない時があります AppleScriptが起動するのが遅くスクリプトが実行できないのかな?と思ってみたりもしてます AppleScriptが起動している時や2回目3回目だと上手く起動します PCを再起動した直後や長時間放置した後などは上手く起動しません よろしくお願いします

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数255
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.2

 わかる範囲だけお応えします。「key code」はAppleScriptの中でもGUI Scripting特有のコマンドです。GUI Scriptingには他のAppleScriptとは異なるお約束がいくつかあります。その中に「該当アプリケーションを最前面にしてから使う」「該当アプリケーションのプロセス内で使う」というルールがあります。例えば、件のアプレットがTextEditに命令を送る物だとすれば、以下のような構文になります。 tell application "TextEdit" to activate tell application "System Events" tell process "TextEdit" key code {1, 2, 3} end tell end tell  まずアプリケーションTextEditを最前面に切り替えて、System Events管理下のプロセスTextEdit内でコマンドを発します。特定のウインドウに対しての命令なら、更に「tell window 1」「end tell」等をネストしてやった方が確実に動作します。  key codeコマンドにリストを渡して、複数キーをまとめて操作するってのは個人的には未経験です。もし相変わらず不安定なようなら‥‥ key code 1 delay 1 key code 2 deley 1 key code 3  ‥‥のように待ち時間を1秒ずつ挟みながら順次命令した方が良いかもしれません。お役に立てば良いですけど。

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • AppleScriptで教えて下さい。

    tell application "System Events" to key code 102 OS10.4以降では、キーボードのかな→英字入力変換出来ますが、10.3では NSCannotCreateScriptCommandError どうしてですか? 10.3と10.6のSystem Events.appをスクリプトエディタで確認したところ、key code の内容は全く同じでした。102に問題があるのでしょうか? それを調べる方法を教えて下さい。 別の記述で可能であれば、それでもかまいません。 宜しくお願い致します。

    • 締切済み
    • Mac
  • applescript で pdfを扱いたいんです。

    applescriptで、pdfファイルをアクロバットリーダ6で開けるスクリプトを書いたのですがうまくいきません。どなたか教えて頂きませんか? プレビューで開けるならopen一発で簡単なのですが、アクロバットリーダで開けたいのです。 僕は以下のようなのを書いています。 もしや、アクロバットはpdfを開けるイベントハンドラは対応して無いのでしょうか? tell application "finder" open file "01.pdf" of desktop using application "Adobe Reader 6" end tell

    • ベストアンサー
    • Mac
  • XcodeでAppleScriptアプリケーション作成

    似たような質問を以前させていただいのですが いまだ解決しないのでもう一度質問いたします。 今年からプログラムを勉強したいと思い、いろいろ調べたところ、 初心者はAppleScriptから入った方が良いと言う意見が多かった ため、Xcode(現在OS10.3.9のためバージョン1.5)をダウンロード しました。まずはExampleフォルダ~AppleScriptフォルダの サンプルを試しに「ビルドと実行」をしてみたところ、Failed 1となり ビルドが実行されません。他のサンプルでも同様です。 これは正常なのでしょうか。正常でなければどの様にすればビルドされ アプリケーション起動されるのでしょうか。 初っぱなからつまづていおり、周りに聴く人がいないため、 一人でずっと悩んでおります。どうかご教授ください。宜しくお願いします。

その他の回答 (1)

  • 回答No.1

2chで質問すれば誰か知っていそうですが、私ならAppleの公式サイト内にあるApple Discussionsフォーラムに質問してみます。 リンクは以下です。 https://discussionsjapan.apple.com/index.jspa Apple Discussions - Japan (Beta) > Mac OS > Mac OS X Technologies > Developer (xcodeの話もあります。) https://discussionsjapan.apple.com/community/macos/technology/macos_developer

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • アップルスクリプトで、新しいウインドウを開きたい。

    アップルスクリプトで、IEを全面に持ってくるところ※までは出来たのですが、IEのファイルメニューから、「新しいウインドウを開く」を実行させたいときには、どの様に記述すればよろしいか教えてください。 ※ tell application "Internet Explorer" Activate end tell 最終目的は、ファイルメーカープロのスクリプトで、「urlを開く」を利用したいのですが、一度に、複数のページを表示させたいと考えています。

    • ベストアンサー
    • Mac
  • Applescript バックグランドでメール送信

    以下のようなApplescriptがあります。 ファイルを開くと自動でメールを送信する物です。 件名: あいうえお 本文: かきくけこ 宛先: xxxxx@xxxxx.xx icalを使って定時送信をしているのですが、以下のスクリプトですと、起動するたびにメール作成の画面がフォーカスされてしまいます。常時バックグランドで処理をしたいのですがどうすればいいでしょうか。 ------------------------------------------------ tell application "Mail" set newMessage to make new outgoing message with properties {subject:"あいうえお", content:"かきくけこ", visible:true} tell newMessage to make new to recipient at end of to recipients with properties {address:"xxxxx@xxxxx.xx"} end tell tell application "System Events" tell application process "Mail" to set frontmost to true keystroke "T" using {command down, shift down} end tell tell application "System Events" tell application process "Mail" to set frontmost to true keystroke "D" using {command down, shift down} end tell ------

    • ベストアンサー
    • Mac
  • apple script の作成につきましての質問です。

    こんにちは、いつもお世話になっております。 現在、game pad companionという、 マウスのボタンを割り当てるシェアソフトを使用しています。 使用環境はPowerBook G4 17/1,5 OS X Tigerです。 マウスは Logicool MX-900 Bluetooth mouseです。 起動後、システム環境設定のパネルを開き GamePadCompanionを一度立ち上げて 「中止」ボタンを押し、その後に「開始」ボタンを 押さなければ、割り当てが適用されません。 そこでその操作をapplescriptにしたものを、 以前この掲示板で作っていただいたのですが、 OSをPantherからTigerに変えたところ動作しなくなってしまいました。 アプリケーション形式のapplescriptをを立ち上げると、 環境設定パネルが開き、GamePadCompanionまでは行くのですが、 それ以降進まなくなってしまいます。 そこで、エラー表記が 「NSReceiverEvaluationScriptError:4」と出ます。 applescriptをどのように訂正したら、 上記のような動作にすることができますでしょうか? 以前、教えていただきましたapplescriptは 「 tell application "System Preferences" activate set current pane to pane "com.carvware.gamecompanionpref" end tell tell application "System Events" tell process "System Preferences" tell window 1 click button "中止" delay 1 --1秒待つ click button "開始" end tell end tell end tell quit of application "System Preferences"」です。 よろしくお願いいたします。 また、applescriptの作成の仕方なのですが やりたい動作を行っているものを、 scriptエディタなどでダイレクトに文字に変えるような方法はありませんでしょうか? 自分なりにヘルプを読みながらやってみたのですが、 できませんでした。。。 質問ばかりですが、よろしくお願いいたします。

    • ベストアンサー
    • Mac
  • applescriptでのクリップボードへの格納方法

    applescript初心者です。 単純なことなのですが今、テキストファイル上の数字を検索しクリップボードに格納するscriptを作成挑戦中です。 tell application "Jedit X" tell front document find string "\\d+" with grep end tell end tell ※\は逆スラッシュ?です。 と、検索までは何とか辿り着きました。 ここから先、エディタ上では選択文字を単純にコピーした状態にするにはどうすれば良いのでしょうか? ご教授頂ければと思います。 よろしくお願いします。

    • ベストアンサー
    • Mac
  • AppleScriptでアプリケーション再起動

    表題の件について教えてください。 VNCアプリケーションなんですが、動作が不安定で、 一旦遠隔で操作して接続を切ると、 当該アプリケーションを再起動しないと繋がらなくなるものがあります。 そこで、mailのメッセージルールで、 メール受信するとAppleScriptを実行するように設定して、 当該アプリケーションを再起動するようなapplescriptを作ってみましが 上手く動作してくれません。 AppleScriptを実行とすると、「接続が無効です」とのエラーメッセージが出て、 activateのところが水色のハイライトがつきます。 どのように修正したらよいか教えて下さい。 なお、実行するOSはlion10.7.4です。 tell application "アプリケーション名" quit activate end tell

    • ベストアンサー
    • Mac
  • AppleScriptでiCalを動かしてみたが

    以前に下記のようなAppleScriptがネット上に有りましたが(1999年12月28日) ----------------------------------------------実行 set dSta to my date "2013年6月4日火曜日 0:00:00" set dEnd to my date "2013年6月4日火曜日 16:00:00" -- 検索するカレンダー名 set calName to "仕事" -- 結果を格納する変数 set copyText to "" tell application "Calendar" set theList to every event of calendar calName whose (start date ≥ dSta) and (end date ≤ dEnd) repeat with x in theList set aDate to (start date of x) set copyText to copyText & (aDate as text) & tab & summary of x & (ASCII character 10) end repeat end tell -- 結果をクリップボードにコピー set copyText2 to my Sortsc(copyText) set the clipboard to copyText2 on Sortsc(aData) do shell script "echo " & quoted form of aData & " | sort -d" end Sortsc ------------------------------------------------------------- 今回これを利用したい思い osx10.8 applescript エディタ2.5.1にて起動してみようとしましたが下記のような不思議な現象がでました。 set dSta to my date "2013年6月4日火曜日 0:00:00" set dEnd to my date "2013年6月4日火曜日 16:00:00" としていますが date "1999年12月28日火曜日 0:00:00" and end date ≤ date "1999年12月28日火曜日 16:00:00" となってしまった。 なぜそうなったのかが分かりません。 どなたかご存知のお方がおられましたらご教授いただきたいのですが。 -----------------------------------返された値 tell application "Calendar" get every event of calendar "仕事" whose start date ≥ date "1999年12月28日火曜日 0:00:00" and end date ≤ date "1999年12月28日火曜日 16:00:00" --> {} end tell tell current application do shell script "echo '' | sort -d" --> "" end tell tell application "AppleScript Editor" set the clipboard to "" end tell ------------------------------------------------------------- 因にosx10.6 AppleScript2.3にはきちんと返された値は内容が取得されています。

    • ベストアンサー
    • Mac
  • applescriptでduplicateした後に

    applescriptでのファイル操作に関して質問させて頂きます。 宜しくお願いいたします。 現在、macOS10.8.5で、applescriptのコードを書いております。 tell application "Finder" set mynewfile to (duplicate myfile to toDir) のように、ファイルをコピーした後に、コピー先のファイルを別のアプリケーション(今回はphotoshop CS6)で開いて、処理を継続したいと考えています。 duplicateの戻り値は、class:document fileで、mynewfileから /Users/macbook/Desktop/toDir/myfile.jpg のようなUNIX形式のパステキストを作って渡せば良いと考えたのですが、どうしても取得できません。 ダメもとで、 tell application "Adobe photoshop CS6" open mynewfile などとしても、エラーで動きませんが、 単純に、 open mynewfile とすると、拡張子に対応したデフォルトのアプリケーションでファイルが開きます。 そこで以下2つ質問をさせて頂きます。 質問1) コピーしたファイルを指定したアプリケーションで開くためには、どのような処理を記述すれば良いのでしょうか? 質問2) duplicateの戻り値から、UNIX形式のパステキストを得るためには、どのような処理が適切でしょうか? applescriptに詳しい方、どうかご教示をお願いいたします。

    • ベストアンサー
    • Mac
  • indesignでのapplescript

    はじめまして、indesign CS3で使用するapplescriptに関しての質問です。 自動で出力をしてくれるスクリプトを作りたいと思い、やってみたのですがうまくいきません。 色々調べて作ってみたのがこれです。 tell application "Finder" set filesInFolder to files in (choose folder) repeat with theFile in filesInFolder if name extension of theFile is "indd" then -- 拡張子を指定 set priset to "B4" -- プリントプリセットを指定 tell application "Adobe InDesign CS3" activate open theFile tell document 1 print using priset without print dialog close saving no end tell end tell end if end repeat end tell ここまではなんとかできたのですが、現段階では1階層下までのinddドキュメントしか読取ってくれません。 1見開きごとにパッケージしてできた子フォルダを一つの親フォルダにまとめることが多いので、フォルダ▶フォルダ▶.inddになります。 これでは親フォルダを指定したときに2階層下の子フォルダに分かれて入っている複数の.inddを一気に出力することができません。 何か解決策はありませんでしょうか? また、現段階に関してのご指摘もございましたらよろしくお願いします。

  • AppleScriptからFileMaker起動

    AppleScriptからFileMaker Pro12を起動して、共有ファイルを開きたいのですが、以下の記述ではタイムアウトエラーとなってしまいます。 FileMakerは起動していますが、起動時にファイルを選択するダイアログが開いた状態になっていることが原因かな?と思うのですが、どのようにしたらよいでしょうか? ---------------------------------------- tell application "FileMaker Pro Advanced" activate getURL "fmp://ユーザー名:パスワード@サーバーのIPアドレス/共有ファイル名" end tell ---------------------------------------- サーバー:Mac mini Server OS X10.8 +  FileMaker Server12 アドバイスを宜しくお願い致します。

    • ベストアンサー
    • Mac
  • AppleScript で・・

    お世話になります。 OS10.6環境で“システム環境設定”の“日付と時刻”を開けるAppleScriptをエディターで作製してみるのですが、エラーが出て(error "System Preferences でエラーが起きました:pane \"com.apple.DateAndTIme\" を pane \"com.apple.DateAndTIme\" に設定できません。" number -10006 from pane "com.apple.DateAndTIme")“日付と時刻”まで行き着きません、他の項目はたどり着くのですが、記述に問題があるかと思いますがさっぱりです、お手数ですがアドバイスいただけると助かります。 ー以下スクリプトー tell application "System Preferences" activate set current pane to pane "com.apple.dateandtime" end tell ー以上ー 例えば "com.apple.dateandtime"のdateandtimeをnetworkにすればネットワークが開くのですが・・

    • ベストアンサー
    • Mac