********* * * This definition will repeat the key that is hit next until * another key is hit or an error occurs while executing the given * key. * * Trick Tests to see if the next key is a printable key or not. * if the key is printable then the condition for * [if next key in] '-' * is satisfied and flag 250 is set. * * Then this definition enters on the command line * ex [do] [update] '\#' [loop] * for printable keys. Where # is the decimal ASCII * code that is returned by [key name] if the next * key is a printable key. * * Or * ex [do] [update] [execute key keyname] [loop] * for non-printable keys. Where keyname is the * name returned by [key name] for non-printable * keys. * * ********* DEF a-enter = [data cursor] DEF a-enter + [error 1] 'Hit key to be repeated' DEF a-enter + [clear flag 250] DEF a-enter + [if next key in] '-' DEF a-enter + [set flag 250] DEF a-enter + [end if] DEF a-enter + [command cursor] [delete line] DEF a-enter + [key name] DEF a-enter + [begin line] [insert mode] DEF a-enter + 'exec [do] [update] ' DEF a-enter + [if flag 250] DEF a-enter + '\'\\' [end line] '\'' DEF a-enter + [else] DEF a-enter + '[exec key ' [end line] ']' DEF a-enter + [end if] DEF a-enter + ' [loop]' DEF a-enter + [execute]