tidal-1.9.0: Pattern language for improvised music
Safe HaskellSafe-Inferred
LanguageHaskell2010

Sound.Tidal.Chords

Synopsis

Documentation

major :: Num a => [a] Source #

aug :: Num a => [a] Source #

six :: Num a => [a] Source #

sixNine :: Num a => [a] Source #

major7 :: Num a => [a] Source #

major9 :: Num a => [a] Source #

add9 :: Num a => [a] Source #

major11 :: Num a => [a] Source #

add11 :: Num a => [a] Source #

major13 :: Num a => [a] Source #

add13 :: Num a => [a] Source #

dom7 :: Num a => [a] Source #

dom9 :: Num a => [a] Source #

dom11 :: Num a => [a] Source #

dom13 :: Num a => [a] Source #

sevenFlat5 :: Num a => [a] Source #

sevenSharp5 :: Num a => [a] Source #

sevenFlat9 :: Num a => [a] Source #

nine :: Num a => [a] Source #

eleven :: Num a => [a] Source #

thirteen :: Num a => [a] Source #

minor :: Num a => [a] Source #

diminished :: Num a => [a] Source #

minorSharp5 :: Num a => [a] Source #

minor6 :: Num a => [a] Source #

minorSixNine :: Num a => [a] Source #

minor7flat5 :: Num a => [a] Source #

minor7 :: Num a => [a] Source #

minor7sharp5 :: Num a => [a] Source #

minor7flat9 :: Num a => [a] Source #

minor7sharp9 :: Num a => [a] Source #

diminished7 :: Num a => [a] Source #

minor9 :: Num a => [a] Source #

minor11 :: Num a => [a] Source #

minor13 :: Num a => [a] Source #

one :: Num a => [a] Source #

five :: Num a => [a] Source #

sus2 :: Num a => [a] Source #

sus4 :: Num a => [a] Source #

sevenSus2 :: Num a => [a] Source #

sevenSus4 :: Num a => [a] Source #

nineSus4 :: Num a => [a] Source #

sevenFlat10 :: Num a => [a] Source #

nineSharp5 :: Num a => [a] Source #

minor9sharp5 :: Num a => [a] Source #

elevenSharp :: Num a => [a] Source #

minor11sharp :: Num a => [a] Source #

chordTable :: Num a => [(String, [a])] Source #

chordate cs m n selects the nth "chord" (a chord is a list of Ints) from a list of chords cs and transposes it by m chordate :: Num b => [[b]] -> b -> Int -> [b] chordate cs m n = map (+m) $ cs!!n

enchord chords pn pc turns every note in the note pattern pn into a chord, selecting from the chord lists chords using the index pattern pc. For example, Chords.enchord [Chords.major Chords.minor] "c g" "0 1" will create a pattern of a C-major chord followed by a G-minor chord. enchord :: Num a => [[a]] -> Pattern a -> Pattern Int -> Pattern a enchord chords pn pc = flatpat $ (chordate chords) $ pn * pc

data Modifier Source #

Constructors

Range Int 
Drop Int 
Invert 
Open 

Instances

Instances details
Show Modifier Source # 
Instance details

Defined in Sound.Tidal.Chords

Eq Modifier Source # 
Instance details

Defined in Sound.Tidal.Chords

Enumerable [Modifier] Source # 
Instance details

Defined in Sound.Tidal.ParseBP

Parseable [Modifier] Source # 
Instance details

Defined in Sound.Tidal.ParseBP

applyModifier :: (Enum a, Num a) => Modifier -> [a] -> [a] Source #

applyModifierPatSeq :: (Num a, Enum a) => (a -> b) -> Pattern [a] -> [Pattern [Modifier]] -> Pattern [b] Source #

chordToPatSeq :: (Num a, Enum a) => (a -> b) -> Pattern a -> Pattern String -> [Pattern [Modifier]] -> Pattern b Source #

chord :: (Num a, Enum a) => Pattern a -> Pattern String -> [Pattern [Modifier]] -> Pattern a Source #

turns a given pattern of some Num type, a pattern of chord names and a list of patterns of modifiers into a chord pattern