	pro rem_lf,filter=filter,overwrite=overwrite,file=file, $
		all_files=all_files,path=path,confirm=confirm

;	Removes the Line Feed codes in the file.
;	This routine is used to convert files from MS WINDOWS to UNIX
;	format.


		if n_elements(filter) le 0 then filter='*.*'


if n_elements(all_files) le 0 then all_files=0

if n_elements(file) le 0 then file='' else path=subdir(file)

	CASE !version.OS OF

'windows':	Delim='\'

'Win32':	Delim='\'

ELSE:		Delim='/'

	ENDCASE


if file eq '' then path=''; getenv('gr_prg')	;''

CR='0A'xb	&	LF='0D'xb


	if keyword_set(all_files) then begin

path=subdir(pickfile(filt=filter,tit='Please select a file for converting'))

if path ne '' then Files=findfile((path)+Delim+filter) else $
	Files=findfile(filter)

;	****************** Excluding subdirectories **************

Files=Files(sort(Files))	&	Sz=size(Files)

if (Sz)(0) gt 0 then Sz=Sz(1) else Sz=0

for j=0,Sz-1 do if strmid(Files(j),strlen(Files(j))-1,1) eq '\' then $
	if n_elements(b) le 0 then b=j else b=[b,j]

N_b=n_elements(b)

	if N_b gt 0 then begin
Files_save=Files(b)
for j=0,N_b-1 do Files=Files(where(Files ne Files_save(j)))
	endif

;	***********************************************************

	IF keyword_set(confirm) THEN BEGIN

Print,'y/n:'

N_b=n_elements(Files)

index=intarr(N_b)

	for j=0,N_b-1 do begin
print,Files(j)+'?'
tmp=strlowcase(get_kbrd(1))
index(j)=tmp eq 'y'
	endfor

Files=Files(where(index))

		ENDIF ELSE BEGIN

a=''
xquestion,a,text='You are processing all the files '+path+'\'+filter, $
	select=['OK','Cancel']

		if a ne 'OK' then begin
	print,'Operation is canceled'
	goto,exit
		endif
		ENDELSE
	endif else begin


if path ne '' then Files=pickfile(tit='Please select a file for converting', $
	filt=filter, file=file, path=path) else $
		Files=pickfile(tit='Please select a file for converting', $
	filt=filter, file=file)

if Files eq '' then goto,exit

	endelse

Loop:

	for k=0,n_elements(Files)-1 do begin

openr,lun,Files(k),/get_lun
a=fstat(lun)

if a.size eq 0 then goto,No_operation

x=bytarr(a.size)
readu,lun,x
free_lun,lun

WIDGET_CONTROL,/hourglass

x=x(where(x ne LF))


if not keyword_set(overwrite) then $
	Newfilename=path+Delim+(name_extract(Files(k)))(1)+'.lfr' $
		else Newfilename=Files(k)

openw,lun,Newfilename,/get_lun

writeu,lun,x

free_lun,lun

print,'File '+Newfilename+' is recorded.'

No_operation:

	endfor

exit:
end