Comments (5)
Are they clicking while holding Ctrl? If so, this is by design. Ctrl-click navigates you to the thing under the caret.
I believe there is a setting for this in vs if the user doesn't like that behavior.
I believe it's just hovering, @majocha may confirm/deny it.
from fsharp.
Yes, it's just hover.
More interestingly, if you enable "View > Code Definition Window", the unwanted navigation can happen just with typing.
For example:
Type Console.Out
. Move the cursor back with left-arrow, and bam, navigation to metadata.
I suspect the problem is that our code path for external symbols ends up calling NavigateToExternalDeclarationAsync
instead of just returning a FSharpNavigableItem
array.
VS calls IFSharpGoToDefinitionService.FindDefinitionsAsync
-> the symbol is external -> we end up here:
from fsharp.
Just hovering over external symbol, (not just operators) while holding Ctrl causes VS (Roslyn?) to call IFSharpGoToDefinitionService.FindDefinitionsAsync
.
Which in turn calls NavigateToExternalDeclarationAsync
:
fsharp/vsintegration/src/FSharp.Editor/Navigation/GoToDefinition.fs
Lines 775 to 789 in 6420e36
Somehow this doesn't happen that often with vsix built from main, but I can repro this in debug mode each time.
from fsharp.
Yeah, that's definitely either VS or Roslyn. @CyrusNajmabadi is it something you can control?
from fsharp.
Are they clicking while holding Ctrl? If so, this is by design. Ctrl-click navigates you to the thing under the caret.
I believe there is a setting for this in vs if the user doesn't like that behavior.
from fsharp.
Related Issues (20)
- Split diagnostics into different diagnostic kinds for better user experience
- .fsproj **should not** need to specify individual Compile .fs files HOT 4
- Investigate: Special case Lock type in the lock function HOT 4
- `ContinuousIntegrationBuild` breaks `__SOURCE_DIRECTORY__` HOT 3
- [Automated] PRs inserted in VS build main-35006.68
- [Automated] PRs inserted in VS build main-35006.55
- [Automated] PRs inserted in VS build feature.debugger.main-35006.210
- `FSharpExpr` documentation references nonexistent module
- Can't Use Library From F# (FS1109 System.Drawing) HOT 4
- [Automated] PRs inserted in VS build 20240610.19
- IsUnionCaseTester throwing an error
- Tracking issue - improve FSI debugging
- Visual Studio selects the highest version of the sdk installed on the machine when executing scripts in FSI HOT 5
- We should disable the --multiemit[+/-] switch in fsi. HOT 1
- [Automated] PRs inserted in VS build main-35014.15
- Clean - build -pack fails
- [Automated] PRs inserted in VS build feature.debugger.main-35014.68
- F# discriminated unions simple use raises AOT and trimming warnings on publish. HOT 2
- [Automated] PRs inserted in VS build main-35018.33
- Fix or remove legacy VS tests
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fsharp.