I'm not a native English speaker, but I do understand and personally appreciate the use of the term "xyz Nazi" to say that someone is a bit dogmatic about their point of view, without necessarily offending them. A related question here on SE is:
Is "grammar nazi" politically correct?
But most often, my writing doesn't address only English speakers, but also others. Being a native German speaker (although not from Germany), I'm a bit more sensitive to how this might be received with my every day audience.
What would be an equivalent term with a similar semantics (funny, slightly reproachful, but not really offensive)?