A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://plugins.jetbrains.com/docs/intellij/file-view-providers.html below:

File View Providers | IntelliJ Platform Plugin SDK

File View Providers

A file view provider (FileViewProvider) manages access to multiple PSI trees within a single file.

For example, a JSPX page has a separate PSI tree for the Java code in it (PsiJavaFile), a separate tree for the XML code (XmlFile), and a separate tree for JSP as a whole (JspFile).

Each of the PSI trees covers the entire contents of the file and contains special "outer language elements" in the places where contents in a different language can be found.

A FileViewProvider instance corresponds to a single VirtualFile, a single Document, and can retrieve multiple PsiFile instances.

How do I get a FileViewProvider? What can I do with a FileViewProvider? How do I extend the FileViewProvider?

To create a file type that has multiple interspersing trees for different languages, a plugin must contain an extension to the com.intellij.fileType.fileViewProviderFactory extension point.

Implement FileViewProviderFactory and return your FileViewProvider implementation from createFileViewProvider() method.

Register as follows in plugin.xml:

<extensions defaultExtensionNs="com.intellij"> <fileType.fileViewProviderFactory filetype="$FILE_TYPE$" implementationClass="com.example.MyFileViewProviderFactory"/> </extensions>

Where $FILE_TYPE$ refers to the type of the file being created (for example, "JSF").

19 March 2025


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4