Вся тема AFRP звучит очень захватывающе, и я пытаюсь начать с нее собственный проект. Я нашел Yampa и yampa-glut, что кажется хорошим связыванием с GLUT (как кажется, GLUT - единственная графическая библиотека, которая работает как на Windows, так и на Linux).Получение ключевого ввода с помощью Ямпы и ямпа-перенасыщения
Источник yampa-glut
поставляется с простым example, который я скопировал, чтобы изучить его. Затем я хотел расширить его, чтобы добавить простой тест для ключевых событий. Полный источник этого является here, нет ничего много нового для линии 23 и функциональные клавиши, кроме:
keys = proc ev -> do
rec
e <- keyAction -< ev
let s = event Nothing (Just . show) e
res <- identity -< s
returnA -< res
Ожидаемый результат простой выход на раковине всякий раз, когда я нажатии или отпускании клавиши. Но этого не происходит, выхода нет.
Если изменить линию до последнего к этому:
res <- delay 0.2 Nothing -< s
Тогда я получаю некоторые клавишного ввода, но не все из них, многие из них пропускаются.
Я не мог найти объяснения этого, поэтому я надеюсь, что кто-то может объяснить мне, где я поступил не так, и что я могу сделать, чтобы получить ввод клавиатуры и мыши.