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

Mosh mangles certain color escape sequences #519

Closed
reanimus opened this issue May 10, 2014 · 1 comment
Closed

Mosh mangles certain color escape sequences #519

reanimus opened this issue May 10, 2014 · 1 comment

Comments

@reanimus
Copy link

I use doge as a banner upon login and I've noticed that it causes the terminal doge to be fairly mangled upon running. I'm connecting from OS X to a Linux box, but I did a quick test (sshing in then doing mosh to localhost) and the same result happened. This is a side-by-side comparison using SSH and mosh.

screen shot 2014-05-10 at 11 48 02 am

I reported this to doge here, but they clarified it was an issue with mosh, note doge itself. I figured it'd be worth reporting here.

keithw added a commit to keithw/doge that referenced this issue May 10, 2014
doge.txt combines multiple 256color rendition changes in the same SGR
sequence, e.g., `ESC [ 48;5;179; 38;5;100 m` to change both the
background and foreground color.

The xterm-256color terminfo entry requires (and mosh enforces) that
these be in separate escapes.

Example: `echo -e "setab 179\nsetaf 100" | tput -S | od -c` generates
`ESC [ 48;5;179 m ESC [ 38;5;100 m`.

File converted with: perl -0777 -wpe 's{;38;}{m\033[38;}g' doge.txt

Fixes Olivia5k#43. (Also reported at mobile-shell/mosh#519)
@keithw
Copy link
Member

keithw commented May 10, 2014

Fixed via Olivia5k/doge#48 . Previous discussion here: #110, where we said we would revisit this if it turned out to be a problem. So far it's only been a few relatively obscure programs (that don't use terminfo or curses), so my temptation is to stay with our current (strict) interpretation for now.

@keithw keithw closed this as completed May 10, 2014
keithw added a commit to keithw/img2xterm that referenced this issue May 11, 2014
img2xterm had been combining multiple 256color rendition changes in the
same SGR sequence, e.g., `ESC [ 48;5;179; 38;5;100 m` to change both the
background and foreground color.

The xterm-256color terminfo entry requires (and mosh enforces) that
these be in separate escapes. This commit makes the img2xterm output
render correctly in mosh.

Example: `echo -e "setab 179\nsetaf 100" | tput -S | od -c` generates
`ESC [ 48;5;179 m ESC [ 38;5;100 m`.

* Olivia5k/doge#48
* mobile-shell/mosh#519
* mobile-shell/mosh#110 (comment)
Olivia5k pushed a commit to Olivia5k/doge that referenced this issue May 12, 2014
doge.txt combines multiple 256color rendition changes in the same SGR
sequence, e.g., `ESC [ 48;5;179; 38;5;100 m` to change both the
background and foreground color.

The xterm-256color terminfo entry requires (and mosh enforces) that
these be in separate escapes.

Example: `echo -e "setab 179\nsetaf 100" | tput -S | od -c` generates
`ESC [ 48;5;179 m ESC [ 38;5;100 m`.

File converted with: perl -0777 -wpe 's{;38;}{m\033[38;}g' doge.txt

Fixes #43. (Also reported at mobile-shell/mosh#519)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants