Source: putty Version: 0.62-9 Severity: normal Dear Maintainer,
I sent this to upstream a while ago but got no response. I'm reporting it here mostly so I can point at it from other bug resports. Note that the test sequence I gave seems to work intermittently when I try it under pterm: some of the time I get an 80-column window and some of the time a 90-column one. ---------- Forwarded message ---------- From: Samuel Bronson <naes...@gmail.com> Date: Sun, Jan 1, 2012 at 9:52 AM Subject: annoyance: DECCOLM (80/132 column) switching cannot be disabled (whereas it is disabled by default in xterm) To: pu...@projects.tartarus.org PuTTY seems a bit over-eager when it comes to DECCOLM (80/132 column) switching. Compare the results of the following commands under PuTTY (with remote-resize enabled, obviously) and xterm: $ echo -ne '\e[?40l' && echo -ne '\e[8;24;90t' && echo -ne '\e[?3l' $ echo $COLUMNS (Note: running them separately is important; neither zsh nor bash updates $COLUMNS in mid-command: you would just see the number of columns you had started with if you ran them in one go.) Explanation of escape sequences (based on http://invisible-island.net/xterm/ctlseqs/ctlseqs.html as always): 1. (CSI ? 4 0 l) "Disallow 80 → 132 Mode", just in case that somehow got turned on. 2. (CSI 8 ; Sm t) resizes the terminal (to 90x24 in this case) 3. (CSI ? 3 l) rendered by termcmp -i as {DEC-COLM}; listed in ctlseqs as: "80 Column Mode (DECCOLM)". In xterm, sequence 3 does nothing, since sequence 1 turned it off: case 3: /* DECCOLM */ if (screen->c132) { ClearScreen(xw); CursorSet(screen, 0, 0, xw->flags); if ((j = IsSM()? 132 : 80) != ((xw->flags & IN132COLUMNS) ? 132 : 80) || j != MaxCols(screen)) RequestResize(xw, -1, j, True); (*func) (&xw->flags, IN132COLUMNS); } break; case 40: /* 132 column mode */ set_bool_mode(screen->c132); update_allow132(); break; The reason this is annoying is that it causes the "reset" command to resize the terminal to 80 columns, whether I use TERM=xterm or TERM=putty (in fact, most entries in the database seem to have {DEC-COLM} in the reset sequence, in some form or other). % infocmp -i xterm is2: {DECSTR}{DEC-COLM;SCLM}{rmir}{DECPNM} rs1: {RIS} rs2: {is2} smcup: {DEC+1049} rmcup: {DEC-1049} % infocmp -i putty is2: {SC}{RSR}{SGR0}{DEC+AWM}{DEC-CKM;SCLM;OM}{rmir}{RC}{DECPNM}\E]R rs2: {DECANSI}\E["p\E[50;6"p{RIS}{DEC-COLM}\E]R{DEC-1000} smcup: {DEC+47} rmcup: {ED2}{DEC-47} I am actually very happy to have discovered that this is a problem with putty's implementation of DECCOLM, because now I at least have some hope of getting {DEC-COLM} removed from the rs2 string; all I ask of you is that you add it to the wishlist page. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org