Go To Definition


Make ctrl+click perform a "Go To Definition" on the identifier under the cursor. Also, when the ctrl key is held down, highlight identifiers that look like they have definitions to navigate to.

(72) Review
Visual Studio
2013, 2012, 2010
Download (141,189)
E-mail Twitter del.icio.us Digg Facebook
Add to favorites
Reviews (72)
Q and A (36)
Sign in to write a review
Sort by:

by denis_stankovski | November 21 2013

Thank you so much!

by a5Digital | November 13 2013

I agree with most of these reviews - this extension is a must. However I there is so much more potential here which would leave me baffled if the author doesn't explore the possibility of augmenting this:

a) allow for another key combo + left click perform a peek definition
b) allow for another key combo + left click perform a find all references

If these are exposed via the API (and I believe they are), adding these features should be fairly trivial.

Noah Richards November 14 2013
| Edit |

Sending a different command would be pretty easy to add, yup. If you want it to be configurable, that's more difficult, but just hardcoding combinations wouldn't be bad.

If you're curious about implementing it yourself, the source is here: https://github.com/noahric/gotodef. The actual command logic is in DispatchGoToDef in GoToDefMouseHandler.cs, so you could probably modify that function (or add new functions) for peek or find all references. Since the extension is still built to be compatible with VS2010, you'd want to hardcode the cmdset/cmdid for peek definition and do a version check first, though.

If you have any questions, let me know on the Q&A!

by Daniel Joos | October 21 2013

Works with VS 2013. It just requires some manual work:
1. Download the .vsix file
2. Unzip it (e.g. using 7zip)
3. Open the vsixmanifest file and add the following block to line 22
<VisualStudio Version="12.0">
4. Save and Zip all files again
5. Rename the .zip to .vsix and install it

Noah Richards November 10 2013
| Edit |

2.5 should now support VS2013. Let me know if you run into any issues, thanks!

by maxima | October 21 2013

+1 VS2013
I use this from day one and is most helpful tool ever... But I have a request (I am amazed that nobody made it yet).

Could you please add Ctrl-Shift-Click to invoke VS Find All References command.

That will make your tool best for ever!! :)

Noah Richards November 10 2013
| Edit |

2.5 should now support VS2013. Ctrl-shift-click doesn't do find all, but it is now ignored (per another user's request).

by Jan Mazur | October 19 2013

+1 for the VS2013 support

Noah Richards November 10 2013
| Edit |

2.5 should now support VS2013. Let me know if you run into any issues, thanks!

by Kurt Dowswell | October 18 2013

Please add VS 2013 support! Love this extension. Use it countless times per day :)

Noah Richards November 10 2013
| Edit |

2.5 should now support VS2013. Let me know if you run into any issues, thanks!

by f00nth | October 04 2013

by Gameme | September 23 2013

Its awesome to get a navigation style similar to source insight. I love it.

by Stefanos Anastasiou | August 24 2013

This plugin is using a hack, which makes it unusable with DSLs.

The plugin, uses the following export type:


And in addition it tries to highlight and subsequently find symbol definitions, for every classification span which happens to have the following characters in them

if ((name.Contains("identifier") || name.Contains("user types")) &&
updated = true;
return true;

i.e. "identifier", "user types"

I know of no language, which doesn't have an "identifier". So it is very probable that any DSL will not work with the plugin.

The funny thing is, that the plugin somehow managed to creep into power productivity tools 2012, and since everyone uses those, they also use the plugin.

We had to change our DSL in order to continue using the plugin..

The plugin should only support only languages which do support this feature natively, than trying to invoke "find symbol definitions" for all languages which happen to export an "identifier" token.

Noah Richards August 24 2013
| Edit |

Sadly, there wasn't a non-hacky way to implement the extension, and there's no way to determine which languages "support this feature natively". Since Go To Definition wasn't designed as a queryable command, the extension had to use some broad guessing at what has definitions, and it actually under guesses for certain scenarios (I remember one or two in VB, at least).

I'd be happy to at least modify this standalone version to avoid loading for documents that use your DSL language type and you could file a Connect bug to get it integrated back into the PPT extension . Fee free to either add a Q&A comment here or a github bug (https://github.com/noahric/gotodef/issues) with the details, or make the modifications yourself and send me a pull request on github.

by Code Buddha | August 07 2013

This made my day. You're awesome. Thanks!

by uonun | August 04 2013

by Petr Škaloud | May 15 2013

Exactly what I need :) Thanks a lot, it is great job.

by lioncall | December 22 2012

Great...thank you.

Having the option to open in Preview Tab would be wonderful!

by IrvingDoe | December 01 2012

Can't live without it!

by Paulius Žaliaduonis | November 09 2012


by Shimmy Weitzhandler | October 31 2012

Great tool very useful!

I have another good suggestion:
When in debug, Ctrl + Click (or Ctrl + Right Click) should lead to Quick Watch.

Thanks Noah!

by Roberto Yglesias - Buildingi | October 30 2012

This should be a default functionality on VS by now...

Thanks for the contribution!

by tbomb80 | October 18 2012

Keep up the great work!

by Urbanion | September 21 2012

Should be as default feature.

by Muckrucker | September 18 2012

21 - 40 of 72 Items   
Sign in to start a discussion

  • VS 2015 support?
    4 Posts | Last post August 02, 2015
    • Do you have plans to support VS2015?
    • I've modified current VSIX package (just added VS2015 support).
      You can download Go To Definition for Visual Studio 2015 here
      Download, Unzip, Run GoToDefVS2015.vsix, restart Visual Studio and enjoy it.
    • Thanks Oleg. Your version works fine in VS2015 :)
    • thank you, love this tool. just installed it for 2015
  • VS 2015 support?
    1 Posts | Last post July 23, 2015
  • Extension not working in js file editor
    1 Posts | Last post May 20, 2015
    • how to make this extension works in JS file editor?
  • Go To "cref" Definition
    1 Posts | Last post April 27, 2015
    • I think this would be a very userful feature (at least for me): go to definition from XML comments like those:
         /// <summary>
         ///    A loader, that is responsible for retrieving XYZ from the database.
         ///       E.g: <see cref="MyLoaderClass"/>.
         /// </summary>
  • Go To Derive Definition
    2 Posts | Last post March 05, 2015
    • Will this extension allow me to go to the 'derived class'? for example, my code calls an interface method, can I peek/go-to-definition of the class which implemented the interface?
    • +1 for this feature.
  • Please change to Alt+Click in VS-2013
    2 Posts | Last post October 08, 2014
    • Sometimes I do want to promote to document rather than just peeking definition.
      Please refer and reply to this discussion:
    • This extension was never updated, so I think you want to give that feedback to the VS team. Sorry!
  • Go to #region
    1 Posts | Last post August 25, 2014
    • For the next version, it is possible to implement the Ctrl + click on #regions to go to his #endregion and vice versa?
  • ctrl+click for "go to", ctrl+shift+click for "open peek window"
    1 Posts | Last post June 22, 2014
    • hi!
      is it possible that you add ctrl+shit+click to open peek window at location? (alt+f12)
  • Make the addin work with other windows like Output
    2 Posts | Last post June 02, 2014
    • I used to use the "Go to definition" feature of pre-2012 versions of Visual Studio to navigate identifiers that came from build errors (which happens excessively often when something goes wrong while comipiling templates).
      It is counter productive to have to copy/paste identifiers from the build output to a code window that does not deserve polluting, only to then use the addin.
      Would it be possible to make this addin work in the context of any text window, like the build output?
    • It may be possible, but definitely not straightforward. The extension itself doesn't actually do the "Go to definition" logic, it just basically triggers a press of F12 (the GoToDefinition command). If F12 does work in the output window, then it's just a matter of getting the extension there and figuring out what to underline on ctrl+mouseover.
  • Go To File
    1 Posts | Last post May 13, 2014
    • It would be nice if it did open includes (the equivalent of Ctrl+Shift+G).
      I also second that Ctrl+middle click should open peek
1 - 10 of 36 Items