© Copyright Clive E. Chapman 2002. All rights reserved.

Changes in FL Tools 4.03

Version 4.03 (2002-03-15)


Contents

This page Other pages
Summary of Changes Main Page
Changes in FL Licence
Changes in FLCUST Summary of History
Problems Fixed Changes in 4.02
  Changes in 4.04 - 4.06
  User Guides


Summary of Changes

FL

  1. New profile introduced
  2. /P (Profile) option introduced
  3. /DA, /DD, /DF (Date) options introduced
  4. /ZF (Size of Files) option introduced
  5. /S (Sort) option enhanced
  6. Command-suffix character introduced
  7. #M (Mode) command enhanced
  8. #EP (Edit Profile) command introduced
  9. Choice of immediate or deferred command execution introduced
  10. CTRL-alphabetic keys now user definable
  11. Default meaning of CTRL-E key maintained
  12. Line-up and line-down keys introduced
  13. Definition of standard F-keys improved
  14. Handling of command history enhanced
  15. Column gap color made user definable
  16. Color of error response from OS commands revised
  17. Dynamic F-key line made user controllable
  18. Screen mode at start-up made user definable
  19. Use of upper/lower case in file list revised
  20. Abbreviation algorithm for long paths improved
  21. Abbreviation algorithm for long names and extensions improved
  22. Maximum width of file column increased

FLCUST

  1. New profile version introduced
  2. FL's internal key codes changed
  3. Profile name specifiable on invocation of FLCUST
  4. Warning when exiting from FLCUST if profile has unsaved changes
  5. Old profile not overwritten when new profile saved
  6. Key to save profile added to all panels
  7. Key to test profile added to all panels for FL
  8. A separate FLTREE profile is now required in order to allow customisation
  9. Experimental non-blinking cursor introduced
  10. Delayed or immediate execution of F-key commands made user controllable
  11. CTRL alphabetic keys made user definable
  12. FL clock color removed; column gap color added
  13. Color palette added to the "Colors" panel
  14. Options set via environment variables added to "Other Settings" panel

Problems Fixed

  1. (FL,FLCUST) Accented characters on non UK/US keyboards
  2. (FL,FLCUST) Undefined keys generate spurious characters
  3. (FL) Secondary execute key not recognised
  4. (FL) #RC command inoperative
  5. (FL) DOS keyboard handling caused 100% CPU usage on Windows
  6. (FL) Unset bytes on screen showed random characters
  7. (FL) Blank character missing following alt-alphabetic text
  8. (FL) "#W .." command caused protection exception
  9. (FLCUST) Insert mode generated spurious characters

[Back to Contents]


Changes in FL

  1. With one exception, all of the options that were introduced in previous releases as environment variables are now included in the FL profile. The environment variables for these options are no longer supported. The profile has also been redesigned, resulting in a profile that is signifcantly smaller than before.

    The exception is the FL_EXIT_FILE environment variable. Because this has to be accessible from the "F.BAT" and "F.CMD" files, it cannot be included in the profile. (See this item in "Changes in FL Tools 4.00" for details.)

    To avoid code bloat, FL accepts only the new version of the profile. However, FLCUST accepts both old and new versions. To use your existing profile with FL version 4.03 you must edit and save the profile using FLCUST. All settings are migrated successfully from the old profile to the new, with the exception of the key codes defined for the primary execute key, secondary execute key, and newline key; these are reset to their default values. You must go to the "Other Settings" panel and define the keys that you want. You must also define the settings that were previously defined via environment variables, as the values defined by the environment variables are not used by FLCUST.

    [Back to Summary of Changes]

  2. The FL command has been enhanced to allow the specification of the profile to be used. This is done via a new /P (Profile) option on the invocation of FL. Syntax ([ ]=optional):

    /P[:][drive][path]name[.[ext]]

    The profile filespec is processed as follows:

    • If the drive or path is specified, the normal filespec resolution rules are used to identify the directory from which the profile is loaded. The path can be incomplete, and can contain the "." or ".." special characters.

    • If both drive and path are omitted, FL looks only in the directory from which FL.EXE is loaded.

    • If the extension is omitted, and the name does not end with a dot, ".PRO" is appended.

    To load a profile from the directory that contains FL, you need specify only the name. Example:

    /P:TEST

    To load a profile from the current directory, use the "." special character in the path. Example:

    /P:.\TEST

    To load a profile that has a blank extension, suffix the name with a dot. Example:

    /P:\UTILS\MYPRO.

    To load a profile that contains blanks in the filespec, enclose the entire option in double quotes. Example:

    "/P:D:\MY UTILS\FL.TST"

    [Back to Summary of Changes]

  3. The FL command has been enhanced to allow the selection of files and directories by date and time. This is done via three new options on the invocation of FL:

    /DF
    (Date of Files) Selects files within the specified date range; directories are excluded.

    /DD
    (Date of Directories) Selects directories within the specified date range; files are excluded.

    /DA
    (Date of All) Selects files and directories within the specified date range.

    Note: if you specify /DF and /DD together, the effect is similar to /DA, but you can use different date ranges for files and directories. These options all have identical syntax ([ ]=optional):

    /DF[:][mindate][-[maxdate]]

    "mindate" and "maxdate" are each strings consisting only of numeric digits. Each can be up to 14 digits in length, and represents a date and time in the format YYYYMMDDhhmmss (year, month, day of month, hour, minute, second). If fewer than 14 digits are specified, digits are assumed to have been omitted on the right. There must be an even number of digits present, and at least 4 digits must be present if the string is not omitted completely. FL provides defaults for omitted digits, as follows:

    Limit Default
    mindate 19800101000000
    maxdate 21071231235959

    If you omit digits, FL uses the corresponding digits from the appropriate default shown above. For example, "/DF:1999-1999" is equivalent to "/DF:19990101000000-19991231235959", and results in listing all of the files that were last changed during 1999.

    Although "mindate" and "maxdate" must contain only numeric digits, FL accepts strings that are not valid dates, and applies maximum and minimum limits to each field within the string. For example, if "00" is specified for the month, it is changed to "01"; if "99" is specified for the hour, it is changed to "23", and so on. However, "mindate" must be less than or equal to "maxdate".

    The limits specified by the /DF, /DD, and /DA options apply to the window that is created on entry to FL, and affect all lists created in that window. If the #R or #A command is used to refresh or add to the list, the specified date limits apply to the new list too. However, if you create a new window using the #W command, no limits apply. This behaviour is the same as that of the /T (tree) option. In a future release, the date options will be added to the #R and #W commands.

    Examples of use:

    • To list in tree mode all of the files on the C: drive that have been changed since 00:00:00 hours on the 1st January 2002:

      FL C:\ /DF:2002 /T

    • To list all of the files in the current directory that have been changed since 1st January 2002, and include all directories so that it is still possible to go up and down the directory tree:

      FL /DF:2002 /DD

    [Back to Summary of Changes]

  4. The FL command has been enhanced to allow the selection of files by size. This is done via a new /ZF (siZe of Files) option on the invocation of FL. Syntax ([ ]=optional):

    /ZF[:][minsize][-[maxsize]]

    "minsize" and "maxsize" are each strings consisting of numeric digits, optionally suffixed with a units character, optionally followed by "B":

    digits[u[B]]

    The units character "u" can have the following values, in lower or upper case:

    Units charSI prefixPower of ten
    K kilo 10**3
    M mega 10**6
    G giga 10**9
    T tera 10**12
    P peta 10**15
    E exa 10**18
    Z zetta 10**21
    Y yotta 10**24

    Units are multiples of 1000, not multiples of 1024. "minsize" and "maxsize" can be up to 10 digits in length. If one or other of the limits is omitted, FL uses the following defaults:

    Limit Default
    minsize 0
    maxsize 4294967295

    FL accepts values that exceed the maximum file size. For example, FL treats "/ZF:100MB-9GB" as though you had specified "/ZF:100000000-4294967295". However, "minsize" must be less than or equal to "maxsize".

    The limits specified by the /ZF option apply to the window that is created on entry to FL, and affect all lists created in that window. If the #R or #A command is used to refresh or add to the list, the specified size limits apply to the new list too. However, if you create a new window using the #W command, no limits apply. This behaviour is the same as that of the /T (tree) option. In a future release, the /ZF option will be added to the #R and #W commands.

    In this release there are no size options that apply to directories or to all (/ZD and /ZA). These options might be added in a future release.

    [Back to Summary of Changes]

  5. The /S (Sort) option on the FL command and the #S (Sort) command on the FL command line have been enhanced to allow minor sorts and sort direction to be specified.

    • To specify one or more minor sorts, simply suffix the major sort with the required minor sorts; example:

      #SNED

      What this means is that the list is ordered by name, but that if two or more entries have the same name they are ordered by extension. In the event that two or more entries have the same name and the same extension, they are ordered by date.

      Sorting by name, extension, and path is sufficient to distinguish all entries. If you specify sort codes that do not do this, FL appends the necessary extra sorts (selected from "N", "E", and "P") to ensure that the sorted list has predictable order. This change was introduced in FL version 4.00 (see this item).

    • To specify a reverse sort, suffix the relevant sort code with the letter "R". For example:

      #SDR

      This causes the list to be ordered with the dates in the reverse of the default sort order, that is, increasing instead of decreasing. Note that the "R" character applies only to the sort code immediately to its left. For example, "#SNDRE" reverses the direction only of the date sort (the name and extension sorts are in the default direction); "#SNRDRER" reverses the directions of all of the sorts.

    • To reverse the direction of the current sort, specify #SR. This reverses the direction of the major and minor sorts, but does not interchange the major and minor sorts. For example, if the current sort is "#SNEDR", specifying #SR has the same effect as specifying "#SNRERD". Two applications of #SR return the list to its original sort order.

    • The default sort directions are ascending for name, extension, and path, and descending for date and size. When you want a particular combination of sort directions, you may find it easier to use the "+" and "-" suffix characters. These explicitly request an ascending sort ("+") or descending sort ("-"). Like "R", each suffix character applies only to the sort code immediately to its left. Examples: the following are equivalent: "#SNRDE", "#SN-DE", "#SN-D-E+".

    [Back to Summary of Changes]

  6. FL commands, command joiners, command modifiers, and substitution codes consist of the command prefix character (default: "#") followed by zero or more characters. When the substitution codes are not followed by a blank, this difference in the lengths of commands can cause problems. Consider the following examples; suppose the substitution codes have the following values:
    #D=E:
    #P=\DOC
    #N=BUGS
    #E=TXT
    # =E:\DOC\BUGS.TXT
    

    This is what you get when you type various commands:

    Example 1

    What you type
    What you expect
    What you get
    COPY # *.NEW
    COPY E:\DOC\BUGS.TXT *.NEW
    COPY E:\DOC\BUGS.TXT *.NEW

    Example 2

    What you type
    What you expect
    What you get
    COPY # #NEW
    COPY E:\DOC\BUGS.TXT E:\DOC\BUGS.TXTNEW
    COPY E:\DOC\BUGS.TXT BUGSEW

    Example 3

    What you type
    What you expect
    What you get
    COPY # #OLD
    COPY E:\DOC\BUGS.TXT E:\DOC\BUGS.TXTOLD
    COPY E:\DOC\BUGS.TXT LD

    The first example gives you what you expect.

    The second example doesn't give you what you expect because although you typed "#", it happens to be followed by "N", and so FL sees this as the #N (Name) substitution code, and substitutes accordingly.

    The third example doesn't give you what you expect because although you typed "#", it happens to be followed by "O", and so FL sees this as the #O (Omit) command modifier, and disables further substitutions.

    In this release a command suffix is introduced that allows you to avoid the ambiguity, and force FL to interpret the command in the way that you want. The examples shown above would be coded as follows (where ":"is the command suffix character):

    COPY # #:NEW
    COPY # #:OLD
    

    The command suffix is defined on the "Other Settings" panel in FLCUST. The command suffix must be different from the command prefix and command repeat characters, the no-echo line prefix character, and the command joiner characters ("&" and "|"). Any non-alphanumeric character can be used for the command suffix, but typing is more convenient if both the prefix and suffix characters are on the unshifted case on the keyboard in use.

    [Back to Summary of Changes]

  7. On the mode-0 screen, FL usually displays the size, date, and time info on the right hand side. But when multiple file patterns are specified, or FL is operating in tree mode (/T option), FL displays the paths on the right hand side. It was possible to switch between these two displays by using the F10 key in the standard function keys, but there was no command that allowed you to allocate this function to a key of your choice. This has now been remedied by extending the #M (Mode) command with a C (Columns) parameter. The valid forms of this command are now ([ ]=optional):
    #M[:]x          where x=0|1|2|+|-
    #M[:][x]Cy      where y=0|1|+|-
    

    If the C parameter is omitted, the screen mode ("x") must be specified. Column mode 0 displays size, date, and time on the right-hand side; column mode 1 displays the path. As with screen mode, "+" and "-" cycle through the valid values. Blanks and the command suffix character ":" are optional. To cycle through the screen modes use the command "#M+". To cycle through the column modes use the command "#MC+".

    The same change has been made to the /M option on the invocation of FL.

    [Back to Summary of Changes]

  8. FL version 4.03 introduces a new command that can be typed on the FL command line or assigned to an F-key: the #EP (Edit Profile) command. This command allows you to make changes to your FL profile quickly and easily.

    The #EP command invokes FLCUST to edit whatever profile FL is currently using. After you have made your changes in FLCUST, you can press F4 to save the changes and F3 to exit, or press F3 alone to discard the changes and exit. On return to FL, FL reloads the profile and continues execution using the modified profile. All changed settings in the profile take effect, with the exception of those that define "start up" values (i.e. initial screen mode, sort order, and key set).

    The #EP command has been assigned to CTRL-F1 in the default profile.

    [Back to Summary of Changes]

  9. In previous releases, the user could specify the commands assigned to the function keys (four shifts: BASE, SHIFT, ALT, and CTRL), and to the alphabetic keys (one shift: ALT only). However, these behaved differently:

    • The command assigned to a function key was executed immediately the key was pressed.

    • The command assigned to an alphabetic key was displayed on the command line so that you could edit it; it was executed only when you pressed the primary or secondary execute key.

    In the new release you can define for each key whether you want FL to execute the command immediately, or want FL to wait until the primary or secondary execute key is pressed. Immediate execution is probably of more use in most cases.

    [Back to Summary of Changes]

  10. The new release extends the range of keys that can be defined by adding the CTRL alphabetic keys. This now provides a total of 100 keys that can be assigned user-defined meanings (12 function keys in each of 4 shifts, and 26 alphabetic keys in each of 2 shifts).

    [Back to Summary of Changes]

  11. In previous releases, the CTRL-E key was defined to be erase to end of field (EraseEOF). The new release allows the CTRL alphabetic keys to be defined by the user. If the CTRL-E key has no user definition, it continues to act as EraseEOF. If CTRL-E does have a user definition, that definition takes precedence; the EraseEOF function is still available however – on the CTRL-DELETE key.

    [Back to Summary of Changes]

  12. A basic screen handling capability is the ability to scroll the list up or down one line at a time. Strangely, this is a capability that is missing from FL's primary screen-handling keys, although it was offered on function keys F7 and F8 in the standard F-key set. But that was a rather obscure and inconvenient location.

    In the new release, the "line up" and "line down" functions have been moved to ALT-PAGE-UP and ALT-PAGE-DOWN. This makes it convenient to scroll roughly to the right area by pressing PAGE-UP or PAGE-DOWN, and then fine-tune the scroll position by pressing ALT-PAGE-UP or ALT-PAGE-DOWN.

    However, the choice of ALT-PAGE-UP/DOWN is not ideal, as it is a large stretch, especially for small hands (right forefinger on PAGE-UP/DOWN key, right thumb on right-hand ALT key). A better choice would be CTRL-PAGE-UP/DOWN, although those keys already have defined meanings (cursor to top/bottom of screen). These keys may be reassigned or made customisable in a future release.

    [Back to Summary of Changes]

  13. FL supports two sets of F-key definitions for the base (unshifted) F-keys – the standard set which cannot be altered, and the user set. However, the standard F-key definitions have caused some confusion in the past, and have been revised in this release:

    1. In the profile, the default setting was for FL to start with the standard keys enabled. This was confusing for new users who (quite reasonably) expected their user-defined keys to be enabled. This has been changed – the default for a new profile is for the user keys to be enabled on start up.

    2. The standard keys were an incomplete set, and for those keys that had no definitions, the user definition "showed through". This caused more confusion, since the keys displayed were neither the standard keys nor the user keys, but a perplexing mixture of the two. This has been changed; undefined standard keys now display as blank (the user key does not show through).

    3. The standard key definitions were similar to, but slightly different from, those of the default profile. This has been changed, and the standard keys are now the same as the default profile.

    4. The F2 key in the default profile invoked the FLFIND program specifying a drive of "*". This resulted in all drives being searched to find all occurrences of the specified file. This was fine when disks were few and small, but these days disks are many and large, and pressing this key by accident can result in a long wait. The definition in both the standard keys and default profile has been changed so that only the drive containing the specified file is searched.

    5. The "line up" and "line down" functions that were previously assigned to F7 and F8 have been removed from the standard keys and assigned to ALT-PAGE-UP and ALT-PAGE-DOWN (see earlier).

    6. When operating in tree mode or multi-pattern mode, FL co-opted the "down directory" standard key and changed it into a key that alternated between displaying paths and displaying dates. This prevented access to the down-directory function. The path/date function has been moved from F10 to the previously unused F11, and renamed "Cols" (columns). This means that the "down directory" function remains available in these circumstances.

    7. To provide a useful set of functions for the standard keys and default profile, "sort on name" and "sort on date" have been allocated to F7 and F8, respectively.

    8. When FL was invoked, it was possible to change the F-keys used at start-up by specifying the /U option, which toggled whatever setting was defined in the profile. But it was not possible to specify a particular key set. This has been changed; the /U option has been removed, and replaced by a /K (Keys) option. If specified by itself, it toggles the setting defined in the profile. If specified with values S or U, FL starts up with the standard keys active (/K:S), or the user keys active (/K:U); the ":" can be omitted.

    [Back to Summary of Changes]

  14. To maximise use of the command recall stack, in previous releases some commands were stored in the stack and others were not, but this was not done in any systematic way. In the new release, all commands that are typed are stored in the command recall stack, and all commands that originate from function keys are omitted from the stack.

    [Back to Summary of Changes]

  15. In version 4.00, the file date, time, and size fields were all increased in width. To compensate, the gaps between columns were reduced to one byte each in order to minimise the necessary reduction in the size of the command input field. Unfortunately this worsened readability. In the new release the gaps between columns can be displayed in a contrasting color (use the "Colors" panel in FLCUST). Note that only the background color is of significance; the foreground color is ignored. The initial default is set to grey.

    You can also choose whether the column gap should be on top or beneath the highlighted (current) line (use the "Other Settings" panel in FLCUST).

    [Back to Summary of Changes]

  16. When operating-system commands are executed, FL displays each command on the line-mode screen. If the command returns a non-zero return code, FL displays the string "Error" plus the value of the return code. In the new release this error line is displayed in red to make it easily distinguishable from the other lines on the screen (previously it was displayed in the same color as the commands).

    [Back to Summary of Changes]

  17. When an ALT, CTRL, or SHIFT key is pressed, FL immediately changes the bottom line of the FL screen to display the function-key definitions corresponding to the shift key pressed. Some people find this disturbing. In the new release this behaviour can be disabled via a profile option (use the "Other Settings" panel in FLCUST).

    [Back to Summary of Changes]

  18. In previous releases, FL started with the mode-0 screen by default, although this could be overridden by specifying the /M option on the invocation of FL. In the new release, a profile option has been added allowing you define the default screen mode that FL should use when it starts.

    [Back to Summary of Changes]

  19. FL version 4.01 introduced support for user-specification of the case used to display filespecs (lower, upper, mixed, etc). FLCUST now supports these options, and using its sample filespec it was possible to see that the COMPONENT and WORD options did not behave quite as expected. The definitions of these have been revised. The new definitions are shown below, where the word LOWER was previously MIXED.

    C
    (COMPONENT) This is the same as LOWER, but with the initial letter of each component capitalised. A component is any part of the file spec that is preceded and followed by the component delimiter characters; these characters are backslash and dot.

    W
    (WORD) This is the same as LOWER, but with the initial letter of each word capitalised. A word is any part of the file spec that is preceded and followed by the word delimiter characters; these characters are backslash, dot, dash, underscore, and blank.

    In FLCUST, COMPONENT is now called FIRST.

    [Back to Summary of Changes]

  20. In previous releases, when a path was too long to display in its entirety, FL omitted the leading or trailing parts of the path, and used the "+" character to indicate where characters had been omitted. The problem with this is that it gave no clue as to where the file actually resided. In the new release, a more sophisticated abbreviation algorithm is used. When a path is too long, FL omits trailing characters from each directory name in the path. As before, "+" is used to denote omitted characters. For example, on the mode-0 screen in path mode, the Windows 2000 directory:
    C:\Documents and Settings\All Users\...
    ...Application Data\Microsoft\Crypto\
    

    is displayed as:

    C:\Doc+\All+\App+\Mi+\Cr+\

    instead of being displayed as:

    C:\Documents and Settings+

    Be aware however that when paths are very long and the space available is short, directory names can be abbreviated to as little as a single "+", and in extremis even the "+" is omitted, resulting in adjacent "\" characters; example:

    E:\P+\Fl\4+\S+\T+\N+\+\+\+\
    E:\+\+\+\+\+\+\+\+\+\+\+\\\
    

    Note that the #SP (sort on path) command sorts according to the full paths, not the displayed paths.

    [Back to Summary of Changes]

  21. FL version 4.01 introduced truncation of overlong file names, replacing omitted characters with the "+" character. When file extensions were aligned, FL truncated both the extension and the name. The intent here was to leave visible at least a few characters of the extension, so that it was possible to deduce what sort of file it was. However, for unaligned extensions, FL simply truncated on the right. This often resulted in the entire file extension being omitted. In the new release FL applies the same truncation algorithm to the aligned and unaligned cases, so that at least part of the extension is always visible.

    [Back to Summary of Changes]

  22. FL version 4.01 allowed the width of the file and extension columns to be specified. The upper limit for the file column was 25, which was the value used in earlier releases. However, with the Windows operating system it is very easy to end up with very long file names. Currently there is no way in FL to see in its entirety a very long file name (this will be addressed in a future release), but in the new release a partial fix is provided by increasing the upper limit for the width of the file column from 25 to 44.

    In the worst possible case (when the file column is 44 characters wide, the file is 1GB or larger, and numeric separators are displayed), the command input field is reduced to a single character. Although in principle the command field could still be used (it auto-scrolls horizontally), it is expected that most users will choose a lower limit for the maximum width of the file column.

    For the mode-2 screen, values larger than 23 cannot be supported, while values less than 23 are pointless. So for the mode-2 screen, the width of the file column is fixed at 23 – the value specified in the profile is ignored.

    [Back to Summary of Changes]


Changes in FLCUST

  1. Version 4.03 introduces a new profile version for FL that includes all of the options introduced in previous version-4 releases of FL. New FLCUST will accept both old and new profiles, but new FL accepts only the new profile. (Old FLCUST and old FL both consider the new profile to be invalid and use default settings instead.) With the exception of the key codes (see next item), all settings are migrated successfully from the old profile to the new profile.

    [Back to Summary of Changes]

  2. Changes to the keyboard handling in FL mean that the key codes stored in the FL profile for the primary execute key, secondary execute key, and newline key are no longer correct. FLCUST must be used to update the FL profile and redefine these keys. The 3-digit decimal key codes used by FL version 4.02 and earlier are replaced by 4-digit hex key codes in FL version 4.03.

    In addition, certain restrictions on the keys that can be defined for primary execute, secondary execute, and newline have been removed. In particular, it is now possible to use any of the F keys; the usual meanings of F3, F4, and F12 are disabled temporarily whilst the cursor is in a key-definition field.

    [Back to Summary of Changes]

  3. In the new release it is now possible to specify on the invocation of FLCUST the filespec of the profile that you wish to edit. If the profile already exists, FLCUST can determine the tool which uses that profile and take you straight to the appropriate customisation menu. If the profile does not exist, FLCUST displays the tool-selection dialogue of the first panel.

    [Back to Summary of Changes]

  4. In previous releases it was possible to modify profile settings and then exit from FLCUST forgetting to save the new profile. The new release implements a "protected quit" at the point where unsaved changes would be discarded. If the "Quit" key is pressed and there are unsaved changes, FLCUST displays a warning message. You can then either press the "Quit" key again to discard the changes and exit, or press the "Save" key to save the changes, and then the "Quit" key to exit.

    This change applies to the FL and FLTREE profiles; it does not apply to customisation of FLCOLOR.

    [Back to Summary of Changes]

  5. When FLCUST saves the new profile, it no longer overwrites the old profile. Instead the old profile is renamed to have a file extension consisting of three numeric digits. FLCUST tries all combinations in ascending order, starting from "000", until it finds a set that is not used for an existing file.

    [Back to Summary of Changes]

  6. In previous releases, the "Save" key (F4) was available only on the menu selection panel. In 4.03, the "Save" key is available on all of the editing panels.

    [Back to Summary of Changes]

  7. To make it easier to experiment, a "Test" key (F12) has been added to the editing panels for FL (but not FLTREE). When this key is pressed, FLCUST writes the current definition of the FL profile to a temporary file on disk, and then invokes FL with that file as the profile. This is a normal invocation of FL, and you can review colors and screen options, and test the function-key definitions. On exit from FL, FLCUST deletes the temporary profile.

    [Back to Summary of Changes]

  8. In version 3 and earlier, FLCUST updated the EXE files for FL and FLTREE, as well as writing the profile. Updating an EXE file is considered bad practice, and was discontinued for FL in version 4.00. Because FLTREE has not yet been recompiled for version 4, FLCUST still updates FLTREE.EXE. However, an important change is made in this release.

    In version 4.03, FLCUST no longer reads the customisation settings from the EXE file for FLTREE. This means that you MUST have a separate FLTREE.PRO file that contains your current customisation settings. If you do not already have such a file, you must create one using version 4.02 BEFORE you migrate to version 4.03.

    When you modify your FLTREE settings, you can choose to discard the changes (F3 key), save the settings in the profile (F4 key), or update the settings in the EXE (F5 key). If you want to retain your settings so that you can edit them again in the future, you MUST save them in the profile (F4 key).

    [Back to Summary of Changes]

  9. As an experiment, version 4.03 uses a new style for the cursor in typing fields. Instead of a blinking cursor, FLCUST now uses a non-blinking block cursor for both insert mode and replace mode:

    • For insert mode, the cursor is a light white block cursor.
    • For replace mode, the cursor is a light red block cursor.

    To help you remember which is which, you may like to think of the red color of the replace-mode cursor as warning you that if you type a character, the existing character at the cursor position will be destroyed (i.e. overwritten).

    Depending on feedback, this new cursor style may be discontinued in the next release, or extended to FL, or made controllable via a profile option.

    [Back to Summary of Changes]

  10. On the "Function Keys" and "Alphabetic Keys" panels for FL, fields have been added that allow the specification of when the function assigned to each key should be executed – either immediately the key is pressed, or only when the primary or secondary execute key is pressed. In previous releases, all F-keys were "immediate", and all alphabetic keys were "wait". The value is changed by pressing CTRL-UP-ARROW or CTRL-DOWN-ARROW.

    The corresponding panels for FLTREE also show these new fields, but they cannot be altered.

    [Back to Summary of Changes]

  11. In previous releases, only the ALT-alphabetic keys could be assigned functions. In the new release, the CTRL-alphabetic keys can be assigned functions too, but only for FL.

    [Back to Summary of Changes]

  12. On the "Colors" panel for FL, the "Clock" color has been replaced by the "Column gap" color. Note that only the background color is of significance.

    [Back to Summary of Changes]

  13. On the "Colors" panels for FL and FLTREE, a color palette has been added. This displays samples of all of the available colors. Also, the CTRL-LEFT-ARROW and CTRL-RIGHT-ARROW keys now cycle through the colors, in addition to the existing CTRL-UP-ARROW and CTRL-DOWN-ARROW keys.

    [Back to Summary of Changes]

  14. On the "Other Settings" panel for FL, fields have been added allowing the options introduced using environment variables in previous releases to be customised. Note that this panel is now scrollable.

    [Back to Summary of Changes]


Problems Fixed

  1. (FL,FLCUST) Keyboards such as the Danish keyboard that have "dead" keys for typing accents or accented characters (e.g. the tilde) were not correctly processed by the DOS versions of FL and FLCUST, resulting in an infinite loop. This has been corrected.

    Note: this also affects the DOS version of FLTREE, but FLTREE has not been updated or recompiled for any of the version-4 releases, and so will still exhibit this problem.

    [Back to Summary of Changes]

  2. (FL,FLCUST) In previous releases, keys that were undefined would often display apparently random characters. In the new release, keys that are undefined are ignored, that is, pressing the key produces no character and does not move the cursor.

    This problem also occurs with FLTREE, but FLTREE has not yet been updated to use the revised keyboard code.

    [Back to Summary of Changes]

  3. (FL) FLCUST allowed a secondary execute key to be defined, and although this was stored in the profile, it was ignored by FL. This has been corrected – FL will accept both the primary execute key and secondary execute key. Note: if you want only one execute key, define both keys to have the same value.

    [Back to Summary of Changes]

  4. (FL) In previous releases the on-line help and the FL User's Guide both described a #RC command which was supposed to enable or disable the checking of return codes from commands issued to the operating system. However, from examination of the FL source code it became apparent that the #RC command had never worked – return code checking was always disabled.

    In the new release the #RC command has been removed, although the command might be re-instated in some future release, as the function provided is not without merit.

    Note: the #RC command in FLTREE is similarly inoperative.

    [Back to Summary of Changes]

  5. (FL) When the DOS version of FL was run on Windows 95/98/ME, the Windows Task Monitor showed 100% CPU usage. This has been corrected by using a different call to read the keyboard.

    [Back to Summary of Changes]

  6. (FL) On the mode-1 screen, the byte preceding the drive letter on the "empty-list" line was not being set, and so would show an unexpected character. This has been corrected.

    [Back to Summary of Changes]

  7. (FL) In version 4.00, the action of the END key was altered so that it moved the cursor to abut the last non-blank character on the line instead of leaving a gap of one blank. This was done to make the END key behave in the same way as it does in most other file/line editors. However, this change had the side effect of removing the blank between the command and the cursor for commands assigned to alt-alphabetic keys. For keys that display the command on the command line, the blank serves a useful purpose, and so has been re-instated for 4.03.

    [Back to Summary of Changes]

  8. (FL) Version 4.01 introduced code specifically to support the command "#W ..", but this did not work correctly, causing a protection exception. This has been corrected.

    [Back to Summary of Changes]

  9. (FLCUST) In previous versions, the handling of insert mode on the function-key definition panels was not correct when the cursor was in the label field. The cursor was repositioned incorrectly after a key was typed, and pressing the tab forward or tab backward key caused spurious characters to appear in the command field of that line or the previous line. This has been corrected.

    [Back to Summary of Changes]


Valid HTML 4.01 Page last changed: 2008-07-25 Valid CSS