Interferes with default functionality of Ctrl+click, which highlights the whole word when clicked, making precision less important and saving me ~200-300 ms when I want to highlight a whole word.
While reaching for F12 wastes that same ~200-300 ms, it's far less likely (because it's explicit) to derail my current workflow than having to recover from accidentally navigating when I meant to be copying.
v2.5. ignores Ctrl+Shift+click because it has other bindings, but would propose that user can define key+click combo instead (I don't use default Ctrl+Shift functionality often, so for my workflow, Ctrl+Shift+click for F12 functionality might be useful).
A fantastic extension I've been using since VSS 2010 and have just installed VSS 2013.
In common with @a5Digital, I too would like a way of navigating 'Peek Definition' but wonder whether this functionality is exposed by the API. There is no mention of 'peek' in the docs for VSConstants.VSStd97CmdID (http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.vsconstants.vsstd97cmdid.aspx). So it doesn't seem possible - or am I missing something?
It wouldn't be in the "97" set, since that was for VS 97, so waaaay too old :) Check the values in the vsstd12cmdid section, which has peek definition + peek navigate (http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.vsconstants.vsstd12cmdid.aspx).
For me it's the best plugin ever for visual studio. It's the fastest way of navigating. Just one suggestion: I think it would be nice if Ctrl+RightClick on a keyword triggered the search for references of a function.
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.
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!
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"> <Edition>Pro</Edition> </VisualStudio> 4. Save and Zip all files again 5. Rename the .zip to .vsix and install it
I think this would be a very userful feature (at least for me): go to definition from XML comments like those:
/// A loader, that is responsible for retrieving XYZ from the database.
/// E.g: <see cref="MyLoaderClass"/>.
Sometimes I do want to promote to document rather than just peeking definition.
Please refer and reply to this discussion:
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.
I've had a problem for ages while working on a legacy site that was built in VB.NET and we've added C# projects to it.
The problem seems to be that Go To Definition doesn't work across the projects.
I even tried setting up a test solution to see if the problem existed on a brand new one and it still did.
I've tried all the solutions I've found on the net around using Project References and not File ones but nothing seems to work.
Well, one thing works. ReSharper. Unfortunately, ReSharper is quite overkill just to get Go To Definition working properly...
Is there any chance your extension could fix this bug and enable the Go To Definition (And Find Usages if possible :P) across projects?
I'm not comfortable in making this change myself. Given your response to my review comments indicating that it wouldn't be too hard to implement peek definition and find all references with a non-configurable key combination, would you consider?
CTRL + Left Click == goto def
CTRL + Middle Click == peek definition
CTRL + Right Click == find all references
what do you think?
...well now that MS's PPT 2013 extension is out, which can do a peek definition with the ctrl-click, I guess this request (and extension) is no longer needed...
unless this one provides the ability to do both (peek and goto def) via different mouse buttons / key combo.
without this plug-in, when I click on a word, hold [Ctrl] and [Shift], and click on another word, it selects the everything between both clicks including the whole words.
however when I have this plug-in installed it tries to jump to the word I click on even if it isn't a hyperlinked one.
it would be nice if you ignored jumping if, other keys were pressed, specifically in this case the [Shift] key.
Hi, the functionality you're describing doesn't require the use of the Ctrl key. Click once in the file, then Shift+Click to where you want the selection and it should select everything in-between. Ctrl is not needed.