Useful macros for priests

One-button buff
/cast [button:2] Shadow Protection; Power Word: Fortitude
 * 1) showtooltip
 * Verified: 4.0.3a
 * Use: Left-click casts Power Word: Fortitude, right-click casts Shadow Protection

Resurrection Announcer
/stopmacro [stance:1][combat] /cast Resurrection /stopmacro [nohelp][nodead] /ra Resurrecting %t.
 * Verified: 4.0.3a
 * Use: Casts Resurrection and announces it to the raid if your target is friendly and dead. Does not execute if you're in combat or in Shadowform.

Divine Hymn
/cast [target=player] Power Infusion /use 13 /use 14 /cast Divine Hymn
 * 1) showtooltip Divine Hymn
 * Validated: 4.0.3a
 * Use: Maximizes healing effect of Divine Hymn by combining a self Power Infusion, and using both trinkets.
 * Note: If one of the spells are on cooldown, it will still use the other. If the trinkets have no use, the 3rd and 4th line may be omitted.

4.1 Atonement Macro
/castsequence [@targettarget, harm] reset=10 Holy Fire, Smite, Smite, Smite, Smite, Archangel /castsequence reset=10 Holy Fire, Smite, Smite, Smite, Smite, Archangel
 * 1) showtooltip

This macro will cast Holy Fire, then Smite four times, on your target if it's an enemy, or on your target's target (e.g, the tank) if your target is friendly. Archangel is included at the end for convenience; you can choose to delete Archangel from the end of both sequences and activate it manually if you wish.


 * Validated: 4.1

Clip-prevention Mind Flay
/stopmacro [channeling] /cast Mind Flay
 * 1) showtooltip
 * Validated: 4.0.3a
 * Use: Casts Mind Flay, providing you are not currently channeling a spell. This can be used to prevent clipping Mind Flay before it is fully cast.

=Unverified Macros=

Pain Suppression
casts pain suppression on your mouseover and alerts raid with a link and the length of effect /script local u,ps,c="mouseover","Pain Suppression",GetNumRaidMembers>0 and "Raid";if IsSpellInRange(ps,u)==1 and GetSpellCooldown(ps)==0 then SendChatMessage(GetSpellLink(ps).." for 8 seconds on "..UnitName(u),c) end /cast [@mouseover] Pain Suppression

Pain Suppression
Casts Pain Suppression with the following parameters: /cast [mod:alt, target=player][mod:ctrl, target=target][target=focus, exists, nodead, noharm][target=target] Pain Suppression
 * No focus, no target – Pain Suppression on the player
 * No focus, a friendly target – Pain Suppression on the target
 * Friendly focus that is not dead – Pain Suppression on the focus
 * ALT modifier – Pain Suppression on the player
 * CTRL modifier – Pain Suppression on the target
 * All other situations will result in Pain Suppression being cast on the player (aggro target, aggro or dead focus, no target, etc.)
 * 1) showtooltip
 * Works in 3.3.3a

Pain Suppression
This is another macro like the last that is more for PVE healing because it only casts the spell on the focus target, but it also checks whether you're in a raid or party, then announces it accordingly. you can also always replace the two words "focus" with "mouseover" in order to have it cast on your mouseover. when changing it to a mouseover macro you also need to remove the first showtooltip line, in order for it to fit into 255 characters /script local u,ps,c="Focus","Pain Suppression",GetNumRaidMembers>0 and "RAID" or "PARTY";if IsSpellInRange(ps,u)==1 and GetSpellCooldown(ps)==0 then SendChatMessage(ps.." on "..UnitName(u),c) end /cast [target=Focus] Pain Suppression
 * 1) showtooltip

Disc priest main heal
Casts Penance, or Flash Heal or Smite based on what is available and what you are targeting: /stopmacro [channeling] /console Sound_EnableSFX 0 /use 13 /use 14 /castsequence [harm], Smite; , Flash Heal /cast Penance /console Sound_EnableSFX 1 /script UIErrorsFrame:Clear
 * 1) showtooltip Penance
 * Focus: Universal
 * Suggested key bind: Mouse Up
 * Validated: 3.1

Disc priest main prevention
Places a shield on friendly targets, DoTs on enemies to lead off combat. When you are in a group, it wands. /dismount [mounted] /castsequence [group, harm] !Shoot; [harm] reset=5/target Shadow Word: Pain, Devouring Plague, Power Word: Shield; reset=target/2 Power Word: Shield, Renew
 * 1) showtooltip
 * Focus: Universal
 * Suggested key bind: Mouse Down
 * Validated: 3.1

Disc priest PvP healing
Heals the target of your target (that is, clicking an enemy will heal the enemy's target) using Penance, followed by Power Word: Shield, and Flash Heal. /castsequence [target=targettarget] reset=15 Penance, Power Word: Shield, Flash Heal, Flash Heal, Flash Heal, Flash Heal, Flash Heal, Flash Heal
 * 1) Show Penance
 * Focus : PvP or PvE healing
 * Validated 3.1

Guardian Spirit
Casts Guardian Spirit with the following parameters: /cast [mod:alt, target=player][mod:ctrl, target=target][target=focus, exists, nodead, noharm][target=target] Guardian Spirit
 * No focus, no target – Guardian Spirit on the player
 * No focus, a friendly target – Guardian Spirit on the target
 * Friendly focus that is not dead – Guardian Spirit on the focus
 * ALT modifier – Guardian Spirit on the player.
 * CTRL modifier – Guardian Spirit on the target.
 * All other situations will result in Guardian Spirit being cast on the player (aggro target, aggro or dead focus, no target, etc.)
 * 1) showtooltip
 * Works in 3.3.3a

Lightwell
There are a range of Lightwell macros available online, mostly due to the lack of awareness found to exist within the community (especially pugs). Many priests find that without explaining or at least announcing the placement of their Lightwells, little or no benefit is gained from placing them. The macros below offer a few different explanatory messages or announcements, and of course are highly customisable.

Casts Lightwell, announces its placement and explains its use to other players in your party: /p Welcome to Lightwell. Please click Lightwell from up to 20 yards away for a HoT. Lightwell is usable while casting or stunned. Lightwell has limited charges, so do not click Lightwell unless healing is needed. /cast Lightwell
 * 1) showtooltip Lightwell
 * Note you can replace '/p' with '/ra' for use in Raids.

Clicked once, casts Lightwell. Clicked again, adds a raid marker above the LW and yells an announcement, explaining the LW and its marker: /cast Lightwell /target Lightwell /run SetRaidTarget("target", 2) /run local t=GetSpellCooldown("Lightwell") if t>0 then SendChatMessage("Lightwell up, please click it when low on health. Marked with {rt2} for easy spotting", "YELL") end
 * 1) showtooltip
 * It has been suggested that running the above macro without appending '/targetlasttarget' may cause the player to end-up targeting the Lightwell, which could be unfortunate in critical situations.

Shadow priest all-in-one (Mouse Up)
Casts Mind Blast, Shadow Word: Death, Mind Flay, or Devouring Plague: /stopmacro [channeling] /use 13 /use 14 /castsequence reset=11, Mind Blast, Shadow Word: Death, Mind Flay, Mind Blast, Mind Flay, Mind Flay /cast Devouring Plague /script UIErrorsFrame:Clear
 * 1) showtooltip Mind Blast
 * Focus: PVE
 * Suggested key bind: Mouse Up
 * Validated: 3.1

One-button Mind Flay-Mind Sear
Casts Mind Flay unless you press the shift key, in which cases casts Mind Sear (with Inner Focus): /cast [harm,exists, mod:shift] Inner Focus /cast [nomod:shift] Mind Flay; [mod:shift] Mind Sear
 * 1) showtooltip Mind Flay
 * Focus: both
 * Validated: 3.1.1

Shadow priest boss opener
Casts a series of spells that applies full Shadow Weaving in time for the SW:P and have full DoTs up before priority rotation comes into play: /castsequence reset=10 Vampiric Touch, Devouring Plague, Mind Blast, Shadow Word: Death, Vampiric Embrace, Shadow Word: Pain, Mind Blast, Mind Flay, Vampiric Touch, Mind Blast, Mind Flay
 * 1) showtooltip Shadow Word: Pain
 * If your Haste rating is very low, you may have to clip the first Mind Flay before the Vampiric Touch refresh.
 * Focus: PvE
 * Validated: 3.1.1

Shadowfiend/Shadowcrawl
Summons a Shadowfiend if one isn't out. Otherwise causes your pet to attack your target and Shadowcrawl it: /cast [nopet] Shadowfiend /petattack /cast Shadowcrawl
 * 1) showtooltip Shadowfiend
 * Focus: PvE
 * Validated: 3.1.1

Smart Shadowfiend/Shadowcrawl
Similar to the previous macro, but adds the ability for healing priests to send out a Shadowfiend without switching off of their heal targets: /cast [nopet,harm][nopet,target=targettarget,harm]Shadowfiend /petattack [harm][target=targettarget,harm] /cast [harm][target=targettarget,harm]Shadowcrawl
 * 1) showtooltip Shadowfiend
 * Sends Shadowfiend to attack your current target if they are not friendly; if your target is friendly, attacks the target's target (that is, if you are healing the tank, this macro sends the Shadowfiend onto the mob your tank is targetting).
 * Credit Xaeros of Shadowmoon
 * Works in 3.3.3a

Shield Shadowfiend
/castsequence [target=pet,exists,nodead] Power Word: Shield; [harm,nodead][target=targettarget,harm,nodead]Shadowfiend
 * 1) showtooltip Shadowfiend
 * Use: This macro will force the pet to auto attack either your target or the target of whoever you are healing. Also by clicking the macro a second time it will shield your Shadowfiend (thus reducing the chance your pet will die). Overall you will recover more mana.
 * Focus : Raid healing
 * Validated 3.3

Kevin Bacon Shadowfiend
/cast [harm,nodead][@targettarget,harm,nodead][@targettargettarget,harm,nodead][@targettargettargettarget,harm,nodead][@targettargettargettargettarget,harm,nodead][@targettargettargettargettargettarget,harm,nodead]Shadowfiend
 * 1) showtooltip
 * Use: This sends the Shadowfiend after the first hostile target down the chain of target of target of ... target six levels deep.
 * Focus : Raid healing
 * Validated 3.1

Focused mind control
Casts Mind Control in these situations: /focus [target=focus,noexists][target=focus,dead][target=focus,noharm][mod] /cast [target=focus] Mind Control
 * No Focus, dead focus, or friendly focus – focuses your current target and casts Mind Control
 * Focus that is alive and is unfriendly – casts Mind Control
 * The modifier forces your focus to switch to the current target and casts Mind Control
 * 1) showtooltip
 * Credit: Xaeros of Shadowmoon
 * Works in 3.3.3a

Clip-prevention Mind Sear
Prevents clipping off the previous Mind Sear before its full cast: /stopmacro [channeling] /cast Mind Sear
 * 1) showtooltip Mind Sear
 * This macro is spammable; the stopmacro command sets the condition that you will not be able to cast Mind Sear until you are no longer casting a channeling spell
 * Focus: PVE
 * Validated: 3.1

An alternate method combines the two commands: /cast [nochanneling] Mind Sear
 * 1) showtooltip Mind Sear

Space-saving Smite/Heal
Saves space by having the same button cast Smite on enemies, and Flash Heal on friendly targets: /cast [harm] Smite; Flash Heal
 * 1) showtooltip
 * Mix and match heal and harm spells based on your key binding preferences
 * Focus: Universal
 * Validated: 3.1

This macro can be duplicated for other damage and healing spells in the priest's arsenal.

A more complicated macro can introduce a sequence of DPS spells: /use 13 /use 14 /castsequence [harm] reset=6 Holy Fire, Smite, Smite, Smite; Flash Heal
 * 1) showtooltip
 * Focus: Universal
 * Validated: 3.1

All-in-one Healing Macro
/cast [modifier:shift, nomodifier:alt] Greater Heal /cast [modifier:alt, nomodifier:shift] Binding Heal /cast [modifier:alt, modifier:shift] Prayer of Mending /cast [nomodifier:alt, nomodifier:shift] Flash Heal
 * 1) showtooltip
 * This is a handy way of reducing clutter on your action bar.
 * By default this will cast Flash Heal on your current target.
 * If you press shift and alt while activating this macro you'll cast prayer of mending
 * If you hold alt while casting this macro you'll cast a binding heal (I like it because this is very similar to the traditional "hold alt to heal yourself" concept)
 * And if you hold just shift you'll cast a Greater Heal
 * Focus: Healing
 * Tested: 3.3 Compatible
 * Updated by Daystar of Emerald Dream 12/10/2009

Power Word: Shield or Renew
/cast [modifier:shift] Renew; Power Word: Shield Sqeeks (talk) 04:46, September 30, 2009 (UTC)
 * 1) showtooltip [modifier:shift] Renew; Power Word: Shield
 * Inspired by my Rogue Finisher Macro and my friend who has a hard time finding her healing spells and knowing what ones to use.
 * A simple way to chose rather you cast your classic Priest bubble or cast Renew without fussing with finding the spells in your action bar(s).
 * Default spell is Power Word: Shield, with the modifier as shift holding shift down allows you to cast Renew.
 * Confirmed does work as intended.

Guardian Spirit on focus
This macro casts Guardian Spirit on your focus. Recommended for use when putting setting the tank as your focus. The optional final line is designed to put a shield on a target that you may have been halfway through a Greater Heal on before casting Guardian Spirit on the focus. This buys your previous target a little more time while you recast the heal. /stopcasting /cast [target=focus] Guardian Spirit /cast [target=focus] Power Word: Shield
 * 1) show Guardian Spirit

One-Click Dispel
This macro consolidates your dispels into one single button: /focus /target [modifier:alt] Player /cast [nomodifier] Dispel Magic /cast [modifier:alt] Dispel Magic /cast [modifier:shift] Mass Dispel /target focus /clearfocus
 * 1) showtooltip
 * If you click, it will simply cast Dispel Magic on your current target (friendly or enemy)
 * If you ALT + click, it will cast Dispel Magic on yourself without losing your current target
 * If you SHIFT + click, it will cast Mass Dispel without losing your current target

PoM Auto-Jump
When healing in a dungeon / raid, you are usually focused on a friendly unit. If Prayer of Mending jumps on you meanwhile, you can make it jump to another friendly unit by casting Shadow Word: Death on an enemy unit because you would be taking damage.

This macro will automatize this process. Whenever you see Prayer of Mending on yourself, you can cast this simple macro. It will target the enemy unit your friend is targeting, cast Shadow Word: Death (make damage to yourself and make Prayer of Mending jump) and target your friend again. All in one single click! /assist /cast Shadow Word: Death /targetlastfriend
 * 1) showtooltip

Smart Self-Buff
This allows you to cast all of the priests buffs on yourself, without having to change targets. In addition to casting (in this order) Inner Fire, Shadow Protection, Power Word: Fortitude and Divine Spirit, this macro will also cast Vampiric Embrace when in Shadowform. It is currently set to a 4 second reset, which can be changed to suit your preference (will always start with Inner Fire after the reset, as this is the most often cast buff). /castsequence [target=player,nostance] reset=4 Inner Fire, Shadow Protection, Power Word: Fortitude, Divine Spirit /castsequence [target=player] reset=4 Inner Fire, Shadow Protection, Vampiric Embrace, Power Word: Fortitude, Divine Spirit
 * 1) showtooltip
 * Made this to save space on my action bars
 * Validated 09.25.2010 with 3.3.5
 * Provided by Celexia (Undermine)

Unvalidated older macros
The following older macros have not been validated to work after the introduction of patch 3.1. Use at your own risk.

Damage dealing macro for low levels
This macro unifies spells for doing damage: /cast [mod:alt, target=player] Power Word: Shield /cast [nomod:alt, nocombat] Smite /castsequence [nomod:alt, combat] reset=combat/target Shadow Word: Pain, Mind Blast, Smite, Smite What the macro does: Assign this macro to some key, then assign another key for Lesser Heal (or Renew) and another for Shoot (or Attack, if you don't have a wand) so that you only need 3 command keys.
 * 1) showtooltip
 * Line 1 casts Power Word: Shield whenever the alt key is pressed
 * Line 2 starts an attack. Target some enemy, then press the button and it will cast Smite
 * Line 3 is the combat cast sequence (for levels below 10, remember to remove Mind Blast from the macro).

Suggested use of macro:
 * Can cast Power Word: Shield either before the attack, in the middle or not at all.
 * The second line only works if attacking the target first, in which case casts Smite. If the enemy attacks first, then the third line enters into action, avoiding the slow Smite cast.
 * After the sequence casts Mind Blast, choose between using zero, one or two Smites before switching to melee attack, at which point either finish the cycle and repeat or kill the enemy with a final Smite.

If you are fast enough and far enough away from the enemy target, you can cast two Smites before you enter combat.

This macro is good for playing with levels below 20.

Resurrection notifier
Sends a tell to the player you have your mouse over. This is great for seeing if the ressie is online; you will still need to click the ressie to give them the res :) /script SendChatMessage("Incoming ressurrection", "WHISPER", nil, UnitName("mouseover")); /say I am ressurrecting %t /cast Resurrection The contents of the whisper can be changed as long as you wrap the phrase in double quotes, as shown in the macro. The /say line is optional.
 * 1) showtooltip

Better Resurrection Notifier
This macro checks if your in range of the target and if your in a group before you are announcing that you are resurrecting people when you actually arent. this macro is best suited for Clique, by binding a mouse combination with a special macro. if you are putting this macro on your actionbars, then its best if you add #showtooltip as the first line /script local u,rez,c="Mouseover","Resurrection",GetNumRaidMembers>0 and "RAID" or "PARTY";if IsSpellInRange(rez,u)==1 then SendChatMessage(rez.." on "..UnitName(u),c) end /cast [target=Mouseover] Resurrection

Stopcasting
This one command is a requirement in all Greater Heal usage for Raid healers. It is not proper to jump or move to interrupt casting (this can mean wipes on certain fights). The Priest should always have a heal casting and cancel it by using a heal with the /stopcasting command. Since downranking is no longer supported, Consider having macros made for Greater Heal and Renew. You may also want to try Power Word: Shield and Dispel Magic for emergencies, but these are instant casts, one with cooldown one with dual functionality, so use caution before heading out to a raid or PVP battle with them. /stopcasting /cast [target=mouseover,exists] Greater Heal

/stopcasting /cast [target=mouseover,exists] Renew Or one that casts Greater Heal on your target if it is friendly and on your mouseover if not /stopcasting /cast [help] Greater Heal; /cast [harm] [target=mouseover,exists] Greater Heal

Smart Greater Heal
This macro casts Greater Heal on your target if your target is friendly; if your target is an enemy, casts Greater Heal on your target's target.

/cast [help][target=targettarget][] Greater Heal

The following adds a modifier that allows you to heal yourself when holding down the alt key. These also work with any other heal.

/cast [help, nomodifier:alt][nomodifier:alt, target=targettarget][modifier:alt, target=player][] Greater Heal
 * 1) showtooltip Greater Heal

Shield Self without losing healing target
On one button press you can use Power Word: Shield on yourself without losing your current healing target.

/cast [target=player]Power Word: Shield

Mouseover Heal
Allows you to mouseover a party member and heal them. Also works nicely for Power Word: Fortitude:

/cast [target=mouseover,exists][] Flash Heal

The following macro cast Renew or heal on a single target, in the following order:
 * 1) If target is friendly
 * 2) If the mouse is over a friendly target
 * 3) If the target is hostile, then on the target's target
 * 4) If no target, then player

/castsequence [help] [target=mouseover,help,exists] [target=targettarget, help, exists] [target=player] reset=target/5 Renew, Heal

The following also self casts if the player holds alt, no matter what is moused over or targeted:

/stopcasting /cast [nomodifier:alt,target=mouseover,nodead,help][nomodifier:alt,help,nodead][nomodifier:alt,target=targettarget,nodead,help][nomodifier:alt,target=player][modifier:alt,target=player]Greater Heal

Its order is Mouseover -> target -> target's target -> self, holding down alt will skip to self.

One Button Renew or SW:Pain
This macro casts either Renew (friendly) or Shadow Word: Pain (hostile) on whoever is hovering under your mouse that exists and is not dead. If you're not hovering, it does either Renew (friendly) or Shadow Word: Pain (hostile) on your selected target that is not dead. If all of the above are false, you will Renew yourself.

/cast [target=mouseover,exists,help,nodead] Renew; [target=mouseover,exists,harm,nodead] Shadow Word: Pain; [help,nodead] Renew; [harm,nodead] Shadow Word: Pain; [target=player] Renew

A different version of the above macro (make self-cast available with alt, removes some redundancies):

/cast [target=player,modifier:alt] [target=mouseover,help,nodead] Renew; [target=mouseover,harm,nodead] Shadow Word: Pain; [help,nodead] Renew; [harm,nodead] Shadow Word: Pain; [target=focus,exists] [target=player] Renew

What it does (if condition isn't met, move on to the next): This could also be easily applied to any other spell combination (Holy Fire/Heal, Smite/Flash Heal, for example).
 * 1) If holding ALT, cast Renew on yourself.
 * 2) If mousing over an ally, cast Renew on them.
 * 3) If mousing over an enemy, cast Shadow Word Pain on them.
 * 4) If targeting an ally, cast Renew on them.
 * 5) If targeting an enemy, cast Shadow Word Pain on them.
 * 6) If you have a focus, cast Renew on them.
 * 7) If all else fails, cast Renew on yourself.

Rebuff yourself
This macro rebuffs the player. Multiple clicks are required.

/cast [nostance] Shadowform /castsequence [target=player,stance:1] Inner Fire, Power Word: Fortitude, Shadow Protection, (Racial Priest Spell)

This macro will do the following:
 * If target is hostile: cast a spell then start using your wand (requires two keypresses)
 * If target is friendly: cast buff
 * if no target: cast buffs on player (requires key press for each buff)

/castsequence [harm] reset=target/18 Shadow Word: Pain, Shoot /stopmacro [harm] /cast [help] [target=targettarget, help, exists] Power Word: Fortitude /castsequence [target=player] reset=5 Inner Fire, Power Word: Fortitude

This macro is a bit more precise than the above one and allows for castsequence to friendly targets.
 * 1) If the target is friendly: then buff target
 * 2) If the target is hostile: Then damage
 * 3) If no target: Then buff self

/castsequence [help] reset=target/5 Power Word: Fortitude, Shadow Protection /castsequence [harm] reset=target/18 Shadow Word: Pain, Shoot /castsequence [target=player] reset=15 Inner Fire, Shadow Protection, Power Word: Fortitude

The following is an easy self-buff:

/castsequence [target=player] reset=20/ Inner Fire, Power Word: Fortitude, Shadow Protection

Shackle Undead and focus on target
This macro will first shackle your current target and set that target to be your focus target. This will allow you to reshackle a mob without having to retarget it.

/clearfocus [modifier:alt][target=focus,dead][target=focus,help][target=focus,noexists] /focus [target=focus,noexists] /cast [target=focus]Shackle Undead
 * 1) showtooltip Shackle Undead

If you want to announce your shackle add a line like this to the end of the macro

/raid Shackling %f

Ultimate Mind Control Macro
This macro will first Mind Control your current target and set that target to be your focus target. This will allow you to Mind Control again with another click without having to change targets. When you are ready to release, right click will release your Mind Control, cast Fade, re-target the Mind Controlled enemy, clear focus, and announce that you have released your mind control.

/focus [target=focus,noexists] /cast [nobtn:2,target=focus]Mind Control /stopmacro [nobtn:2] /script PetDismiss /cast Fade /target focus /clearfocus /stopmacro [nogroup] /s Mind Control Released!
 * 1) showtooltip Mind Control

Instructor Razuvious Mind Control
This macro will help you on the Naxxramas 25 fight versus Instructor Razuvious. It allows you to Mind Control your designated Understudy (focus target) and target the Instructor right after, so you can use taunt right away if necessary. If you set up a focus macro as well, you can switch to another Understudy quickly if yours dies.

/cast [target=focus] Mind Control /tar Instructor
 * 1) showtooltip

/focus
 * 1) showtooltip

Use trinket, cast Inner Focus, and cast Devouring Plague
Obviously useful only for priests with Inner Focus talent. You have to change trinket's name to the one you own and want to use (trinket has to be equipped). This macro will also prevent wasting trinket's and Inner Focus's cooldowns if your target is accidentally friendly or simply cannot be attacked.

#showtooltip Devouring Plague /use [harm] Xi'ri's Gift /cast [harm] Inner Focus /stopcasting /cast Devouring Plague

For Healing with Trinket
#showtooltip Heal trinket /use 13 /use 14 /cast Inner Focus /cast Greater Heal

Cast Silence if available, otherwise cast Arcane Torrent
This macro will cast the Silence spell. If Silence is on cooldown, it will cast Arcane Torrent. Obviously, this macro is only of use to Blood Elves.

/castsequence reset=45 Silence, Arcane Torrent

Spammable Mind Flay
This macro will allow you to spam Mind Flay without interrupting the one already channeling.

/cast [nochanneling:Mind Flay] Mind Flay
 * 1) showtooltip Mind Flay

Change stance and cast depending on target reaction
This macro will look at your stance and your current target. If the target is hostile and you are in Shadowform Mind Blast will be cast, if you are not in Shadowform it will put you into it. Will do the same for Flash Heal if the target is friendly and change your stance accordingly.

/cast [stance:1,harm] Mind Blast; [stance:1,help] Shadowform; [nostance,help] Flash Heal; [nostance,harm] Shadowform

This macro is the same as above but will start a grind sequence to kill the mobs with nice mana efficiency. The targeting of a friendly target will cast Flash Heal then Renew.

/use 14 /use 13 /castsequence [stance:1,harm] reset=target/combat Vampiric Touch, Shadow Word: Pain, Vampiric Embrace, Mind Flay, Mind Blast, Shoot; [stance:1,help] Shadowform; [nostance,help] Flash Heal, Renew; [nostance,harm] Shadowform

The Polite Reply
Make those whispers less hassle with a polite reply when needed.

/r I'm not a healbot. Good luck!

Mouseover Flash Heal on friendly, Mind Blast on enemy
Cast Flash Heal if mouseover a friendly target, Mind Blast if over an enemy. If mouse is over nothing, it will cast on the current target. The only drawback is you will need to have a set of self cast macros. /cast [target=mouseover,noharm,exists] Flash Heal;[target=mouseover,harm,exists] Mind Blast;[noharm]Flash Heal;[harm]Mind Blast
 * 1) showtooltip

Will of the Forsaken and Fear Ward
This will cast Will of the Forsaken and then Fear Ward without losing your target. Mostly a PvP macro. It requires 2 button presses.

/castsequence reset=5 [target=player]Will of the Forsaken,Fear Ward
 * 1) showtooltip Will of the Forsaken

Dispel Magic
This will dispel magic on your target, should one exist. If not, then it will work like a normal Dispel Magic. Right-Clicking will cast it on you.

/cast [btn:1,exists,nodead][btn:1][btn:2,target=player] Dispel Magic
 * 1) showtooltip

Stingy Raid Priest
Alt-clicking this will toggle to the next nearby friendly player. Then each click will cast a separate buff. This is particularly useful in battlegrounds.

/targetfriend [modifier:alt] /castsequence [nomodifier] reset=target/5 Power Word: Fortitude, Divine Spirit, Shadow Protection
 * 1) showtooltip

Shield target or self
Shields target if it is in your party/raid, otherwise shields you.

/cast [group,help][target=player] Power Word: Shield
 * 1) showtooltip

Wand On
This is a wand macro that helps prevent you from accidentally switching off your wand's shoot.

/cast !shoot
 * 1) shoot

Normally using your wand toggles 'shoot' on and off. This macro keeps it switched on. So if you accidentally press it twice, it'll still keep shooting. It works most of the time (unless you really mash the key).

The ! exclamation is the key to this. It stops the toggle. If you want to stop shooting, jump, move, re-target or kill the mob.

Devouring Plague and SW:Pain
Two presses the first does SW:Pain the second does Devouring Plague (which has a 24 sec cooldown). To reset, click another mob, click away, or ctrl click. Resets when you leave combat too.

/startattack /castsequence reset=24/target/combat/ctrl Shadow Word: Pain, Devouring Plague

Super PoM
This macro starts by attempting to PoM the target of whatever enemy you have selected. It's perfect in PvP for helping out the target of the enemy player you select, and it's perfect in PvE for getting an instant heal in on someone who may have accidentally pulled aggro. If you have no target selected, it attempts to PoM your Focus if you have one set up. If neither of those happen, you will PoM yourself.

/cast [help][target=targettarget,help][target=focus,help][target=player] Prayer of Mending

Self-Cast when solo/standard casting when in party/raid
This macro will work for any beneficial spell — buffs and heals. When solo, whatever spell you have it set up for will be cast on self. When in a party or raid, it will either cast the spell on your current target or give you the standard click-on-target-to-cast - the same as if you were using no macro for the spell at all.

/cast [nogroup,target=player] [group,help] [group,target=none] 
 * 1) showtooltip

Replace spellname with the spell you would like to use it for. The one drawback of this macro is that when you are solo, you cannot cast buffs on random people you pass without going to your spellbook.

Easy Shadowfiend
This macro will summon your Shadowfiend on your current target if it is hostile, or your target's target if your current target is friendly.

/cast [harm,nodead][target=targettarget,harm,nodead]Shadowfiend
 * 1) showtooltip Shadowfiend

I'm under attack!
This is possibly the most important macro a party/raid healer can have. Put it in an easily accessible action bar slot, or bind it to something convenient.

/rw The healer is under attack! /helpme

Particularly useful while pugging. Gets a near instantaneous response out of most tanks (and the beefier DPS will typically run to your aid, too). Without it, party members will often simply not notice that you've drawn aggro until you have died. Variants include using /p or /y instead of the raid warning. However, I have found that in the kind of sticky situations where you NEED the macro, party members are far too distracted to notice party chat or a yell; the raid warning never fails.

Inner Focus/Nevermelting Ice Crystal SWP
/use Nevermelting Ice Crystal /castsequence reset=170 Inner Focus, Shadow Word: Pain
 * 1) showtooltip Shadow Word: Pain