Re: Screen blanking with RUN
Posted in 1995
>From: Simon Bunce <simonb@misslink.demon.co.uk> >Date: Fri, 28 Jul 95 10:42:40 GMT >X-Informix-List-Id: <news.15793> > >Whenever I use the RUN statement, the screen blanks while the RUN executes. >Even if I use RUN WITHOUT WAITING, there's still an appreciable pause with >a blank screen. > >Is there any way to prevent this? It's a bit disconcerting for our users... There are several comments to make here. (1) This behaviour is dependent on your termcap entry. If your termcap entry does not clear the screen when the terminal exits from screen mode, then you don't get this problem at all. Look for an rs or rf capability. (2) If there is an appreciable pause, this is probably because you are using C shell and you have an extensive PATH and/or .cshrc file. The C shell normally does a complete search of the PATH at startup so that it knows which commands can be executed without further searching. The Bourne and Korn shells do it on demand -- as a command is executed, they search for it and then remember where it is. Consider reducing the size of your PATH, the size of your .cshrc file, or switching to a civilized shell. (3) In versions 4.14 and 6.02 of I4GL, the RUN command has been extended to include 'IN LINE MODE' or 'IN FORM MODE'. For example: RUN cmd IN LINE MODE RUN cmd IN FORM MODE WITHOUT WAITING The first option means that the terminal is reset to 'line mode', which is what you normally use when typing commands to the shell. This will blank the screen if your termcap entry dictates that. This is the default behaviour, of course, because that is what happens in previous releases. The IN FORM MODE version means that the program is run without resetting the terminal characteristics. That means that programs can be run in background without the screen being blanked. (4) The same options can be used with reports when piping the report to a program. The difference is that the default behaviour for reports is 'IN FORM MODE', again because of backwards compatability. (5) Note that using these options in the p-code system means that the p-code can only be run by a 4.14 or 6.02 p-code interpreter. This is enforced because if the program uses these operations, the generated p-code version is either 414 or 602, whereas if there are no such operations, the p-code versions are 8 or 10. (6) That is a slight over-simplification -- there are other things which can cause a p-code version switch. Read the release notes carefully when you get the new version. Yours, Jonathan Leffler (johnl@informix.com) #include <disclaimer.h>