ChordPro Configuration
Configuration files for ChordPro
| File match |
*.chordpro.json
chordpro.json
*.chordpro.yaml
*.chordpro.yml
chordpro.yaml
chordpro.yml
|
|---|---|
| Schema URL | https://catalog.lintel.tools/schemas/schemastore/chordpro-configuration/latest.json |
| Source | https://raw.githubusercontent.com/ChordPro/chordpro/master/lib/ChordPro/res/config/config.schema |
Validate with Lintel
npx @lintel/lintel check
See the ChordPro website for more details: https://www.chordpro.org/chordpro/chordpro-configuration-file/. This is a really relaxed JSON document, see https://metacpan.org/pod/JSON::Relaxed#REALLY-RELAXED-EXTENSIONS
All of
Definitions
Standard properties for backends.
Retain comments in the output.
Names of colours in theme.
Diagrams for the chords of the song can be shown at the "top", "bottom" or "right" side of the first page, or "below" the last song line. Set to false to not show any diagrams.
Alignment for when show is set to "top", "bottom" or "below".
Page format. All elements can have three fields, that are placed to the left side, centered, and right side of the page.
Three-part title format specification, left, center, right.
Three-part title format specification, left, center, right.
Three-part title format specification, left, center, right.
Page background.
This can be used to designate an existing PDF document to be used as the background of the output page. It has the form filename or filename:page. Page numbers count from one.
If odd/even printing is in effect, the designated page number is used for left pages, and the next page (if it exists) for right pages.
Shared properties between all delegate types.
The name of the (perl) module that implements the delegate.
Horizontal alignment of the resulting image, if type is image.
Type of the image produced. If not specified, it will be auto-detected.
For standard delegates, this is ignored, as they already know which type of image will be produced.
For cusotm delegates, this can be optionally specified if type is set to "image".
Input lines to prepend to the user data.
The program/command to execute.
Obsolete. Please use parser.preprocess.env-... instead.
If true, no delegation will be handled.
Specific settings for the HTML backend.
Specific settings for the PDF backend.
A shorthand description of a font. In the format of fontclass (bold)?(italic)? fontsize.
"serif bold 14""serif 11""serif 12""sans italic 10""sans italic 12""monospace 10""serif 11""sans 10""dingbats 10"
Font specification.
{ "description": "sans 12", "background": "foreground-light" }{ "description": "sans italic 12", "background": "foreground-light" }
Three-part title format specification, left, center, right.
A string that replaces occurrences of target/pattern.
Regular expression flags.
For the exceptional case you need brackets [] in your lyrics or annotations.
These characters are replaced by normal brackets after chord analysis.
E.g. parser.altbrackets: "«»"
Use wisely. Better still, don't use this.
Settings for the parser/preprocessor. For selected lines, you can specify a series of { "target" : "xxx", "replace" : "yyy" } Every occurrence of "xxx" will be replaced by "yyy". Use "pattern" instead of "target" for regular expression replacement. Use wisely.
3 nested properties
Appearance of chorus recall.
Default: print the tag using the type.
Alternatively quote the lines of the preceding chorus.
If no tag+type or quote: use {chorus}.
Note: Variant 'msp' always uses {chorus}.
{
"recall": {
"tag": "",
"type": "",
"quote": false
}
}
1 nested properties
3 nested properties
Label for recalled chorus.
Type for tag text.
Quote the chorus.
Each item in the array is 1 note, chromatically from C up to B. If the element is a string, it's the only possible representation of that note. If it's an array, it's all of its possible representations.