# Navigation in Groovy

> **TL;DR**
> Required plugin: Groovy (bundled)

IntelliJ IDEA offers standard [navigation actions](navigating-through-the-source-code.html) when you work with Groovy.

## Recent files

Most of the time you work with a finite set of files, and need to switch between them quickly. A real time-saver here is an action called Recent Files invoked by pressing `Ctrl+E` (Windows), `⌘ E` (macOS), `⌘ E` (IntelliJ IDEA Classic (macOS)), `⌘ E` (macOS System Shortcuts), `Ctrl+E` (XWin), `Ctrl+E` (GNOME), `Ctrl+E` (KDE), `Ctrl+E` (Emacs), `Ctrl+E` (Sublime Text), `⌘ E` (Sublime Text (macOS)), `Shift+F4` (NetBeans), `Ctrl+Comma` (Visual Studio), `⌃ Comma` (Visual Studio (macOS)), `Ctrl+E` (Eclipse), `⌘ E` (Eclipse (macOS)). By default, the focus is on the last accessed file. Note that you can also open any tool window through this action:

![Recent Files](https://resources.jetbrains.com.cn/help/img/idea/2026.2/groovy_recent_files.png)

Navigate to Class is available by pressing `Ctrl+N` (Windows), `⌘ O` (macOS), `⌘ N` (IntelliJ IDEA Classic (macOS)), `⌘ O` (macOS System Shortcuts), `Ctrl+N` (XWin), `Ctrl+N` (GNOME), `Ctrl+N` (KDE), `Alt+Shift+G` (Emacs), `Ctrl+N` (Sublime Text), `Ctrl+N` (Sublime Text (macOS)), `Ctrl+O` (NetBeans), `Ctrl+N` (Visual Studio), `Ctrl+N` (Visual Studio (macOS)), `Ctrl+Shift+T` (Eclipse), `⌘ ⇧ T` (Eclipse (macOS)) and supports sophisticated expressions, including camel humps, paths, line navigate to, middle name matching, and many more. If you call it twice, it shows you the results out of the project classes.

Navigate to File works similarly by pressing `Ctrl+Shift+N` (Windows), `⌘ ⇧ O` (macOS), `⌘ ⇧ N` (IntelliJ IDEA Classic (macOS)), `⌘ ⇧ O` (macOS System Shortcuts), `Ctrl+Shift+N` (XWin), `Ctrl+Shift+N` (GNOME), `Ctrl+Shift+N` (KDE), `Ctrl+X, Ctrl+F` (Emacs), `Ctrl+P` (Sublime Text), `⌘ P` (Sublime Text (macOS)), `Alt+Shift+O` (NetBeans), `Ctrl+Shift+T` (Visual Studio), `⌘ ⇧ T` (Visual Studio (macOS)), `Ctrl+Shift+R` (Eclipse), `⌘ ⇧ R` (Eclipse (macOS)), but is used for files and folders. To navigate to a folder, end your expression with the `Slash` character.

Navigate to Symbol is available by pressing `Ctrl+Alt+Shift+N` (Windows), `⌘ ⌥ O` (macOS), `⌘ ⌥ ⇧ N` (IntelliJ IDEA Classic (macOS)), `⌘ ⌥ O` (macOS System Shortcuts), `Ctrl+Alt+Shift+N` (XWin), `Ctrl+Alt+Shift+N` (GNOME), `Ctrl+Alt+Shift+N` (KDE), `Ctrl+Alt+Shift+N` (Emacs), `Ctrl+Shift+R` (Sublime Text), `⌘ ⇧ R` (Sublime Text (macOS)), `Ctrl+Alt+Shift+O` (NetBeans), `Ctrl+Alt+Shift+T` (Visual Studio), `⌘ ⌥ ⇧ T` (Visual Studio (macOS)), `Ctrl+Alt+Shift+N` (Eclipse), `⌘ ⌥ O` (Eclipse (macOS)) and allows you to find a method or a field by its name.

Recent Locations popup lets you check recently visited or changed code locations and is available by pressing `Ctrl+Shift+E` (Windows), `⌘ ⇧ E` (macOS), `⌘ ⇧ E` (IntelliJ IDEA Classic (macOS)), `⌘ ⇧ E` (macOS System Shortcuts), `Ctrl+Shift+E` (XWin), `Ctrl+Shift+E` (GNOME), `Ctrl+Shift+E` (KDE), `Ctrl+Shift+E` (Emacs), `Ctrl+Shift+E` (Sublime Text), `⌘ ⇧ E` (Sublime Text (macOS)), `Ctrl+Shift+E` (NetBeans), `Ctrl+Shift+E` (Visual Studio), `Ctrl+Shift+E` (Visual Studio (macOS)), `Ctrl+Shift+E` (Eclipse), `⌘ ⇧ E` (Eclipse (macOS)).

![Recent locations dialog](https://resources.jetbrains.com.cn/help/img/idea/2026.2/groovy_recent_locations.png)

## Structure

When you are not switching between files, you are most probably navigating within a file. The simplest way to do it is to press `Ctrl+F12` (Windows), `⌘ F12` (macOS), `⌘ F12` (IntelliJ IDEA Classic (macOS)), `⌘ ⇧ 7` (macOS System Shortcuts), `Ctrl+F12` (XWin), `Ctrl+F12` (GNOME), `Ctrl+0` (KDE), `Ctrl+F12` (Emacs), `Ctrl+R` (Sublime Text), `⌘ R` (Sublime Text (macOS)), `Ctrl+F12` (NetBeans), `Alt+\` (Visual Studio), `⌥ \` (Visual Studio (macOS)), `Ctrl+F3` (Eclipse), `⌘ O` (Eclipse (macOS)). The popup shows you the structure of a file, and allows you to quickly navigate to any of them:

![File structure](https://resources.jetbrains.com.cn/help/img/idea/2026.2/groovy_show_file_structure.png)

## Select in

If you need to open a file in a particular tool window (or Finder/Explorer), you can do so via the Select In action by pressing `Alt+F1` (Windows), `⌥ F1` (macOS), `⌥ F1` (IntelliJ IDEA Classic (macOS)), `⌃ Q` (macOS System Shortcuts), `Alt+F1` (XWin), `Alt+Shift+1` (GNOME), `Alt+Shift+1` (KDE), `Alt+F1` (Emacs), `Alt+F1` (Sublime Text), `⌥ F1` (Sublime Text (macOS)), `Ctrl+Shift+1` (NetBeans), `Alt+F1` (Visual Studio), `⌥ F1` (Visual Studio (macOS)), `Alt+F1` (Eclipse), `⌘ ⌥ W` (Eclipse (macOS)):

![Select in popup](https://resources.jetbrains.com.cn/help/img/idea/2026.2/groovy_select_in.png)

Navigation shortcuts include:

| Action | Shortcut |
| --- | --- |
| Search everywhere |  Double `Shift` (Windows), `Shift` (macOS), `Shift` (IntelliJ IDEA Classic (macOS)), `Shift` (macOS System Shortcuts), `Shift` (XWin), `Shift` (GNOME), `Shift` (KDE), `Shift` (Emacs), `Shift` (Sublime Text), `Shift` (Sublime Text (macOS)), `Shift` (NetBeans), `Shift` (Visual Studio), `Shift` (Visual Studio (macOS)), `Shift` (Eclipse), `Shift` (Eclipse (macOS))  |
| Navigate to class |  `Ctrl+N` (Windows), `⌘ O` (macOS), `⌘ N` (IntelliJ IDEA Classic (macOS)), `⌘ O` (macOS System Shortcuts), `Ctrl+N` (XWin), `Ctrl+N` (GNOME), `Ctrl+N` (KDE), `Alt+Shift+G` (Emacs), `Ctrl+N` (Sublime Text), `Ctrl+N` (Sublime Text (macOS)), `Ctrl+O` (NetBeans), `Ctrl+N` (Visual Studio), `Ctrl+N` (Visual Studio (macOS)), `Ctrl+Shift+T` (Eclipse), `⌘ ⇧ T` (Eclipse (macOS))  |
| Navigate to file |  `Ctrl+Shift+N` (Windows), `⌘ ⇧ O` (macOS), `⌘ ⇧ N` (IntelliJ IDEA Classic (macOS)), `⌘ ⇧ O` (macOS System Shortcuts), `Ctrl+Shift+N` (XWin), `Ctrl+Shift+N` (GNOME), `Ctrl+Shift+N` (KDE), `Ctrl+X, Ctrl+F` (Emacs), `Ctrl+P` (Sublime Text), `⌘ P` (Sublime Text (macOS)), `Alt+Shift+O` (NetBeans), `Ctrl+Shift+T` (Visual Studio), `⌘ ⇧ T` (Visual Studio (macOS)), `Ctrl+Shift+R` (Eclipse), `⌘ ⇧ R` (Eclipse (macOS))  |
| Navigate to symbol |  `Ctrl+Alt+Shift+N` (Windows), `⌘ ⌥ O` (macOS), `⌘ ⌥ ⇧ N` (IntelliJ IDEA Classic (macOS)), `⌘ ⌥ O` (macOS System Shortcuts), `Ctrl+Alt+Shift+N` (XWin), `Ctrl+Alt+Shift+N` (GNOME), `Ctrl+Alt+Shift+N` (KDE), `Ctrl+Alt+Shift+N` (Emacs), `Ctrl+Shift+R` (Sublime Text), `⌘ ⇧ R` (Sublime Text (macOS)), `Ctrl+Alt+Shift+O` (NetBeans), `Ctrl+Alt+Shift+T` (Visual Studio), `⌘ ⌥ ⇧ T` (Visual Studio (macOS)), `Ctrl+Alt+Shift+N` (Eclipse), `⌘ ⌥ O` (Eclipse (macOS))  |
| Recent files |  `Ctrl+E` (Windows), `⌘ E` (macOS), `⌘ E` (IntelliJ IDEA Classic (macOS)), `⌘ E` (macOS System Shortcuts), `Ctrl+E` (XWin), `Ctrl+E` (GNOME), `Ctrl+E` (KDE), `Ctrl+E` (Emacs), `Ctrl+E` (Sublime Text), `⌘ E` (Sublime Text (macOS)), `Shift+F4` (NetBeans), `Ctrl+Comma` (Visual Studio), `⌃ Comma` (Visual Studio (macOS)), `Ctrl+E` (Eclipse), `⌘ E` (Eclipse (macOS))  |
| File structure |  `Ctrl+F12` (Windows), `⌘ F12` (macOS), `⌘ F12` (IntelliJ IDEA Classic (macOS)), `⌘ ⇧ 7` (macOS System Shortcuts), `Ctrl+F12` (XWin), `Ctrl+F12` (GNOME), `Ctrl+0` (KDE), `Ctrl+F12` (Emacs), `Ctrl+R` (Sublime Text), `⌘ R` (Sublime Text (macOS)), `Ctrl+F12` (NetBeans), `Alt+\` (Visual Studio), `⌥ \` (Visual Studio (macOS)), `Ctrl+F3` (Eclipse), `⌘ O` (Eclipse (macOS))  |
| Select in |  `Alt+F1` (Windows), `⌥ F1` (macOS), `⌥ F1` (IntelliJ IDEA Classic (macOS)), `⌃ Q` (macOS System Shortcuts), `Alt+F1` (XWin), `Alt+Shift+1` (GNOME), `Alt+Shift+1` (KDE), `Alt+F1` (Emacs), `Alt+F1` (Sublime Text), `⌥ F1` (Sublime Text (macOS)), `Ctrl+Shift+1` (NetBeans), `Alt+F1` (Visual Studio), `⌥ F1` (Visual Studio (macOS)), `Alt+F1` (Eclipse), `⌘ ⌥ W` (Eclipse (macOS))  |
| Navigate to declaration |  `Ctrl+B` (Windows), `⌘ B` (macOS), `⌘ B` (IntelliJ IDEA Classic (macOS)), `⌘ B` (macOS System Shortcuts), `Ctrl+B` (XWin), `Ctrl+B` (GNOME), `Ctrl+B` (KDE), `Ctrl+Alt+G` (Emacs), `F12` (Sublime Text), `F12` (Sublime Text (macOS)), `Ctrl+B` (NetBeans), `F12` (Visual Studio), `F12` (Visual Studio (macOS)), `F3` (Eclipse), `F3` (Eclipse (macOS))  |
| Navigate to type hierarchy |  `Ctrl+H` (Windows), `⌃ H` (macOS), `⌃ H` (IntelliJ IDEA Classic (macOS)), `⌃ ⌥ H` (macOS System Shortcuts), `Ctrl+H` (XWin), `Ctrl+H` (GNOME), `Ctrl+H` (KDE), `Ctrl+H` (Emacs), `Ctrl+H` (Sublime Text), `Ctrl+H` (Sublime Text (macOS)), `Alt+Shift+F12` (NetBeans), `Ctrl+E, H` (Visual Studio), `⌘ E, H` (Visual Studio (macOS)), `F4` (Eclipse), `F4` (Eclipse (macOS))  |

## Quick popups

Quick Popups are helpful for checking additional information related to the symbol at the caret. Below is a list of popups you should know if you want to be more productive:

| Action | Shortcut |
| --- | --- |
| Documentation |  `Ctrl+Q` (Windows), `F1` (macOS), `⌃ J` (IntelliJ IDEA Classic (macOS)), `⌘ I` (macOS System Shortcuts), `Ctrl+Q` (XWin), `Ctrl+Q` (GNOME), `Ctrl+Q` (KDE), `Ctrl+Q` (Emacs), `Ctrl+Q` (Sublime Text), `Ctrl+Q` (Sublime Text (macOS)), `Ctrl+Q` (NetBeans), `Ctrl+K, I` (Visual Studio), `⌘ K, I` (Visual Studio (macOS)), `Alt+Middle-Click` (Eclipse), `⌥ Middle-Click` (Eclipse (macOS))  |
| Quick definition |  `Ctrl+Shift+I` (Windows), `⌥ Space` (macOS), `⌘ ⇧ I` (IntelliJ IDEA Classic (macOS)), `⌘ Y` (macOS System Shortcuts), `Ctrl+Shift+I` (XWin), `Ctrl+Shift+I` (GNOME), `Ctrl+Shift+I` (KDE), `Ctrl+Shift+I` (Emacs), `Ctrl+Shift+I` (Sublime Text), `⌥ Space` (Sublime Text (macOS)), `Ctrl+Shift+I` (NetBeans), `Alt+F12` (Visual Studio), `⌥ Space` (Visual Studio (macOS)), `Ctrl+Shift+I` (Eclipse), `⌥ Space` (Eclipse (macOS))  |
| Show usages |  `Ctrl+Alt+F7` (Windows), `⌘ ⌥ F7` (macOS), `⌘ ⌥ F7` (IntelliJ IDEA Classic (macOS)), `⌃ ⌥ U` (macOS System Shortcuts), `Ctrl+Alt+7` (XWin), `Ctrl+Alt+7` (GNOME), `Ctrl+Alt+7` (KDE), `Ctrl+Alt+F7` (Emacs), `Shift+F12` (Sublime Text), `⇧ F12` (Sublime Text (macOS)), `Ctrl+Alt+F7` (NetBeans), `Alt+Shift+F12` (Visual Studio), `⌥ ⇧ F12` (Visual Studio (macOS)), `Ctrl+Alt+F7` (Eclipse), `⌘ ⌥ F7` (Eclipse (macOS))  |
| Show implementation |  `Ctrl+Alt+B` (Windows), `⌘ ⌥ B` (macOS), `⌘ ⌥ B` (IntelliJ IDEA Classic (macOS)), `⌘ ⌥ B` (macOS System Shortcuts), `Ctrl+Alt+B` (XWin), `Ctrl+Alt+B` (GNOME), `Ctrl+Alt+B` (KDE), `Ctrl+Alt+B` (Emacs), `Ctrl+Alt+B` (Sublime Text), `⌘ ⌥ B` (Sublime Text (macOS)), `Ctrl+Alt+B` (NetBeans), `Alt+End` (Visual Studio), `⌘ ⌥ Click` (Visual Studio (macOS)), `Ctrl+T` (Eclipse), `Ctrl+Alt+B` (Eclipse (macOS))  |

> **Tip:**
> Quick Popups are available for symbols in the editor; however, they are also available for items in any other list via the same shortcuts.

## Finding usages

Find Usages helps you quickly find all pieces of code referencing the symbol at the caret, no matter if the symbol is a class, method, field, parameter, or another statement. Just press `Alt+F7` (Windows), `⌥ F7` (macOS), `⌥ F7` (IntelliJ IDEA Classic (macOS)), `⌃ U` (macOS System Shortcuts), `Alt+F7` (XWin), `Alt+Shift+7` (GNOME), `Alt+Shift+7` (KDE), `Alt+F7` (Emacs), `Alt+F7` (Sublime Text), `⌥ F7` (Sublime Text (macOS)), `Alt+F7` (NetBeans), `Shift+F12` (Visual Studio), `⇧ F12` (Visual Studio (macOS)), `Ctrl+G` (Eclipse), `⌘ ⇧ G` (Eclipse (macOS)) and get a list of references grouped by usage type, module, and file.

If you want to set custom options for the Find Usages algorithm, press `Ctrl+Alt+Shift+F7` (Windows), `⌘ ⌥ ⇧ F7` (macOS), `⌘ ⌥ ⇧ F7` (IntelliJ IDEA Classic (macOS)), `⌃ ⌥ ⇧ U` (macOS System Shortcuts), `Ctrl+Alt+Shift+7` (XWin), `Ctrl+Alt+Shift+7` (GNOME), `Ctrl+Alt+Shift+7` (KDE), `Ctrl+Alt+Shift+F7` (Emacs), `Ctrl+Alt+Shift+F7` (Sublime Text), `⌘ ⌥ ⇧ F7` (Sublime Text (macOS)), `Ctrl+Alt+Shift+F7` (NetBeans), `Ctrl+Alt+Shift+F12` (Visual Studio), `⌘ ⌥ ⇧ F12` (Visual Studio (macOS)), `Ctrl+Alt+Shift+F7` (Eclipse), `⌘ ⌥ ⇧ F7` (Eclipse (macOS)), or click the first button on the right panel with search results.

If what you're looking for is plain text, use Find in Files by pressing `Ctrl+Shift+F` (Windows), `⌘ ⇧ F` (macOS), `⌃ ⇧ F` (IntelliJ IDEA Classic (macOS)), `⌘ ⇧ F` (macOS System Shortcuts), `Ctrl+Shift+F` (XWin), `Ctrl+Shift+F` (GNOME), `Ctrl+Shift+F` (KDE), `Ctrl+Shift+F` (Emacs), `Ctrl+Shift+F` (Sublime Text), `⌘ ⇧ F` (Sublime Text (macOS)), `Ctrl+Shift+F` (NetBeans), `Ctrl+Shift+F` (Visual Studio), `⌘ ⇧ F` (Visual Studio (macOS)), `Ctrl+H` (Eclipse), `⌃ H` (Eclipse (macOS)).

For more information, refer to [Search for usages](find-highlight-usages.html).

