# Editor gutter

A gutter is a vertical area along the left side of the editor. The gutter provides important information and action icons within easy reach as you work on your code. The appearance and behavior of the gutter can be customized according to your preferences.

![Editor gutter](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_gutter.png)

If you work on a smaller screen and prefer the gutter and other UI elements to take up less space, you can enable the [compact mode](new-ui.html#compact-mode) .

If you use a screen reader, you can [configure](accessibility.html#gutter_icons) it to read line numbers, annotations, and icon tooltips in the gutter.

Procedure: Configure gutter appearance

* To configure gutter appearance, right-click the gutter and navigate to Appearance .

You can configure the following gutter elements:

* Line numbers

* Breakpoints over line numbers

* Indent guides

* Sticky lines

* Breadcrumbs

![Configure gutter appearance](https://resources.jetbrains.com.cn/help/img/idea/2026.2/configure_gutter_appearance.png)

## Line numbers

By default, the gutter displays line numbers, which makes it easier to reference specific lines of code when discussing with teammates or navigating through code.

Procedure: Configure line numbers

You can switch between several line numbering modes according to your needs.

1. Open the Settings dialog (`Ctrl+Alt+S` (Windows), `⌘ Comma` (macOS), `⌘ Comma` (IntelliJ IDEA Classic (macOS)), `⌘ Comma` (macOS System Shortcuts), `Ctrl+Alt+S` (XWin), `Ctrl+Alt+S` (GNOME), `Ctrl+Alt+S` (KDE), `Ctrl+Alt+S` (Emacs), `Ctrl+Alt+S` (Sublime Text), `⌘ Comma` (Sublime Text (macOS)), `Ctrl+Alt+S` (NetBeans), `Ctrl+Alt+S` (Visual Studio), `⌘ Comma` (Visual Studio (macOS)), `Ctrl+Alt+S` (Eclipse), `⌘ Comma` (Eclipse (macOS))) and go to `Editor | General | Appearance`.

2. With the Show line numbers option enabled, select the required line numbering mode from the drop-down menu:

Absolute:

The standard line numbering that runs sequentially from the top of the file to the bottom, giving each line a unique number. This mode is helpful for direct navigation and referencing specific lines in discussions or error messages.

![Absolute line numbering](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_line_numbering_absolute.png)

Relative:

The line number shows how many lines away each line is from the current position of the caret. This is particularly useful for quickly moving or editing code blocks using [keyboard shortcuts](mastering-keyboard-shortcuts.html).

![Relative line numbering](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_line_numbering_relative.png)

Hybrid:

This mode combines absolute and relative line numbering, showing the absolute line number at the caret's current position and relative numbers on all other lines. It allows using the benefits of both systems for efficient navigation and editing.

![Hybrid line numbering](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_line_numbering_hybrid.png)

Procedure: Hide line numbers

To hide line numbers, do one of the following:

* Right-click the gutter and deselect `Appearance | Show Line Numbers`.

* In the Settings dialog, go to `Editor | General | Appearance` and uncheck the Show line numbers option.

## Code folding

To tailor your view of the code to the task at hand, you can use [code folding](working-with-source-code.html#code_folding)  . By default, icons in the gutter for unfolded areas are shown on hover.

![Code folding](https://resources.jetbrains.com.cn/help/img/idea/2026.2/new_ui_code_folding.animated.gif)

To always display folding icons, go to `Settings | Editor | General | Code Folding` and select Always next to Show code folding arrows.

To always hide folding icons, go to `Settings | Editor | General | Code Folding` and clear the Show code folding arrows checkbox.

## Action icons

The [list of available gutter icons](null) depends on the configuration of your project, the frameworks that you use, and the plugins that you have installed. For example, action icons can be used to [keep track of class implementations and overriding methods](navigating-through-the-source-code.html#go_to_implementation), or to  [run](run-java-applications.html#run_application) an application  .

To access the list of gutter icons available for your project, go to `Settings | Editor | General | Gutter Icons`.

To display or hide an icon in the gutter, select or clear the checkbox next to it. If you want to disable all gutter icons, clear the Show gutter icons checkbox on the top of the list.

![Gutter icons settings in the Settings dialog](https://resources.jetbrains.com.cn/help/img/idea/2026.2/gutter_icons_settings.png)

## Bookmarks

Line [bookmarks](bookmarks.html) are used for marking specific lines of code to quickly navigate to them later.

Procedure: Add an anonymous line bookmark

* In the editor, place the caret at a line of code and press `F11` (Windows), `F3` (macOS), `F11` (IntelliJ IDEA Classic (macOS)), `⌃ ⇧ K` (macOS System Shortcuts), `F11` (XWin), `F11` (GNOME), `F11` (KDE), `F11` (Emacs), `Ctrl+F2` (Sublime Text), `⌘ F2` (Sublime Text (macOS)), `F11` (NetBeans), `Ctrl+K, K` (Visual Studio), `⌘ K, K` (Visual Studio (macOS)), `Ctrl+Shift+F11` (Eclipse), `F11` (Eclipse (macOS)).

* Alternatively, right-click the gutter next to the line of code that you want to bookmark and select Add Bookmark.

![Anonymous bookmark placed in the gutter](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij-anonymous-bookmark.png)

A bookmark icon appears in the gutter next to the bookmarked line.

Procedure: Add a mnemonic line bookmark

1. In the editor, place the caret at a line of code and press `Ctrl+F11` (Windows), `⌥ F3` (macOS), `⌘ F11` (IntelliJ IDEA Classic (macOS)), `⌃ ⌥ ⇧ K` (macOS System Shortcuts), `Ctrl+F11` (XWin), `Ctrl+F11` (GNOME), `Ctrl+F11` (KDE), `Ctrl+F11` (Emacs), `Ctrl+F11` (Sublime Text), `⌥ F3` (Sublime Text (macOS)), `Ctrl+F11` (NetBeans), `Ctrl+F11` (Visual Studio), `⌥ F3` (Visual Studio (macOS)), `Ctrl+Alt+Shift+F11` (Eclipse), `⌥ F3` (Eclipse (macOS)).

Alternatively, right-click the gutter next to the line of code that you want to bookmark and select Add Mnemonic Bookmark.

2. In the popup that opens, select a number or a letter that you want to use as an identifier for this bookmark.

![Adding a mnemonic bookmark](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij-add-mnemonic.png)

If the selected mnemonic is already used, the IDE will ask you whether you want to overwrite an existing bookmark with the new one. Select the Don't ask again option to silently overwrite mnemonics.

3. Optionally, provide a description for the new bookmark.

4. Press `Enter` (Windows), `⏎` (macOS), `⏎` (IntelliJ IDEA Classic (macOS)), `⏎` (macOS System Shortcuts), `Enter` (XWin), `Enter` (GNOME), `Enter` (KDE), `Enter` (Emacs), `Enter` (Sublime Text), `⏎` (Sublime Text (macOS)), `Enter` (NetBeans), `Enter` (Visual Studio), `⏎` (Visual Studio (macOS)), `Enter` (Eclipse), `⏎` (Eclipse (macOS)) or click the selected letter or number once again to save the bookmark.

A letter or a number bookmark icon appears in the gutter next to the bookmarked line.

## Debugger

The editor gutter serves as a convenient entry point for [debugging](debugging-code.html) applications.

Procedure: Start a debugger session

* To [start a debugger session](starting-the-debugger-session.html), click the Run ![Run icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app-client.expui.run.run.svg) icon in the gutter near the class with the `main()` method and select Debug. This will create a temporary run/debug configuration for you.

![Run/Debug options](https://resources.jetbrains.com.cn/help/img/idea/2026.2/ij_debug_gutter.png)

Gutter also allows you to [manage breakpoints](using-breakpoints.html).

Procedure: Manage breakpoints

* To set a line breakpoint, click the gutter at the executable line of code.

* To set a method breakpoint, click the gutter at the line where the method is declared.

* To suspend the program when the default constructor of some class is called, click the gutter at the line where the class is declared.

* To set a field watchpoint, click the gutter at the line where the field is declared.

* To remove a non-exception breakpoint, click it in the gutter.

* To move a breakpoint, drag it to another line in the gutter.

Procedure: Configure breakpoint icons

By default, [breakpoint icons](using-breakpoints.html#breakpoint-icons)  are placed over line numbers to save horizontal space.

![Breakpoints](https://resources.jetbrains.com.cn/help/img/idea/2026.2/new_ui_breakpoints.png)

To place breakpoints near line numbers, right-click the gutter and deselect `Appearance | Breakpoints Over Line Numbers`.

## Code coverage

[Code coverage](code-coverage.html) allows you to measure the amount of code covered by tests.

The editor displays the coverage status of individual code lines. The status is indicated by color-coded markers in the gutter:

* Green (![Green highlight indicating full coverage](https://resources.jetbrains.com.cn/help/img/idea/2026.2/go_full_code_coverage.png)): the code line was executed.

* Yellow (![Yellow highlight indicating partial coverage](https://resources.jetbrains.com.cn/help/img/idea/2026.2/go_partial_code_coverage.png)): the code line was executed partially. This happens when the code line contains conditional logic (such as an `if/else` statement, a loop, or a `switch` statement), but only some of its branches were run.

* Red (![Red highlight indicating no coverage](https://resources.jetbrains.com.cn/help/img/idea/2026.2/go_uncovered_code_coverage.png)): the code line was not executed.

To open a popup with coverage statistics for a specific line, click its coverage marker in the gutter. Depending on which coverage runner you used, the popup displays different information:

IntelliJ IDEA runner:

![Code coverage popup for a switch statement ran with IntelliJ IDEA runner](https://resources.jetbrains.com.cn/help/img/idea/2026.2/coverage-editor-popup-intellij-runner.png)

For the IntelliJ IDEA runner, the popup can display the following information:

* Hits: how many times the code line was executed.

* If the line contains conditional logic (such as an `if/else` statement, a ternary operator, or a loop): * true hits: how many times the condition was true. * false hits: how many times the condition was false.

* If the line contains a `switch` statement: * case <value>: how many times a particular case was executed.

JaCoCo runner:

![Code coverage popup for a switch statement ran with IntelliJ IDEA runner](https://resources.jetbrains.com.cn/help/img/idea/2026.2/coverage-editor-popup-jacoco-runner.png)

For the JaCoCo runner, the popup can display the following information:

* Fully Covered: the code line was executed. If it contains conditional logic, all possible branches were run.

* Partially Covered: the code line was executed, but only some branches of its conditional logic were run.

* Uncovered: the code line was not executed at all.

* Covered <number>/<number> branches: how many branches of the conditional logic were run vs. the total number of branches.

Additionally, the popup includes the following icons:

![Up arrow](https://resources.jetbrains.com.cn/help/img/idea/2026.2/intellij.platform.ide.expui.general.up.svg)
: Previous <Coverage Status>
:
:
:
: Navigate to the previous coverage marker and open its statistics.

![Down arrow](https://resources.jetbrains.com.cn/help/img/idea/2026.2/intellij.platform.ide.expui.general.down.svg)
: Next <Coverage Status>
:
:
:
: Navigate to the next coverage marker and open its statistics.

![Folder icon with a JUnit icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/intellij.platform.ide.expui.nodes.testSourceFolder.svg)
: Show Tests Covering Line
:
:
:
: Show tests that cover the code line in a separate popup.
:
:
:
:
:
: > **Note:**
: > This option is only available if the following criteria are met:
: >
: >
: >
: > * The coverage analysis was run through a [JUnit](run-debug-configuration-junit.html) or [TestNG](run-debug-configuration-testng.html) run configuration.
: >
: > * When the analysis was run, the [Coverage settings](code-coverage.html#project_settings) were set the following way: * Choose coverage runner was set to IntelliJ IDEA. * Track per test coverage was selected.
: >
: > * The line was fully or partially covered in the analysis.

![Bytecode icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/intellij.platform.ide.expui.fileTypes.javaClass.svg)
: Show Bytecode
:
:
:
: Show the bytecode of the current class in a separate tool window.

![Settings icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/intellij.platform.ide.expui.general.settings.svg)
: Edit Coverage Colors
:
:
:
: Open `Settings | Editor | Color Scheme | General` to [customize
: the colors](configuring-colors-and-fonts.html#edit-colors) of coverage markers.

![](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app.expui.empty.png)
: Hide coverage
:
:
:
: Stop displaying coverage results in IntelliJ IDEA.

## Version control

> **Note:**
> These features are available if you enabled [VCS integration](version-control-integration.html) for your project.

Procedure: Configure Git Blame annotations

You can figure out who introduced which changes to a file by using [VCS annotations](investigate-changes.html#annotate_blame).

To enable annotations, right-click the gutter and select Annotate with Git Blame.

![Git Blame annotations](https://resources.jetbrains.com.cn/help/img/idea/2026.2/new_ui_git_annotations.png)

You can configure annotations to show the information according to your preferences:

* Annotation content. Right-click an annotation and go to `View`. You can select the information you want to include in annotations: revision number, change date, author name.

* Colors. Right-click an annotation and go to `View | Colors`. You can select what to highlight: an order of the changes to make recent commits easier to see, or an author of the changes. To disable highlighting, select the Hide option.

* Names. Right-click an annotation and go to `View | Names`. You can select how to label author: using their full name, only first or only last name, initials, or e-mail.

You can also track changes to a file as you modify it in the editor. All changes are highlighted with change markers that appear in the gutter next to the modified lines and show the type of changes introduced since you last [synchronized with the repository](sync-with-a-remote-repository.html). When you commit changes to the repository, change markers disappear.

The changes you introduce to the text are color-coded:

![Highlighting colors for added, changed, and deleted lines](https://resources.jetbrains.com.cn/help/img/idea/2026.2/change_markers_colors.png)

The table below lists default line highlighting colors and their meanings in some of the [color schemes](configuring-colors-and-fonts.html).

Light theme:

| Color | Line Status | Description |
| --- | --- | --- |
|  ![Color sample: light blue](https://resources.jetbrains.com.cn/help/img/idea/2026.2/modified-lines-light.png) #C3D6E8  | Modified lines | Lines that have been modified since the last update. |
|  ![Color sample: light orange](https://resources.jetbrains.com.cn/help/img/idea/2026.2/whitespace-modified-lines-light.png) #EDDCBC  | Whitespace-modified lines | Lines in which only whitespaces have been modified since the last update. |
|  ![Color sample: light green](https://resources.jetbrains.com.cn/help/img/idea/2026.2/added-lines-light.png) #C9DEC1  | Added lines | Lines that have been added since the last update. |
|  ![Grey triangle](https://resources.jetbrains.com.cn/help/img/idea/2026.2/gutterGray.png) #9F9F9F  | Deleted lines | Lines that have been removed since the last update. |

Darcula theme:

| Color | Line Status | Description |
| --- | --- | --- |
|  ![Color sample: dark grayish blue](https://resources.jetbrains.com.cn/help/img/idea/2026.2/modified-lines-darcula.png) #374752  | Modified lines | Lines that have been modified since the last update. |
|  ![Color sample: dark grayish orange](https://resources.jetbrains.com.cn/help/img/idea/2026.2/whitespace-modified-lines-darcula.png) #4C4638  | Whitespace-modified lines | Lines in which only whitespaces have been modified since the last update. |
|  ![Color sample: dark grayish green](https://resources.jetbrains.com.cn/help/img/idea/2026.2/added-lines-darcula.png) #384C38  | Added lines | Lines that have been added since the last update. |
|  ![Grey triangle](https://resources.jetbrains.com.cn/help/img/idea/2026.2/deleted-line-darcula.png) #656E76  | Deleted lines | Lines that have been removed since the last update. |

High-contrast theme:

| Color | Line Status | Description |
| --- | --- | --- |
|  ![Color sample: blue](https://resources.jetbrains.com.cn/help/img/idea/2026.2/modified-lines-hcontrast.png) #1AABFF  | Modified lines | Lines that have been modified since the last update. |
|  ![Color sample: grey](https://resources.jetbrains.com.cn/help/img/idea/2026.2/whitespace-modified-lines-hcontrast.png) #666666  | Whitespace-modified lines | Lines in which only whitespaces have been modified since the last update. |
|  ![Color sample: green](https://resources.jetbrains.com.cn/help/img/idea/2026.2/added-lines-hcontrast.png) #009924  | Added lines | Lines that have been added since the last update. |
|  ![Orange triangle](https://resources.jetbrains.com.cn/help/img/idea/2026.2/deleted-line-hcontrast.png) #FFA14F  | Deleted lines | Lines that have been removed since the last update. |

> **Tip:**
> You can customize the default colors for line statuses on  the Editor | Color Scheme | VCS settings page `Ctrl+Alt+S` (Windows), `⌘ Comma` (macOS), `⌘ Comma` (IntelliJ IDEA Classic (macOS)), `⌘ Comma` (macOS System Shortcuts), `Ctrl+Alt+S` (XWin), `Ctrl+Alt+S` (GNOME), `Ctrl+Alt+S` (KDE), `Ctrl+Alt+S` (Emacs), `Ctrl+Alt+S` (Sublime Text), `⌘ Comma` (Sublime Text (macOS)), `Ctrl+Alt+S` (NetBeans), `Ctrl+Alt+S` (Visual Studio), `⌘ Comma` (Visual Studio (macOS)), `Ctrl+Alt+S` (Eclipse), `⌘ Comma` (Eclipse (macOS)) .
>
>
>
> To disable VCS markers in the gutter, deselect the Highlight modified lines in gutter option on  the Version Control | Confirmation  settings page `Ctrl+Alt+S` (Windows), `⌘ Comma` (macOS), `⌘ Comma` (IntelliJ IDEA Classic (macOS)), `⌘ Comma` (macOS System Shortcuts), `Ctrl+Alt+S` (XWin), `Ctrl+Alt+S` (GNOME), `Ctrl+Alt+S` (KDE), `Ctrl+Alt+S` (Emacs), `Ctrl+Alt+S` (Sublime Text), `⌘ Comma` (Sublime Text (macOS)), `Ctrl+Alt+S` (NetBeans), `Ctrl+Alt+S` (Visual Studio), `⌘ Comma` (Visual Studio (macOS)), `Ctrl+Alt+S` (Eclipse), `⌘ Comma` (Eclipse (macOS)) .

You can manage changes using a toolbar that appears when you hover over a change marker and then click it. The toolbar is displayed together with a frame showing the previous contents of the modified line:

![the modified line marker](https://resources.jetbrains.com.cn/help/img/idea/2026.2/changeMarkerToolbar.png)

You can roll back changes by clicking ![the Revert icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app-client.expui.vcs.revert.svg) and explore the differences between the current and the repository version of the current line by clicking ![the Show diff icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/app-client.expui.vcs.diff.svg).

Instead of reverting the whole file, you can copy any part of the contents of this popup and paste it into the editor.

