Git Product home page Git Product logo

Comments (7)

Tyriar avatar Tyriar commented on June 29, 2024 1

I think it would be worth trying to get around the scrolling issues doing something like #69 before considering this route. That's a lot of DOM elements and imo the way it currently works is one of the great things about term.js; that it's footprint on the DOM is relatively small while maintaining a large buffer.

Plus it would probably need to recreate most lines on resize which could cause performance issues with a reasonably sized buffer limit.

from xterm.js.

parisk avatar parisk commented on June 29, 2024

Wild guess is that this is related to #67.

from xterm.js.

Tyriar avatar Tyriar commented on June 29, 2024

I think it's to do with the DOM being changed radically after a scroll, so the cursor ends up at the top-left (start) of the terminal.

from xterm.js.

parisk avatar parisk commented on June 29, 2024

This could be the case as well. Implementing natural scrolling, instead of virtual one, seems like could fix most of these issues.

from xterm.js.

Tyriar avatar Tyriar commented on June 29, 2024

That would probably lead to perf issues if the terminal buffer is too big, plus scrolling would not jump in character length blocks which would feel strange.

from xterm.js.

parisk avatar parisk commented on June 29, 2024

We could apply a limit to the terminal buffer size, which is something that even native apps do (e.g. Terminal.app).

from xterm.js.

Tyriar avatar Tyriar commented on June 29, 2024

Fixed in #670

from xterm.js.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.