Custom-dictionary-like replacements, but with interaction?

This action and discussion might be a good starting place for you…