Applicable release versions: AP
|Description||describes the TCL command stacker.
In AP, every unique command that is typed at the ":" (TCL) prompt is saved in a file on the "dm" account called "tcl-stack".
TCL stack entries may be recalled and edited using the Update processor edit commands. The UP commands listed below are valid when editing items in the TCL-stack file.
Changing any part of a TCL command in the stack causes that stack entry to be moved to the top of the stack. This feature tends to keep the stack compact. The fact that only "unique" commands are saved also helps keep the stack compact. "Unique", in this context, means that there are never any duplicated commands in the stack. For instance, even if the "who" command had been used many times, it will only appear ONCE in the stack. Each time a command is found and re-executed, it is moved to the "top" of the stack.
There is no limit to the number of TCL-stack items, or to the number of attributes in each item. These items continue to grow indefinitely. Therefore, from time to time, the stack should be pruned either from TCL or by using UP to modify the actual stack item (u dm,tcl-stack, user-id ).
A user's TCL-stack is not terminal dependent. It is user-id dependent. If a user leaves a terminal unattended, another user can use the terminal under the previous user's id. This causes the new user to "step-on" the previous user's stack.
Since the TCL-stack is an updated file, it is frequently locked and updated by the system. If two users share the same user-id, then while the first user types a TCL command, the second user is "locked-out" of the TCL stack, and their terminal will beep as long as the first user is still entering the command.
In AP release 5.2.5, the stacker was enhanced to allow new commands even if the stack item is locked by another port.
As of AP releases 5.2.5 and higher, it is now possible to cut and paste when editing the TCL command stack item.
In releases of AP 6.1.0 and higher, it is possible to stack data or additional commands under the TCL statement by using the <ctrl>-v command.