lorid

convert chordpro to pdf
git clone git://git.relim.de/lorid.git
Log | Files | Refs | README | LICENSE

lorid_config.5 (6547B)


      1 .TH LORID_CONFIG "5" "January 2025" "File Formats Manual"
      2 .SH NAME
      3 .B ~/.config/lorid/config.toml
      4 - lorid configuration file
      5 .SH DESCRIPTION
      6 The config file will be parsed as TOML version 1.0.
      7 
      8 Run
      9 .RB ` lorid
     10 .BR --print-default-config `
     11 for an example config.
     12 
     13 metadata_separator = String
     14 
     15 => default value: "; "
     16 
     17 .SS [notation_systems]
     18 In this section you can define custom notation systems
     19 beside the predefined notation systems which are:
     20 .BR \(dqcommon\(dq ,
     21 .BR \(dqgerman\(dq ,
     22 .BR \(dqscandinavian\(dq ,
     23 .BR \(dqlatin\(dq ,
     24 .BR \(dqroman\(dq
     25 and
     26 .BR \(dqnashville\(dq .
     27 A notation system is an array of exactly seven tables.
     28 Each table has the key 'note' and depending on the array position also has the keys 'sharp' and/or 'flat'.
     29 See the
     30 .B EXAMPLE
     31 section to learn how to use it.
     32 To see the predefined notation systems execute
     33 .B lorid
     34 .BR --print-default-config .
     35 
     36 .SS [parser]
     37 .SS [parser.chords]
     38 mode = String
     39 
     40 => allowed values: "strict", "relaxed"
     41 
     42 => default value: "strict"
     43 
     44 .RS 4
     45 Currently this setting doesn't have any effect.
     46 .RE
     47 
     48 notation_system = String
     49 
     50 => allowed values: "common", "german", "scandinavian", "latin", "roman", "nashville", "<custom>"
     51 
     52 => default value: "common"
     53 
     54 .RS 4
     55 Specify a predefined or custom notation system from the [notation_systems] section.
     56 When parsing chordpro text only chords from this selected notation system are recognized. Notice that unrecognized chords are only problematic if you want to transpose them or show their chord diagram.
     57 .RE
     58 .SS [output]
     59 notation_system = String
     60 
     61 => allowed values: "common", "german", "scandinavian", "latin", "roman", "nashville", "<custom>"
     62 
     63 => default value: "common"
     64 
     65 .RS 4
     66 Specify a predefined or custom notation system from the [notation_systems] section.
     67 When generating the PDF file chords from this selected notation system will be printed.
     68 .RE
     69 
     70 start_song_on_new_page = Boolean
     71 
     72 => default value: true
     73 
     74 .RS 4
     75 Every song starts at the top of the page.
     76 .RE
     77 
     78 .SS [output.chorus]
     79 
     80 This section controls the output of the {chorus} directive.
     81 
     82 label = String
     83 
     84 => default value: "Chorus"
     85 
     86 .RS 4
     87 If you didn't specify a directive label this is the default label text.
     88 .RE
     89 
     90 quote = Boolean
     91 
     92 => default value: false
     93 
     94 .RS 4
     95 Control whether to print the last previously defined chorus.
     96 .RE
     97 
     98 .SS [output.chord_diagram]
     99 show = Boolean
    100 
    101 => default value: true
    102 
    103 .RS 4
    104 Control whether to show chord diagrams of recognized chords at the bottom of the first page of the song.
    105 .RE
    106 
    107 instrument = String
    108 
    109 => allowed values: "guitar", "mandolin", "ukulele" \",  "keyboard"
    110 
    111 => default value: "guitar"
    112 
    113 .RS 4
    114 The instrument controls which style the chord diagram has.
    115 
    116 In case of "guitar", "mandolin" or "ukulele" the chord diagram shows part of a fretboard.
    117 The number of strings shown is controlled by the number of frets that the chord diagram defines.
    118 Every instrument comes with a few predefined chord diagrams.
    119 Predefined guitar chord diagrams have six frets.
    120 Predefined mandolin chord diagrams have four frets.
    121 Predefined ukulele chord diagrams have also four frets.
    122 
    123 \" In case of "keyboard" the chord diagram shows part of a fingerboard.
    124 .RE
    125 
    126 .SS [output.page_no]
    127 
    128 At the bottom of every page a page number can be shown.
    129 
    130 Page numbers that belong to pages of the table of contents will be shown in the roman numeral system (I, II, III).
    131 
    132 Page numbers that belong to pages that show songs will be shown in the western arabic numeral system (1, 2, 3).
    133 
    134 show = Boolean
    135 
    136 => default value: true
    137 
    138 .RS 4
    139 Control whether to show a page number at the bottom of every page.
    140 .RE
    141 
    142 alignment = String
    143 
    144 => allowed values: "left", "center", "right"
    145 
    146 => default value: "center"
    147 
    148 .RS 4
    149 This controls the page number's alignment.
    150 .RE
    151 
    152 .SS [output.toc]
    153 show = Boolean
    154 
    155 => default value: false
    156 
    157 .RS 4
    158 Control whether to show the table of contents.
    159 .RE
    160 
    161 title = String
    162 
    163 => default value: "Table Of Contents"
    164 
    165 .RS 4
    166 The specified string will be shown centered and above the table of contents.
    167 .RE
    168 
    169 .SS [output.styles]
    170 
    171 In this section you can control the style of various parts of the song or the PDF page. The following styles are available:
    172 .BR chord ,
    173 .BR annotation ,
    174 .BR chorus , \" .BR footer ,
    175 .BR grid ,
    176 .BR tab ,
    177 .BR toc ,
    178 .BR toc_title ,
    179 .BR text ,
    180 .BR title ,
    181 .BR subtitle ,
    182 .BR label ,
    183 .BR comment ,
    184 .BR comment_italic ,
    185 .BR comment_box .
    186 
    187 If you set the color of something you can provide a 4 or 7 characters long hex color code
    188 as in "#EA2" or "#F1F1F1".
    189 Alternatively you can provide one of the following predefined color values:
    190 .BR \(dqred\(dq ,
    191 .BR \(dqgreen\(dq ,
    192 .BR \(dqblue\(dq ,
    193 .BR \(dqyellow\(dq ,
    194 .BR \(dqmagenta\(dq ,
    195 .BR \(dqcyan\(dq ,
    196 .BR \(dqwhite\(dq ,
    197 .BR \(dqgrey\(dq ,
    198 .BR \(dqblack\(dq .
    199 
    200 .SS [output.styles.<style>]
    201 
    202 foreground_color = String
    203 
    204 .RS 4
    205 Set the color of the text.
    206 .RE
    207 
    208 background_color = String
    209 
    210 .RS 4
    211 Set the fill color of the rectangle that will be drawn around the text.
    212 The rectangle has angularly borders.
    213 .RE
    214 
    215 underline_style = String
    216 
    217 => allowed values: "single", "double", "none"
    218 
    219 .RS 4
    220 In case of "single" a line is drawn under the text.
    221 In case of "double" two lines are drawn under the text.
    222 In case of "none" no line is drawn under the text.
    223 .RE
    224 
    225 underline_color = String
    226 
    227 overline_style = String
    228 
    229 => allowed values: "single", "double", "none"
    230 
    231 .RS 4
    232 In case of "single" a line is drawn above the text.
    233 In case of "double" two lines are drawn above the text.
    234 In case of "none" no line is drawn above the text.
    235 .RE
    236 
    237 overline_color = String
    238 
    239 strikethrough = Boolean
    240 
    241 strikethrough_color = String
    242 
    243 boxed = Boolean
    244 
    245 .RS 4
    246 Control whether a rectangle is drawn around the text.
    247 The rectangle has angularly borders.
    248 .RE
    249 
    250 boxed_color = String
    251 
    252 rise = Float
    253 
    254 .RS 4
    255 Specify a positive value to increase the text baseline and a negative value to decrease the text baseline.
    256 .RE
    257 
    258 href = String
    259 
    260 .RS 4
    261 Clicking on the corresponding text tries to open the provided href in a browser.
    262 .RE
    263 
    264 .SH EXAMPLE
    265 .EX
    266 # ~/.config/lorid/config.toml
    267 
    268 [notation_systems]
    269 mycustom = [
    270 	{ note = "C", sharp = "C#", },
    271 	{ note = "D", sharp = "D#", flat = "Db" },
    272 	{ note = "E", flat = "Eb" },
    273 	{ note = "F", sharp = "F#", },
    274 	{ note = "G", sharp = "G#", flat = "Gb" },
    275 	{ note = "A", sharp = "A#", flat = "Ab" },
    276 	{ note = "B", flat = "Bb" },
    277 ]
    278 
    279 [parser]
    280 notation_system = "mycustom"
    281 
    282 [output]
    283 notation_system = "german"
    284 
    285 [output.toc]
    286 show = true
    287 title = "Contents"
    288 
    289 [output.page_no]
    290 alignment = "right"
    291 
    292 [output.styles.chorus]
    293 background_color = "grey"
    294 
    295 [output.styles.chorus.font]
    296 name = "Liberation Mono"
    297 size = 12.0
    298 .EE
    299 
    300 .SH SEE ALSO
    301 .BR lorid (1)