How to control joinstyle of markers

The “joinstyle” used for individual markers seems to vary arbitrarily depending on how markers are specified. Here is a minimal example:

import matplotlib.pyplot as ppl

m1 = (5,1,0)
m2 = '^'
m3 = [(-1,0), (0,3**0.5), (1,0), (-1,0)]

kw = dict(mfc = 'w', mew = 12, ms = 72)

ppl.plot(-1, 0, marker = m1, **kw)
ppl.plot( 0, 1, marker = m2, **kw)
ppl.plot( 1, 0, marker = m3, **kw)


This produces the following plot:

I couldn’t find a way to force these markers to use a consistent joinstyle (miter, round, bevel). Is that even possible?

Bonus question: I would like green triangle in the example above to be closed instead of having this ugly chipped-off corner. I know I can hack it by specifying a more complex path, but I wonder if there is a better way.

The chipped triangle issue is similar to the one described at Inconsistent edges of half-filled markers · Issue #14357 · matplotlib/matplotlib · GitHub. There’s a sketch of solution at Fix half-filled markers protrusion by anntzer · Pull Request #19354 · matplotlib/matplotlib · GitHub, but more work is needed…