Fix the Font & Colors dialog
please fix this dialog. it hasn't changed for years, it desparately needs some attention.
consider this use case:
- i'm editing some code and part of it is red. i want to change it to blue.
- i open the fonts & colors dialog
- i scroll through the HUGE, completely disorganized 'display items' list
- i have to guess which of those items applies to the red text I want to change. sometimes it's obvious, most of the time it's not...
- usually, i have to select each item in that list, one-by-one, looking for one that's the right color
- in order to see if it's the correct item, i have to change the color of the item, dismiss the dialog (there's no 'Apply' button)
- if that wasn't the correct item, then I have to re-open the dialog, return to the incorrect item, change it's color back to what it was before, then continue on looking for the next red item.
how about this:
- organize the 'display items' list somehow
- make the dialog expandable (2011, anyone?), or at least make the display items listbox taller (do you really need all that space for the font & size controls?)
- allow the user to filter the display items by:
- items usable by the file in the active editor
- items in use in the active editor
- items in use in the active editor's selection
- add right-click menu to open dialog with filter applied based on current selection
then I could just select the red text, right-click -> 'edit colors' and be right there...
Since posting my last comment, it occurs to me that there are many colorings that are done only when there is no cursor on that piece of text, so, while my original suggestion (and similar to what others have mentioned) would work most of the time, it cannot work all the time. For inactive-only items, we would to do something else like...
1) mark a section as something we are interested in, then record all the highlights that happen to that section over a given period of time
2) put the editor in a state that we are interested in and then issue a command to "freeze" colors. Once colorings are set, we can THEN select the piece are interested in.
... or something similar
I would like to select some text or place my cursor somewhere in the editor. Then, when I go to Options -> Environment -> Fonts and Colors, I would like to see a new check box that allows me to show ONLY the things that are active within my selection / under my cursor. I don't care if "Plain Text", "Selected Text", and/or "Inactive Selected Text" show up in that list or not.
Project Rider from JetBrains is a good example of how it should have been done.
Paul M commented
Can't it just have a small text editor in the window that shows the colours as you change them for the selected language? And click on the item in the previous window to change the colour or something? I change random things trying to get the colours that I want until it works :(
Nathaniel Gates commented
What would be cool, is just to right-click on the item in question and be able to open the font & color dialog with that option pre-selected.
Chris Pearson commented
This dialog is a complete nightmare. I recently started using XCode which has a massive 20 colour options which was not only easier to manage but far more obvious what's changing what.
If I want strings in say red in C# I would suggest I also want red strings in VB, SQL, XML, etc. Most options could be culled or combined.
Craig B commented
No arguments with anything said here.
The TOAD editor screen for changing fonts and colors is ideal:
1) The window can expand to the size of the screen.
2) They provide a window which can contain a block of code that changes as you change the colors (fonts, etc). You can paste your own code into this window to you can make your changes and see it in context of code you write.
In Vs.Net, I hate having to make a change, CLOSE the dialog window for the change to take effect to see if I changed the right thing or not. At least put an Apply button on there or something.
Filip Balas commented
Why not have something like a "color picker" that you find in graphics applications?
So workflow would be something like this:
1) Go to fonts and colors
2) You can have the list if you know what you are looking for (PLEASE make it expandable and searchable)
3) Have a button "Find style", which turns your cursor into a precise picker
4) You put your mouse over the visual element you are interested in ( there could be a magnifier to help disambiguate between underlines, text, background and other visual markups)
5) After selecting the visual item, the fonts interface would show you a stack of styles with the one at the top being the actively applied style and the ones underneath being styles that were over-ridden.
This would allow you to quickly identify and modify all the styles visible on a screen and make sure that over-ridden styles also make sense (resharper tends to over-ride or add styles to existing defaults). What we have now is madness.
Michael Spackman commented
I agree with all comments and suggestions here. This dialog along with the keyboards shortcuts dialog is very old and needs a major facelift. I have a large monitor and can't even make the window bigger to see more in the list. That would be a start anyway. I'd also like an apply or a sample code window that would preview any color changes.. It might be nice to have some form of filter you could type in, much like the keyboard binding search.
Андрей Кожин commented
Always a problem to find why something is displayed like its displayed. Especially after installing plugins. Pls add option to "Find why this is colored like this"
Over 200 "Display Item" selections possible in VS 11 beta is insane. Opened a C++ .h file and couldn't get the bold option off the .h file comments (beta problem?). I didn't count the number of "Comment" display options in VS11 Beta before uninstalling it but VS10 has 9 different "Comments" items. Uninstalled VS11 beta because the look of the IDE was just too horrible to bear (light or dark). I'm not quiet over loosing raster fonts in VS10 yet and this IDE made me nauseous. (I have 31 years of coding experiance)
Adding additional details from a merged suggestion:
The sample in the Options -> Environment -> Fonts and Colors menu really says nothing about the changes that user makes.
It would be GREAT if the items were categorized based on the programming language AND there was a simple code for every category like a few lines of code that covers every option available in the "Display items" box. By changing an item's color/font, the color of that item in the sample code changes accordingly.
Believe me, it is REALLY REALLY helpful ! With the current menu finding a good combination of colors is very hard and time consuming. You have to press the OK button for every single change to see whether it fits or not.
Paul Redman commented
+3 Votes! I have been struggling with customizing my colour settings for many years. It is more than time for this dialog to get completely reworked.
When you open this dialog, it should default to the colour settings for the selected text in the editor window.
It would be really useful if this dialog worked like the F12 developer tools in IE. Provide a "selection tool" (arrow) that you can hover over text and UI elements and the appropriate colour settings would be shown in the dialog.