diff --git a/sources/EXTERNALFORMAT b/sources/EXTERNALFORMAT index 24c24aa00..e5066f655 100644 --- a/sources/EXTERNALFORMAT +++ b/sources/EXTERNALFORMAT @@ -1,13 +1,13 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "17-Dec-2024 15:29:21" {WMEDLEY}EXTERNALFORMAT.;90 39713 +(FILECREATED "17-Dec-2024 17:44:48" {WMEDLEY}EXTERNALFORMAT.;92 41401 :EDIT-BY rmk - :CHANGES-TO (FNS \CHECKEOLC.CRLF) - (MACROS \CHECKEOLC) + :CHANGES-TO (MACROS \CHECKEOLC) + (FNS \INCCODE.EOLC) - :PREVIOUS-DATE "19-Mar-2024 18:24:39" {WMEDLEY}EXTERNALFORMAT.;88) + :PREVIOUS-DATE "17-Dec-2024 17:00:58" {WMEDLEY}EXTERNALFORMAT.;91) (PRETTYCOMPRINT EXTERNALFORMATCOMS) @@ -538,7 +538,7 @@ FSTRING]) (\CHECKEOLC.CRLF - [LAMBDA (STREAM PEEKBINFLG COUNTP EOLC) (* ; "Edited 17-Dec-2024 15:28 by rmk") + [LAMBDA (STREAM PEEKBINFLG COUNTP EOLC) (* ; "Edited 17-Dec-2024 17:00 by rmk") (* ; "Edited 6-Dec-2023 23:39 by rmk") (* ; "Edited 17-Oct-2023 11:56 by rmk") (* ; "Edited 6-Aug-2021 23:30 by rmk:") @@ -566,7 +566,7 @@ (PROG1 (\PEEKCCODE STREAM T 'NOEOLC) (* ;; - "This has to be a call to \PEEKCODE that doesn't itself to the checkeolc") + "This has to be a call to \PEEKCODE that doesn't itself do the checkeolc") (* ;;  "LF must be the next char after the CR. We back up over the CR that \INCCODE just read.") @@ -575,9 +575,13 @@ (* ;; "Got the CRLF, it's an EOL") + (CL:WHEN (EQ ANY.EOLC (FFETCH (STREAM DETECTEDEOLCONVENTION) + OF STREAM)) + (FREPLACE (STREAM DETECTEDEOLCONVENTION) OF STREAM WITH CRLF.EOLC + )) (CHARCODE EOL)) (T (SELECTC EOLC - ((LIST ANY.EOLC) + ((LIST ANY.EOLC 'ANY) (CL:WHEN (EQ ANY.EOLC (FFETCH (STREAM DETECTEDEOLCONVENTION ) OF STREAM)) @@ -601,6 +605,9 @@ (CHARCODE EOL)) (T (SELECTC EOLC ((LIST ANY.EOLC 'ANY) + (CL:WHEN (EQ ANY.EOLC (FFETCH (STREAM DETECTEDEOLCONVENTION) + OF STREAM)) + (FREPLACE (STREAM DETECTEDEOLCONVENTION) OF STREAM WITH CR.EOLC)) (CHARCODE EOL)) (CHARCODE CR] CH]) @@ -611,11 +618,23 @@ (PUTPROPS \CHECKEOLC MACRO (OPENLAMBDA (CH EOLC STRM PEEKBINFLG COUNTP) (SELCHARQ CH (LF (SELECTC (OR EOLC (FFETCH (STREAM EOLCONVENTION) OF STRM)) - ((LIST LF.EOLC ANY.EOLC 'LF 'ANY) + ((LIST ANY.EOLC 'ANY) + (CL:WHEN (EQ ANY.EOLC (FFETCH (STREAM + DETECTEDEOLCONVENTION + ) OF STREAM)) + (FREPLACE (STREAM DETECTEDEOLCONVENTION) + OF STREAM WITH LF.EOLC)) + (CHARCODE EOL)) + ((LIST LF.EOLC 'LF) (CHARCODE EOL)) (CHARCODE LF))) (CR (SELECTC (OR EOLC (FFETCH (STREAM EOLCONVENTION) OF STRM)) ((LIST CR.EOLC 'CR) + (CL:WHEN (EQ ANY.EOLC (FFETCH (STREAM + DETECTEDEOLCONVENTION + ) OF STREAM)) + (FREPLACE (STREAM DETECTEDEOLCONVENTION) + OF STREAM WITH CR.EOLC)) (CHARCODE EOL)) ((LIST ANY.EOLC CRLF.EOLC 'CRLF 'ANY) (\CHECKEOLC.CRLF STRM PEEKBINFLG COUNTP EOLC)) @@ -746,13 +765,13 @@ (\CREATE.THROUGH.EXTERNALFORMAT) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (6744 13577 (\EXTERNALFORMAT 6754 . 10532) (MAKE-EXTERNALFORMAT 10534 . 13104) ( -\EXTERNALFORMAT.DEFPRINT 13106 . 13575)) (13578 16619 (\INSTALL.EXTERNALFORMAT 13588 . 15037) ( -\REMOVE.EXTERNALFORMAT 15039 . 15870) (FIND-FORMAT 15872 . 16617)) (16620 17032 (SYSTEM-EXTERNALFORMAT - 16630 . 17030)) (17381 34132 (\OUTCHAR 17391 . 18608) (\INCCODE 18610 . 19763) (\BACKCCODE 19765 . -21444) (\BACKCCODE.EOLC 21446 . 23636) (\PEEKCCODE 23638 . 23963) (\PEEKCCODE.EOLC 23965 . 24344) ( -\INCCODE.EOLC 24346 . 26145) (\FORMATBYTESTREAM 26147 . 28591) (\FORMATBYTESTRING 28593 . 30293) ( -\CHECKEOLC.CRLF 30295 . 34130)) (35414 37650 (\NULLDEVICE 35424 . 37326) (\NULL.OPENFILE 37328 . 37648 -)) (37790 39617 (\CREATE.THROUGH.EXTERNALFORMAT 37800 . 38586) (\THROUGHIN 38588 . 39008) ( -\THROUGHBACKCCODE 39010 . 39277) (\THROUGHOUTCHARFN 39279 . 39615))))) + (FILEMAP (NIL (6742 13575 (\EXTERNALFORMAT 6752 . 10530) (MAKE-EXTERNALFORMAT 10532 . 13102) ( +\EXTERNALFORMAT.DEFPRINT 13104 . 13573)) (13576 16617 (\INSTALL.EXTERNALFORMAT 13586 . 15035) ( +\REMOVE.EXTERNALFORMAT 15037 . 15868) (FIND-FORMAT 15870 . 16615)) (16618 17030 (SYSTEM-EXTERNALFORMAT + 16628 . 17028)) (17379 34752 (\OUTCHAR 17389 . 18606) (\INCCODE 18608 . 19761) (\BACKCCODE 19763 . +21442) (\BACKCCODE.EOLC 21444 . 23634) (\PEEKCCODE 23636 . 23961) (\PEEKCCODE.EOLC 23963 . 24342) ( +\INCCODE.EOLC 24344 . 26143) (\FORMATBYTESTREAM 26145 . 28589) (\FORMATBYTESTRING 28591 . 30291) ( +\CHECKEOLC.CRLF 30293 . 34750)) (37102 39338 (\NULLDEVICE 37112 . 39014) (\NULL.OPENFILE 39016 . 39336 +)) (39478 41305 (\CREATE.THROUGH.EXTERNALFORMAT 39488 . 40274) (\THROUGHIN 40276 . 40696) ( +\THROUGHBACKCCODE 40698 . 40965) (\THROUGHOUTCHARFN 40967 . 41303))))) STOP diff --git a/sources/EXTERNALFORMAT.LCOM b/sources/EXTERNALFORMAT.LCOM index ab27f4303..ee4a7d519 100644 Binary files a/sources/EXTERNALFORMAT.LCOM and b/sources/EXTERNALFORMAT.LCOM differ