Phreak, with that macro you would be stopcasting everytime because you would always have the enemy player targeted in pvp. The reason for targetting myself and then doing a stopmacro is that I create a loop basically where the first time I go through I have the enemy targeted so I would:
1. stopcasting (combat harm)
2. target my next shaman if hes alive and chain heal, else target myself and chain heal (in combat in both cases)
3. target myself
4. stop the macro because I'm in combat
5. (I'm still jamming the key) I would SKIP the stopcasting because while I AM in combat I'm no longer targeting a bad guy but instead with myself
6. target my next shaman if he's alive and chain heal, else target myself and chain heal (in combat in both cases)
7. target myself
8. stop the macro because I'm in combat
9. repeat

the non-combat part is there solely to give me my "targetlasttarget" ability back which I lost in the above section by adding in the ability to spam it (I require a non-enemy to be my target to be able to spam the key and not stopcasting) and to remove the stopcasting part entirely from the non-combat section.

Your macro would look something like this:

1. I'm in combat and have a bad guy targeted. I hit the macro and since I have an enemy targeted I stopcasting and then cast chain heal.
2. I hit the button again. I still have a bad guy targeted, so I stopcasting.
3. I hit the button again. I still have a bad guy targeted, so I stopcasting.
4. etc.

i.e. yours has no spammability.

Also, I dont want to target myself for the heal if I'm in combat. If I'm the one taking damage I want one of the other shaman who is not getting hit to get the heal off on me because I might be getting interrupted.