Here's a macro I'm currently using while farming. I'm specced Heavy Destruction (Ruin Firemancer). It seems to give me a surplus on shards, but I can just stop mashing it when they get to a lower health level (I'm farming 50~'s, so the DoT's wipe them out easy).
/script if not IsBuffActive("Curse of Agony", "target") then CastSpellByName("Curse of Agony"); end;
/script if not IsBuffActive("Corruption", "target") then CastSpellByName("Corruption"); end;
/script if IsBuffActive("Immolate", "target") then CastSpellByName("Conflagrate"); end;
/script if (UnitHealth("target")<10) then CastSpellByName("Drain Soul"); end;
/script CastSpellByName("Immolate");
Note: You'll need SuperMacro for that one.
Here's a nifty one for lifting debuffs. Sets focus to you, makes your felhunter lift the debuff, and then sets the focus back to your target. I haven't tried it in-combat so I'm not sure how well it can be used (target switching speed wise), but after combat it works great for removing frost bolts, etc. Note, I didn't write this, but it's definately nifty.
/script if (UnitCreatureFamily("pet") == "Felhunter") then TargetUnit("player");CastPetAction(4);TargetLastEnemy();end;
EDIT -
Is it a suspendable/bannable offense to be using these types of macros? I definately do *look* like a bot, but I'm not worried because I'm farming in very low-traffic areas (Azshara, hehe). Macros are clientside, but the toolbars are serverside (including references to the macros). I wouldn't say so because it's my own work put into my own macros, but of course others will have other opinions.