Imposta lo zoom di pagina di Safari a livello di programmazione

4

Recentemente ho acquistato un monitor 4K e adoro lo schermo immobiliare. Ma i caratteri standard stanno diventando un po 'troppo piccoli per essere letti. Quindi ho intenzione di scrivere uno script in Keyboard Maestro per cambiare il PageZoom predefinito in Safari al 125% quando premo un pulsante.

Ho capito che posso impostare il pagezoom con questo comando nel Terminale:

defaults write com.apple.Safari DefaultPageZoom "1.25"

Funziona perché defaults read com.apple.Safari DefaultPageZoom riporta il valore impostato indietro. E le preferenze di Safari mostrano anche il set di valori.

Ma la pagina in Safari non cambia. Tuttavia, quando cambio PageZoom nelle Preferenze manualmente, la pagina cambia. Ho provato a ricaricare la pagina e a modificare le dimensioni della finestra dopo aver impostato PageZoom nel terminale, ma non funziona.

Che cosa devo fare per rendere attiva l'impostazione defaults write ?

Non voglio usare sempre i tasti CMD + e CMD.

Alla fine voglio che Keyboard Maestro inneschi questo script quando collego un dispositivo che segnala che sto usando questo monitor.

    
posta hepabolu 08.08.2017 - 00:19
fonte

2 risposte

0

Dalle risposte fornite sopra e dal link che ho trovato per Abilita Safari Zoom per script ci sono diverse possibilità:

Script di shell

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

Ho aggiunto questo a una macro Keyboard Maestro che è stata avviata da un trigger di scelta rapida da tastiera (per ora).

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

L'ho aggiunto a un'altra macro Keyboard Maestro che è stata avviata da un trigger di scelta rapida da tastiera (per ora).

Funziona alla grande ma il lato negativo è che Safari deve essere riavviato.

Script Apple

-- 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 ripristina il 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

Cambia la pagina senza riavviare Safari. Ma da una macro Keyboard Maestro non funziona in modo coerente.

TinkerTool

Tinkertool non offre solo la possibilità di impostare il pagezoom per Safari, ma anche di impostare il fontsize di sistema predefinito. Avvertenza: il cambiamento ha effetto solo dopo il riavvio delle applicazioni e Tinkertool non è scriptable, quindi richiede un intervento manuale.

Conclusione

Per ora rimarrò con le macro di Keyboard Maestro che eseguono gli script Apple. Quando il mio monitor grande è connesso, anche la webcam Logitech è collegata, quindi ho aggiunto un altro trigger ai macro:

USB Device with Name Containing 'Webcam' is Attached per aumentare il pagezoom e USB Device with Name Containing 'Webcam' is Detached per ripristinare il pagezoom al 100%.

Questo mi consente di cambiare automaticamente il pagezoom quando connetti o disconnetti il grande schermo.

    
risposta data 08.08.2017 - 23:21
fonte
0

Devi

  1. chiudi Safari
  2. esegui il comando Terminale
  3. riapri Safari

La maggior parte (se non tutti) i comandi di default dei comandi di scrittura richiedono di chiudere o uccidere l'applicazione o il processo interessato per vedere i risultati.

Per risolvere il tuo problema potresti pensare di impostare la risoluzione dello schermo da 3840 x 2160 a 1920 x 1080 (Retina / HDPI). Ciò aumenterà la dimensione di tutti gli elementi di visualizzazione incluso il testo in Safari.

Vai a System Preferences > Display e modifica la risoluzione lì.

    
risposta data 08.08.2017 - 13:21
fonte

Leggi altre domande sui tag