That’s cool, lots of ways to do it. Pays to put some though into it and figure out what works for you.
My whole thing has been optimizing use of both hands, so at this point I have no macros that do anything stance related. This is pretty much the list
Charge/Hamstring: Frees up a button since it just casts Hamstring if in melee range.
#showtooltip
/cancelaura Bloodrage
/cast Charge
/cast Hamstring
/startattack
Same idea with Intercept:
#showtooltip
/cast Intercept
/cast Hamstring
/startattack
Warstomp: the stopattack is so I don’t immediately break it with my next white swing
#showtooltip
/stopattack
/cast War Stomp
Intimidating Shout: same thing, don’t want to fear something then immediately break it with auto attack
#showtooltip
/stopattack
/cast Intimidating Shout
Weapon Swap: the stopcasting is important to cancelling anything that would have to finish (like Heroic Strike) that would prevent the weapon swap
/stopcasting
/equipslot [noequipped:shields] 16 Perdition's Blade
/equipslot [noequipped:shields] 17 Draconian Deflector
/equipslot [equipped:shields] 16 Perdition's Blade
/equipslot [equipped:shields] 17 Alcor's Sunrazor
Shield Block: same thing, and Shield Block is off the GCD which is literally a live saver lol
#showtooltip Shield Block
/stopcasting
/equipslot [noequipped:shields] 16 Perdition's Blade
/equipslot [noequipped:shields] 17 Draconian Deflector
/cast Shield Block
Other than that, all of my abilities are a macro that has /startattack in them otherwise you stand there like a doofus if for any reason the ability doesn’t fire.
#showtooltip
/cast Revenge
/startattack