Question 3 is the one that will decide this for you and it is also the one none of them can honestly promise.
General speech models are trained on general speech. Identifiers, library names and anything camel-cased come out as ordinary words, and no amount of local execution changes that. What varies between tools is whether they give you a way to correct it: a custom vocabulary or replacement list you can add your own terms to.
That is the feature to look for and it is usually buried, not on the front page. If a tool has no way to teach it your fifty recurring terms, your experience will be the one you already had, just with better sentence endings.
One of these being open source is worth something here for exactly that reason: you can see whether a vocabulary hook exists rather than guessing from marketing.