This is a handy batch file that does a simple thing, fix documents that have entire paragraphs on one line. Many of the utilities out there simply break lines at a particular column without regard to words, this batch/QBasic program only wraps lines between words.
The input file should be a normal text file and the output file must be a different name and valid. CON and PRN work for viewing and printing files but CON|MORE does not work (batches aren't redirectable).
The wrap position is fixed at column 77, edit the batch to change. It would be easy to alter the batch to take an extra parm for position, just change 'p=77' to 'p=%3' but don't forget to use it, probably should also change the initial idiot-checks. I prefer it fixed.
:: WORDWRAP.BAT - by Terry Newton :: Usage: wordwrap infile.ext outfile.ext :: Wraps long lines in text files, set to wrap at column 77, :: change the 'p=77' part to wrap at a different position. :: Uses QBASIC @echo off if .%2==. echo %0 infile outfile if .%2==. goto end if not exist %1 echo file not found if not exist %1 goto end echo >wwt$.bas :on error goto done echo>>wwt$.bas open "%1" for input as #1:open "%2" for output as #2 echo>>wwt$.bas loopm:line input #1, a$:if a$="" then print #2,"":goto loopm echo>>wwt$.bas loop0:p=77:if sgn(p-len(a$)+1)=1 then print #2,a$:goto loopm echo>>wwt$.bas loop1:if mid$(a$,p,1)=" " then goto cut echo>>wwt$.bas p=p-1:if p=0 then print #2,a$:goto loopm echo>>wwt$.bas goto loop1 echo>>wwt$.bas cut:print #2,left$(a$,p-1):a$=right$(a$,len(a$)-p):goto loop0 echo>>wwt$.bas done:close #1:close #2:system qbasic /run wwt$.bas del wwt$.bas :end