From b969d1746858a50424d6b14ae7429d70312cf7f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yann=20C=C3=A9bron?= Date: Wed, 11 Jan 2023 14:43:08 +0100 Subject: [PATCH] "Settings/Preferences" is now "Settings" on all OSes --- buildUML/README.md | 2 +- code_samples/README.md | 47 +++++++++---------- .../src/main/resources/META-INF/plugin.xml | 4 +- .../api_notable/api_notable_list_2019.md | 8 ++-- .../resources/custom_plugin_repository.md | 8 ++-- .../tools_gradle_intellij_plugin.md | 4 +- .../tools_gradle_intellij_plugin_faq.md | 4 +- topics/basics/basic_action_system.md | 4 +- .../getting_started/theme/themes_extras.md | 12 ++--- topics/basics/persisting_sensitive_data.md | 6 +-- topics/basics/plugin_alternatives.md | 6 +-- topics/basics/plugin_signing.md | 10 ++-- .../plugin_structure/plugin_extensions.md | 6 +-- .../plugin_structure/plugin_icon_file.md | 6 +-- topics/basics/plugin_user_experience.md | 4 +- topics/basics/settings.md | 4 +- topics/basics/virtual_file_system.md | 6 +-- topics/intro/sdk_code_guidelines.md | 6 +-- topics/intro/sdk_style.md | 5 +- .../language_injection.md | 6 +-- .../references_and_resolve.md | 4 +- .../external_builder_api.md | 6 +-- .../external_system_integration.md | 8 ++-- topics/reference_guide/settings_guide.md | 10 ++-- .../working_with_custom_actions.md | 6 +-- topics/tutorials/code_inspections.md | 8 ++-- topics/tutorials/code_intentions.md | 4 +- .../code_style_settings.md | 10 ++-- .../line_marker_provider.md | 6 +-- ...tax_highlighter_and_color_settings_page.md | 6 +-- .../editor_basics/coordinates_system.md | 6 +-- .../providing_file_templates.md | 6 +-- .../using_file_templates.md | 6 +-- .../live_templates/template_support.md | 6 +-- .../postfix_completion/postfix_templates.md | 6 +-- topics/tutorials/settings_tutorial.md | 6 +-- .../kotlin_ui_dsl.md | 12 ++--- .../notifications.md | 6 +-- 38 files changed, 139 insertions(+), 141 deletions(-) diff --git a/buildUML/README.md b/buildUML/README.md index b421d0601..8f3f6ae02 100644 --- a/buildUML/README.md +++ b/buildUML/README.md @@ -14,7 +14,7 @@ Use [https://kroki.io/](https://kroki.io/). * Get and install the [PlantUML Integration plugin](https://plugins.jetbrains.com/plugin/7017-plantuml-integration) for IntelliJ IDEA: * Set the `GRAPHVIZ_DOT` system or environment property to point to the directory containing the Graphviz executable on your machine. For example, `export GRAPHVIZ_DOT="/usr/local/Cellar/graphviz/2.42.3/bin/dot"` - * In the PlantUML plugin Settings (**Settings/Preferences \| Other Settings \| PlantUML**) set: + * In the PlantUML plugin Settings (**Settings \| Other Settings \| PlantUML**) set: * The "Additional 'plantuml.include.path'" to be the absolute path to the directory containing the `jb-plantuml-theme.puml` file on your machine. For example, `//buildUML` or, if you have the IntelliJ-Community source code, `//platform/docs/`. * The "PlantUML config" to `!include jb-plantuml-theme.puml` diff --git a/code_samples/README.md b/code_samples/README.md index 1057fc469..5b63a55dc 100644 --- a/code_samples/README.md +++ b/code_samples/README.md @@ -34,30 +34,29 @@ Please see [Code Samples][docs:code-samples] topic on how to import and run code In the following table, you may find all available samples provided in the separated directories as stand-alone projects available for running with the Gradle [`runIde`](tools_gradle_intellij_plugin.md#tasks-runide) task. -| Code Sample | Description | -|------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [Action Basics](./action_basics) | Action and Action Group patterns implementation, adds entries to the Tools menu. | -| [Comparing References Inspection](./comparing_references_inspection) | Local Inspection Tool, adds entries to **Settings/Preferences | Editor | Inspections | Java | Probable Bugs**. | -| [Conditional Operator Intention](./conditional_operator_intention) | Intention action, suggests converting a ternary operator into an `if` block and adds entry to **Settings/Preferences | Editor | Intentions | SDK Intentions**. | -| [Editor Basics](./editor_basics) | Basic Editor APIs example with editor popup menu with extra actions. | -| [Facet Basics](./facet_basics) | Custom Facet pattern, adds *SDK Facet* to the **Project Structure | Project Settings | Facets** menu. | -| [Framework Basics](./framework_basics) | Basic *SDK Demo Framework* support added to the **File | New | Project | Java** wizard. | -| [Inspection Basics](./inspection_basics) | Code Inspection entry added to the **Settings/Preferences | Editor | Inspections | SDK | Example Tools**. | -| [Kotlin Demo](./kotlin_demo) | Kotlin example extending the *Main Menu* with a **Greeting** menu group. | -| [Live Templates](./live_templates) | Live templates for Markdown language, adds an entry to the **Settings/Preferences | Editor | Live Templates** dialog. | -| [Max Opened Projects](./max_opened_projects) | Application services and listeners, shows warning dialog when more than 3 open projects are opened. | -| [Module](./module) | *SDK Demo Module* module type added to the **File | New | Project...** wizard. | -| [Product Specific - PyCharm Sample](./product_specific/pycharm_basics) | Plugin project configuration for the PyCharm IDE. | -| [Project Model](./project_model) | Interacts with the project model, adds menu items to **Tools** and **Editor Context** menus. | -| [Project View Pane](./project_view_pane) | Project View Pane listing only image files. | -| [Project Wizard](./project_wizard) | Project Wizard example with demo steps. | -| [PSI Demo](./psi_demo) | PSI Navigation features presentation. | -| [Run Configuration](./run_configuration) | Run configuration implementation with factory, options and UI. | -| [Settings](./settings) | Custom settings panel, adds a settings panel to the **Settings/Preferences** panel under **Tools**. | -| [Simple Language Plugin](./simple_language_plugin) | Custom language support, defines a new *Simple language* with syntax highlighting, annotations, code completion, and other features. | -| [Theme Basics](./theme_basics) | Sample *theme* plugin with basic interface modifications. | -| [Tool Window](./tool_window) | Custom Tool Window example plugin. | -| [Tree Structure Provider](./tree_structure_provider) | Tree Structure Provider showing only plain text files. | +| Code Sample | Description | +|------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [Action Basics](./action_basics) | Action and Action Group patterns implementation, adds entries to the Tools menu. | +| [Comparing References Inspection](./comparing_references_inspection) | Local Inspection Tool, adds entries to **Settings | Editor | Inspections | Java | Probable Bugs**. | +| [Conditional Operator Intention](./conditional_operator_intention) | Intention action, suggests converting a ternary operator into an `if` block and adds entry to **Settings | Editor | Intentions | SDK Intentions**. | +| [Editor Basics](./editor_basics) | Basic Editor APIs example with editor popup menu with extra actions. | +| [Framework Basics](./framework_basics) | Basic *SDK Demo Framework* support added to the **File | New | Project | Java** wizard. | +| [Inspection Basics](./inspection_basics) | Code Inspection entry added to the **Settings | Editor | Inspections | SDK | Example Tools**. | +| [Kotlin Demo](./kotlin_demo) | Kotlin example extending the *Main Menu* with a **Greeting** menu group. | +| [Live Templates](./live_templates) | Live templates for Markdown language, adds an entry to the **Settings | Editor | Live Templates** dialog. | +| [Max Opened Projects](./max_opened_projects) | Application services and listeners, shows warning dialog when more than 3 open projects are opened. | +| [Module](./module) | *SDK Demo Module* module type added to the **File | New | Project...** wizard. | +| [Product Specific - PyCharm Sample](./product_specific/pycharm_basics) | Plugin project configuration for the PyCharm IDE. | +| [Project Model](./project_model) | Interacts with the project model, adds menu items to **Tools** and **Editor Context** menus. | +| [Project View Pane](./project_view_pane) | Project View Pane listing only image files. | +| [Project Wizard](./project_wizard) | Project Wizard example with demo steps. | +| [PSI Demo](./psi_demo) | PSI Navigation features presentation. | +| [Run Configuration](./run_configuration) | Run configuration implementation with factory, options and UI. | +| [Settings](./settings) | Custom settings panel, adds a settings panel to the **Settings** panel under **Tools**. | +| [Simple Language Plugin](./simple_language_plugin) | Custom language support, defines a new *Simple language* with syntax highlighting, annotations, code completion, and other features. | +| [Theme Basics](./theme_basics) | Sample *theme* plugin with basic interface modifications. | +| [Tool Window](./tool_window) | Custom Tool Window example plugin. | +| [Tree Structure Provider](./tree_structure_provider) | Tree Structure Provider showing only plain text files. | [gh:workflow-code-samples]: https://github.com/JetBrains/intellij-sdk-docs/actions?query=workflow%3ACode%20Samples [gh:template]: https://github.com/JetBrains/intellij-platform-plugin-template diff --git a/code_samples/settings/src/main/resources/META-INF/plugin.xml b/code_samples/settings/src/main/resources/META-INF/plugin.xml index 1e4780ddf..fec37c097 100644 --- a/code_samples/settings/src/main/resources/META-INF/plugin.xml +++ b/code_samples/settings/src/main/resources/META-INF/plugin.xml @@ -1,4 +1,4 @@ - + @@ -16,7 +16,7 @@ Adds a settings panel to the Settings/Preferences + Demonstrates implementing a custom settings panel.
Adds a settings panel to the Settings panel under Tools. ]]>
diff --git a/topics/appendix/api_notable/api_notable_list_2019.md b/topics/appendix/api_notable/api_notable_list_2019.md index 0255930f2..89842efc3 100644 --- a/topics/appendix/api_notable/api_notable_list_2019.md +++ b/topics/appendix/api_notable/api_notable_list_2019.md @@ -1,6 +1,6 @@ -[//]: # (title: Notable Changes in IntelliJ Platform and Plugins API 2019.*) +# Notable Changes in IntelliJ Platform and Plugins API 2019.* - + ## 2019.3 @@ -22,7 +22,7 @@ Symbol completion in plain text editor (VCS Commit Message) : Contribute symbol names (classes, methods, ..) via `com.intellij.completion.plainTextSymbol` extension point (`com.intellij.codeInsight.completion.PlainTextSymbolCompletionContributor`). User-customizable date/time formatting -: Use `com.intellij.util.text.JBDateFormat#getFormatter()` to use configured format from Settings/Preferences | Appearance & Behavior | System Settings | Date Formats. +: Use `com.intellij.util.text.JBDateFormat#getFormatter()` to use configured format from Settings | Appearance & Behavior | System Settings | Date Formats. ### IntelliJ IDEA 2019.3 @@ -44,7 +44,7 @@ Create HTML representation of code : Toggles showing additional details in UI (e.g. modification timestamp in Project View) see `UISettings.getShowInplaceComments()`. New API for Editor Inlay Hints -: Allows a variety of presentations (incl. custom painting), mouse event handling, and exposing settings in Settings/Preferences | Editor | Inlay Hints. See `com.intellij.codeInsight.hints.InlayHintsProvider`. +: Allows a variety of presentations (incl. custom painting), mouse event handling, and exposing settings in Settings | Editor | Inlay Hints. See `com.intellij.codeInsight.hints.InlayHintsProvider`. `com.intellij.openapi.vfs.AsyncFileListener` : A non-blocking variant for `com.intellij.openapi.vfs.newvfs.BulkFileListener`. diff --git a/topics/appendix/resources/custom_plugin_repository.md b/topics/appendix/resources/custom_plugin_repository.md index 5111f78f4..9223e0974 100644 --- a/topics/appendix/resources/custom_plugin_repository.md +++ b/topics/appendix/resources/custom_plugin_repository.md @@ -1,6 +1,6 @@ -[//]: # (title: Custom Plugin Repository) +# Custom Plugin Repository - + > [Toolbox Enterprise](https://www.jetbrains.com/toolbox-enterprise/) (currently in Early Access) comes with a local built-in IntelliJ plugin repository that allows you to choose specific plugins to be approved within your organization. It also lets you upload and distribute your own plugins inside your company, as well as any publicly available plugin from the internet. @@ -12,7 +12,7 @@ If you intend to use a plugin repository _other than_ the [JetBrains Marketplace This file describes all the plugins available in your custom repository and each plugin's download URL. 2. Upload your plugin JAR/ZIP file to an HTTPS web server. This can be the same web server you are using for the custom repository or a different HTTPS web server. -3. Add the URL for the custom repository to the JetBrains IDE [Repository Settings/Preferences](https://www.jetbrains.com/help/idea/managing-plugins.html#repos). +3. Add the URL for the custom repository to the JetBrains IDE [Repository Settings](https://www.jetbrains.com/help/idea/managing-plugins.html#repos). \* The updatePlugin.xml file name is not fixed and can be different. @@ -35,7 +35,7 @@ The description also tells the JetBrains IDE where to download the plugin itself A custom plugin repository's updatePlugins.xml file is constructed and maintained by the repository administrator. More than one updatePlugins.xml file may be required if the custom repository consumers are using more than one version of a JetBrains IDE. For example, updatePlugins-182.xml, updatePlugins-183.xml for IntelliJ IDEA 2018.2 and 2018.3, respectively. -Each updatePlugins-*.xml file will have a unique URL that is added to the JetBrains IDE [Repository Settings/Preferences](https://www.jetbrains.com/help/idea/managing-plugins.html#repos). +Each updatePlugins-*.xml file will have a unique URL that is added to the JetBrains IDE [Repository Settings](https://www.jetbrains.com/help/idea/managing-plugins.html#repos). ### Format of updatePlugins.xml File diff --git a/topics/appendix/tools/gradle_intellij_plugin/tools_gradle_intellij_plugin.md b/topics/appendix/tools/gradle_intellij_plugin/tools_gradle_intellij_plugin.md index 168b566f8..b07e82ed7 100644 --- a/topics/appendix/tools/gradle_intellij_plugin/tools_gradle_intellij_plugin.md +++ b/topics/appendix/tools/gradle_intellij_plugin/tools_gradle_intellij_plugin.md @@ -1,6 +1,6 @@ # Gradle IntelliJ Plugin - + @@ -63,7 +63,7 @@ plugins { When upgrading to `1.x` version, please make sure to follow the [migration guide](https://lp.jetbrains.com/gradle-intellij-plugin) to adjust your existing build script. -> Gradle JVM must be set to Java 11 in Settings/Preferences | Build, Execution, Deployment | Build Tools | Gradle. +> Gradle JVM must be set to Java 11 in Settings | Build, Execution, Deployment | Build Tools | Gradle. > > If targeting 2022.3+, Java 17 is required instead. diff --git a/topics/appendix/tools/gradle_intellij_plugin/tools_gradle_intellij_plugin_faq.md b/topics/appendix/tools/gradle_intellij_plugin/tools_gradle_intellij_plugin_faq.md index 5c02b8052..985465e4f 100644 --- a/topics/appendix/tools/gradle_intellij_plugin/tools_gradle_intellij_plugin_faq.md +++ b/topics/appendix/tools/gradle_intellij_plugin/tools_gradle_intellij_plugin_faq.md @@ -1,6 +1,6 @@ # Gradle IntelliJ Plugin – FAQ - + FAQ for using Gradle IntelliJ Plugin @@ -118,7 +118,7 @@ buildSearchableOptions.enabled = false -As a result of disabling building searchable options, the [Settings](settings.md) that your plugin provides won't be searchable in the Settings/Preferences dialog. +As a result of disabling building searchable options, the [Settings](settings.md) that your plugin provides won't be searchable in the Settings dialog. Disabling of the task is suggested for plugins that are not intended to provide custom settings. ### How to show log file of sandbox instance diff --git a/topics/basics/basic_action_system.md b/topics/basics/basic_action_system.md index 4cfe64b7f..1aa6fc46b 100644 --- a/topics/basics/basic_action_system.md +++ b/topics/basics/basic_action_system.md @@ -1,6 +1,6 @@ # Actions - + Adding custom actions to IntelliJ Platform-based IDEs menus and toolbar. @@ -422,4 +422,4 @@ Use [`BackAction`](%gh-ic%/platform/platform-api/src/com/intellij/ui/navigation/ For actions registered at runtime (e.g., in a tool window toolbar), add an [``](plugin_configuration_file.md#idea-plugin__actions__action) entry with [`EmptyAction`](%gh-ic%/platform/platform-api/src/com/intellij/openapi/actionSystem/EmptyAction.java) -to "reserve" Action ID so they become visible in Settings/Preferences | Keymap. +to "reserve" Action ID so they become visible in Settings | Keymap. diff --git a/topics/basics/getting_started/theme/themes_extras.md b/topics/basics/getting_started/theme/themes_extras.md index d7bb72d23..baa099115 100644 --- a/topics/basics/getting_started/theme/themes_extras.md +++ b/topics/basics/getting_started/theme/themes_extras.md @@ -1,6 +1,6 @@ -[//]: # (title: Themes - Editor Schemes and Background Images) +# Themes - Editor Schemes and Background Images - + Customizing editor schemes and editor or application background images in a theme plugin. @@ -11,10 +11,10 @@ Themes can also provide custom color and font settings, as well as custom images Users of IntelliJ Platform-based IDEs, such as Intellij IDEA, can set preferences to configure the colors and fonts used in the Editor. These custom color and font settings are called _Editor Color Schemes_. -### Creating a Custom Editor Scheme Using Settings/Preferences +### Creating a Custom Editor Scheme Using Settings -Custom editor color schemes can be specified and exported using the IDE _Settings/Preferences_ dialog. -Note that editor [Colors and Fonts](https://www.jetbrains.com/help/idea/configuring-colors-and-fonts.html), and [Colors for Version Control File Status](https://www.jetbrains.com/help/idea/file-status-highlights.html) are customized in different sections of _Settings/Preferences_. +Custom editor color schemes can be specified and exported using the IDE Settings dialog. +Note that editor [Colors and Fonts](https://www.jetbrains.com/help/idea/configuring-colors-and-fonts.html), and [Colors for Version Control File Status](https://www.jetbrains.com/help/idea/file-status-highlights.html) are customized in different sections of Settings. Use the following procedure to customize an editor color scheme for a theme: * Create the desired custom editor color scheme using the IDE preferences. @@ -62,7 +62,7 @@ For additional examples of `name` and `value` attributes, review the editor colo ### Customizing Version Control File Status Colors -As [described above](#creating-a-custom-editor-scheme-using-settingspreferences), colors corresponding to the VCS status of files can be customized and exported via the [Settings/Preferences](https://www.jetbrains.com/help/idea/file-status-highlights.html). +As [described above](#creating-a-custom-editor-scheme-using-settingspreferences), colors corresponding to the VCS status of files can be customized and exported via the [Settings](https://www.jetbrains.com/help/idea/file-status-highlights.html). No other procedure is necessary to customize these colors. In the exported color scheme file the `name` is the VCS file status, and the `value` is the new color corresponding to that status. For example, customized VCS colors for a subset of file statuses will appear in the editor scheme file as: diff --git a/topics/basics/persisting_sensitive_data.md b/topics/basics/persisting_sensitive_data.md index 6967e0b1b..5690da67f 100644 --- a/topics/basics/persisting_sensitive_data.md +++ b/topics/basics/persisting_sensitive_data.md @@ -1,6 +1,6 @@ -[//]: # (title: Persisting Sensitive Data) +# Persisting Sensitive Data - + The Credentials Store API allows you to store sensitive user data securely, like passwords, server URLs, etc. @@ -57,4 +57,4 @@ The default storage format depends on the OS. [linux]: https://specifications.freedesktop.org/secret-service/latest/ [linux2]: https://wiki.gnome.org/Projects/Libsecret -Users can override the default behavior in Settings/Preferences | Appearance & Behavior | System Settings | Passwords. +Users can override the default behavior in Settings | Appearance & Behavior | System Settings | Passwords. diff --git a/topics/basics/plugin_alternatives.md b/topics/basics/plugin_alternatives.md index 08e0cd14b..8e8332582 100644 --- a/topics/basics/plugin_alternatives.md +++ b/topics/basics/plugin_alternatives.md @@ -1,6 +1,6 @@ -[//]: # (title: Alternatives to Implementing a Plugin) +# Alternatives to Implementing a Plugin - + Alternative strategies and tools to avoid building a "full" plugin. @@ -41,7 +41,7 @@ Flora extensions have access to all available IntelliJ Platform APIs, just like Every extension is represented by a single file and stored directly in a project's .plugins directory. Extensions can be easily shared with other team members by adding the .plugins directory to VCS. -Also, adding the Flora plugin in the Settings/Preferences | Build, Execution, Deployment | Required Plugins and sharing this configuration as part of a project makes it effortless to deliver additional IDE functionalities to your team without any manual setup. +Also, adding the Flora plugin in the Settings | Build, Execution, Deployment | Required Plugins and sharing this configuration as part of a project makes it effortless to deliver additional IDE functionalities to your team without any manual setup. ## LivePlugin diff --git a/topics/basics/plugin_signing.md b/topics/basics/plugin_signing.md index f773f4440..2c42c865a 100644 --- a/topics/basics/plugin_signing.md +++ b/topics/basics/plugin_signing.md @@ -1,6 +1,6 @@ -[//]: # (title: Plugin Signing) +# Plugin Signing - + Plugin Signing is a mechanism introduced in the 2021.2 release cycle to increase security in [JetBrains Marketplace](https://plugins.jetbrains.com) and all of our IntelliJ-based IDEs. @@ -222,7 +222,7 @@ Instead, a trusted private CA or self-signed certificate can be used to sign and ### Verification Before looking at how we can sign a plugin, let's first review how verification works when a non-JetBrains certificate is used. -As of 2021.2, during verification, IntelliJ-based IDEs check if the plugin was signed by the JetBrains CA certificate or any public key provided by the user via Settings/Preferences | Plugins | Manage Plugin Certificates. In 2021.2.1, a system property has been added: `intellij.plugins.truststore`, pointing to a trusted JKS TrustStore. +As of 2021.2, during verification, IntelliJ-based IDEs check if the plugin was signed by the JetBrains CA certificate or any public key provided by the user via Settings | Plugins | Manage Plugin Certificates. In 2021.2.1, a system property has been added: `intellij.plugins.truststore`, pointing to a trusted JKS TrustStore. During verification, the plugin's public key is extracted from the signature. The last certificate entry in the chain matched against the certificates stored in one of the storages from above. @@ -235,7 +235,7 @@ With this approach, existing internal TrustStores may exist and could be used. Be sure when choosing a TrustStore that the CAs are limited to the internal CAs you trust. Using a TrustStore with public CAs can expose the users to an attack vector. -If adding a TrustStore to a users environment is not possible, the user may also add the root CAs public key to Settings/Preferences | Plugins | Manage Plugin Certificates. +If adding a TrustStore to a users environment is not possible, the user may also add the root CAs public key to Settings | Plugins | Manage Plugin Certificates. ### Using Self-Signed Certificates @@ -249,4 +249,4 @@ keytool -import -alias IdeaPlugin -file chain.crt -keystore pluginKeystore.jks - ``` (note: the TrustStore password must remain `changeit`) -Otherwise, users may add the public key manually to Settings/Preferences | Plugins | Manage Plugin Certificates. +Otherwise, users may add the public key manually to Settings | Plugins | Manage Plugin Certificates. diff --git a/topics/basics/plugin_structure/plugin_extensions.md b/topics/basics/plugin_structure/plugin_extensions.md index f38bffed2..b7eff83fb 100644 --- a/topics/basics/plugin_structure/plugin_extensions.md +++ b/topics/basics/plugin_structure/plugin_extensions.md @@ -1,6 +1,6 @@ -[//]: # (title: Extensions) +# Extensions - + Extensions are the most common way of customizing functionality in the IDE. @@ -9,7 +9,7 @@ _Extensions_ are the most common way for a plugin to extend the IntelliJ Platfor The following are some of the most common tasks accomplished using extensions: * The `com.intellij.toolWindow` extension point allows plugins to add [tool windows](tool_windows.md) (panels displayed at the sides of the IDE user interface); -* The `com.intellij.applicationConfigurable` and `com.intellij.projectConfigurable` extension points allow plugins to add pages to the [Settings/Preferences dialog](settings.md); +* The `com.intellij.applicationConfigurable` and `com.intellij.projectConfigurable` extension points allow plugins to add pages to the [Settings dialog](settings.md); * [Custom language plugins](custom_language_support.md) use many extension points to extend various language support features in the IDE. There are more than 1000 extension points available in the platform and the bundled plugins, allowing customizing different parts of the IDE behavior. diff --git a/topics/basics/plugin_structure/plugin_icon_file.md b/topics/basics/plugin_structure/plugin_icon_file.md index 8c6f95ea6..f6a9612b4 100644 --- a/topics/basics/plugin_structure/plugin_icon_file.md +++ b/topics/basics/plugin_structure/plugin_icon_file.md @@ -1,6 +1,6 @@ -[//]: # (title: Plugin Logo) +# Plugin Logo - + Beginning in version 2019.1, the IntelliJ Platform supports representing a plugin with a logo. A _Plugin Logo_ is intended to be a unique representation of a plugin's functionality, technology, or company. @@ -10,7 +10,7 @@ See [Working with Icons and Images](work_with_icons_and_images.md) for more info ## Plugin Logo Usages Plugin Logos are shown in the [JetBrains Marketplace](https://plugins.jetbrains.com). -They also appear in the Settings/Preferences [Plugin Manager](https://www.jetbrains.com/help/idea/managing-plugins.html) UI in IntelliJ Platform-based IDEs. +They also appear in the Settings [Plugin Manager](https://www.jetbrains.com/help/idea/managing-plugins.html) UI in IntelliJ Platform-based IDEs. Whether online or in the product UI, a Plugin Logo helps users to identify a plugin more quickly in a list, as shown below: ![Example Product Plugin Preferences Dialog](plugin_prefs.png){width="800"} diff --git a/topics/basics/plugin_user_experience.md b/topics/basics/plugin_user_experience.md index 704197124..dc97d7521 100644 --- a/topics/basics/plugin_user_experience.md +++ b/topics/basics/plugin_user_experience.md @@ -1,6 +1,6 @@ # Plugin User Experience (UX) - + _User Experience (UX)_ is a term describing the experience users feel when using a product. It covers not only aspects like visual presentation, performance, stability, or ease of use, but anything that affects the user's satisfaction. @@ -28,7 +28,7 @@ Ideally, all the features should work out of the box after the installation, wit Default settings should reflect the typical plugin usage in a standard project. All the settings and actions should be easy to find and be placed in the proper [settings](settings.md) or [action group](grouping_action.md), e.g.: -* framework plugin settings should be placed under the Settings/Preferences | Languages & Frameworks +* framework plugin settings should be placed under the Settings | Languages & Frameworks * action marking a directory as a plugin-specific root should be added to Mark Directory as... group Plugins that are hard to configure with features that are hard to find may be quickly abandoned out of frustration. diff --git a/topics/basics/settings.md b/topics/basics/settings.md index fd9db55ce..25d06bde7 100644 --- a/topics/basics/settings.md +++ b/topics/basics/settings.md @@ -1,12 +1,12 @@ # Settings - + Settings mechanism allows users to configure and persist application- or project-level plugin preferences. -**Product Help:** [Settings/Preferences](https://www.jetbrains.com/help/idea/settings-preferences-dialog.html), [Configuring the IDE](https://www.jetbrains.com/help/idea/configuring-project-and-ide-settings.html) +**Product Help:** [Settings](https://www.jetbrains.com/help/idea/settings-preferences-dialog.html), [Configuring the IDE](https://www.jetbrains.com/help/idea/configuring-project-and-ide-settings.html) diff --git a/topics/basics/virtual_file_system.md b/topics/basics/virtual_file_system.md index cd9309ef2..b07efe080 100644 --- a/topics/basics/virtual_file_system.md +++ b/topics/basics/virtual_file_system.md @@ -1,6 +1,6 @@ # Virtual File System - + Virtual File System is an abstraction that allows to work with local or remote file storages and implement custom. @@ -38,7 +38,7 @@ The VFS will be updated during the next refresh operation, which includes the fi IntelliJ Platform refreshes the entire project contents asynchronously on startup. By default, it performs a refresh operation when the user switches to it from another app. -Still, users can turn this off via Settings/Preferences | Appearance & Behavior | System Settings | Synchronize external changes\[...]. +Still, users can turn this off via Settings | Appearance & Behavior | System Settings | Synchronize external changes\[...]. On Windows, Mac, and Linux, a native file watcher process is started that receives file change notifications from the file system and reports them to the IntelliJ Platform. If a file watcher is available, a refresh operation looks only at the files that have been reported as changed by the file watcher. @@ -53,7 +53,7 @@ If a file's contents were changed, but its timestamp remained the same, the Inte There is currently no facility for removing files from the snapshot. If a file was loaded there once, it remains there forever unless it was deleted from the disk, and a refresh operation was called on one of its parent directories. -The VFS itself does not honor ignored files listed in Settings/Preferences | Editor | File Types and folders to ignore and excluded folders listed in Project Structure | Modules | Sources | Excluded. +The VFS itself does not honor ignored files listed in Settings | Editor | File Types and folders to ignore and excluded folders listed in Project Structure | Modules | Sources | Excluded. If the application code accesses them, the VFS will load and return their contents. In most cases, the ignored files and excluded folders must be skipped from processing by higher-level code. diff --git a/topics/intro/sdk_code_guidelines.md b/topics/intro/sdk_code_guidelines.md index 7b4df4266..7fa157758 100644 --- a/topics/intro/sdk_code_guidelines.md +++ b/topics/intro/sdk_code_guidelines.md @@ -1,6 +1,6 @@ -[//]: # (title: SDK Code Sample Guidelines) +# SDK Code Sample Guidelines - + This document describes the coding guidelines used for authoring open-source IntelliJ Platform SDK code samples. Before you begin, please read this page thoroughly, as well as the [Code of Conduct](intellij-sdk-docs-original_CODE_OF_CONDUCT.md) and [License](https://github.com/JetBrains/intellij-sdk-docs/blob/main/LICENSE.txt) documents. @@ -194,7 +194,7 @@ Code samples should build cleanly, with no warnings or errors, and new code samp Testers should complete the following checklist. Here the term "IDE" means the IntelliJ Platform-based IDE in which the plugin is designed to run: * The plugin should load in the IDE. -* The correct information about the plugin should display in the Settings/Preferences | Plugins panel. +* The correct information about the plugin should display in the Settings | Plugins panel. * If applicable, the plugin UI, such as tool windows, menu additions, etc. should display correctly. * The functionality of the plugin should be tested with a sample file. * If applicable, the plugin should pass unit tests. diff --git a/topics/intro/sdk_style.md b/topics/intro/sdk_style.md index b67d00c3c..6891b7945 100644 --- a/topics/intro/sdk_style.md +++ b/topics/intro/sdk_style.md @@ -1,6 +1,6 @@ # SDK Docs Style Guide - + Writing and notation styleguide for SDK Docs. @@ -94,8 +94,7 @@ Very long [links](#links) should also be on a separate line. Consistent text styles are used to standardize references and keywords: -* Menu paths are wrapped using `` with pipe characters separating each level: `Settings/Preferences | Editor`: Settings/Preferences | Editor - Menu paths to settings always start with "Settings/Preferences" to cover all platforms. +* Menu paths are wrapped using `` with pipe characters separating each level: `Settings | Editor`: Settings | Editor Inside tables, use `|` instead of `|` to prevent escaping problems. * User interface element names like labels, buttons, checkboxes, etc. are wrapped using ``: `Press Continue`: Press Continue * Non-code keywords and quotations, or the names of non-code files, are formatted as italic style: \_Theme\_ (_Theme_), \_README.md\_ (_README.md_.) diff --git a/topics/reference_guide/custom_language_support/language_injection.md b/topics/reference_guide/custom_language_support/language_injection.md index 412481a3a..10e994d7f 100644 --- a/topics/reference_guide/custom_language_support/language_injection.md +++ b/topics/reference_guide/custom_language_support/language_injection.md @@ -1,6 +1,6 @@ -[//]: # (title: Language Injection) +# Language Injection - + @@ -55,7 +55,7 @@ In the following sections, we'll discuss these three options in more detail. ## IntelliLang First, please read the available [documentation](https://www.jetbrains.com/help/idea/language-injections-settings.html) on IntelliLang. -A good point to start with is to inspect available language injections that you can find in the IntelliLang settings under Settings/Preferences | Editor | Language Injections. +A good point to start with is to inspect available language injections that you can find in the IntelliLang settings under Settings | Editor | Language Injections. The injections shown are configured through XML files and loaded automatically. ### Example diff --git a/topics/reference_guide/custom_language_support/references_and_resolve.md b/topics/reference_guide/custom_language_support/references_and_resolve.md index 3bb789c4f..a0282afd5 100644 --- a/topics/reference_guide/custom_language_support/references_and_resolve.md +++ b/topics/reference_guide/custom_language_support/references_and_resolve.md @@ -1,4 +1,4 @@ -[//]: # (title: References and Resolve) +# References and Resolve @@ -71,4 +71,4 @@ The implementation of `multiResolve()` can be also based on [`PsiScopeProcessor` ## Additional Highlighting Implement [`HighlightedReference`](%gh-ic%/platform/lang-impl/src/com/intellij/codeInsight/highlighting/HighlightedReference.java) to add additional highlighting for non-obvious places (e.g., String literal). -Such references will automatically be highlighted using String | Highlighted reference text attributes from Settings/Preferences | Editor | Color Scheme | Language Defaults (_2022.2_). +Such references will automatically be highlighted using String | Highlighted reference text attributes from Settings | Editor | Color Scheme | Language Defaults (_2022.2_). diff --git a/topics/reference_guide/frameworks_and_external_apis/external_builder_api.md b/topics/reference_guide/frameworks_and_external_apis/external_builder_api.md index 690fbe034..459a48f21 100644 --- a/topics/reference_guide/frameworks_and_external_apis/external_builder_api.md +++ b/topics/reference_guide/frameworks_and_external_apis/external_builder_api.md @@ -1,6 +1,6 @@ -[//]: # (title: External Builder API and Plugins) +# External Builder API and Plugins - + > Adding JPS support to your plugin requires Java plugin to be present for it to work. > Please see [Plugin Dependencies](plugin_dependencies.md) on how to set up your plugin with required dependency. @@ -88,7 +88,7 @@ The build process has built-in self-cpu-profiling capabilities. To enable them do the following: 1. Copy $IDE_HOME$/lib/yjp-controller-api-redist.jar and $IDE_HOME$/bin/yjpagent.* files to $IDE_SYSTEM_DIR$/compile-server -2. In Settings/Preferences | Build, Execution, Deployment | Compiler | Java Compiler add `-Dprofiling.mode=true` in Additional command line parameters +2. In Settings | Build, Execution, Deployment | Compiler | Java Compiler add `-Dprofiling.mode=true` in Additional command line parameters 3. Make sure the automatic make is turned off After this, every build process run should result in a CPU snapshot stored in $USER_HOME$/Snapshots directory. diff --git a/topics/reference_guide/frameworks_and_external_apis/external_system_integration.md b/topics/reference_guide/frameworks_and_external_apis/external_system_integration.md index ec47b5e2b..79655c5ac 100644 --- a/topics/reference_guide/frameworks_and_external_apis/external_system_integration.md +++ b/topics/reference_guide/frameworks_and_external_apis/external_system_integration.md @@ -1,6 +1,6 @@ -[//]: # (title: External System Integration) +# External System Integration - + This page provides a high-level overview of the *External System* sub-system. There are multiple project management systems ([Apache Maven](https://maven.apache.org/), [Gradle](https://www.gradle.org/), [sbt](https://www.scala-sbt.org/), etc.) and IntelliJ Platform provides a mechanism to support them in IDEs. @@ -111,8 +111,8 @@ A particular external system settings UI contains the following items: It's recommended to extend from [`AbstractExternalProjectSettingsControl`](%gh-ic%/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/settings/AbstractExternalProjectSettingsControl.java) for implementing project-level settings control as it already handles some of them. **Examples**: -* [`GradleSystemSettingsControl`](%gh-ic%/plugins/gradle/src/org/jetbrains/plugins/gradle/service/settings/GradleSystemSettingsControl.java) handling the General settings in Settings/Preferences | Build, Execution, Deployment | Build Tools | Gradle -* [`GradleProjectSettingsControl`](%gh-ic%/plugins/gradle/src/org/jetbrains/plugins/gradle/service/settings/GradleProjectSettingsControl.java) handling the selected Gradle project settings in Settings/Preferences | Build, Execution, Deployment | Build Tools | Gradle +* [`GradleSystemSettingsControl`](%gh-ic%/plugins/gradle/src/org/jetbrains/plugins/gradle/service/settings/GradleSystemSettingsControl.java) handling the General settings in Settings | Build, Execution, Deployment | Build Tools | Gradle +* [`GradleProjectSettingsControl`](%gh-ic%/plugins/gradle/src/org/jetbrains/plugins/gradle/service/settings/GradleProjectSettingsControl.java) handling the selected Gradle project settings in Settings | Build, Execution, Deployment | Build Tools | Gradle A similar approach is used for providing settings in importing external project UI. Implementation is expected to extend [`AbstractImportFromExternalSystemControl`](%gh-ic%/java/idea-ui/src/com/intellij/openapi/externalSystem/service/settings/AbstractImportFromExternalSystemControl.java) and instead of linked external projects list it contains target external project path control. diff --git a/topics/reference_guide/settings_guide.md b/topics/reference_guide/settings_guide.md index 10822332c..be92887cc 100644 --- a/topics/reference_guide/settings_guide.md +++ b/topics/reference_guide/settings_guide.md @@ -1,8 +1,8 @@ -[//]: # (title: Settings Guide) +# Settings Guide - + -Adding entries in Settings/Preferences. +Adding entries in Settings. _Settings_ persistently store states that control the behavior and appearance of IntelliJ Platform-based IDEs. On this page, the term "Settings" means the same as "Preferences" on some platforms. @@ -157,13 +157,13 @@ The following nested interfaces are markers, which convey information about the So `NoScroll` interface should be used to remove the outer `JScrollPane`. * `Configurable.NoMargin` - Notifies the Settings dialog not to add an empty border to the form. By default, an empty border is added for a plugin's Settings component. -* `Configurable.Beta` _(2022.3)_ - Adds Beta label next to settings page title in Settings/Preferences tree. +* `Configurable.Beta` _(2022.3)_ - Adds Beta label next to settings page title in Settings tree. #### Additional Interfaces Based on Configurable There are classes in the IntelliJ Platform specialized in particular types of Settings. These subtypes are based on `com.intellij.openapi.options.ConfigurableEP`. -For example, Settings/Preferences | Editor | General | Appearance allows adding Settings via [`EditorSmartKeysConfigurableEP`](%gh-ic%/platform/lang-impl/src/com/intellij/application/options/editor/EditorSmartKeysConfigurableEP.java) and `com.intellij.editorSmartKeysConfigurable` EP. +For example, Settings | Editor | General | Appearance allows adding Settings via [`EditorSmartKeysConfigurableEP`](%gh-ic%/platform/lang-impl/src/com/intellij/application/options/editor/EditorSmartKeysConfigurableEP.java) and `com.intellij.editorSmartKeysConfigurable` EP. #### Examples diff --git a/topics/tutorials/action_system/working_with_custom_actions.md b/topics/tutorials/action_system/working_with_custom_actions.md index 14d984ba7..df2dc151f 100644 --- a/topics/tutorials/action_system/working_with_custom_actions.md +++ b/topics/tutorials/action_system/working_with_custom_actions.md @@ -1,6 +1,6 @@ -[//]: # (title: Creating Actions) +# Creating Actions - + Plugins can add actions to existing IDE menus and toolbars, as well as add new menus and toolbars. The IntelliJ Platform calls the actions of plugins in response to user interactions with the IDE. @@ -59,7 +59,7 @@ A more comprehensive explanation of action registration is available in the [](b ### Registering an Action with the New Action Form IntelliJ IDEA has an embedded inspection that spots unregistered actions. -Verify the inspection is enabled at Settings/Preferences | Editor | Inspections | Plugin DevKit | Code | Component/Action not registered. +Verify the inspection is enabled at Settings | Editor | Inspections | Plugin DevKit | Code | Component/Action not registered. Here is an example for this stage of the `PopupDialogAction` class: !["Action never used" inspection](action_never_used.png){width="600"} diff --git a/topics/tutorials/code_inspections.md b/topics/tutorials/code_inspections.md index 6edcf2728..711dd3d2d 100644 --- a/topics/tutorials/code_inspections.md +++ b/topics/tutorials/code_inspections.md @@ -1,6 +1,6 @@ # Code Inspections - + @@ -35,7 +35,7 @@ It illustrates the components for a custom inspection plugin: Although the IntelliJ Platform SDK code samples illustrate implementations of these components, it is often useful to see examples of inspections implemented in the _intellij_community_ code base. This process can help find inspection descriptions and implementations based on what is visible in the IDE UI. The overall approach works for inspections aimed at other languages as well. -* Find an existing inspection that is similar to the one you want to implement in the Settings/Preferences | Editor | Inspections panel. +* Find an existing inspection that is similar to the one you want to implement in the Settings | Editor | Inspections panel. Note the display name of the inspection. For example, the Java/Probable Bugs inspection Object comparison using '==', instead of 'equals()' is very similar to `comparing_references_inspection`. * Use the display name text as the [target for a search](https://www.jetbrains.com/help/idea/finding-and-replacing-text-in-project.html) within the _intellij_community_ project. @@ -144,7 +144,7 @@ Implicit in using [`LocalInspectionTool`](%gh-ic%/platform/analysis-api/src/com/ > To open related [settings](settings.md) directly from the inspection description, add a link with `settings://$CONFIGURABLE_ID$`, optionally followed by `?$SEARCH_STRING$` to pre-select UI element: > -> `See Includes tab in Settings/Preferences | Editor | File and Code Templates to configure.` +> `See Includes tab in Settings | Editor | File and Code Templates to configure.` > ### Inspection Unit Test @@ -177,7 +177,7 @@ See [](code_samples.md) on how to set up and run the plugin. Once the plugin is launched, you can set the plugin options. You can specify the Java classes to participate in the code inspection and the severity level of the found probable bugs. -On the main menu, open the Settings/Preferences | Editor | Inspections dialog. +On the main menu, open the Settings | Editor | Inspections dialog. In the list of the IntelliJ IDEA Java inspections, expand the Probable bugs node, and then click SDK: '==' or '!=' instead of 'equals()'. ![Comparing References inspection options](comparingReferences_options.png) diff --git a/topics/tutorials/code_intentions.md b/topics/tutorials/code_intentions.md index 048306ac2..e58f02bc2 100644 --- a/topics/tutorials/code_intentions.md +++ b/topics/tutorials/code_intentions.md @@ -1,4 +1,4 @@ -[//]: # (title: Intentions) +# Intentions @@ -20,7 +20,7 @@ When a possible problem is suspected, the IDE suggests an appropriate intention See [Inspections](https://jetbrains.design/intellij/text/inspections/) topic in the IntelliJ Platform UI Guidelines on naming, writing description, and message texts for inspections/intentions. -You can view a list of all available intention actions as well as enable/disable them using the [Intentions List](https://www.jetbrains.com/help/idea/intention-actions.html#intention-settings) in Settings/Preferences | Editor | Intentions. +You can view a list of all available intention actions as well as enable/disable them using the [Intentions List](https://www.jetbrains.com/help/idea/intention-actions.html#intention-settings) in Settings | Editor | Intentions. ## Techniques Used diff --git a/topics/tutorials/custom_language_support/code_style_settings.md b/topics/tutorials/custom_language_support/code_style_settings.md index 20f6fffd2..e5ef1272f 100644 --- a/topics/tutorials/custom_language_support/code_style_settings.md +++ b/topics/tutorials/custom_language_support/code_style_settings.md @@ -1,6 +1,6 @@ -[//]: # (title: 17. Code Style Settings) +# 17. Code Style Settings - + @@ -15,8 +15,8 @@ Code style settings enable defining formatting options. -A code style settings provider creates an instance of the settings and also creates an options page in settings/preferences. -This example creates a settings/preferences page that uses the default language code style settings, customized by a language code style settings provider. +A code style settings provider creates an instance of the settings and also creates an options page in Settings. +This example creates a Settings page that uses the default language code style settings, customized by a language code style settings provider. ## Define Code Style Settings @@ -72,6 +72,6 @@ The `SimpleLanguageCodeStyleSettingsProvider` implementation is registered with Run the plugin by using the Gradle [`runIde`](creating_plugin_project.md#running-a-plugin-with-the-runide-gradle-task) task. -In the IDE Development Instance, open the Simple Language code formatting page: Settings/Preferences | Editor | Code Style | Simple. +In the IDE Development Instance, open the Simple Language code formatting page: Settings | Editor | Code Style | Simple. ![Code Style Settings](code_style_settings.png) diff --git a/topics/tutorials/custom_language_support/line_marker_provider.md b/topics/tutorials/custom_language_support/line_marker_provider.md index 624c3d680..001c03afa 100644 --- a/topics/tutorials/custom_language_support/line_marker_provider.md +++ b/topics/tutorials/custom_language_support/line_marker_provider.md @@ -1,6 +1,6 @@ -[//]: # (title: 8. Line Marker Provider) +# 8. Line Marker Provider - + @@ -25,7 +25,7 @@ For this example, override the `collectNavigationMarkers()` method to collect us ``` {src="simple_language_plugin/src/main/java/org/intellij/sdk/language/SimpleLineMarkerProvider.java"} -Extending from [`GutterIconDescriptor`](%gh-ic%/platform/lang-api/src/com/intellij/codeInsight/daemon/GutterIconDescriptor.java) allows configuring gutter icons to be shown via Settings/Preferences | Editor | General | Gutter Icons. +Extending from [`GutterIconDescriptor`](%gh-ic%/platform/lang-api/src/com/intellij/codeInsight/daemon/GutterIconDescriptor.java) allows configuring gutter icons to be shown via Settings | Editor | General | Gutter Icons. ## Best Practices for Implementing Line Marker Providers diff --git a/topics/tutorials/custom_language_support/syntax_highlighter_and_color_settings_page.md b/topics/tutorials/custom_language_support/syntax_highlighter_and_color_settings_page.md index 71f882d02..d9f6025ee 100644 --- a/topics/tutorials/custom_language_support/syntax_highlighter_and_color_settings_page.md +++ b/topics/tutorials/custom_language_support/syntax_highlighter_and_color_settings_page.md @@ -1,6 +1,6 @@ -[//]: # (title: 5. Syntax Highlighter and Color Settings Page) +# 5. Syntax Highlighter and Color Settings Page - + @@ -93,7 +93,7 @@ Register the Simple Language color settings page with the IntelliJ Platform in t Run the project by using the Gradle [`runIde`](creating_plugin_project.md#running-a-plugin-with-the-runide-gradle-task) task. -In the IDE Development Instance, open the Simple Language highlight settings page: Settings/Preferences | Editor | Color Scheme | Simple. +In the IDE Development Instance, open the Simple Language highlight settings page: Settings | Editor | Color Scheme | Simple. Each color initially inherits from a Language Defaults value. ![Color Settings Page](color_settings_page.png) diff --git a/topics/tutorials/editor_basics/coordinates_system.md b/topics/tutorials/editor_basics/coordinates_system.md index 00b9235ef..522850626 100644 --- a/topics/tutorials/editor_basics/coordinates_system.md +++ b/topics/tutorials/editor_basics/coordinates_system.md @@ -1,6 +1,6 @@ -[//]: # (title: 2. Editor Coordinates System. Positions and Offsets) +# 2. Editor Coordinates System. Positions and Offsets - + The previous tutorial [Working with Text](working_with_text.md) demonstrated how to use actions to access a caret placed in a document open in an editor. The examples replaced selected text in a document by using information about the caret. @@ -182,7 +182,7 @@ The caret Offset includes: * The first (0th) character in a document. * Whitespace characters, including newline and tabs. * Any characters after end-of-line if the IDE settings permit them. - (Settings/Preferences | Editor | General | Virtual Space) + (Settings | Editor | General | Virtual Space) * The character selected by the caret. The example below demonstrates the Offset of a caret placed at the first character of Logical line one. diff --git a/topics/tutorials/file_and_code_templates/providing_file_templates.md b/topics/tutorials/file_and_code_templates/providing_file_templates.md index a75ac6fda..9fd3007f7 100644 --- a/topics/tutorials/file_and_code_templates/providing_file_templates.md +++ b/topics/tutorials/file_and_code_templates/providing_file_templates.md @@ -1,6 +1,6 @@ -[//]: # (title: Providing File and Code Templates) +# Providing File and Code Templates - + The IntelliJ Platform allows plugins to provide custom file templates specific to the plugin's functionalities. In order to include custom templates in the plugin, a template file has to be created and placed in the specific place of plugin resources, depending on the template's purpose. @@ -57,7 +57,7 @@ The Other category contains other templates organized in grou It includes templates located in the fileTemplates/j2ee directory and registered via the `com.intellij.fileTemplateGroup` extension point (EP). Note that the j2ee directory name is historical and unrelated to the J2EE technology. This category is intended for templates that are not used for creating core language entities or are used less frequently by users, e.g., a specific XML configuration file, a framework-specific class in Java language, etc. -To include file templates in the Other section of the Settings/Preferences | Editor | File and Code Templates settings page, provide an implementation of the +To include file templates in the Other section of the Settings | Editor | File and Code Templates settings page, provide an implementation of the [`FileTemplateGroupDescriptorFactory`](%gh-ic%/platform/lang-api/src/com/intellij/ide/fileTemplates/FileTemplateGroupDescriptorFactory.java) and register it via the `com.intellij.fileTemplateGroup` EP. diff --git a/topics/tutorials/file_and_code_templates/using_file_templates.md b/topics/tutorials/file_and_code_templates/using_file_templates.md index d668d4c81..4d745c8ca 100644 --- a/topics/tutorials/file_and_code_templates/using_file_templates.md +++ b/topics/tutorials/file_and_code_templates/using_file_templates.md @@ -1,6 +1,6 @@ -[//]: # (title: Using File Templates Programmatically) +# Using File Templates Programmatically - + File templates provided by a plugin can be used during new file creation, in code intention actions, or other plugin features. They can be accessed with the @@ -104,7 +104,7 @@ protected void buildDialog(Project project, PsiDirectory directory, } ``` -As file templates are placed in the fileTemplates/internal directory, they are not listed in the Settings/Preferences | Editor | File and Code Templates settings page, and users can't adjust them to their needs. +As file templates are placed in the fileTemplates/internal directory, they are not listed in the Settings | Editor | File and Code Templates settings page, and users can't adjust them to their needs. Internal templates can be exposed in the Files category by additionally registering them via the `com.intellij.internalFileTemplate` EP, e.g.: ```xml diff --git a/topics/tutorials/live_templates/template_support.md b/topics/tutorials/live_templates/template_support.md index bd4949330..621baeb8e 100644 --- a/topics/tutorials/live_templates/template_support.md +++ b/topics/tutorials/live_templates/template_support.md @@ -1,6 +1,6 @@ -[//]: # (title: Providing Live Templates) +# Providing Live Templates - + This tutorial illustrates how to add default Custom Live Templates to an IntelliJ Platform plugin, and assign valid contexts for these templates based on the surrounding code and file type. In addition, the tutorial discusses how to export existing Live Templates, and bundle them within a plugin. @@ -169,6 +169,6 @@ Using the `com.intellij.defaultLiveTemplatesProvider` and `com.intellij.liveTemp ## Check Plugin Now verify the plugin is working correctly. -Run the plugin in a Development Instance and verify there is a new entry under Settings/Preferences | Live Templates | Markdown | \{ (SDK: New link reference). +Run the plugin in a Development Instance and verify there is a new entry under Settings | Live Templates | Markdown | \{ (SDK: New link reference). Finally, create a new file test.md and confirm that the Live Template works by entering a { character and then pressing Tab. diff --git a/topics/tutorials/postfix_completion/postfix_templates.md b/topics/tutorials/postfix_completion/postfix_templates.md index 867331336..6cc4a34d9 100644 --- a/topics/tutorials/postfix_completion/postfix_templates.md +++ b/topics/tutorials/postfix_completion/postfix_templates.md @@ -1,6 +1,6 @@ -[//]: # (title: Postfix Templates) +# Postfix Templates - + Postfix templates implement possibility to modify or wrap the existing code in additional constructs without navigating the caret back. @@ -48,7 +48,7 @@ Providing the code snippets showing the template in "before" and "after" expandi The _$EXTENSION$_ placeholder should be replaced with the extension of the template language, e.g., before.kt.template for a Kotlin template. The code snippets included in the example files can use the `` marker, which should surround the most important code parts, e.g., expression to expand and position of the caret after expanding. -Marked parts will be highlighted in the Settings/Preferences | Editor | General | Postfix Completion settings page, making it easier for users to understand how a template is expanded, e.g.: +Marked parts will be highlighted in the Settings | Editor | General | Postfix Completion settings page, making it easier for users to understand how a template is expanded, e.g.: - before.java.template: ```java cart.getProducts().var diff --git a/topics/tutorials/settings_tutorial.md b/topics/tutorials/settings_tutorial.md index 23b1f694e..71dc28612 100644 --- a/topics/tutorials/settings_tutorial.md +++ b/topics/tutorials/settings_tutorial.md @@ -1,11 +1,11 @@ # Settings Tutorial - + Implementing custom settings tutorial. As discussed in the [](settings_guide.md), plugins can add Settings to IntelliJ Platform-based IDEs. -The IDE displays the Settings in response to a user choosing Settings/Preferences. +The IDE displays the Settings in response to a user choosing Settings. Custom Settings are displayed and function just like those native to the IDE. ## Overview of Custom Settings Implementation @@ -131,7 +131,7 @@ Also review notes about [IntelliJ Platform Interactions](settings_guide.md#intel ## Testing the Custom Settings Plugin After performing the steps described above, compile and run the plugin in a Development Instance to see the custom Settings available in the Settings Dialog. -Open the IDE Settings by selecting Settings/Preferences | Tools | SDK: Application Settings Example. +Open the IDE Settings by selecting Settings | Tools | SDK: Application Settings Example. The settings are preloaded with the default values: !["Settings Defaults"](settings_defaults.png){width="600"} diff --git a/topics/user_interface_components/kotlin_ui_dsl.md b/topics/user_interface_components/kotlin_ui_dsl.md index 209b34f2f..72263efe3 100644 --- a/topics/user_interface_components/kotlin_ui_dsl.md +++ b/topics/user_interface_components/kotlin_ui_dsl.md @@ -1,6 +1,6 @@ # Kotlin UI DSL Version 1 - + Kotlin DSL for creating UI forms with input components bound to state object. @@ -316,12 +316,12 @@ checkBox("Hide tabs if there is no space", uiSettings::hideTabsIfNeed) Sample usages in IntelliJ Platform IDEs: -| User Interface | Implementation | -|-------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------| -| Settings/Preferences | Editor | Reader Mode | [`ReaderModeConfigurable`](%gh-ic%/platform/lang-impl/src/com/intellij/codeInsight/actions/ReaderModeConfigurable.kt) | +| User Interface | Implementation | +|-------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------| +| Settings | Editor | Reader Mode | [`ReaderModeConfigurable`](%gh-ic%/platform/lang-impl/src/com/intellij/codeInsight/actions/ReaderModeConfigurable.kt) | | New Branch dialog in Git ([Manage Git branches](https://www.jetbrains.com/help/idea/manage-branches.html)) | [`GitNewBranchDialog`](%gh-ic%/plugins/git4idea/src/git4idea/branch/GitNewBranchDialog.kt) | -| Settings/Preferences | Tools | Diff & Merge | [`DiffSettingsConfigurable`](%gh-ic%/platform/diff-impl/src/com/intellij/diff/settings/DiffSettingsConfigurable.kt) | -| Settings/Preferences | Editor | General | Editor Tabs | [`EditorTabsConfigurable`](%gh-ic%/platform/platform-impl/src/com/intellij/application/options/editor/EditorTabsConfigurable.kt) | +| Settings | Tools | Diff & Merge | [`DiffSettingsConfigurable`](%gh-ic%/platform/diff-impl/src/com/intellij/diff/settings/DiffSettingsConfigurable.kt) | +| Settings | Editor | General | Editor Tabs | [`EditorTabsConfigurable`](%gh-ic%/platform/platform-impl/src/com/intellij/application/options/editor/EditorTabsConfigurable.kt) | diff --git a/topics/user_interface_components/notifications.md b/topics/user_interface_components/notifications.md index b49214083..ed0e3ce5f 100644 --- a/topics/user_interface_components/notifications.md +++ b/topics/user_interface_components/notifications.md @@ -1,6 +1,6 @@ # Notifications - + @@ -45,7 +45,7 @@ The most general way to display non-modal notifications is to use the [`Notifica It has two main advantages: -* The user can control the way each notification type is displayed under Settings/Preferences | Appearance & Behavior | Notifications +* The user can control the way each notification type is displayed under Settings | Appearance & Behavior | Notifications * All displayed notifications are gathered in the Event Log tool window and can be reviewed later For UI reference, see [Balloon](https://jetbrains.design/intellij/controls/balloon/) in the IntelliJ Platform UI Guidelines. @@ -58,7 +58,7 @@ The text of the notification can include HTML tags. Use `Notification.addAction(AnAction)` to add links below the content, use [`NotificationAction`](%gh-ic%/platform/ide-core/src/com/intellij/notification/NotificationAction.java) for convenience. The `groupId` parameter of the [`Notification`](%gh-ic%/platform/ide-core/src/com/intellij/notification/Notification.java) constructor specifies a notification type. -The user can choose the display type corresponding to each notification type under Settings/Preferences | Appearance & Behavior | Notifications. +The user can choose the display type corresponding to each notification type under Settings | Appearance & Behavior | Notifications. To specify the preferred display type, you need to use [`NotificationGroup`](%gh-ic%/platform/ide-core/src/com/intellij/notification/NotificationGroup.kt) to create notifications.