Ekran kilitliyken tuş vuruşlarını gerektiren bir AppleScript çalıştırmak?


4

Bazı sözcükleri bir metin kutusuna yazmak çok basit bir AppleScript var.

tell application "TextEdit"
  activate
end tell
delay 0.2
tell application "System Events"
  keystroke "Hello World!"
  keystroke return
end tell

Bu komut dosyasının ekran koruyucum her etkinleştiğinde çalışmasını ve ekran koruyucum her devre dışı kaldığında yeniden çalışmasını istiyorum. Ben yüklü ScriptSaver ve mükemmel çalışıyor. Çok uzak çok iyi.

Ekran koruyucu devreye girdiğinde ekranım kilitleniyor. Bu, senaryomun TextEdit’i etkinleştirmesini söylediğinde, bilgisayarın giriş penceresini açması ve "Merhaba Dünya!" Yazdığımı düşündüğü anlamına gelir. şifre olarak. Uygun değil.

Ekran koruyucusunun 5 saniye sonra hemen yerine bir şifre gerektirmesini sağlamayı denedim, ancak bu iyi değildi: TextEdit'i etkinleştirme işlemi ekranı yeniden başlattı.

Bilgisayarımın ekran kilidini açmaya çalıştığımı düşünmesine gerek kalmadan, TextEdit'i etkinleştirmenin ve arka planda sözcük yazmanın bir yolu var mı ?


AppleScript kullanmaya bağlı mısınız?
Daniel

@Daniel: Hiç de değil; Sadece en aşina olduğum şey bu.
hairboat

Yanıtlar:


3

Hayır, bunu istediğin gibi yapabileceğini sanmıyorum.

  1. Ekran Koruyucu sırasında bir PC'deki her İnsan etkileşimi onu devre dışı bırakmaya çalışıyor. (Fareyi hareket ettirmek, örneğin bir Tuşa basmak gibi)

  2. Applescript çoğu zaman bazı GUI'leri komut dosyası için kullanılır (sizin durumunuzda olduğu gibi -> uygulamayı anlatır TextEdit -> çift tıklatarak yapacağınız gibi Textedit'i açmak dışında hiçbir şey yapmaz)

Size çalışması gereken bir yol getirmek için:

metni doğrudan bir dosyaya yazan bir el yazısı yapın ve gerekiyorsa dosyayı metinle birlikte açın.

böyle bir şey:

tell application System Events
    do shell script "echo 'your text that you wanna type' > /path/to/the/file/where/the/text/stands/in"
end tell

tell application TextEdit
    open /path/to/the/file/where/the/text/stands/in
end tell

0

Denediniz mi (çalışıp çalışmayacağını bilmiyorum):

activate application "TextEdit"
delay 0.2
tell application "System Events" to tell process "TextEdit" to keystroke "Hello World!"
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.