Skip to content

No way to ensure an extension is prioritized as a rename provider in a language #115354

@atscott

Description

@atscott

We are implementing rename functionality and have found some guidance about how to ensure our extension "wins". This is based on the fact that rename takes the results from the first extension to return anything, the scoring implementation, and finally how the sorting handles when there is a score tie.

Unfortunately, the option for depending on the built-in extension doesn't work for us. The Angular Language Service provides features for both html and typescript languages. We've found that if the first document opened is an html file, the built in typescript extension does not register its providers, but our extension does. Then when a TS file is opened, the TS extension registers as a rename provider, meaning it will "win" the registration time tie breaker. The result is that renames will not work correctly from TS files.

We haven't found any additional guidance in existing issues or documentation on how to approach this. I guess I would categorize this as a feature request to make the provider registry for renaming more configurable.

Metadata

Metadata

Assignees

Labels

apirenameunder-discussionIssue is under discussion for relevance, priority, approach

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions