Skip to content

Instantly share code, notes, and snippets.

@RobertKielty
Created September 19, 2026 12:28
Show Gist options
  • Select an option

  • Save RobertKielty/85ac26b575ec64073d493733f9985144 to your computer and use it in GitHub Desktop.

Select an option

Save RobertKielty/85ac26b575ec64073d493733f9985144 to your computer and use it in GitHub Desktop.
Doom Emacs Go navigation shortcuts

Doom Emacs Go navigation shortcuts

These shortcuts match my Doom config with Evil, :lang (go +lsp), :tools lookup, :tools lsp, and Vertico. Use them in Evil normal mode. SPC is Doom's leader key.

Follow code

Action Shortcut
Jump to definition g d or SPC c d
Find references (xrefs) g D or SPC c D
Find implementations of an interface or method g I or SPC c i
Find a type definition SPC c t
Read documentation for the symbol at point K or SPC c k
Jump to a symbol in the current Go file g O or SPC s i
Find a symbol across the LSP workspace SPC c j
Go back after a jump C-o
Go forward again C-i
Move to the next or previous method ] m / [ m
Move to the next or previous error ] e / [ e

Search and move around the project

Action Shortcut
Search text throughout the project SPC / or SPC s p
Search the project for the symbol under the cursor SPC *
Find a file in the project SPC SPC or SPC p f
Search the current buffer SPC s b
Switch to another open buffer SPC ,
Rename a symbol across the workspace SPC c r
See available fixes or refactorings at point SPC c a
List diagnostics SPC c x

A useful reading loop

g d → inspect the definition → C-o → g D → choose a caller → C-o.

g I is useful when you want to see which concrete Go types implement an interface or method. g D shows references instead.

To check a binding in the current buffer, press SPC h k, then the shortcut. SPC c l opens the LSP command map.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment