{"_id":"@cantoreshu/abc2svg","_rev":"9-bf660451209b76adc1129de88a5fccea","name":"@cantoreshu/abc2svg","dist-tags":{"latest":"1.4.0"},"versions":{"1.0.0":{"name":"@cantoreshu/abc2svg","version":"1.0.0","keywords":["abc","abc2svg","music","notation","sheet-music","svg"],"author":{"name":"Bertalan Fodor","email":"fodber@organum.hu"},"license":"LGPL-3.0-or-later","_id":"@cantoreshu/abc2svg@1.0.0","maintainers":[{"name":"briff","email":"fodber@organum.hu"}],"contributors":[{"url":"abc2svg itself","name":"Jean-François Moine"}],"homepage":"https://github.com/briff/abc2svg-cantoreshu#readme","bugs":{"url":"https://github.com/briff/abc2svg-cantoreshu/issues"},"dist":{"shasum":"5b3798626f93d9a7871cc8ec07c303e816b301e6","tarball":"https://registry.npmjs.org/@cantoreshu/abc2svg/-/abc2svg-1.0.0.tgz","fileCount":50,"integrity":"sha512-Brc/8u7RNcHuBYq5E64Nv7+EsyOKGj2fTyo0Y8NjRyhiFmO5e5BFP4VwdkJ1zU6Jj3CqE9leEGaQ1zsb74dRqA==","signatures":[{"sig":"MEUCIQC9OGfW2PldZZu49dVMX93L+qCtrcoqXnb0nLBk1LWmLQIgZhLv1xu0S3Mf6knRZytKrFrm+LZIQyACtp3xmRmV6eo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1031701},"gitHead":"af46a0f1526cbdb97e2b0a0c7c6d89a0e7cf8aab","scripts":{"prepare":"./build"},"_npmUser":{"name":"briff","email":"fodber@organum.hu"},"upstream":{"project":"https://chiselapp.com/user/moinejf/repository/abc2svg","version":"v1.23.5"},"repository":{"url":"git+https://github.com/briff/abc2svg-cantoreshu.git","type":"git"},"_npmVersion":"10.9.8","description":"abc2svg fork for cantores.hu: lyric spacing anchored on the staff, Hungarian chord-symbol spelling","directories":{},"_nodeVersion":"22.23.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abc2svg_1.0.0_1789051021757_0.9490918444590868","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@cantoreshu/abc2svg","version":"1.1.0","keywords":["abc","abc2svg","music","notation","sheet-music","svg"],"author":{"name":"Bertalan Fodor","email":"fodber@organum.hu"},"license":"LGPL-3.0-or-later","_id":"@cantoreshu/abc2svg@1.1.0","maintainers":[{"name":"briff","email":"fodber@organum.hu"}],"contributors":[{"url":"abc2svg itself","name":"Jean-François Moine"}],"homepage":"https://github.com/briff/abc2svg-cantoreshu#readme","bugs":{"url":"https://github.com/briff/abc2svg-cantoreshu/issues"},"dist":{"shasum":"5584255d6d289bce91da0f83c2a15808b143846c","tarball":"https://registry.npmjs.org/@cantoreshu/abc2svg/-/abc2svg-1.1.0.tgz","fileCount":50,"integrity":"sha512-Rc4svoWrXgUrx3UZQ1ZaTwh2RP1Hyza0Y1jq6XHJBVorTxXJKtSqDbvNleNIAq3GUmmiYqqkmj8bRGB0SfGSNQ==","signatures":[{"sig":"MEUCIBkUdFbVyct2PDiBPxqT5Ufj9OFUGs40gxERdgURZlKYAiEAztMNuFuUjXOClRXsUayp4Ayciebi3qxVsu6tatJRO1g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1034111},"gitHead":"443f1bf9c2fdbeda45e880460387aad2d833e200","scripts":{"test":"node --test test/*.test.mjs","prepare":"./build","pretest":"./build"},"_npmUser":{"name":"briff","email":"fodber@organum.hu"},"upstream":{"project":"https://chiselapp.com/user/moinejf/repository/abc2svg","version":"v1.23.5"},"repository":{"url":"git+https://github.com/briff/abc2svg-cantoreshu.git","type":"git"},"_npmVersion":"10.9.8","description":"abc2svg fork for cantores.hu: lyric spacing anchored on the staff, Hungarian chord-symbol spelling","directories":{},"_nodeVersion":"22.23.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abc2svg_1.1.0_1789112680923_0.8931510252774642","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@cantoreshu/abc2svg","version":"1.2.0","keywords":["abc","abc2svg","music","notation","sheet-music","svg"],"author":{"name":"Bertalan Fodor","email":"fodber@organum.hu"},"license":"LGPL-3.0-or-later","_id":"@cantoreshu/abc2svg@1.2.0","maintainers":[{"name":"briff","email":"fodber@organum.hu"}],"contributors":[{"url":"abc2svg itself","name":"Jean-François Moine"}],"homepage":"https://github.com/briff/abc2svg-cantoreshu#readme","bugs":{"url":"https://github.com/briff/abc2svg-cantoreshu/issues"},"dist":{"shasum":"ecf4b08c03b450815e80bc64453b942e3d86acb0","tarball":"https://registry.npmjs.org/@cantoreshu/abc2svg/-/abc2svg-1.2.0.tgz","fileCount":50,"integrity":"sha512-AEN3vctd9uaWkVICmhOdIgMqa+hS+a4fpRX49swct6tkMO01V02Limw5S48c0sBdg3M850cvRmhORCbq5H6oXQ==","signatures":[{"sig":"MEQCID2eFC2KjvNpFwjuOfUJ8OWayzunL8iBMkD4noRow+CyAiAWLLzgkXQ3LYPICTsc91EcdWztI2Yd/QzSUSZkNNLy7Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1034665},"gitHead":"c82fd925cd840ca96fcd700d41968020f3e33142","scripts":{"test":"node --test test/*.test.mjs","prepare":"./build","pretest":"./build"},"_npmUser":{"name":"briff","email":"fodber@organum.hu"},"upstream":{"project":"https://chiselapp.com/user/moinejf/repository/abc2svg","version":"v1.23.5"},"repository":{"url":"git+https://github.com/briff/abc2svg-cantoreshu.git","type":"git"},"_npmVersion":"10.9.8","description":"abc2svg fork for cantores.hu: lyric spacing anchored on the staff, Hungarian chord-symbol spelling","directories":{},"_nodeVersion":"22.23.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abc2svg_1.2.0_1789113556708_0.6944054237753579","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@cantoreshu/abc2svg","version":"1.2.1","keywords":["abc","abc2svg","music","notation","sheet-music","svg"],"author":{"name":"Bertalan Fodor","email":"fodber@organum.hu"},"license":"LGPL-3.0-or-later","_id":"@cantoreshu/abc2svg@1.2.1","maintainers":[{"name":"briff","email":"fodber@organum.hu"}],"contributors":[{"url":"abc2svg itself","name":"Jean-François Moine"}],"homepage":"https://github.com/briff/abc2svg-cantoreshu#readme","bugs":{"url":"https://github.com/briff/abc2svg-cantoreshu/issues"},"dist":{"shasum":"def697b77e8aca4a01c45931515ed7ee1513e591","tarball":"https://registry.npmjs.org/@cantoreshu/abc2svg/-/abc2svg-1.2.1.tgz","fileCount":50,"integrity":"sha512-7MHPJha7/O8edGN8hlCcYgYdfUEPz78Qojc0yr2x0dv6hnVcWNGRiIbgC3hmVUTyuyYdayybQ5kbQQQ4t2EdEw==","signatures":[{"sig":"MEUCIQC440Hmic2IDfwAE/f6zjn6J6Wasy51QWMZJOYv9jDmEAIgMARiAvp0hJOLyF4lQXg6ahSBmyVutTohlb668AwRLt8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1034733},"gitHead":"9b4dc12a5439006f453510698aff69f9e5c927a0","scripts":{"test":"node --test test/*.test.mjs","prepare":"./build","pretest":"./build"},"_npmUser":{"name":"briff","email":"fodber@organum.hu"},"upstream":{"project":"https://chiselapp.com/user/moinejf/repository/abc2svg","version":"v1.23.5"},"repository":{"url":"git+https://github.com/briff/abc2svg-cantoreshu.git","type":"git"},"_npmVersion":"10.9.8","description":"abc2svg fork for cantores.hu: lyric spacing anchored on the staff, Hungarian chord-symbol spelling","directories":{},"_nodeVersion":"22.23.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abc2svg_1.2.1_1789113964781_0.42853060016545963","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@cantoreshu/abc2svg","version":"1.2.2","keywords":["abc","abc2svg","music","notation","sheet-music","svg"],"author":{"name":"Bertalan Fodor","email":"fodber@organum.hu"},"license":"LGPL-3.0-or-later","_id":"@cantoreshu/abc2svg@1.2.2","maintainers":[{"name":"briff","email":"fodber@organum.hu"}],"contributors":[{"url":"abc2svg itself","name":"Jean-François Moine"}],"homepage":"https://github.com/briff/abc2svg-cantoreshu#readme","bugs":{"url":"https://github.com/briff/abc2svg-cantoreshu/issues"},"dist":{"shasum":"986420cc50aee3acd10cea231213e2d7948997db","tarball":"https://registry.npmjs.org/@cantoreshu/abc2svg/-/abc2svg-1.2.2.tgz","fileCount":50,"integrity":"sha512-QDaX1W1GouSbDSt2NlXpCwddoaeNaC3NbvUuwDfi4chqrwPB2CqJ9ThRUIg8nHDxzdjtA8dgxu5bSvRvTfS7gQ==","signatures":[{"sig":"MEQCIAnKpGTfN7F/BNS0UWTogUECS0gOhQ9dEJLDeK6VsR7aAiB/EhVTj5/d599Tm5/JabVlf7lgezZXp/sfML7xJeBuvQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1036335},"gitHead":"ce2f79b3ae765d1cec5036e57847e1dc8ecf0b7b","scripts":{"test":"node --test test/*.test.mjs","prepare":"./build","pretest":"./build"},"_npmUser":{"name":"briff","email":"fodber@organum.hu"},"upstream":{"project":"https://chiselapp.com/user/moinejf/repository/abc2svg","version":"v1.23.5"},"repository":{"url":"git+https://github.com/briff/abc2svg-cantoreshu.git","type":"git"},"_npmVersion":"10.9.8","description":"abc2svg fork for cantores.hu: lyric spacing anchored on the staff, Hungarian chord-symbol spelling","directories":{},"_nodeVersion":"22.23.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abc2svg_1.2.2_1789117213039_0.483384554710214","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@cantoreshu/abc2svg","version":"1.3.0","keywords":["abc","abc2svg","music","notation","sheet-music","svg"],"author":{"name":"Bertalan Fodor","email":"fodber@organum.hu"},"license":"LGPL-3.0-or-later","_id":"@cantoreshu/abc2svg@1.3.0","maintainers":[{"name":"briff","email":"fodber@organum.hu"}],"contributors":[{"url":"abc2svg itself","name":"Jean-François Moine"}],"homepage":"https://github.com/briff/abc2svg-cantoreshu#readme","bugs":{"url":"https://github.com/briff/abc2svg-cantoreshu/issues"},"dist":{"shasum":"98abacec17e81c797b2adb2e6c1a45d2f00e6f17","tarball":"https://registry.npmjs.org/@cantoreshu/abc2svg/-/abc2svg-1.3.0.tgz","fileCount":50,"integrity":"sha512-4o2CMVHzh4duwNpijfGAzVD64l3jOQpXhY59SapzVm0ZNuaMc+OqCYE616onfb2RZqLo1D+ByKcV0Bn9KvLn1g==","signatures":[{"sig":"MEUCIQDfOtAp46KoQj8zaZXwhTo84/wfbXleZaw0oaTsloDXGAIgFTuILUQ4BxMFsceb1wIb2sE2VwYMAjOVdkMcrTyuHMY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1036325},"gitHead":"f3b539281bfc03785cc343350c97deac73caca76","scripts":{"test":"node --test test/*.test.mjs","prepare":"./build","pretest":"./build"},"_npmUser":{"name":"briff","email":"fodber@organum.hu"},"upstream":{"project":"https://chiselapp.com/user/moinejf/repository/abc2svg","version":"v1.23.5"},"repository":{"url":"git+https://github.com/briff/abc2svg-cantoreshu.git","type":"git"},"_npmVersion":"10.9.8","description":"abc2svg fork for cantores.hu: lyric spacing anchored on the staff, Hungarian chord-symbol spelling","directories":{},"_nodeVersion":"22.23.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abc2svg_1.3.0_1789152630853_0.06456108129292115","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@cantoreshu/abc2svg","version":"1.3.2","keywords":["abc","abc2svg","music","notation","sheet-music","svg"],"author":{"name":"Bertalan Fodor","email":"fodber@organum.hu"},"license":"LGPL-3.0-or-later","_id":"@cantoreshu/abc2svg@1.3.2","maintainers":[{"name":"briff","email":"fodber@organum.hu"}],"contributors":[{"url":"abc2svg itself","name":"Jean-François Moine"}],"homepage":"https://github.com/briff/abc2svg-cantoreshu#readme","bugs":{"url":"https://github.com/briff/abc2svg-cantoreshu/issues"},"dist":{"shasum":"3b5df9ffd28900c7c87f6a855363489905244cfc","tarball":"https://registry.npmjs.org/@cantoreshu/abc2svg/-/abc2svg-1.3.2.tgz","fileCount":50,"integrity":"sha512-IAFg8XgKjT3iQ1DDMMBHmGm7qUSjGpYoCsV9Ub/VQKwHL0v4avziUCGb96wHut68lz3X6uDECiCLvxsRnOL7eQ==","signatures":[{"sig":"MEQCIHLEilECWjAbIHFUmNZ5TEgaCVWebi72uxwssSd0zENcAiAZzYV70Yj2cyT5h5Q1Eyt1hSk6+ocsvg3VLeLXPDzkpg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGDHLDuwaieEdkoSuBDom1xaV408HhORp900tbSa4cMaAiEA4NvP85QnydiYrJJoJMeQux4WFY7Wtzy08/M7C/MKtHs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cantoreshu%2fabc2svg@1.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1038817},"gitHead":"cb97592a86e67b1c9ae7b9bbfe06af9ce9c87abd","scripts":{"test":"node --test test/*.test.mjs","prepare":"./build","pretest":"./build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:494ab368-9363-422d-af60-2853a6dec22f"}},"upstream":{"project":"https://chiselapp.com/user/moinejf/repository/abc2svg","version":"v1.23.5"},"repository":{"url":"git+https://github.com/briff/abc2svg-cantoreshu.git","type":"git"},"_npmVersion":"12.0.2","description":"abc2svg fork for cantores.hu: lyric spacing anchored on the staff, Hungarian chord-symbol spelling","directories":{},"_nodeVersion":"22.23.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abc2svg_1.3.2_1789566838694_0.01996656917928652","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@cantoreshu/abc2svg","version":"1.3.3","keywords":["abc","abc2svg","music","notation","sheet-music","svg"],"author":{"name":"Bertalan Fodor","email":"fodber@organum.hu"},"license":"LGPL-3.0-or-later","_id":"@cantoreshu/abc2svg@1.3.3","maintainers":[{"name":"briff","email":"fodber@organum.hu"}],"contributors":[{"url":"abc2svg itself","name":"Jean-François Moine"}],"homepage":"https://github.com/briff/abc2svg-cantoreshu#readme","bugs":{"url":"https://github.com/briff/abc2svg-cantoreshu/issues"},"dist":{"shasum":"0b9cc2e34fdb06f77fb245afd3b1ec81403a3ac2","tarball":"https://registry.npmjs.org/@cantoreshu/abc2svg/-/abc2svg-1.3.3.tgz","fileCount":50,"integrity":"sha512-77a80PS2Bxj+edig/6yEeL4bwzBEMaNSMJcqE94xpuJrjMP2/GOQSGcpjdszCIxE1fbjCSPnWm8i9gfJvOOvPA==","signatures":[{"sig":"MEYCIQCuOwQFMQPK91o8/lxTI84A7lPCiR9T4FaCx70HtKlvlAIhAN7afpJHxr6eQfB9yPBk6cXO1zuKKi6o9tb3OCMK4U1J","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCoDnHXeY8WEGEEEzWJwfRluyFZMiNlNQcby8pKvzWZOgIhAIN2SgPQ1cbnbveDc5Q5LSTXQm1kUD87KdM7gdnX1qC1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1039107},"gitHead":"9392e70ad274377daefd8f5eaf8e63ea4ccf2bd8","scripts":{"test":"node --test test/*.test.mjs","prepare":"./build","pretest":"./build"},"_npmUser":{"name":"briff","email":"fodber@organum.hu"},"upstream":{"project":"https://chiselapp.com/user/moinejf/repository/abc2svg","version":"v1.23.5"},"repository":{"url":"git+https://github.com/briff/abc2svg-cantoreshu.git","type":"git"},"_npmVersion":"10.9.8","description":"abc2svg fork for cantores.hu: lyric spacing anchored on the staff, Hungarian chord-symbol spelling","directories":{},"_nodeVersion":"22.23.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abc2svg_1.3.3_1790072000813_0.7468760702916364","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"_id":"@cantoreshu/abc2svg@1.4.0","bugs":{"url":"https://github.com/cantores-hu/abc2svg-cantoreshu/issues"},"dist":{"shasum":"2d838df0157b0201aedcd7a8b00b563dd21dee63","tarball":"https://registry.npmjs.org/@cantoreshu/abc2svg/-/abc2svg-1.4.0.tgz","fileCount":50,"integrity":"sha512-xVZ5+zfMsixpP2ti6ozjZx6EJMldgpDpLgRxdvBzR4rwhdEz0hxCM/ypXApdKAdNgvIBfsMMzmCgR4Q+qAAbbA==","signatures":[{"sig":"MEUCIQCMVXnM/BH9LQVG9FDQZsc/ulav0c2XS5KjiIhuQ+UxqQIgUy7V0+Sdq1efFFL0llTkp0oay1OD0g9X9nqrumLOcbg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCID42hZSaAvNUyce1K1w1nRylqlQnJs7HxtfRT/n1SqnSAiAUsT2znkVrfgjmy3MD6TQWI+7GqFjl+OKd3foxv44l0g=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cantoreshu%2fabc2svg@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1040851},"name":"@cantoreshu/abc2svg","author":{"name":"Bertalan Fodor","email":"fodber@organum.hu"},"gitHead":"f4882656b9e5a25237b4cc2a0e68e83740ff5d3b","license":"LGPL-3.0-or-later","scripts":{"test":"node --test test/*.test.mjs","prepare":"./build","pretest":"./build"},"version":"1.4.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f4f9c5cb-87b7-49eb-a4a0-7e96e2d9344f"}},"homepage":"https://github.com/cantores-hu/abc2svg-cantoreshu#readme","keywords":["abc","abc2svg","music","notation","sheet-music","svg"],"upstream":{"project":"https://chiselapp.com/user/moinejf/repository/abc2svg","version":"v1.23.5"},"repository":{"url":"git+https://github.com/cantores-hu/abc2svg-cantoreshu.git","type":"git"},"_npmVersion":"12.0.2","description":"abc2svg fork for cantores.hu: lyric spacing anchored on the staff, Hungarian chord-symbol spelling","directories":{},"maintainers":[{"name":"briff","email":"fodber@organum.hu"}],"_nodeVersion":"22.23.2","contributors":[{"url":"abc2svg itself","name":"Jean-François Moine"}],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/abc2svg_1.4.0_1790091346204_0.6591172239071832"}}},"time":{"created":"2026-09-10T14:37:01.527Z","modified":"2026-09-22T15:35:46.741Z","1.0.0":"2026-09-10T14:37:01.893Z","1.1.0":"2026-09-11T07:44:41.083Z","1.2.0":"2026-09-11T07:59:16.836Z","1.2.1":"2026-09-11T08:06:04.932Z","1.2.2":"2026-09-11T09:00:13.188Z","1.3.0":"2026-09-11T18:50:30.986Z","1.3.2":"2026-09-16T13:53:58.808Z","1.3.3":"2026-09-22T10:13:20.928Z","1.4.0":"2026-09-22T15:35:46.368Z"},"bugs":{"url":"https://github.com/cantores-hu/abc2svg-cantoreshu/issues"},"author":{"name":"Bertalan Fodor","email":"fodber@organum.hu"},"license":"LGPL-3.0-or-later","homepage":"https://github.com/cantores-hu/abc2svg-cantoreshu#readme","keywords":["abc","abc2svg","music","notation","sheet-music","svg"],"repository":{"url":"git+https://github.com/cantores-hu/abc2svg-cantoreshu.git","type":"git"},"description":"abc2svg fork for cantores.hu: lyric spacing anchored on the staff, Hungarian chord-symbol spelling","contributors":[{"url":"abc2svg itself","name":"Jean-François Moine"}],"maintainers":[{"name":"briff","email":"fodber@organum.hu"}],"readme":"> ## This is not the abc2svg project\n>\n> **abc2svg-cantoreshu** is an unofficial git mirror and fork of\n> [abc2svg](https://chiselapp.com/user/moinejf/repository/abc2svg) by\n> Jean-François Moine, maintained for the needs of\n> [cantores.hu](https://cantores.hu). It is **modified**: see\n> [FORK.md](FORK.md) for what was changed and when.\n>\n> Upstream is authoritative and is developed in Fossil, not git:\n> <https://chiselapp.com/user/moinejf/repository/abc2svg>\n>\n> **Bugs in abc2svg belong upstream, not here.** Please report them on the\n> [abcusers list](https://groups.io/g/abcusers) or in upstream's own ticket\n> tracker, where the author will see them. Issues opened here about abc2svg\n> itself only delay your answer.\n>\n> Everything below this box is upstream's own README, kept as it is.\n\n<style>\np{margin-left:.5cm;max-width:21cm}\nli{margin-left:.5cm;max-width:20cm}\nli p{margin-left:0}\n</style>\n## abc2svg\n\n**abc2svg** is a set of ECMAscript files that handle the\n[ABC music notation](https://abcnotation.com/). This includes\nediting, displaying, printing, playing the music files and\nconverting them to other formats such as ABC and MEI notations.\n\nThe **abc2svg** core is based on the\n[abcm2ps](https://chiselapp.com/user/moinejf/repository/abcm2ps) C code\nwhich requires compilation on every operating system. \nThe **abc2svg** scripts can run in any system with no compilation on\nany platform that contains an internet browser. This includes MS-Windows,\nApple, and Unix-like systems (Linux, BSD...) as well as portable devices\nsuch as cell phones and tablets.\n\nA description of the ABC parameters that relate to both abcm2ps\nand abc2svg can be found [here][1].\n\n[1]: https://moinejf.pages-perso.free.fr/abcm2ps-doc/index.html \"abc2svg documentation\"\n\n### 1. Web browser usage\n\n#### 1.1 Rendering ABC files from a local or remote source\n\nAfter accessing ABC files with a web browser either from a local or web\nsource, you can render or play the music without much preparation.\nOne approach uses [bookmarklets](https://en.wikipedia.org/wiki/Bookmarklet).\n\nA bookmarklet is the same as a normal bookmark in a web browser.\nIts title (or name) is anything you want to use to identify it and its URL\n(or location or address) is javascript code starting by `javascript:`.\nFirst, create a bookmark from this page adding it to your library of\nbookmarks. Next, edit this mark changing the title and the URL. (Details\nfor editing a bookmark are specific for each browser. To get instructions,\nsearch on the internet the name of the browser and keywords such as\n'bookmarklet' and 'javascript in url'). To edit the URL, extract\nthe javascript code\nby right clicking on one of the bookmarklets below and selecting\ncopy url. Then, paste this code into the URL of your new bookmark\nin your library.\n\nTo use a abc2svg bookmarklet, first, load an ABC file into your\nbrowser either from a web site of from a file on your system.\nOnce you see the textual abc code, click on the bookmarklet\nthat you created. After a slight delay depending upon the\ncomplexity of the abc code, it should be replaced by a music\nrepresentation or a list of the contents of the ABC file. Here\nare two bookmarklets that you can try.\n\nThis\n<a href=\"javascript:(function(){var%20s,n=2,d=document,b=d.body;d.head.innerHTML='%3cstyle%3esvg{display:block};@media print{body{margin:0;padding:0;border:0};.nop{display:none}}%3c/style%3e\\n';b.innerHTML='%3cscript type=%22text/vnd.abc%22%3e\\n'+b.textContent+'%3c/script%3e\\n';function%20f(u){s=d.createElement('script');s.src='https://moinejf.pages-perso.free.fr/js/'+u;s.onload=function(){if(--n==0)dom_loaded()};d.head.appendChild(s)};f('abcweb-1.js');f('snd-1.js')})()\"\ntitle=\"Copy me\">first abc2svg bookmarklet</a>\nrenders all the music it finds in the page currently displayed.  \nOnce the music is displayed, clicking inside a tune starts playing it\nfrom the beginning.\nClicking on a particular note or rest starts playing from that point.  \nTo print or convert the music to a PDF file,\nsimply click on the 'Print' button of the web browser.\n(If the 'Print' button does not appear on your browser menu,\ntry right clicking on the web page.)\n\nAlternatively, if your source contains many tunes, you can\nuse this\n<a href=\"javascript:(function(){var%20s,n=2,d=document,b=d.body;d.head.innerHTML='%3cstyle%3esvg{display:block};@media print{body{margin:0;padding:0;border:0};.nop{display:none}}%3c/style%3e\\n';b.innerHTML='%3cscript type=%22text/vnd.abc%22%3e\\n'+b.textContent+'%3c/script%3e\\n';function%20f(u){s=d.createElement('script');s.src='https://moinejf.pages-perso.free.fr/js/'+u;s.onload=function(){if(--n==0)dom_loaded()};d.head.appendChild(s)};f('abcweb1-1.js');f('snd-1.js')})()\"\ntitle=\"Copy me\">second bookmarklet</a>.\nThe browser will list the titles of the tunes.\nClicking on a title displays the tune.\nPlaying and printing work in the same manner as above.  \nThe generated pages contain a yellow menu in the top right corner which permits\nyou to return to the tune list or to modify the music. With this last option,\nyou can adjust the page size before printing, correct the ABC syntax or\ndo some transposition.\nNote that these changes stay only with the browser and are not saved\nto your system.\n\nIf you want to experiment with these bookmarklets, here are some raw ABC files:\n\n- [from my site](https://moinejf.pages-perso.free.fr/abc/agora.abc \"agora.abc\")\n- [from Cranford Publications][2]\n\n[2]: http://www.cranfordpub.com/tunes/abcs/NatalieBlueprint.txt \"Blueprint\"\n\n#### 1.2 Writing, playing and printing music with the abc2svg editor\n\nThe [abc2svg editor][3]\nis another example of what can be done with **abc2svg**.\n\n[3]: https://moinejf.pages-perso.free.fr/js/edit-1.xhtml \"ABC editor based on abc2svg\"\n\nIf you are unfamiliar with ABC music notation, just copy this ABC sequence below\nand paste it into the text area of the editor.\n\n\tX:1\n\tT:C scale\n\tM:C\n\tL:1/4\n\tK:C\n\tCDEF|GABc|\n\nIf your ABC files contain `%%abc-include`, then you must:\n\n  - load the ABC file using the browse button,\n  - click the include file name button,\n  - and load the include file using the same previous browse button.  \n\nOnly one included file is allowed.\n\nIf you have installed abc2svg in a site of yours, you may put a file\n**pref.js** with the abc2svg scripts. This file may contain various\njavascript functions and also ABC parameters.\nThese parameters must be defined inside the following sequence:\n\n\tif (typeof abc2svg == \"undefined\")    \n\t    var abc2svg = {}\n\tif (!abc2svg.a_inc)\n\t\tabc2svg.a_inc = {}\n\tabc2svg.a_inc[\"default.abc\"] = `\n\t.. put here the ABC parameters ..\n\t`\n\nIf you have a US keyboard, its behaviour can be changed for easier music\nentering by one of these bookmarklets:\n<a href=\"javascript:(function(){if(typeof%20abc2svg.loadjs=='function'){abc2svg.loadjs('abckbd-1.js')}else{alert('use%20with%20abc2svg%20editor')}})()\"\ntitle=\"Copy me\">keyboard 1</a>\nand\n<a href=\"javascript:(function(){if(typeof%20abc2svg.loadjs=='function'){abc2svg.loadjs('abckbd2-1.js')}else{alert('use%20with%20abc2svg%20editor')}})()\"\ntitle=\"Copy me\">keyboard 2</a>.\n\n#### 1.3 Publishing music on your web pages\n\nTo insert music in your web pages, you just have to insert the lines\n\n\t<script src=\"https://moinejf.pages-perso.free.fr/js/snd-1.js\" defer></script>\n\t<script src=\"https://moinejf.pages-perso.free.fr/js/abc2svg-1.js\" defer></script>\n\t<script src=\"https://moinejf.pages-perso.free.fr/js/abcweb-1.js\" defer></script>\n\nin the HTML &lt;head&gt; and put the music as\nABC sequences in the &lt;body&gt;.\n\n[This example][4] demonstrates how to do it.\n(Note that, in the example, the paths are relative - see why below.)\n\n[4]: https://moinejf.pages-perso.free.fr/abcm2ps-doc/tabac.html \"J'ai du bon tabac\"\n\nAs it is apparent, HTML and ABC can be mixed in the same html file.\nBoth are rendered in the order you defined them.\n\nYou may also have noticed this style about SVG elements:  \n`        svg { display: block }`\n\nIt puts the lines of music on vertical areas.  \nWithout this style, the music is in-lined as in [this other example][5].\n\n[5]: https://moinejf.pages-perso.free.fr/abcm2ps-doc/dansou-i.html \"Tune index example\"\n\nGlobal ABC parameters may be added as `parameter=value` in the query string\nof the URL of the page. The [following example][9] calls the same\n\"J'ai du bon tabac\" with `pagescale=1.2` (giving `%%pagescale 1.2`).\n\n[9]: https://moinejf.pages-perso.free.fr/abcm2ps-doc/tabac.html?pagescale=1.2 \"J'ai du bon tabac\"\n\nIn the above examples, all the ABC music is generated (displayed\nand ready to be played) by means of the script **abcweb-1.js**.  \nIf there is a large collection of tunes, it may be preferable to\nlink to the other script, **abcweb1-1.js**, which offers a tune selection.\nWithout an explicit\nselection (see below), a list of the tunes is displayed, and,\nafter a tune has been selected, the whole page is replaced by the music.\n(The HTML code, if any, is not displayed.)\nYou can go back to the list of the tunes thanks to the menu\non the top right corner of the screen. Here is [a real example][6].\n\n[6]: https://moinejf.pages-perso.free.fr/abc/boyvin-2-2.html \"J. Boyvin organ tunes\"\n\nAs you may notice in the menu, the edition of the ABC content is proposed.\nThis permits you, for example, to transpose the tunes.\nThis edition is done inside the browser, so, your changes will be lost\nafter leaving the page.\n\nWhen accessing such pages, an external selection of the tunes\ncan be accomplished by ending the URL with the character '`#`'\nfollowed by a [regular expression][7]\nto be applied to the tune headers.\nFor instance, here is the ['Duo' de J. Boyvin][8].\n\n[7]: https://en.wikibooks.org/wiki/Regular_Expressions \"Regular expressions\"\n[8]: https://moinejf.pages-perso.free.fr/abc/boyvin-2-2.html#T:Duo \"Duo\"\n\nWith any of the above scripts the music may be printed using\nthe 'Print' button of the browser. You should add a style as:  \n`       @media print{body{margin:0;padding:0;border:0}.nop{display:none}}`  \n\nto remove the margins, the error messages and the menus from the\nprinted pages.\n\n#### 1.4 Installing abc2svg on your system or on your server\n\nThe **abc2svg** package on my server is still being tuned\nwhich could change its behaviour at any unknown time; so you may\nprefer to install and run it from your own system. \n\nThere are many ways to install abc2svg:\n\n- [tarball][16] or [.zip archive][17] from my site  \n  Both files contain the scripts that are generated from the source\n  when abc2svg is stable enough. The scripts are ready\n  to be used from the root directory.\n\n[16]: https://moinejf.pages-perso.free.fr/abc2svg.tar.bz2 \"tarball\"\n[17]: https://moinejf.pages-perso.free.fr/abc2svg.zip \"ZIP file\"\n\n- [Guido Gonzato's page](https://abcplus.sourceforge.net/#abc2svg)  \n  Guido maintains a ZIP archive of the abc2vg scripts after\n  each release of a new version (many thanks, Guido!).  \n  You can just download and unzip this archive. **abc2svg** should\n  run immediately in your machine without connecting to my site.  \n  In the same page, you can also find some binaries of QuickJS,\n  a fast javascript interpreter (see below).\n\n- tarball  \n  From the timeline in the [chisel repository][13], you can get a tarball\n  of any version of the abc2svg source and install it in your system.  \n  The abc2svg scripts must then be built from the raw source files\n  described in the section 'Build' below.  \n  The disadvantage of this approach is that if you want\n  to use an other or newer version you need to download a new tarball.\n\n[13]: https://chiselapp.com/user/moinejf/repository/abc2svg/timeline\n\n- fossil clone  \n  If you can get the fossil program (one binary) for your system,\n  you may clone the chisel repository by  \n  `        fossil clone https://chiselapp.com/user/moinejf/repository/abc2svg abc2svg.fossil`  \n  `        fossil open abc2svg.fossil`  \n  and get the abc2svg source files containing the last changes\n  between the official versions. Updating your files is done by  \n  `        fossil pull`  \n  `        fossil update`  \n  Building the scripts is done in the same way as with a tarball.  \n  The repository is presently over 50Mb.\n\n  For those unfamiliar with [fossil][14], it is an integrated\n  software management system similar to [git](https://git-scm.com/).  \n  Chisel acts like a repository similar to [github](https://github.com/).\n\n[14]: https://fossil-scm.org/home/doc/trunk/www/index.wiki\n\nUsing bookmarklets with a local installation does not work directly\nbecause of a cross-domain security hole, but this is possible by running\na local HTTP server (you will also have to change the location\nof the scripts in the bookmarklet code).\n\nIf you have write access on a remote server, you may put there\nthe abc2svg scripts. There is no automatic process to do that.\nYou will have to\n[look at my site](https://moinejf.pages-perso.free.fr/js/ \"all abc2svg scripts\")\nto determine the files that need to be copied.\n\nIn addition, you have to set the correct location of the abc2svg scripts\nin your pages. As a trick, I put the abc2svg scripts in a folder\nat the same level as the HTML files:\n\n`        <script src=\"../js/abcweb-1.js\" defer></script>`\n\nThis allows the generation of the music to run either locally\nor remotely.\n\n### 2. Automatic creation of music sheets\n\n#### 2.1 abc2svg shell scripts\n\nAs you have seen, printing the music can be done easily with any web browser.\nYou can automate the process of creating music sheets\nwith **abc2svg** using shell scripts running a Javascript interpreter.\n\nThe interfaces to the various interpreters are different. Below you will\nfind the scripts I had to built.\n\n- `abcqjs` with `qjs` [QuickJS by Fabrice Bellard and Charlie Gordon][10]\n- `abcmjs` with `js78`, `js60`, `js52` or `js24` (Mozilla JavaScript shell)\n- `abcjsc` with `jsc` (webkit2gtk)\n- `abcnode` with `node` (nodeJS without module)\n\n[10]: https://bellard.org/quickjs/\n\nEach script gets the abc2svg options and ABC files from the command line\nand sends the generated file to `stdout` and possible errors to `stderr`.  \nThe general syntax of the command line is:  \n`        script [script.js] [options] ABC_file [[options] ABC_file]* [options]`\nwith:\n\n- `script.js` is an optional backend script.  \n  It defaults to `tohtml.js` (HTML+SVG)\n- `options` are the ABC options.  \n  For compatibility, the last options are moved before the last ABC file.\n\nThese scripts try to read a file `default.abc` at startup time.\nThis file and also the files included by `%%abc-include` are searched\nin the current directory or in the colon separated list of directories\ncontained in the environment variable `ABCPATH`.\n\n#### 2.2 Backend scripts\n\nBy default, the shell scripts generate (HTML+SVG) files.  \nThis output may be modified by backend scripts. These ones must appear\nimmediately following the name of the shell script.  \nThey are:\n\n- `toabc.js`  \n  This script returns the (selected) ABC tunes from the ABC source file  \n  applying transposition.  \n  The resulting file does not contain the formatting parameters.  \n  Example:  \n  `        abcqjs toabc.js my_file.abc --select X:2 > tune_2.abc`\n\n- `toabw.js`  \n  This script outputs an Abiword file (ABW+SVG) that can be read by some\n  word processors (abiword, libreoffice...). The word processor allows\n  you to convert the file to many other formats from a command line.  \n  The abc2svg music font (`abc2svf.woff` or `abc2svg.ttf`) must be installed\n  in the local system for displaying and/or converting the .abw file.  \n  Example:  \n  `        abcmjs toabw.js my_file.abc > my_file.abw`\n\n- `tomei.js`  \n  This script outputs the music as a [MEI](https://music-encoding.org/) file.  \n  Note, only one tune may be translated from ABC to MEI (multi-tunes ABC files\n  generate bad MEI files).\n\n- `tonotes.js`  \n  This script outputs a list of the MIDI events.\n\n- `toodt.js`  \n  This script creates an Open Document (ODT+SVG) which can be read by most\n  word processors (abiword, libreoffice...).  \n  When runs with the shell script `abc2svg`, it asks for the npm module\n  `jszip` to be installed.\n  When run with `abcqjs` on unix-like systems, it creates a temporary\n  directory tree in `/tmp`.  \n  The output ODT document may be specified in the command line argument\n  after `-o` (default `abc.odt`).  \n  Example:  \n  `        abcqjs toodt.js my_file.abc -o my_file.odt`\n\n- `toparam.js`  \n  This script just outputs the abc2svg parameters.\n\n- `tosvg.js`  \n  This script creates a SVG file that includes all the SVGs of the generation.\n\n    The included SVG images are updated for being correctly rendered by tools\n  that use librsvg, the SVG library for GNOME (feh, viewnior, swayimg...).\n\n#### 2.3 PDF generation\n\n`abctopdf` is a shell script which converts ABC to PDF using one of the\nprevious shell scripts and, either a chrome/chromium compatible web browser\n(settable by the environment variable 'BROWSER'),\nor the program [weasyprint](https://weasyprint.org/).\n\nNote also that, with `weasyprint`, the paper size is forced to A4.\nInstructions for changing this size may be found in the script source.\n\nThe output PDF document may be specified by the command line argument `-o`\n(default `abc.pdf`).\n\nExample:  \n`        abctopdf my_file.abc -o my_file.pdf`\n\n### 3. Build\n\nThe abc2svg scripts which are used to render the music\neither by a web browser or by a shell script must be built from\nthe source files you got by tarball or fossil clone.\n\nQuoting [Douglas Crockford](https://www.crockford.com/jsmin.html),\nminification is a process that removes comments and unnecessary whitespace from\nJavaScript files. It typically reduces file size by half, resulting in\nfaster downloads.\n\nIf you can run one of the tools [ninja](https://ninja-build.org/)\nor [samurai](https://github.com/michaelforney/samurai), you can build\nthe scripts\n\n- without minification  \n  This is useful for debugging purposes and the scripts are more human friendly.\n\n  `        NOMIN=1 samu -v`\n\n   or\n\n  `        NOMIN=1`  \n  `        export NOMIN`  \n  `        ninja -v`\n\n- in a standard way with minification  \n  In this case, you need one of the tools\n  [JSMin](https://www.crockford.com/jsmin.html) or\n `uglifyjs` which comes with nodeJS.\n\n  `        samu -v`\n\nIf you also want to change or add music glyphs, you may edit the source\nfile `font/abc2svg.sfd`.\nIn this case, you will need both `base64` and `fontforge`, and run\n\n`        samu -v font.js`\n\nIf you cannot or don't want to install `ninja` or `samurai`, you may build\nthe abc2svg files by the shell script `./build`.\n(This script must be run by a Posix compatible shell.)\n\n### 4. Inside the code of abc2svg\n\n#### 4.1 Core and modules\n\n`abc2svg-1.js` is the **abc2svg** core.  \nIt contains the ABC parser and the SVG generation engine.\nIt is needed for all music rendering. It is automatically loaded\nby the web scripts and the shell scripts.  \nIf you want to use the core with your own scripts,\nits API is described in the [wiki][11].\n\n[11]: https://chiselapp.com/user/moinejf/repository/abc2svg/wiki?name=interface-1\n\nThe core does not handle all the abc2svg commands/parameters.\nSome of them are treated by modules.\nA module is a script which is loaded in the browser or in the JS interpreter\nwhen the command it treats is seen in the ABC flow.  \nDetailed information about the modules may be found in the [wiki][12].\n\n[12]: https://chiselapp.com/user/moinejf/repository/abc2svg/wiki?name=modules\n\n#### 4.2 Internal information\n\n- The music is displayed as SVG images. There is one image per\n  music line / text block.  \n  If you want to move these images to some other files,\n  each one must contain the full CSS and defs. For that, insert  \n  `        %%fullsvg x`  \n  in the ABC file before rendering (see the\n  [fullsvg documentation](https://moinejf.pages-perso.free.fr/abcm2ps-doc/fullsvg.html)\n  for more information).\n\n- Playing uses the HTML5 audio and/or the midi APIs.  \n  For audio, by default, abc2svg uses a sound font (format SF2)\n  which is split into one file\n  per instrument. This sound font is stored in the subdirectory `Scc1t2/`.\n  Each instrument file is a base64 encoded javascript array.  \n\n\tOther sound fonts may be used. Some of them are stored in the subdirectory\n  `sf2/` (`AWE_ROM_gm` and `2MBGMGS`). Two formats are supported: raw SF2 and\n  SF2 wrapped into javascript (the raw SF2 files can be loaded\n  only when they are in the same HTTP domain).\n  The shell script `sf.sh` (in `sf2/`) may be used to create the javacript files\n  from raw SF2 files.\n\n\tThe sound font to be used for playing may be defined in the ABC code\n  by the command `%%soundfont`. E.g.:  \n  `        %%soundfont https://moinejf.pages-perso.free.fr/js/sf2/AWE_ROM_gm.js`\n\n- The names of the abc2svg scripts have a suffix which is the version of\n  the core interface (actually '`-1`').\n\n#### 4.3 More about the web scripts\n\nHere are the scripts which are used in a web context:\n\n- `abcweb-1.js`  \n  This script replaces the ABC sequences found in the (X)HTML file\n  by SVG images of the music.  \n  The ABC sequences are searched:\n  - first inside &lt;script&gt; elements with a type\n    [\"text/vnd.abc\"](https://www.iana.org/assignments/media-types/text/vnd.abc)\n    (the script tag is replaced by a &lt;div&gt;),\n  - or inside (X)HTML elements with a class `abc` (lower case letters),\n  - otherwise on `X:` or `%abc-` at start of line up to a XML tag at start of line.\n\n\tWhen a ABC sequence is not included in a &lt;script&gt; and when it contains\n  the characters '<', '>' or '&',\n  it must be enclosed in a XML comment or in a CDATA\n  (%&lt;![CDATA[ .. %]]&gt; - the comment or CDATA must be in a ABC comment).\n\n\tWhen using &lt;script&gt;, it is possible to set abc2svg parameters via CSS.\n  For that, the &lt;style&gt; in the HTML &lt;head&gt; may contain custom\n  properties (properties starting with '--') and these properties are converted\n  to abc2svg parameters (starting with '%%') before the ABC sequence.  \n  For instance, in the (&lt;head&gt;) &lt;style&gt; element, you can put:  \n  `        .parm {--pagewidth:30cm;  --bgcolor : yellow}`\n\n\tand in some &lt;script ..vnd.abc..&gt;, you set the class:  \n  `        <script class=\"parm\" type=\"text/vnd.abc\">`\n\n\tThis defines the page width and the background color of the generated music.\n\n\tSee the\n  [%%beginml documentation](https://moinejf.pages-perso.free.fr/abcm2ps-doc/beginml.html)\n  for an example, and here is [how to put inline music in HTML][15].   \n  Playing and highlighting the played notes may be offered loading\n  the script `snd-1.js` (see below).\n\n[15]: https://moinejf.pages-perso.free.fr/abcm2ps-doc/inline.html \"abc2svg - inline music\"\n\n    This script also accepts a parameter `with_source`.\n    When this parameter is set, the music source is included before the\n    SVG images of the music. The music source is displayed\n    in a &lt;pre&gt; element of class `source`. The SVG's are included\n    in a &lt;div&gt; of the same class `source`.\n    The source may be displayed either above (default) or\n    at the left side of the music (using a style as\n    `.source{display: inline-block; vertical-align: top}`).\n    See the source of\n    [abcm2ps/abc2svg features](https://moinejf.pages-perso.free.fr/abcm2ps-doc/features.html)\n    for an example.\n\n    The music source may be editable.\n    To change it, the script contains two functions:  \n    - `abc2svg.get_music` returns the source of the music sequence\n       (in &lt;script&gt; type \"text/vnd.abc\", class=\"abc\" or inlined ABC).\n       Its argument is the HTML &lt;div&gt; element that contains the music.  \n    - `abc2svg.set_music` has two arguments, the HTML &lt;div&gt; element\n       and the new source of the music.\n       It generates and replaces the music in the &lt;div&gt;.\n\n- `abcweb1-1.js`  \n  The page body is analyzed as a ABC file and its content is\n  replaced by music as SVG images.  \n  If the page contains reserved XML characters ('&lt;', '&gt;' and '&amp;'),\n  the ABC code must be enclosed in a\n  `         <script type=\"text/vnd.abc\"> .. </script>`\n  sequence.\n\n\tWhen there are many tunes in the file, the script displays a list\n  of the tunes. The list step may be bypassed when the URL of the file\n  contains a regular expression in the 'hash' value ('#' followed by\n  a string at the end of the URL).\n  This string does a\n  [%%select](https://moinejf.pages-perso.free.fr/abcm2ps-doc/select.html).\n\n\tWhen one or many tunes are displayed, a menu in the top/right corner\n  offers to go back to the tune list or to modify the ABC source.\n\n- `snd-1.js`  \n  This script may be used with `abcweb-1.js` or `abcweb1-1.js`\n  to play the rendered ABC music.  \n\n### 6. Credit\n\n**abc2svg** includes the following packages:\n\n- wps by Tomas Hlavaty  \n  <http://logand.com/sw/wps/log.html>\n\n- JavaScript SoundFont 2 Parser by imaya/GREE Inc and Colin Clark  \n  <https://github.com/colinbdclark/sf2-parser>\n\n- Scc1t2  \n  <http://www.ibiblio.org/thammer/HammerSound/localfiles/soundfonts/>\n\n- strftime by T. H. Doan  \n  <https://thdoan.github.io/strftime/>\n\n[Jean-François Moine](https://moinejf.pages-perso.free.fr)\n","readmeFilename":"README.md"}