Cara membuat Chrome membuka jendela baru untuk Tautan eksternal

10

Seperti yang mungkin diketahui sebagian orang, perilaku default untuk tautan eksternal Google Chrome cukup buruk. Saya menggunakan Spaces, dan membuka tautan di beberapa aplikasi di luar Google Chrome sambil berada di Ruang yang berbeda dari jendela Chrome yang terakhir digunakan menghasilkan Chrome beralih ke jendela fokus terakhir.

Perilaku ini sangat buruk.

Saya ingin mengubah perilaku ini. Di Windows, ini dimungkinkan: Bagaimana Anda bisa mengonfigurasi Chrome untuk membuka instance browser baru di windows baru daripada di tab?

Sayangnya, saya tidak berpikir ini mungkin pada OS X Snow Leopard.

Saya sudah menggunakan alat yang disebut RCDefaultApps. Ini adalah panel sistem-kontrol di mana saya dapat menentukan aplikasi default untuk protokol yang berbeda. Itu hanya tidak memiliki fitur untuk menentukan argumen baris perintah tambahan untuk aplikasi default.

Adakah yang bisa membantu saya di sana? Setiap peretasan (selain membuat kromium khusus) dapat diterima.

jsadfeew
sumber

Jawaban:

9

Anda dapat mencoba menggunakan AppleScript yang ditemukan di halaman ini .

Saya baru saja mencobanya dan berfungsi dengan baik di Chrome 12.0.742.122.

Sangat mudah diatur:

  • unduh arsip Bundle
  • klik dua kali untuk membongkar itu
  • klik dua kali OpenUrlInNewChromeWindow
  • buka Safari dan atur "Browser" baru sebagai browser default di Preferensi.

browser default baru

mwidmann
sumber
Ini sepertinya memperkenalkan penundaan (sangat singkat) sebelum membuka jendela, tapi itulah yang saya cari. Terima kasih!
jsadfeew
Applescript ini bekerja dengan sangat baik.
Nelson
3

Mulai dari jawaban Dave, saya menemukan bahwa dengan Chrome 45, menjalankan osascripttidak lagi diperlukan, dan dengan OS X 10.10, Apple Script tidak dapat dipilih dalam preferensi sistem. Inilah cara saya menyelesaikannya.

Buat Apple Script menggunakan editor Apple Script, dan ekspor sebagai aplikasi.

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

Instal aplikasi standar RC .

RCDefaultApp adalah panel preferensi Mac OS X 10.2 atau lebih tinggi yang memungkinkan pengguna untuk mengatur aplikasi default yang digunakan untuk berbagai skema URL, ekstensi file, tipe file, tipe MIME, dan Uniform Type Identifiers

Dalam preferensi sistem, buka layar aplikasi default baru, buka tab URL, dan setel skrip Apple yang diekspor sebagai penangan untuk http dan https .

Michael Schmid
sumber
Terima kasih banyak. Ini adalah satu-satunya solusi yang bekerja untuk saya, ini telah membuat saya gila selama bertahun-tahun.
Luke Dubert
2

Saya tidak dapat membuatnya bekerja juga.

Apa yang saya coba lakukan adalah menggunakan perintah berikut:

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

Tapi itu membuka Chrome baru yang langsung menutup (jika Chrome sudah terbuka). Saya berencana untuk membungkus perintah di atas dalam skrip bash dan kemudian membiarkannya memiliki argumen (untuk URL).

Tetapi karena perintah di atas gagal berfungsi, saya masih memikirkan ini. Sejauh ini saya percaya itu tidak "mungkin" tanpa beberapa modifikasi ke Chromium, tetapi saya mungkin mengabaikan sesuatu. Ini masih pagi dan saya belum minum kopi. ;)

Martin Marconcini
sumber
Yup, saya mencobanya juga. (dengan " google.com ", bukan "Google Chrome.app") Kedua versi tidak berfungsi.
jsadfeew
2

Ini bekerja pada Mavericks:

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

diikuti oleh:

osascript -e 'activate application "Google Chrome"'

Diuji dalam sh, bash, dan zsh.

Untuk beberapa alasan, jika saya mencoba menempatkan mereka pada baris yang sama seperti:

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

... bagian kedua tidak lengkap. Saya berasumsi itu karena terlalu dekat dengan perintah pertama. Jadi coba ini:

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

Perhatikan bahwa Anda tidak perlu menentukan bagian http: // di url pada akhirnya agar berfungsi, tetapi jika Anda melakukannya, Anda harus keluar dari titik dua (:).

Untuk menjadikan skrip ini sebagai browser default saya, saya membuat applescript dan mengekspornya sebagai aplikasi dan kemudian membuka Safari Preferences dan mengatur aplikasi sebagai browser default saya. Berikut kode Applescript:

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

Ganti [nama pengguna] dengan nama pengguna Anda yang sebenarnya.

Dave
sumber
Alasan saya lebih suka solusi ini daripada yang oleh mwidmann adalah bahwa ini akan ditutup setelah membuka URL, sedangkan yang lain sepertinya perlu tetap terbuka untuk bekerja. Ini berarti bahwa OpenUrlInNewChromeWindow selalu ada dalam daftar aplikasi yang menjalankan CMD-Tab, dan setiap kali saya membuka URL, saya harus menabrak dua kali untuk kembali ke aplikasi sebelumnya.
Dave
Saya dapat mengonfirmasi bahwa penggunaan RCDefaultApp per Michael Schmid juga berfungsi di OSX El Capitan (10.11.1).
Dave
-1

Opsi perintah --new-window melakukannya untuk saya. ("C: \ Program Files (x86) \ Google \ Chrome \ Application \ chrome.exe" --new-window https://www.google.com )

pengguna67297
sumber
2
Ini untuk Windows - silakan edit untuk merujuk ke OS X.
grg