abcjs 6.2.3 → 6.3.0

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.
Files changed (46) hide show
  1. package/README.md +4 -0
  2. package/RELEASE.md +40 -1
  3. package/dist/abcjs-basic-min.js +2 -2
  4. package/dist/abcjs-basic.js +751 -416
  5. package/dist/abcjs-basic.js.map +1 -1
  6. package/dist/abcjs-plugin-min.js +2 -2
  7. package/index.js +2 -0
  8. package/package.json +1 -1
  9. package/plugin.js +1 -1
  10. package/src/api/abc_tablatures.js +48 -13
  11. package/src/parse/abc_parse_directive.js +17 -16
  12. package/src/parse/abc_parse_header.js +22 -19
  13. package/src/parse/abc_tokenizer.js +72 -7
  14. package/src/parse/tune-builder.js +60 -1
  15. package/src/synth/synth-controller.js +6 -2
  16. package/src/tablatures/instruments/string-patterns.js +11 -0
  17. package/src/tablatures/instruments/{guitar/guitar-patterns.js → tab-string-patterns.js} +6 -6
  18. package/src/tablatures/instruments/{violin/tab-violin.js → tab-string.js} +13 -11
  19. package/src/tablatures/tab-absolute-elements.js +16 -7
  20. package/src/tablatures/tab-renderer.js +22 -9
  21. package/src/test/abc_parser_lint.js +13 -12
  22. package/src/write/creation/abstract-engraver.js +3 -2
  23. package/src/write/creation/add-chord.js +102 -82
  24. package/src/write/creation/add-text-if.js +2 -2
  25. package/src/write/creation/decoration.js +14 -8
  26. package/src/write/creation/elements/bottom-text.js +62 -47
  27. package/src/write/creation/elements/rich-text.js +51 -0
  28. package/src/write/creation/elements/top-text.js +37 -11
  29. package/src/write/creation/glyphs.js +1 -1
  30. package/src/write/draw/absolute.js +4 -1
  31. package/src/write/draw/draw.js +13 -4
  32. package/src/write/draw/non-music.js +3 -1
  33. package/src/write/draw/relative.js +1 -1
  34. package/src/write/draw/tempo.js +1 -1
  35. package/src/write/draw/text.js +10 -0
  36. package/src/write/engraver-controller.js +54 -13
  37. package/src/write/helpers/classes.js +1 -1
  38. package/src/write/helpers/get-font-and-attr.js +8 -1
  39. package/src/write/helpers/get-text-size.js +8 -1
  40. package/src/write/svg.js +30 -0
  41. package/temp.txt +50 -0
  42. package/types/index.d.ts +46 -6
  43. package/version.js +1 -1
  44. package/.github/workflows/tests.yml +0 -29
  45. package/src/tablatures/instruments/guitar/tab-guitar.js +0 -48
  46. package/src/tablatures/instruments/violin/violin-patterns.js +0 -23
package/README.md CHANGED
@@ -10,6 +10,10 @@ Full documentation is here: [abcjs documentation](https://paulrosen.github.io/ab
10
10
 
11
11
  There is an organization that has a collection of useful projects related to abcjs called [abcjs-music](https://github.com/abcjs-music). See some examples there. If you have a project that you think would be of general interest and would like to add it to that organization, contact me.
12
12
 
13
+ ## Announcement: version 6.3.0
14
+
15
+ Most users won't see any difference, but there was some changes to the underlying SVG structure for the top (the title, etc.) and bottom (the notes, etc.) text, so if your code depends on particular classes then this might be a breaking change. Hopefully the new structure will be clearer and will allow css to target particular parts easier.
16
+
13
17
  ## Announcement: version 6.2.2
14
18
 
15
19
  There was a major bug in Firefox 112 that causes some lines to disappear. That is supposed to be fixed in Firefox 113 but in the meantime this update will take care of the problem.
package/RELEASE.md CHANGED
@@ -1,3 +1,42 @@
1
+ # Version 6.3.0
2
+
3
+ ## Features
4
+
5
+ ### Tablature
6
+ * Add tab feature `hideTabSymbol`
7
+ * Add 5-string tab named "fiveString"
8
+
9
+ ### Synth
10
+ * change the default synth control options for "play" and "progress" to be true
11
+ * expose the MIDI creator function
12
+
13
+ ### Rich Text
14
+ * allow up to 9 custom fonts in `%%setfont`
15
+ * for rich text fields, escape two dollar signs
16
+ * allow rich text in all non-music fields
17
+ * give all non-music fields a unique class
18
+
19
+ ### Miscellaneous
20
+ * add abcjs-notehead class to note heads;
21
+ * add `accentAbove` parameter
22
+ * handle numbered tune names in the reverser
23
+ * support reversing tune names with ", a" and ", an", with a variable amount of whitespace and case-insensitive
24
+
25
+ ## Bugs
26
+ * fix placement of tab staff when there is no label
27
+ * fix font placement bugs
28
+ * remove spurious quotes in font name in svg attribute
29
+ * Fix the name of the `abcjs-tab-number` class
30
+ * Fix tab staff height when there is a label
31
+ * Fix for crash when rendering multiple tab staves
32
+ * Offset breath mark to the right
33
+ * Center text when using `expandToWidest` set true
34
+
35
+ ## Documentation
36
+ * add missing typescript types
37
+ * fix synth control types
38
+ * fixed some typescript types in the TimingCallbacks
39
+
1
40
  # Version 6.2.3
2
41
 
3
42
  ## Features
@@ -24,7 +63,7 @@
24
63
 
25
64
  * various typescript fixes
26
65
 
27
- * afterParsing now works with line wrapping.
66
+ * `afterParsing` now works with line wrapping.
28
67
 
29
68
  * Put start and end char on slurs so they can be selected.
30
69