1) The parameter name rule was overriding the parameter value rule, so you would get magenta = magenta, instead of magenta = yellow; it is now anchored to the start of a line; this can also be achieved by reversing the icolor brightyellow and icolor magenta lines (which puts the equals also in yellow, which I prefer not to have)
2) The number rule didn't require numbers to start with digits, and it was not accepting lowercase suffixes; I've added a couple more suffixes as well for good measure