For now i have a following case in my small project: 
I have a TextField and some expression like that "(5+(5+5)+5)+5". I already changed delimiters to "(" and ")". And now if you click here ( marked as .. ): "(5+**..**(5+5)+5)+5" then next text will be selected : "(**5+(5+5**)+5)+5" but i need this: "(**5+(5+5)+5**)+5". And i can do this by overriding a wordUnderCursor. 
I'm understand that this is too rarely case when you need a different delimiters for left/right or at all any other delimiter instead of whitespace but anyway.
I think that wordUnderCursor(float) and letterUnderCursor(float) can be private but not  wordUnderCursor(int).