line |
true |
false |
branch |
113
|
0 |
169 |
unless ref $meta eq "HASH" |
116
|
0 |
169 |
if $main::options->{'verbose'} |
120
|
0 |
169 |
if ($lines->[0] =~ /^##config:\s*json/) |
125
|
0 |
0 |
if ($lines->[0] =~ /^# (.*)/) { } |
134
|
0 |
0 |
if ($cf) |
143
|
78 |
0 |
if (not $main::options->{'nosongconfig'} and $diag->{'file'}) |
144
|
0 |
78 |
if ($main::options->{'verbose'}) |
146
|
0 |
0 |
defined $this ? : |
149
|
0 |
0 |
$this eq $_ ? : |
152
|
0 |
78 |
if ($meta and $meta->{'__config'}) { } |
154
|
0 |
0 |
unless -s $cf |
155
|
0 |
0 |
if $main::options->{'verbose'} |
162
|
142 |
14 |
if $cf eq $diag->{'file'} |
163
|
156 |
0 |
unless -s $cf |
164
|
0 |
0 |
if $main::options->{'verbose'} |
173
|
0 |
0 |
if $main::options->{'verbose'} |
176
|
0 |
0 |
if ($tuncheck ne join("|", @{$main::config->{'tuning'};})) |
179
|
0 |
0 |
if $res |
183
|
0 |
0 |
if ($chords) |
185
|
0 |
0 |
if (@$c and $c->[0] eq "append") |
192
|
0 |
0 |
if $res |
195
|
0 |
0 |
if ($main::options->{'verbose'} > 1) |
196
|
0 |
0 |
if $chords |
212
|
0 |
169 |
if (%$defs) |
219
|
658 |
18 |
unless defined $main::options->{$_} |
223
|
0 |
169 |
unless (UNIVERSAL::isa($main::config->{'instrument'}, "HASH")) |
234
|
0 |
0 |
if (UNIVERSAL::isa($main::config->{'meta'}{$_}, 'ARRAY')) { } |
246
|
2 |
167 |
if ($target) { } |
247
|
2 |
0 |
unless ("ChordPro::Chords::Parser"->have_parser($target)) |
248
|
2 |
0 |
if (my $file = main::rsc_or_file("config/notes/$target.json")) |
256
|
0 |
2 |
unless ("ChordPro::Chords::Parser"->have_parser($target)) |
259
|
0 |
2 |
if $main::options->{'verbose'} |
263
|
0 |
2 |
if ($target ne $p->{'system'}) |
278
|
169 |
0 |
if $meta |
286
|
0 |
169 |
if ($main::options->{'meta'}) |
293
|
1 |
168 |
if ($main::config->{'settings'}{'memorize'}) { } |
302
|
0 |
1925 |
if ($skipcnt) { } |
327
|
0 |
1925 |
if ($main::config->{'debug'}{'echo'}) |
331
|
0 |
1925 |
if ($prep->{'all'}) |
335
|
0 |
0 |
if (/\n/) |
343
|
4 |
1921 |
if ($skip_context) |
344
|
2 |
2 |
if (/^\s*\{(\w+)\}\s*$/) |
346
|
2 |
0 |
if ($dir->{'name'} eq "end_of_$in_context") |
354
|
32 |
1889 |
if (/^\s*\{(new_song|ns)\}\s*$/) |
355
|
29 |
3 |
if $self->{'body'} |
359
|
55 |
1834 |
if (/^#/) |
364
|
1 |
54 |
if (/^##(image|asset):\s+(.*)/i) |
369
|
1 |
54 |
if ($kw eq "image") |
371
|
0 |
1 |
unless ($id) |
389
|
0 |
1 |
if ($info->{'error'}) |
401
|
0 |
1 |
if ($main::config->{'debug'}{'images'}) |
409
|
0 |
54 |
if ($kw eq "asset") |
412
|
0 |
0 |
unless ($id) |
416
|
0 |
0 |
unless ($type) |
435
|
0 |
0 |
if ($main::config->{'debug'}{'images'}) |
442
|
54 |
0 |
if (exists $self->{'title'} or $fragment) { } |
451
|
62 |
1772 |
if ($in_context eq "tab") |
452
|
49 |
13 |
unless (/^\s*\{(?:end_of_tab|eot)\}\s*$/) |
458
|
0 |
1785 |
if (exists $main::config->{'delegates'}{$in_context}) |
461
|
0 |
0 |
if (/^\s*\{(?:end_of_\Q$in_context\E)\}\s*$/) { } |
467
|
0 |
0 |
if ($self->{'body'} and @{$self->{'body'};} and $self->{'body'}[-1]{'context'} eq $in_context and $self->{'body'}[-1]{'open'}) { } |
477
|
0 |
0 |
if ($xpose or $main::config->{'settings'}{'transpose'}) |
495
|
997 |
788 |
if (/^\s*\{(.*)\}\s*$/) |
497
|
0 |
997 |
if ($prep->{'directive'}) |
502
|
1 |
996 |
unless $self->directive($dir) |
508
|
0 |
491 |
if (/\S/ and not $fragment and not exists $self->{'title'}) |
515
|
0 |
788 |
if ($in_context eq "tab") |
521
|
39 |
749 |
if ($in_context eq "grid") |
526
|
452 |
297 |
if (/\S/) { } |
|
297 |
0 |
elsif (exists $self->{'title'} or $fragment) { } |
527
|
0 |
452 |
if ($prep->{'songline'}) |
542
|
0 |
169 |
if $in_context |
548
|
0 |
169 |
if $main::options->{'verbose'} |
551
|
0 |
169 |
if $main::config->{'debug'}{'song'} > 1 |
553
|
1 |
168 |
if (@labels) |
562
|
0 |
0 |
unless $info |
565
|
0 |
0 |
if ($xc) |
572
|
2 |
428 |
unless is_true($v->{'diagram'} // 1) |
574
|
2 |
900 |
$suppress{$_} ? : |
577
|
5 |
164 |
if (exists $self->{'settings'}{'diagrams'}) { } |
585
|
0 |
169 |
if ($diagrams =~ /^(user|all)$/ and not "ChordPro::Chords::Parser"->get_parser($target, 1)->has_diagrams) |
588
|
0 |
0 |
unless $main::options->{'silent'} |
592
|
0 |
169 |
if ($diagrams eq 'user') { } |
594
|
0 |
0 |
if ($self->{'define'} and @{$self->{'define'};}) { } |
597
|
0 |
0 |
$h{$_->{'name'}} ? : |
605
|
591 |
309 |
$h{$_}++ ? : |
609
|
0 |
169 |
if ($main::config->{'diagrams'}{'sorted'}) |
618
|
114 |
55 |
if ($diagrams =~ /^(user|all)$/) |
626
|
0 |
114 |
if (%warned_chords) |
630
|
0 |
0 |
if (@a > 1) { } |
641
|
0 |
169 |
if $main::config->{'debug'}{'song'} |
642
|
0 |
169 |
if $main::config->{'debug'}{'songfull'} |
649
|
0 |
1220 |
if $skip_context |
652
|
1024 |
196 |
$lineinfo ? : |
654
|
106 |
1114 |
if ($in_context eq "chorus") |
666
|
0 |
937 |
unless length $orig |
669
|
3 |
934 |
if ($orig =~ /^\*(.+)/) |
680
|
927 |
7 |
if ($markup eq $c) |
686
|
0 |
934 |
if $c =~ s/^\((.*)\)$/$1/ |
691
|
0 |
934 |
unless (defined $info) |
704
|
7 |
927 |
if ($markup) { } |
|
927 |
0 |
elsif ((my $m = $orig) =~ s/\Q$c\E/%{formatted}/) { } |
705
|
6 |
1 |
if ($markup =~ s/\>\Q$c\E\>%{formatted} or $markup =~ s/\>\(\Q$c\E\)\>(%{formatted})) { } |
715
|
5 |
922 |
unless $m eq "%{formatted}" |
723
|
922 |
12 |
unless ($info->is_nc or $info->is_note) |
725
|
0 |
922 |
if ($main::config->{'instrument'}{'type'} eq 'keyboard') { } |
|
766 |
156 |
elsif ($info->{'origin'}) { } |
|
156 |
0 |
elsif ($main::running_under_test) { } |
|
0 |
0 |
elsif (not $info->is_rootless || $info->has_diagram || !$info->parser->has_diagrams) { } |
730
|
766 |
0 |
if $info->has_diagram |
741
|
0 |
0 |
unless $warned_chords{$c}++ |
751
|
575 |
1 |
if $orig eq $line |
755
|
233 |
343 |
if (@a <= 1) |
756
|
0 |
233 |
$orig ? : |
762
|
113 |
230 |
if $a[0] eq "" |
763
|
230 |
113 |
unless $a[0] =~ /$re_chords/ |
772
|
1008 |
27 |
if ($chord =~ s/^\[(.*)\]$/$1/ and $chord ne '^') { } |
|
20 |
7 |
elsif ($memchords and $in_context) { } |
773
|
230 |
778 |
$chord eq '' ? : |
774
|
21 |
987 |
if ($memchords and not $dummy) |
775
|
3 |
18 |
if ($memcrdinx == 0) |
778
|
20 |
1 |
if ($memorizing) |
782
|
0 |
20 |
if $main::config->{'debug'}{'chords'} |
790
|
1 |
19 |
if ($memcrdinx == 0 and @$memchords == 0) { } |
|
0 |
19 |
elsif ($memcrdinx >= @$memchords) { } |
802
|
0 |
19 |
if $main::config->{'debug'}{'chords'} |
815
|
1 |
342 |
$orig ? : |
823
|
124 |
0 |
unless $no_substitute |
825
|
110 |
14 |
unless $res{'chords'} |
833
|
0 |
39 |
if $line eq "" |
837
|
0 |
39 |
if (not $line =~ /\|/) { } |
842
|
0 |
39 |
if ($line =~ /(.*\|\S*)\s([^\|]*)$/) |
845
|
0 |
0 |
unless $grid_cells->[2] |
848
|
0 |
39 |
if ($line =~ /^([^|]+?)\s*(\|.*)/) |
851
|
0 |
0 |
unless $grid_cells->[1] |
863
|
0 |
663 |
if (/\
|
867
|
0 |
0 |
if m[\] |
874
|
0 |
663 |
if ($_ eq '|:' or $_ eq '{') { } |
|
0 |
663 |
elsif (/^\|(\d+)(>?)$/) { } |
|
0 |
663 |
elsif ($_ eq ':|' or $_ eq '}') { } |
|
0 |
663 |
elsif ($_ eq ':|:' or $_ eq '}{') { } |
|
149 |
514 |
elsif ($_ eq '|') { } |
|
2 |
512 |
elsif ($_ eq '||') { } |
|
0 |
512 |
elsif ($_ eq '|.') { } |
|
0 |
512 |
elsif ($_ eq '%') { } |
|
0 |
512 |
elsif ($_ eq '%%') { } |
|
0 |
512 |
elsif ($_ eq '/') { } |
|
395 |
117 |
elsif ($_ eq '.') { } |
879
|
0 |
0 |
if $2 |
912
|
116 |
1 |
if (@a == 1) { } |
919
|
0 |
2 |
$_ eq '/' ? : |
|
0 |
2 |
$_ eq '.' || $_ eq '' ? : |
929
|
0 |
39 |
if ($nbt > $grid_cells->[0]) |
1024
|
57 |
942 |
unless ($dirpat) |
1040
|
787 |
212 |
if ($d =~ /^(.*?)[: ]\s*(.*)/) |
1048
|
11 |
988 |
if ($dir =~ /^($dirpat)-(.+)$/) { } |
1058
|
6 |
5 |
if $negate |
1059
|
4 |
7 |
unless ($sel) |
1060
|
2 |
2 |
if ($dir =~ /^start_of_/) { } |
1079
|
2 |
995 |
if $dd->{'omit'} == 1 |
1082
|
784 |
211 |
if ($arg ne "") |
1084
|
0 |
784 |
unless $arg =~ /\S/ |
1090
|
76 |
919 |
if ($dir =~ /^start_of_(\w+)$/) |
1091
|
0 |
76 |
if $in_context |
1094
|
2 |
74 |
if ($dd->{'omit'}) |
1099
|
26 |
48 |
if $in_context eq "chorus" |
1101
|
25 |
49 |
if ($in_context eq 'grid') { } |
|
2 |
47 |
elsif ($arg and $arg ne '') { } |
1102
|
3 |
22 |
if ($arg eq '') { } |
|
22 |
0 |
elsif ($arg =~ /^
(?: (\d+) \+)?
(\d+) (?: x (\d+) )?
(?:\+ (\d+) )?
(?:[:\s+] (.*)? )? $/x) { } |
|
0 |
0 |
elsif ($arg ne '') { } |
1112
|
0 |
22 |
unless $2 |
1118
|
0 |
22 |
if length($5 || '') |
1134
|
2 |
0 |
unless $in_context eq "chorus" and not $main::config->{'settings'}{'choruslabels'} |
1137
|
0 |
47 |
if $arg |
1143
|
7 |
67 |
if ($main::config->{'settings'}{'memorize'}) |
1150
|
74 |
845 |
if ($dir =~ /^end_of_(\w+)$/) |
1151
|
0 |
74 |
unless $in_context eq $1 |
1160
|
30 |
815 |
if ($dir =~ /^chorus$/i) |
1161
|
0 |
30 |
if ($in_context) |
1167
|
29 |
1 |
@chorus ? : |
1169
|
0 |
29 |
if (@$chorus and $arg and $arg ne "") |
1170
|
0 |
0 |
if ($chorus->[0]{'type'} eq 'set' and $chorus->[0]{'name'} eq 'label') { } |
1182
|
0 |
0 |
if $main::config->{'settings'}{'choruslabels'} |
1185
|
17 |
13 |
if ($chorus_xpose != (my $xp = $xpose)) |
1188
|
16 |
16 |
if ($_->{'type'} eq "songline") |
1190
|
15 |
46 |
if $_ eq "" |
1192
|
0 |
46 |
if $info->is_annotation |
1193
|
46 |
0 |
if $xp |
1205
|
29 |
1 |
@$chorus ? : |
1217
|
13 |
802 |
if ($dir eq "column_break") |
1222
|
16 |
786 |
if ($dir eq "new_page" or $dir eq "new_physical_page") |
1227
|
0 |
786 |
if ($dir eq "new_song") |
1233
|
124 |
662 |
if ($dir =~ /^comment(_italic|_box)?$/) |
1237
|
124 |
0 |
unless exists $res{'text'} and $res{'text'} =~ /^[ \t]*$/ |
1242
|
3 |
659 |
if ($dir eq "image") |
1248
|
1 |
8 |
if ($k =~ /^(title)$/i and $v ne '') { } |
|
2 |
6 |
elsif ($k =~ /^(border|spread|center)$/i and $v =~ /^(\d+)$/) { } |
|
2 |
4 |
elsif ($k =~ /^(width|height)$/i and $v =~ /^(\d+(?:\.\d+)?\%?)$/) { } |
|
0 |
4 |
elsif ($k =~ /^(x|y)$/i and $v =~ /^([-+]?\d+(?:\.\d+)?\%?)$/) { } |
|
1 |
3 |
elsif ($k =~ /^(scale)$/ and $v =~ /^(\d+(?:\.\d+)?)(%)?$/) { } |
|
0 |
3 |
elsif ($k =~ /^(center|border|spread)$/i) { } |
|
0 |
3 |
elsif ($k =~ /^(src|uri)$/i and $v ne '') { } |
|
1 |
2 |
elsif ($k =~ /^(id)$/i and $v ne '') { } |
|
0 |
2 |
elsif ($k =~ /^(anchor)$/i and $v =~ /^(paper|page|column|line)$/) { } |
|
0 |
2 |
elsif ($uri) { } |
1261
|
0 |
1 |
$2 ? : |
1289
|
2 |
1 |
if ($uri and not $uri =~ m[/\\]) |
1292
|
2 |
0 |
if -s "$_/$uri" |
1294
|
0 |
0 |
unless $_ |
1295
|
0 |
0 |
if -s $_ |
1302
|
0 |
3 |
if ($uri and $id) |
1304
|
0 |
0 |
if (%opts) |
1310
|
0 |
0 |
unless ($fd) |
1317
|
0 |
0 |
if ($info->{'error'}) |
1329
|
0 |
0 |
if ($main::config->{'debug'}{'images'}) |
1337
|
1 |
2 |
if $id |
1338
|
0 |
3 |
unless ($uri) |
1342
|
0 |
3 |
$uri =~ /\.svg$/ ? : |
1348
|
173 |
486 |
if ($dir eq "title") |
1354
|
28 |
458 |
if ($dir eq "subtitle") |
1362
|
225 |
233 |
if (&any(sub {
$_ eq $dir;
}
, @{$$main::config{"metadata"}{"keys"};})) |
1368
|
263 |
195 |
if ($dir eq "meta") |
1369
|
263 |
0 |
if ($arg =~ /([^ :]+)[ :]+(.*)/) { } |
1372
|
256 |
7 |
if ($main::config->{'metadata'}{'autosplit'}) |
1379
|
0 |
263 |
if ($key eq "user" or $key eq "instrument") |
1386
|
92 |
171 |
if ($key eq "key") |
1392
|
0 |
92 |
if ($capo) |
1394
|
0 |
0 |
if $decapo |
1405
|
16 |
155 |
if ($key eq 'capo') { } |
|
9 |
292 |
elsif ($key eq 'duration' and $val) { } |
1407
|
1 |
15 |
if exists $m->{'capo'} |
1410
|
16 |
0 |
if ($capo and $m->{'key'}) |
1411
|
4 |
12 |
if ($decapo) { } |
1435
|
0 |
171 |
if ($main::config->{'metadata'}{'strict'} and not &any(sub {
$_ eq $key;
}
, @{$$main::config{"metadata"}{"keys"};})) |
1439
|
0 |
0 |
if $main::config->{'settings'}{'strict'} |
1443
|
171 |
0 |
if defined $val |
1448
|
0 |
0 |
if $main::config->{'settings'}{'strict'} |
1456
|
22 |
173 |
if ($dir eq "titles" and $arg =~ /^(left|right|center|centre)$/i) |
1459
|
1 |
21 |
lc $1 eq 'centre' ? : |
1463
|
19 |
154 |
if ($dir eq "columns" and $arg =~ /^(\d+)$/) |
1467
|
19 |
0 |
unless (ref $main::config->{'settings'}{'columns'} eq "ARRAY" and $arg == @{$main::config->{'settings'}{'columns'};}) |
1475
|
2 |
152 |
if ($dir eq "pagetype" or $dir eq "pagesize") |
1480
|
2 |
150 |
if ($dir eq "diagrams") |
1481
|
1 |
1 |
if ($arg ne '') { } |
1483
|
1 |
0 |
if $arg =~ /^(right|bottom|top|below)$/i |
1491
|
3 |
147 |
if ($dir eq "no_grid") |
1496
|
53 |
94 |
if ($dir eq "transpose") |
1499
|
32 |
21 |
if ($arg =~ /^([-+]?\d+)\s*$/) { } |
1509
|
22 |
10 |
if ($m->{'key'}) |
1512
|
2 |
20 |
if $capo |
1518
|
0 |
32 |
if $no_transpose |
1528
|
21 |
0 |
if (@{$propstack{'transpose'};}) { } |
1537
|
15 |
6 |
if ($m->{'key'}) |
1540
|
0 |
15 |
if $capo and $decapo |
1544
|
12 |
9 |
unless (@{$propstack{'transpose'};}) |
1547
|
0 |
21 |
if $no_transpose |
1554
|
0 |
94 |
if (not $main::options->{'reference'} and $d =~ /^([-+])([-\w.]+)$/i) |
1555
|
0 |
0 |
if ($2 eq "dumpmeta") |
1558
|
0 |
0 |
$1 eq '+' ? : |
1565
|
11 |
83 |
if (not $main::options->{'reference'} and $dir =~ /^\+([-\w.]+(?:\.[<>])?)$/) |
1586
|
0 |
11 |
if (ref $o eq "HASH" and ref $o->{$lk} eq "ARRAY") |
1593
|
0 |
11 |
if ($lk =~ /^\d+$/ || $lk eq '>' || $lk eq '<' and ref $o eq 'ARRAY') { } |
1595
|
0 |
0 |
unless (ref $$c eq "ARRAY") |
1599
|
0 |
0 |
if ($lk eq '>') { } |
|
0 |
0 |
elsif ($lk eq '<') { } |
1620
|
24 |
59 |
if ($dir =~ /^(text|chord|tab|grid|diagrams|title|footer|toc)(font|size|colou?r)$/) |
1625
|
8 |
16 |
if $prop eq "colour" |
1629
|
0 |
24 |
if ($value eq "") |
1631
|
0 |
0 |
if (@{$propstack{$name};}) |
1635
|
0 |
0 |
if (@{$propstack{$name};}) { } |
1648
|
8 |
16 |
if ($prop eq "size") |
1649
|
0 |
8 |
unless ($value =~ /^\d+(?:\.\d+)?\%?$/) |
1654
|
8 |
16 |
if ($prop =~ /^colou?r$/) |
1656
|
0 |
8 |
unless ($v = get_color($value)) |
1662
|
8 |
16 |
$prop eq 'font' ? : |
1670
|
0 |
24 |
if ($prop eq "font" and $value =~ /\s(\d+(?:\.\d+)?)$/) |
1686
|
58 |
1 |
if ($dir eq "define" or $dir eq "chord") |
1693
|
0 |
1 |
if $main::config->{'settings'}{'strict'} and not $d =~ /^x_/ |
1700
|
942 |
49 |
if ($new_id) { } |
1701
|
10 |
932 |
if ($new_id eq 1) |
1724
|
2 |
68 |
unless @a |
1738
|
11 |
151 |
if ($a eq 'copy' or $a eq 'copyall') { } |
|
2 |
149 |
elsif ($a eq 'display' and @a) { } |
|
9 |
140 |
elsif ($a eq 'format' and @a) { } |
|
46 |
94 |
elsif ($a eq 'base-fret') { } |
|
57 |
37 |
elsif ($a eq 'frets') { } |
|
16 |
21 |
elsif ($a eq 'fingers') { } |
|
8 |
13 |
elsif ($a eq 'keys') { } |
|
13 |
0 |
elsif ($a eq 'diagram' and @a > 0) { } |
1739
|
11 |
0 |
if (my $i = ChordPro::Chords::known_chord($a[0])) { } |
1755
|
0 |
2 |
unless $kv{'display'} eq shift @a |
1757
|
0 |
2 |
unless defined $kv{'display'} |
1767
|
46 |
0 |
if ($a[0] =~ /^\d+$/) { } |
1782
|
57 |
0 |
if (@f == $strings) { } |
1783
|
302 |
40 |
$_ =~ /^\d+/ ? : |
1799
|
90 |
6 |
if (/^[0-9]+$/) { } |
|
0 |
6 |
elsif (/^[A-MO-WYZ]$/) { } |
|
6 |
0 |
elsif (/^[-xNX]$/) { } |
1813
|
16 |
0 |
if (@f == $strings) { } |
1830
|
8 |
0 |
if (@f) { } |
1841
|
0 |
13 |
if ($show and not is_true($a[0])) |
1859
|
0 |
70 |
if $fail |
1867
|
70 |
0 |
if ($info) { } |
1874
|
8 |
62 |
if ($show) |
1885
|
59 |
11 |
unless defined $_ |
1890
|
0 |
11 |
if ($kv{'copyall'}) |
1896
|
11 |
129 |
if defined $kv{$_} |
1900
|
13 |
57 |
if (defined $kv{'diagram'}) |
1902
|
7 |
6 |
if (is_true($v)) { } |
1903
|
6 |
1 |
if (is_ttrue($v)) |
1916
|
282 |
138 |
unless defined $kv{$_} |
1922
|
8 |
62 |
$show ? : |
1926
|
8 |
62 |
if ($show) |
1930
|
2 |
6 |
if (defined $self->{'body'} and $self->{'body'}[-1]{'type'} eq 'diagrams') { } |
1945
|
250 |
246 |
unless defined $res->{$_} |
1950
|
0 |
62 |
if ($ret) |
1955
|
0 |
62 |
unless $info |
1957
|
0 |
62 |
if $main::config->{'debug'}{'x1'} |
1965
|
9 |
0 |
if ($dur =~ /(?:(?:(\d+):)?(\d+):)?(\d+)/) |
1966
|
0 |
9 |
$2 ? : |
|
0 |
9 |
$1 ? : |
2011
|
0 |
1112 |
if $debug |
2014
|
4 |
1108 |
if $capo and $decapo |
2020
|
72 |
1040 |
if $def |
2023
|
880 |
232 |
if ($info) { } |
2025
|
0 |
880 |
if $debug > 1 |
2026
|
0 |
880 |
if $debug > 1 |
2032
|
0 |
232 |
if $info and $debug > 1 |
2036
|
21 |
1091 |
if ($def || $xp || $xc and not $info && $info->is_xpxc) |
2043
|
0 |
0 |
unless ($info and $info->is_xpxc or $def and not $xc || $xp) |
2050
|
0 |
0 |
$xp ? : |
|
0 |
0 |
$xc ? : |
|
0 |
0 |
if $xp or $xc or $main::config->{'debug'}{'chords'} |
2053
|
156 |
956 |
if ($xp and $info) |
2057
|
0 |
156 |
if $debug > 1 |
2063
|
1112 |
0 |
if ($info) |
2065
|
885 |
227 |
if (my $i = ChordPro::Chords::known_chord($info)) { } |
|
0 |
227 |
elsif ($main::config->{'instrument'}{'type'} eq 'keyboard' and my $k = ChordPro::Chords::get_keys($info)) { } |
2068
|
0 |
885 |
if $debug > 1 |
2074
|
0 |
0 |
if $debug > 1 |
2080
|
0 |
227 |
if $debug |
2087
|
20 |
1092 |
if ($xc and $info) |
2090
|
14 |
6 |
if $self->{'meta'}{'key'} |
2091
|
0 |
20 |
if ($xcmov and not defined $key_ord) |
2098
|
0 |
20 |
if $debug > 1 |
2100
|
8 |
12 |
if (my $i = ChordPro::Chords::known_chord($info)) |
2101
|
0 |
8 |
if $debug > 1 |
2108
|
0 |
1112 |
unless ($info) |
2109
|
0 |
0 |
if (my $i = ChordPro::Chords::known_chord($chord)) |
2113
|
0 |
0 |
if $debug > 1 |
2118
|
0 |
1112 |
unless ($info or $def) |
2119
|
0 |
0 |
if ($main::config->{'debug'}{'chords'} or not $warned_chords{$chord}++) |
2120
|
0 |
0 |
if $debug |
2121
|
0 |
0 |
unless $chord =~ /^n\.?c\.?$/i |
2126
|
1112 |
0 |
if ($info) |
2127
|
0 |
0 |
$unk ? : |
|
0 |
1112 |
if $debug > 1 |
2136
|
0 |
0 |
if $debug |
2149
|
0 |
13 |
if $self->{'structure'} eq "structured" |
2155
|
56 |
195 |
if ($item->{'type'} eq "empty" and $item->{'context'} eq $def_context) |
2159
|
36 |
159 |
if ($item->{'type'} eq "songline" and $item->{'context'} eq "") |
2162
|
49 |
146 |
if ($context ne $item->{'context'}) |
2165
|
135 |
60 |
if ($context) { } |
2180
|
0 |
0 |
unless ($full) |