abcjs 6.0.0-beta.32 → 6.0.0-beta.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -7
- package/RELEASE.md +130 -0
- package/dist/abcjs-basic-min.js +2 -2
- package/dist/abcjs-basic.js +3763 -825
- package/dist/abcjs-basic.js.map +1 -1
- package/dist/abcjs-plugin-min.js +2 -2
- package/dist/report-basic.html +37 -0
- package/dist/report-before-glyph-compress.html +37 -0
- package/dist/report-brown-ts-target-es5.html +37 -0
- package/dist/report-dev-orig-no-babel.html +37 -0
- package/dist/report-synth.html +37 -0
- package/docker-build.sh +1 -0
- package/glyphs.json +1 -0
- package/package.json +9 -9
- package/src/api/abc_tablatures.js +144 -0
- package/src/api/abc_timing_callbacks.js +49 -26
- package/src/api/abc_tunebook.js +10 -1
- package/src/api/abc_tunebook_svg.js +16 -22
- package/src/data/abc_tune.js +90 -25
- package/src/data/deline-tune.js +199 -0
- package/src/edit/abc_editor.js +33 -11
- package/src/midi/abc_midi_create.js +6 -2
- package/src/parse/abc_parse.js +10 -6
- package/src/parse/abc_parse_directive.js +19 -12
- package/src/parse/abc_parse_header.js +12 -12
- package/src/parse/abc_parse_music.js +15 -5
- package/src/parse/tune-builder.js +23 -30
- package/src/parse/wrap_lines.js +13 -36
- package/src/synth/abc_midi_flattener.js +44 -29
- package/src/synth/abc_midi_sequencer.js +52 -13
- package/src/synth/create-synth.js +22 -7
- package/src/synth/load-note.js +31 -65
- package/src/synth/place-note.js +59 -60
- package/src/synth/register-audio-context.js +4 -1
- package/src/synth/supports-audio.js +9 -8
- package/src/synth/synth-controller.js +5 -3
- package/src/tablatures/instruments/guitar/guitar-fonts.js +19 -0
- package/src/tablatures/instruments/guitar/guitar-patterns.js +23 -0
- package/src/tablatures/instruments/guitar/tab-guitar.js +50 -0
- package/src/tablatures/instruments/string-patterns.js +277 -0
- package/src/tablatures/instruments/string-tablature.js +56 -0
- package/src/tablatures/instruments/tab-note.js +282 -0
- package/src/tablatures/instruments/tab-notes.js +41 -0
- package/src/tablatures/instruments/violin/tab-violin.js +47 -0
- package/src/tablatures/instruments/violin/violin-fonts.js +19 -0
- package/src/tablatures/instruments/violin/violin-patterns.js +23 -0
- package/src/tablatures/tab-absolute-elements.js +310 -0
- package/src/tablatures/tab-common.js +29 -0
- package/src/tablatures/tab-renderer.js +243 -0
- package/src/tablatures/transposer.js +110 -0
- package/src/test/abc_parser_lint.js +62 -6
- package/src/write/abc_absolute_element.js +2 -2
- package/src/write/abc_abstract_engraver.js +9 -7
- package/src/write/abc_create_key_signature.js +1 -0
- package/src/write/abc_create_note_head.js +1 -1
- package/src/write/abc_engraver_controller.js +22 -9
- package/src/write/abc_glyphs.js +5 -2
- package/src/write/abc_relative_element.js +11 -3
- package/src/write/abc_renderer.js +5 -1
- package/src/write/add-chord.js +5 -2
- package/src/write/add-text-if.js +33 -0
- package/src/write/bottom-text.js +8 -29
- package/src/write/draw/absolute.js +12 -14
- package/src/write/draw/brace.js +3 -3
- package/src/write/draw/crescendo.js +1 -1
- package/src/write/draw/draw.js +3 -4
- package/src/write/draw/dynamics.js +8 -1
- package/src/write/draw/ending.js +4 -3
- package/src/write/draw/group-elements.js +10 -8
- package/src/write/draw/non-music.js +11 -6
- package/src/write/draw/print-line.js +24 -0
- package/src/write/draw/print-stem.js +12 -11
- package/src/write/draw/print-symbol.js +11 -10
- package/src/write/draw/relative.js +33 -13
- package/src/write/draw/selectables.js +9 -6
- package/src/write/draw/staff-group.js +45 -9
- package/src/write/draw/staff-line.js +3 -17
- package/src/write/draw/staff.js +15 -2
- package/src/write/draw/tab-line.js +40 -0
- package/src/write/draw/tempo.js +7 -7
- package/src/write/draw/text.js +11 -4
- package/src/write/draw/tie.js +2 -2
- package/src/write/draw/triplet.js +3 -3
- package/src/write/draw/voice.js +10 -2
- package/src/write/format-jazz-chord.js +15 -0
- package/src/write/free-text.js +20 -12
- package/src/write/layout/VoiceElements.js +33 -1
- package/src/write/layout/beam.js +2 -0
- package/src/write/layout/staffGroup.js +37 -2
- package/src/write/layout/voice.js +2 -1
- package/src/write/selection.js +15 -5
- package/src/write/separator.js +1 -1
- package/src/write/subtitle.js +3 -3
- package/src/write/svg.js +41 -14
- package/src/write/top-text.js +19 -25
- package/types/index.d.ts +1007 -39
- package/version.js +1 -1
package/README.md
CHANGED
|
@@ -8,13 +8,17 @@ This library makes it easy to incorporate **sheet music** into your **websites**
|
|
|
8
8
|
|
|
9
9
|
Full documentation is here: [abcjs documentation](https://paulrosen.github.io/abcjs/)
|
|
10
10
|
|
|
11
|
+
## Major New Feature! 6.0.0-beta.36
|
|
12
|
+
|
|
13
|
+
String tablature is now available by adding an option to the `renderAbc` parameters. See [tablature documentation](https://paulrosen.github.io/abcjs/visual/tablature.html)
|
|
14
|
+
|
|
11
15
|
## Fix to audio in octave clefs 6.0.0-beta.31
|
|
12
16
|
|
|
13
17
|
If you are using an octave clef (for instance `K:C clef=treble-8`) it will now sound an octave different. The octave calculation was happening twice.
|
|
14
18
|
|
|
15
19
|
## Last version supporting midi.js is 6.0.0-beta.28
|
|
16
20
|
|
|
17
|
-
The file [abcjs version supporting midi.js](https://
|
|
21
|
+
The file [abcjs version supporting midi.js](https://github.com/paulrosen/historical-abcjs-versions/blob/main/version-6/abcjs_midi-min.js) is the last version of the old style of sound production that will receive updates.
|
|
18
22
|
|
|
19
23
|
## Rename the default branch to `main`
|
|
20
24
|
|
|
@@ -68,11 +72,13 @@ I'm trying to get all the issues that will create breaking changes done before r
|
|
|
68
72
|
|
|
69
73
|
I am going to try to release new beta versions regularly with a few improvements in each.
|
|
70
74
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
75
|
+
These are the changes that are planned:
|
|
76
|
+
* Improve the API for controlling the synth. That is, make the parameters less confusing.
|
|
77
|
+
* Test and improve the sound of the soundfont.
|
|
78
|
+
* Add all the typescript definitions.
|
|
79
|
+
* Break apart the paths in the SVG so that parts of the note can be targeted. (For instance, just the flag, or one note in a chord.)
|
|
80
|
+
* Control the spacing of the elements on the line better: support equal size measures, and support allowing control of the spacing between notes.
|
|
81
|
+
* Bug fixes.
|
|
76
82
|
|
|
77
83
|
If you have a particular issue that is impeding your usage of this library, please mention it in the issue.
|
|
78
84
|
|
|
@@ -94,4 +100,4 @@ And I would love some help on this project, including documentation, bug fixes,
|
|
|
94
100
|
## Supported by BrowserStack
|
|
95
101
|
If you aren't using the same browser and machine that I use, you can thank [BrowserStack](https://browserstack.com/) for their support of this open-source project.
|
|
96
102
|
|
|
97
|
-

|
package/RELEASE.md
CHANGED
|
@@ -1,3 +1,133 @@
|
|
|
1
|
+
# Version 6.0.0-beta.36
|
|
2
|
+
|
|
3
|
+
## Bugs
|
|
4
|
+
|
|
5
|
+
Fix some typescript definitions.
|
|
6
|
+
|
|
7
|
+
When stopping synth, return the position that it stopped at.
|
|
8
|
+
|
|
9
|
+
Implement a fix for race conditions during note loading
|
|
10
|
+
|
|
11
|
+
Don't call debugger when setting an annotation on an invisible note.
|
|
12
|
+
|
|
13
|
+
Put try/catch in editor when creating music so there isn't an unhandled exception if there is an abcjs bug.
|
|
14
|
+
|
|
15
|
+
Don't crash when creating audio and there is a suppressed blank line
|
|
16
|
+
|
|
17
|
+
When suppressing blank lines, consider a line with only chords as not blank.
|
|
18
|
+
|
|
19
|
+
Don't add too much spacing on chord symbols when placing them.
|
|
20
|
+
|
|
21
|
+
Don't lose element's scrolling position when rendering music.
|
|
22
|
+
|
|
23
|
+
Fix crash when creating timing array and there is a suppressed line because it is empty.
|
|
24
|
+
|
|
25
|
+
Allow soundFontVolumeMultiplier to be set to zero.
|
|
26
|
+
|
|
27
|
+
## Features
|
|
28
|
+
|
|
29
|
+
Add string tablature
|
|
30
|
+
|
|
31
|
+
Implement %%jazzchord directive
|
|
32
|
+
|
|
33
|
+
## Documentation
|
|
34
|
+
|
|
35
|
+
Add example page using multiple synths with program switcher
|
|
36
|
+
|
|
37
|
+
Add jazzchords to example generator
|
|
38
|
+
|
|
39
|
+
# Version 6.0.0-beta.35
|
|
40
|
+
|
|
41
|
+
## Bugs
|
|
42
|
+
|
|
43
|
+
* Fix regression on creating oneSvgPerLine
|
|
44
|
+
|
|
45
|
+
* Fix notes that are one step apart from colliding.
|
|
46
|
+
|
|
47
|
+
* Fix crash on bad notelength
|
|
48
|
+
|
|
49
|
+
* Fix note durations in triplets where p != r
|
|
50
|
+
|
|
51
|
+
* Don't crash if a browser doesn't contain AudioContext
|
|
52
|
+
|
|
53
|
+
* Don't swallow warning after wrapping.
|
|
54
|
+
|
|
55
|
+
* Fix some regressions with placing and styling text.
|
|
56
|
+
|
|
57
|
+
* Fix font on relatively positioned annotations.
|
|
58
|
+
|
|
59
|
+
* Protect the editor from crashing when synth is attempted and the browser doesn't support AudioContext.
|
|
60
|
+
|
|
61
|
+
## Features
|
|
62
|
+
|
|
63
|
+
* Create parameter `jazzchords`
|
|
64
|
+
|
|
65
|
+
* Add many types to the typescript definitions.
|
|
66
|
+
|
|
67
|
+
* Add `units` to TimingCallback.start
|
|
68
|
+
|
|
69
|
+
* Add staccato to midi creation.
|
|
70
|
+
|
|
71
|
+
* Add classes to dynamics elements.
|
|
72
|
+
|
|
73
|
+
* Add more info to the click handler
|
|
74
|
+
|
|
75
|
+
* Limit the size of the warning message if there is a long string.
|
|
76
|
+
|
|
77
|
+
* Add initialClef option
|
|
78
|
+
|
|
79
|
+
* Keep and pass back current time from the timer callbacks.
|
|
80
|
+
|
|
81
|
+
## Documentation
|
|
82
|
+
|
|
83
|
+
* Fix path for favicon in docs
|
|
84
|
+
|
|
85
|
+
* Tweak to printing example
|
|
86
|
+
|
|
87
|
+
* Move examples to github pages.
|
|
88
|
+
|
|
89
|
+
* Add MIDI download example.
|
|
90
|
+
|
|
91
|
+
* Fixes to doc building from the vuepress upgrade.
|
|
92
|
+
|
|
93
|
+
* Add mention of a CDN to load library from.
|
|
94
|
+
|
|
95
|
+
* Add a couple of errors to analysis demo to show the warning data.
|
|
96
|
+
|
|
97
|
+
* Option to only render the clef on the first line.
|
|
98
|
+
|
|
99
|
+
# Version 6.0.0-beta.33
|
|
100
|
+
|
|
101
|
+
## Bugs
|
|
102
|
+
|
|
103
|
+
* Fix crash when there is a missing close bracket on an inline command.
|
|
104
|
+
|
|
105
|
+
* Fix the startChar position of chords
|
|
106
|
+
|
|
107
|
+
* Fix overriding the tempo.
|
|
108
|
+
|
|
109
|
+
* Fix passing qpm in.
|
|
110
|
+
|
|
111
|
+
* Fix stem direction bug on wrap.
|
|
112
|
+
|
|
113
|
+
* Fix bug in calculating the endpoint of the audio when there are multiple voices.
|
|
114
|
+
|
|
115
|
+
## Features
|
|
116
|
+
|
|
117
|
+
* Add getBarLength() and getTotalTime() to the tune object;
|
|
118
|
+
|
|
119
|
+
* Add second parameter to seek() for the units percent, seconds, and beats.
|
|
120
|
+
|
|
121
|
+
* Add `detuneOctave` parameter
|
|
122
|
+
|
|
123
|
+
## Documentation
|
|
124
|
+
|
|
125
|
+
* Example of controlling the tempo.
|
|
126
|
+
|
|
127
|
+
## Build
|
|
128
|
+
|
|
129
|
+
* Remove bin folder
|
|
130
|
+
|
|
1
131
|
# Version 6.0.0-beta.32
|
|
2
132
|
|
|
3
133
|
## Bugs
|