regal
regal copied to clipboard
Extend `textDocument/documentSymbol` to cover more symbols
With #668 we got basic support for textDocument/documentSymbol
, which means we currently iterate over all the "public", or top-level identifiers, like packages, rules, functions. This seems to cover the most important aspect of this, which is to quickly get an overview of a package and to be able to navigate around between the rules/functions. Regal doesn't settle for basic though, so we should look into extending our coverage here, and include things like values and symbols inside of rule bodies.
I think objects and arrays in particular would be helpful, as it would be helpful to see where in deeply nested constructs the cursor is. But I'm sure we'll find other useful aspects of this as we make progress.