Monday, January 28, 2008

v6.80.0044 - 2008-01-28 11:40

  • +++ Evolution goes on: Added Plugin Scripts! Extremely powerful, portable, light-weight, and easy-as-can-be -- believe me, it took me only 10 minutes to code it! (Plus 1 hour debugging... ;-))
    Here's the concept
      - In a nutshell: Popup a menu that's user-defined by a text file.
      - You create a text file containing scripts (or script batches), one per line. At the beginning of each line (i.e. left of the first "::" script marker) you may define a caption. A "-" (no quotes) line will generate a separator in the menu. So, the general form of such a file could look like this:
        [Caption]::command::command::command [...]
        [Caption]::command::command::command [...]
      - There is a new scripting command LoadScriptFile (see next paragraph).
      - Now when you run a "::loadscriptfile [scriptfile]" (the Catalog is a nice place for such loadscriptfile commands!), the script file is loaded and parsed, and a popup menu is created on the fly and popped at your mouse cursor, listing all the scripts (resp. their captions) found in the script file! What's left to do for you now is point and click.
      - I guess you know what this means:
        (1) You can have hundreds of hand-tailored commands just 2 clicks away, and they won't make the app one byte heavier or one millisecond slower.
        (2) You can bundle commands needed for a particular project in one script file.
        (3) You can easily share complex commands (e.g. RegExp Renames) with other users, and give them friendly names as captions.
        (4) You can place a loadscriptfile command inside another script batch to present you a *choice* while a script is running; e.g.
        "::goto Desktop::loadscriptfile scriptsortby.txt::selpos 1"
    where scriptsortby.txt offers you a number of sort options right at your mouse cursor.
  • + Scripting got a new command:
      - LoadScriptFile
        Action: Loads a file with scripts and pops up a menu made from those scripts.
        Syntax: loadscriptfile [scriptfile]
        - scriptfile: can be relative to app path
           ::loadscriptfile testscripts.txt
  • + Scripting got a new command:
      - CopyText
        Action: Copies a piece of text to the clipboard; for multiline text you can use the line breaker <br>. It will be converted to a CRLF (= x0D0A) sequence.
        Syntax: copytext [text]
           ::copytext Blah
           ::copytext Blah <br> Blah
           ::br " # "::copytext Blah # Blah (see next paragraph)
  • + Scripting got a new command:
      - BR
        Action: Resets the line breaker <BR>.
        Syntax: br [new line breaker]
        - To include leading/trailing blanks the argument must be quoted.
           ::br #
           ::br " # "
  • + Scripting got a new command:
      - SelPos
        Action: Selects one list item by position.
        Syntax: selpos [position]
           ::selpos 1 selects first item in list
  • ! UDC: Could crash when you added a new UDC, under certain conditions. Fixed.
  • * Scripting: On scripting errors (invalid commands, missing script files) you are now prompted whether to continue the script or cancel.