4 ms·
> I can get 10000 ft view of my entire code in the mini map without having to touch my keyboard or mouse. This is exactly what I'm trying to understand. Why? W
by wyuenho 5y ago
> I can get 10000 ft view of my entire code in the mini map without having to touch my keyboard or mouse.
This is exactly what I'm trying to understand. Why? What *actionable* information does it give you that you can't get from a red bar next to the scroll bar or the error total on the status bar?
> I don't want to touch the mouse or keyboard to know where the problem is. Or which part of the code I want to instantly navigate to.
Why do you need to know where? Just jump to the first one from the keyboard. When you are done fixing one, jump to the next one from the keyboard until all of them are fixed. It's not like you can compile or commit before all of them are fixed anyway, and it's not like you can jump to the errors just by looking at the minimap.
> You literally have a file browser in VS Code in the sidebar. Apart from that you have a Command Palette that you can invoke to navigate between pages. Why would you need breadcrumb to aid navigation?
Because that's the only mechanism that will take you to exactly where you want in the syntax tree hierarchy within the same file. It's not great as it only takes you up and down one path, but it's better than having to click on a screenful in the minimap and then having to scan the entire screenful to find the thing you are searching for because all you have is the shape, you aren't even sure what exactly it is.
> I want to see it at a glance without having to touch my keyboard or mouse.
Why? Your compiler or linter or precommit script won't let you proceed without having them fixed anyway. What does it matter where in relation to everything else a blurry red line is in the file? If there's any type checking in your tooling, typically one error is going to lead to dozens and often half of the file will be red. The most useful information is the root cause of a massive error, how does a minimap help you besides telling you you broke half of your code in a file?
- KrishnaShripad 5y agoTo put it simply you have to use it to know it. Give it a couple of weeks. I have been programming for solid 14 years of my life now. Even before VS Code came out. I can't work with editors that don't have a minimap anymore. > Because that's the only mechanism that will take you to exactly where you want in the syntax tree hierarchy within the same file That's not true. The quickest way is to Cmd + R. It opens the Command Palette with the list of all symbols. You can either fuzzy search or navigate to the symbol. You also have it in the Sidebar. Check the Outline tab you'll get the entire list of symbols used within the file. I don't use the Sidebar Outline anyways because I have the Command Palette for it to jump to symbol. I find using Command Palette for most editor based operations much faster. That includes file navigation, going to a symbol (which you call syntax tree hierarchy) and other stuff (like running builds, running tests etc). > Why do you need to know where? Just jump to the first one from the keyboard Because I have a rough idea of what parts of my code is where. When I encounter an error, I simply know it is in that particular region of the mini-map and just click that region. It is so much faster than any keybinding that you can think of. Also, if the error is in multiple places but I know the source for the error is not at the top of the file but at the bottom of the file, I can go straight to that region. Not all errors have to start from the first error that is encountered. This is not something that can be explained. This is acquired experience that you get only after you give the feature a shot for sometime. > besides telling you you broke half of your code in a file? If that is your consistent experience then you have far bigger problems than the editor. I would look at why your code is so tightly coupled that it leads to half the file showing you red lines. That is not normal. At least in my experience I haven't had to deal with squiggly lines that span half the file. At most 2-3 lines. Unless I am refactoring code (which is not considered fixing in technical sense). > Your compiler or linter or precommit script won't let you proceed without having them fixed anyway I have a linter running in realtime in VS Code which auto-formats my file and points to any problems in realtime. The linter precommit script is only for extra layer of security and for those devs who have their own custom configurations which don't allow for realtime linter. I hope you realize that every developer has his/her own unique setup to make life easier for themselves.
- wyuenho 5y agoThat outline is hidden at the lower left in a small box collapsed by default. It's as if VS Code doesn't want you to look at it. In the case of breadcrumbs, clicking on it with the mouse is probably faster than searching. I've been programming professionally since 2004, have tried the minimap on various editors since Sublime invented it, never found it useful. As to tightly coupled code, well, ha, I don't know of a compiler/linter that won't spew 100s of errors because of one syntax error in a commonly used type. I realize it's a unique workflow, that's why I want to know more why it's prioritized in every editor these days as I don't think this uniqueness qualifies it to ever become mainstream, much less prioritized.
- KrishnaShripad 5y ago> That outline is hidden at the lower left in a small box collapsed by default. It's as if VS Code doesn't want you to look at it. I agree with you here that you have to go one extra step to open the Outline panel in the left. I would rather the Outline panel be in the right. However, I don't use symbols that often. My workflow is a bit different. So I don't particularly miss this feature. When I really need to look up by symbol, I just use Cmd + R and just fuzzy search for it. > In the case of breadcrumbs, clicking on it with the mouse is probably faster than searching. Again, this is personal preference. I find Command Palette faster. You find Breadcrumbs faster. But I guess since you already use Emacs, it is fastest with Outline panel on the right. > I realize it's a unique workflow, that's why I want to know more why it's prioritized in every editor these days as I don't think this uniqueness qualifies it to ever become mainstream, much less prioritized. Maybe Telemetry data shows that the feature is used a lot. I don't know. Even if it was by default turned off, I would turn it back on because I just feel comfortable having it on the side. I use it subconsciously so whatever I gave you were mostly from what I could remember. It is only when it is off (or when I am using another editor), that I subconsciously try to reach for the mini-map and find it jarring when it is not there. I gave you few examples. But I am sure there are few more that I am missing out on.
- wyuenho 5y agoIt doesn't explain why every new editor without telemetry data prioritize a minimap tho, surely it can't be that popular since there are plenty of established UI patterns more suited to the individual use cases you've described. I mean, I can see why it got popular when Sublime introduced it. It was a time when most webdevs were editing in massive HTML templates, SASS/CSS and ES5, where the traditional outline view would return too much noise or missing important targets. But we've quickly moved past that era, it doesn't seem to make sense anymore for new players to prioritize it now.