//************************************** // Config //************************************** //Width of the first column $puts(l_min,32) //Cut the first column if content is longer than l_min? // 1=cut, 0=don't cut (Album mode only) $puts(cut_column1,0) //Mode select: 1=album, 0=single $puts(mode,1) //Show tracknumber and album info in single mode? // 1=yes, 0=no $puts(ext_info,1) //Width of the second column (Single mode only. Cuts title) $puts(l_ext,40) //Change eventual title info in parentheses to another color? // 1=yes, 0=no $puts(color_extra,1) //************************************** // set colors //************************************** $puts(c_lightorange,$if(%_isplaying%,FFFFFF|FFFFFF,2299CC|7EBABE)) $puts(c_brightorange,0080FF|0080FF) $puts(c_orange,$if(%_isplaying%,7EBABE|FFFFFF,0055DD|7EBABE)) $puts(c_lightbrown,7EBABE|7EBABE) $puts(c_lightbrown2,$if(%_isplaying%,FFFFFF|FFFFFF,7EBABE|7EBABE)) $puts(c_blue,CC9922|7EBABE) $puts(c_blue2,$if(%_isplaying%,FFFFFF|FFFFFF,CC9922|7EBABE)) $puts(c_darkblue,996600|7EBABE) $puts(c_darkblue2,$if(%_isplaying%,FFFFFF|FFFFFF,996600|7EBABE)) $puts(c_lightgreen,99FF55|7EBABE) $puts(c_lightgreen2,$if(%_isplaying%,FFFFFF|FFFFFF,99FF55|7EBABE)) $puts(c_green,55DD00|7EBABE) $puts(c_lightgray,$if(%_isplaying%,0000FF|FFFFFF,CCCCCC|FFFFFF)) $puts(c_gray,808080|808080) $puts(c_gray2,$if(%_isplaying%,0000FF|FFFFFF,808080|808080)) $puts(c_darkgray,505050|505050) $puts(c_black,000000|000000) $puts(c_white,FFFFFF|FFFFFF) //************************************** // variables //************************************** $puts(t_codec,[%__codec%]) $puts(t_bitrate,[%__bitrate%]) $puts(t_extrainfo,[%__extrainfo%]) $puts(t_disc,[Disc %disc% ][''%discname%'']) $puts(t_station,[%station%]) $puts(t_bonus,*Bonus Track*) $puts(t_album,[%album%][ %volume%]) $puts(t_filename,%_filename%) $puts(t_date_genre,['['%date%'] '][%genre%]) $puts(t_title,[%title%]) $puts(s_point,'──────────') $puts(is_various,$if($or($or($or($or(%various%,%performer%),%album artist%),$stricmp($substr(%_directoryname%,0,5),'VA - ')),$stricmp($substr($directory(%_path%,2),0,5),'VA - ')),1,0)) //alt for fb2k v.7 //$puts(is_various,$if($or($or($if3(%various%,%performer%,%album artist%),$stricmp($substr(%_directoryname%,0,5),'VA - ')),$stricmp($substr($directory(%_path%,2),0,5),'VA - ')),1,0)) $if($strcmp(1,$get(is_various)), $puts(t_artist,'Various Artists') , $puts(t_artist,[%artist%]) ) //------------------- //removing eventual extra info from title to add it in another color later $if($and($and(%title%,$strcmp(1,$get(color_extra)),$not(%LTA%))), $puts(ext1,$strchr(%title%,'(')) //skip this if no parenthesis exist $if($greater($get(ext1),1), $puts(ext2,$sub($get(ext1),1)) //(note to self: use t_title or %title% here?) $puts(t_title,$cut(%title%,$get(ext2))) $puts(extra,$substr(%title%,$get(ext1),$len(%title%))) ) ) //------------------- $if(%album artist%, $puts(t_artist,%album artist%) ) //lengths $puts(l_title,$if($strcmp(1,$get(color_extra)),$add($len($get(t_title)),$len($get(extra))),$len($get(t_title)))) $puts(l_disc,$len($get(t_disc))) $puts(l_date_genre,$len($get(t_date_genre))) $puts(l_point,$mul(2,$len($get(s_point)))) $if(%singletrack%, $puts(l_tag,$len($get(t_artist))) , $puts(l_tag,$len($longest($get(t_artist),$get(t_album),$get(t_disc),$get(t_date_genre),$get(t_station)))) ) // (station is always cut to l_min) $if($or($strcmp(1,$get(cut_column1)),%station%), $puts(l_cut,$get(l_min)) , $puts(l_cut,$ifgreater($get(l_tag),$get(l_min),$get(l_tag),$get(l_min))) ) //create point $ifgreater($get(l_point),$get(l_cut), $puts(t_point,$transition($get(s_point),$get(c_lightbrown),$get(c_black))) $puts(l_point,$len($get(s_point))) , $puts(t_point,$get(s_point)$transition($get(s_point),$get(c_lightbrown),$get(c_black))) ) //start cutting******* $if($or(%singletrack%,$not(%tracknumber%)), $puts(t_artist,$cut($get(t_artist),$add($get(l_cut),6))) , $puts(t_artist,$cut($get(t_artist),$get(l_cut))) ) $puts(t_station,$cut($get(t_station),$add($get(l_cut),6))) $puts(t_bonus,$cut($get(t_bonus),$get(l_cut))) $puts(t_album,$cut($get(t_album),$get(l_cut))) $puts(t_disc,$cut($get(t_disc),$get(l_cut))) $puts(t_filename,$cut($get(t_filename),$get(l_cut))) $puts(t_date_genre,$cut($get(t_date_genre),$get(l_cut))) //end cutting********* //************************************** // playlist number //************************************** $puts(plno, $get(c_lightbrown)'├' $get(c_darkgray)$repeat('0',$sub(4,$len(%_playlist_number%))) $get(c_lightbrown2)%_playlist_number%$get(c_lightbrown)'┤' ) //**************START******************* //Special formatting done to all strings // //remove underscore //$replace( //************************************** //************************************** // codec info //************************************** //codec $if($strcmp(%__codec%,vorbis),$puts(t_codec,'Ogg')) $if($strcmp(%__codec%,musepack),$puts(t_codec,'MPC')) $if($strcmp(%__codec%,Monkey''s Audio),$puts(t_codec,'APE')) $if(%__codec%,,$puts(t_codec,$upper($ext(%_path%)))) $puts(t_codec,$padcut_right($get(t_codec),4)) //bitrate $if($strcmp(%__codec%,musepack), $puts(t_bitrate, $if($strcmp(%__mpc_profile%,''Thumb''),'q3') $if($strcmp(%__mpc_profile%,''Radio''),'q4') $if($strcmp(%__mpc_profile%,''Standard''),'q5') $if($strcmp(%__mpc_profile%,''Xtreme''),'q6') $if($strcmp(%__mpc_profile%,''Insane''),'q7') $if($strcmp(%__mpc_profile%,''BrainDead''),'q8') ) ) $puts(t_bitrate,$padcut_right($get(t_bitrate),4)) //extrainfo $if($strcmp(%__codec%,MP3), $if(%__extrainfo%,, $puts(t_extrainfo,'CBR') ) ) $if($strcmp(%__codec%,musepack), $if(%__mpc_streamversion%,$puts(t_extrainfo,'sv'%__mpc_streamversion%)) ) $puts(t_extrainfo,$padcut_right($get(t_extrainfo),4)) //******FORMATTING $if($or(%singletrack%,$not(%album%)),, $puts(codec, $select($min(%tracknumber%,7), //1 '┌────┬' , //2 $if(%lasttrack%, '└'$get(t_codec)'┘', '│'$get(t_codec)'│' ) , //3 $if(%lasttrack%, '└'$get(t_bitrate)'┘', '│'$get(t_bitrate)'│' ) , //4 $if(%lasttrack%, $if($strcmp(0,$get(l_disc)), '└'$get(t_extrainfo)'┘', '└'$get(t_extrainfo)'┘' ), $if($strcmp(0,$get(l_disc)), '│'$get(t_extrainfo)'│', '│'$get(t_extrainfo)'│' ) ) , //5 $if($strcmp(0,$get(l_disc)), '└────┴', $if($strcmp(0,$get(l_date_genre)),'└────┴','└────┤') ) , //6 $if($strcmp(0,$get(l_disc)),, $if($strcmp(0,$get(l_date_genre)),,' └') ) , ) ) //singletrack ) // find length $puts(l_codec,$len($get(codec))) // add color $puts(codec,$get(c_lightbrown)$get(codec)) //************************************** // column1 (album/artist info) //************************************** $if($or(%singletrack%,$not(%album%)),, $select($min(%tracknumber%,7), //1 $puts(column1,$repeat('─',$get(l_cut)))$puts(l_column1,$get(l_cut)) , //2 $if($strcmp(1,$get(is_various)), $puts(column1,$get(c_lightgreen)$get(t_artist))$puts(l_column1,$len($get(t_artist))), $puts(column1,$get(c_green)$get(t_artist))$puts(l_column1,$len($get(t_artist))) ) , //3 $puts(column1,$get(c_blue)$get(t_album))$puts(l_column1,$len($get(t_album))) , //4 $if($strcmp(0,$get(l_disc)), $puts(column1,$get(c_darkblue)$get(t_date_genre))$puts(l_column1,$len($get(t_date_genre))), $puts(column1,$get(c_brightorange)$get(t_disc))$puts(l_column1,$len($get(t_disc))) ) , //5 $if($strcmp(0,$get(l_disc)), $puts(column1,$get(t_point))$puts(l_column1,$get(l_point)), $if($strcmp(0,$get(l_date_genre)), $puts(column1,$get(t_point))$puts(l_column1,$get(l_point)), $puts(column1,$get(c_darkblue)$get(t_date_genre))$puts(l_column1,$len($get(t_date_genre))) ) ) , //6 $if($strcmp(0,$get(l_disc)),, $if($strcmp(0,$get(l_date_genre)),, $puts(column1,$get(t_point))$puts(l_column1,$get(l_point)) ) ) , //greater than 6 ) //singletrack ) //if no tracknumber $if(%tracknumber%,, $if(%artist%, $puts(column1,$get(c_green)$get(t_artist))$puts(l_column1,$len($get(t_artist))) , $puts(column1,$get(c_lightbrown2)$get(t_filename))$puts(l_column1,$len($get(t_filename))) ) ) //if neither %artist% nor %title% is present $if($and(%artist%,%title%),, $puts(column1,$get(c_lightbrown2)$get(t_filename))$puts(l_column1,$len($get(t_filename))) ) //if station (streaming) $if(%station%, $puts(column1,$get(c_lightorange)$get(t_station))$puts(l_column1,$len($get(t_station))) ) //if %singletrack% $if(%singletrack%, $if($and(%artist%,%title%), $puts(column1,$get(c_lightgreen2)$get(t_artist))$puts(l_column1,$len($get(t_artist))) , $puts(column1,$get(t_filename))$puts(l_column1,$len($get(t_filename))) ) ) //************************************** // Padding //************************************** $if($strcmp(0,$get(l_codec)), $puts(l_padding,$sub($add($get(l_cut),6),$get(l_column1))) , $puts(l_padding,$sub($get(l_cut),$get(l_column1))) ) $if(%singletrack%, $if($strcmp(1,$get(cut_column1)), $puts(l_padding,$sub($add($get(l_cut),6),$get(l_column1))) , $puts(l_padding,$sub($add($get(l_min),6),$get(l_column1))) ) ) $puts(padding,$repeat(' ',$get(l_padding))) //************************************** // tracknumber //************************************** $ifgreater(%tracknumber%,9, $puts(tracknumber,$get(c_orange)$num(%tracknumber%,2)) , $puts(tracknumber,$get(c_darkgray)0$get(c_orange)$num(%tracknumber%,1)) ) $if($strcmp($num(%tracknumber%,1),1), $puts(tracknumber,$get(c_lightbrown)'┬'$get(tracknumber)$get(c_lightbrown)'┬') ) $ifgreater(%tracknumber%,1, $if(%lasttrack%, $puts(tracknumber,$get(c_lightbrown)'└'$get(tracknumber)$get(c_lightbrown)'┘') , $puts(tracknumber,$get(c_lightbrown)'├'$get(tracknumber)$get(c_lightbrown)'│') ), ) //if singletrack or tracknumber == 0 $if($or(%singletrack%,$strcmp(%tracknumber%,'0')), $if(%title%, $puts(tracknumber,$get(c_lightbrown)' ── '$get(c_lightbrown)) , $puts(tracknumber,) ) ) //if no tracknumber $if(%tracknumber%,, $puts(tracknumber,$get(c_lightbrown)' ── ') ) //if station $if(%station%, $puts(tracknumber,$get(c_lightbrown)' ── '$get(c_lightbrown)) ) //************************************** // title //************************************** $if($strcmp(1,$get(is_various)), $puts(t_artist,$if(%artist%,$get(c_lightgreen2)%artist%)) $puts(title,$get(t_artist)$get(c_gray)' - '$get(c_blue2)$get(t_title)$get(c_darkblue2)$if($strcmp(1,$get(color_extra)),$get(extra))[ 'v.'%version%][ %bonustrack%]) , $puts(title,$get(c_blue2)$get(t_title)$get(c_darkblue2)$if($strcmp(1,$get(color_extra)),$get(extra))[ 'v.'%version%][ %bonustrack%]) ) //if no title $if(%title%,, $puts(title,) ) //if station $if($and(%station%,%title%), $puts(title,$get(c_lightorange)$get(t_title)) ) //************************************** // divider //************************************** $if($strcmp(1,$get(is_various)), $puts(l_title,$add($add($len(%artist%),$get(l_title)),3)) $puts(l_divider,$sub(80,$add($get(l_cut),$get(l_title)))) , $puts(l_divider,$sub(80,$add($get(l_cut),$get(l_title)))) ) $if($and($strcmp($num(%tracknumber%,1),1),$not(%singletrack%)), $puts(divider, $get(c_lightbrown)$repeat('─',$get(l_divider)) $transition($get(s_point),$get(c_lightbrown),$get(c_black)) ) ) //************************************** // now playing symbol //************************************** $puts(playing,$if(%_isplaying%,$transition('<<<<<<',$get(c_white),$get(c_black)))) //************************************** // length //************************************** $if(%_length%, $puts(length,$get(c_lightgray)$pad_right(%_length%,5)) , $puts(length,$get(c_gray2)'Stream') ) //************************************** //ReplayGain //************************************** $puts(t_Again,'│A│') $puts(t_Tgain,'│T│') $puts(rpg, $if(%__replaygain_track_gain%, $if(%__replaygain_album_gain%, $get(c_darkgray)$if(%__replaygain_album_gain%, $get(t_Again)), $get(c_gray)$if(%__replaygain_track_gain%,$get(t_Tgain))), $puts(width_gain_symb,$len($longest($get(t_Again),$get(t_Tgain)))) $repeat(' ',$get(width_gain_symb)) )) $if($strcmp(0,$len(%_length%)), $puts(rpg,) , $puts(rpg,$get(rpg)) ) //************************************** // spacer tracknumber title //************************************** $if($strcmp($num(%tracknumber%,1),1), $puts(spacer_trno_title,$get(c_lightbrown)─) , $puts(spacer_trno_title,' ') ) $if($and(%singletrack%,%tracknumber%), $puts(spacer_trno_title,' ') ) //************************************** // track rating //************************************** $puts(s_trackrating,'■') $puts(len_s_trackrating,$len($get(s_trackrating))) $puts(c_trackrating_0,0000FF|0000FF) $puts(c_trackrating_1,CC9922|CC9922) $puts(c_trackrating_2,55DD00|55DD00) $puts(trackrating, $if(%trackrating%, $if($strcmp(%trackrating%,0), $get(c_trackrating_0)$get(s_trackrating) ) $if($strcmp(%trackrating%,1), $get(c_trackrating_1)$get(s_trackrating) ) $if($strcmp(%trackrating%,2), $get(c_trackrating_2)$get(s_trackrating) ) , $repeat(' ',$get(len_s_trackrating)) ) ) //************************************** // START SINGLE MODE FORMATTING //************************************** $if($strcmp(0,$get(mode)), $puts(c_green,$if(%_isplaying%,FFFFFF|FFFFFF,55DD00|7EBABE)) $if(%artist%, $puts(t_artist,$get(c_green)$padcut(%artist%,$get(l_min))) , $puts(t_artist,$get(c_lightbrown2)$padcut($get(t_filename),$get(l_min))) ) $if(%station%, $puts(t_artist,$get(c_lightorange)$padcut(%station%,$get(l_min))) ) $puts(codec,) $puts(column1,$get(t_artist)) $puts(padding,) $puts(tracknumber,$get(c_lightbrown)' │ ') $puts(title,$get(c_blue2)$get(t_title)$if($strcmp(1,$get(color_extra)),$get(c_darkblue2)$get(extra))) $puts(divider,) $puts(spacer_trno_title,) //---show extra info (tracknumber/album) $if($strcmp(1,$get(ext_info)), $puts(trno,$get(c_lightbrown)$if(%tracknumber%,'├','│')$if(%tracknumber%,$get(c_orange)$num(%tracknumber%,2),' ')$get(c_lightbrown)$if(%tracknumber%,'┤','│')) $puts(alb,[ %album%][' ['Disc%disc%']']) $puts(extra,$cut($get(extra),$sub($get(l_ext),$len($get(t_title))))) $puts(title, $get(c_blue2)$cut($get(t_title),$get(l_ext)) $if($strcmp(1,$get(color_extra)),$get(c_darkblue2)$get(extra)) $repeat(' ',$sub($get(l_ext),$add($len($get(t_title)),$len($get(extra))))) $get(trno)$get(c_darkblue2)$get(alb)) ) ) //--- //************************************** // END SINGLE MODE FORMATTING //************************************** //***************END******************** //Special formatting done to all strings // //remove underscore //,_, ) //************************************** //************************************** // create string //************************************** $get(plno) ' ' $get(codec) $get(column1) $get(padding) $get(tracknumber) $get(spacer_trno_title) $get(title) $get(divider) $get(padding) //left align $char(9) $get(playing) $get(length) $get(rpg) $get(trackrating)