Establecer el zoom de la página de Safari programáticamente

4

Hace poco compré un monitor 4K y me encantan las propiedades inmobiliarias de la pantalla. Pero las fuentes estándar se están volviendo un poco demasiado pequeñas para leer. Así que planeo escribir un script en Keyboard Maestro para cambiar el PageZoom predeterminado en Safari al 125% cuando presiono un botón.

Descubrí que puedo configurar el zoom de página con este comando en la Terminal:

defaults write com.apple.Safari DefaultPageZoom "1.25"

Esto funciona porque defaults read com.apple.Safari DefaultPageZoom reporta el valor establecido. Y las preferencias de Safari también muestran el valor establecido.

Pero la página en Safari no cambia. Sin embargo, cuando cambio el PageZoom en las Preferencias manualmente, la página SI cambia. He intentado volver a cargar la página y cambiar el tamaño de la ventana después de configurar PageZoom en la Terminal, pero nada funciona.

¿Qué debo hacer para que la configuración defaults write se active?

No quiero usar las teclas CMD + y CMD- todo el tiempo.

Al final, quiero que Keyboard Maestro active este script cuando conecto un dispositivo que indica que estoy usando este monitor.

    
pregunta hepabolu 08.08.2017 - 00:19

2 respuestas

0

De las respuestas dadas anteriormente y del enlace que encontré en Habilitar Safari Zoom por script hay varias posibilidades:

Shell script

# set pagezoom to 125%
killall Safari
defaults write com.apple.Safari DefaultPageZoom "1.25"
open -a Safari

Agregué esto a una macro de Keyboard Maestro que se inicia con un disparador de método abreviado de teclado (por ahora).

# revert pagezoom to 100%
killall Safari
defaults write com.apple.Safari DefaultPageZoom 1
open -a Safari

Agregué esto a otra macro de Keyboard Maestro que se inicia con un disparador de método abreviado de teclado (por ahora).

Esto funciona muy bien, pero la desventaja es que Safari debe reiniciarse.

Apple script

-- set pagezoom to 125%
tell application "System Events"
    tell application process "Safari"
        set frontmost to true
        keystroke "," using command down
        delay 0.5
        tell window 1
            click button "Advanced" of toolbar 1 of it
            click pop up button 3 of group 1 of group 1 of it
            click menu item 6 of menu 1 of pop up button 3 of group 1 of group 1 of it
            keystroke "w" using command down
        end tell
    end tell
  end tell

o volver al 100%

tell application "System Events"
    tell application process "Safari"
        set frontmost to true
        keystroke "," using command down
        delay 0.5
        tell window 1
            click button "Advanced" of toolbar 1 of it
            click pop up button 3 of group 1 of group 1 of it
            click menu item 4 of menu 1 of pop up button 3 of group 1 of group 1 of it
            keystroke "w" using command down
        end tell
    end tell
end tell

Esto cambia la página sin reiniciar Safari. Pero desde una macro de Keyboard Maestro no funciona de manera consistente.

Tinkertool

Tinkertool no solo ofrece la posibilidad de configurar el zoom de la página para Safari, sino también el tamaño de fuente predeterminado del sistema. Advertencia: el cambio solo surte efecto después de relanzar las aplicaciones y Tinkertool no tiene secuencias de comandos, por lo que requiere intervención manual.

Conclusión

Por ahora me quedo con las macros de Keyboard Maestro que ejecutan los scripts de Apple. Cuando mi monitor grande está conectado, la cámara web Logitech también está conectada, así que agregué un disparador adicional a las macros:

USB Device with Name Containing 'Webcam' is Attached para aumentar el zoom de página y USB Device with Name Containing 'Webcam' is Detached para revertir el zoom de página al 100%.

Esto me permite cambiar automáticamente el pagezoom cuando conecto o desconecto la pantalla grande.

    
respondido por el hepabolu 08.08.2017 - 23:21
0

Necesitas

  1. cierra Safari
  2. ejecuta el comando de la Terminal
  3. vuelve a abrir Safari

La mayoría de los comandos de escritura predeterminados (si no todos) requieren que cierre la aplicación o el proceso afectado para ver los resultados.

Para resolver su problema, puede pensar en configurar la resolución de pantalla de 3840 x 2160 a 1920 x 1080 (Retina / HDPI). Esto aumentará el tamaño de todos los elementos de visualización, incluido el texto en Safari.

Vaya a System Preferences > Display y cambie la resolución allí.

    
respondido por el oa- 08.08.2017 - 13:21

Lea otras preguntas en las etiquetas