Navigation
Go to Symbol and Go to Definition features
Navigate your Circom codebase efficiently with powerful navigation features.
Go to Symbol
Section titled “Go to Symbol”Quickly jump to any template or function in your project:
| Action | macOS | Windows/Linux |
|---|---|---|
| Go to Symbol | Cmd+O | Ctrl+Shift+N |
How to Use
Section titled “How to Use”- Press the keyboard shortcut
- Start typing the name of the template or function
- Select from the filtered results
- Press Enter to navigate
The search supports:
- Partial matching: Type
Multo findMultiplier - CamelCase matching: Type
MCto findMerkleChecker - All project files: Searches across your entire project
Go to Definition
Section titled “Go to Definition”Jump directly to where a symbol is defined:
| Action | macOS | Windows/Linux |
|---|---|---|
| Go to Definition | Cmd+Click | Ctrl+Click |
| Go to Definition (keyboard) | Cmd+B | Ctrl+B |
Supported Symbols
Section titled “Supported Symbols”You can navigate to definitions of:
- Templates: Click on a template name to jump to its definition
- Functions: Click on a function call to see its implementation
- Components: Click on a component usage to find where it’s instantiated
- Signals: Click on a signal reference to find its declaration
- Variables: Click on a variable to find where it’s declared
Example
Section titled “Example”template Calculator() { component add = Adder(); // Cmd+Click on "Adder" jumps to template add.a <== num1; // Cmd+Click on "a" jumps to signal declaration added <== add.sum; // Cmd+Click on "sum" jumps to output signal}Reference Resolution
Section titled “Reference Resolution”The plugin resolves references in this order:
- Local scope: Signals, variables, and components within the current template/function
- Current file: Templates and functions defined in the same file
- Project scope: Templates and functions from other files in the project
Quick Documentation
Section titled “Quick Documentation”While not full documentation lookup, you can see the structure of a symbol by:
- Positioning your cursor on a symbol
- Using View → Quick Definition (
Cmd+Y/Ctrl+Shift+I)
This shows a preview of the symbol’s definition without leaving your current location.