Is there a portable way to list supported terminal types on all NX systems?
If not, what's the best way to get this list on Solaris?
On most systems, you can look for files under
/usr/share/terminfo. On some versions of Solaris that may be
/usr/lib/terminfo instead. Some system will also have a
termcap file, which may be in
/usr/share, or occasionally
/usr/share/misc; the terminal names in that are in lines matching
^[^\t].*|, and every name between
|s is a valid terminal name. (Technically the first 2-character entry is also valid, but in practice unused; it's left over from a tty driver hack for 6th Research Edition UNIX. Some
termcap parsers may also accept the long description, but many won't.).
The definitive answer for any system will be in
If you have the
ncurses package installed, you can use
toe(1). Beyond that, something like
should work, but the location of the database is not consistent across operating systems.
At first you need to get path of terminfo such as :
#infocmp -D /etc/terminfo /lib/terminfo /usr/share/terminfo
Then run :
find /usr/share/terminfo/ -type -f -print
NOTE: result was about 3000 lines.
It can help you to retrieve list of terminal types
supported terminal types on all NX systems?
What do you mean by terminals? Do you mean dumb terminals/terminal emulators? Or remote display systems?
As others have mentioned, [n]curses/terminfo tries to provide a unified abstraction layer for talking to dumb terminals - but there is no good measure of the coverage provided by the abstraction layer. Other than xterm (which builds on vt100 emulation) these are mostly only available for accessing legacy systems. (putty is more or less an xterm emulator on top of a ssh client).
OTOH the X Window system is a far more sophisticated kettle of fish - and only has one protocol which has had very few changes over the years.
There are other remote display protocols: (NX is just a wrapper around X) including RDP (as favoured by Microsoft and Citrix) but AFAIK there are no *nix servers, and VNC - which runs on all sorts of hardware.