kmonad-0.4.2: Advanced keyboard remapping utility
Safe HaskellSafe-Inferred
LanguageHaskell2010

KMonad.Gesture

Synopsis

Documentation

data Toggle a Source #

Constructors

On a 
Off a 

Instances

Instances details
Functor Toggle Source # 
Instance details

Defined in KMonad.Gesture

Methods

fmap :: (a -> b) -> Toggle a -> Toggle b #

(<$) :: a -> Toggle b -> Toggle a #

Show a => Show (Toggle a) Source # 
Instance details

Defined in KMonad.Gesture

Methods

showsPrec :: Int -> Toggle a -> ShowS #

show :: Toggle a -> String #

showList :: [Toggle a] -> ShowS #

Eq a => Eq (Toggle a) Source # 
Instance details

Defined in KMonad.Gesture

Methods

(==) :: Toggle a -> Toggle a -> Bool #

(/=) :: Toggle a -> Toggle a -> Bool #

newtype Gesture a Source #

A sequence of toggle-changes guaranteed to be valid

Constructors

Gesture 

Fields

Instances

Instances details
Functor Gesture Source # 
Instance details

Defined in KMonad.Gesture

Methods

fmap :: (a -> b) -> Gesture a -> Gesture b #

(<$) :: a -> Gesture b -> Gesture a #

Monoid (Gesture a) Source # 
Instance details

Defined in KMonad.Gesture

Methods

mempty :: Gesture a #

mappend :: Gesture a -> Gesture a -> Gesture a #

mconcat :: [Gesture a] -> Gesture a #

Semigroup (Gesture a) Source # 
Instance details

Defined in KMonad.Gesture

Methods

(<>) :: Gesture a -> Gesture a -> Gesture a #

sconcat :: NonEmpty (Gesture a) -> Gesture a #

stimes :: Integral b => b -> Gesture a -> Gesture a #

Show a => Show (Gesture a) Source # 
Instance details

Defined in KMonad.Gesture

Methods

showsPrec :: Int -> Gesture a -> ShowS #

show :: Gesture a -> String #

showList :: [Gesture a] -> ShowS #

Eq a => Eq (Gesture a) Source # 
Instance details

Defined in KMonad.Gesture

Methods

(==) :: Gesture a -> Gesture a -> Bool #

(/=) :: Gesture a -> Gesture a -> Bool #

data GestureError a Source #

All the ways a '[Toggle a]' can be an invalid Gesture

Constructors

OffWithoutOn a

An Off not preceded by an On

OnWithoutOff a

An On not succeeded by an Off

Instances

Instances details
Show a => Show (GestureError a) Source # 
Instance details

Defined in KMonad.Gesture

Eq a => Eq (GestureError a) Source # 
Instance details

Defined in KMonad.Gesture

tag :: Lens' (Toggle a) a Source #

A lens into the i

tags :: Ord a => Fold (Gesture a) a Source #

A fold of all the unique elements in a gesture

tap :: a -> Gesture a Source #

Create a tapping gesture

around :: Ord a => a -> Gesture a -> Either (GestureError a) (Gesture a) Source #

Wrap a gesture in a toggle iff the id does not already occur

fromList :: Ord a => [Toggle a] -> Either (GestureError a) (Gesture a) Source #

Create a gesture from a list of toggles

prsGesture :: Text -> Either GestureReadError (Gesture Text) Source #

Parse a Gesture straight from Text

reserved :: [Char] Source #

Characters that may not occur in tag-names

tag_ :: Parser Text Source #

Parse a series of valid characters as a tag

around_ :: Parser Gest Source #

Parse a "S-" sequence as 1 tag around another

closeTag :: Parser Gest Source #

Parse a ")-X" as an OFF-toggle

openTag :: Parser Gest Source #

Parse a "X-(" as an ON-toggle

tap_ :: Parser Gest Source #

Parse only a tag as a tap of that element

subg :: Parser Gest Source #

Parse a [] delimited series as a nested gesture

gest :: Parser Gest Source #

Parse a full gesture