CREATE_RANGE Returns a range that includes two delimiters and all the characters between them, and sets the video attributes for displaying the characters when they are visible on the screen. A range delimiter can be a marker, the beginning or end of a line, or the beginning or end of a buffer. The beginning and ending delimiters do not have to be of the same type. Syntax range := CREATE_RANGE ({marker1 | delimiting_keyword}, {marker2 | delimiting_keyword} [, attribute_keyword]) Parameters marker1 The marker marking the point in the buffer where the range begins. marker2 The marker marking the point in the buffer where the range ends. delimiting_keyword A keyword indicating the point in the buffer where you want the range to begin or end. The valid keywords and their meaning are as follows: Keyword Meaning ------- ------- LINE_BEGIN The beginning of the current buffer's current line. LINE_END The end of the current buffer's current line. BUFFER_BEGIN Line 1, offset 0 in the current buffer. This is the first position where a character could be inserted, regardless of whether there is a character there. This is the same as the point referred to by BEGINNING_OF (CURRENT_BUFFER). BUFFER_END The last position in the buffer where a character could be inserted, regardless of whether there is a character there. This is the same as the point referred to by END_OF (CURRENT_BUFFER). attribute_keyword The video attribute for the range: BLINK, BOLD, NONE, REVERSE, or UNDERLINE. If you omit the parameter, the default is NONE. Comments If a marker defining a range is a free marker, DECTPU creates a new bound marker, tied to the character or end-of-line nearest to the free marker, to use as the range delimiter. Note that an end-of-line is not a character, but is a point to which a marker can be bound. Examples 1. my_range := CREATE_RANGE (first_marker, second_marker, UNDERLINE); Creates a range starting at FIRST_MARKER and ending at SECOND_MARKER. If the range is visible on the screen, the characters in it are underlined. 2. the_range := CREATE_RANGE (BUFFER_BEGIN, mark2, REVERSE); Creates a range starting at the first point in the buffer where a character can be inserted and ending at the point marked by MARK2. If the range is visible on the screen, the characters in it are highlighted with the reverse video attribute. Related Topics MARK MODIFY_RANGE