Annotation of freem/contrib/%KEY.m, revision 1.1

1.1     ! snw         1: %KEY(to,mode) ; A.Trocha ; keyb-handler [1999/01/29- 6:01:56]
        !             2:        ; $Source: /cvsroot-fuse/gump/FreeM/mlib/%KEY.m,v $
        !             3:        ; $Revision: 1.2 $ $Date: 2000/02/18 15:13:41 $
        !             4:        ; <to> timeout (sec) default: no timeout
        !             5:        ; <mode> 0 or "" or n.d : return values
        !             6:        ;        1 : interpret
        !             7:        ;
        !             8:        N buf,x,exec
        !             9:        ;
        !            10:        S to=$G(to)
        !            11:        I to="" S to=-1,exec="R *x"
        !            12:        E  S exec="R *x:"_to
        !            13:        ;
        !            14:        S buf=""
        !            15:        ;
        !            16: get    X exec I '$T Q ""
        !            17:        ;
        !            18:        D add(x)
        !            19:        ;
        !            20: loop   R *x:0 I '$T G interp
        !            21:        D add(x)
        !            22:        G loop
        !            23:        ;
        !            24: interp ;--- interpret buffer and return string
        !            25:        I $G(mode)=1 Q $$^%KEYINT(buf)
        !            26:        Q buf
        !            27:        ;
        !            28: add(x) ;--- add key-value to buffer
        !            29:        I buf'="" S buf=buf_"-"
        !            30:        S buf=buf_x
        !            31:        Q

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>