procedure eveplus_transpose local here,char_range; move_horizontal(-1); here := mark(NONE); char_range := create_range(mark(NONE),mark(NONE),NONE); position(eve$x_char_buffer); erase(eve$x_char_buffer); copy_text(char_range); position(here); move_horizontal(1); set(insert,current_buffer); eve$x_restore_char := create_range(beginning_of(eve$x_char_buffer), mark(NONE),NONE); copy_text(eve$x_restore_char); endprocedure