質問

あなたは右のドックアイコンをクリックしたときのAppleScriptが出てくるメニュー項目にアクセスするために取得する方法はありますか?

具体的には、ここで私が何をしたいのです。

私はMacOS XのSnow Leopardの上で自分のWebブラウザとしてGoogle Chromeを使用します。私は、キーボードショートカットの常習者だ、と私は私ができる何のためのキーボードショートカットを作成するために、クイックシルバーを使用します。私が行うことが最も一般的なことの一つは、新しいWebブラウザウィンドウを開くことです。しかし、私は、私が現在働いていることを自分のタスクを分割するために、頻繁にスペースを使用して、私はクイックシルバー・トリガーを使用したWebブラウザやWebページを開くと、スペースは私が上でChromeを使用した最後のスペースに切り替わり、多くの場合、新しいタブを開き、それは別のスペースので、別のタスクに私をもたらしますので、時間に私をそらします。私はGoogle Chromeのアイコンを右クリックして、この問題を解決し、現在のスペースに新しいウィンドウを開き、「新しいウィンドウ」オプションをクリックすることができます。しかし、AppleScriptの中で、元の問題に私を思い出させるGoogle Chromeの、私はそれをアクティブしなければならない最初の事、と何かをします!誰もが、AppleScriptのか、そうでない場合は、この問題への解決策を考えることができますか?これは深刻な問題となっています。戻る私は、Firefoxを使用したとき、私は親切スレッジハンマーアプローチであったが、それが働いたか、そのような何か、「新しいウィンドウで常に開いているポップアップリンク」という設定項目を変更することで問題を解決しました。私はいつものFirefoxに戻ることができますが、私はここに最初に私の質問をしようと思いました。任意のアイデアをお持ちの方?

役に立ちましたか?

解決 2

興味を持っている人にとって、私はこの問題への合理的な実用的なソリューションを持っていると思うが、それはドックアイコン上で右クリックを必要としない。

まず、あなたはシステム環境設定のスペースの環境設定パネルの「アプリケーションのために開いているウィンドウとの空間に、アプリケーションにスイッチを切り替えるときは」オフしなければなりません。それから私は、次のAppleScriptを書いてます:

tell application "Google Chrome" to activate

tell application "System Events"
    tell process "Google Chrome"
        try
            set var to get name of window 1
        on error
            set var to "no window exists!!!"
        end try
    end tell
end tell

if var is "no window exists!!!" then
    tell application "System Events"
        tell process "Google Chrome"
            click menu item "New Window" of menu "File" of menu bar 1
        end tell
    end tell
else
    tell application "System Events"
        tell process "Google Chrome"
            click menu item "New Tab" of menu "File" of menu bar 1
        end tell
    end tell
end if

私は、私は、ショートカットキーを割り当てることができますスパークを使用して、このAppleScriptを起動しますそれにます。

システムに負荷がかかっているが、通常は長い秒以上かかりませんかそこら実行する場合は特に、

これは、少し遅いです。また、私は一日の終わりに開いているウィンドウの数十人で終わるだろう、私は、Firefox、と持っていた問題を回避することができます。

他のヒント

わからないあなたはまだ興味を持っているが、場合...

 tell application "Dock"
    activate
end tell
tell application "System Events"
    tell process "Dock"
        set frontmost to true
        activate
        tell list 1
            perform action "AXShowMenu" of UI element "Google Chrome"
            delay 1
            repeat 4 times -- count number of items to the one you want
                key code 126 -- up arrow
                -- key code 125 -- down arrow
            end repeat
            delay 1
            repeat 2 times
                key code 36 -- return key
            end repeat
        end tell
    end tell
end tell
クロムは毎晩今AppleScriptサポートを含んで構築し、これはずっと前からクロームにそれを行う必要があります。それはあなたが今できることを意味します:

tell application "Chromium"
    make new window
    activate
end tell

また、あなた可能性も、この隠されたオプション呼び出します:

defaults write com.apple.dock workspaces-auto-swoosh -bool NO
killall Dock
それはまた、アプリケーションを切り替えるとき、あなたはもうデスクトップ上の周りにスローされていないことを、私のために、正の効果を有します。単にアクティブなアプリとしてChromeでCmdを+ Nを行います。

ところで、あなたは代わりに^1、^2などのそれを設定する場合は、キーボードショートカットはキーボードで設定することができます前にスペースを作るために持っているのFn + 1、のFn + 2などと直接スペースに行くことができます - >ショートカットの嗜好ます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top