Я хочу заглянуть в события клавиатуры, и, согласно документации для Sensor
, я могу сделать это, не удаляя событие из очереди с помощью peekKeyboardEvent
, однако, похоже, это не работает.
Это работает:
"Show that a single event can be checked multiple times"
Transcript clear; show: 'Type something... '; flush.
(Delay forSeconds: 2) wait.
5 timesRepeat: [
Transcript show: (Sensor peekEvent); cr
]
Выход:
Type something... #(2 48243801 5 2 8 0 0 1)
#(2 48243801 5 2 8 0 0 1)
#(2 48243801 5 2 8 0 0 1)
#(2 48243801 5 2 8 0 0 1)
#(2 48243801 5 2 8 0 0 1)
Но это не так:
"Show that a single keyboard event can be checked multiple times"
Transcript clear; show: 'Type something... '; flush.
(Delay forSeconds: 2) wait.
5 timesRepeat: [
Transcript show: (Sensor peekKeyboardEvent); cr
]
Выход:
Type something... #(2 48205144 97 0 0 97 0 1)
nil
nil
nil
nil
Еще один вопрос: почему Transcript flush
не вызывает мгновенное появление вывода? Он появляется только после запуска сценария.