4 votos

¿Hay alguna forma de cambiar la posición del dock del mac con un atajo de teclado?

No creo que haya atajos por defecto para eso. Pero supongo que podrías hacer uno usando AppleScript u otros programas de automatización.

He encontrado este post de 2012 haciendo la misma pregunta. Intenté hacer el script proporcionado en los comentarios pero no pude hacerlo funcionar.

No sé si no funciona porque los scripts de Apple son diferentes ahora, o porque el scriptsscriptscripts per se no funciona o porque hay pasos que me estoy saltando.

Cuando intento guardar el script dice

"Se esperaba "dado", "con", "sin", otro nombre de parámetro, etc. pero se encontró el identificador".

¿Alguna idea?

12voto

wch1zpink Puntos 11

Este código AppleScript me funciona usando la última versión de macOS Mojave.

tell application "System Events" to tell dock preferences
    if screen edge is bottom then
        set screen edge to left
    else if screen edge is left then
        set screen edge to bottom
    end if
end tell

En Automator, cree un nuevo servicio o acción rápida y añada una acción AppleScript de ejecución a ese flujo de trabajo, añadiendo el código AppleScript anterior. A continuación, en las Preferencias del Sistema puede crear un atajo de teclado para ese nuevo servicio.

2voto

user3439894 Puntos 5883

La razón por la que se obtiene el Error de sintaxis :

Se esperaba "dado", "con", "sin", otro nombre de parámetro, etc. pero se encontró el identificador.

De:

defaults write com.apple.Dock orientation -string left;killall Dock

En Script Editor es porque no es AppleScript código ¡!

Es un comando compuesto para ejecutar en Terminal sin embargo, se puede ejecutar en AppleScript utilizando el do shell script comando :

do shell script "defaults write com.apple.Dock orientation -string left;killall Dock"

Dicho esto, sin embargo, yo optaría por no utilizarlo porque el resultado de killall Dock con desocultar todas las ventanas ocultas y puede ser muy perturbador y desordenado.

Una alternativa es utilizar Guiones de interfaz de usuario 1 con Preferencias del sistema y esto se puede hacer de una manera menos perturbadora entonces killall Dock . 1 Tenga en cuenta que el uso de Guiones de interfaz de usuario puede requerir privilegios de accesibilidad se conceda.

Lo siguiente ejemplo AppleScript código cambiará la posición del Muelle entre el En el fondo y el Izquierda lado de la pantalla:

Esto fue probado en script Editor y funciona en MacOS High Sierra.

if running of application "System Preferences" then
    try
        tell application "System Preferences" to quit
    on error
        do shell script "killall 'System Preferences'"
    end try
end if

repeat while running of application "System Preferences" is true
    delay 0.01
end repeat

tell application "System Preferences" to ¬
    reveal anchor "Main" of pane id "com.apple.preference.dock"

tell application "System Events" to tell application process "System Preferences"
    repeat while not (exists (window "Dock"))
        delay 0.1
    end repeat
    tell radio group 1 of window "Dock"
        if value of radio button "Bottom" is 1 then
            click radio button "Left"
        else if value of radio button "Left" is 1 then
            click radio button "Bottom"
        end if
    end tell
end tell

quit application "System Preferences"

Este ejemplo AppleScript código puede utilizarse en un Automatizador Servicio ( Acción rápida en MacOS Mojave ) utilizando un Ejecutar AppleScript acción y asignar un atajo de teclado en: Preferencias del sistema > Teclado > Atajos > Servicios


Nota: El ejemplo AppleScript código es sólo eso y no contiene ningún tipo de gestión de errores, como puede ser el caso. Es responsabilidad del usuario añadir cualquier gestión de errores que sea apropiada, necesaria o deseada. Eche un vistazo al intente declaración y error declaración en el Guía del lenguaje AppleScript . Véase también, Trabajar con errores . Además, el uso del retraso comando puede ser necesario entre eventos cuando sea apropiado, por ejemplo delay 0.5 con el valor de la retraso ajustado apropiadamente.

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