1 REM Ins{nd av Anders Johnson <4001> 1989-08-21 10.35.47 (KERMIT) 10 REM RADJUST 20 REM Program av Gunnar Tidner 1981-12-12 30 ; "Ny radl{ngd:"; : INPUT R% 40 ; "Avdela efter position"; : INPUT \$ 50 IF LEN(\$) THEN H%=VAL(\$) ELSE H%=1% 60 R1%=R%+1% 70 DIM L$=256,A$=119,B$=119 80 ONERRORGOTO 90 90 ; "Infil:"; : INPUT Z1$ 100 OPEN Z1$ ASFILE 1 110 ; "Utfil:"; : INPUT Z2$ 120 ONERRORGOTO 130 130 ; "Marginal:"; : INPUT M$ 140 IF LEN(M$) THEN M$=SPACE$(VAL(M$)) 150 IF LEN(Z2$) THEN PREPARE Z2$ ASFILE 2 : L%=2 160 ONERRORGOTO 260 : REM vid filslut 170 GOSUB 330 180 INPUTLINE #1,A$ : A$=LEFT$(A$,LEN(A$)-2%) 190 IF ASC(A$)=32% THEN A$=RIGHT$(A$,2%) : GOTO 190 : REM Frontstrip 200 IF LEN(A$) THEN IF ASC(RIGHT$(A$,LEN(A$)))=32% THEN A$=LEFT$(A$,LEN(A$)-1%) : GOTO 200 : REM Strip 210 IF LEN(A$)=0% OR INSTR(1%,A$,'==') OR INSTR(1%,A$,' ') THEN GOSUB 330 : ; #L%,M$;A$ : GOTO 180 220 IF ASC(A$)=127% THEN GOSUB 330 : ; #L%,M$;A$ : GOTO 180 230 IF B% THEN L$=L$+A$ ELSE L$=L$+' '+A$ 240 IF ASC(RIGHT$(L$,LEN(L$)))=45% THEN L$=LEFT$(L$,LEN(L$)-1%) : B%=1% ELSE B%=0% 250 IF LEN(L$)>R% THEN GOSUB 370 : GOTO 250 ELSE 180 260 IF ERRCODE<>34 THEN ; "Fel nr";ERRCODE : STOP 270 GOSUB 330 280 CLOSE 1 : IF L% THEN CLOSE 2 290 ; "Utfil=";Z2$ 300 ; "Fler texter i samma format?" : GET \$ : ; \$ 310 IF (ASC(\$) AND 223%)=74 THEN 80 320 END 330 REM Avsluta stycke, Start nytt 340 IF LEN(L$) THEN ; #L%,M$;L$ 350 L$="" : B%=1% 360 RETURN 370 REM Bilda rad med l{ngd h|gst R% 380 FOR P%=R1% TO H% STEP -1% 390 IF ASC(RIGHT$(L$,P%))=32% THEN 430 400 NEXT P% 410 GOSUB 450 : REM avdela 420 RETURN 430 ; #L%,M$;LEFT$(L$,P%-1) : L$=RIGHT$(L$,P%+1%) 440 RETURN 450 REM Avdela manuellt 460 B$=LEFT$(L$,R%) : L$=RIGHT$(L$,R%+1%) 470 ; CHR$(7)"Avdela - skriv avslutande tecken!" 480 ; CHR$(127);B$ 490 INPUTLINE C$ : ; : C$=LEFT$(C$,LEN(C$)-2) 500 Q%=INSTR(1%,B$,C$) : Q%=Q%+LEN(C$)-1% 510 L$=RIGHT$(B$,Q%+1%)+L$ 520 IF ASC(L$)=32% THEN L$=RIGHT$(L$,2%) : D$="" ELSE D$="-" 530 IF ASC(L$)=45% THEN L$=RIGHT$(L$,2%) 540 ; #L%,M$;LEFT$(B$,Q%);D$ 550 ; LEFT$(B$,Q%);D$ 560 RETURN