Skip to content
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

Terminal rendering shows space between lines with zoomlevel:1 #18588

Closed
jordwalke opened this issue Jan 16, 2017 · 9 comments
Closed

Terminal rendering shows space between lines with zoomlevel:1 #18588

jordwalke opened this issue Jan 16, 2017 · 9 comments
Assignees
Labels
bug Issue identified by VS Code Team member as probable bug terminal Integrated terminal issues upstream Issue identified as 'upstream' component related (exists outside of VS Code) verified Verification succeeded
Milestone

Comments

@jordwalke
Copy link

cc @Tyriar

My terminal application draws background color, and this is how it looks. I believe this is a bug.

screen shot 2017-01-15 at 8 49 46 pm

@Tyriar Tyriar added bug Issue identified by VS Code Team member as probable bug terminal Integrated terminal issues macos Issues with VS Code on MAC/OS X info-needed Issue requires more information from poster labels Jan 16, 2017
@Tyriar Tyriar self-assigned this Jan 16, 2017
@Tyriar
Copy link
Member

Tyriar commented Jan 16, 2017

Must be a mac-specific issue, what's in your settings.json?

@Tyriar Tyriar added this to the January 2017 milestone Jan 16, 2017
@jordwalke
Copy link
Author

// Place your settings in this file to overwrite the default settings
{
    "editor.fontFamily": "Menlo, 'PragmataPro', Menlo, Monaco, 'Courier New', monospace",
    "window.zoomLevel": 1
}

I discovered that this doesn't happen at window zoomlevel 0.

@jordwalke jordwalke changed the title Terminal rendering shows space between lines Terminal rendering shows space between lines with zoomlevel:1 Jan 16, 2017
@Tyriar
Copy link
Member

Tyriar commented Jan 16, 2017

Does setting "terminal.integrated.lineHeight": 1.2 fix the problem at "window.zoomLevel": 1
and others? I think Mac has a different line-height that's inherited from the editor, maybe it could just use 1.2 too if so?

On my Linux machine it works until zoom level is 4.

@jordwalke
Copy link
Author

jordwalke commented Jan 16, 2017

There's a couple settings that don't work on my setup. 1 and -1 both have the same issue. 4 works on my system. It could be some combination of my retina screen with the zoom level etc which causes some rounding error.

@Tyriar
Copy link
Member

Tyriar commented Jan 16, 2017

Yes that's likely the case

@Tyriar Tyriar modified the milestones: February 2017, January 2017 Jan 23, 2017
@Tyriar Tyriar removed the info-needed Issue requires more information from poster label Jan 23, 2017
@Tyriar Tyriar modified the milestones: February 2017, Backlog Feb 21, 2017
@Tyriar
Copy link
Member

Tyriar commented Apr 3, 2017

Will likely be fixed when #9958 is implemented

@Tyriar Tyriar added upstream Issue identified as 'upstream' component related (exists outside of VS Code) and removed macos Issues with VS Code on MAC/OS X labels Apr 3, 2017
@jordwalke
Copy link
Author

So what's happening in this bug? When I set lineheight=1, and I used a font like PragmataPro, the text should fit perfectly within one line correct? But with lineheight=1, (zoom level 0 or 1), you can see that text is clipped. Is this related?

{
    "editor.fontFamily": "PragmataPro, Menlo, Monaco, 'Courier New', monospace",
    "window.zoomLevel": 1,
    "editor.fontSize": 14,
    "terminal.integrated.lineHeight": 1.0
}

screen shot 2017-04-17 at 1 10 30 pm

Then, as originally discussed setting lineheight to 1.2 causes there to be lines between the background:

{
    "editor.fontFamily": "PragmataPro, Menlo, Monaco, 'Courier New', monospace",
    "window.zoomLevel": 1,
    "editor.fontSize": 14,
    "terminal.integrated.lineHeight": 1.2
}

screen shot 2017-04-17 at 1 12 40 pm

I think the the clipping at line height 1 is unrelated but not correct, but it has me wanting to increase the lineheight, which then surfaces the originally reported bug.

When the terminal draws "background color", shouldn't it be filing in the additional line space below it?

@Tyriar
Copy link
Member

Tyriar commented Apr 18, 2017

The way this will be fixed is by implementing "virtual selection" upstream xtermjs/xterm.js#207

It's the next terminal feature I want to work on and it will allow xterm.js to completely control the selection model, how it's rendered and how it's copied which will fix a huge amount of issues with the terminal. Here's the list of impacted issues it will touch when I last checked:

(moved the list to #9958 (comment))

@Tyriar
Copy link
Member

Tyriar commented Jun 9, 2017

Fixed in #9958, xtermjs/xterm.js#670

@Tyriar Tyriar closed this as completed Jun 9, 2017
@Tyriar Tyriar added this to the June 2017 milestone Jun 9, 2017
@Tyriar Tyriar removed this from the Backlog milestone Jun 9, 2017
@roblourens roblourens added the verified Verification succeeded label Jun 28, 2017
@vscodebot vscodebot bot locked and limited conversation to collaborators Nov 17, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Issue identified by VS Code Team member as probable bug terminal Integrated terminal issues upstream Issue identified as 'upstream' component related (exists outside of VS Code) verified Verification succeeded
Projects
None yet
Development

No branches or pull requests

3 participants