WHAT'S NEW twander 2.xx: *** PRELIMINARY BETA COMMENTS *** - *MANY* bug fixes and code cleanup including a nasty one with RH linux that prevented 'twander' from opening the user's home directory. - You can now include references to any of the variable types in a manually entered command line. Syntax is the same as for command definitions in the configuration file. - Command History has been implemented. All commands, regardless of how they were invoked are saved in a history buffer and available via a History Menu. Commands entered manually are saved as typed. Other command invocations are saved with any variables (Built-In, Environment, User-Defined) dereferenced and substituted. - There are now accelerator key and mouse shortcuts for each of the menus: Menu Accelerator Mouse Shortcut ----------------------------------------------------- Command Alt-C RightButton Directory Alt-D Shift-RightButton History Alt-H Control-Shift-RightButton - A new "Directory Shortcuts" feature has been added. This is done by adding statements of the following form to the configuration file: DIRSCnn = some path # left side must be all caps as shown # nn is from 1-12 # or 01-12 (leading 0 is optional) Each such statement will do two things: Preload "some path" into the Directory Menu and Bind the function key associated with 'nn' to the path so pressing that key navigates there. For example this command will cause twander to move to /usr/local/bin when you press F10: DIRSC10 = /usr/local/bin - twander debug facilities have been vastly improved. The -d command line argument (and the DEBUGLEVEL option - see below) now takes an argument whose value is understood to be a bitfield with these assignments: Bit 0 - Dump selected items and quit Bit 1 - Dump internal variables Bit 2 - Dump symbol table Bit 3 - Dump command table Bit 4 - Dump execution strings (as program runs) Bit 5 - Dump key bindings Bit 6 - Dump directory stack (as program runs) Bit 7 - Dump command history stack after each command execution So, for example, 'twander.py -d 3' dumps the internal variables on stdout and exits immediately. - You can set your default twander command line arguments in an environment variable called TWANDER. - You can now set a great many twander options, including those set via environment variable/command line directly in the configuration file. This provides access to even more program features than available on the command line. The priority of options processing, from lowest to highest is: 1) Defaults coded into program 2) Options set in configuration file 3) Options set in environment variable 4) Options set on command line. Options are set in the configuration file using this syntax: OPTIONNAME = value # OPTIONAME must be all upper-case Available options - values shown are their defaults coded into the program: Booleans - RHS must be "TRUE" or "FALSE" - case-insensitive ----------------------------------------------------------- AUTOREFRESH = TRUE # Automatically refresh dir view NODETAILS = FALSE # Never allow details to be seen NONAVIGATE = FALSE # User can't leave starting directory WARN = TRUE # Show warning Numerics - RHS must be a number ------------------------------------------------------------ DEBUGLEVEL = 0 # Set how much debug output you want FSZ = 12 # Font size HEIGHT = 25 # Initial window height MAXDIR = 32 # Max entries in Directory Menu MAXHIST = 32 # Max entries in History Menu MAXNESTING = 32 # Max level of variable nesting allowed REFRESHINT = 3000 # ms between refreshes - inaccurate, but bigger=longer WIDTH = 90 # Initial window width Strings - RHS cannot be blank ------------------------------------------------------------- BCOLOR = black # Background color FCOLOR = green # Foreground color FNAME = Courier # Font name FWT = bold # Font weight QUOTECHAR = " # Character (or string) to use when quoting substitutions STARTDIR = $HOME or ./ # Directory in which to start All of these except STARTDIR will be observed on a configuration file reload while the program is running, so you can edit the configuration and see how these variables change things. - There is a new Built-In variable called [YESNO:some text]. It allows you to put a Yes/No popup anywhere in a command definition. This is most useful in warning the user they are about to do something dangerous: d BigTimeDelete xterm -l -e [YESNO:Are You Sure You Want To Delete Selected Entries?] rm -rf [DSELECTIONS] A "Yes" response causes normal program execution, "No" aborts the command. - If you are running on Win32 and have Mark Hammond's 'win32all' extensions installed, you can now navigate ".." from root or use the Ctrl-k key to get a Drive List View of all available Win32 drives. - Since Win32 file/directory names are case-insensitive, twander now sorts them as such. Previously, 'ZEBRA' would appear before 'echo' in a twander display. - Most previous error conditions have been changed to warnings so that the program is more forgiving and will keep running after such a condition. This is especially true of problems in the configuration file, which formerly cause the program to exit. Now, the offending line is just ignored. - The various interactive popup dialogs allow intra-line editing with both the local conventions as well as emacs-style key editing. This was true previously, but was not documented. ------------------------------------------------------------------------ twander 2.34: Initial public release of program