Usando AppleScript para bloquear la pantalla

8

Necesito un applecript que bloquee mi Mac de la misma manera que presionando shift + ctrl + eject . Probé dos enfoques diferentes, pero ambos fallaron. El primero fue buscar en Internet un script, que falló. Solo hay soluciones con salvapantallas u otras aplicaciones que no quiero. Solo quiero usar lo que describí. El segundo fue decirle a Applecript que presionara las tres teclas que no funcionaron. Si alguien pudiera decirme cómo bloquear mi Mac o cómo decirle a Applecript que presione tres teclas, me sentiría realmente feliz, porque me estoy frustrando un poco.

    
pregunta Lavaking 21.06.2014 - 18:14

5 respuestas

11

Cómo obtener información de esta responda y esta respuesta:

  1. Presiona el botón Spotlight en la parte superior derecha de la pantalla ( Cmd + Space )
  2. Buscar Keychain Access . Abrir este
  3. Abrir Preferencias ( Cmd + , (coma))
  4. Comprueba Show Status in Menu Bar
  5. Presiona el botón Spotlight en la parte superior derecha de la pantalla ( Cmd + Space )
  6. Buscar Automator . Seleccione esto
  7. Crear nuevo Service
  8. Buscar Run Applescript junto a los botones Actions y Variables . Haga doble clic en este
  9. Asegúrate de que las casillas de verificación sean Service receives no input in any application
  10. Pega este Applecript:

tell application "System Events" to tell process "SystemUIServer"
    tell (menu bar item 1 of menu bar 1 where description is "Keychain menu extra")
        click
        click menu item "Lock Screen" of menu 1
    end tell
end tell

Guarde este Automator como algo así como Lock screen (nota: ¡el código en GIF es diferente!)

Parahacerunatajo:

  1. PresionaelbotónAppleenlapartesuperiorizquierdadelapantalla
  2. HazclicenSystemPreferences
  3. HazclicenKeyboard
  4. HazclicenlapestañaKeyboardShortcuts
  5. HazclicenServices
  6. Encuentreelnombredelservicioqueacabadecrear
  7. Hazclicenelespacioenblancoaladerecha
  8. Escribasuaccesodirecto

¡Usatuaccesodirectoencualquieraplicación!

O ...:

  1. Puedes comprar Alfred
  2. Puedes usar Cmd + Shift + Expulsar
respondido por el ᔕᖺᘎᕊ 21.06.2014 - 20:47
5

Encontré este en otra respuesta pero un AppleScript que simplemente contiene los siguientes trabajos para mí.

 tell application "Finder" to sleep
    
respondido por el Alistair McMillan 04.04.2015 - 19:32
2

macOS 10.11, El Capitán, parece haberse roto la respuesta de utilizando AppleScripts, pero encontré que si instalé Lock Screen , e hice que mi Servicio de Automatización abriera su "Lock Screen Bundle", el resto del proceso funcionó como previsto (siempre y cuando llamé al Servicio "pantalla de bloqueo", no a "Pantalla de Bloqueo": aparentemente los espacios en el nombre del archivo rompen el atajo de teclado para muchos usuarios de macOS).

Consulte Acceso directo de la pantalla de bloqueo en Mac OS X para una guía ilustrada paso a paso.

    
respondido por el Alice Purcell 16.02.2017 - 12:24
1

Utilizo una macro para aceptar el acceso directo Comando-L. Habiendo cambiado recientemente de Windows a Mac, soy una manera fácil de bloquear mi pantalla. En Windows, solo hay que presionar la tecla de Windows y la tecla L, y, listo, bloqueado.

Al utilizar Keyboard Maestro , creé una macro para el acceso directo Comando-L, que es esencialmente la misma (comparando la tecla Comando con la de Windows llave). El acceso directo activa la función "Ventana de inicio de sesión", que bloquea la pantalla. Fácil peasy, al menos para mí.

(En Keyboard Maestro, la función "Ventana de inicio de sesión" se encuentra en Acciones > Control del sistema.)

    
respondido por el bifjamod 21.06.2014 - 19:06
0

Para High Sierra (10.13), la respuesta aceptada no funciona, ya que Keychain Access no tiene la opción Check Show Status in Menu Bar . Pero, basado en el despojo descarado de la fuente de la aplicación Lockscreen (como lo menciona @Alice Purcell), he descubrí esta ingeniosa solución alternativa de scripts GUI:

activate application "SystemUIServer"
tell application "System Events"
    tell process "SystemUIServer" to keystroke "q" using {command down, control down}
end tell
    
respondido por el ijoseph 21.02.2018 - 06:44

Lea otras preguntas en las etiquetas