#!/usr/bin/perl -w -s use strict; use POSIX qw(locale_h); setlocale(&POSIX::LC_ALL, "pt_PT"); use locale; use lyra; our ($dir); $dir ||= "_HTML"; my $list=shift or die("$0 [options] file.conf\n"); my $name=$list; $name =~ s/\.co?nf$//; my $opt= { dir => $dir}; my %abr = (title => "tit", author => "aut"); my @fs = (map {chomp; $_} `cat $list`); my @fsf=(); my %oco=(); for(@fs) { next if(/^#/); if(/^\s*(\w+)\s*=>?\s*(.*)/) {$opt->{$abr{$1} || $1} = $2 } elsif(/^!(.*)/){ print "DEBUG $1\n"; for( `egrep -i -w -l '$1' $opt->{dir}/*.lyr`) { chomp; push(@fsf,$_) unless $oco{$_}++; } } elsif(/\w/){ push(@fsf,$_) unless $oco{$_}++ } } #if($ag) { $opt->{pageformat} = "agenda"; $opt->{column} = 1; # $opt->{abc}=1; $opt->{newpage}='\newpage'; } #if($b5) { $opt->{pageformat} = "b5"; $opt->{column} = 2 } #if($a4) { $opt->{pageformat} = "a4"; $opt->{column} = 2; $opt->{abc}=2 } #if($a3) { $opt->{pageformat} = "a4"; $opt->{column} = 2; $opt->{abc}=2 } @fsf=() unless @fsf; lyra::mkhtml($opt,@fsf); __END__ =head1 NAME mkhtml - =head1 SYNOPSIS mkhtml f.list =head1 DESCRIPTION =head2 f.list format title option1=value1 option2=value2 ... file1.lyr file2.lyr !pattern ... Where options can be: outputfile = _1.tex (default STDOUT) pageformat = agenda|a4|a5|b5|a3 (default a4) column = 1 (default 1) newpage = (default \newpage) abc = 2 color = 0 maketitle = 1 nostart = 0 index = 1 dir=/home/jj/music ...very important for patterns =head2 Example tit=Cancioneiro AMPP author=AMPP date=Dezembro 2006 newpage= pageformat=a4 sort=1 column=2 abc=2 dir=/home/jj/music /home/jj/musicvs/musica/trovante-125azul.lyr /home/jj/musicvs/musica/godinho-2andarDireito.lyr /home/jj/musicvs/musica/godinho-sobreviventes02.lyr /home/jj/musicvs/musica/fausto-flober.lyr /home/jj/musicvs/musica/gaiteiros-agoraQueEuVouCantar.lyr !Natal =head1 AUTHOR J.Joao Almeida, jj@di.uminho.pt =head1 SEE ALSO perl(1). =cut #!/usr/bin/perl use lib ('..'); use lyra; ##$dir="/~jj/musica"; $dir=".."; lyra::setbaseurl($dir); lyra::mkhtml( { outputdir => "HTML"}, @l ) ;