instrument-chord: Render Instrument Chords

[ gpl, library, music ] [ Propose Tags ] [ Report a vulnerability ]

Library to generate musical instrument manipluations


[Skip to Readme]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.1.0.1, 0.1.0.2, 0.1.0.3, 0.1.0.4, 0.1.0.5, 0.1.0.6, 0.1.0.7, 0.1.0.8, 0.1.0.9, 0.1.0.10, 0.1.0.11
Dependencies array (>0 && <10000), base (>0 && <10000), containers (>0 && <10000), music-diatonic (>=0.1.1) [details]
License GPL-3.0-only
Author Alan Hawkins
Maintainer w@xy30.com
Category Music
Home page https://github.com/xpika/chord
Source repo head: git clone http://github.com/xpika/instrument-chord.git
Uploaded by AlanHawkins at 2019-03-12T11:03:10Z
Distributions NixOS:0.1.0.11
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 9181 total (13 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2019-03-12 [all 1 reports]

Readme for instrument-chord-0.1.0.11

[back to package description]

Instrument Chord

Render music chords on a guitar and piano

Installation:

cabal install instrument-chord

Example:

$ghci

Prelude>:m + Music.Instrument.Chord 
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept True AnnotatePositionVertical False True False standardTuning (minorChord C) 4 1 True False [] False False False False False)
Fret: 3 Fret: 3 
|S3---  3---    
|S-4--  -4--    
0S----  --5-    
|S--5-  --5-    
|S3---  3---    
|S3---  3---    
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept True AnnotatePositionVertical True True True standardTuning (minorChord C) 4 1 True False [] False False False False False)
Fret: 3 Fret: 3 
0===0== 333---3 
 ^^^^^^ 4----4- 
333---3 5--55-- 
4----4- 6------ 
5--5---         
6------         
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateMarking False True True dropD (majorChord F) 4 0 True False [] False False False False False)
=o==== Fret: 1 
----** ----**  
---*-- ---*--  
*-*--- ***---  
       ------  
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotatePositionVertical False True True standardTuning (harmony (majorScale A)) 4 0 True False [] True True False False False)
002220
224432
442124
200232
022100
244222
456434
Prelude Music.Instrument.Chord> putStr $ concat . map hConcat $ renderGuitarConcept False AnnotatePositionVertical False True True standardTuning [majorChord D,majorChord A,minorChord B,majorChord G] 4 0 True False [] False False False False False
=00===
------
2--2-2
----3-
00===0
------
--222-
------
Fret: 2
22---2
----3-
--44--
------
==000= ==00== 
------ ------ 
-2---- -2---- 
3----3 3---33 
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateNote False True True standardTuning (majorScale F) 4 0 False False [] True False True True False)
=AD===
Fb----
--E---
GC----
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateNote False True True standardTuning (shiftOctave 1 $ convertToSteps $ majorScale F) 4 0 False False [] True False True True False)
===G=E
----C-
---A--
--FbD-
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateNote False True True standardTuning (chordToScale (majorChord F)) 4 0 False False [] False False True True False)
=A====
F-----
------
-C----
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotatePositionHorizontal False False True (reverse standardTuning) (majorChord G) 4 0 True False [] False False False False False)
=234== ==34== 
------ ------ 
----5- ----5- 
1----6 12---6 
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateNote False True True standardTuning (sus 4 $ dominant7thChord G) 4 3 False True [] False False True False False)
Fret: 3 Fret: 3  Fret: 3  Fret: 3 
GCF-DG  G-F-DG   G-F--G   G----G  
------  ------   ------   ------  
---C--  -D-C--   -D-C--   -DGC--  
------  ------   ----F-   ----F-  
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateNote False True True standardTuning (minorChord G) 4 1 False False lightChord False False False False False)
Fret: 3
---bDG
------
------
------
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateNote False True True standardTuning (minor7thChord A) 4 2 False False lightChord False False True False False)
Fret: 5
--GCEA
------
------
------
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateMarking False True True standardTuning (slash C (majorChord D)) 4 0 False True [] False False False False False)
==o===
------
---*-*
-*--*-
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateMarking True True True standardTuning (fifthChord B) 4 0 False True powerChord True False False False False)
0======
1------
2-*----
3------
4--**--
5------
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateNote False True True standardTuning (majorChord (flat A)) 4 0 False False [] False False False False False)
Fret: 1
--eaC-
------
-C----
------
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotatePositionVertical False True True ukelele (majorChord C) 4 0 True False [] False False False False False)
000= 0=0= 
---- ---- 
---- ---- 
---3 -3-3 
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateNote False True True standardTuning (minorPentatonicScale A) 4 5 True False [] False False False False False)
Fret: 5
ADGCEA
------
-EAD--
C---GC
Prelude Music.Instrument.Chord> putStr $ concat $ map hConcat (renderGuitarConcept False AnnotateNote True True True standardTuning E 13 0 True False [] False False False False False)
 0E====E
 1------
 2--E---
 3------
 4------
 5----E-
 6------
 7-E----
 8------
 9---E--
01------
11------
21E----E
Prelude Music.Instrument.Chord> putStrLn (renderPianoConcept 0 AnnotateMarking (majorChord C))
 ____________________ 
| | || | | | || || | |
| |_||_| | |_||_||_| |
|* |  |* |  |* |  |  |
|__|__|__|__|__|__|__|
Prelude Music.Instrument.Chord> putStrLn (renderPianoConcept 1 AnnotateNote (majorScale A))
 ____________________ ____________________ 
| | || | | | || || | | |d|| | | |g||a|| | |
| |_||_| | |_||_||_| | |_||_| | |_||_||_| |
|  |  |  |  |  |A |B |  |D |E |  |  |  |  |
|__|__|__|__|__|__|__|__|__|__|__|__|__|__|
Prelude Music.Instrument.Chord> map head $ findPositionPatterns True (majorChord C) standardTuning 4 True False [] False False
[[[[0],[3],[2],[0],[1],[0]],[[0],[3],[2],[0],[1],[3]],[[3],[3],[2],[0],[1],[0]],[[3],[3],[2],[0],[1],[3]]]]