New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Minimap: Render more than characters inside the minimap #20934

Open
alexandrudima opened this Issue Feb 20, 2017 · 14 comments

Comments

Projects
None yet
@alexandrudima
Member

alexandrudima commented Feb 20, 2017

Some ideas:

  • editor cursor
  • editor selection
  • change annotations (i.e. git status)
  • find matches

Here is a good mock-up from @jfcartier here:

default

And one from @octref here:

slice

@octref

This comment has been minimized.

Member

octref commented Feb 20, 2017

Git status could also be helpful.

@CoenraadS

This comment has been minimized.

Contributor

CoenraadS commented Feb 20, 2017

Visual Studio also displays function scope (bubbles) & nesting (lines), which I use a lot.

image

Since the minimap is character based I'm not sure how this would be implemented though. Perhaps just alternating background colors.

@Tekbr

This comment has been minimized.

Tekbr commented Feb 21, 2017

-- Sorry for the English, I used Google Translator --

@alexandrudima Sorry if it's repetitive. Would any of the options below be related to the options it showed above? If not, these options could enter as a feature request or even as an extension (sorry for the English):

1- Find and replace
2- Highlight selected
3- Cursor line
4- Selection
5- git-diff - I think it's your fourth choice, right? 😄
6- Bookmarks - I do not know if extension that exists is able to use the resources for the minimap. #54

@alefragnani

This comment has been minimized.

alefragnani commented Feb 21, 2017

Based on @Tekbr request on my Bookmarks extension, I think the decorator API should be expanded to support minimap. Something similar to OverviewRulerLane and overviewRulerColor in DecorationRenderOptions. Doing so, any extension that supports the decorator API would work automatically.

By the way, after turning on Minimap I keep thinking if the Ruler is still necessary. I would say no if the Minimap supported mouse scroll and the decorator API was merged 😄

@MartinSGill

This comment has been minimized.

MartinSGill commented Feb 21, 2017

I agree with @alefragnani that I think the ruler is no longer required once many/most of the suggestions in this issue are implemented.

My feeling is that the ruler is essentially just a minimalist version of the mini-map and that both are actually the same thing, just displaying differing amounts of information.

@druellan

This comment has been minimized.

druellan commented Mar 2, 2017

@MartinSGill those are my thought exactly. My feeling is that the minimap should integrate out-of-the-box everything VSCode provides on its core, including highlights, git integration, etc. And at that point its going to be a more verbose version of the enhanced scrollbar, so, you can disable that if you want.

@grizzletech

This comment has been minimized.

grizzletech commented Mar 3, 2017

At a minimum it would be nice to get all the features that currently exist in the skinny "git" sidebar integrated into the minimap, and to add a setting to hide the skinny "git" sidebar if you use the minimap. Right now its kind of like there are 2 mini-maps. The original one that is functional, and the new minimap that only shows a high-level view of your code.
screen shot 2017-03-03 at 7 31 48 am

@rmunn rmunn referenced this issue Mar 9, 2017

Open

Enhancement: Minimap position highlight #21404

1 of 3 tasks complete
@mika76

This comment has been minimized.

mika76 commented Mar 9, 2017

I actually think it would be cool those show both next to each other (as they are now) but just sync their scrolls (currently the minimap shows the whole viewport while the scroll bard has a tiny little "grip") and they do not seem to scroll at the same rate (scrollbar and it's decorators show the whole file in the whole length while the minimap scrolls if a file is long enough)

I like the way the Visual Studio minimap works where the decorators are separate from the code - since it's much easier to spot a coloured block on the side (for example when doing a find) then it is to see a highlight in already-syntax-highlighted code)

But I do not see why we have to copy everything Atom or Sublime does...

@alexandrudima

This comment has been minimized.

Member

alexandrudima commented Mar 9, 2017

@mika76 This has already been proposed in #21849

I summarised the discussions regarding minimap geometry we had within the team in #21849 (comment)

@mika76

This comment has been minimized.

mika76 commented Mar 9, 2017

@alexandrudima Ah I see - thanks for the notification. Could I propose something then? If there are decorators for the code in the minimap (find for example) could the minimap go into grayscale more or something? I find in Atom and Sublime, when I want to quickly see a highlight in the minimap it always get's lost in the syntax coloring. This is the reason I like the points being on the side of the actual code in VS2015...

@bjunix

This comment has been minimized.

bjunix commented May 4, 2017

Would also like to see linter errors/warnings:

screen shot 2017-05-04 at 10 42 32

By the way, great job on the minimap. Love this feature. Thanks for the work you put into it!

@ak-hpc

This comment has been minimized.

ak-hpc commented Jul 11, 2017

To be useful, minimap has to always show current cursor line and current viewport. Looks like current viewport showing is already implemented in insiders channel, but cursor line is not.

You can use Visual Studio minimap as a reference:
default
(VS 2013)

It replaces plain slider (there is no other slider when minimap is enabled), and always contains whole document without inner scrolling. It also shows errors/warnings/find results/etc.

@ghiscoding ghiscoding referenced this issue Aug 9, 2017

Closed

Iteration Plan for August 2017 #32043

45 of 53 tasks complete

@alexandrudima alexandrudima removed their assignment Nov 24, 2017

@Kroc

This comment has been minimized.

Kroc commented Jun 2, 2018

I only have a 1366x768 screen on my laptop so horizontal space is tight and I'd like to see the ability to combine / replace the scrollbar with the minimap since they both effectively solve the same navigation problem.

@bcbane

This comment has been minimized.

bcbane commented Jul 27, 2018

Oh please add this in! I would like to second adding in Highlight selected on the minimap and cursor line

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