Sometimes by feeding, but you're right... aggression and temp are usually the determinants.
Sometimes this is an issue. For example, Gnathonemus and Momyrus species (elephant noses from Africa) need live food and are slow eaters, and will not survive with other fish that can outcompete them for food. The best bet is usually to combine fish that fill different niches... such as plecos, loaches and tetras. Plecos will eat algae, loaches will scrounge around the bottom, and tetras will eat near the surface.
The other obvious example is Malawi Cichlids. M'buna Malawis are algae-eaters and will develop bloat if they have an animal-protein rich diet, whereas Malawi so-called "Haplochromids" are protein eaters. Combining the two can be disastrous, as the M'bunas may eat the protein-rich food and bloat...
But you know this. Diet is only really mentioned when there are special circumstances (like these 2). It would be tough to make a chart for this!