home *** CD-ROM | disk | FTP | other *** search
/ Frostbyte's 1980s DOS Shareware Collection / floppyshareware.zip / floppyshareware / USCX / TURBO-06.ZIP / STRIPTAB.PAS < prev    next >
Pascal/Delphi Source File  |  1985-02-23  |  2KB  |  66 lines

  1. {.HE Striptab - J. Wichman}
  2. {.PL66}
  3. PROGRAM STRIPTAB;         {Strips tabs from source code
  4.                                            and rewrites the file.  }
  5.  
  6. var InFile, OutFile : text;            {Input and Output Files}
  7.   LineIn, OutLine : string[255];       {Input and Output lines}
  8.  
  9. const tab = ^I;                        {Define a 'tab'}
  10.  
  11. {.cp10}
  12. procedure StartIO;                     {Opens files, etc.}
  13.   var Xoutput, Xinput: string[14];
  14. begin;
  15.   writeln
  16.     (con,'STRIPTAB program (Replaces a "tab" with a "space"-  J. Wichman');
  17.   writeln(con,'');
  18.   write('Input File name: ');
  19.   BufLen := 14;
  20.   Readln(con,Xinput);
  21.   assign (InFile,Xinput);    {open input file}
  22.   reset(InFile);
  23.   write('Output file name: ');
  24.   BufLen := 14;
  25.   Readln(con,Xoutput);
  26.   assign(OutFile,xoutput);
  27. end;  {End of StartIO}
  28. {.cp10}
  29.  
  30. procedure DoStrip;
  31.   var CTab,CLine,I : integer;
  32. begin;
  33.   rewrite(OutFile);
  34.   CTab := 0; CLine := 0;
  35.   while not eof(InFile) do
  36.     begin;
  37.       Readln(InFile,LineIn);
  38.       CLine := CLine + 1;
  39.       for I := 1 to length(LineIn) do
  40.         begin;
  41.         while LineIn[I] = tab do
  42.           begin;
  43.             LineIn[I] := ' ';
  44.             CTab := CTab + 1;
  45.           end;
  46.         end;
  47.       writeln(OutFile,LineIn);
  48.     end;
  49.   writeln(con,'Lines read = ',Cline);
  50.   writeln(con,'Tabs replaced = ',CTab);
  51. end;
  52.  
  53. {.cp10}
  54. procedure closem;
  55. begin;
  56.   close (InFile);
  57.   close (OutFile);
  58. end;
  59.  
  60. {.cp10}
  61. begin                                  {The REAL program starts here.}
  62.    StartIO;
  63.    DoStrip;
  64.    closem;
  65. end.                                   {My, That was quick...}
  66.