TED v3.1 - The Editor ===================== [TED is a limited version of the Jazz v5.9 ED editor. The editor has been modifed to suit better the needs of regular HP48 users. As opposed to Jazz TED can be freely stored in any HP48 port.] TED is intended for general object and text editing. TED makes no duplicate of the edited string if it is in temporary object area, thus enabling editing very large strings. Note that this implies that no backup of the original string is kept! Note that TED is very fast but since it supports the tabulator it has to do special calculations whenever the display is scrolled. Thus scrolling the display when very long lines are present can be quite slow. Most of the normal character keys are in their normal places, others can be fetched via the special character browser. TED decompiles object to width 30, wider than the regular HP48 editor. This can be changed by storing a real number larger than 9 in variable TED.WID. To enable hooking mechanisms by external applications "ED" is an alias for TED. Special keys having different definitions are mostly in the non-alpha plane. The NS,LS,RS planes are defined as follows: +-------+-------+-------+-------+-------+-------+ |BSTART |BEND |BCOPY |BCUT | |FIND | | | | |BDEL |GREPL? |REPL? | |BLKUP |BLKDN |BSWAP |BKEEP |GREPL |REPLALL| +-------+-------+-------+-------+-------+-------+ |ARG? | |MEXEC |DFIND |UP |NEXT | |ROW? |CHR? |MSTART |CNTRINI|PGUP |PREV | |POS? |CHRCAT |MEND |CNTR |TOP |STATUS | +-------+-------+-------+-------+-------+-------+ |'' |STK |EVAL |LEFT |DOWN |RIGHT | | |BPUSH | |LWORD |PGDN |RWORD | | |RCLSTK1| |LSTART |BOTTOM |LEND | +-------+-------+-------+-------+-------+-------+ |SIN |COS |TAN |'sqrt' |^ |INV | |ASIN |ACOS |ATAN |SQ |ALOG |EXP | |'der' |'intg' |'sum' |XROOT |LOG |LN | +---------------+-------+-------+-------+-------+ |EXIT |TOGBEEP|TOGSPD |DEL |BS | | |TOGCASE|PURGE |DELLINE|BSLEFT | | |TOGOVER| |DELRGHT|BSRIGHT| +-------+---------+---------+---------+---------+ |alpha |7 |8 |9 |/ | | |SETMK7 |SETMK8 |SETMK9 |() | | |GOMK7 |GOMK8 |GOMK9 |# | +-------+---------+---------+---------+---------+ |lshift |4 |5 |6 |* | | |SETMK4 |SETMK5 |SETMK6 |[] | | |GOMK4 |GOMK5 |GOMK6 | | +-------+---------+---------+---------+---------+ |rshift |1 |2 |3 |- | | |SETMK1 |SETMK2 |SETMK3 |<<>> | | |GOMK1 |GOMK2 |GOMK3 |"" | +-------+---------+---------+---------+---------+ |REDISP |0 |. |SPC |+ | | |= |, |'pi' |{} | |OFF |GOMK0 |NEWLINE |TAB |:: | +-------+---------+---------+---------+---------+ Explanations: TOGBEEP - Toggle beep on/off. Default value is taken from the system flag. TOGCASE - Toggle lower/upper case characters. Also bound to alpha+ls+alpha. TOGOVER - Toggle insert/overwrite mode. TOGSPD - Toggle regular/fast mode LSTART - Jump to start of line LEND - Jump to end of line LWORD - Skip word to the left RWORD - Skip word to the right DEL - Delete character under cursor DELLINE - Delete line under cursor DELRGHT - Delete characters to right of cursor. BS - Backspace BSLEFT - Delete word to the left BSRIGHT - Delete word to the right BSTART - Set block start address BEND - Set block end address BLKUP - Set block = start-cursor BLKDN - Set block = cursor-end BCOPY - Copy block/clip to cursor position BCUT - Delete block (copied to clip) BDEL - Delete block (not copied to clip) BKEEP - Delete all but block (clip not modified) BSWAP - Swap clip and text BPUSH - Push block/clip to the stack RCLSTK1 - Pop string from stk1 into cursor position FIND - Incremental search. Search is case sensitive if find string contains lower case characters. REPLALL - Find/replace all REPL? - Find/replace with verification GREPL - Global replace all without changing cursor position GREPL? - Global replace all ... with verification For example to globally replace "L05512" with some more descriptive label just - put cursor on the label, press GREPL - press alpha to turn off alpha mode - press down-arrow to insert the label in the input line - press enter to accept it - type the replacement and press enter NEXT - Find next match PREV - Find previous match DFIND - Find matching delimiter for delimiter under cursor MSTART - Start defining macro key sequence MEND - End macro key sequence MEXEC - Execute macro key ARG? - Input repeat count for next key press ROW? - Input row to jump to POS? - Input position to jump to CHR? - Input character number to insert CHRCAT - Character browser, ENTER key echos chosen character to cursor position, ON key exits. SETMKn - Set mark GOMKn - Jump to mark GOMK0 - Go to previous cursor position STK - Starts a normal SOL. Recursive TEDs are allowed. Exit back to TED with CONT key. All internal markers except cursor position will be lost. CNTRINI - Initialize counter variable. Number of digits used determines width of counter, possible leading "#" determines a hex counter. CNTR - Insert counter into text and increment it. At start the width is initialized to 1 hex nibble, so for example pressing [ARG?] 16 ENTER [CNTR] will produce "0123456789F" Special keys during inputline: ENTER - Input ok ON - Cancel DEL - Delete char BACKSPACE - Delete previous char LT/RT - Move left/right. During find input pressing RT at the end of input will take the next input char from the current match location, thus making it easier to complete the match. NXT - Next match during find input PREV - Previous match during find input. RS+PRG - Starts character catalog DOWN - Puts word under cursor to editline Special keys in alpha plane: A LS - = <<\n>> (with indent checks) A LS + = {\n} (with indent checks) A ENTER = \n + indent the same way as the previous line Notes: Repetition and macro key execution can be aborted with the ON key. Repetition, macro save and macro execution are aborted automatically if an error occurs. Max lenght of a macro key sequence is 50 keys. The Object Viewer ^^^^^^^^^^^^^^^^^ VV is a general purpose object viewer, which depending on input works as follows: strings - view with special string viewer grobs - view with special grob viewer other - try to call AGROB with small font size and then view the result with the grob viewer The viewer returns the input unmodified in all cases. String viewer keys: ------------------- cursor keys scroll display PRG/STO/'/EVAL scroll one page at a time F/NXT jump to top/bottom - slow mode + fast mode ON/ENTER exit Grob viewer keys: ----------------- cursor keys move grob . center grob A-F set scroll speed 1-6 ON/ENTER exit The Small Font ^^^^^^^^^^^^^^ TED requires a level of the Universal Font Library (UFL) that supports FNT1. The UFL package comes with a Font Maintenance Library (FMnt) which allows you to change the font that TED and other applications use. ----------------------------------------------------------------------