The Java specific M3 has these pretty location protocols like java+method
, java+enum
, java+variable
and many more. As far as I understand these pretty locations function as aliases for "real" locations like |project://example-project/src/HelloWorld.java|(0,1,<2,3>,<4,5>)
, referring to a specific piece of code within that file.
I would like to create those pretty locations for my own CSS specific M3. So they should look something like css+declaration
or css+ruleset
. I already have the actual "real" locations which I now directly pass on to the M3 Core. But this looks really messy and you cannot tell the locations apart.
So how do link my "real" locations to these pretty locations so that they actually function within the Rascal terminal? Can someone tell me the steps required to achieve this? Or maybe show me an example? I have already looked at the implementation for the Java specific M3 but I cannot seem to get my head around it.