2 votos

¿Atajo de teclado para abrir una nueva ventana en Safari en todo el sistema?

Estoy tratando de usar Automator para crear un atajo de sistema para abrir una nueva ventana de Safari. Estoy usando el método descrito en esta respuesta.

Puedo hacer que Safari abra una URL específica, por ejemplo, ejecutando

$ open -a Safari "https://apple.stackexchange.com"

Desde la línea de comandos. Pero esto abre una nueva pestaña (no una nueva ventana) y requiere especificar una URL.

Automator también tiene una acción "Internet > Mostrar páginas web" que tiene los mismos problemas.

entrar descripción de la imagen aquí

¿Hay alguna forma de hacer que Safari abra una nueva ventana en blanco?

2 votos

Intenta usar una acción de ejecutar AppleScript, reemplazando el código por defecto, con: decir a la aplicación "Safari" que cree un nuevo documento

1 votos

¿Tiene que ser en Automator? Si no, esto se puede lograr fácilmente en Keyboard Maestro donde puedes crear una macro para activar Safari y luego hacer N (o seleccionar el menú Archivo » Nueva ventana), y luego asignar un atajo de teclado para eso.

0 votos

Gracias, la acción de AppleScript funcionó brillantemente. No probé Keyboard Maestro, pero ese producto también parece impresionante. ¡Gracias a ambos!

3voto

user3439894 Puntos 5883

En Automator, crea un Servicio flujo de trabajo (anterior a macOS Mojave), o un Acción rápida flujo de trabajo en macOS Mojave.

Agrega una Ejecutar AppleScript acción, reemplazando el código predeterminado, por:

tell application "Safari" to make new document

La pieza anterior de AppleScript código por sí sola abrirá una nueva ventana en Safari, sin embargo, no tendrá enfoque. Si deseas que la nueva ventana tenga enfoque, entonces utiliza un tell bloque, por ejemplo:

tell application "Safari"
    make new document
    activate
end tell

Luego puedes asignar un atajo de teclado de la manera habitual según la información en el enlace dentro de tu pregunta.

2 votos

Este es brillante, pero desafortunadamente en Catalina es necesario otorgar permisos para abrir Safari individualmente a cada aplicación que pueda estar abierta cuando se active el acceso directo. ¡Actualizaré si encuentro una solución...!

0 votos

@AntonioFavata He ideado otra forma de evitar ese error. Ver mi respuesta.

0 votos

Eso suena genial, gracias @kubanczyk - lo intentaré tan pronto como tenga la oportunidad

1voto

kubanczyk Puntos 121

Suposiciones

Esto asume que:

  • Safari está configurado no para abrir nuevas páginas en pestañas
  • Safari es el navegador predeterminado.

Cómo hacerlo

Presiona Cmd-Space y luego busca y ejecuta Automator, crea un flujo de trabajo de Acción Rápida (macOS Mojave y posteriores, anteriormente este ítem se llamaba Servicio).

Cambia el método de entrada en la barra lateral superior derecha a sin entrada.

Elige Biblioteca -> Utilidades -> Acción Ejecutar AppleScript. Arrástralo al área principal. Reemplaza el código predeterminado con:

on run {input, parameters}
    return "https://www.google.com"
end run

Ahora una segunda acción, elige Biblioteca -> Internet -> Mostrar Página Web, arrástralo al área principal debajo de la primera acción.

Presiona Cmd-S para guardar, nombra el flujo de trabajo como "Página Web".

Ahora ve a Propiedades del Sistema -> Teclado -> Atajos -> Servicios -> desplázate hacia abajo para encontrar tu flujo de trabajo/servicio llamado "Página Web". Presiona Añadir atajo.

Explicación

La configuración creada pretende evitar el problema con la primera respuesta: "en Catalina se necesita otorgar permisos para abrir Safari individualmente a cada aplicación que podría estar abierta cuando se activa el acceso directo". De alguna manera, el "Mostrar Página Web" no se ve afectado por el sistema de permisos. La salida de la primera acción se convierte en la entrada de la segunda acción.

0 votos

Lo siento por no probar esto hasta ahora. Funciona como se anuncia, ¡gracias! (Aunque lo que realmente estaba buscando era una forma de abrir una nueva ventana sin ningún sitio web...)

0 votos

@AntonioFavata Busqué en Google "safari url para página vacía" y dice que cambies https://whatever a about:blank

0 votos

Eso es un buen pensamiento, pero desafortunadamente parece que no funciona con el flujo de trabajo, lo cual produce una advertencia: La acción "Mostrar páginas Web" no recibió los datos requeridos. ¡Gracias de todos modos por tus continuos esfuerzos! :)

0voto

Rob Lodge Puntos 438

¡Olvida los hacks que inevitablemente fallarán. ¡Usa una herramienta de automatización real!

Yo uso Hammerspoon (gratuito, de código abierto), y la siguiente configuración (AppleScript tomado de la respuesta anterior):

hs.hotkey.bind({"cmd", "alt"}, "s", function()
  ok,result = hs.applescript([[
    tell application "Safari"
      make new document
      activate
    end tell
  ]])
end)

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X