App-Music-ChordPro

 view release on metacpan or  search on metacpan

lib/ChordPro/Song.pm  view on Meta::CPAN

	return $self->dir_meta( "meta", "$dir $arg" );
    }

    # Formatting. {chordsize XX} and such.
    if ( $dir =~ m/ ^( $propitems_re )
		     ( font | size | colou?r )
		     $/x ) {
	my $item = $1;
	my $prop = $2;

	$self->propset( $item, $prop, $arg );

	# Derived props.
	$self->propset( "chorus", $prop, $arg ) if $item eq "text";

	# ::dump( { %propstack, line => $diag->{line} } );
	return 1;
    }
    # More private hacks.
    if ( !$options->{reference} && $d =~ /^([-+])([-\w.]+)$/i ) {
	if ( $2 eq "dumpmeta" ) {
	    warn(::dump($self->{meta}));
	}
	$self->add( type => "set",

lib/ChordPro/Song.pm  view on Meta::CPAN

    warn( "XPOSE: $tag, ",
	  "key = ",   $m->{key}->[-1],      ", ",
	  "print = ", $m->{key_print}->[0], ", ",
	  "sound = ", $m->{key_sound}->[0],
	  " [ ", join( " ", $config->{settings}->{transpose},
		       $xpose, $capo//0,
		       $xp->key ? "\@" . $xp->key->keyname : () ),
	  " ]\n" );
}

sub propset {
    my ( $self, $item, $prop, $value ) = @_;
    $prop = "color" if $prop eq "colour";
    my $name = "$item-$prop";
    $propstack{$name} //= [];

    if ( $value eq "" ) {
	my @toadd;
	# Pop current value from stack.
	if ( @{ $propstack{$name} } ) {
	    my $old = pop( @{ $propstack{$name} } );



( run in 1.209 second using v1.01-cache-2.11-cpan-71847e10f99 )