Chromeで外部リンクの新しいウィンドウを開く方法


10

一部の人々が知っているように、Google Chromeの外部リンクのデフォルトの動作はかなり悪いです。Spacesを使用していて、最後に使用したChromeのウィンドウとは異なるSpaceにあるときに、Google Chrome以外のアプリケーションでリンクを開くと、最後にフォーカスしたウィンドウに切り替わります。

この動作はただ悪いです。

この行動を変えたい。Windowsでは、これは可能です:新しいブラウザーインスタンスをタブではなく新しいウィンドウで開くようにChromeを構成するにはどうすればよいですか?

悲しいことに、これはOS X Snow Leopardでは可能ではないと思います。

RCDefaultAppsというツールをすでに使用しています。これは、さまざまなプロトコルのデフォルトアプリケーションを指定できるシステムコントロールパネルです。デフォルトのアプリケーションに追加のコマンドライン引数を指定する機能が欠けているだけです。

誰かが私を助けてくれますか?すべてのハック(カスタムChromiumビルドの作成を除く)は許容されます。

回答:


9

このページにあるAppleScriptを使用してみてください

試してみたところ、Chrome 12.0.742.122で問題なく動作しました。

セットアップは非常に簡単です。

  • バンドルアーカイブをダウンロードする
  • ダブルクリックして解凍します
  • ダブルクリック OpenUrlInNewChromeWindow
  • Safariを開き、環境設定でデフォルトのブラウザとして新しい「ブラウザ」を設定します。

新しいデフォルトのブラウザ


これはウィンドウを開く前に(非常に短い)遅延をもたらすようですが、まさにそれが私が探していたものです。ありがとう!
jsadfeew 2011

このapplescriptは素晴らしい働きをします。
ネルソン

3

デイブの答えから始めて、Chrome 45では実行osascriptは不要であり、OS X 10.10ではシステム設定でApple Scriptを選択できないことがわかりました。ここで私はそれを解決した方法です。

Apple Scriptエディターを使用してApple Scriptを作成し、それをアプリケーションとしてエクスポートします。

on open location theURL
   do shell script "/usr/bin/open '/Applications/Google Chrome.app' --new --args --new-window " & theURL
end open location

RCのデフォルトアプリをインストールします

RCDefaultAppはMac OS X 10.2以降の設定ペインで、ユーザーはさまざまなURLスキーム、ファイル拡張子、ファイルタイプ、MIMEタイプ、およびユニフォームタイプ識別子に使用されるデフォルトアプリケーションを設定できます

システム環境設定で、新しいdefault-apps画面を開き、URLタブに移動し、エクスポートされたAppleスクリプトをhttpおよびhttpsのハンドラーとして設定します


どうもありがとうございます。これは私にとって有効な唯一の解決策であり、これは何年もの間私を狂わせてきました。
ルークデュベール2016

2

私もそれを動作させることができませんでした。

私がやろうとしていたことは、次のコマンドを使用することでした:

open Google\ Chrome.app/ --new --args new-window www.google.com

ただし、これにより新しいChromeが開き、即座に閉じます(Chromeがすでに開いている場合)。上記のコマンドをbashスクリプトでラップし、引数(URL用)を含めることを計画していました。

しかし、上記のコマンドが機能しなかったので、私はまだこれについて考えています。これまでのところ、Chromiumに変更を加えなければ「可能」ではないと思いますが、何かを見落としているかもしれません。早いし、まだコーヒーを飲んでいない。;)


うん、私もやってみた。(「Google Chrome.app」ではなく「google.com」を使用)両方のバージョンが機能しません。
jsadfeew

2

これはマーベリックスで動作します:

open /Applications/Google\ Chrome.app --new --args --new-window https\://www.google.ca

に続く:

osascript -e 'activate application "Google Chrome"'

sh、bash、zshでテストされています。

どういうわけか、同じようにそれらを同じ行に入れようとすると:

/usr/bin/open /Applications/Google\ Chrome.app --new --args --new-window www.google.ca; /usr/bin/osascript -e 'activate application "Google Chrome"'

... 2番目の部分は完了しません。それは最初のコマンドのかかとで近すぎるためだと思います。だからこれを試してください:

/usr/bin/open /Applications/Google\ Chrome.app --new --args --new-window www.google.ca; sleep 1; /usr/bin/osascript -e 'activate application "Google Chrome"'

URLの最後にhttp://の部分を指定する必要はありませんが、指定する場合はコロン(:)をエスケープする必要があります。

このスクリプトをデフォルトのブラウザーにするために、applescriptを作成し、それをアプリケーションとしてエクスポートしてから、Safari設定を開き、アプリケーションをデフォルトのブラウザーとして設定しました。Applescriptコードは次のとおりです。

on open location theURL
  do shell script "/Users/[myusername]/bin/openUrlInNewChromeWindow.sh " & theURL
end open location

[myusername]を実際のユーザー名に置き換えます。


mwidmannによる解決策よりもこの解決策を好む理由は、URLを開いた後にこの解決策が閉じるのに対して、もう1つの解決策は作業するために開いたままにする必要があるようです。つまり、OpenUrlInNewChromeWindowは常に実行中のアプリのCMD-Tabリストに含まれており、URLを開くたびに、前のアプリに戻るためにタブを2回クリックする必要がありました。
Dave、

Michael SchmidによるRCDefaultAppの使用がOSX El Capitan(10.11.1)でも機能することを確認できます。
Dave、

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.