// Expand width of current "column" by incrementing all tabs to right // Ian Binnie 14/06/2001 // Ian Binnie 21/10/2001 // ian_binnie at optusnet dot com dot au ( replace "at" "dot" by the normal characters.) // Add tab at right if necessary // based on TABUMAT.VDM by Christian Ziemski // Save_Pos() // remember file position #30=Buf_Num // Current Edit Buffer #105=Cur_Col // current cursor column Out_Reg(103) // redirect output to Reg.103 Config_Tab() // Current tabs Out_Reg(CLEAR) #31=BUF_FREE // temporary bufer Buf_Switch(#31) reg_ins(103) Replace("|n", "", BEGIN+ALL+NOERR) bof Out_Reg(103) // redirect output to Reg.103 Repeat (33) { #103 = Num_Eval(ADVANCE) if(Chars_Matched == 0) {break} if (#103 >= #105) // increment tabs to right of current column { #103+=1 } Num_Type(#103, NOCR) #104 = #103 // at end 104 is largest tab } if (#105 > #104) // new tabs at current column { Num_Type(#105, NOCR) } Out_Reg(CLEAR) Buf_Quit(OK) buf_switch(#30) Reg_Set(103,"Config_Tab(", INSERT) // command begin -> R.103 Reg_Set(103,")", APPEND) // command end -> R.103 Call(103) // execute the built command Restore_Pos() // back to old position