MOVE_VERTICAL Moves the active editing position up or down in the current buffer by the number of rows specified. Syntax MOVE_VERTICAL (integer) Parameters integer The number of rows the editing position moves. Positive values are down (toward the bottom of the buffer). Negative values are up (toward the top of the buffer). Comments By default, TPU keeps the cursor at the same offset on each line. However, since TPU counts a tab as one character, regardless of how wide the tab is, the column position of the cursor may vary greatly from line to line even though the offset is the same. To keep the cursor in approximately the same column on each line, use the following statement: SET (COLUMN_MOVE_VERTICAL, ON); This statement directs TPU to keep the cursor in the same column unless a tab character makes this impossible. If a tab occupies the column position, TPU moves the cursor to the beginning of the tab. Example The following procedure moves the current character position by eight-line sections and puts the cursor at the start of a line: PROCEDURE user_move_by_lines IF CURRENT_DIRECTION = FORWARD THEN MOVE_VERTICAL (+8); ! down a section ELSE MOVE_VERTICAL( -8); ! up a section ENDIF; MOVE_HORIZONTAL (-CURRENT_OFFSET); ! go to start of line ENDPROCEDURE; Related topics CURSOR_VERTICAL MOVE_HORIZONTAL SET(COLUMN_MOVE_VERTICAL)