[2.34] Terminal Emulation (display) is messed up (vt100, ansi and xterm)

9 replies [Last post]
Seb
Joined: Aug 14 2004
Posts: 18
[2.34] Terminal Emulation (display) is messed up (vt100, ansi and xterm)
Connecting to an SSH server running bash as my shell... Changing the terminal type by Preferences, Session, Emulation, Terminal Type and then reconnecting... 1. xterm produces an underlined, italicized flashing prompt. PuTTY uses "xterm" by default and the prompt is none of these. 2. The display running "nano" (a terminal text editor that works in a reasonably familiar way for Windows users) is somewhat messed up on all terminal types (vt100, ansi and xterm) but in varying ways. My tests were with GNU nano 1.2.5 (at a screen width > 80), where I opened /etc/hosts each time, and I compared it against PuTTY where it works perfectly. (I even changed PuTTY to vt100 to see how that was. The main difference seems to be when exiting it doesn't clear the screen.) 2a. vt100: produces the best results, the problem seems to be the 3 lines at the bottom where the black and white are not quite right. 2b. ansi is worse, an IP address is not visible and the 3 lines at the bottom are worse. 2c. xterm is the worst: I couldn't see any of the three lines in my hosts file, until I resized the window but the lines bled into each other. 3. Resizing the window (while in nano) produces odd results - the display gets worse. 4. Using another program that is designed to fill your terminal and give you an interactive GUI - zttool - produces almost unusable results such that it took me a little while just to figure out how to exit it. 5. Testing with the "top" application produces fairly good results, but I notice that after running for a few hours it can start to get a bit messed up, and, in ansi emulation, it also produces colored background in places for short periods (usually just 1 polling cycle). I have about a dozen screenshots, but it's such a pain to put them in this message (and they will mess up the layout of this page) that I'll wait until I'm asked for them, or perhaps I can just e-mail them to you - that would be easier. Or maybe I'll just load one up: what's a good hosting site for images? If it's any consolation, 2.34 does seem slightly better than 2.33 in terminal emulation: I also had display issues with another program in 2.33 (when using the command history feature of that program) but that seems to be fixed.
Zugg
Zugg's picture
Joined: Jan 1 1999
Posts: 178
Keep in mind that the Terminal Type in CMUD/TeSSH doesn't have any effect on the *emulation* done in CMUD/TeSSH. All it changes is what gets reported to the server. CMUD/TeSSH doesn't actually contain any xterm emulation...it only contains VT100 emulation. If you tell the server that you are using xterm you will have lots of problems since there is no xterm emulation. This setting was mainly designed for MUD players in CMUD who needed a particular Terminal Type to connect to the MUD or server. So, you'll always want to use VT100 in the Terminal Type in TeSSH so that the server can properly set up it's shell. CMUDPro used to *force* VT100 in the terminal type field, and I might need to go back to that since I have no plans for additional emulation modes at this time. Anyway, don't bother posting any screen shots when using xterm mode. But if you find problems in VT100 mode, definitely give me more details. But it's going to be hard working with stuff like "nano" unless it's part of the standard linux distribution that I have access to here. Otherwise I'll need login accounts to log into your server to try it, or detailed debug log files so I can see exactly what is being sent. It's certainly possible there are still some VT100 emulation bugs since MUDs don't use that very much anymore.
Seb
Joined: Aug 14 2004
Posts: 18
I see. Maybe there should be a warning when changing the terminal type to ansi or xterm then. "nano" is standard on Redhat, Fedora and most of it's derivatives, plus many other distributions. If it's not already installed on your server, and you have the ability to install packages, there is most likely a nano package available. Otherwise, you will likely find problems in whatever text editor you do have installed. For instance "vi" (actually VIM - Vi IMproved, version 6.3.90) has display issues on the "splash" screen. If you don't have nano installed (or even if you do), you'll almost certainly have vim installed. Failing that, I may be able to create a login for you on a server.
Zugg
Zugg's picture
Joined: Jan 1 1999
Posts: 178
OK, I won't be able to try playing with "nano" until after next week. I regularly use "vi" on my server and haven't seen any display problems with that, but I don't know if it's regular "vi" or "vim" (or even how I can tell...my linux knowledge is pretty weak). Another user had posted some problems with CMUDPro with his particular SSH server. He had all sorts of display problems that I couldn't reproduce with the same applications on my own linux box. So there might still be some issues with different servers or with the terminal type stuff. And yes, I will probably remove the terminal type box in the Preferences for TeSSH. But first I need to look at some old posts to see why I stopped forcing VT100 in the first place. Since that's the only emulation that TeSSH performs, it probably shouldn't let the user change it to something else.
Seb
Joined: Aug 14 2004
Posts: 18
Well, if I type "vi" from my shell prompt, it loads vim and I copied and pasted "VIM - Vi IMproved" and "version 6.3.90" from the splash screen it loaded. What distribution (and version) of *nix do you use? (cat /proc/version may say, or it may not - only including the kernel version and other bits).
Zugg
Zugg's picture
Joined: Jan 1 1999
Posts: 178
cat /proc/version shows: Linux version 2.4.28-grsec.WOLF/OS (root@www) (gcc version 3.3.4) #1 Mon Jan 10 22:06:51 MST 2005 So that doesn't tell us much. Wolfpaw runs a pretty stripped-down custom kernel for higher security. And I'm not sure what distribution it is based on. I don't get any sort of "banner" when I run vi, so I think I just have normal vi. I tried typing "nano test.txt" and it said "nano: command not found". So it looks like no nano here.
Seb
Joined: Aug 14 2004
Posts: 18
Hmm, you have a Mac OS X laptop right? You can get Vim for that here. You probably already have an SSH server installed on it, but check here for details (or Google). Then you can SSH into your Mac and run vim and test to heart's content! [:D]
Zugg
Zugg's picture
Joined: Jan 1 1999
Posts: 178
Hmm, that's a very interesting idea! I didn't know the Mac had an SSH server, but I'll check those links. It's something I might be able to play with at the WorldCon next week since I'll have my laptop with me. I can probably run TeSSH in a VMware Fusion window and have it connect back to the Mac via ssh. Fun idea.
Seb
Joined: Aug 14 2004
Posts: 18
Yeah, you should be able to that! Make sure you install PuTTY on the Fusion machine so you can compare the results. [:wink:] The vim online :help is quite nice to test with, although you will note that by default PuTTY shows this in colour (presumably due to xterm emulation), while TeSSH doesn't. So you'll want to change PuTTY to send vt100 as the terminal (Configuration, Connection, Data) to compare apples with apples. BTW, Vim documention.
Zugg
Zugg's picture
Joined: Jan 1 1999
Posts: 178
Our new zuggsoft.com server uses CentOS and it has "nano" now, so I was able to play with this. Seems to be working pretty well for me here. I did find and fix a VT100 emulation problem. It was the ESC[nnL sequence for inserting lines. In the case of Vim, it was only sending this code when in "xterm" mode. When in "vt100" mode it was using older VT52 sequences, which was kind of odd. Anyway, hopefully v3.04 will be better. I've changed the default terminal type from vt100 to xterm to allow the pgup/dn keys to work, so if there are any other xterm emulation issues, please post after 3.04 is released. There are a lot of xterm-specific stuff that I have not implemented, like control over showing/hiding the cursor, etc. So TeSSH is still primarily a VT100 emulator.