Annotation of 42BSD/usr.lib/lib2648/escseq.c, revision 1.1.1.1

1.1       root        1: /*     escseq.c        4.1     83/03/09        */
                      2: /*
                      3:  * escseq: get us out of any escape sequence we are in the middle of
                      4:  * and put us into the requested kind of escape sequence.
                      5:  */
                      6: 
                      7: #include "2648.h"
                      8: 
                      9: escseq(mode)
                     10: int mode;
                     11: {
                     12:        if (mode == _escmode)
                     13:                return;
                     14:        /* Get out of previous mode */
                     15:        switch (_escmode) {
                     16:        case NONE:
                     17:                break;
                     18:        case ESCD:
                     19:                if (mode == TEXT) {
                     20:                        outchar('s');
                     21:                        _escmode = mode;
                     22:                        return;
                     23:                }
                     24:        case ESCP:
                     25:        case ESCM:
                     26:                outchar('Z');   /* no-op */
                     27:                break;
                     28:        case TEXT:
                     29:                outstr("\33*dT");
                     30:                break;
                     31:        }
                     32:        /* Get into new mode */
                     33:        switch (_escmode = mode) {
                     34:        case NONE:
                     35:                break;
                     36:        case ESCD:
                     37:                outstr("\33*d");
                     38:                break;
                     39:        case ESCP:
                     40:                outstr("\33*p");
                     41:                break;
                     42:        case ESCM:
                     43:                outstr("\33*m");
                     44:                break;
                     45:        case TEXT:
                     46:                outstr("\33*dS");
                     47:                break;
                     48:        }
                     49: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.