Mercurial > hg
changeset 1386:8e763c2c331f
Add option 'escdelay'
This option overrides the environment variable.
The autoconf check for ESCDELAY was borrowed from the
Midnight Commander project.
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Sun, 02 Dec 2007 17:56:51 +0100 |
parents | 7ca57f7e313c |
children | 3067c096cfc4 |
files | mcabber/configure.ac mcabber/mcabberrc.example mcabber/src/screen.c |
diffstat | 3 files changed, 31 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/mcabber/configure.ac Sun Dec 02 17:16:09 2007 +0100 +++ b/mcabber/configure.ac Sun Dec 02 17:56:51 2007 +0100 @@ -102,6 +102,20 @@ AC_MSG_WARN([Your ncurses installation does not support unicode]) fi +AC_CACHE_CHECK([for ESCDELAY variable], + [mc_cv_ncurses_escdelay], + [AC_TRY_LINK([], [ + extern int ESCDELAY; + ESCDELAY = 0; + ], + [mc_cv_ncurses_escdelay=yes], + [mc_cv_ncurses_escdelay=no]) + ]) +if test "$mc_cv_ncurses_escdelay" = yes; then + AC_DEFINE(HAVE_ESCDELAY, 1, + [Define if ncurses has ESCDELAY variable]) +fi + # Check for glib AM_PATH_GLIB_2_0(2.0.0, , AC_MSG_ERROR([glib is required]),[g_list_append])
--- a/mcabber/mcabberrc.example Sun Dec 02 17:16:09 2007 +0100 +++ b/mcabber/mcabberrc.example Sun Dec 02 17:56:51 2007 +0100 @@ -273,6 +273,15 @@ # isn't defined, the status message will stay unchanged. set message_autoaway = Auto-away (idle) +# Escape timeout delay (ESCDELAY) +# The ESCDELAY variable specifies the time, in milliseconds, for which +# the ncurses interface will await a character sequence. +# The default is 1000 (1 second). +# If you want mcabber to react faster after hitting Escape, you can lower +# this value by setting the ESCDELAY environment variable or setting the +# 'escdelay' option. +set escdelay = 50 + # Colors # Colors are: black, red, green, yellow, blue, magenta, cyan, white # For text colors (i.e. not background and bg* colors) you can also use
--- a/mcabber/src/screen.c Sun Dec 02 17:16:09 2007 +0100 +++ b/mcabber/src/screen.c Sun Dec 02 17:56:51 2007 +0100 @@ -761,6 +761,14 @@ start_color(); use_default_colors(); + if (settings_opt_get("escdelay")) { +#ifdef HAVE_ESCDELAY + ESCDELAY = (unsigned) settings_opt_get_int("escdelay"); +#else + scr_LogPrint(LPRINT_LOGNORM, "ERROR: no ESCDELAY support."); +#endif + } + ParseColors(); getmaxyx(stdscr, maxY, maxX);