Copyright © 2016 by Thomas E. Dickey


The ncurses terminal database includes descriptions for most of the terminals (or emulators) you may happen to use. A few are excluded, usually because the terms under which the terminal is provided are not permissive enough.

Usually, that is, except for rxvt-unicode.


I have dealt with rxvt developers since 1996. Development of rxvt-unicode began with the rxvt source-code in November 2003, making these significant changes:

There are other changes, e.g., support for CJK, input-method ISO 14755 and a Perl interface. But from the standpoint of ncurses, very little has changed: almost all of the relevant terminal emulator work was done before rxvt-unicode.

Because the last version of rxvt (2.7.10) was released in March 2003, rxvt-unicode is technically not a “fork” (since there was never more than one active line of development) but rather a switch in focus, continuing the development of rxvt. Its developer began by describing it as a “clone” but that was an error because it is clearly a derived work rather than an independent implementation.


Before I provided a workable terminal description for the rxvt developers late in 1997, it had only a file adapted from Midnight Commander sources which used xterm as the value for TERM. There were differences when comparing to xterm which I addressed:

While rxvt-unicode provides an updated terminal description (see source code), the same type of fixes would be needed if I were to incorporate it into ncurses.

Now here is the problem: in some cases the terminal developers provide a usable terminal description, but generally the more work that has to be done, the less the terminal developers want to be involved with terminal descriptions. But rxvt-unicode is an exception.

Take these bug reports for example:

In each case, the developer was part of the problem. He also spent some time aggravating the situation, e.g.,

In the meantime, as part of routine development, I checked the terminal description for rxvt-unicode, found (and fixed for my own use) the issues noted. But publishing the result would inevitably lead into needless conflict, particularly where I would point out that some of the advertised features of rxvt-unicode do not work (at least not compatibly with other programs), and are not present in the resulting description.

To get a sense for this, read the developer's comments in

A few people asked in private email about this (as early as 2006). Finally in 2009 someone asked on the ncurses mailing list, so the viewpoints on both sides have been given: