Como algunas personas sabrán, el comportamiento predeterminado de los enlaces externos de Google Chrome es bastante malo. Estoy usando espacios, y al abrir un enlace en alguna aplicación fuera de Google Chrome mientras estoy en un espacio diferente al de la última ventana utilizada de Chrome, Chrome cambia a la última ventana enfocada.
Este comportamiento es simplemente malo.
Quiero cambiar este comportamiento. En Windows, esto es posible: ¿Cómo puede configurar Chrome para abrir nuevas instancias del navegador en nuevas ventanas en lugar de en una pestaña?
Lamentablemente, no creo que esto sea posible en OS X Snow Leopard.
Ya estoy usando una herramienta llamada RCDefaultApps. Este es un panel de control del sistema donde puedo especificar aplicaciones predeterminadas para diferentes protocolos. Simplemente carece de la función para especificar argumentos de línea de comando adicionales para la aplicación predeterminada.
¿Alguien puede ayudarme allí? Todos los hacks (aparte de crear una compilación personalizada de Chromium) son aceptables.
Puede intentar usar el AppleScript que se encuentra en esta página .
Lo acabo de probar y funciona perfectamente en Chrome 12.0.742.122.
Es extremadamente fácil de configurar:
OpenUrlInNewChromeWindow
Comenzando con la respuesta de Dave, descubrí que con Chrome 45, osascript
ya no es necesario ejecutar, y que con OS X 10.10, Apple Script no se puede seleccionar en las preferencias del sistema. Así es como lo resolví.
Cree un Apple Script con el editor de Apple Script y expórtelo como una aplicación.
on open location theURL
do shell script "/usr/bin/open '/Applications/Google Chrome.app' --new --args --new-window " & theURL
end open location
Instale la aplicación predeterminada de RC .
RCDefaultApp es un panel de preferencias de Mac OS X 10.2 o superior que permite al usuario configurar la aplicación predeterminada utilizada para varios esquemas de URL, extensiones de archivo, tipos de archivo, tipos MIME e identificadores de tipo uniforme
En las preferencias del sistema, abra la nueva pantalla de aplicaciones predeterminadas, vaya a la pestaña URL y configure el script de Apple exportado como controlador para http y https .
SwiftDefaultApps.prefpane
, de la versión actual. Luego asigne su aplicación AppleScript para que sea el navegador predeterminado. Esto funcionó para mí.Shift
tecla?Yo tampoco he podido hacerlo funcionar.
Lo que estaba tratando de hacer era usar el siguiente comando:
open Google\ Chrome.app/ --new --args new-window www.google.com
Pero eso abre un nuevo Chrome que se cierra instantáneamente (si Chrome ya está abierto). Estaba planeando envolver el comando anterior dentro de un script bash y luego dejar que tenga argumentos (para la URL).
Pero como el comando anterior no funcionó, todavía estoy pensando en esto. Hasta ahora, creo que no es "posible" sin alguna modificación en Chromium, pero podría estar pasando por alto algo. Es temprano y todavía no he tomado café. ;)
Esto funciona en Mavericks:
open /Applications/Google\ Chrome.app --new --args --new-window https\://www.google.ca
seguido por:
osascript -e 'activate application "Google Chrome"'
Probado en sh, bash y zsh.
Por alguna razón, si trato de ponerlos en la misma línea así:
/usr/bin/open /Applications/Google\ Chrome.app --new --args --new-window www.google.ca; /usr/bin/osascript -e 'activate application "Google Chrome"'
...la segunda parte no se completa. Supongo que es porque está demasiado cerca del primer comando. Así que prueba esto:
/usr/bin/open /Applications/Google\ Chrome.app --new --args --new-window www.google.ca; sleep 1; /usr/bin/osascript -e 'activate application "Google Chrome"'
Tenga en cuenta que no necesita especificar la parte http:// de la URL al final para que funcione, pero si lo hace, debe escapar de los dos puntos (:).
Para hacer de este script mi navegador predeterminado, creé un applescript y lo exporté como una aplicación y luego abrí Preferencias de Safari y configuré la aplicación como mi navegador predeterminado. Aquí está el código Applescript:
on open location theURL
do shell script "/Users/[myusername]/bin/openUrlInNewChromeWindow.sh " & theURL
end open location
Reemplace [myusername] con su nombre de usuario real.
Se debe citar la URL por razones de seguridad y porque puede contener caracteres especiales que deben escaparse cuando se usan como una cadena en bash (por ejemplo, '&' y '$').
De lo contrario, la URL abierta podría ser incorrecta y una URL creada con fines malintencionados podría incluso ejecutar un comando arbitrario en su máquina . Probado en macOS Catalina (10.15) y versiones anteriores.
Para ponerlo todo junto, el script actualizado debería verse así:
on open location theURL
do shell script ("open -a 'Google Chrome' --new --args --new-window " & "'" & theURL & "'")
end open location
O si prefiere sus comandos con la ruta completa (como en el caso de Michael):
on open location theURL
do shell script "/usr/bin/open '/Applications/Google Chrome.app' --new --args --new-window " & "'" & theURL & "'"
end open location
La parte importante en ambos scripts son las comillas alrededor de la URL al final de la línea central.
[1]: Habría comentado la respuesta de los demás pero no tengo la reputación requerida, así que hice una nueva respuesta.
La opción de comando --new-window lo hizo por mí. ("C:\Archivos de programa (x86)\Google\Chrome\Application\chrome.exe" --ventana nueva https://www.google.com )
jsadfeew
nelson