Documentation / The IDE
Navigation
Back and forward history, recent files and locations, bookmarks, file structure, Search everywhere, usages and hierarchies.
Yuli remembers where you've been and lets you jump to any file, symbol, tool or action from the keyboard. Mod is Ctrl on Windows and Linux, and ⌘ on macOS.
The essentials
Back and forward
| Action | Shortcut |
|---|---|
| Back | Alt+← |
| Forward | Alt+→ |
- There is a global history and one per tab, kept separately for each project.
- A location is recorded only when you switch files or move at least 8 lines. Typing doesn't count.
- It keeps up to 200 locations in the global history and 100 per tab.
Recent
| Action | Shortcut |
|---|---|
| Recent files | Ctrl+E |
| Recent locations | Ctrl+Shift+E |
Recent locations keep up to 60 entries per project. Type to filter the list.
Bookmarks
Bookmarks are numbered 1 to 9 and saved per project (up to 200).
| Action | Shortcut |
|---|---|
| Toggle bookmark | F11 |
| Assign numbered bookmark | Ctrl+F11, then a number from 1 to 9 |
| Go to bookmark N | Ctrl+1 … Ctrl+9 |
If the number has no bookmark, Yuli tells you: “No bookmark N”.
File structure
Ctrl+Shift+O (Go to symbol in file) opens the File structure: the symbols of the current file, in order of appearance or alphabetical order, with a Filter symbols… field.
Search everywhere
Press Shift twice. This shortcut is fixed and can't be rebound. Search for a file, a symbol, a tool or an action. A prefix narrows the search:
| Filter | Prefix |
|---|---|
| All | — |
| Tools | # |
| Actions | > |
| Files | — |
| Symbols | @ |
| Help and guides | ? |
To search only IDE actions there is also Find action… (Ctrl+Shift+A).
There is no separate “go to class” or “go to file” command: use Search symbol (Ctrl+T) or the Files and Symbols filters of Search everywhere.
More navigation shortcuts
| Action | Shortcut |
|---|---|
| Search symbol (class, method…) | Ctrl+T |
| Go to definition | Ctrl+B |
| Go to implementation | Ctrl+Alt+B |
| Go to line | Ctrl+G |
| Select the active file in the tree | Alt+F1 |
| Next / previous method | Alt+↓ / Alt+↑ |
| Next / previous error | F2 / Shift+F2 |
| Next / previous Git change | Ctrl+Alt+Shift+↓ / Ctrl+Alt+Shift+↑ |
| Find and replace in files | Ctrl+Shift+S |
All of them can be rebound in Keyboard shortcuts.
Find usages
Alt+F7 (or Shift+F12) finds the usages of the symbol under the cursor.
- Results arrive as the engine finds them: “Receiving usages… n of total”.
- If the engine doesn't finish in time, the list is marked as a Partial list.
- Scope: Project, Open, This file or External libraries.
- Filters: production, test or all; read or write; show imports; show generated code; preview.
Hierarchies
| View | Shortcut | Directions |
|---|---|---|
| Call hierarchy | Ctrl+Alt+H |
Callers / Callees |
| Type hierarchy | Ctrl+H |
Supertypes / Subtypes |
Each node loads when you expand it. If you expand another node or close the panel, Yuli cancels the previous request in the engine: there's no need for a cancel button.
While indexing
While Yuli indexes the project, the bar shows “Indexing the project…” and you can keep editing. Navigation already answers: definitions are found by name and usages by the files that contain the word. Those results are marked as partial and are completed when the index finishes.
Every navigation request has a one-second deadline, plus a small margin. If the engine doesn't answer in time, you'll see “The engine did not answer in time” and can try again.
Libraries and the JDK
When you jump into a JDK or library class, Yuli opens its source code (the sources jar), the decompiled code or a javap outline, read-only.
Spring
The Spring: endpoints, beans, and properties command opens the Spring tab of the bottom panel with the project's beans, profiles and endpoints. It has no default shortcut; find it with Ctrl+Shift+A.
See also Code intelligence and Fullstack map.