[SVN] REQUEST: Scope Querying API

Thomas Aylott - subtleGradient textmate at subtleGradient.com
Tue Jan 8 15:47:00 UTC 2008


On Jan 7, 2008, at 10:47 PM, Luke Daley wrote:
> On 08/01/2008, at 10:54 AM, Alain O'Dea wrote:
>
>> I would like to be able to query the current file or other project  
>> files for symbols based on scope. I would also like to be able to  
>> query for symbols with a common instance of a parent scope.
>>
>> For illustrative purposes I will use JavaScript-like syntax and JS  
>> DOM-like API:
>>
>> // get all atoms in the current document
>> document.getSymbolsByScope("source.erlang meta.function.erlang  
>> meta.structure.tuple.erlang constant.other.symbol.unquoted.erlang");
>>
>> // get all atoms in the current function
>> currentFunction = currentScope.getAncestorByScope("source.erlang  
>> meta.function.erlang");
>> currentFunction.getSymbolsByScope("source.erlang  
>> meta.function.erlang meta.structure.tuple.erlang  
>> constant.other.symbol.unquoted.erlang");
>>
>> // get all functions in the current module
>> document.getSymbolsByScope("source.erlang meta.function");
>
> +1 on all of that from me.
>
> Also, if you could find the closest something from the caret, that  
> would be very handy.
>
> LD.

Sounds wonderful.
There's already a way to get the scoped out xml of the current file.
Maybe there's already some kind of xml thing you can use to do it?
Every language on earth parses xml. I'm sure something exists that can  
be modified to do what you say.

I would love to have something that was really easy to use though.


—Thomas Aylott – subtleGradient—


More information about the textmate-dev mailing list