[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference bulova::decw_jan-89_to_nov-90

Title:DECWINDOWS 26-JAN-89 to 29-NOV-90
Notice:See 1639.0 for VMS V5.3 kit; 2043.0 for 5.4 IFT kit
Moderator:STAR::VATNE
Created:Mon Oct 30 1989
Last Modified:Mon Dec 31 1990
Last Successful Update:Fri Jun 06 1997
Number of topics:3726
Total number of notes:19516

1907.0. "Dir name on the 25th line?" by CXCAD::CHAMBON (Chuck Chambon, 719-632-8413) Wed Dec 13 1989 21:00

In a DECterm window you have the option of displaying a 25th line for messages
from the host.  I want to continuously display the current default directory
on this 25th line.  It would be nice, but not necessary, to display the node 
name and device name as well.  Can anyone share this information with me?

Any help would be appreciated,

Chuck 
T.RTitleUserPersonal
Name
DateLines
1907.1How about the title bar?STAR::MFOLEYRebel Without a ClueWed Dec 13 1989 23:4536
       
       
       	Why not put it in the Title Bar?  Here's a command procedure
       that works under VMS 5.3/DECwindows V2. I just @ the command
       procedure passing a value for P1 and optionally for P2. This
       also allows you to change the Icon name.
       
       
       							mike
       
       SET_VT220.COM
       -------------------------------------------------------------------
$ OSC[0,8] = 157
$ ST[0,8]  = 156
$ Echo = "Write Sys$Output "
$!
$ If P1 .eqs. "ICON"     then Echo OSC,"2L;",P2,ST
$ If P1 .eqs. "ICON1"     then Echo OSC,"2L;",F$GetSYI("NodeName"),ST
$ If P1 .eqs. "BANNER"     then Echo OSC,"21;",P2,ST
$ If P1 .eqs. "BANNER2"    then Echo OSC,"21;Node: ", F$GetSYI("NodeName"),"  �",F$GetJPI("","PRCNAM"),"�  (",F$GetJPI("","PID"),")",ST
$ If P1 .eqs. "BANNER3"    then Echo OSC,"21;",F$GetSYI("NodeName"),"::",F$ENVIROMENT("DEFAULT"),"","   (",F$GetJPI("","PRCNAM"),")",ST
$ If P1 .eqs. "BANNER4"    then Echo OSC,"21;",F$GetSYI("NodeName"),"::",F$ENVIROMENT("DEFAULT"),"",ST
$!
$!---------------------------VWS Only-----------------------------------------
$!
$ If P1 .eqs. "SHRINKX"    then Echo OSC,"22;",P2,";",P3,ST
$ If P1 .eqs. "SHRINK"     then Echo OSC,"22;",P2,";",P3,ST
$ If P1 .eqs. "EXPAND"     then Echo OSC,"23;",P2,";",P3,ST
$ If P1 .eqs. "MOVE_TERM"  then Echo OSC,"24;",P2,ST
$ If P1 .eqs. "MOVE_ICON"  then Echo OSC,"25;",P2,ST
$ If P1 .eqs. "PUSH"       then Echo OSC,"29",ST
$ If P1 .eqs. "POP"        then Echo OSC,"2A",ST
$ If P1 .eqs. "FONT"       then Echo OSC,"2f;",P2,";",P3,";",P4,ST
$!----------------------------------------------------------------------------
$ Exit                                        
       
1907.2Here's how to set the status lineHANNAH::MESSENGERBob MessengerThu Dec 14 1989 13:2612
Re: .0

Here's a quick and dirty command procedure to set the status line (25th line in
a 24 line window) to the first parameter passed to the procedure:

$ esc[0,8] = 27
$ write sys$output "''esc'[2$~''esc'[1$}''p1'''esc'[$}"

Setting the title is probably more reliable, though, since some escape
sequences will clear the status line.

				-- Bob
1907.3DigressionMELTIN::dickGvriel::SchoellerFri Dec 15 1989 13:205
f$getsyi("nodename") is only useful if you are in a cluster.  You can also
use f$logical("sys$node") which will work anytime decnet is running (though
you do need to stip the colons).

Dick
1907.4NitBOMBE::MOOREBaN CaSe_sEnSiTiVe iDeNtIfIeRs!Fri Dec 15 1989 20:265
    re: f$getsyi("nodename") is only useful if you are in a cluster.
    
    Actually, it's useful anytime the SYSGEN parameter SCSNODE is not
    blank.  VAXcluster member nodes are required to have this name filled
    in, non-clustered systems have the option of setting it, or not.
1907.5Beware of SCSNODE changesDDIF::MUNYANSteve Munyan, ZK2-2/O23, DTN 381-2264Mon Dec 18 1989 08:5615
    If you change the value of SCSNODE be ready for your batch queues to
    bomb out the next time you restart them.  The error you get will say
    something about the node being unreachable or something such.
    
    If I remember there are two ways to correct the problem:
    
    	1) Rebuild the queue file (not desirable)
    
    	2) add a /ON qualifier to the batch init command.
    
    Steve
    Who hit this about 1 1/2 years ago.
    
    Steve
    
1907.6Clearing the status line?FEATHR::BLUEJAYRemember when people put thier names here?Mon Dec 18 1989 13:1010
Stoopid question about the escape sequence in .2 -

>>> $ write sys$output "''esc'[2$~''esc'[1$}''p1'''esc'[$}"

This sequence seems to just add to the status line; What's the
sequence to clear it? Or let me overwrite what's already there?

				- Bluejay Adametz

[I know, I know; I don't have a FM]
1907.7How to clear the previous status lineHANNAH::MESSENGERBob MessengerMon Dec 18 1989 14:1734
Re: .6

>>> $ write sys$output "''esc'[2$~''esc'[1$}''p1'''esc'[$}"
>
>This sequence seems to just add to the status line; What's the
>sequence to clear it? Or let me overwrite what's already there?

Maybe I should explain the sequences I used.  The <esc>[2$~ enables
the host-writable status line, and <esc>[1$} selects the status line as
the active display, i.e. it moves the cursor into the status line.
Once the cursor is in the status line it acts more or less as if it were in a
separate window, so you can use escape sequence to clear to end of line,
cursor positioning, set or resets modes and graphic renditions, etc, and
the cursor will still be in the status line.  <esc>[$} puts the cursor
back in the main display.

To erase the status line and then write your text you could send 
a carriage return and a line feed before your text; this will put the
cursor at the start of the status line and then scroll it (which will
erase it, since the status line display is only 1 line high).

$ esc[0,8] = 27
$ cr[0,8] = 13
$ lf[0,8] = 10
$ write sys$output "''esc'[2$~''esc'[1$}''cr'''lf'''p1'''esc'[$}"

You could also rely on the terminal driver to send the carriage return and
line feed for you, by writing this as two lines of output instead of one:

$ esc[0,8] = 27
$ write sys$output "''esc'[2$~''esc'[1$}"
$ write sys$output "''p1'''esc'[$}"

				-- Bob