2020-04-22 12:54:06 +02:00

1.7 KiB

title
11. Find Usages Provider

A find usage provider uses a word scanner to build an index of words in every file. A scanner breaks the text into words and defines the context for each word.

  • bullet list {:toc}

11.1. Define a Find Usages Provider

The SimpleFindUsagesProvider implements FindUsagesProvider. Using the DefaultWordsScanner ensures the scanner implementation is thread-safe. See the comments in FindUsagesProvider for more information.

{% include /code_samples/simple_language_plugin/src/main/java/org/intellij/sdk/language/SimpleFindUsagesProvider.java %}

11.2. Register the Find Usages Provider

The SimpleFindUsagesProvider implementation is registered with the IntelliJ Platform in the plugin configuration file using the com.intellij.lang.findUsagesProvider extension point.

  <extensions defaultExtensionNs="com.intellij">
    <lang.findUsagesProvider language="Simple" 
            implementationClass="org.intellij.sdk.language.SimpleFindUsagesProvider"/>
  </extensions>

11.3. Run the Project

Rebuild the project, and run simple_language_plugin in a Development Instance. The IDE now supports Find Usages for any property with a reference:

Find Usages{:width="800px"}