Package: libreadline6 Version: 6.3-8 Severity: normal Tags: upstream Dear Maintainer,
When readline tries to flash my terminal (xterm), the flash is either completely invisible or flashes only a fraction of the window (a horizontal stripe) almost too fast to see. My .inputrc has "set bell-style visible". I induce flashes by pressing TAB in an interactive python shell or tclsh when there are no completions. My theory, based on reading the code and trying some experiments, is that what's happening is this: 1. readline looks up the termcap flash string under "vb" and gets a string containing a delay instruction: \E[?5h$<100/>\E[?5l 2. readline passes this string to tputs(), and passes a pointer to a function that wraps putc(). 3. tputs() calls that putc wrapper five times to output \E[?5h, then sleeps for 0.1 seconds, then calls the wrapper five more times to output \E[?5l . 4. But the output FILE stream is buffered, so none of those characters have actually been sent to the terminal yet, until a later call to fflush(), at which point all ten characters are sent at once. A possible fix would be, when using tput() for the visible bell, to use an alternate putc wrapper that calls fflush(). Or more generally, use a tputs wrapper that inspects the string uses the putc-flush wrapper if the string contains "$<". -- System Information: Debian Release: jessie/sid APT prefers testing APT policy: (900, 'testing'), (800, 'stable'), (600, 'unstable') Architecture: i386 (i686) Kernel: Linux 3.13-1-686-pae (SMP w/2 CPU cores) Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1) Shell: /bin/sh linked to /bin/dash Versions of packages libreadline6 depends on: ii libc6 2.18-4 ii libtinfo5 5.9+20140712-2 ii multiarch-support 2.18-4 ii readline-common 6.2+dfsg-0.1 libreadline6 recommends no packages. libreadline6 suggests no packages. -- no debconf information -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org