Terminal status line support, based on the xterm title patch.
Christoph Berg took the xterm title patch from the mutt mailing list and maintained it for Debian: * Changes made: - 2007-01-27 myon: using %P caused a segfault, updated status.c to catch menu==NULL. - 2007-02-20 myon: make the note about the xterm_set_titles defaults a comment. - 2008-08-02 myon: move set_xterm_* prototypes into the proper header file (cleaner code, no functional change, evades conflict with sidebar patch) This update reworks the Debian version as generic support for tsl/fsl terminfo capability. It no longer depends on a static list of supported terminal types, although it will use default support for these terminal types *if* they do not advertise tsl/fsl or XT in terminfo. The generic terminal status line can be implemented in any fashion, and on hardware terminals it can be a special out-of-screen region of the display. Most modern terminal emulators appear to emulate the status line in the window title; thus the notion of the tsl escape as an xterm window title escape. Configuration variables have been renamed: $ts_status_format format string (using $status_format codes) for the terminal status line $ts_icon_format format string (using $status_format codes) for the xterm icon name $ts_enabled toggle for whether to issue status updates The old configuration names exist as synonyms. Logic flow: * If tsl (string) is set in terminfo, mutt will use that escape to switch to the status area, and will use fsl to switch back to the regular display area. * Otherwise, if XT (boolean) is set in terminfo, mutt will use the standard xterm-compatible escapes. * Otherwise, if $TERM matches a known terminal type, mutt will use the standard xterm-compatible escapes. * Otherwise, this feature is disabled. = NOTE = The XTerm icon escape sequence is not formalized in terminfo, so the egregious kludge of hardcoding the escape is necessary in this case. However, some terminal emulators (e.g. MacOS X Terminal.app) will set the status line (window title) when the icon sequence is received. Since there is no way to detect this behavior, the only solution is to write your configuration to take it into account. Rather than add a variable to control icon escapes separately, we just provide the advice: if you use such a terminal, you may wish to set ts_icon_format to an empty string. This will cause it not to be used.
Showing with 135 additions and 0 deletions