home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / misc / volume30 / qdos_utils / part01 / unquill.c < prev   
Encoding:
C/C++ Source or Header  |  1992-07-06  |  1.2 KB  |  58 lines

  1. #include <stdio.h>
  2.  
  3. /* usage: ex unquill,from,to */
  4.  
  5. char _prog_name[] = "unquill";
  6.  
  7. long main()
  8. {
  9.     register int    linelen, wordlen;
  10.     register int    c;
  11.     char     word[256];
  12.     char     *wp;
  13.  
  14.     wp      = word;
  15.     linelen = wordlen = 0;
  16.  
  17.     while((c = getchar()) != EOF)
  18.     {
  19.         switch(c)
  20.         {
  21.             case(0x9):
  22.             case(' '):
  23.                 if((linelen += (wordlen + 1)) < 78)
  24.                 {
  25.                     *wp     = 0;
  26.                     printf("%s ", word);
  27.                     wordlen = 0;
  28.                     wp      = word;
  29.                 }
  30.                 else
  31.                 {
  32.                     *wp = 0;
  33.                     printf("\n%s ", word);
  34.                     linelen = wordlen + 1;
  35.                     wordlen = 0;
  36.                     wp = word;
  37.                 }
  38.                 break;
  39.  
  40.             case(0x0):
  41.                 *wp = 0,
  42.                 printf("%s\n", word);
  43.                 linelen = wordlen = 0;
  44.                 wp = word;
  45.                 break;
  46.  
  47.             default:
  48.             {
  49.                 if(c > ' ')
  50.                     *wp++ = c, ++wordlen;
  51.                 break;
  52.             }
  53.         }
  54.     }
  55.     puts("");
  56.     return(0);
  57. }
  58.