# RubyMine Extension Point and Listener List Overview of Extension Points and Listeners for RubyMine. **Product-Specific Plugin Development**: [RubyMine](rubymine.md) > See [](intellij_platform_extension_point_list.md) for IntelliJ Platform. 88 Extension Points and 13 Listeners ## RubyMine ### RubyMine – Listeners | Topic | Listener | |-------|----------| | [`RbsLanguageSettingsChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=com.intellij.lang.ruby.rbs.settings.RbsLanguageSettingsChangedListener) | `RbsLanguageSettingsChangedListener` | | [`ChefTopics#COOKBOOK`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.chef.sdk.CookbooksListener) | `CookbooksListener` | | [`GemManager#GEMSET_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.gem.GemManager.GemSetListener) | `GemSetListener` | | [`GemManager#MODULE_GEMS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.gem.GemManager.ModuleGemsListener) ![Project-Level][project-level] | `ModuleGemsListener` | | [`GemRequirementsHolder#GEM_REQUIREMENTS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.gem.module.GemRequirementsHolder.RequirementsChangedListener) ![Project-Level][project-level] | `RequirementsChangedListener` | | [`InflectorService#INFLECTIONS_CHANGED`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.InflectorService.InflectionChanged) | `InflectionChanged` | | [`AssetsRegistrationWatcher#ASSETS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.codeInsight.sprockets.assetsPaths.AssetsRegistrationWatcher.AssetsListener) | `AssetsListener` | | [`MigrationParser#MIGRATIONS_CHANGED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.database.MigrationParser.MigrationListener) ![Project-Level][project-level] | `MigrationListener` | | [`RailsPathsChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.facet.configuration.RailsPathsChangedListener) | `RailsPathsChangedListener` | | [`RubyRemoteInterpreterManager#RUBY_REMOTE_SDK_TRANSFER_LISTENER_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.remote.RubyRemoteSdkTransferListener) | `RubyRemoteSdkTransferListener` | | [`RequireSetChangedListener#TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.ruby.codeInsight.symbols.cache.RequiresIndexExtension.RequireSetChangedListener) | `RequireSetChangedListener` | | [`RubySdkType#SDK_PATHS_INITIALIZED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.ruby.sdk.RubySdkType.SdkPathsInitializedListener) | `SdkPathsInitializedListener` | | [`RVMSupportUtil#RVM_GEMSET_ADDED_TOPIC`](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.version.management.rvm.RVMSupportUtil.RVMGemsetListener) | `RVMGemsetListener` | ### intellij.ruby.coverage.xml | Extension Point | Implementation | |-----------------|----------------| | | `RubyCoverageDeserializationProvider` | ### intellij.ruby.frontback.xml | Extension Point | Implementation | |-----------------|----------------| | | `RubyAdditionalSpacingProcessor` | | | `LanguageLevelProvider` | | | `RubyBuilderFactory` | | | `TemplateElementsProvider` | ### ruby-core.xml | Extension Point | Implementation | |-----------------|----------------| | | `AssociationFactory` | | | `AttributeProvider` | | | `RubyAutoImportProvider` | | | `StructureCallNavigationOffsetProvider` | | | `RubyCallTypeProvider` | | | `RubyCompletionProvider` | | | `FileLocationProvider` | | | `GemInfrastructure` | | | `GemScannerSuppressor` | | | `ImplicitRequireGemProvider` | | | `ImplicitRequireProvider` | | | `RubyIncludeExtendReceiverFqnProvider` | | | `MethodMissingProvider` | | | [`QueryExecutor`](%gh-ic%/platform/core-api/src/com/intellij/util/QueryExecutor.java) | | | `ModuleGemDependencyProvider` | | | `ModuleGemProvider` | | | `OverriddenMethodGenerator` | | | `ParamDefProvider` | | | `PsiElementFactory` | | | `RailsViewFileTemplateProvider` | | | `RubyRenameHelper` | | | `RubyRoutesProvider` | | | `RubyCoercibleExpressionTypeProvider` | | | `RubyExpectedArgumentNilabilityProvider` | | | `RubyExpectedArgumentTypeProvider` | | | `RubyExpectedConstantTypeProvider` | | | `RubyExpectedGlobalVariableTypeProvider` | | | `RubyExpectedMethodSignatureProvider` | | | `RubyExpectedParameterTypeProvider` | | | `RubyExpectedReturnTypeProvider` | | | `RubyExpectedVariableTypeProvider` | | | `RubyFindUsagesSecondaryElementsProvider` | | | `RunEnvironmentProvider` | | | `TestFrameworkConfigurator` | | | `RubyElementNameAndDescriptionProvider` | | | `RubyLocalVariablesProvider` | | | `RubyParamDefSearchTextProvider` | | | `RubyParameterInfoDelegateProvider` | | | `RenameProcessor` | | | `RubySdkConfigurator` | | | `SdkRefresher` | | | [`QueryExecutor`](%gh-ic%/platform/core-api/src/com/intellij/util/QueryExecutor.java) | | | `RubySupportProvider` | | | `RubyTypeProvider` | | | `RubyConsoleFilterProvider` | | | `RunnableScriptFilter` | | | `Factory` | | | `RubySuperMethodInfoProvider` | | | `RubySymbolMixinsProvider` | | | `RubySymbolProvider` | | | `SymbolicTypeInferenceProvider` | | | `TemplateIntegration` | | | `RubyVersionManagerHandler` | ### ruby-plugin.xml | Extension Point | Implementation | |-----------------|----------------| | | `RubyModuleSourceRootEditProvider` | | | `RubyBreadcrumbsCustomizer` | | | `ContextInfoProvider` | | | `GemDetector` | | | `GemFacetEditorTabFactory` | | | `GeneratorActionConfigurator` | | | `I18nProvider` | | | `RubyInflectionsProvider` | | | `SprocketAssetsPathProvider` | | | `SprocketsDirectiveContextProvider` | | | `RailsViewFileTypesProvider` | | | `FacetEditorTabFactory` | | | `RailsModelFieldsProvider` | | | `RailsNavigateFromProvider` | | | `RailsSchemaParser` | | | `RakeRunCommandLineModifierProvider` | | | `RakeRunConfigurationSettingsFactory` | | | `RubyRerunFailedTestsProvider` | | ![DumbAware][dumb-aware] | `RubyAssociatedDeclarationProvider` | | | `RubyDebugHelperFactory` | | | `RubyTopLevelSymbolProvider` | | ![DumbAware][dumb-aware] | `RubyTypeSignatureProvider` | | | `RubyFileStructureViewProvider` | | | `RubyInsertHandlerProvider` | | | `RubyMethodTypeDocPresentationProvider` | | | `RubyRunConfigurationExtension` | | | `RubyStructureViewCustomizer` | | | `RSpecContextNameProvider` | | | `RSpecContextSymbolProvider` | ### ruby-rbs.xml | Extension Point | Implementation | |-----------------|----------------| | | `RbsContainerHierarchyMapper` | [deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square [removal]: https://img.shields.io/badge/-Removal-red?style=flat-square [obsolete]: https://img.shields.io/badge/-Obsolete-grey?style=flat-square [experimental]: https://img.shields.io/badge/-Experimental-violet?style=flat-square [internal]: https://img.shields.io/badge/-Internal-darkred?style=flat-square [project-level]: https://img.shields.io/badge/-Project--Level-blue?style=flat-square [non-dynamic]: https://img.shields.io/badge/-Non--Dynamic-orange?style=flat-square [dumb-aware]: https://img.shields.io/badge/-DumbAware-darkgreen?style=flat-square