Left() and If() only take a field as the comparison parameter and not something i can easily change, but you could use a Virtual field which could contain those functions i guess. I will look to add 2 more virtual fields. You dont need to use virtual fields anymore to customise the field headers as field customisations can now be be set in the Layout preferences
<Left(<field>,n)>
returns the left n characters of a field value eg. <Left(<Artist>,1)> will return K for artist Kele
<Pad(<field>,n)>
pads a numeric field value to n digits eg. <Pad(<Track#>,3)> will pad track number 6 as 006
<IsNull(<field>,true-value,false-value)>
evaluates whether a field is null and if null, displays true-value otherwise false-value. A value can be text, a field or a combination
eg. <IsNull(<Year>,<Album>,<Album> - <Year>)>
<If(<field>=value,true-value,false-value)>
evaluates whether a field matches a value. A value can be text, a field or a combination
eg. <If(<Artist>=<Album Artist>,,<Artist>)> would return blank if the artist was the same as the album artist
additionally <#> is now supported in virtual fields, where <#> is the position in a playlist. It only makes sense to use the virtual field in a playlist and will display an undefined number when used in other contexts.
eg. you might want to define a virtual field for the now playing list to combine # and track title:
<Pad(<#>,2)> - <Title>