[colors][wip] handle some special cases with substring blacklist, fix problem due to late string replacement