mirror of
https://github.com/JetBrains/intellij-sdk-code-samples.git
synced 2025-07-28 01:07:49 +08:00
"dumb mode" link title
This commit is contained in:
parent
c664d883c1
commit
bf4e6d9508
@ -114,7 +114,7 @@ See [](verifying_plugin_compatibility.md) for overview of API status.
|
||||
| ![Internal API][internal] | Internal API | Annotated with [`@ApiStatus.Internal`](https://github.com/JetBrains/java-annotations/blob/master/common/src/main/java/org/jetbrains/annotations/ApiStatus.java), must not be used by 3rd party, see [](api_internal.md) |
|
||||
| ![Project-Level][project-level] | Project-Level Extension Point/Topic | <p>Can have [`Project`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/Project.java) as constructor parameter</p><p>Extension Point: Declared with `area="IDEA_PROJECT"`</p><p>Listener: registered in [`<projectListeners>`](plugin_configuration_file.md#idea-plugin__projectListeners)</p> |
|
||||
| ![Non-Dynamic][non-dynamic] | Non-Dynamic Extension Point | Installation/update of plugin requires IDE restart ([](dynamic_plugins.md)) |
|
||||
| ![DumbAware][dumb-aware] | `DumbAware` Extension Point | Implementations marked with [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java) will be processed during [](indexing_and_psi_stubs.md#dumb-mode) |
|
||||
| ![DumbAware][dumb-aware] | `DumbAware` Extension Point | Implementations marked with [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java) will be processed during [dumb mode](indexing_and_psi_stubs.md#dumb-mode) |
|
||||
|
||||
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
|
||||
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
|
||||
|
@ -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-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
|
||||
|
||||
# PSI Performance
|
||||
|
||||
@ -47,7 +47,7 @@ If the information you cache depends only on a subtree of the current PSI elemen
|
||||
### Using `ProjectRootManager` as Dependency
|
||||
{id="projectRootManagerDependency"}
|
||||
|
||||
Since 2024.1, the platform no longer increments root changes modification tracker on finish of [](indexing_and_psi_stubs.md#dumb-mode).
|
||||
Since 2024.1, the platform no longer increments root changes modification tracker on finish of [dumb mode](indexing_and_psi_stubs.md#dumb-mode).
|
||||
If cached values use [`ProjectRootManager`](%gh-ic%/platform/projectModel-api/src/com/intellij/openapi/roots/ProjectRootManager.java) as dependency
|
||||
(without [`PsiModificationTracker`](%gh-ic%/platform/core-api/src/com/intellij/psi/util/PsiModificationTracker.java))
|
||||
and at the same time depend on [indexes](indexing_and_psi_stubs.md), a dependency on
|
||||
|
@ -26,7 +26,7 @@ The [](grouping_action.md) tutorial demonstrates three types of groups that can
|
||||
## Action Implementation
|
||||
|
||||
An action is a class derived from the abstract class [`AnAction`](%gh-ic%/platform/editor-ui-api/src/com/intellij/openapi/actionSystem/AnAction.java).
|
||||
For actions available during [](indexing_and_psi_stubs.md#dumb-mode), extend [`DumbAwareAction`](%gh-ic%/platform/ide-core/src/com/intellij/openapi/project/DumbAwareAction.java).
|
||||
For actions available during [dumb mode](indexing_and_psi_stubs.md#dumb-mode), extend [`DumbAwareAction`](%gh-ic%/platform/ide-core/src/com/intellij/openapi/project/DumbAwareAction.java).
|
||||
See also [](#useful-action-base-classes) below.
|
||||
|
||||
The IntelliJ Platform calls methods of actions when a user interacts with a menu item or toolbar button.
|
||||
|
@ -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-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
|
||||
|
||||
# Run Configurations
|
||||
|
||||
@ -77,7 +77,7 @@ The actual run configurations are created in the `createConfiguration()` method
|
||||
Configuration factory presentation is inherited from the containing configuration type.
|
||||
If customization is needed, override the presentation methods in the factory class.
|
||||
|
||||
By default, configurations created by a given factory are not editable in [](indexing_and_psi_stubs.md#dumb-mode).
|
||||
By default, configurations created by a given factory are not editable in [dumb mode](indexing_and_psi_stubs.md#dumb-mode).
|
||||
To enable editing them in Dumb Mode, return `true` from `isEditableInDumbMode()`.
|
||||
|
||||
### RunConfiguration
|
||||
|
@ -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-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
|
||||
|
||||
# File-Based Indexes
|
||||
|
||||
@ -64,7 +64,7 @@ Please see also [Improving indexing performance](indexing_and_psi_stubs.md#impro
|
||||
|
||||
Access to file-based indexes is performed through the [`FileBasedIndex`](%gh-ic%/platform/indexing-api/src/com/intellij/util/indexing/FileBasedIndex.java) class.
|
||||
|
||||
> Please note index access is restricted during [](indexing_and_psi_stubs.md#dumb-mode).
|
||||
> Please note index access is restricted during [dumb mode](indexing_and_psi_stubs.md#dumb-mode).
|
||||
>
|
||||
{style="note"}
|
||||
|
||||
|
@ -58,7 +58,7 @@ Must be one of `IDEA_APPLICATION` for Application (default), `IDEA_PROJECT` for
|
||||
|
||||
The plugin that contributes to the extension point will read those properties from the <path>plugin.xml</path> file.
|
||||
|
||||
If extension implementations are filtered according to [](indexing_and_psi_stubs.md#dumb-mode), the base class should be
|
||||
If extension implementations are filtered according to [dumb mode](indexing_and_psi_stubs.md#dumb-mode), the base class should be
|
||||
marked with [`PossiblyDumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/PossiblyDumbAware.java) to highlight this.
|
||||
|
||||
Base classes for extensions requiring a key:
|
||||
|
@ -93,7 +93,7 @@ should be implemented when whitespace matters in a language.
|
||||
|
||||
Note that parameter info works during indexing (using incomplete data) when the implementations also extend
|
||||
[`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java).
|
||||
It is recommended to adapt tests for [](indexing_and_psi_stubs.md#dumb-mode) since the results might be surprising,
|
||||
It is recommended to adapt tests for [dumb mode](indexing_and_psi_stubs.md#dumb-mode) since the results might be surprising,
|
||||
and more changes to the handler might be required for better results.
|
||||
|
||||
Finally, language authors should be aware of the global
|
||||
|
@ -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-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
|
||||
|
||||
# Syntax and Error Highlighting
|
||||
|
||||
@ -157,7 +157,7 @@ It uses the same [`AnnotationHolder`](%gh-ic%/platform/analysis-api/src/com/inte
|
||||
|
||||
To skip running specific `ExternalAnnotator` for given file, register [`ExternalAnnotatorsFilter`](%gh-ic%/platform/analysis-api/src/com/intellij/lang/ExternalAnnotatorsFilter.java) extension in `com.intellij.daemon.externalAnnotatorsFilter` extension point.
|
||||
|
||||
To enable running `ExternalAnnotator` during indexing in [](indexing_and_psi_stubs.md#dumb-mode), implement [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java) additionally (2023.3).
|
||||
To enable running `ExternalAnnotator` during indexing in [dumb mode](indexing_and_psi_stubs.md#dumb-mode), implement [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java) additionally (2023.3).
|
||||
|
||||
## Controlling Highlighting
|
||||
|
||||
|
@ -24,7 +24,7 @@ The [`SimpleFoldingBuilder`](%gh-sdk-samples%/simple_language_plugin/src/main/ja
|
||||
Start by subclassing [`FoldingBuilderEx`](%gh-ic%/platform/core-api/src/com/intellij/lang/folding/FoldingBuilderEx.java)
|
||||
|
||||
Note that `SimpleFoldingBuilder` also implements [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java),
|
||||
which means the class is allowed to run in [](indexing_and_psi_stubs.md#dumb-mode), when indexes are in background update.
|
||||
which means the class is allowed to run in [dumb mode](indexing_and_psi_stubs.md#dumb-mode), when indexes are in background update.
|
||||
|
||||
> A folding builder must implement [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java) to function in this tutorial and pass tests.
|
||||
>
|
||||
|
Loading…
x
Reference in New Issue
Block a user