Steps to Reproduce:
Reproduces without extensions: No

This has been tested with https://github.com/rubyide/vscode-ruby, but I would guess the same happens with other languages as well. When the debug console receives lots of output (say 10s or 100s of lines), it automatically scrolls to the bottom.
For me, this is annoying since the errors I am most interested in are most likely at the _beginning_ of the output. Means I have to scroll up manually every time.
Could we make this an option? (Auto-scroll on/off)
VS code supports "smart scroll", that means automatic scrolling only occurs if you are at the very end of the debug console. If you scroll at least one line up, automatic scrolling should stop (see this feature request https://github.com/Microsoft/vscode/issues/10486)
@isidorn I could not find "smart scroll" in the doc. We should add this to the doc.
In addition we could introduce a button that shows the state of "smart scroll" and can be used to control the behaviour directly.
Thanks for the reply @weinand!
VS code supports "smart scroll", that means automatic scrolling only occurs if you are at the very end of the debug console. If you scroll at least one line up, automatic scrolling should stop (see this feature request #10486)
For me, this is not what happens. Every time I launch a task, the debug console is cleared, and it scrolls down to the bottom.
So, to make things clear: this is not dealing with a continuous debugging session, but more referring to the fact that "every time a task is launched, the debug console is cleared and gets scrolled all the way to the bottom unconditionally". Sorry for not being clear about that initially.
Smart scroll is only supported for the output, not the debug console.
Smart scroll works to some extent in the "terminal" tab, until it must hit some buffer limitations of sort then you can't stop it to go to the bottom anymore (Linux)
"Smart scroll" actually works now in the debug console. Thus closing this
My program
setInterval(() => {
var count = Math.random() * 50;
var message = Date.now() + 'new log message: ';
for (var i = 0; i < count; i++) {
message += ' ' + Math.random();
}
console.log(message);
}, 200);
I have verified that when I am scrolled all the way to the end that the debug console will follow the latest output, however when I am scrolled not at the end that the output will be locked as expected.
Please note related issue that I am investingating https://github.com/microsoft/vscode/issues/107704