; Moveit.11 11/2/83 :SS 50 45 5 5 5 80 159 5 :PR "#1/#13/#13/#13/Do you wish to:#13/" :PR " 1 Delete Columns#13/" :PR " 2 Exchange Columns#13/" :PR " 3 Retain Columns#13/" :PR " 4 Insert Columns from Disk#13/" :PR " 5 Expand Columns#13/" :PR " 6 Exit#13/#13/" :PR "WHICH ? " :%D = "Y" :RK %1 :%A="#0/#3/#5/#5/#5/#5/#5/#5/#5/#5/#5/#5/#5/#5/#5/#5/" :%B="#3/#6/************************************" :ON %1-52 / 142 / ;4 :ON %1-53 / 191 / ;5 :ON %1-54 / 266 / ;6 :ON %1-51 / 22 / ;3 :ON %1-50 / 22 / ;2 :ON %1-49 / 22 / ;1 :ON -1 3 ; :CP ;Refresh display ; :PR "%A#6/Ãõòóïò ôï Æéòóô Ðïóéôéïî ¦ óôòéëå ãïîôéîõå" :PR "%A%B" :CM ;Return cursor to text position :EE 29 ;Allow edit :CM :%2 = $2 ;Record first column :PR "%A#6/Ãõòóïò ôï Æéîáì Ðïóéôéïî ¦ óôòéëå ãïîôéîõå" :CM :EE 34 :CM :%3 = $2 ;Record last column ; :PR "%AÆïò áìì òï÷ó éî äïãõíåîô ¨Ù¯Î©¿#6/ " :IN %C :ON %D%C / 48 / ;If not all rows ;THEN WHICH ONES? :PR "%AÃõòóïò ïî æéòóô òï÷ áîä óôòéëå ãïîôéîõå#6/" :EE 43 :%5 = $3 - 1 ;Record first row (-1) :PR "%AÃõòóïò ïî ìáóô òï÷ áîä óôòéëå ãïîôéîõå#6/" :EE 46 :%6 = $3 ;Record last row :ON -1 53 ;ELSE FIRST THRU LAST ROWS :%5 = 0 ;First row (-1) E :%6 = $3 -1 ;Last row T ; :%9 = 56 ;Square off rows from %5+1 to %6 over to column %3 :ON -1 244 t/f%5 :ON %1-51 / 119 / ;3 These all share %2, %3, %5, %6, and 244 :ON %1-50 / 85 / ;2 call. :ON %1-49 / 62 / ;1 ; ;****** MAJOR ROUTINES ****** ;DELETE COLUMNS t/f%5 ;Position to first row :CM ;Loop ; :MC %3+1 ;Delete specified columns s//^/ :MC %2 d :cm b0 ;Keep display pretty ; ; ; f1 ; :ON $3-%6 / / 266 ;IF beyond last row or to end of text, :ON ?-3 / 266 / ; THEN Exit-loop by returning to menu ; :ON -1 65 ;END-LOOP ; ; ;EXCHANGE COLUMNS :PR "%AÃõòóïò ôï Éîóôáìì Ðïóéôéïî ôèåî Ãïîôéîõå" :PR "%A%B" :EE 88 :%4 = $2 ;Record install column :%7 = %4 ;Permanently! :ON %4-%2 92 92 / ;Not allowed to put a column in the middle of itself :ON %4-%3 266 266 / t/f%5 ;To first row of column to be moved :cp ;Exchange loop :MC %3+1 ;Pick up column text (in current row) s//^/ :MC %2 h0/h/s/?// ; and erase mark ; :%4 = %7 :ON %4-%2 103 103 / :%4 = %7 - %3 + %2-1 ;If move is to the right, then adjust for that fact :MC %4 ;Put it down in the correct spot U :cm B0 ;Keep display pretty ; ; ; f1 ;Advance a row ; :ON $3-%6 / / 114 ;If beyond last row or to end of text, then exit loop :ON ?-3 94 / 94 t/f%5/h0 ;Back to first row of column of data to be moved & clr :ON -1 266 ; hold ; ; ;RETAIN COLUMNS e :%0 = $3 ;Record # of rows in text (row # of last one) t/f%5 ;set starting row :MC %3+1 ;Pickup portion of row to save s//^/ :MC %2 :%F = !^ ; :%4 = $3 ;Record current row # ; e ;Drop at end of text terminated by s//%F