( SSP -- Replace Multiple Blank Lines with a Single Blank Line )

( Use:
	fo rth
	s" ssp" included
	s" _filename_" input constant in
	s" _newfilename_" output constant out
	out display   in ssp   0 display   out closed

   or:
	fo rth ssp _filename_ > _newfilename_
)

: SSP                           ( fileid -- )
	false swap FILTER               ( flag)
		GET-LINE -TRAILING     ( flag line .)
		dup if
			TYPE CR ( flag)
			drop true
		else
			2DROP ?? CR     ( )
			false
		then                    ( flag)
	UNFILTER                        drop
;

ARGUMENT ( s .) dup if   s" input SSP BYE" evaluate   then   2drop ( )
