Re: 4gl 'error' gives reverse video on entire screen
Posted in 2008
On Dec 8, 7:23 am, Ian Goddard <godda...@hotmail.co.uk> wrote:
> loc wrote:
> > On Dec 7, 7:02 pm, Ian Goddard <godda...@hotmail.co.uk> wrote:
> >> loc wrote:
> >>> I'm using Informix 4GL 7.32.UC4 on Slackware Linux 12.1 and any time
> >>> the 4gl 'error' command is executed the entirescreengoesreverse
> >>> video. It only does this if I set INFORMIXTERM=terminfo. I need this
> >>> because function keys don't work unless I use terminfo. It also does
> >>> thereversevideo on the entirescreenif I press a function key which
> >>> does not have an 'on key' associated with it. Any ideas what is
> >>> causing this display problem? I'm using TERM=xterm.
> >> Do you mean it just goesreversefor a moment and then back to normal?
> >> If so that sounds like xterm's visual bell. Application sends the BEL
> >> char. xterm doesn't know how to go "ding" so it flashes thescreeninstead.
>
> >> --
> >> Ian
>
> >> Hotmail is for spammers. Real mail address is igoddard
> >> at nildram co uk
>
> > No it stays in reverse, I have to exit the program and type 'reset' to
> > get normal color back. What you suggest does sound like a
> > possibility, I'll investigate how to turn off the bell and see if
> > that's it. It does this anytime an invalid key is pressed so I think
> > you may be on to something.
>
> Go into vi and hit ESC without being in insert mode. If the same thing
> happens, even if it's supposed to be off then (a) it is a visual bell
> and (b) xterm's mishandling it.
>
> You could also try some other terminal emulator such as gnome-terminal.
>
> --
> Ian
>
> Hotmail is for spammers. Real mail address is igoddard
> at nildram co uk
I found the problem, as Ian pointed out it was the visual bell. Here
is what I did to fix it so when the bell should sound it won't go into
reverse and stay there.
$ infocmp -L > xterm.terminfo
Modified the generated xterm.terminfo file and changed
flash_screen=\\E[?5h$<100/>\\E[?5l
to
flash_screen=^G
$ tic -s xterm.terminfo
This put my modified terminfo xterm in ~/.terminfo.
Now I get the bell sound and the screen doesn't go into reverse. Does
anyone know why the 4GL programs are using flash_screen= instead of
bell= in the xterm terminfo file.