Annotation of researchv10no/cmd/dict/colthread.c, revision 1.1

1.1     ! root        1: /* remove formatting information from collins thesaurus entries */
        !             2: #include <stdio.h>
        !             3: #include "/usr/jerq/include/jioctl.h"
        !             4: 
        !             5: int linesize = 65;
        !             6: struct winsize winsize;
        !             7: 
        !             8: main()
        !             9: {
        !            10:        int c, d, n;
        !            11:        if(ioctl(1,JWINSIZE,&winsize)==0)
        !            12:                linesize = winsize.bytesx;
        !            13:        for(;;) {
        !            14:                c = getchar();
        !            15:                switch(c) {
        !            16:                case EOF:
        !            17:                        return(0);
        !            18:                case '*':
        !            19:                        c = getchar();
        !            20:                        if(c=='S') {
        !            21:                                put('(');
        !            22:                                put(getchar());
        !            23:                                put(')');
        !            24:                        }
        !            25:                        break;
        !            26:                case '#':
        !            27:                        c = getchar();
        !            28:                        switch(getchar()) {
        !            29:                        case '1': put('\'');
        !            30:                        case '2': put('`');
        !            31:                        case '3': put('^');
        !            32:                        case '4': put('"');
        !            33:                        case '5': put(',');
        !            34:                        }
        !            35:                        put('\b');
        !            36:                        put(c);
        !            37:                        break;
        !            38:                case '+':
        !            39:                case '<':
        !            40:                        break;
        !            41:                default:
        !            42:                        put(c);
        !            43:                }
        !            44:        }
        !            45: }
        !            46: 
        !            47: char word[50];
        !            48: int linelen, wordlen;
        !            49: 
        !            50: put(c)
        !            51: int c;
        !            52: {
        !            53:        word[wordlen++] = c;
        !            54:        switch(c){
        !            55:        case '\b':
        !            56:                wordlen -= 2;
        !            57:                break;
        !            58:        case '-':
        !            59:        case ' ':
        !            60:                putword();
        !            61:                break;
        !            62:        case '\n':
        !            63:                putword();
        !            64:                newline();
        !            65:                break;
        !            66:        }
        !            67: }
        !            68: 
        !            69: newline()
        !            70: {
        !            71:        putchar('\n');
        !            72:        linelen = 0;
        !            73: }
        !            74: 
        !            75: putword()
        !            76: {
        !            77:        word[wordlen] = 0;
        !            78:        if(linelen+wordlen > linesize-2)
        !            79:                newline();
        !            80:        printf("%s", word);
        !            81:        linelen += wordlen;
        !            82:        wordlen = 0;
        !            83: }

unix.superglobalmegacorp.com

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