Site Tools


stack
no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


stack [2006/08/29 16:08] (current) – created - external edit 127.0.0.1
Line 1: Line 1:
 +======Synopsis:======
 +__stack__ push|pop|list alias|assign|bind|on|set [<item>]
 +
 +======Description:======
 +__STACK__ is a convenient mechanism for storing current aliases, variables,
 +hooks, sets, and binds in a stack.  New aliases, variables, hooks, etc
 +with the same names or scopes can be created without disturbing the
 +stacked ones.  Those that are stacked can be restored at any time
 +(clobbering any current settings in favor of the saved ones).
 +
 +There are three commands currently available to __STACK__.  The first, push,
 +pushes an item onto a stack bearing its name.  The second, pop, removes
 +the most recent pushed item off its stack.  The last, list, shows the
 +contents of the named stack.
 +
 +======Examples:======
 +To push the current WHO hook onto the stack:
 +      stack push on who
 +
 +To pop the most recently pushed $foo variable off its stack:
 +      stack pop assign foo
 +
 +To list the current alias stack:
 +      stack list alias
 +
 +======Bugs:======
 +__STACK__ LIST works, but not quite as one would expect.  Instead of listing
 +each individual alias, variable, or hook separately, all are clumped
 +together.  Their order is correct, but the output may be confusing.
 +
 +Behavior between the five varieties can be confusing.  Aliases, assigns,
 +and hooks (ons) disappear when pushed on to the stack.  Keybindings and
 +sets do not (nor do they revert to defaults.)  Also, the on stack
 +requires a hook type when accessed with the 'list' command.
  
stack.txt · Last modified: 2006/08/29 16:08 by 127.0.0.1