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

Line wrapping breaks the scrolling + non-ANSI truncation #37

Open
Piturnah opened this issue Jul 9, 2023 · 0 comments
Open

Line wrapping breaks the scrolling + non-ANSI truncation #37

Piturnah opened this issue Jul 9, 2023 · 0 comments
Labels
bug Something isn't working
Milestone

Comments

@Piturnah
Copy link
Owner

Piturnah commented Jul 9, 2023

We can now scroll (yay) but there is a problem with line wrap which is that it messes up all the calculations for the viewable window. Currently (I am about to push the commit) we allow configuring gex such that lines are truncated instead (but this only works with ANSI). Also, the truncation is slow because we have to create a whole VTE state machine.

It is to do with the escape codes used for coloring and cursor manipulation and etc that it is not straightforward at all to implement the line wrap. I have tried many ways of doing it. Also, it's made more difficult by the fact that we aren't always using ANSI codes (I think - this part is handled by Crossterm, so I still need to investigate).

Proposed Solution

Refactor so all the styling is done in the renderer itself. This way we can delay the painting until after the viewable window is already determined. This should be a bit faster, too.

@Piturnah Piturnah added the bug Something isn't working label Jul 9, 2023
@Piturnah Piturnah pinned this issue Jul 9, 2023
@Piturnah Piturnah added this to the 1.0 milestone Aug 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant