'===========================================================================
' Subject: CONCATENATES ASCII TEXT            Date: Unknown Date           
'  Author: Jesu's Lozano                      Code: QB, QBasic, PDS        
'  Origin: comp.lang.basic.misc             Packet: TEXT.ABC
'===========================================================================
Delim$ = " ,;()?" + CHR$(9) + CHR$(34)
cade$ = LTRIM$(RTRIM$(COMMAND$))
IF MID$(cade$, 2, 1) = " " THEN
		SELECT CASE LEFT$(cade$, 1)
		CASE "S", "s": mete$ = CHR$(32)
		CASE "T", "t": mete$ = CHR$(9)
		CASE ELSE:  mete$ = LEFT$(cade$, 1)
		END SELECT
		cade$ = RIGHT$(cade$, LEN(cade$) - 2)
END IF
largo = LEN(cade$)
DIM token$(largo)
IF INSTR(cade$, ".") = 0 OR largo < 5 THEN
		PRINT "[ Concatenate ascii text or data files horizontally, line by line ]"
		PRINT "Price: 0 Registration: OFF Bugs: ON Author: lozano@etsiig.uniovi.es"
		PRINT "Usage: joint [S,T] file1 file2 [...file68] >out (Space;Tab;file>?.)"
ELSE
		FOR z = 1 TO largo
				char$ = MID$(cade$, z, 1)
				IF char$ = ">" OR char$ = "<" THEN EXIT FOR
				IF INSTR(Delim$, char$) <> 0 THEN
						flag = 0
				ELSE
						IF flag = 0 THEN i = i + 1
						flag = 1: token$(i) = token$(i) + char$
				END IF
		NEXT z
		FOR k = 1 TO i
				OPEN token$(k) FOR INPUT AS #k
		NEXT k
		DO
				linea$ = "": kount = 0
				FOR k = 1 TO i
						temp$ = ""
						IF LEN(token$(k)) > 1 THEN LINE INPUT #k, temp$
						linea$ = linea$ + mete$ + temp$
				NEXT k
				PRINT linea$
				FOR k = 1 TO i
						IF EOF(k) <> 0 THEN
								token$(k) = "": kount = kount + 1
						END IF
				NEXT k
		LOOP UNTIL kount >= i
END IF
FOR i = -2 TO 5
		SOUND 440 * (2 ^ (i - 10 / 12)), .6
NEXT i
END
