Newer
Older
twander / TODO
@tundra tundra on 8 Jan 2007 3 KB *** empty log message ***
$Id: TODO,v 1.134 2007/01/08 08:33:18 tundra Exp $

twander 3
=========

- Dynamically size display column widths based on actual
  content rather than fixed worst-case field widths.

- Support 'twander file file file ...' as an invocation option
  to mean: Set DSELECTIONS to the file list and run SELKEY on
  them (to take advantage of file associations somehow).

  . Possible enhancement: If a directory is specified anywhere
    on the command line it implies that twander remain running
    initialized on that dir.  If not, the files are executed and
    twander terminates.

- Offer option to suppress symbolic link expansion, and show only
  as a file or directory.

- Fix this or offer an option to turn off canonicalization.

  > One notable thing is that symlinks are not shown as they exist, but 
  > expanded.  For example, I have:
  > 
  >    19:49:32 0 pinard@phenix:~ $ ls -l .Blog
  >    lrwxrwxrwx 1 pinard bpi 8 2005-08-05 19:26 .Blog -> etc/Blog
  > 
  > but Twander expands the definition to:
  > 
  >    .Blog -> /bpi/phenix/home/pinard/etc/Blog
  > 
  > It might be cleaner and more informative to show the link as defined, 
  > rather than to show an expansion of this definition.  Do you agree?

- Rethink selection preservation across refreshes. Currently if a new
  file is added or deleted the selection will move up- or down- accordingly
  because Tkinter selections are based on index position. See if it
  could be done by filename instead.

 
COMPLETED
=========

- Implemented option to display date/time in  ISO 8601 format (ISODATE,
  default: False)

- Removed trailing spaces from lines in sample configuration file.

- Directory Shortcut Definitions may now contain references to
  variables (user-defined, environment, or execution).  This
  enables definitions like:

    ~ = [$HOME]

    DIRSC1 = [~]/Desktop       # User-defined variable
    DIRSC3 = [$HOME]           # Environment variable
    DIRSC5 = [`echo "/tmp"`]   # Execution variable (but silly)

  If you use one of these forms, it's up to you to make sure that when
  when the variables are dereferenced (substituted), the resulting string
  is the name of a directory. Be careful, you may not spot a definition
  that is not a directory right away. Variables are dereferenced at
  runtime not at the time the Configuration File is read in. Therefore,
  Directory Shortcut assignments with variable references in them are shown
  literally in the Shortcut Menu. twander cannot know what the value of
  the variable will be until you actually press the relevant shortcut key. 



Version 4 Future
================


- More OO model - each instance of the program is an object

- Mechanism to save current state in a separate file

  . Save current size/position

  . Persistent clipboards / preload values into clipboard

  . Current values of directory shortcuts

  . User toggled options


- Split new directory processing into queue producer-harvester
  model.

- Implement HIDE=regex  configuration file feature.

- DRIVELIST on Unix: Display mount points

- Enhance configuration language:

  . Anonymous commands - no command key

  . Need smarter quoting mechanisms

    - Escape blanks when FORCEUNIXPATH is active
    - Offer quoted and non-quoted version of the builtins

  . Switch configuration language to tconfpy

  . Named directory ALIASes:

      FOO = /a/b/c

    Means you can type FOO in response to a cd dialog and
    get sent to a/b/c

- Figure out how to get the dialog fonts/sizes to track
  the rest of the program. (Perhaps replace with my own?)

- Also possibly the titlebar fonts.

------------------------------------------------------------------------

X - Final packaging:

    - FreeBSD Port
    - Screenshot(s)
    - Copy doc to website
    - Copy example configuration to website
    - Copyright update in: License, Program Code, & Documentation