Voilà "mon" script. Il a été créée par du forum Homecinema-fr (Emmanuel Piat) merci à lui.
Je précise que lorsque je clique droit sur une piste de la playlist, dans Propriétés, le titre est coupé de la même façon que dans la playlist.
Je ne sais pas si je suis clair, m'enfin merci d'avance.
// *****************************************
// foobarEP
// EPiat foobar2000 Playlist configuration
// Version: 1.00 - 2004-07-21
// Contact: epiat@ens2m.fr
// *****************************************
// This script requires foobar2000 0.7 or higher
// It is based on SatCP's foobarXP Playlist configuration
// available on http://users.pandora.be/satcp/foobar2000/index.html
// *****************************************
// CONFIGURATION
// *****************************************
// Width of the column showing extended album info [default: 88]
// Requires a mono-spaced font! Recommended: ProFontWindows_v2.1b
$puts(width,76)
// Display extra fileinfo on the right (codec, bitrates, replaygain) [on: 1 (default), off: 0]
$puts(display_file_info,0)
// The symbol used to separate items [default: ]
$puts(separator3, )
// Default User Interface configuration :
// Playlist font : ProFontWindows v2.1b, Regular, 9
// Status bar font : Tahoma, Regular, 8
// Playlist background color : RGB = 49,90,136
// Playlist selection color : RGB = 255,167,79
// Selected item frame : RGB = 198,99,0
// Colors [normal|selected]
// Album color in advanced playlist [default: CCE6FF|FFFFFF]
$puts(col_album,CCE6FF|FFFFFF)
// Track number color [default: C0C0C0|606060]
$puts(col_tracknr,C0C0C0|606060)
// File/Album info color [default: 6AB5FF|606060]
$puts(col_info,6AB5FF|606060)
// Track length color [default: C0C0C0|606060]
$puts(col_length,C0C0C0|606060)
// Line color in advanced playlist [default: 808080|808080]
$puts(col_line,808080|808080)
// Playlist number color [default: 808080|C0C0C0]
$puts(col_pl_number,808080|C0C0C0)
// Track rating color [default: 6AB5FF|D8D8D8]
$puts(col_rating,6AB5FF|D8D8D8)
// Single track album color [default: 808080|C0C0C0]
$puts(col_singletrack,808080|C0C0C0)
// Artist - Track color [default: D7B08E|202020]
$puts(col_text,D7B08E|202020)
// TAG advice color [default: C0C0C0|606060]
$puts(col_advice,C0C0C0|606060)
// Currently playing track color [default: 0080FF|FFFFFF]
$puts(col_np,0080FF|FFFFFF)
// Paused track color [default: 0065CA|AAD5FF]
$puts(col_pd,0065CA|AAD5FF)
// Name of the directory containing "various artists" albums [default: Various Artists]
// The script will assume the directory structure is: ../Various Artists/Album Name/
// This is required for the correct recognition of VA albums in the advanced playlist
// If you change this, the formatting string of the Album List (if used) should also be changed.
$puts(various_artists,Various Artists)
// *****************************************
// CORE
// *****************************************
// Don't change anything below here unless you now what you're doing
// Wrap "currently playing track" or paused colors around playlist number, artist,
// track title and length
$puts(np_col_album,$if(%_ispaused%,$get(col_pd),$if(%_isplaying%,$get(col_np),$get(col_album))))
$puts(np_col_length,$if(%_ispaused%,$get(col_pd),$if(%_isplaying%,$get(col_np),$get(col_length))))
$puts(np_col_singletrack,$if(%_ispaused%,$get(col_pd),$if(%_isplaying%,$get(col_np),$get(col_singletrack))))
$puts(np_col_text,$if(%_ispaused%,$get(col_pd),$if(%_isplaying%,$get(col_np),$get(col_text))))
$puts(np_col_tracknr,$if(%_ispaused%,$get(col_pd),$if(%_isplaying%,$get(col_np),$get(col_tracknr))))
$puts(np_col_pl_number,$if(%_ispaused%,$get(col_pd),$if(%_isplaying%,$get(col_np),$get(col_pl_number))))
$puts(np_col_info,$if(%_ispaused%,$get(col_pd),$if(%_isplaying%,$get(col_np),$get(col_info))))
$puts(np_col_rating,$if(%_ispaused%,$get(col_pd),$if(%_isplaying%,$get(col_np),$get(col_rating))))
$puts(np_col_advice,$if(%_ispaused%,$get(col_pd),$if(%_isplaying%,$get(col_np),$get(col_advice))))
// Separators
$puts(separator,$get(col_line)$char(31)' ')
$puts(separator2,$get(col_line)' ')
// Build 4 digit playlist number
$puts(pl_number,$get(np_col_pl_number)$num(%_playlist_number%,4)' ')
// Build 4 digit track rating
$puts(track_rating,$get(np_col_rating)$repeat( ,%trackrating%)$repeat(· ,$sub(4,%trackrating%))' ')
// Retrieve DISC tag and construct (CDx) string
$puts(disc,$if(%disc%,' (CD'$replace($upper(%disc%),'CD',,'DISC',)')',))
// Retrieve ARTIST tag.
// If not available try to retrieve artist from filename
// with following supposed formatting given by EAC : %N. %D - %C (%V)
// xx. artist - album (date) [title].ext
// If not available in filename then artiste is set to "Artiste inc."
$if(%performer%,$puts(artist,%performer%))
$if(%artist%,$puts(artist,%artist%),$puts(artist,$substr(%_filename%,$add($strchr(%_filename%,.),2),$sub($strchr(%_filename%,-),2)))$if($longer($get(artist),''),,$puts(artist,Artiste inc.)))
// Retrieve ALBUM tag.
// If not available try to retrieve album from filename
// with following supposed formatting given by EAC : %N. %D - %C (%Y)
// xx. artist - album (date) [title].ext
// If not available in filename, then album is not set
$if(%album%,$puts(album,%album%),$puts(album,$substr(%_filename%,$add($strchr(%_filename%,-),2),$sub($strchr(%_filename%,'('),2)))
$if($longer($get(album),''),,$puts(album,N/A)))
// Retrieve TITLE tag.
// If not available try to retrieve title from filename
// with following supposed formatting given by EAC : %N. %D - %C (%Y)
// xx. artist - album (date) [title].ext
// [title] is optional ! Don't put brackets.
// If not available in filename, then title is set to "sans titre"
$if(%title%,$puts(title,%title%)
,$puts(title,$substr(%_filename%,$add($strchr(%_filename%,')'),1),$len(%_filename%)))$if($longer($get(title),'')
,$puts(title,"%_filename_ext%" $get(np_col_advice)'('$char(7) $if(%singletrack%,tag TITLE conseillé')',$if(%tracknumber%,tag TITLE conseillé pour album')',création album ou ajout tag SINGLETRACK conseillé pour fichier non formaté')')))
,$puts(title,$if(%singletrack%,sans titre $get(np_col_advice)'('$char(7) tag TITLE conseillé')',$if(%tracknumber%,sans titre $get(np_col_advice)'('$char(7) tag TITLE conseillé pour album')',"%_filename_ext%" $get(np_col_advice)'('$char(7) création album ou ajout tag SINGLETRACK conseillé pour fichier formaté')')))))
// CD reading case translated in french
$if($stricmp($left(%title%,2),cd),$puts(title,Plage de CD))
// Retrieve TRACKNUMBER tag.
// If not available try to retrieve title from filename
// with following supposed formatting given by EAC : %N. %D - %C (%Y)
// xx. artist - album (date) [title].ext
$puts(tracknr,$get(np_col_tracknr)$if(%tracknumber%,$num(%tracknumber%,2),$if($get(CD),$right(%_filename%,2),$if($strcmp($strchr(%_filename%,.),3),$left(%_filename%,2),'··')))$get(separator3))
// Build album gain string for info column
$puts(rg,$if($cut(%__replaygain_album_gain%,5),$if($strstr(%__replaygain_album_gain%,'dB'),%__replaygain_album_gain%,%__replaygain_album_gain%' dB'),'N/A'))
$puts(rg,$if(%singletrack%,'Gain: ','Album Gain: ')$get(rg))
$puts(rg,$if($greater($len($get(rg)),$sub($div($get(width),2),2)),$cut($get(rg),$sub($div($get(width),2),3))'
',$get(rg)))
// Build genre string for info column.
// Genre accepts multiline values and displays those as A, B, C
// Do not put this on a single line!!
$puts(genre,'Genre: '$replace($meta(genre),'
',', '))
$puts(genre,$if($greater($len($get(genre)),$sub($div($get(width),2),2)),$cut($get(genre),$sub($div($get(width),2),3))'
',$get(genre)))
// Build album string : Artist - Album Name (CDx)
// If Various Artists cd, replace Artist with Various Artists
$puts(albumstring,$if(%va%,Artistes multiples,$if($strcmp($get(various_artists),$directory(%_path%,2)),$if(%singletrack%,$get(artist),Artistes multiples),$get(artist)))$if($strcmp($get(album),N/A),,$get(separator3)$get(album))$if(%disc%,$get(disc),))
// troncat if not enough space
$puts(albumstring,$if($greater($len($get(albumstring)),$sub($get(width),1)),$cut($get(albumstring),$sub($get(width),2))'
',$get(albumstring)))
// Add album gain string for single track if enough space is present
$if(%singletrack%,$ifgreater($add($len($get(albumstring)),$len($get(rg)),4),$get(width),$puts(extra_add,0),$puts(albumstring,$get(albumstring)$get(separator3)$get(col_info)$get(rg)$puts(extra_add,1))))
// Add genre string for single track if enough space is present
//$if($and(%singletrack%,%genre%),$ifgreater($add($len($get(albumstring)),$len($get(genre)),-11),$get(width),,$puts(albumstring,$get(albumstring)$get(separator3)$get(genre)$puts(extra_add,1))))
// Build date string for album info column
$puts(date,'Date: '$if2(%year%,%date%))
$puts(date,$if($greater($len($get(date)),$sub($div($get(width),2),2)),$cut($get(date),$sub($div($get(width),2),3))'
',$get(date)))
// Build track length string
$puts(length,$get(np_col_length)$pad_right(%_length%,7))
// Build conductor string for album info column
$puts(conductor,$if(%conductor%,Dirigé par %conductor%))
$puts(conductor,$if($greater($len($get(conductor)),$sub($get(width),1)),$cut($get(conductor),$sub($get(width),2))'
',$get(conductor)))
// Build performer1 (orchestra) string for album info column
$puts(performer1,$meta(performer,1))
$puts(performer1,$if($greater($len($get(performer1)),$sub($div($get(width),2),2)),$cut($get(performer1),$sub($div($get(width),2),3))'
',$get(performer1)))
// Build performer2 string for album info column
$puts(performer2,$meta(performer,2))
$puts(performer2,$if($greater($len($get(performer2)),$sub($get(width),2)),$cut($get(performer2),$sub($get(width),3))'
',$get(performer2)))
// Build performer3 string for album info column
$puts(performer3,$meta(performer,3))
$puts(performer3,$if($greater($len($get(performer3)),$sub($get(width),2)),$cut($get(performer3),$sub($get(width),3))'
',$get(performer3)))
// Build performer4 string for album info column
$puts(performer4,$meta(performer,4))
$puts(performer4,$if($greater($len($get(performer4)),$sub($get(width),2)),$cut($get(performer4),$sub($get(width),3))'
',$get(performer4)))
// Build performer5 string for album info column
$puts(performer5,$meta(performer,5))
$puts(performer5,$if($greater($len($get(performer5)),$sub($get(width),2)),$cut($get(performer5),$sub($get(width),3))'
',$get(performer5)))
// Build performer6 string for album info column
$puts(performer6,$meta(performer,6))
$puts(performer6,$if($greater($len($get(performer6)),$sub($get(width),2)),$cut($get(performer6),$sub($get(width),3))'
',$get(performer6)))
// Build the track number string
//$puts(tracknr,$get(np_col_tracknr)$if(%tracknumber%,$num(%tracknumber%,2),'··')$get(separator3))
// Build title string:
// (##) Artist if various artists - Part if avalaible - Track Title
$puts(title,$get(tracknr)$get(np_col_text)$if(%va%,$get(artist)$get(separator3),)$if(%part%,%part%$get(separator3),)$get(title))
// Build the codec string for album info column
$puts(type,'Codec: '$if($strstr(%_path_raw%,'cdda://'),'CDDA',$if3(%mp3%,$caps2(%__codec%),$ext(%_path%)))[' ('[%__compression%]')'])
$puts(type,$if($greater($len($get(type)),$sub($div($get(width),2),2)),$cut($get(type),$sub($div($get(width),2),3))'
',$get(type)))
// Build extra file info string
$puts(filespecs,$if($stricmp($get(display_file_info),1),$get(np_col_info)$pad_right($upper($right(%_filename_ext%,3)),5) $pad_right(%__bitrate%/$div(%__samplerate%,1000)$if($strcmp(%__channels%,1),/M)$if($strcmp(%__channels%,2),/S),9)$pad_right($if(%__replaygain_track_gain%,T, ),3)$pad_right($if(%__replaygain_album_gain%,A, ),1),))
// Retrieves the date of the track. Various Artists cds require a separate TRACKDATE tag
// for the year to be displayed in parenthesis after the title.
// Regular albums use the DATE tag but a TRACKDATE tag is can be specified for specific title
$puts(trackdate,$if(%trackdate%,' '$get(col_info)'('%trackdate%')',$if($and(%singletrack%,%date%),' '$get(col_info)'('%date%')')))
// If not single track build the album column on the left
$puts(info,$if($not(%singletrack%),
// Album, codec, replaygain, etc info in front of the 4 first tracks
// Nothing in front of the rest
$select($min(%tracknumber%,10),
// Build first line (artist - album)
$get(col_line)$char(129)'<'$get(col_album)$get(albumstring)$get(col_line)'>'$repeat('',$sub($get(width),$add($len($get(albumstring)),1))),
// Build second line (codec and replaygain)
$get(separator)$get(col_info)$padcut($padcut($get(type),$div($get(width),2))$get(rg),$get(width)),
// Build third line (date and genre)
$get($if($or(%date%,%genre%),separator,separator2))$get(col_info)$padcut($if(%date%,$padcut($get(date),$div($get(width),2)),)$if(%genre%,$get(genre),),$get(width)),
// Build fourth line (conductor and performer 1 (orchestra))
$get($if($or(%conductor%,$meta(performer,1)),separator,separator2))$get(col_album)$padcut($if($meta(performer,1),$padcut($get(performer1),$div($get(width),2)),)$if(%conductor%,$get(conductor),),$get(width)),
// Build fifth line (performer 2)
$if($meta(performer,2),$get(separator)$get(col_info)$padcut($padcut($get(performer2),$get(width))$get(performer2),$get(width)),$get(separator2)$repeat(' ',$get(width))),
// Build sixth line (performer 3)
$if($meta(performer,3),$get(separator)$get(col_info)$padcut($padcut($get(performer3),$get(width))$get(performer3),$get(width)),$get(separator2)$repeat(' ',$get(width))),
// Build seventh line (performer 4)
$if($meta(performer,4),$get(separator)$get(col_info)$padcut($padcut($get(performer4),$get(width))$get(performer4),$get(width)),$get(separator2)$repeat(' ',$get(width))),
// Build eighth line (performer 5)
$if($meta(performer,5),$get(separator)$get(col_info)$padcut($padcut($get(performer5),$get(width))$get(performer5),$get(width)),$get(separator2)$repeat(' ',$get(width))),
// Build nineth line (performer 6)
$if($meta(performer,6),$get(separator)$get(col_info)$padcut($padcut($get(performer6),$get(width))$get(performer6),$get(width)),$get(separator2)$repeat(' ',$get(width))),
// Build lines after all this !
$get(separator2)$repeat(' ',$get(width)))
// The separators before titles
$get(col_line)$select($min(%tracknumber%,2),$char(30) ,$char(31) ),
// Info column for single track
$get(col_line)' <'$get(col_album)$get(albumstring)$get(col_line)'>'
$if($stricmp($get(extra_add),1),$repeat('',$sub($get(width),$sub($len($get(albumstring)),14))),$repeat('',$sub($get(width),$add($len($get(albumstring)),1))))$char(143)' '
))
// *****************************************
// OUTPUT
// *****************************************
// Show playlist number
//$get(pl_number)
// Show Track rating in not CD
$get(track_rating)
// Show the album info
$get(info)
// Show the titles
$get(title)
// Show individual track dates when specified
$get(trackdate)
// Right align
$char(09)
// Show extra file information, if enabled
$get(filespecs)
// Show length
$get(length)
// EOF