Change:
To Reproduce Steps to reproduce the behavior: a debug session and open the debug console and press enter the echoed output is <img width="489" alt="image" src="https://user-"Log File <!-- If you're able to, add to your and reproduce the issue. The location of the log file on your disk will be written to the Debug Console. Share that with us. This log file will not contain source code, but will contain file paths. You can drop it into to see what it contains. If you'd rather not share the log publicly, you can email it to --VS Code Version: Version: 1.63.0-insider Commit: Date: 2021-11-17T07:45:14.150Z (2 days ago) Electron: 13.5.2 Chromium: 91.0.4472.164 14.16.0 V8: 9.1.269.39-electron.0 OS: Darwin x64 21.1.0 Node used in debug session: 16.13.0.
I believe this got fixed with my work around multiline errors last iteration.
this is either happening again or still happening <img width="115" alt="image" src="https://user-"
Version: 1.67.0-insider Commit: Date: 2022-04-08T05:18:35.034Z (4 days ago) Electron: 17.4.0 Chromium: 98.0.4758.141 16.13.0 V8: 9.8.177.13-electron.0 OS: Darwin x64 21.4.0
I don't reproduce this, does it only happen if you log certain things before the string? / do you have a reliable repro?
JS Debug Terminal to debug console
Hm, seems like sitting on the issue and trying again didn't make me reproduce it Could you grab some logs? I should be able to diff those and see what's up. /jsDebugLogs
How do I get logs?
This is probably helpful. It appears to be a style issue. (So I assume this is the wrong repo to file against.) <img width="1074" alt="image" src="https://user-"
There are a few elements with their set to an explicit pixel value. If I bump up those values, the result is no longer clipped. So it’s not just a style issue per se, but more likely, something is not communicating the correct number of lines to the renderer. <img width="1706" alt="image" src="https://user-"
Can't repro - can you share any font family/size/line height settings you have?
<img width="500" alt="image" src="https://user-"Line height is 0 (auto)
Terminal-specific stuff: <img width="981" alt="image" src="https://user-"
Sure enough, when I build VS Code from source, this doesn’t repro It still does repro in Insiders with all my extensions disabled. Is there a way to launch a VS Code window with all default settings?
It also doesn’t repro in my installation of VS Code stable, which I pretty much never use!! I even turned on Settings Sync and replaced the local settings with what was in the cloud. I can’t figure out what the difference is.
The debug console has its own font/line height settings. You can start code-insiders with or just temporarily copy your settings into another file and clear out Might help to share the original heights of the and elements too
This was the culprit. <img width="439" alt="Debug Console Word Wrap is disabled" src="https://user-"I don’t recall why I disabled it, but that’s still a bug, right?
I can repro it now, thanks!
Crap, this is not quite right
It was fixed for an OutputEvent but still off by a line for an evaluation result
What's the best way to verify this?
- Debug JS, enter and in the debug console, make sure that all messages are sized correctly. You could check some other cases too.

Discussion:
return super.getHeight(element); } <ins> /** * With wordWrap enabled, this is an estimate. With wordWrap disabled, this is the real height that the list will use. */ </ins> protected estimateHeight(element: IReplElement, ignoreValueLength = false): number { const lineHeight = this.replOptions.replConfiguration.lineHeight; <del> const countNumberOfLines = (str: string) => Math.max(1, (str && str.match(/rn|n/g) || []).length); </del> <ins> const countNumberOfLines = (str: string) => str.match(/n/g)?.length ?? 0; </ins> const hasValue = (e: any): e is { value: string } => typeof e.value === 'string'; <del> // Calculate a rough overestimation for the height // For every 70 characters increase the number of lines needed beyond the first </del> if (hasValue(element) && !isNestedVariable(element)) { const value = element.value; <del> const valueRows = countNumberOfLines(value) + (ignoreValueLength ? 0 : Math.floor(value.length / 70)); </del> <ins> const valueRows = countNumberOfLines(value) + (ignoreValueLength ? 0 : Math.floor(value.length / 70)) // Make an estimate for wrapping + (element instanceof SimpleReplElement ? 0 : 1); // A SimpleReplElement ends in n if it's a complete line </ins> <del> return valueRows * lineHeight; </del> <ins> return Math.max(valueRows, 1) * lineHeight; </ins> } return lineHeight;