Jump to definition and dotted imports
Nobody has claimed this yet.
- Dominant language
- Racket
- Stars
- 601
- Forks
- 74
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 5
Description
With this file in y.rhm:
#lang rhombus
export y
def y = 1
and this file (in the same directory) open in drracket:
#lang rhombus
import:
"y.rhm"
"y.rhm" open
y
y.y
You’ll see that the y by itself has “jump to definition” but the y.y doesn’t. Helpfully, the first y in the y.y has a link up to the import line, so I guess that it would be ideal if the second y in the y.y had the syntax information that triggered the jump-to-definition.
Judging from the file drracket-tool-text-lib/drracket/private/syncheck/traversals.rkt, Check Syntax looks at identifier-binding to find these, using the module-path index in the first element of the result list to get a filename.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the two Rhombus files in DrRacket and inspect drracket-tool-text-lib/drracket/private/syncheck/traversals.rkt, especially the identifier-binding handling described in the issue. Follow how the first y in y.y gets syntax information from the import, then make the second y support jump-to-definition as well. Done means both the standalone y and the dotted y.y navigate to the definition in y.rhm.
Written by the indexing model from the issue text.
Assessment
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 65/100