| line |
true |
false |
branch |
|
49
|
0 |
0 |
unless $sb->{'songs'}[0]{'body'} or $sb->{'songs'}[0]{'source'}{'embedding'} |
|
60
|
8 |
0 |
if ($main::options->{'toc'} // @{$sb->{'songs'};} > 1) |
|
63
|
8 |
0 |
unless $_->{'omit'} |
|
65
|
0 |
8 |
if $main::options->{'title'} |
|
67
|
0 |
8 |
if $pagectrl->{'cover'} and not $main::options->{'title'} |
|
68
|
3 |
5 |
if $pagectrl->{'front_matter'} |
|
69
|
3 |
5 |
if $pagectrl->{'back_matter'} |
|
70
|
8 |
0 |
if $main::options->{'csv'} |
|
75
|
1 |
7 |
if ($pagectrl->{'align_songs_spread'}) |
|
78
|
0 |
8 |
if ($pagectrl->{'sort_songs'}) |
|
81
|
0 |
8 |
if ($pagectrl->{'compact_songs'}) |
|
83
|
0 |
0 |
unless defined $prefill |
|
92
|
0 |
8 |
if $main::options->{'verbose'} |
|
95
|
0 |
8 |
if $regtest |
|
99
|
24 |
8 |
unless defined $v and $v ne "" |
|
127
|
1 |
7 |
if $prefill and is_even($page_offset) |
|
138
|
3 |
5 |
if ($pagectrl->{'back_matter'}) |
|
140
|
0 |
3 |
unless $back_matter |
|
144
|
0 |
3 |
if $pagectrl->{'align_songs_extend'} |
|
150
|
3 |
21 |
if is_odd($page_offset) |
|
153
|
0 |
24 |
if ($song->{'meta'}{'pages'}) { } |
|
154
|
0 |
0 |
if (($page + $page_offset) % 2 and $song->{'meta'}{'pages'} and $song->{'meta'}{'pages'} == 2) |
|
170
|
0 |
24 |
if ($sb->{'assets'} and %{$sb->{'assets'};}) |
|
177
|
0 |
24 |
unless progress("msg", $song->{'meta'}{'title'}[0]) |
|
194
|
24 |
0 |
if ($song->{'meta'}{'bookmark'}) { } |
|
196
|
24 |
0 |
if $pages |
|
212
|
0 |
0 |
$main::config->{'toc'}{'order'} eq 'alpha' ? : |
|
216
|
8 |
0 |
if ($extra_matter) |
|
226
|
0 |
24 |
unless $main::options->{'toc'} // @book > 1 |
|
229
|
96 |
0 |
if exists $ctl->{$_} |
|
232
|
8 |
16 |
if $ctl->{'omit'} |
|
246
|
16 |
0 |
if ($ctl->{'template'}) |
|
248
|
0 |
16 |
if ($tpl =~ /\.\w+/) { } |
|
251
|
0 |
0 |
unless $tmplfile |
|
255
|
0 |
16 |
if ($verbose) |
|
256
|
0 |
0 |
$tmplfile ? : |
|
266
|
0 |
16 |
if ($tmplfile) { } |
|
282
|
16 |
0 |
$_->{'title'} ? : |
|
289
|
0 |
16 |
if (@songs > 1) |
|
293
|
0 |
0 |
if defined $main::options->{'title'} |
|
296
|
0 |
0 |
if defined $main::options->{'subtitle'} |
|
304
|
0 |
16 |
if ($ctl->{'break'}) { } |
|
313
|
0 |
0 |
if ($nl and $break ne $prevbreak) |
|
319
|
0 |
0 |
$break ne $prevbreak ? : |
|
349
|
8 |
0 |
if ($frontmatter_songbook and @{$frontmatter_songbook->{'songs'};}) |
|
350
|
0 |
8 |
unless progress("msg", "ToC") |
|
360
|
0 |
16 |
$pagectrl->{'align_tocs'} eq 'songs' ? : |
|
363
|
0 |
16 |
$pagectrl->{'align_tocs'} eq 'songs' ? : |
|
385
|
16 |
0 |
if $pages |
|
393
|
3 |
5 |
if ($pagectrl->{'front_matter'}) |
|
396
|
0 |
3 |
unless $matter |
|
397
|
0 |
3 |
unless progress("msg", "Front matter") |
|
408
|
0 |
8 |
if (defined $main::options->{'title'} and not @tocs) |
|
411
|
0 |
0 |
if ($verbose) |
|
412
|
0 |
0 |
$covertpl ? : |
|
416
|
0 |
8 |
if ($covertpl) { } |
|
|
0 |
8 |
elsif (defined $pagectrl->{'cover'}) { } |
|
428
|
0 |
0 |
$main::options->{'title'} ? : |
|
431
|
0 |
0 |
$main::options->{'subtitle'} ? : |
|
452
|
0 |
0 |
unless $cover |
|
454
|
0 |
0 |
unless progress("msg", "Cover") |
|
464
|
3 |
5 |
if ($back_matter) |
|
466
|
0 |
3 |
unless progress("msg", "Back matter") |
|
469
|
0 |
3 |
unless 1 + $main::pr->{'pdf'}->pages == $start_of{'back'} |
|
488
|
6 |
2 |
if ($pagectrl->{'dual_pages'}) |
|
492
|
6 |
18 |
unless $pages_of{$part} |
|
497
|
15 |
3 |
if (@parts) { } |
|
498
|
1 |
5 |
$prefill ? : |
|
|
6 |
9 |
$part eq 'songbook' ? : |
|
|
8 |
7 |
if ($main::pr->page_align($pagectrl, $part, $start_of{$part}, $part eq "songbook" ? $prefill ? 1 : is_odd($page_offset) : 0)) |
|
517
|
0 |
8 |
if ($main::config->{'debug'}{'pages'} & 1) |
|
528
|
3 |
5 |
if $pages_of{'front'} |
|
530
|
8 |
0 |
if $pages_of{'toc'} |
|
534
|
8 |
0 |
if $pages_of{'songbook'} |
|
536
|
3 |
5 |
if $pages_of{'back'} |
|
540
|
18 |
14 |
unless $pages_of{$_} |
|
549
|
0 |
8 |
if $main::options->{'verbose'} |
|
551
|
8 |
0 |
if ($main::options->{'csv'}) |
|
552
|
0 |
8 |
unless progress("msg", "CSV") |
|
565
|
0 |
8 |
unless my $fd = fs_open($csv, ">:utf8") |
|
569
|
0 |
8 |
if $main::config->{'debug'}{'csv'} or $main::options->{'verbose'} |
|
578
|
328 |
0 |
unless is_arrayref($v) |
|
579
|
0 |
328 |
unless defined $v and defined $v->[0] |
|
581
|
328 |
0 |
unless $v =~ /[$sep"\n\r]/s |
|
588
|
9 |
24 |
if (@_ == 1) |
|
592
|
3 |
30 |
$pages > 1 ? : |
|
601
|
33 |
264 |
if $_->{'omit'} |
|
613
|
8 |
64 |
if $_->{'omit'} |
|
622
|
3 |
5 |
unless ($ctl->{'songsonly'}) |
|
628
|
0 |
3 |
if $pages_of->{'cover'} |
|
634
|
3 |
0 |
if $pages_of->{'front'} |
|
640
|
3 |
0 |
if $pages_of->{'toc'} |
|
644
|
0 |
8 |
if $main::config->{'debug'}{'csv'} |
|
654
|
3 |
5 |
unless ($ctl->{'songsonly'}) |
|
660
|
3 |
0 |
if $pages_of->{'back'} |
|
664
|
0 |
8 |
if $main::config->{'debug'}{'csv'} or $main::options->{'verbose'} |
|
670
|
0 |
0 |
unless $main::config->{'debug'}{'fonts'} |
|
673
|
0 |
0 |
if $verbose |
|
706
|
2 |
6 |
unless ($pagectrl->{'dual_pages'}) |
|
710
|
3 |
5 |
unless ($pagectrl->{'align_songs'}) |
|
715
|
18 |
6 |
unless is_true($pagectrl->{$_}) |
|
717
|
0 |
8 |
if ($main::config->{'debug'}{'pagectrl'}) |
|
725
|
6 |
2 |
$pagectrl->{'dual_pages'} ? : |
|
726
|
6 |
2 |
if ($pagectrl->{'align_tocs'}) |
|
728
|
0 |
6 |
if $pagectrl->{'align_tocs'} eq "song" |
|
730
|
5 |
3 |
if ($pagectrl->{'align_songs'}) |
|
732
|
0 |
5 |
if $pagectrl->{'align_songs_extend'} |
|
733
|
1 |
4 |
if $pagectrl->{'align_songs_spread'} |
|
735
|
0 |
8 |
if $pagectrl->{'sort_songs'} |
|
742
|
0 |
0 |
unless my $sorting = $pagectrl->{'sort_songs'} |
|
745
|
0 |
0 |
unless (defined $song->{'meta'}{'sorttitle'}) |
|
754
|
0 |
0 |
if ($sorting =~ /^([-+]?)title$/i) { } |
|
|
0 |
0 |
elsif ($sorting =~ /^([-+]?)subtitle$/i) { } |
|
762
|
0 |
0 |
unless @tbs |
|
766
|
0 |
0 |
$desc ? : |
|
774
|
0 |
0 |
if $@ |
|
790
|
0 |
0 |
unless $pagectrl->{'compact_songs'} |
|
800
|
0 |
0 |
unless (defined $song->{'meta'}{'sorttitle'}) |
|
815
|
0 |
0 |
unless progress("msg", $song->{'title'}) |
|
824
|
0 |
0 |
if $song->{'assets'} |
|
834
|
0 |
0 |
if $assets |
|
842
|
0 |
0 |
unless is_odd($main::options->{'start-page-number'} || 1) |
|
843
|
0 |
0 |
unless is_odd($songlist[$i]{'meta'}{'pages'}) |
|
849
|
0 |
0 |
unless @new |
|
853
|
0 |
0 |
if vec $used, $i, 1 |
|
854
|
0 |
0 |
unless is_even($songlist[$i]{'meta'}{'pages'}) |
|
861
|
0 |
0 |
if vec $used, $i, 1 |
|
862
|
0 |
0 |
unless is_odd($songlist[$i]{'meta'}{'pages'}) |
|
867
|
0 |
0 |
unless scalar @new == scalar @songlist |
|
883
|
0 |
11 |
if ($ENV{'CHORDPRO_PDF_API'}) |
|
887
|
0 |
11 |
if ($lib) { } |
|
888
|
0 |
0 |
unless (eval "require $lib") |
|
892
|
0 |
0 |
if $verbose |
|
896
|
0 |
11 |
unless eval "require $_" |
|
898
|
0 |
11 |
if $verbose |
|
902
|
0 |
11 |
unless $pdfapi |
|
922
|
16 |
0 |
unless $_ |
|
923
|
0 |
0 |
if (m[/]) { } |
|
927
|
0 |
0 |
if (is_corefont($_)) { } |
|
|
0 |
0 |
elsif (defined $pdf->{'fontconfig'}{s/\s+\d+$//r}) { } |
|
939
|
0 |
16 |
if $_ |
|
944
|
0 |
8 |
if $_ |
|
947
|
8 |
0 |
unless $_ |
|
952
|
8 |
0 |
unless defined $_ |
|
958
|
8 |
0 |
unless defined $_ |
|
963
|
0 |
8 |
if ($main::options->{'chord-grid-size'}) |
|
972
|
8 |
0 |
unless (eval {
do {
$pdf->{'papersize'}[0]
}
}) |
|
976
|
0 |
8 |
unless exists $ps{lc $pdf->{'papersize'}} |
|
984
|
104 |
360 |
if /^(?:background|frame)$/ |
|
985
|
8 |
352 |
if $font eq "chordfingers" and $_ eq "size" |
|
1016
|
0 |
0 |
if ($type eq 'keyboard') { } |
|
1044
|
0 |
0 |
if ($kk =~ /^([-\w]+)=(.+)$/) { } |
|
1048
|
0 |
0 |
unless $k =~ /^(id|chord)$/ |
|
1050
|
0 |
0 |
if ($k =~ /^(id|bbox|chord|src)$/) { } |
|
|
0 |
0 |
elsif ($k eq 'align' and $v =~ /^(left|right|center)$/) { } |
|
|
0 |
0 |
elsif ($k eq 'type' and $v =~ /^(strings?|keyboard)$/) { } |
|
|
0 |
0 |
elsif ($k =~ /^(width|height|dx|dy|w|h)$/) { } |
|
|
0 |
0 |
elsif ($k =~ /^(scale)$/) { } |
|
1051
|
0 |
0 |
if ($v =~ /^(chord|builtin):/) |
|
1064
|
0 |
0 |
if $v =~ /^(-?[\d.]+)pt$/ |
|
1065
|
0 |
0 |
if $v =~ /^(-?[\d.]+)em$/ |
|
1066
|
0 |
0 |
if $v =~ /^(-?[\d.]+)ex$/ |
|
1068
|
0 |
0 |
if ($v =~ /^(-?[\d.]+)\%$/) { } |
|
1079
|
0 |
0 |
if /^([\d.]+)\%$/ |
|
1082
|
0 |
0 |
unless @s > 1 |
|
1083
|
0 |
0 |
unless (@s == 2) |
|
1102
|
0 |
0 |
if ($err) { } |
|
|
0 |
0 |
elsif ($ctl{'id'}) { } |
|
1103
|
0 |
0 |
if ($ctl{'id'}) |
|
1109
|
0 |
0 |
if ($a and $a->{'opts'}{'base'}) |
|
1120
|
0 |
0 |
if ($fragment->{'id'}) { } |
|
|
0 |
0 |
elsif ($fragment->{'builtin'}) { } |
|
|
0 |
0 |
elsif ($fragment->{'chord'}) { } |
|
1122
|
0 |
0 |
if $o |
|
1123
|
0 |
0 |
unless ($o and $xo) |
|
1125
|
0 |
0 |
unless $fragment->{'id'} eq "__ERROR__" |
|
1129
|
0 |
0 |
if ($o->{'width'} and $o->{'vwidth'}) |
|
1136
|
0 |
0 |
if ($i =~ /^alert(?:\(([\d.]+)\))?$/) { } |
|
1146
|
0 |
0 |
if ($info) { } |
|
1194
|
0 |
0 |
if $k =~ /^(size|color|bgcolor|href)$/ |
|
1196
|
0 |
0 |
if defined $glyphs->{$k} |