GH links: use variables everywhere

This commit is contained in:
Yann Cébron 2025-05-22 17:45:29 +02:00
parent 030584ff3c
commit 157212ac17
15 changed files with 36 additions and 36 deletions

View File

@ -6,7 +6,7 @@
<tldr>
**Repository**: [intellij-plugins](https://github.com/JetBrains/intellij-plugins)
**Repository**: [intellij-plugins](%gh-ij-plugins%/)
</tldr>

View File

@ -92,7 +92,7 @@ It's important that you're familiar with
source code, as well as other basic features of IntelliJ IDEA.
Many developers keep the
[IntelliJ Community source code](https://github.com/JetBrains/intellij-community)
[IntelliJ Community source code](%gh-ic%/README.md)
open in a separate IDE project while working on their plugin.
Others search the source code of the IntelliJ Platform that is attached by default when using a [Gradle](creating_plugin_project.md)-based project.
While both methods work, it should be noted that developing plugins without inspecting the IntelliJ Platform code is nearly impossible,

View File

@ -31,6 +31,6 @@ The following links represent useful resources for working with the IntelliJ Pla
* [IntelliJ Platform SDK Documentation](https://github.com/JetBrains/intellij-sdk-docs) & [IntelliJ Platform SDK Code Samples](https://github.com/JetBrains/intellij-sdk-code-samples)
* [IntelliJ Platform Plugin Template](https://github.com/JetBrains/intellij-platform-plugin-template)
* [IntelliJ Community Edition](https://github.com/JetBrains/intellij-community)
* [IntelliJ Community Edition](%gh-ic%/README.md)
* [IntelliJ Plugins](https://github.com/JetBrains/intellij-plugins)
* [Open Source Plugins on JetBrains Marketplace](https://plugins.jetbrains.com/search?orderBy=name&shouldHaveSource=true)

View File

@ -1,4 +1,4 @@
<!-- Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<!-- Copyright 2000-2025 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
# Contributing to the IntelliJ Platform
@ -66,7 +66,7 @@ When writing a plugin, you have control over the code and don't need to sign the
### Submit a Patch
If you would like to improve the code in the IntelliJ Platform or the core functionality of IntelliJ IDEA, you can submit a pull request to the [IntelliJ IDEA Community Edition repository on GitHub](https://github.com/JetBrains/intellij-community).
If you would like to improve the code in the IntelliJ Platform or the core functionality of IntelliJ IDEA, you can submit a pull request to the [IntelliJ IDEA Community Edition repository on GitHub](%gh-ic%/README.md).
When preparing the change, please make sure to follow the [](intellij_coding_guidelines.md).
A developer will review your contribution and, if it meets the quality criteria and fits well with the rest of the code, you'll be notified about the acceptance of the patch.

View File

@ -1,4 +1,4 @@
<!-- Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
# Required Experience
@ -19,7 +19,7 @@ Developing a plugin for the IntelliJ Platform requires knowledge and experience
Keep in mind that the IntelliJ Platform is a large project, and while we are doing our best to cover as many topics as possible,
it is not possible to include every feature and use-case in the documentation.
Developing a plugin will sometimes require digging into the [IntelliJ Platform code](https://github.com/JetBrains/intellij-community)
Developing a plugin will sometimes require digging into the [IntelliJ Platform code](%gh-ic%/README.md)
and analyzing the [example implementations in other plugins](https://jb.gg/ipe).
> It is highly recommended to get familiar with the [](explore_api.md) section before starting with the plugin implementation.

View File

@ -9,7 +9,7 @@
The <path>plugin.xml</path> configuration file contains all the information about the plugin, which is displayed in the [plugins' settings dialog](https://www.jetbrains.com/help/idea/managing-plugins.html), and all registered extensions, actions, listeners, etc.
The sections below describe all the elements in detail.
The example <path>plugin.xml</path> files can be found in the [IntelliJ SDK Docs Code Samples](https://github.com/JetBrains/intellij-sdk-code-samples) repository.
The example <path>plugin.xml</path> files can be found in the [IntelliJ SDK Docs Code Samples](%gh-sdk-samples-master%/README.md) repository.
## Additional Plugin Configuration Files
@ -592,7 +592,7 @@ Attributes
`order`.
<br/>
To not clash with other plugins defining extensions with the same identifier,
consider prepending the identifier with a prefix related to the plugin [`<id>`](#idea-plugin__id) or
consider prepending the identifier with a prefix related to the plugin [`<id>`](#idea-plugin__id) or
[`<name>`](#idea-plugin__name), for example, `id="com.example.myplugin.myExtension"`.
- `order` _(optional)_<br/>
Allows for ordering the extension relative to other instances of the same extension point.
@ -616,7 +616,7 @@ Attributes
- `mac`
- `unix`
- `windows`
For example, `os="windows"` registers the extension on Windows only.
### `extensionPoints`
@ -694,12 +694,12 @@ Attributes
The scope in which the [extension](plugin_extensions.md) is
instantiated.
Allowed values:
- `IDEA_APPLICATION` _(default)_
- `IDEA_PROJECT`
- `IDEA_MODULE` (**deprecated**)
**It is strongly recommended not to introduce new project- and module-level extension points.**
If an extension point needs to operate on a `Project` or `Module` instance, declare an application-level extension
point and pass the instance as a method parameter.
@ -742,7 +742,7 @@ Example
An extension point which restricts the type provided in a `myClass` attribute to be an instance
of `com.example.ParentType`, and the type provided in a `someClass` element to be an instance
of `java.lang.Comparable`:
```xml
<extensionPoint
name="myExtension"
@ -755,18 +755,18 @@ Example
implements="java.lang.Comparable"/>
</extensionPoint>
```
When using the above extension point, an implementation could be registered as follows:
```xml
<myExtension ...
myClass="com.example.MyCustomType">
<someClass>com.example.MyComparable</someClass>
</myExtension>
```
where:
- `com.example.MyCustomType` must be a subtype of `com.example.ParentType`
- `com.example.MyComparable` must be a subtype of `java.lang.Comparable`
@ -1492,7 +1492,7 @@ Children
Example
:
Given a plugin descriptor:
```xml
<idea-plugin xmlns:xi="http://www.w3.org/2001/XInclude">
<id>com.example.myplugin</id>
@ -1501,18 +1501,18 @@ Example
...
</idea-plugin>
```
and <path>/META-INF/another-plugin.xml</path>:
```xml
<idea-plugin>
<extensions>...</extensions>
<actions>...</actions>
</idea-plugin>
```
The effective plugin descriptor loaded to memory will contain the following elements:
```xml
<idea-plugin xmlns:xi="http://www.w3.org/2001/XInclude">
<id>com.example.myplugin</id>

View File

@ -1,10 +1,10 @@
<!-- Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
# Code Samples
<link-summary>Accessing SDK Docs code samples.</link-summary>
This guide comes with a number of sample plugins available from dedicated [intellij-sdk-code-samples](https://github.com/JetBrains/intellij-sdk-code-samples) GitHub repository.
This guide comes with a number of sample plugins available from dedicated [intellij-sdk-code-samples](%gh-sdk-samples-master%/) GitHub repository.
Please see <path>README.md</path> which lists all available code samples with a short description.
@ -23,7 +23,7 @@ Make sure plugins _Git_, _Gradle_, and _Plugin DevKit_ are enabled.
<include from="snippets.topic" element-id="pluginDevKitAvailability"/>
Clone the [intellij-sdk-code-samples](https://github.com/JetBrains/intellij-sdk-code-samples) GitHub repository via <control>Git | Clone...</control>.
Clone the [intellij-sdk-code-samples](%gh-sdk-samples-master%/) GitHub repository via <control>Git | Clone...</control>.
After successful cloning, the IDE suggests opening the project.
Select the code sample(s) to import via the [Gradle tool window](https://www.jetbrains.com/help/idea/gradle.html#link_gradle_project).

View File

@ -458,7 +458,7 @@ Extension Point List
{#august-20}
README added to Code Samples
: All code samples used in this guide now come with <path>README</path>, making it easier to browse them. They can be conveniently accessed via a [separate GitHub repository](https://github.com/JetBrains/intellij-sdk-code-samples).
: All code samples used in this guide now come with <path>README</path>, making it easier to browse them. They can be conveniently accessed via a [separate GitHub repository](%gh-sdk-samples-master%/).
### June
{#june-20}

View File

@ -46,7 +46,7 @@ See the [](plugins_quick_start.md) for more details.
The IntelliJ Platform is Open Source, under the [Apache License](%gh-ic%/LICENSE.txt), and [hosted on GitHub](https://github.com/JetBrains/intellij-community).
While this guide refers to the IntelliJ Platform as a separate entity, there is no "IntelliJ Platform" GitHub repository.
Instead, the platform is considered to be an almost complete overlap with the [IntelliJ IDEA Community Edition](idea.md), which is a free and Open Source version of IntelliJ IDEA Ultimate (the GitHub repository linked above is the [JetBrains/intellij-community](https://github.com/JetBrains/intellij-community) repository).
Instead, the platform is considered to be an almost complete overlap with the [IntelliJ IDEA Community Edition](idea.md), which is a free and Open Source version of IntelliJ IDEA Ultimate (the GitHub repository linked above is the [JetBrains/intellij-community](%gh-ic%/README.md) repository).
Please note: starting with the 2021.1 release, some plugins bundled with IntelliJ IDEA Community Edition are not open-source.
The version of the IntelliJ Platform is defined by the version of the corresponding IntelliJ IDEA Community Edition release.

View File

@ -1,4 +1,4 @@
<!-- Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
# Android Studio Plugin Development
@ -170,7 +170,7 @@ See [](android_plugin_extension_point_list.md).
* Discussion of extending Android Lint - [How to Register AndroidLintInspectionBase in IntelliJIdea Plugin](https://intellij-support.jetbrains.com/hc/en-us/community/posts/360005018559-How-to-register-AndroidLintInspectionBase-in-IntellijIdea-Plugin)
* Grzegorz Matyszczak's article [How I Automated Creating Files for a New Screen with My Own Android Studio Plugin](https://proandroiddev.com/how-i-automated-creating-files-for-a-new-screen-with-my-own-android-studio-plugin-5d54b14ba6fa)
* Marcos Holgado's article series [Write an Android Studio Plugin (Part 1)](https://proandroiddev.com/write-an-android-studio-plugin-part-1-creating-a-basic-plugin-af956c4f8b50)
* [Android Plugin README](https://github.com/JetBrains/android#contents)
* [Android Plugin README](%gh-ij-android%/README.md)
## Open Source Plugins for Android Studio

View File

@ -1,4 +1,4 @@
<!-- Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
# Custom Language Support
@ -12,7 +12,7 @@ a plugin must implement only the language-specific part.
## Reference
This part of the documentation explains the main concepts of the *Language API* and guides you through the sequence of steps that are usually required to develop a custom language plugin.
You can obtain additional information about the *Language API* from the Javadoc comments for the *Language API* classes and from the Properties language support source code, which is part of the [IntelliJ IDEA Community Edition](https://github.com/JetBrains/intellij-community) source code.
You can obtain additional information about the *Language API* from the Javadoc comments for the *Language API* classes and from the Properties language support source code, which is part of the [IntelliJ IDEA Community Edition](%gh-ic%/README.md) source code.
## Tutorial

View File

@ -848,7 +848,7 @@ If you want to listen to changes in additional documents, use the methods `addWa
The following bundled open-source plugins make (heavy) use of DOM:
- [Android](https://github.com/JetBrains/android)
- [Android](%gh-ij-android%/README.md)
- [Ant](%gh-ic%/plugins/ant)
- [Plugin DevKit](%gh-ic%/plugins/devkit/devkit-core)
- [Maven](%gh-ic%/plugins/maven)

View File

@ -49,7 +49,7 @@ The IntelliJ Platform provides NLS context annotations, including:
[`@GutterName`](%gh-ic%/platform/lang-api/src/com/intellij/codeInsight/daemon/GutterName.java),
[`@TooltipTitle`](%gh-ic%/platform/platform-api/src/com/intellij/ide/TooltipTitle.java)
To find all available annotations, search for `@NlsContext` usages in the [intellij-community](https://github.com/JetBrains/intellij-community) source code.
To find all available annotations, search for `@NlsContext` usages in the [intellij-community](%gh-ic%/README.md) source code.
If the provided set of NLS context annotations are not sufficient, create custom annotations.

View File

@ -80,7 +80,7 @@ The most important methods are:
- `setupUI()` — defines the UI components for the step. Step UI is built with [](kotlin_ui_dsl_version_2.md)
- `setupProject()` — applies the parameters provided in UI to the generated project
See the example implementations in the [`intellij-community`](https://github.com/JetBrains/intellij-community).
See the example implementations in the [`intellij-community`](%gh-ic%/README.md) repository.
Steps build a tree structure (read the rest of this section for details), as some steps can be displayed depending on previously selected options.
`setupUI()` and `setupProject()` of steps building the tree are applied in the order from root to leaf.
@ -160,7 +160,7 @@ It is often required to populate a created project with initial assets like:
This can be achieved by creating a step extending [`AssetsNewProjectWizardStep`](%gh-ic%/java/idea-ui/src/com/intellij/ide/projectWizard/generators/AssetsNewProjectWizardStep.kt).
It allows for adding directories, static assets, assets generated from [Freemarker templates](https://freemarker.apache.org/docs/dgui_quickstart_template.html), and granting them proper file permissions.
See example implementations in the [`intellij-community`](https://github.com/JetBrains/intellij-community) repository.
See example implementations in the [`intellij-community`](%gh-ic%/README.md) repository.
### Steps Forking the Wizard Flow

View File

@ -33,7 +33,7 @@ It illustrates the components for a custom inspection plugin:
* Writing an HTML [description](#inspection-description) of the inspection for display in the inspection preferences panel.
* Creating a [test](#inspection-test) for the implemented inspection and quick fix.
Although the code sample illustrates implementations of these components, it is often useful to see examples of inspections implemented in the [IntelliJ Community](https://github.com/JetBrains/intellij-community) code base.
Although the code sample illustrates implementations of these components, it is often useful to see examples of inspections implemented in the [IntelliJ Community](%gh-ic%/README.md) code base.
To identify a given inspection's implementation classes, try to find an inspection [by name](explore_api.md#search-for-symbol-names) or [by UI texts](explore_api.md#search-by-ui-text).
Consider also searching for existing implementations in [IntelliJ Platform Explorer](https://jb.gg/ipe?extensions=com.intellij.localInspection).