Przycisk funkcyjny wyzwalania za pomocą AppleScript

3

Usiłuję wyzwolić klawisz funkcyjny za pomocą applescript. Muszę nacisnąć klawisz „zwiększ głośność” za pomocą fn.

Napisałem następujący AppleScript, ale nie działa:

tell application "System Events"
    key down 63 -- fn
    key code 111 -- f12
    key up 63
end tell

samo wykonanie key code 111daje taki sam wynik jak powyższy kod,

 key down 63 

nie wydaje się wpływać na zachowanie skryptu, naciskany jest klawisz f12, bez modyfikatora funkcji.

Czy jest coś takiego

 using function down / using fn down

tak jak w przypadku klawisza polecenia

 using command down

czy jest jakiś inny sposób na osiągnięcie tego?

rikudesu
źródło
Klawisze zwiększania / zmniejszania głośności nie są dostępne jako „klucze” z Applecript. Zobacz, jak uzyskać kontrolę głośności systemu przez Applescript - superuser.com/questions/224264/…
Tetsujin
@Tetsujin Hej, dzięki za odpowiedź. Czy naprawdę nie ma sposobu na ich wyzwolenie po naciśnięciu klawiszy? To nie jest tylko klawisz głośności, który chcę uruchomić. Chcę uruchomić klawisz pauzy w kontekście określonym przez system operacyjny (może wstrzymać VLC, iTunes itp.).
rikudesu
Możesz nazwać „prawdziwe” klawisze F, ale nie ich alternatywy „dodatkowej funkcji”. naciśnięcie klawisza „F12” spowoduje naciśnięcie klawisza F12, ale nie klawisza Fn / F12 [nie ma znaczenia, w jaki sposób są ustawione prefiksy systemu, wyśle tylko F12, a nie głośność.]
Tetsujin
W porządku dzięki, czy jest jakiś sposób na wywołanie akcji związanych z dodatkowymi klawiszami funkcyjnymi? Co wykonuje fn + f12? Czy mogę zadzwonić do tego ręcznie?
rikudesu
W rzeczywistości staje się to problemem XY To, czego szukasz, to sposób kontrolowania określonych funkcji, głośności, pauzy itp., A nie naciśnięć klawiszy wymaganych do uruchomienia tych funkcji - na zamieszczonym przeze mnie linku są przykłady dla iTunes. Nie jestem pewien, czy VLC może być kontrolowany tak jak iTunes, gdy nie jest to pierwsza aplikacja, więc rozwiązania mogą się różnić.
Tetsujin

Odpowiedzi:

1

jeśli próbujesz ustawić głośność w AppleScript, poprawna składnia będzie następująca: nie ma potrzeby wymuszania naciśnięć przycisków:

tell application "System Events"
set volume 4
end tell

Teraz, jak widać, jest to wymuszony proces. Jeśli chcesz większej elastyczności, takiej jak określanie, gdzie aktualnie znajduje się objętość użytkowników, lub ustaw jej zwiększanie / zmniejszanie o 1, tak, jest to możliwe, ale trochę bardziej obciążony kod, niż mogę teraz zarządzać (wpisuję z mojego iPhone'a)

Jednak,

Jeśli to możliwe, na twój cel końcowy nie wpłynie użycie Automatora. Używałbym Automatora, gdybym był tobą, ma wbudowane funkcje, takie jak łatwe przeciąganie i upuszczanie. „Set Computer Volume jest jednym z nich”. Ale to jest alternatywa, po prostu emulowałem to z powyższym kodem.

duszony
źródło