diff --git a/WHATSNEW.txt b/WHATSNEW.txt index 9d25ce1..0ca2d54 100644 --- a/WHATSNEW.txt +++ b/WHATSNEW.txt @@ -1,17 +1,20 @@ -$Id: WHATSNEW.txt,v 1.163 2005/01/25 00:59:47 tundra Exp $ - -WHAT'S NEW +$Id: WHATSNEW.txt,v 1.164 2005/01/25 23:09:12 tundra Exp $ BUG FIXES -- Fixed longstanding problem that prompt strings within - PROMPT and YESNO builtins were not preserved as written by - the user. Previously, multiple spaces were replaced with - a single space. This is now fixed, and both prompts and the - new default feature will be preserved exactly as written. +- Fixed longstanding problem that prompt strings within PROMPT and + YESNO builtins were not preserved as written by the user. + Previously, multiple spaces were replaced with a single space. This + is now fixed, and both prompts and the new default feature will be + preserved exactly as written. -- It was previously possible to create a circular .include - chain. This is now explicitly checked for and prevented. +- It was previously possible to create a circular .include chain. + This is now explicitly checked for and prevented. + +- Previously, if you used the -t command line option to suppress + quoting and then reloaded a configuration file, quoting would go + back to its default behavior (quoting with the " character). Now, + specifying -t suppresses quoting, even after a configuration reload. CHANGES @@ -20,20 +23,28 @@ Previously this deselected all active selections AND repositioned cursor to top of directory listing. This was inconvenient with a large directory list. Behavior now is to only clear active - selections. Cursor is left at approximately the same location - in the displayed list. + selections. Cursor is left at approximately the same location in + the displayed list. + +- Variable references are now evaluated at command *execution* time. + (Previously they were evaluated at command definition time). + NEW FEATURES - Added ability to insert a default value for PROMPT and YESNO builtins. Syntax is: [BUILTIN:prompt text==>default text]. For YESNO, the default text can only be "Yes" or "No" (case- - insensitive). The default separator string, "==>" can be - changed by setting the new DEFAULTSEP option variable. + insensitive). -- Added support for "Execution Variables". These are analogous - to shell "backtick" references. You do this in one of two - forms: + The default separator string, "==>" can be changed by setting the + new DEFAULTSEP option variable. Be careful to not use + any of the characters, []{}, in this delimiter string. The + program will get confused since it sees these as variable/builtin + delimiters. + +- Added support for "Execution Variables". These are similar to Unix + shell "backtick" references. You do this in one of two forms: var = [`command string`] @@ -46,10 +57,32 @@ Sets var to string returned by executing "command string". *All* newlines are replaced with spaces. - As with all other variable references, the variable is resolved - - i.e., the command is actually run - At the time the configuration - file is initially parsed, *not* later when a command is run. +- It is now possible to embed variable references inside PROMPT + and YESNO builtins. For example, you can do things like: + PROMPT = New File Name? + r rename mv [SELECTION] {PROMPT:[PROMPT]==>[SELECTION]} + + This brings up a prompt with a default of the filename to + be renamed - this allows you to modify the existing name easily, + without having to type the whole name in. + + You can embed references to execution variables, builtin variables, + user variables, and environment variables anywhere within + PROMPT or YESNO constructs. + + Note that because variables are now resolved when the command is + actually run, execution variables are evaluated anew *each time* + a command is run: + + c count echo [`ls | wc`] + + To the keep the parser reasonably sane, the delimiters for PROMPT + and YESNO have changed from [] to {} + + NOTE: Existing configuration files will have to be changed. + The older [PROMPT ...] and [YESNO ...] forms are no + longer supported. twander 3.160 (1-12-2005):