Currently, Vermin Hater works by a given dwarf picking ONE vermin with the vermin-hatable tag and hating it with the undying passion of a thousand suns.
I had a few thoughts about how this could be more robust:
A: Vermin hater? Why limit to just vermin? Zombies are icky too, even if they are on your side.
B: Why just one? Why can't a particularly fru-fru dwarf hate snakes AND spiders?
C: Snakes and Spiders : Speaking of which, most people I know hate 'Spiders', not 'Void Spiders' or 'Cave Spiders'. Perhaps a Vermin-Hatable:CLASS tag?
D: Culture: Some peoples think roaches are icky, some think they are tasty. Perhaps put a tag into cultures to have them hate things? (All Elves hate Wood-Beatles, OR Humans pick one thing at worldgen that all humans hate.) This works for races, civs, even castes (ooh, a spider, kill it!!! Yucky girly butterflies everywhere, blehhh)
E: Different emotions: Sometimes disgust, sometimes hate, sometimes fear. Could VerminHaterTag:Emotion="disgust";"disgusted" work?
B Is a big one. Rather than a one to one hatred, the hatred value is equal to a hatesthings (personality) trait and divided by share across the things it hates. (I hate birds cause I'm a dwarf, butterflies cause I'm a boy, roaches because their just icky, and green slimes because I'm a member of crossedwarts.)