Skip to main content
Topic: Title Formatting Problem --moderation: about %album artist% (Read 1778 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Title Formatting Problem --moderation: about %album artist%

I've recently upgraded my Foobar to version 0.9.4.4, but I'm experiencing a small issue I can't resolve.

In order to recreate my usual "working environment", I've ported my preferred Title Formatting (kudos to creator !) via copy and paste the configuration string in the "Playlist" Tab of "Title Formatting" Module, but there is something that is not working as I would like.

This link http://www.putfile.com/bonejazz/images/150072 shows what I'm trying to explain: picture 083 is the visualization I expect, while picture 0944 shows the "issue".

To make it brief I can't understand the presence of Artist Name before the Titletrack and how to make disappear that. I guess 0944 visualization belongs to "Various Artist" scenario, but I'm not sure because I never used it and I don't have any V.A. album to test.

Some futher info:
Album is in one directory with this scheme: Artist - Album (Year)\Tracknumber - Tracktitle, and tracks are separate files all tagged (Artist=Marc Cohn, Album=Marc Cohn, Date=1991, Genre=Rock).
Anyway, even using an image file with cuesheet (and/or a disc with Album Name not equal to Artist Name) doesn't change the result.
I'm using "Default User Interface" (neither ColumnsIU nor PanelsUI interfaces and components are installed) and basic installation; the only changes are Colors and Font (Lucida Console 8) in the "Playlist Appearance".
Here below the Configuration String I'm referring to:

Code: [Select]
// ---------------- S T A R T     C O N F I G     A R E A -----------------  1=yes, 0=no

$puts(album_mode,1)
$puts(alternative_color_scheme,0)
$puts(show_now_playing_marker,0)
$puts(animate_now_playing_marker,1)
$puts(width_of_first_column,50)

//Touch Up
$puts(change_color_of_parenthesis_in_title,1)
$puts(replace_underscore_with_space,1)
$puts(capitalize_first_letter_of_every_word,1)
$puts(enable_guessing_from_filename,1)
$puts(include_directory_names_when_guessing,1)
$puts(enable_guess_tracknumber_in_album_mode,1)

//ALBUM MODE ONLY
$puts(center_column1_in_album_mode,1)
$puts(align_albums_in_album_mode,1)
$puts(show_codec_info_in_album_mode,1)
$puts(show_date_info_in_album_mode,1)
$puts(show_genre_info_in_album_mode,1)
$puts(show_comment_in_album_mode,0)
$puts(artist-title_separator,' · ')
$puts(align_titles_for_singles_in_album_mode,1)
$puts(right_align_artist_info_for_the_option_above,0)
$puts(enable_single_mode_view_for_singles_in_album_mode,1)

//SINGLE MODE ONLY  (and when enabling the last option above)
$puts(enable_extended_album_info_in_single_mode,1)
$puts(align_extended_info_in_single_mode,1)
$puts(show_album_name_in_single_mode,1)
$puts(enable_scrolling_album_name_in_single_mode,1)
$puts(show_tracknumber_in_single_mode,1)
$puts(make_tracknumber_appear_before_title_in_single_mode,1)
$puts(show_date_info_in_single_mode,0)
$puts(show_genre_info_in_single_mode,1)
$puts(show_codec_info_in_single_mode,1)
$puts(show_replaygain_info_in_single_mode,1)
$puts(show_comment_in_single_mode,0)
$puts(width_of_title_in_single_mode,39)
$puts(width_of_album_name_in_single_mode,27)


//TRACKRATING
//*************************************************************************
// appearance:
//                      0=off
//                      1=numbers
//                      2=stars
//                      3=colored symbol
//                      4=old (maps rating like this: 0->1  1->3  2->6 for backwards compatibility)
//
//*************************************************************************
$puts(trackrating_appearance,0)
$puts(color_numbers,1)


//INDICATOR STRINGS
//*************************************************************************
// Can be used instead of tags or to force a certain type of formatting for one or more files.
//
// CAUTION:
//                If you change any of these, make sure you use something unique
//                to avoid unwanted behaviour!
//
// Some indicators are already looked for by default (hardcoded), see notes below.


//Force single mode for certain tabs (include this indicator in the playlist/tab name)
$puts(tab_indicator,'-S-')

//Recognise Various Artists albums (Start directory name with this indicator)
//Note: Already hardcoded: [includes: 'VARIOUS ARTISTS'], [starts with: 'VA - ']
$puts(Various-Artists_indicator,'V.A.')

//Force single file (include this indicator in the name of your singles directory)
//Note: Already hardcoded: [includes: '=SINGLES=']
$puts(single_indicator,'=S=')

//------------------ E N D    C O N F I G    A R E A ----------------------



//******************************************
//** COLORS
//*

$if($strcmp(0,$get(alternative_color_scheme)),

//default color scheme
$puts(c_Again,884422|884422)
$puts(c_album,FFBB99|FFBB99)
$puts(c_album_p,$if(%_isplaying%,FFDDDD|FFDDDD,FFBB99|FFBB99))
$puts(c_artist,FF8855|FF8855)
$puts(c_artist_p,$if(%_isplaying%,6666CC|6666CC,FF8855|FF8855))
$puts(c_background,250000|250000)
$puts(c_codec_p,$if(%_isplaying%,FFDDDD|FFDDDD,995522|995522))
$puts(c_comment,AA6644|AA6644)
$puts(c_comment_p,$if(%_isplaying%,FFDDDD|FFDDDD,995522|995522))
$puts(c_enc,FFFFFF|FFFFFF)
$puts(c_disc,FFDDDD|FFDDDD)
$puts(c_disc_p,$if(%_isplaying%,FFDDDD|FFDDDD,FFDDDD|FFDDDD))
$puts(c_date_genre,995522|995522)
$puts(c_date_genre_p,$if(%_isplaying%,FFDDDD|FFDDDD,995522|995522))
$puts(c_frame,FFDDDD|FFDDDD)
$puts(c_gain,FFFFFF|FFFFFF)
$puts(c_now_playing_pointer,FFDDDD|FFDDDD)
$puts(c_plno,$if(%_isplaying%,FFDDDD|FFDDDD,FF9900|FF9900))
$puts(c_plno_dim,883300|883300)
$puts(c_replaygain_p,$if(%_isplaying%,FFDDDD|FFDDDD,995522|995522))
$puts(c_Tgain,AA5533|AA7700)
$puts(c_time,$if(%_isplaying%,6666CC|6666CC,FFDDDD|FFDDDD))
$puts(c_title_p,$if(%_isplaying%,BBBBFF|BBBBFF,FFBB99|DD9977))
$puts(c_title_p_dim,$if(%_isplaying%,444499|444499,AA6644|AA6644))
$puts(c_trno_dim,883300|883300)
$puts(c_trno,$if(%_isplaying%,FFDDDD|FFDDDD,$if(%faketracknr%,$get(c_trno_dim),FF9900|FF9900)))


,
//alternative color scheme (~hybrid)
$puts(c_Again,884422|884422)
$puts(c_album,CC9922|CC9922)
$puts(c_album_p,$if(%_isplaying%,FFDDDD|FFDDDD,CC9922|CC9922))
$puts(c_artist,55DD00|55DD00)
$puts(c_artist_p,$if(%_isplaying%,FFDDDD|FFDDDD,99FF55|99FF55))
$puts(c_background,250000|250000)
$puts(c_codec_p,$if(%_isplaying%,FFDDDD|FFDDDD,996600|996600))
$puts(c_comment,996600|996600)
$puts(c_comment_p,$if(%_isplaying%,FFDDDD|FFDDDD,996600|996600))
$puts(c_enc,FFFFFF|FFFFFF)
$puts(c_disc,FFCC55|FFCC55)
$puts(c_disc_p,$if(%_isplaying%,FFDDDD|FFDDDD,FFCC55|FFCC55))
$puts(c_date_genre,995522|995522)
$puts(c_date_genre_p,$if(%_isplaying%,FFDDDD|FFDDDD,996600|996600))
$puts(c_frame,7EBABE|7EBABE)
$puts(c_gain,FFFFFF|FFFFFF)
$puts(c_now_playing_pointer,FFDDDD|FFDDDD)
$puts(c_plno,$if(%_isplaying%,FFDDDD|FFDDDD,7EBABE|7EBABE))
$puts(c_plno_dim,185458|505050)
$puts(c_replaygain_p,$if(%_isplaying%,FFDDDD|FFDDDD,996600|996600))
$puts(c_Tgain,AA7700|AA7700)
$puts(c_time,$if(%_isplaying%,0055DD|0055DD,FFDDDD|FFDDDD))
$puts(c_title_p,$if(%_isplaying%,FFDDDD|FFDDDD,CC9922|CC9922))
$puts(c_title_p_dim,$if(%_isplaying%,BBAAAA|BBAAAA,996600|996600))
$puts(c_trno_dim,003366|003366)
$puts(c_trno,$if(%_isplaying%,FFDDDD|FFDDDD,$if(%faketracknr%,$get(c_trno_dim),0055DD|0055DD)))

)







//******************************************
//** TEXT, SYMBOLS & DECISIONS
//*

//------------------------------------------
$if($strstr($upper(%_playlist_name%),$upper($get(tab_indicator))),$puts(album_mode,0))
//------------------------------------------


$puts(t_tracknumber,$if2(%faketracknr%,$if2(%tracknumber%,)))

//singletrack (decision)
$puts(is_single,
$if(%singletrack%,1,
$if($not(%album%),1,
$if($or($strcmp($get(t_tracknumber),'0'),$strcmp($get(t_tracknumber),'00')),1,
$if($strstr(%_directoryname%,'=SINGLES='),1,
$if($strstr($upper(%_directoryname%),$upper($get(single_indicator))),1,
0))))))

//various artists (decision)
$puts(is_various,
$if($or($or(%various%,%album artist%),%performer%),1,
$if($stricmp($substr(%_directoryname%,0,5),'VA - '),1,
$if($stricmp($substr($directory(%_path%,2),0,5),'VA - '),1,
$if($strstr($upper(%_directoryname%),'VARIOUS ARTISTS'),1,
$if($strstr($upper($directory(%_path%,2)),'VARIOUS ARTISTS'),1,
$if($stricmp($substr(%_directoryname%,0,$len($get(Various-Artists_indicator))),$get(Various-Artists_indicator)),1,
$if($stricmp($substr($directory(%_path%,2),0,$len($get(Various-Artists_indicator))),$get(Various-Artists_indicator)),1,
0))))))))

//tags (decision)
$puts(is_tagged,$if($or($and(%artist%,%title%),$strstr(%_path_raw%,'cdda://')),1,0))

//album (decision)
$if($and($or($and(%album%,$strcmp(0,$get(is_single))),$strstr(%_path_raw%,'cdda://')),$strcmp(1,$get(is_tagged))),$puts(is_album,1))

//disc info (decision)
$puts(has_disc_info,$if($or($or(%disc%,%discname%),%cd%),1,0))

//comment (decision)
$puts(show_comment,$if($and($strcmp(1,$get(show_comment_in_album_mode)),%comment%),1,0))

//first track (decision)
$puts(is_first,$if($and($or($strcmp(1,$get(t_tracknumber)),$strcmp(01,$get(t_tracknumber))),$strcmp(1,$get(is_album))),1,0))
$if($and($strcmp(1,$get(is_single)),$not($strstr(%_path_raw%,'cdda://'))),$puts(is_first,0))

//last track (decision)
$puts(is_last,$if(%lasttrack%,1,0))


$puts(t_artist,$trim($if($and($strstr(%_path_raw%,'cdda://'),$not(%artist%)),'Audio CD',$if3(%artist%,%performer%,%_filename%))))
$puts(t_artist_info,$trim($if($strcmp(1,$get(is_various)),$if2(%album artist%,'Various Artists'),$get(t_artist))))
$puts(t_title,[$trim(%title%)])
$puts(t_album,[$trim(%album%)])
$puts(t_disc,$trim($if(%disc%,'Disc '%disc%,$if(%cd%,'CD '%cd%))[''%discname%'']))

$if($strcmp(1,$get(show_comment)),
$puts(t_comment,%comment%)
)


$puts(t_date_genre,
$if($and($strcmp(1,$get(show_date_info_in_album_mode)),$or($or(%date%,%year%),%albumdate%)),'['$if3(%date%,%year%,%albumdate%)'] ')
$if($strcmp(1,$get(show_genre_info_in_album_mode)),$if(%genre%,%genre%,))
)



//-----formatting of xx/xx tracknumbers-----
$if($or($strstr($get(t_tracknumber),'/'),$strstr($get(t_tracknumber),'\')),

$puts(separator,$strchr($replace($replace($get(t_tracknumber),'/',),'\',),))
$puts(totalnumber,$substr($get(t_tracknumber),$add($get(separator),1),$len($get(t_tracknumber))))
$puts(t_tracknumber,$cut($get(t_tracknumber),$sub($get(separator),1)))

$if($or($strcmp($get(t_tracknumber),1),$strcmp($get(t_tracknumber),01)),$puts(is_first,1))
$if($strcmp($get(t_tracknumber),$get(totalnumber)),$puts(is_last,1))

)
//------------------------------------------




//******************************************
//** TOUCH UP
//*


//------------guess tracknumber-------------
$if($and($and($and($and($strcmp(1,$get(enable_guess_tracknumber_in_album_mode)),$strcmp(1,$get(album_mode))),$strcmp(1,$get(is_album))),$not($strcmp(1,$get(is_single)))),$not(%tracknumber%)),

//prepare filename
$puts(filename,$trim($replace(%_filename%,_, ,'(',,')',,'[',,']',)))
$puts(filename_orig,$get(filename))

//looks for ' - ' or '-' as separators **(START)**
$if($or($strstr($get(filename),' - '),$strstr(%_filename%,'-')),

$puts(separator,$if($strstr($get(filename),' - '),' - ','-'))
//replace separator with 
$puts(filename,$replace($get(filename),$get(separator),))
$puts(first_sep,$strchr($get(filename),))
$puts(finished,0)


//FIRST PART/TRY
$if($strcmp(0,$get(finished)),
$puts(candidate,$cut($get(filename),$sub($get(first_sep),1)))
//if it's a number
$if($and($strcmp($get(candidate),$upper($get(candidate))),$strcmp($get(candidate),$lower($get(candidate)))),
$puts(t_tracknumber,$get(candidate))
$puts(finished,1)
,
//if it's not a number, cut that part away
$puts(filename,$substr($get(filename),$add($get(first_sep),1),$len($get(filename))))
))



//SECOND PART/TRY
$if($and($strcmp(0,$get(finished)),$strstr($get(filename),)),
$puts(first_sep,$strchr($get(filename),))
$puts(candidate,$cut($get(filename),$sub($get(first_sep),1)))
//if it's a number
$if($and($strcmp($get(candidate),$upper($get(candidate))),$strcmp($get(candidate),$lower($get(candidate)))),
$puts(t_tracknumber,$get(candidate))
$puts(finished,1)
,
//if it's not a number, cut that part away
$puts(filename,$substr($get(filename),$add($get(first_sep),1),$len($get(filename))))
))


//THIRD PART/TRY
$if($and($strcmp(0,$get(finished)),$strstr($get(filename),)),
$puts(first_sep,$strchr($get(filename),))
$puts(candidate,$cut($get(filename),$sub($get(first_sep),1)))
//if it's a number
$if($and($strcmp($get(candidate),$upper($get(candidate))),$strcmp($get(candidate),$lower($get(candidate)))),
$puts(t_tracknumber,$get(candidate))
$puts(finished,1)
,
//if it's not a number, cut that part away
$puts(filename,$substr($get(filename),$add($get(first_sep),1),$len($get(filename))))
))


//If separator is found, but no tracknumber, look at the first characters of filename.
$if($strcmp(0,$get(finished)),
//3-digit tracknumber
$puts(candidate,$cut($get(filename_orig),3))
$if($and($and($strcmp($get(candidate),$upper($get(candidate))),$strcmp($get(candidate),$lower($get(candidate)))),$not($or($strcmp($substr($get(filename_orig),3,3), ),$strcmp($substr($get(filename_orig),3,3),'.')))),
$puts(t_tracknumber,$get(candidate))
$puts(finished,1)
,
//2-digit tracknumber
$puts(candidate,$cut($get(filename_orig),2))
$if($and($strcmp($get(candidate),$upper($get(candidate))),$strcmp($get(candidate),$lower($get(candidate)))),
$puts(t_tracknumber,$get(candidate))
$puts(finished,1)
))
)

,
//If no separator is found look at the first characters

//3-digit tracknumber
$puts(candidate,$cut($get(filename_orig),3))
$if($and($and($strcmp($get(candidate),$upper($get(candidate))),$strcmp($get(candidate),$lower($get(candidate)))),$not($or($strcmp($substr($get(filename_orig),3,3), ),$strcmp($substr($get(filename_orig),3,3),'.')))),
$puts(t_tracknumber,$get(candidate))
$puts(finished,1)
,
//2-digit tracknumber
$puts(candidate,$cut($get(filename_orig),2))
$if($and($strcmp($get(candidate),$upper($get(candidate))),$strcmp($get(candidate),$lower($get(candidate)))),
$puts(t_tracknumber,$get(candidate))
$puts(finished,1)
)

)


)

//if a tracknumber has been found
$if($strcmp(1,$get(finished)),
$puts(is_first,$if($and($or($strcmp(1,$get(t_tracknumber)),$strcmp(01,$get(t_tracknumber))),$strcmp(1,$get(is_album))),1,0))
$if($strcmp(is_single,1),,$puts(is_album,1))
$puts(is_single,0)
)


//guessing finished
)


//if nothing has been found
$ifgreater($len($get(t_tracknumber)),0,,$puts(is_single,1)$puts(is_album,0))

//------------------------------------------




//-----formatting of 3 digit tracknumbers-----
$if($strcmp(3,$len($get(t_tracknumber))),
$puts(t_disc,'Disc '$cut($get(t_tracknumber),1))
$puts(has_disc_info,1)
$puts(t_tracknumber,$substr($get(t_tracknumber),2,3))
$if($strcmp($get(t_tracknumber),01),$puts(is_first,1))
)
//--------------------------------------------




//-----------guess artist and title------------
$if($and($strcmp(1,$get(enable_guessing_from_filename)),$strcmp(0,$get(is_tagged))),

//eliminates underscores
$puts(filename,$replace(%_filename%,_, ))

//change '- ' and ' -' to ' - '. Remove this one? Move it down and replace with ?
$if($not($strstr($get(filename),' - ')),$puts(filename,$replace(%_filename%,'- ',' - ',' -',' - ')))

//looks for ' - ' or '-' as separators. ' - ' has the highest priority
$if($or($strstr($get(filename),' - '),$strstr(%_filename%,'-')),

$puts(separator,$if($strstr($get(filename),' - '),' - ','-'))
//replace separator with 
$puts(filename,$replace($get(filename),$get(separator),))
$puts(first_sep,$strchr($get(filename),))
$puts(last_sep,$strrchr($get(filename),))

//extract tags
$if(%artist%,,$puts(t_artist,$trim($cut($get(filename),$sub($get(first_sep),1)))))
$if(%title%,,$puts(t_title,$trim($substr($get(filename),$add($get(last_sep),1),$len($get(filename))))))
$puts(is_tagged,1)

//Look if tracknumber has been asigned to t_artist
$if($strcmp(1,$get(include_directory_names_when_guessing)),
$if($and($strcmp($get(t_artist),$upper($get(t_artist))),$strcmp($get(t_artist),$lower($get(t_artist)))),

//if only 1 separator (look at directory names)
$if($strcmp($get(first_sep),$get(last_sep)),


//Look if the nearest directory has a separator (and that thes first 4 characters isn't a number/date)
$if($and($or($strstr($replace(%_directoryname%,_, ),' - '),$strstr(%_directoryname%,'-')),$not($and($strcmp($cut(%_directoryname%,4),$upper($cut(%_directoryname%,4))),$strcmp($cut(%_directoryname%,4),$lower($cut(%_directoryname%,4)))))),
$puts(directory,$replace(%_directoryname%,_, ))
$puts(separator,$if($strstr($get(directory),' - '),' - ','-'))
//replace separator with 
$puts(directory,$replace($get(directory),$get(separator),))
//extract tag
$puts(t_artist,$cut($get(directory),$sub($strchr($get(directory),),1)))


//takes the first part of the parent directory name (till eventual separator)
,
$if($or($strstr($replace($directory(%_path%,2),_, ),' - '),$strstr($directory(%_path%,2),'-')),
$puts(directory,$replace($directory(%_path%,2),_, ))
$puts(separator,$if($strstr($get(directory),' - '),' - ','-'))
//replace separator with 
$puts(directory,$replace($get(directory),$get(separator),))
//extract tag
$puts(t_artist,$cut($get(directory),$sub($strchr($get(directory),),1)))
)


)


,
//if more than one separator
$puts(filename_rest,$substr($get(filename),$add($get(first_sep),1),$len($get(filename))))
$puts(t_artist,$cut($get(filename_rest),$sub($strchr($get(filename_rest),),1)))

)


)

))


)
//------------------------------------------





//---------remove underscore ('_')----------
$if($strcmp(1,$get(replace_underscore_with_space)),
$puts(t_artist,$replace($get(t_artist),_, ))
$puts(t_artist_info,$replace($get(t_artist_info),_, ))
$puts(t_title,$replace($get(t_title),_, ))
$puts(t_album,$replace($get(t_album),_, ))
$puts(t_disc,$replace($get(t_disc),_, ))
$puts(t_comment,$replace($get(t_comment),_, ))
)
//------------------------------------------


//---------capitalize first letter----------
$if($strcmp(1,$get(capitalize_first_letter_of_every_word)),
$puts(t_artist,$caps2($get(t_artist)))
$puts(t_artist_info,$caps2($get(t_artist_info)))
$puts(t_title,$caps2($get(t_title)))
$puts(t_album,$caps2($get(t_album)))
$puts(t_disc,$caps2($get(t_disc)))
$puts(t_comment,$caps2($get(t_comment)))
)
//------------------------------------------


//--------remove %20 when streaming---------
$if(%_length%,,
$puts(t_artist,$trim($replace($get(t_artist),'%20', )))
$puts(t_title,$trim($replace($get(t_title),'%20', )))
)
//------------------------------------------


//------color contents of parenthesis-------
$if($and($and($greater($len($get(t_title)),0),$strcmp(1,$get(change_color_of_parenthesis_in_title)),$not(%LTA%))),
$puts(ext1,$ifgreater($strchr($get(t_title),'('),$strchr($get(t_title),'['),$strchr($get(t_title),'('),$strchr($get(t_title),'[')))
//if it starts with one, but there are more later
$if($strcmp(1,$get(ext1)),
$puts(ext1,$ifgreater($strrchr($get(t_title),'('),$strrchr($get(t_title),'['),$strrchr($get(t_title),'('),$strrchr($get(t_title),'[')))
)
//skip this if no parenthesis exist
$if($greater($get(ext1),1),
$puts(ext2,$sub($get(ext1),1))
$puts(t_title_extra,$get(t_title))
$puts(t_title,$cut($get(t_title),$get(ext2)))
$puts(t_extra,$substr($get(t_title_extra),$get(ext1),$len($get(t_title_extra))))
))
//------------------------------------------


//---alignment/padding when not centering---
$if($and($and($strcmp(1,$get(is_album)),$strcmp(0,$get(center_column1_in_album_mode))),$strcmp(1,$get(album_mode))),
$puts(t_album,' '$get(t_album))
$puts(t_disc,' '$get(t_disc))
$puts(t_date_genre,' '$get(t_date_genre))
$puts(t_comment,' '$get(t_comment))
)
//------------------------------------------


//Contents of 2nd column
$puts(t_column2_1,$if($and($strcmp(1,$get(is_various)),$strcmp(1,$get(is_album))),$get(t_artist),))
$puts(t_column2_2,$get(t_title))
$puts(t_column2_3,$get(t_extra)$if(%bonustrack%,' *Bonustrack*'))



//---single mode for singles in album mode--
$if($and($and($strcmp(1,$get(enable_single_mode_view_for_singles_in_album_mode)),$not($strcmp(1,$get(is_album)))),$strcmp(1,$get(album_mode))),

$puts(l_column1_comp,$if($and($strcmp(1,$get(make_tracknumber_appear_before_title_in_single_mode)),$strcmp(1,$get(show_tracknumber_in_single_mode))),5,8))
$puts(width_of_first_column,$add($get(width_of_first_column),$if($strcmp(1,$get(show_codec_info_in_album_mode)),$get(l_column1_comp),5)))
$puts(album_mode,0)
)
//------------------------------------------




//******************************************
//** CODEC RELATED
//*"
$if($or($and($strcmp(1,$get(show_codec_info_in_album_mode)),$strcmp(1,$get(album_mode))),$and($strcmp(1,$get(show_codec_info_in_single_mode)),$strcmp(0,$get(album_mode)))),

//strings
$puts(t_bitrate,[%__bitrate%])
$puts(t_extrainfo,[%__extrainfo%])

//codec
$if($stricmp(%__codec%,MP3),$puts(t_codec,'MP3'),
$if($stricmp(%__codec%,musepack),$puts(t_codec,'MPC'),
$if($stricmp(%__codec%,vorbis),$puts(t_codec,'Ogg'),
$if($stricmp(%__codec%,Monkey''s Audio),$puts(t_codec,'APE'),
$if(%__codec%,$puts(t_codec,%__codec%),$puts(t_codec,$upper($ext(%_path%)))
)))))

//bitrate
$if($stricmp(%__codec%,musepack),
$if($stricmp(%__mpc_profile%,''Standard''),$puts(t_bitrate,'q5'),
$if($stricmp(%__mpc_profile%,''Xtreme''),$puts(t_bitrate,'q6'),
$if($stricmp(%__mpc_profile%,''Insane''),$puts(t_bitrate,'q7'),
$if($stricmp(%__mpc_profile%,''BrainDead''),$puts(t_bitrate,'q8')
$if($stricmp(%__mpc_profile%,''Radio''),$puts(t_bitrate,'q4'),
$if($stricmp(%__mpc_profile%,''Thumb''),$puts(t_bitrate,'q3'),
)))))))

//length of codec info
$puts(l_codec,$len($longest($get(t_codec),$get(t_bitrate),$get(t_extrainfo))))

//fix for three character codecs where bitrate might be higher than 999 kbps.
$if($or($stricmp(%__codec%,Monkey''s Audio),$stricmp(%__codec%,PCM)),
$puts(l_codec,4)
)

//final codec text
$if($strcmp(1,$get(album_mode)),
$puts(t_codec,$padcut_right($get(t_codec),$get(l_codec)))
$puts(t_bitrate,$padcut_right($get(t_bitrate),$get(l_codec)))
$puts(t_extrainfo,$padcut_right($get(t_extrainfo),$get(l_codec)))
)

)




//******************************************
//** PLAYLIST NUMBER
//*
$get(c_plno_dim)$repeat('0',$sub($len(%_playlist_total%),$len(%_playlist_number%)))
$get(c_plno)%_playlist_number%$get(c_frame)
$if($strcmp(%_playlist_number%,%_playlist_total%),'┘','┤')
' '


//******************************************
//*************Start Album Mode*************
$if($strcmp(1,$get(album_mode)),
//------------------------------------------


//album info
$select($min($get(t_tracknumber),6),
// 1
$puts(t_column1,$get(t_artist_info))
,
// 2
$puts(t_column1,$get(t_album))
,
// 3
$if($strcmp(1,$get(has_disc_info)),
$puts(t_column1,$get(t_disc)),
$puts(t_column1,$get(t_date_genre))
)
,
// 4
$if($strcmp(1,$get(has_disc_info)),
$puts(t_column1,$get(t_date_genre)),
$puts(t_column1,$get(t_comment))
)
,
// 5
$if($strcmp(1,$get(has_disc_info)),
$puts(t_column1,$get(t_comment)),
)
,
// >5

)



//******************************************
//** LENGTHS
//*

//----------------Audio CD------------------
$if($and($strstr(%_path_raw%,'cdda://'),$strcmp(1,$get(show_codec_info_in_album_mode))),$puts(width_of_first_column,$add($get(width_of_first_column),3)))
//------------------------------------------

$if($strcmp(1,$get(is_album)),
$puts(l_album_info,$len($longest($get(t_album),$get(t_date_genre),$get(t_disc),$get(t_artist_info))))
$ifgreater($add($len($get(t_artist_info)),2),$get(l_album_info),$puts(l_album_info,$add($len($get(t_artist_info)),2)),)

$if($strcmp(1,$get(align_albums_in_album_mode)),
$puts(l_cut,$get(width_of_first_column)),
$puts(l_cut,$ifgreater($get(l_album_info),$get(width_of_first_column),$get(l_album_info),$get(width_of_first_column)))
)

)



//******************************************
//** CUTTING, PADDING, CENTERING
//*
$if($strcmp(1,$get(is_album)),


//comment is always cut in album mode
$puts(t_column1,$cut($get(t_column1),$get(l_cut)))

//cutting
$if($strcmp(1,$get(align_albums_in_album_mode)),
$puts(t_artist_info,$cut($get(t_artist_info),$get(width_of_first_column)))
$puts(t_title,$cut($get(t_title),$get(width_of_first_column)))
$puts(t_album,$cut($get(t_album),$get(width_of_first_column)))
$puts(t_date_genre,$cut($get(t_date_genre),$get(width_of_first_column)))
$puts(t_disc,$cut($get(t_disc),$get(width_of_first_column)))

$if($strcmp(1,$get(is_first)),
$puts(t_column1,$cut($get(t_column1),$sub($get(width_of_first_column),2))),
$puts(t_column1,$cut($get(t_column1),$get(width_of_first_column)))
)

)


$puts(l_padding1,$sub($get(l_cut),$len($get(t_column1))))


//centering
$if($strcmp(1,$get(center_column1_in_album_mode)),

$if($stricmp($mod($get(l_padding1),2),1),
$puts(l_padding1_L,$div($get(l_padding1),2))
$puts(l_padding1_R,$add($div($get(l_padding1),2),1)),
$puts(l_padding1_L,$div($get(l_padding1),2))
$puts(l_padding1_R,$div($get(l_padding1),2))
)

$if($strcmp(1,$get(is_first)),,
$puts(t_column1,$repeat(' ',$get(l_padding1_L))$get(t_column1)$repeat(' ',$get(l_padding1_R)))
)

//no centering
,

$if($strcmp(1,$get(is_first)),
$puts(l_padding1_R,$sub($get(l_padding1),1))
$puts(l_padding1_L,0)
,
$puts(t_column1,$get(t_column1)$repeat(' ',$get(l_padding1)))
)

)
)





//******************************************
//** COLUMN 1
//*
$if($strcmp(1,$get(is_album)),


//total length of first column
$puts(l_column1_total,$add($add(2,$get(l_cut)),$get(l_codec)))

//layout
$select($min($get(t_tracknumber),6),
// 1
$get(c_frame)'┌'
$repeat('─',$get(l_codec))
$get(c_frame)'┬'
$get(c_frame)$repeat('─',$sub($get(l_padding1_L),1))'┤'$get(c_artist)$get(t_column1)$get(c_frame)'├'$repeat('─',$sub($get(l_padding1_R),1))
,
// 2
$get(c_frame)$if($strcmp(1,$get(is_last)),'└','│')
$get(c_dim)$get(t_codec)
$get(c_frame)$if($strcmp(1,$get(is_last)),'┘','│')
$get(c_album)$get(t_column1)
,
// 3
$get(c_frame)$if($strcmp(1,$get(is_last)),'└','│')
$get(c_dim)$get(t_bitrate)
$get(c_frame)$if($strcmp(1,$get(is_last)),'┘','│')

$if($strcmp(1,$get(has_disc_info)),
$get(c_disc)$get(t_column1),
$get(c_date_genre)$get(t_column1)
)
,
// 4
$get(c_frame)'└'
$get(c_dim)$get(t_extrainfo)
$get(c_frame)'┘'

$if($strcmp(1,$get(has_disc_info)),
$get(c_date_genre)$get(t_column1),
$if($strcmp(1,$get(show_comment)),
$get(c_comment)$get(t_column1),$repeat(' ',$get(l_cut)))
)
,
// 5
$repeat(' ',$add($get(l_codec),2))

$if($strcmp(1,$get(show_comment)),
$get(c_comment)$get(t_column1),
$repeat(' ',$get(l_cut))
)
,
// >5
$repeat(' ',$get(l_column1_total))

)

,

//-----------if not an album----------------
$if($strcmp(1,$get(is_single)),

$if($strcmp(1,$get(align_titles_for_singles_in_album_mode)),
$if($strcmp(1,$get(right_align_artist_info_for_the_option_above)),
$get(c_artist_p)$padcut_right($get(t_artist),$add($get(width_of_first_column),$if($strcmp(1,$get(show_codec_info_in_album_mode)),8,5)))$get(c_frame)'│ ',
$get(c_artist_p)$padcut($get(t_artist),$add($get(width_of_first_column),$if($strcmp(1,$get(show_codec_info_in_album_mode)),8,5)))$get(c_frame)'│ '
)
,
$get(c_artist_p)$get(t_artist)$get(c_frame)$if($strcmp(1,$get(is_tagged)),$get(artist-title_separator),)

)
//------------------------------------------
)

)


//******************************************
//** TRACKNUMBER
//*
$if($strcmp(1,$get(is_album)),

$get(c_frame)$if($strcmp(1,$get(is_last)),'└',$if($strcmp(1,$get(is_first)),'┬','│'))
$ifgreater($get(t_tracknumber),9,
$get(c_trno)$num($get(t_tracknumber),2),
$get(c_trno_dim)0$get(c_trno)$num($get(t_tracknumber),1)
)

$get(c_frame)$if($strcmp(1,$get(is_last)),'┴─',$if($strcmp(1,$get(is_first)),'┬─','├ '))

)



//******************************************
//** COLUMN 2
//*
$get(c_artist_p)$get(t_column2_1)
$ifgreater($len($get(t_column2_1)),0,$get(c_frame)$get(artist-title_separator),)
$get(c_title_p)$get(t_column2_2)
$get(c_title_p_dim)$get(t_column2_3)



//******************************************
//** DIVIDER
//*
$if($strcmp(1,$get(is_first)),

$puts(l_column2_total,$add($add($len($get(t_column2_1)),$len($get(t_column2_2))),$len($get(t_column2_3))))

// adding length of artist-title_separator
$if($strcmp(1,$get(is_various)),
$puts(l_column2_total,$add($get(l_column2_total),$len($get(artist-title_separator))))
)

$puts(l_divider_total,80)
$puts(s_divider_point,'───────────')
$get(c_frame)$repeat('─',$sub($sub($get(l_divider_total),$get(l_column1_total)),$get(l_column2_total)))
$transition($get(s_divider_point),$get(c_frame),$get(c_background))

)


//*************End Album Mode***************
//******************************************
,
//******************************************
//************Start Single Mode*************

//artist info
$get(c_artist_p)$padcut($get(t_artist),$add($get(width_of_first_column),0))$get(c_frame)'│'

//tracknumber (before title)
$if($and($and($strcmp(1,$get(enable_extended_album_info_in_single_mode)),$strcmp(1,$get(make_tracknumber_appear_before_title_in_single_mode))),$strcmp(1,$get(show_tracknumber_in_single_mode))),
$ifgreater(%tracknumber%,9,
$get(c_trno)$num(%tracknumber%,2),
$get(c_trno_dim)0$get(c_trno)$num(%tracknumber%,1)
)
$get(c_frame)'│'
)

//title info
$if($strcmp(1,$get(enable_extended_album_info_in_single_mode)),
' '
$get(c_title_p)$cut($get(t_title),$get(width_of_title_in_single_mode))
$get(c_title_p_dim)$padcut($get(t_extra)$if(%bonustrack%,' *Bonustrack*'),$sub($get(width_of_title_in_single_mode),$len($get(t_title))))
$get(c_frame)'│'
,
' '$get(c_title_p)$get(t_title)$get(c_title_p_dim)$get(t_extra)$if(%bonustrack%,' *Bonustrack*')
)

//tracknumber (after title)
$if($and($strcmp(1,$get(enable_extended_album_info_in_single_mode)),$strcmp(1,$get(show_tracknumber_in_single_mode))),
$if($strcmp(1,$get(make_tracknumber_appear_before_title_in_single_mode)),,
$ifgreater(%tracknumber%,9,
$get(c_trno)$num(%tracknumber%,2),
$get(c_trno_dim)0$get(c_trno)$num(%tracknumber%,1)
)
$get(c_frame)'│'
)
)


$if($strcmp(1,$get(enable_scrolling_album_name_in_single_mode)),
//*****************Code to make text scroll in playlist********************
// Usage:
//                "input"  - the tag or variable you would like to scroll.     
//                "length" - the total visible width (e.g. the width of the column)
//                "step"    - scroll speed (number of characters to jump for each step)
//                "space"  - sets the minimum space before it start over again.     
//                "pause"  - number of secounds between rounds     
//                "smart"  - only scroll when needed (1=yes, 0=no)
//*************************************************************************
//---START OF CONFIG---
$puts(input,$get(t_album))
$puts(length,$get(width_of_album_name_in_single_mode))
$puts(step,2)
$puts(space,6)
$puts(pause,3)
$puts(smart,1)
//----END OF CONFIG----

$if($and(%_isplaying%,$or($strcmp(0,$get(smart)),$and($strcmp(1,$get(smart)),$greater($len($get(input)),$get(length))))),

//add spacing to the end and make sure it's long enough
$puts(input,$pad($get(input)$repeat(' ',$get(space)),$get(length)))

//create counter
$puts(counter,$mul($get(step),$mod($right(%_time_elapsed%,2),$add($get(pause),$div($len($get(input)),$get(step))))))

//create output
$puts(front,$cut($get(input),$get(counter)))
$puts(end,$right($get(input),$sub($len($get(input)),$get(counter))))
$puts(output,$padcut($get(end)$get(front),$get(length)))
,
$puts(output,$padcut($get(input),$get(length)))
)
//**************************END OF CODE************************************
$puts(t_album,$get(output))
)


//album info
$if($strcmp(1,$get(enable_extended_album_info_in_single_mode)),


$if($strcmp(1,$get(show_album_name_in_single_mode)),
$puts(album,
' '$get(t_album)$if($strcmp(1,$get(has_disc_info)),' ·'$get(t_disc)'·')
)
$get(c_album_p)$if($strcmp(1,$get(align_extended_info_in_single_mode)),$padcut($get(album),$get(width_of_album_name_in_single_mode))$get(c_frame)'│',$get(album))

)

//date
$if($strcmp(1,$get(show_date_info_in_single_mode)),
$get(c_date_genre_p)$if($strcmp(1,$get(align_extended_info_in_single_mode)),$padcut($if2(%date%,),4)$get(c_frame)'│',
$if(%date%,$if($or(%album%,$strcmp(0,$get(show_album_name_in_single_mode))),' ')$if(%date%,'['%date%']'))
))


//genre
$if($strcmp(1,$get(show_genre_info_in_single_mode)),
$get(c_date_genre_p)$if($strcmp(1,$get(align_extended_info_in_single_mode)),$padcut($if2(%genre%,),12)$get(c_frame)'│',
$if(%genre%,$if($or(%album%,$strcmp(0,$get(show_album_name_in_single_mode))),' ')$if(%genre%,'·'%genre%'·'))
))


//codec
$if($strcmp(1,$get(show_codec_info_in_single_mode)),
$puts(codec,
$get(t_codec)
$if($strcmp(0,$len($get(t_bitrate))),,' '$get(t_bitrate)$if($and($and($strcmp($get(t_bitrate),$upper($get(t_bitrate))),$strcmp($get(t_bitrate),$lower($get(t_bitrate)))),$not($strcmp(0,$len($get(t_bitrate))))),' kbps'))
$if($strcmp(0,$len($get(t_extrainfo))),,' '$get(t_extrainfo))
)
$get(c_codec_p)
$if($strcmp(1,$get(align_extended_info_in_single_mode)),$padcut($get(codec),17)$if($or($strcmp(1,$get(show_comment_in_single_mode)),$strcmp(1,$get(show_replaygain_info_in_single_mode))),$get(c_frame)'│'),
$if($or(%album%,$strcmp(0,$get(show_album_name_in_single_mode))),' ')'('$get(codec)')')
)


//replaygain
$if($strcmp(1,$get(show_replaygain_info_in_single_mode)),
$puts(rpg,
$if(%__replaygain_track_gain%,
'TG:'$cut(%__replaygain_track_gain%,5)
$if(%__replaygain_album_gain%,' AG:'$cut(%__replaygain_album_gain%,5))
))
$get(c_replaygain_p)
$if($strcmp(1,$get(align_extended_info_in_single_mode)),$padcut($get(rpg),17)$if($strcmp(1,$get(show_comment_in_single_mode)),$get(c_frame)'│'),
$if($or(%album%,$strcmp(0,$get(show_album_name_in_single_mode))),' ')$ifgreater($len($get(rpg)),0,'{'$get(rpg)'}',))
)


//comment
$if($strcmp(1,$get(show_comment_in_single_mode)),
$get(c_comment_p)
$if($strcmp(1,$get(align_extended_info_in_single_mode)),$if2(%comment%,),
$if(%comment%,$if($or(%album%,$strcmp(0,$get(show_album_name_in_single_mode))),' ')%comment%)
))



)

//*************End Single Mode**************
//******************************************
)
//------------------------------------------





//---------------Left Align-----------------
$char(9)
//------------------------------------------


//******************************************
//** Now playing marker
//*
$if($strcmp(1,$get(show_now_playing_marker)),
$if(%_isplaying%,$transition('<<<<<<',$get(c_now_playing_pointer),$get(c_background)))
)




//******************************************
//** TIME
//*
$if(%_length%,
$get(c_time)$pad_right(%_length%,5)
,
$get(c_time)'Streaming'
)



//******************************************
//** REPLAYGAIN
//*
$puts(t_Again,'│A'$if($and($or($strcmp(3,$get(trackrating_appearance)),$strcmp(4,$get(trackrating_appearance))),%trackrating%),,'│'))
$puts(t_Tgain,'│T'$if($and($or($strcmp(3,$get(trackrating_appearance)),$strcmp(4,$get(trackrating_appearance))),%trackrating%),,'│'))

$puts(rpg,
$if(%__replaygain_track_gain%,
$if(%__replaygain_album_gain%,
$get(c_Again)$if(%__replaygain_album_gain%,
$get(t_Again)),
$get(c_Tgain)$if(%__replaygain_track_gain%,$get(t_Tgain))),

$if(%_length%,
$repeat(' ',$len($longest($get(t_Again),$get(t_Tgain))))
,
)

))

$if($strcmp(0,$len(%_length%)),
$puts(rpg,)
,
$puts(rpg,$get(rpg))
)

$get(rpg)


//******************************************
//** TRACKRATING
//*
$if($and(%trackrating%,$or($strcmp($get(trackrating_appearance),1),$or($strcmp($get(trackrating_appearance),2),$or($strcmp($get(trackrating_appearance),3),$strcmp($get(trackrating_appearance),4))))),

$puts(t_trackrating,$cut(%trackrating%,1))

//Backward copatibility with old 0,1,2 rating
$if($strcmp($get(trackrating_appearance),4),
$puts(t_trackrating,
$if($strcmp($get(t_trackrating),0),1,
$if($strcmp($get(t_trackrating),1),3,
$if($strcmp($get(t_trackrating),2),6,
)))
)
$puts(trackrating_appearance,3)
)

//COLORS
$puts(c_trackrating,
//numbers and symbols
$if($or($and($strcmp($get(color_numbers),1),$strcmp($get(trackrating_appearance),1)),$strcmp($get(trackrating_appearance),3)),$select($get(t_trackrating),CC9922|CC9922,CC9922|CC9922,55DD00|55DD00,55DD00|55DD00,FFFFFF|FFFF
FF,FFFFFF|FFFFFF),
//stars
$if($strcmp($get(trackrating_appearance),2),FFDDDD|FFDDDD,
//numbes without individual colors
884422|884422
))
)
//dimmed stars
$puts(c_trackrating_dim,552222|552222)


//SYMBOL
$puts(s_trackrating,
$select($get(trackrating_appearance),
//1 (number)
$get(c_trackrating)$get(t_trackrating)
,
//2 (stars)
$get(c_trackrating_dim)$repeat('*',$sub(6,$get(t_trackrating)))$get(c_trackrating)$repeat('*',$get(t_trackrating))
,
//3 (colored symbol)
'├'
)
)


//DISPLAY
$get(c_trackrating)$get(s_trackrating)
,
//when tag is absent
$select($get(trackrating_appearance),
//1 (number)
' '
,
//2 (stars)
552222|552222$repeat('*',6)
,
//3 (colored symbol)

)


//END trackrating
)

So I'm asking to the experts here if there is someone that is able to help me in solving my topic.
I've tried to search in the forum, but everything seems point to discussions about sophisticated (and beautiful) visualizations with ColumnsUI/PanelsUI, and even the oldest posts (2005/2006) would seem not helping me.

Maybe the solution is very simple, but I can't figure it out.

Thanks in advance for your support (and I'm sorry for my bad English).

Title Formatting Problem --moderation: about %album artist%

Reply #1
The problem is caused by the new field remappings in foobar20000 0.9.

Your script uses - among other possible indicators - the %album artist% expression to check if an album has various artists. In 0.9, %album artist% does not only check the field with the same name, but also "artist", "composer", and "performer". Since your tracks have an artist tag, this expression evaluates to "true" and thus causes the script to display the names of the (supposedly) various artists in front of the track titles.

To resolve this problem, replace each occurrence of %album artist% by $meta(album artist).

Note that I haven't checked for other possible reasons, it's just the most likely one.

On a sidenote, the writer of that code had a serious $putsfimmel.

Title Formatting Problem --moderation: about %album artist%

Reply #2
Many thanks Frank, now it works !!

So in case of VARIOUS ARTISTS, tagging should be:

ALBUM=Soul Power
ALBUM ARTIST=Various Artists
ARTIST=Aretha Franklin
TITLE=Think
GENRE=Soul
YEAR=1991

with an EAC filename scheme as:

%D - %C (%Y)\%N - %T --> Various Artist - Soul Power (1991)\01 - Think



PS: what does it mean "fimmel" ? is it a synonymous for flame ? (anyway I've understood what you mean...)

 

Title Formatting Problem --moderation: about %album artist%

Reply #3
Oh, sorry about that.

Fimmel is the German word for mania or fad. It's a pun on "Putzfimmel" (mania for cleanliness).

 
SimplePortal 1.0.0 RC1 © 2008-2019