vercel / vercel/hyper

Text gets messed up when scrolled inside a Docker container

Open
#3,491 3 comments 6 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
44.7k
Forks
3.6k
Avg merge
21m
Merged PRs (30d)
1

Description

  • I am on the latest Hyper.app version

  • I have searched the issues of this repo and believe that this is not a duplicate

  • OS version and name: macOS 10.14.3

  • Hyper.app version: 2.1.2

  • Link of a Gist with the contents of your .hyper.js: https://gist.github.com/leshik/0f821b2fc94ab238bf9c273bcbdb92b1

  • Relevant information from devtools (CMD+ALT+I on macOS, CTRL+SHIFT+I elsewhere): N/A

  • The issue is reproducible in vanilla Hyper.app: Is Vanilla

Issue

Hyper messes up the text when scrolling quite a long text in some editor, e.g. nano, when inside Docker container.

Steps to reproduce:
  1. Maximize Hyper window (stty size reports 51 171 in my case
  2. docker run --rm -it ubuntu
  3. apt update && apt install nano
  4. export TERM=xterm; reset -w && stty size # this is to ensure the terminal parameters are correct
  5. nano /etc/adduser.conf # can be any text file that is longer than one page
  6. Scroll down to the end of file using arrows (don't use PgUp/PgDown shortcuts!)
  7. Scroll up with arrows to the beginning of the file

The text becomes corrupted then (only the top 30% of the screen gets scrolled):

image

While there are known issues with terminal inside Docker containers, they are usually resolved by aforementioned export and reset. At least, macOS built-in Terminal.app as well as iTerm2 don't suffer from this issue.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the issue using the listed macOS, Hyper, Docker, nano, TERM, and reset steps, then compare the scrolling behavior with Terminal.app or iTerm2. Done means scrolling back through a long file inside the Docker container no longer corrupts the displayed text.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, typescript
Domain
cli, desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.