In any development environment there is a tool called “Output”. There is no need to describe what he does, because absolutely all developers use it in their work every day. He is simple and conservative.
In fact, it has not changed for decades and until now it looks something like this:
Text, text and again text. Lots of text ...')
Even in this tiny example, it’s not immediately obvious where the line is with an error. In order to understand this, you need to make an effort and spend time. Just because you need to read the text and look for the words “error”, “exception” or “warning” in it. The programmer is to search, and the customer to pay for the time spent on it.
Solution of the problem
What if the text in such messages is highlighted in red, and in the case of warnings, yellow? Will be better. So thought the authors of the
VSColorOutput and
Output Enhancer extensions for Visual Studio (hereafter, for the
sake of illustration, this IDE will be used).
It turned out like this:
Errors and warnings have become noticeable without any effort on the part of the developers.
Great job and thanks for the handy tool.Of course, this makes life easier for programmers, but still this is not enough. Information is displayed a lot, and among this information is useless.
For example, why see a list of compiled files? Is there anyway to hide it?
The author of the
Output Window Filter extension asked himself this question.
It turned out like this:
The result was less, it became easier to deal with it. There are questions to implementation, but the idea is great.Microsoft developers have also contributed to the evolution of this tool by adding timestamps to it. To do this, they created an extension
Time Stamp Margin .
It turned out the following:
It has become more convenient. Now it is clear when and what was done, as well as how much time elapsed between events.Unsolved problems
Everything is fine, but there is a problem.
These great extensions can not work together, complementing the advantages of each other. More sadly, the progress in the ready-made solutions stopped, leaving a number of problems unsolved.
Here is a rough list of these problems:1. Service information is displayed along with useful information;

2. There is no visualization of the same type of messages;

3. There is no possibility to search and highlight the data of interest;
4. It is not obvious from which messages the transition to the source code is possible;
5. It is not possible to quickly go to the description of the error;
6. With multi-project compilation, it is not obvious which project the messages belong to;

7. For long messages, you have to use horizontal scrolling;
8. Display stack stack is not optimized;
9. There is no possibility of masking messages by type (errors, warnings, messages).
Results
It is not difficult to notice that progress in improving this tool has not been observed for a long time. For decades, the most important tool remains unchanged, and only a few enthusiasts are trying to improve something. This was the reason for the
MetaProject extension. It is an attempt to solve all the above problems.
What came out of this can be seen in the example:

Conclusion
Do not ignore extensions to the development environment. There can be very useful tools that save a huge amount of time for developers, and customers a lot of money.
Moreover, almost all of these extensions are absolutely free.