Rev. 24.01.01 released today.

5 views
Skip to first unread message

Greg Field

unread,
Jan 6, 2024, 12:36:42 AM1/6/24
to Open/ed
Released version :
------------------

    24.01.01

New features.
-------------

    HISTORY options and HISTORY mode options are updated.

    Shortcut synonyms for the HISTORY command are added.

    HISTORY EDIT edits your history with a nested Open/ed session.

    HISTORY command Synonyms
        HE      HISTORY EDIT
        HH      HISTORY HELP
        HI      HISTORY INSERT
        HL      HISTORY LOCATE
        HX      HISTORY XEQ

    8-bit Ascii.
    All functions are checked to allow high (8th) bit on characters. ^200 to
    ^377 is supported in integer expressions. Open/ed has always allowed
    this but this review checked it works everywhere.

    Consolidation of help files.
    Example : TOLOWER() is now in the TOUPPER() help file.


Discussion
----------

    This release is mainly to add ease of use to HISTORY.

    HISTORY mode options are updated including ADDER and UNIQUE.
    These may still change name in the future.

    Usually Open/ed mode options are off but HISTORY now has several on
    by default.

    DEFault : NUMBER, UNIQUE, XEQ, ADDERR, EDIT.

    See the help entry for HISTORY_MODE.

    Help command becomes HELP, no abbreviation. Makes way for HIS synonyms.

    Added HISTORY command synonyms HE, HH, HI, HL, HX.
    These are short cuts to HISTORY command options.
    For example hx7 executes the 7th command line in history.

    8-bit Ascii.
    All functions are checked to allow high (8th) bit characters. ^nnn is
    supported in integer expressions and functions.

    Updated for 8 bit :
        CHAR(), PEEK(), POKE().
        FGETC() and FPUTC().
        FGETS() and FPUTS().
        STRFILL().
        CAT() and SPLAT().
        ISALTERN ().
        ISPARITY () is deprecated. Use ISALTERN().
        SIGN() and UNSIGN().
        EXTRACT()  has new key = 'b' for high Bit on.
        STRALL().
        CHREM() and CHREP().
        ITEMS(), FIELDS (), LINES ().
        ITEMINLIST (), FIELDINLIST (), LINEINLIST (), SORT ().
        ADDITEM(), GETPIDS (), GREP (), PERG (), HEAD (), TAIL ().
        ITEM/LINE/FIELD (), NEXT ITEM/LINE/FIELD (), SORT (), UNIQUE ().
        MENU ().
        DIRLIST ().
        Add ^nnn octal to integer expressions.

    Consolidation of help files. Example TOUPPER() docs TOLOWER() fuunction.


Program options
---------------

    ned -print EOF
    ned -print ERR

    None.


Commands
--------

    New
    ---

    None.
    But note the new HISTORY synonyms look like new abbreviated commands.

    Changes
    -------


Abbreviations
-------------

    H for help becomes HELP with no abbreviation.
    H is for HISTORY.

Modes
-----

    HISTORY mode has new sub options.
        See "help history_mode".

    MODE PRINT changes in that a NOMODE PRINT ; MODE PRINT restores original settings.


Functions
---------

    New
    ---

        Added STRLEFT () and STRIGHT () string compare int functions.

        FCLOSE() function for files (fstreams).

        Rename TRUNCATE() to STRTRUNC().

    Deprecated
    ----------

        Deprecated    SINCH(). Use LHS CHAR() instead.
        Deprecated ISPARITY(). Use ISALTERN() which was the same anyhow.


Variables
---------

    New :

        %private%.macros%  and  %public.macros% are settable with LET ...

        %tag.count% added as a synonym for %total.tagged%.

    Removed variables :

        None.

    Changed variables :

        None.


Constants
---------

    New constants :

        None.

    Changes :

        None.

    EOF and ERR are added as ned -print constants.


Maths operators
---------------

    No change.


Symbols
-------

    No change.


Macros
------

    No new macros.

    Some have been updated for Rev. 24.


Screen mode window.
-------------------

    Quiting a modified work file in screen mode is updated.
    For example the command used such as QUIT is shown.


WHEN conditions
---------------

    No change.

Menus
-----

   No change.


Keyboard
--------

   No change.

Help.
-----

    New entries for new functions and changed commands.

    Many help entries are merged.

    Help for this       is in here.
    -------------       -----------
    CUB                 CUT
    STRNEQ()            STREQ()
    DOBEF               DOVER
    ELSE and ENDIF      IF
    DEC                 INC
    NFIND RFIND         FIND
    TOLOWER             TOUPPER
    UNTIL and ENDENTIL  WHILE
    OCURSOR             OVERLAY
    UNMAP               MAP
    IBEFORE             INSERT
    UNBLOCK             BLOCK
    UNBOX               BOX
    QFINAL              QUIT
    UNTAG               TAG
    ENDWHILE            WHILE
    NONE()              SOME()
    ENDIF               IF
    RLOCATE             LOCATE


Scripts
-------

    No change.


Error codes
-----------

    No change.


Bug fixes
---------

    23-055 TRUNCATE() does not allow length/column of 0.
    23-056 Memory fault caused by gspartpath().
    23-057 AP at LINESZ gets gscpycsub () : Error : 'target_column' = 1025 !
           Larger than MAX size of target 1024.
    23-058 APPEND is still apending after last non space character.
    23-059 MODE PRINT ; does nothing. Make error report.
    23-060 NEW command proceeds after menu option 1. 1x2 reversed.
    23-062 QUIT was not handling new trashwork() answer. Like  23-060.
    23-063 Tidy position () calls moving them to workwrite ().
    23-064 BS (delete) not erasing last char in line.
    23-065 Memory fault in gpl:flines() returning.
    23-066 fgrep() aborts on return.
           Similar to 23-065. I think its an OS+Compiler upgrade thing.
    23-067 gpl:parse sees nul token when source '"abc"  ,' Stops at 1st SP.


Open bugs
---------

    22-018 WHICH double reports on "." and same directory in PATH.
    22-015 Shared mem still splits to different segments after crash.
    23-007 Click on ALERT message sometimes does not register in alarm system.
    23-029 MODE() help needs more constants for modes ...
           LR,SR,TAB,WAITER,XT,EOL,MSG,SB,GREP,HISTORY,LP.
    23-061 gshift errors when ... mode tab in ... unusual options ?
    23-068 SCR_PAGE jumbles text on x86 Macos.
            Workaround in place. Do MODE EPAGE.
    23-069 ^200 up chars corrupt window borders and scroll bar.
    23-070 flag.c : Internal error : TAG_LIST and tag.list = NUL

    Open bugs discussion :

    If Open/ed crashes and is restarted, it may start a new shared memory segment for alarms.
    The only way around this is to exit all of your Open/ed sessions and
    remove the control file : %alarms.control.file%.

    The WHICH command examines each directory in PATH.
    If '.' is specified and the same directory is also specified, then the
    WHICH command will double report if the command is found.

    If you page foreward or back in screen mode and see jumbled text from previous
    pages, then this is 23-068. This appeared just before release in Decmber 2023.
    You should only see it on x86 Macos, not on Arm or linux. There is a workaround
    in place so you should not see it, but please report it if you do.

    The integer value of a control character is ^X.
    Quoted control codes needs a review.


Source code Stats
-----------------

    Version : 23.12.29    Sat 30 Dec 2023 16:12:20

    ned     is 103375 lines,   4M bytes, averaging 41 bytes per line.
    gstlib  is  13262 lines, 463K bytes, averaging 34 bytes per line.
    shmlib  is   1158 lines,  37K bytes, averaging 32 bytes per line.
    strsort is    541 lines, 1 6K bytes, averaging 30 bytes per line.
    curwin  is   6628 lines, 245K bytes, averaging 37 bytes per line.
    gpl     is  12653 lines, 401K bytes, averaging 31 bytes per line.
    include is   1640 lines,  98K bytes, averaging 60 bytes per line.

    Open/ed is 139257 lines,   5M bytes, averaging 40 bytes per line.

                 3274  additional lines.


Other
-----


    --------------------------------------------------------------------------------
Reply all
Reply to author
Forward
0 new messages