I have developed a grammar for a DSL for our product and am super impressed with how quickly I have been able to put it together with Antlr4 in C#. Many thanks for the book and your work on Antlr. Now we want to provide some context aware editing support. Is it possible to use the parse tree or a listener to locate and identify tree nodes at specific character positions? Is it then possible to determine what grammar items would be valid at specific locations?