Yup, you want some intelligence built into the auto completion with isn't built into the editor (yet?). But you can modify the autocomplete list with a plugin. I put something together rather quickly and minimally tested it, so your mileage may vary. You still need to keep "$" out of the word separator list.
def on_query_completions(self, view, prefix, locations):
find_regions = view.find_all(r"\$[A-Za-z]+")
text = set()
for region in find_regions:
if region == view.word(view.sel()):
auto_complete = (x, x.replace("$", "\\$")) for x in text]
return (auto_complete, sublime.INHIBIT_WORD_COMPLETIONS | sublime.INHIBIT_EXPLICIT_COMPLETIONS)[/code]