Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Finding ABC tools #351

Open
sciurius opened this issue Feb 29, 2024 · 1 comment
Open

Finding ABC tools #351

sciurius opened this issue Feb 29, 2024 · 1 comment

Comments

@sciurius
Copy link
Collaborator

sciurius commented Feb 29, 2024

In ChordPro 6.060 the strategy used to find the tools to process ABC data will change.

Introduction

To embed ABC into the generated PDF, The ABC data must be processed to SVG (Scalable Vector Graphics) format. This is most conveniently done by a set of JavaScript files called ABC2SVG written by Jean-François Moine. ChordPro packages the JavaScript files in the kit, but to run the JavaScript, ChordPro needs a JavaScript interpreter.

Strategies

Preferred: Built-in ABC support using the QuickJS extension JavaScript::QuickJS. This module can be installed from CPAN, but it may be possible that your distro has a prebuilt install kit.
The installer kits for Windows and MacOS have QuickJS bundled.

Second, built-in ABC support using an external QuickJS interpreter. It may be possible that your distro has a prebuilt install kit.

These can be overruled with an external tool that processes the ABC data and produces the SVG for ChordPro to process. For example, the tool abcnode that comes with some ABC2SVG kits. However, to use such an external tool you must add it as program to the config:

    "delegates" : {
        "abc" : {
            "type"     : "image",
            "module"   : "ABC",
            "handler"  : "abc2svg",
            "program"  : "",		// specify program tool here if needed
            ...
        }

What changes?

Before 6.060 an external tool with name abc2svg or abcnode was always tried first. This sometimes lead to suboptiomal or even undesired results since the version of these tools often lagged behind the official ABC2SVG kit.

As of 6.060 the external tool is only used when explicitly designated in the config.

Does this affect you?

If so, join the discussion below.

@timmbo9
Copy link

timmbo9 commented Mar 1, 2024

As an avid user of abc2svg for scores and chordpro for charts (with occasional abc snippets included) i welcome this new strategy allowing me to utilize the latest version of abc2svg in a simple consistent way. Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants