How would one create a signal for alt+o or any other pair of keys in Elm?
Is there a built-in way for doing this, or do I have to create something myself?
I'm very new to Elm, so any additional explanation is always welcome.
I figured it out myself:
Signal.map2 (&&) Keyboard.alt (Keyboard.isDown <| Char.toCode 'O')
This creates a single Signal Bool
that's true when both are down, otherwise false.
Yes there is a built-in way in elm to handle keyboard inputs
The module is keyboard.elm
From my understanding to be able to use this you have to
import keyboard
import Signal exposing ((<~))
The keysDown function creates a signal which informs what keys are currently being pressed
import Keyboard
import Signal exposing ((<~))
import Graphics.Element exposing (show)
main = show <~ Keyboard.keysDown
The isDown function takes a key code as its argument and returns a boolean signal indicating whether the given key is currently being pressed. There are also helper functions defined in terms of isDown for certain special keys: shift, ctrl, space and enter.
import Char
import Graphics.Element exposing (show)
import Keyboard
import Signal exposing ((<~))
main = show <~ Keyboard.isDown (Char.toCode 'A')
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With