GoLand 2024.3 Help

Source code navigation

You can quickly navigate through code in the editor using different actions and popups. For the detailed information on navigating between the editor and tool windows, check the editor basics.

To navigate through a source file structure, use the Structure tool window (View | Tool Windows | Structure). For more information about viewing source code hierarchy, refer to View source code hierarchy.

Navigate with the caret

  • To navigate backwards, press Ctrl+Alt+Left. To navigate forward, press Ctrl+Alt+Right.

  • To quickly move to the top of the editor, press Ctrl+Page Up. Alternatively, press Ctrl+Page Down to move the caret to the bottom of your editor.

  • To navigate to the last edited location, press Ctrl+Shift+Backspace.

  • To find the current caret location in the editor, press Ctrl+M. This action might be helpful if you do not want to scroll through a large file.

    However, you can press Up and Down arrow keys to achieve the same result.

  • To highlight a word at the caret you are trying to locate, select Edit | Find | Next Occurrence of the Word at Caret from the main menu. If you are using Windows, you can also press Ctrl+F3.

  • To see on what element the caret is currently positioned, press Alt+Q.

  • To move caret between matching code block braces, press Ctrl+Shift+M.

  • To navigate between code blocks, press Ctrl+[ or Ctrl+].

Move the caret

You can use different actions to move the caret through code. You can also configure where the caret should stop when moved by words and on line breaks.

  • To move the caret to the next word or the previous word, press Ctrl+Right or Ctrl+Left.

    By default, GoLand moves the caret to the end of the current word.

    When you move the caret to the previous word, the caret is placed at the beginning of the current word. You can configure the position of the caret when you use these actions.

    In the Settings dialog (Ctrl+Alt+S) , go to Editor | General. In the Caret Movement section, use the When moving by words and Upon line break options to configure the caret's behavior.

  • To move the caret forward to the next paragraph or backward to the previous one, press Ctrl+Shift+A and search for the Move Caret Forward a Paragraph or Move Caret Backward a Paragraph action.

    You can also select a text and then move the caret forward or backward to a paragraph. Press Ctrl+Shift+A and search for the Move Caret Forward a Paragraph with Selection or Move Caret Backward a Paragraph with Selection action.

    If you need, you can assign shortcuts to these actions. For more information, refer to Keyboard shortcuts.

Find recent locations

You can also check your recently viewed or changed code using the Recent Locations popup.

  • To open the Recent Locations popup, press Ctrl+Shift+E. The list starts with the latest visited location at the top and contains code snippets.

    Recent Locations popup
  • While in the popup, use the same shortcut or select the Show changed only checkbox to see only the locations with changed code.

  • To search for a code snippet, in the Recent Locations popup, start typing your search query. You can search by the code text, filename, or breadcrumbs.

  • To delete a location entry from the search results, press either Delete or Backspace.

    Keep in mind that the deleted location is also removed from the list of entries that you access with the Ctrl+Alt+Left shortcut.

  • Press Ctrl+Alt+Shift+Down/Ctrl+Alt+Shift+Up.

  • In the main menu, go to Navigate | Next / Previous Change.

  • Click a change marker, and then click the Previous Change button or the Next Change button.

See recent changes

You can use the Recent Changes list to see a list of files that were changed either locally or externally in your project. If necessary, you can revert those changes.

  1. In the main menu, go to View | Recent Changes Alt+Shift+C.

    the Recent Changes popup
  2. In the Recent Changes tab of the Local History tool window, select a change.

    The IDE shows you a list of files modified with this change in the panel below.

  3. Press Enter or double-click the file to open the diff viewer where you can check what was changed and revert those changes if necessary.

You can navigate to the initial declaration of a symbol and symbol's type from its usage.

Go to declaration and its type

  • Place the caret at the desired symbol and press Ctrl+B. Navigate to Declaration or Usages look for implementations in the project scope first. Search results display project elements before non-project elements.

    In go.work files, you can navigate to modules listed in the file. To navigate to a module, press Ctrl+B or press Ctrl and click the declaration.

    Go to Declaration
  • For a type declaration, press Ctrl+Shift+B.

  • If you click the reference in comments, you can navigate to related package-level declarations in the same package. Also, you can use the Navigate to Declaration and Usage action (Ctrl+B) for such references.

    Names of methods, functions, and structs in comments are highlighted.

    GoLand highlights references to exported symbols only. Words are resolved to package-level declarations in the same package. Two words separated with a dot are treated either as Type.Method or as package.SymbolName.

    GoLand highlights references only if the name is unique to reduce the number of false positives.

    Navigation: highlight references from comments to related package-level declarations

Go to implementation

You can keep track of class implementations and overriding methods using the gutter icons in the editor, or by pressing the appropriate shortcuts, or by clicking Inheritors inlay hints.

  • Click one of the the Implemented method icon/the Implementing method icon gutter icons located in the editor and select the desired ascendant or descendant class from the list.

    Gutter icons
  • To navigate to the interface or to all the types that implement this interface, press Ctrl+U.

    Starting from GoLand 2021.2, the Ctrl+U action navigates you to interfaces that are stored in the internal directory.

  • To navigate to the implementation, press Ctrl+Alt+B. Navigate to implementations look for implementations in the project scope first. Search results display project elements before non-project elements.

You can automatically locate a file in the Project tool window.

  1. If the file is opened in the editor, press Alt+F1 to open the Select In popup.

    Select in popup
  2. In the popup, select Project View and press Enter. GoLand locates your target in the Project tool window.

Open files with one click and quickly locate files in the Project tool window

You can use the Open Files with Single Click (previously called Autoscroll to Source) and Always Select Opened Files (previously called Autoscroll from Source) actions to locate your file in the Project tool window.

  1. In the Project tool window, right-click the Project toolbar and from the context menu, select Behavior.

  2. Enable Always Select Opened File. After that GoLand will track the file that is currently opened in the active editor tab and locate it in the Project tool window automatically.

  3. You can also select the Open Files with Single Click option. In this case, when you click a file in the Project view, GoLand will automatically open it in the editor.

  • To jump to the next or previous found issue in your code, press F2 or Shift+F2 respectively. Alternatively, go to Navigate | Next / Previous Highlighted Error in the main menu.

    GoLand places the caret immediately before the code issue.

  • Configure the way GoLand navigates between code issues: it can either jump between all code issues or skip minor issues and only navigate between detected errors. Right-click the code analysis marker in the scroll bar area and choose one of the available navigation modes from the context menu:

    • To have GoLand skip warnings, infos, and other minor issues, choose Go to high priority problems only.

    • To have GoLand jump between all detected code issues, choose Go to next problem.

Locate a code element with the Structure view popup

You can use the structure view popup to locate a code element in the file you are working on.

  1. To open the structure view popup, press Ctrl+F12.

  2. In the popup, locate an item you need. You can start typing a name of the element for GoLand to narrow down the search. Press Enter to return to the editor and the corresponding element.

    While in the popup, you can sort file members, see anonymous classes and inherited members.

Browse through methods

  • Press Alt+Down or Alt+Up.

  • To visually separate methods in code, in the Settings dialog (Ctrl+Alt+S) , go to Editor | General | Appearance and select the Show method separators option.

    Method Separators in Editor
  • To open the Structure tool window, press Alt+7.

Use the Lens mode

The lens mode lets you preview your code without actually scrolling to it. The mode is available in the editor by default when you hover over the scrollbar. It is especially useful when you hover over a warning or an error message.

Lens mode
  • To disable the lens mode, right-click the code analysis marker located on the right side of the editor and in the context menu clear the Show code lens on the scrollbar hover checkbox.

  • As an alternative, in the Settings dialog (Ctrl+Alt+S) , go to Editor | General | Appearance and clear the Show code lens on the scrollbar hover checkbox.

Breadcrumbs display the path from the code element where your caret is placed to the root element of the file. They help you track your location within a file's hierarchy.

Each part of the breadcrumb is clickable, allowing easy navigation to parent code elements. You can also use tooltips for additional information, which appear when you hover over a breadcrumb section.

Breadcrumbs are enabled by default for some programming languages. You can select the languages in settings.

  • To change the location of breadcrumbs, right-click a breadcrumb in the editor, go to Appearance | Breadcrumbs, and select a new location: at the top or at the bottom of the editor.

  • To edit the settings for breadcrumbs, enable or disable breadcrumbs for other languages, or change their appearance, press Ctrl+Alt+S to open settings and then select Editor | General | Breadcrumbs.

  • Clear the Show breadcrumbs option to hide breadcrumbs in the editor.

Use the Navigation bar as a handy tool to find your way across the project.

  1. Press Alt+Home to activate the Navigation bar.

  2. Use the arrow keys or the mouse pointer to locate the desired file.

  3. Double-click the selected file, or press Enter to open it in the editor.

    GoLand: using navigation bar to open files

Find a line or a column

  1. In the editor, press Ctrl+G.

  2. In the Go to Line/Column dialog, specify a line or column number, or both, separating them with : and click OK.

    Go to line/column dialog
  3. If you don't want to see the line numbers in the editor, in the Settings dialog (Ctrl+Alt+S) , go to Editor | General | Appearance and clear the Show line numbers checkbox.

Find a file path

  1. In the editor, press Ctrl+Alt+F12 or in the context menu, select Open in | Finder.

  2. In the Reveal in Finder popup, select a file or a directory to open in the path finder and press Enter.

    File path finder

Find recent files

You can search for the recent and recently edited files with the Recent Files popup.

  • To open the Recent Files popup with the list of recent files, press Ctrl+E.

  • To see only the recently edited files, press Ctrl+E again or select the Show changed only checkbox.

  • To search for items in the popup, use the Speed Search functionality. Just start typing a search query, and the Search for field appears. GoLand displays the results based on your search query, the list shrinks as you type.

Recent files
Last modified: 30 October 2024