Next: , Previous: Label Lines, Up: Output Format   [Contents][Index]

3.5 Description Lines

Description lines begin with the double-quote, ‘"’:

" Move the cursor up 2 lines.

Sequences of description lines are generally preceded by a label line (unless the -L option was supplied), and describe the same control function labeled by that line. More than one description line may be used to describe a function, whereas only one label line is ever used for a control function.

It is important to understand that the descriptions provided are only approximations and guesses, and suffer from various limitations. The behavior of many control functions are dependent on terminal state that Teseq does not track. Teseq chooses a common default setting for applicable terminal modes, and issues a description based on that. For instance, the INSERT LINE function is described as follows:

: Esc [ 2 L
" Shift lines after the cursor to make room for 2 new lines.

However, depending on the current setting of the LINE EDITING MODE, the actual behavior might be to shift the lines before the cursor, rather than the ones after. Future versions of Teseq may track enough terminal state to improve the accuracy of these descriptions (see Future Enhancements), but they would still need to guess at the initial state of the terminal, for any modes that had not been explicitly set or reset.

Descriptions are also often inaccurate. For instance, the description for INSERT LINE should really read “shift the current line and the lines after the cursor…”. In addition, no mention is made of the fact that the extent of the shifted part is dependent on previous invocations of SELECT EDITING EXTENT. A conscious decision has been made to value brevity over accuracy.

Also, the descriptions are based (loosely) on the semantics defined by Ecma-48 / ISO/IEC 6429. There is no guarantee that this corresponds to the semantics defined for the actual terminal on which these functions were invoked. The terminal may have different behavior, or may not even accept the function. The descriptions are intended as a rough aid in remembering what a given function does; to really understand the actual semantics of a function, you should read the terminal device’s documentation, and/or Ecma-48 / ISO/IEC 6429.

Future versions of Teseq may use description lines to describe things besides escape sequences; for instance, control characters or control strings, or other strings that may be interpreted specially by some devices or applications.

Some description lines may appear without a preceding label line (even when -L was not specified), in the event that no standard designation for the function is known.

Next: , Previous: Label Lines, Up: Output Format   [Contents][Index]