ReSharper 2023.3 Help

Action indicators and action list

Among the most noticeable things that ReSharper adds to the Visual Studio text editor are Action Indicators and the Action List. They appear in all files supported by ReSharper (C#, VB.NET, XML, CSS, JavaScript, ASP.NET, and so on) to notify you about available actions and help you apply them.

Action Indicators

Action indicators are icons that, depending on your settings, appear in the Action bar, in the left margin and/or the body of the text editor. These icons identify actions available in the corresponding line and caret position. If there are several actions available in the same place, the icon corresponding to the action of the highest priority is shown.

There are two types of action indicators: fixed indicators and context-sensitive indicators.

Fixed indicators

Fixed indicators are always shown and notify about the following:

Test

The method is a unit test and you can run and debug it.

Test

The class is a unit test class and you can run and debug containing tests.

Passed

The unit test has passed during the last execution.

Passed

Tests in the unit test class have passed during the last execution.

Failed

The unit test has failed during the last execution.

Failed

At least one test in the unit test class has failed during the last execution.

Ignored

The unit test was ignored during the last execution.

Ignored

All tests in the unit test class were ignored during the last execution.

ThemedIcon.HasImplementations.Screen.(Gray).png

The interface or the interface member has implementations; you can navigate to these implementations.

ThemedIcon.HasOverrides.Screen.(Gray).png

The class has derived classes or the class member is overridden elsewhere; you can navigate to these inheritors and overrides.

ThemedIcon.Hides.Screen.(Gray).png

The member hides another member from a base type; you can navigate to the hidden member.

ThemedIcon.HidesAndImplements.Screen.(Gray).png

The member hides one member and implements another member from the inheritance hierarchy; you can navigate to both the hidden and the overridden members.

ThemedIcon.Implements.Screen.(Gray).png

The type or type member implements an interface; you can navigate to the interface type or member.

ThemedIcon.ImplementsOverDefault.Screen.(Gray).png

The member implements an interface member that has a default implementation and you can navigate to it.

ThemedIcon.Overrides.Screen.(Gray).png

The class is inherited from another class or the class member overrides a virtual or abstract member; you can navigate to the base class or member.

ThemedIcon.OverridesAndImplements.Screen.(Gray).png

The class implements an interface and inherits from a base class, or the member overrides a virtual or abstract member, which implements an interface member; you can navigate to the overridden and implemented types or members.

ThemedIcon.Recursion.Screen.(Gray).png

The call is recursive. If this is a tail call, ReSharper suggests a quick-fix to replace recursion with iteration.

ThemedIcon.SpecificCulture.Screen.(Gray).png

The resource is overridden for specific cultures and you can navigate to the derived definitions.

ThemedIcon.BaseCulture.Screen.(Gray).png

The resource is defined in the base culture and you can navigate to the definition in the default culture.

ThemedIcon.Bookmark3.Screen.(Gray).png

There is a bookmark at this line.

ThemedIcon.RunDebug.Screen.(Gray).png

The static method has a run configuration.

ThemedIcon.Switch.Screen.(Gray).png

This indicator appears in C++ header and source files and notifies you that there is either declaration/definition the current symbol or primary template/specialization for the class template. You can use this indicator to navigate to the corresponding items.

Caret-sensitive indicators

Caret-sensitive indicators show up as soon as you place the caret to a specific place in the code and suggest one or more actions that may be helpful at this place.

Most of the time ReSharper can indicate several actions at your caret position and therefore often an indicator of a specific action with a higher priority hides several more actions with lower priority.

Caret-sensitive action indicators in the list below are shown in the order of their priorities (from high to low):

ThemedIcon.RedBulb.Screen.(Gray).png

Suggests a quick-fix for the detected code issue with the Error severity level.

ThemedIcon.QuickSearch.Screen.(Gray).png

Suggests to find an unresolved type or namespace in the NuGet package gallery,

ThemedIcon.RefactorThis.Screen.(Gray).png

Suggests an inplace refactoring or a refactoring that can fix the detected code issue.

ThemedIcon.YellowBulb.Screen.(Gray).png

Suggests a quick-fix for the detected code issue with Warning, Suggestion or Hint severity level.

ThemedIcon.YellowBulbVS.Screen.(Gray).png

Suggests a Visual Studio's code correction or refactoring action.

ThemedIcon.Delete.Screen.(Gray).png

Suggests a quick-fix for redundant code that can be safely removed.

ThemedIcon.RunTest.Screen.(Gray).png

Suggests to run current unit tests or unit test class.

ThemedIcon.Debug.Screen.(Gray).png

Suggests to debug current unit tests or unit test class.

ThemedIcon.UtrProfile.Screen.(Gray).png

(appears if JetBrains dotTrace is integrated with Visual Studio) - suggests profiling current unit tests or unit test class.

ThemedIcon.Cover.Screen.(Gray).png

(appears if JetBrains dotCover is integrated with Visual Studio) Suggests performing code coverage on current unit tests or unit test class.

ThemedIcon.AddedParameter.Screen.(Gray).png

Suggests to append current unit tests or unit test class to existing unit test session.

ThemedIcon.NewSession.Screen.(Gray).png

Suggests to create a new unit test session for the current unit test or unit test class.

ThemedIcon.Update.Screen.(Gray).png

(appears if JetBrains dotMemory is integrated with Visual Studio) Suggests installing the dotMemory Unit Testing Framework NuGet package and references it in the unit test project where the current file belongs.

ThemedIcon.RunDebug.Screen.(Gray).png

(appears when you place the caret at the declaration of a public static method without parameters) Suggests debugging this method with an anonymous run configuration. For more information, refer to Run configurations.

ThemedIcon.CodeCleanupOptionPage.Screen.(Gray).png

(appears when you select a code block) Suggests reformatting selected code.

ThemedIcon.ContextAction.Screen.(Gray).png

Suggests a context action.

ThemedIcon.Edit.Screen.(Gray).png

Suggests a code annotation context action.

ThemedIcon.SurroundTemplate.Screen.(Gray).png

(appears when you select a code block) Suggests a surround action and surround templates for the selection.

Action List

If you click a particular action indicator or press Alt+Enter while your caret is in the corresponding position, all available actions appear in a popup called Action list:

Action list

You are free to choose whether to use the suggestions or not, but it often worth taking a look at what is available at the current caret position.

Action list also displays the search ThemedIcon.QuickSearch.Screen.(Gray).png icon. It appears to remind you that you can navigate to action right from the action list by starting to type the action name or related words.

If ReSharper detects one or more code issues under your caret, the Inspection [name of inspection] ThemedIcon.Settings.Screen.(Gray).png sub-menu appears in the action list for each issue detected with a configurable inspection. You can use items of this sub-menu to configure options of the corresponding inspection.

ReSharper: Code inspection options in Alt+Enter menu
Last modified: 18 March 2024