Voglio scrivere un AppleScript che
- viene eseguito (in un ciclo) finché non premo esc
- "ascolta" per i tasti 1 , 2 , ecc.
- esegue un comando dato per ogni pressione di un tasto (eseguendo un comando di shell
ddcctl
per cambiare luminosità / contrasto del monitor secondario)
Ho cercato e tutto ciò che trovo riguarda la simulazione della pressione di un tasto.
(Se questo può essere fatto in bash
va bene, ma non conosco abbastanza script di shell per iniziare ...)
Aggiorna
In base a questo suggerimento, Ho scritto lo script di shell qui sotto, che funziona benissimo, ma solo se lo eseguo all'interno di Terminal. Esiste un modo per eseguire questo script "invisibilmente", ad esempio da Spotlight o tramite AppleScript do shell script
, e farlo rispondere fino a quando esco?
#!/bin/bash
if [ -t 0 ]; then stty -echo -icanon -icrnl time 0 min 0; fi
keypress=''
while [ "$k" != "^[" ]; do
case "$k" in
1) ddcctl -d 1 -b 10;;
2) ddcctl -d 1 -b 20;;
3) ddcctl -d 1 -b 30;;
# ...etc...
0) ddcctl -d 1 -b 100;;
esac
k="'cat -v'"
done
if [ -t 0 ]; then stty sane; fi
exit 0