selections with word granularity

Is it possible to implement something where instead of the selection having character granularity it has word granularity – i.e., it either covers a word completely or not at all? If it is possible but would require some effort, what would be the best approach?

You can double-click-and-drag. If you want all selections to have a certain granularity, I’m not sure that’s a good idea, but you could do it with a "beforeSelectionChange" handler.