home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / AUROR21A.ZIP / WHATSNEW.DOC < prev    next >
Encoding:
Text File  |  1995-09-01  |  15.7 KB  |  403 lines

  1.  
  2.            ***  Welcome to The Aurora Editor version 2.1!  ***
  3.                   (C) Copyright 1993-1995 nuText Systems
  4.                       All rights reserved worldwide.
  5.  
  6.  
  7. What's New:
  8. ───────────
  9. This file briefly highlights some of the new features available in
  10. Aurora version 2.1. For more detailed information, see the User's Guide,
  11. the AML Language Reference, and the AML Function Reference.
  12.  
  13.  
  14. Aurora version 2.1
  15. ──────────────────
  16. * Aurora now features a new 'Interactive Configuration', in addition to
  17.   the standard .AML configuration files. Dialog boxes have been provided
  18.   for changing most configuration settings interactively within an edit
  19.   session. The new configuration dialog boxes are accessible through the
  20.   'Configuration and Setup' item on the 'Set' menu. Interactive
  21.   configuration settings include:
  22.  
  23.     - Colors                     - Open Options
  24.     - Confirmations              - Print Options
  25.     - Desktop Options            - Prompt Styles
  26.     - Edit Options               - Save Options
  27.     - File Manager Options       - Sort Options
  28.     - Line Delimiters            - Search / Replace Options
  29.     - Margins and Tabs           - Text Reformatting Options
  30.     - Miscellaneous Options      - Video Modes
  31.     - Mouse Options              - Window Styles
  32.  
  33. * The 'Save Configuration' item on the Set menu will now directly update
  34.   source CONFIG.AML and COLOR.AML files with the current configuration
  35.   settings and recompile the editor. Unlike v2.0, changes will not be
  36.   lost when you recompile the editor.
  37.  
  38. * Source code for the new configuration dialog boxes is located in a new
  39.   'CFG' subdirectory, making even the configuration scheme configurable!
  40.   Within this code, custom dialog boxes are created by using new library
  41.   functions (see below). The installation macro (INSTALL.AML) was also
  42.   modified to accomodate the new CFG subdirectory.
  43.  
  44. * The following new AML macros have been added to the macro list (on the
  45.   Macro menu), and to the MACRO subdirectory:
  46.  
  47.     ASCII2.AML   - 2-dimensional ASCII chart
  48.     BOOKLIST.AML - List all bookmarks
  49.     CALEN4.AML   - Four-month calendar
  50.     COMPARE.AML  - Compare two files
  51.     COUNTLIN.AML - Count lines in multiple files
  52.     DLGDEMO.AML  - AML dialog box demo with dialog box controls
  53.     SCRSAVER.AML - AML Screen Saver demo showing how to draw on the screen
  54.     STYLE.AML    - Change the editor keyboard/menu style
  55.     TEMPLATE.AML - Install Template-Editing
  56.     TEMPLATE.DAT - Template data (used by TEMPLATE.AML)
  57.  
  58. * The macro list can now be displayed by pressing <ctrl f12>
  59.  
  60. * Several macros have been rewritten. These macros now take advantage of
  61.   important new macro language features which allow them to run as
  62.   independent, movable, switchable, windows (you can also run multiple
  63.   instances of these macros). The rewritten macros include:
  64.  
  65.     ASCII2.AML    - 2-dimensional ASCII chart
  66.     KEYCODES.AML  - Display various keycodes
  67.     CALCPAD.AML   - Calculator pad
  68.     CLRCHART.AML  - Color chart
  69.     CALENDAR.AML  - One-month Calendar
  70.     CALEN4.AML    - Four-month Calendar
  71.  
  72. * A following new keyboard/menu styles are available at installation.
  73.  
  74.     - Aurora/CUA/Windows
  75.     - MultiEdit
  76.  
  77. * Commands were added to the clipboard menu which allow you to 'Copy To'
  78.   and 'Paste From' the Windows Clipboard (up to 16k bytes). Aurora must
  79.   be running in an MS Windows/95 DOS box or an MS Windows 3.1 enhanced
  80.   mode DOS box to use these commands.
  81.  
  82. * The following additional changes were made to the default menus:
  83.  
  84.     Window menu:
  85.       - removed "Style Toggle" (equivalent function is now provided
  86.         from within the 'Configuration and Setup' menu item)
  87.  
  88.     Set menu:
  89.       - added 'Configuration and Setup'
  90.       - 'Word Processing' was relaced with 'Margins and Tabs'
  91.       - 'Binary Line Length' and 'Line Delimiter Options' were replaced
  92.       - with 'Line Delimiter Options'.
  93.       - 'Video Mode' and 'Video Toggle' were removed (equivalent
  94.         function is now provided from within the 'Configuration and
  95.         Setup' menu item)
  96.  
  97.     Macro menu:
  98.       - added 'Show Available Keys..'
  99.       - removed 'Configuration..'
  100.       - removed 'Include Macro'
  101.  
  102. * The new '>' and '<' window style option codes will now allow Edit and
  103.   File Manager titles to be placed within the window border, when the
  104.   border style is not zero. These options can also be changed from the
  105.   'Window Style 1' configuration dialog box.
  106.  
  107. * All online documentation is now 'read/only' when opened through the
  108.   help menus and hotkeys.
  109.  
  110. * A new "Sort Options" dialog box is displayed when entering the
  111.   'sortblock2' (Block Sort) command.
  112.  
  113. * The File Manager will now always show the drive bar, even if the menu
  114.   bar is removed.
  115.  
  116. * Hot key positioning on the File Manager and Popup Menus will now use
  117.   incremental searching.
  118.  
  119. * New listbox color attributes (71-74) were added to COLOR.AML.
  120.  
  121. * The following changes were made to CONFIG.AML:
  122.  
  123.     - Added the new setting 'FormatOpt', for default text reformatting
  124.       options.
  125.  
  126.     - Added the new setting 'SortOpt', for default block sorting
  127.       options.
  128.  
  129.     - The 'FmgrCtls' and 'EditCtls' settings were removed. South title
  130.       controls are now defined by adding style option 'z' to 'EditStyle'
  131.       and/or 'FmgrStyle'.
  132.  
  133.     - 'ExitOpen' was moved to the Desktop section.
  134.  
  135. * Several changes were made to the keyboard configuration and handling:
  136.  
  137.     - In SYSTEM.AML, the new 'kbdoptions' setting replaces the
  138.       'enchancedkbd' setting. The new keyboard options are:
  139.  
  140.         e = enable enhanced keyboard keys
  141.         g = enable unshifted grey keypad function keys
  142.               (<grey*>, <grey->, <grey+>)
  143.         w = enable shifted white keypad function keys
  144.               (<shift del>, <shift ins>, <shift end>, etc.)
  145.  
  146.       (numeric keypad users may wish to disable options 'g' and/or 'w')
  147.  
  148.     - The shifted grey island keys (<shift del>, <shift ins>, etc.) are
  149.       now handled properly, and are no longer interpreted as <del>,
  150.       <ins>, etc. The keyboard configuration files for all editor styles
  151.       were modified to reflect these changes.
  152.  
  153.  
  154.  
  155. Macro Language Additions/Changes in version 2.1:
  156. ────────────────────────────────────────────────
  157.  
  158. Architectural Changes:
  159. ──────────────────────
  160.  
  161. * Global variables are now 'persistent', and will hold their values
  162.   throughout the lifetime of the macro in which they are defined. When
  163.   used within internal macro areas such as KBD.AML, EXT.AML, etc.,
  164.   global variables will hold their values throughout an entire editing
  165.   session.
  166.  
  167. * The 'runmacro' function will now allow pre-existing functions to be
  168.   replaced or 'preempted' throughout the lifetime of the external macro.
  169.   This is accomplished by simply defining a function with the same name
  170.   as the function to be preempted, in the same object as the function to
  171.   be preempted.
  172.  
  173.   This feature allows detailed, temporary modifications to be made to
  174.   existing objects (i.e. detailed changes in editor behavior), without
  175.   adding new objects to the object hierarchy. The modifications will
  176.   disappear when the macro is finished executing, or the temporary
  177.   object associated with 'runmacro' is destroyed.
  178.  
  179.   The new function 'passprev' can be used within the newer preempting
  180.   functions to access the older preempted functions.
  181.  
  182. * The new 'stayresident' function allows external macros executed by
  183.   'runmacro' to remain resident after they are finished executing,
  184.   similar to way the 'includemacro' function works. Functions can be
  185.   defined within the macro which respond to events after 'runmacro'
  186.   returns.
  187.  
  188.   However, unlike macros executed with 'includemacro', these new
  189.   resident macros can also be 'purged' by destroying the temporary
  190.   object automatically created by 'runmacro'.
  191.  
  192.   Using the 'stayresident' function, it is possible to write Aurora
  193.   mini-applications which behave as independent windows on the desktop.
  194.   Macros such as CALCPAD, CALENDAR, CLRCHART, etc. are examples of these
  195.   mini-applications.
  196.  
  197.  
  198. Syntax/Compiler Changes:
  199. ────────────────────────
  200.  
  201. * Objects and functions may now have the same name.
  202.  
  203. * The 'object' statement is no longer permitted within functions or key
  204.   definitions.
  205.  
  206. * A new compiler error code (1318: invalid number) was added.
  207.  
  208. * The following standard backslash control characters can now be entered
  209.   within strings:
  210.  
  211.       \a - alert (beep) character (ASCII 7)
  212.       \b - backspace character (ASCII 8)
  213.       \f - formfeed character (ASCII 12)
  214.       \n - newline (linefeed) character (ASCII 10)
  215.       \r - return character (ASCII 13)
  216.       \t - tab character (ASCII 9)
  217.       \v - vertical tab character (ASCII 11)
  218.       \xHH - any hex character
  219.  
  220. * The following new keywords can now be used instead of the 'end'
  221.   keyword, in their respective language structures:
  222.  
  223.       endcase             endkey
  224.       enddatabuf          endloop
  225.       enddefine           endmenu
  226.       endfunction         endmenubar
  227.       endif               endwhile
  228.  
  229. * The AML compiler generates smaller executable code (A.X in v2.1 is
  230.   about 5k smaller than A.X in v2.0).
  231.  
  232.  
  233. Function Additions/Changes:
  234. ───────────────────────────
  235.  
  236. * A new dialog box interface is now provided by the editor library code
  237.   (LIB.X), enabling you to create custom dialog boxes - see FUNCTION.DOX
  238.   and LANGUAGE.DOX for full details. For examples on how to create and
  239.   use dialog boxes, see the dialog box demo DLGDEMO.AML, and macros in
  240.   the new CFG subdirectory. The new dialog box functions are:
  241.  
  242.     dialog       - creates a main dialog box window
  243.     button       - creates a button control
  244.     field        - creates an edit field control
  245.     listbox      - creates a listbox control
  246.     groupbox     - creates a groupbox control with checkboxes or
  247.                    radio buttons
  248.     setgroupbox  - re-initializes a groupbox
  249.     getdialog    - displays a 'modal' dialog box, and retreives
  250.                    dialog box control values.
  251.     showdialog   - displays a 'modeless' dialog box.
  252.     whenenter    - defines a user-function to be called when <enter>
  253.                    (or equivalent) is pressed from within a dialog
  254.                    box control.
  255.     whenselect   - defines a user-function to be called when an item
  256.                    is selected from within a group box or list box.
  257.  
  258.  
  259. * The following new functions were also added (see FUNCTION.DOX for full
  260.   details):
  261.  
  262.     builtin functions:
  263.       fillrect       // fill a rectangle with a character
  264.       getattr        // get a color attribute from a video window
  265.       geteventcount  // get the number of real events
  266.       getstr         // get a string from a video window
  267.       gotoscreen     // route video functions to the physical screen
  268.       inheritfrom    // change the inheritance path of the current object
  269.       kbdoptions     // set keyboard options
  270.       parse          // parse substrings of a string into variables
  271.       passprev       // call the current function in a preempted object
  272.       stayresident   // force an executable macro to remain resident
  273.       windowflag     // change window flags
  274.  
  275.       comments:
  276.         - gotoscreen enables video functions such as writestr, hilite,
  277.           etc. to write directly to the physical screen.
  278.  
  279.         - parse will extract substrings of a string and place them in
  280.           user variables, with only one function call. The substrings
  281.           are specified with a search pattern, which may be a regular
  282.           expression pattern. This function is very handy for parsing
  283.           almost anything, including compiler output.
  284.  
  285.         - windowflag enables the new events 'ondraw' and 'onstatus' (see
  286.           below), which allow customized drawing of the window and
  287.           status line.
  288.  
  289.  
  290.     library functions:
  291.       askbox         // prompt the user for a string (2-line box)
  292.       askbox1        // prompt the user for a string (1-line box)
  293.       askline        // prompt the user for a string (command-line prompt)
  294.       enter          // enter key (prompt object)
  295.       setmenucurs    // change menu cursor style
  296.  
  297.     extension functions:
  298.       runcfg         // run a macro in the CFG subdirectory (w/prefix CFG)
  299.       runmac         // run a macro in the MACRO subdirectory
  300.       savecfg        // save current config variables and recompile
  301.  
  302.     events:
  303.       ondraw         // called after drawing the window client area
  304.       onkillfocus    // called before before a window loses the focus
  305.       onstatus       // called before drawing the window status line
  306.  
  307.  
  308. * The following functions were removed:
  309.  
  310.     builtin functions:
  311.       enhancedkbd    // replaced by: kbdoptions
  312.       getobjsize     // not needed
  313.       clearwindow    // not needed: the same effect can be achieved with
  314.                         'hilite' and the new 'fillrect' function
  315.  
  316.     library functions:
  317.       togglestyle    // replaced by: runcfg "style"
  318.  
  319.     extension functions:
  320.       saveconfig     // replaced by: savecfg
  321.       includemacro2  // seldom used
  322.       askimacro      // seldom used
  323.       askbinary      // replaced by: runcfg "ldlm"
  324.       askdelim       // replaced by: runcfg "ldlm"
  325.       asktabw        // replaced by: runcfg "marg"
  326.       asktabv        // replaced by: runcfg "marg"
  327.       asklmarg       // replaced by: runcfg "marg"
  328.       askrmarg       // replaced by: runcfg "marg"
  329.       askprint       // replaced by: runcfg "print"
  330.       askprompt      // replaced by: runcfg "prom"
  331.  
  332.  
  333. * The following functions were altered in some way:
  334.  
  335.     builtin functions:
  336.     -----------------
  337.       bufferflag, bufferflag?
  338.         Option 'r' was added to these functions to permit buffers to be
  339.         made 'read-only'.
  340.  
  341.       gotobuf
  342.         gotobuf now returns the previous current buffer.
  343.  
  344.       gotowindow
  345.         gotowindow now returns the previous current window.
  346.  
  347.       hilite
  348.         hilite now advances the cursor in video windows if the height is
  349.         one.
  350.  
  351.       menubar, getmenubar
  352.         Removed the west menubar (menubar 5).
  353.  
  354.       replace
  355.         When using regular expressions, any of the special control
  356.         characters "\a\b\f\n\r\t\v\xHH" can be used in the replace
  357.         string.
  358.  
  359.       say
  360.         say is now a builtin function, and works in any window.
  361.  
  362.       setdisplay
  363.         Added the display option -1, which validates the display so that
  364.         updating will not be performed. This allows you to draw in an
  365.         edit window without the editor immediately overwriting it.
  366.  
  367.       setframe, frame?
  368.         Added new option codes '>' and '<' for north and south
  369.         title-in-border frame options.
  370.  
  371.       usemark
  372.         usemark now returns the previous default markid.
  373.  
  374.  
  375.     library functions:
  376.     -----------------
  377.       msgbox, okbox, shortbox, yncbox
  378.         These functions will now allow message boxes with 2 message
  379.         lines to be displayed when a newline character (\n) is inserted
  380.         in the message string.
  381.  
  382.  
  383.     extension functions:
  384.     -------------------
  385.       ask
  386.         ask is no longer a library function, but is now exposed in
  387.         EXT.AML, allowing you to customize the dialog box appearance
  388.         when using the dialog box prompt style.
  389.  
  390.       onhotkey
  391.         onhotkey now works with any number of leading spaces on popup
  392.         menu items (onhotkey now works correctly on help popup menus).
  393.  
  394.       saveblock2
  395.         Added a new parameter: the filename where the block should be
  396.         saved. You are prompted if the filename is not specified.
  397.  
  398.       writebak
  399.         writebak is no longer a builtin function, but is now exposed in
  400.         EXT.AML. Parameter order has also been changed to resemble the
  401.         'writestr' builtin function.
  402.  
  403.