1
0
mirror of synced 2026-01-27 12:52:06 +00:00
Commit Graph

363 Commits

Author SHA1 Message Date
Frank Halasz
2499b3546e Fix Issue#2151 MEDLEY-INIT-VARS now resets the LI pseudohost whenever it resets the value of LOGINHOST/DIR (#2152)
Fix Issue#2151 

MEDLEY-INIT-VARS now resets the LI pseudohost whenever it sets/resets the value of LOGINHOST/DIR - providing PSEUDOHOSTS is loaded and LI pseudohost already exists.
2025-05-19 09:46:07 -07:00
rmkaplan
40e3edc291 Remove DIRECTORYNAMEP check in EDITCALLERS (#2123)
So that (EDITCALLERS 'xxx 'UNICODE) works
2025-04-28 17:49:43 -07:00
rmkaplan
627f359b5e (WHEREIS xx NIL) means (WHEREIS xx '(FNS FUNCTIONS)) (#2112) 2025-04-21 11:47:56 -07:00
rmkaplan
3f5496f593 Use (CHARCODE Meta,0) instead of \KEYBOARD.META in LLKEY (#2094) 2025-04-05 22:19:46 -07:00
rmkaplan
2a66f76606 Remove charset-shifting characternames from XCCS, leaving constants 2025-03-26 00:04:20 -07:00
rmkaplan
7242b998c7 LLREAD: Add character names One, Two... for digits 0, 1 ... 2025-03-08 09:59:28 -08:00
Frank Halasz
58f8fbdc53 Restore REM.CM to be separate file from greet file; Enable chaining of medley runs using REM.CM file (#2027)
- Fixed INTERPRET.REM.CM so that it no longer tries to load the file pointed to by LDEINIT and instead loads the file pointed to by LDEREMCM. 
 LDEINIT remains the file used by greet. 
- Adjusted the medley script to have a new argument -cm (or --rem.cm) which sets LDEREMCM as appropriate before launching lde.  
- Updated the loadup scripts as required to use this new -cm argument when calling medley. 
 Finally, added a new feature to the medley script -cc (or --repeat) whereby which when medley finishes it checks for a nonzero file given as the argument to -cc.  If that file exists, medley is run again (i.e., repeated) with LDEREMCM set to that file.  This repeats until this file no longer exists or is zero-length.  The file can be found as the vale of LDEREPEATCM so that each invocation of medley can modify (or delete) this file so as to change the subsequent run of medley.
2025-02-26 09:52:01 -08:00
rmkaplan
3aa58b6374 TEDIT: Align paralooks with charlooks, recompile all files, miscellaneous updates (#2021)
* Fix up Move command

* change paralooks record, recompile, other updates

* Fix right arrow and EOF

* Caret position after NEXT, add FILESTREAM textprop, CH#/LEN args to TEDIT.SEL.AS.STRING

* Added LLK

* Arrows-movement in menus is confined to fields

* Slightly better menu test

* TEXTPROP glitch, create window after getting file

* remove a debug call

* forward/backward forgets original x position

* Opentext stream preps for window-region prompt width

* typing resets the leftarrow X position

* Removing cached X position for up and down arrows

I tied this to the DIRTY flag and recompiled its users.  Also separately fixed the setsel and find functions to clobber the cache

* Fencepost glitrch

* add OPENWIDTH property

* Selection past the middle goes to the right

* bug fix

* Set up for paralooks name changes to avoid future confusions

* Update tedit-exports.all

* One more systematic name change for char/para looks parallelism

* TEDITSTRING applies initial props

* TEDIT.CARETLOOKS returns oldlooks, TEDIT.PUT has a QUIET flag

QUITEFLAG suppresses prompt printing
2025-02-24 21:24:53 -08:00
Matt Heffron
40d18fff6e Fix unbound vars errors in WRITESTRIKEFONTFILE from earlier edit. (#2003) 2025-02-03 11:58:06 -08:00
Matt Heffron
db9d879920 Slightly better progress reporting in LOADUP. (#1974)
Make it clear when files are skipped because they are already loaded.
2025-02-03 10:52:00 -08:00
Matt Heffron
0bc84f97f0 Per review comment from Ron Kaplan, moved constants DUMMYINDEX and MAXCHAR from EDITFONT to FONT. 2025-02-01 12:44:17 -08:00
Matt Heffron
402a861b95 Fix unbound vars errors in WRITESTRIKEFONTFILE from earlier edit. 2025-02-01 10:25:49 -08:00
Nick Briggs
015868e9a6 Adds STATUS argument to LOGOUT for process exit status (#1978) 2025-01-27 11:32:29 -08:00
rmkaplan
27473e8cae TRUEDEVICE behaves more like \GETDEVICEFROMNAME (#1947)
tries to create a device if it doesn't yet exist
2025-01-20 12:14:18 -08:00
rmkaplan
0cc21cd46a IMAGEOBJ inspect macro pulls user props to the top level (#1934)
Imageobj inspect macro pulls user props to the top level
2025-01-19 11:31:26 -08:00
Matt Heffron
fb7bb25201 Replaces mth26 branch. This doesn't change the file's READTABLE. 2025-01-14 13:34:11 -08:00
rmkaplan
5b37dd09db Rmk32 eol convention for input defaults to ANY, extend OPENSTREAM so that EOL can be specified as an "external format" (#1785)
* FILEIO: EOL for input defaults to ANY, EXT-FORMAT can specify EOL

As per technical meeting on 7/15/2024

* Revert "FILEIO: EOL for input defaults to ANY, EXT-FORMAT can specify EOL"

This reverts commit 6a7e8c3665.

* FILEIO:  Fix comment

* Added DETECTEDEOLCONVENTION to STREAM declaration

and recompiled calls to macro \CHECKEOLC.

* COMAPARETEXT:  was trying to set EOL to ANY on a Tedit stream

* LCOMS needing to be recompiled for \CHECKEOLC macro and Create STREAM

(plus a new (unchanged) version of IOCHAR needed to get the cleanup to work for the recompile)

* EXTERNALFORMAT macro and function implement EOL detection

* FILEIO: stream records detected EOL, also RENAMEFILE uses COPYBYTES

UFS doesn't check file devices identity, doesn't give type-change message.  Recompiled for create stream

* ADIR has TRUEDEVICE

* Revert "FILEIO: stream records detected EOL, also RENAMEFILE uses COPYBYTES"

This reverts commit fa97aa6157.

* Revert "EXTERNALFORMAT macro and function implement EOL detection"

This reverts commit eb098615ed.

* Revert "LCOMS needing to be recompiled for \CHECKEOLC macro and Create STREAM"

This reverts commit 5967452c63.

* Revert "Added DETECTEDEOLCONVENTION to STREAM declaration"

This reverts commit 196f105cf5.

* Trying to complete the ANY/EOLC and binary RENAMEFILE issues

* loadup glitch
2024-12-25 13:06:35 -08:00
rmkaplan
db33a50af3 Tedit - a few rough edges (#1937)
Little odds and ends
2024-12-25 12:57:08 -08:00
rmkaplan
f896885720 INTERPRESS: separate MCCS from XCCS tables (#1928)
A first step at unwinding the confusions
2024-12-23 23:15:19 -08:00
rmkaplan
1d15f37fdc MAKEFILE NEW of CMLSEQ files (#1911)
so pf and tf can find DEFUNs
2024-12-23 23:00:47 -08:00
rmkaplan
e1c594b28c Remove outdated FONTDESCRIPTOR fields (#1910) 2024-12-23 22:52:36 -08:00
rmkaplan
abdb128636 Rmk36 tedit fifth round (#1857)
* TMAX updates for compatibility with Tedit changes

* DOC-OBJECTS changes for compatibility with Tedit changes

* MODERNIZE update for Tedit split windows

* Core Tedit files

* IMAGEOBJ: Remove dependency on Tedit internals

* WINDOW: Remove dependency on Tedit internal declaration

Still strange that WFROMDS should have to branch on Tedit

* WINDOWOBJ gets window of TTY process before the window of the stream of the TTY process

So insert into Tedit works

* TEDIT-CHAT: try to use TEXTSTREAM vs TEXTOBJ

* Fix tab-initialization problem in SLIDES.TEDIT

as reported by @nbriggs

* TEDIT-CHAT: use TSTREAM rather than TEXTOBJ

* Updates after lots more testing, particularly scrolling

Some other files dragged along to avoid dependence on Tedit internals

* Remove unwanted SAVE.SYSOUT

* Addresses more end-of-file and empty-file display issues

Try it again

* TEDIT-DEBUG tracking other changes

* Odds and ends

* Adjust EOF selection and caret-scrolling on copy

* More cleanup, plus fixing a few more ancient (Venue) glitches

As usual, the problems have to do with the funky behavior of EOL's in the middle and end of the document.  More abstraction and refactoring to get better control of this (I hope).

* TEDIT-WINDOW: Scroll down of big objects

Trying to fix what happens at the transition when scrolling down brings a big-object's top down in the window.   Approach is to bring down the line above, which may make for a little jump. I hope that solves it.
Scrolling up still needs some adjustment.

* Eliminate junk at top of window after up/down scrolling of big objects

BLTSHADE is OK there for scrolling, but not for redisplay after editing.  In the edit case, the top of the pane above the last valid line is preserved.
Scrolling still has the problem that the window can go blank at the first scroll that brings a tall object into the pane--still working on that.

* Scrolling with tall lines should be more continuous

* Another tweak for scrolling

plus interface extension to TEDIT.MOVE and TEDIT.COPY, a little more on field menus

* More robust strategy for field menu buttons

Surround the field with prefix and suffix pieces with image objects that print the pre and post labels and shift the selection forward or backward into the field.  Doesn't depend on inherited quirky logic in the selection line-scanner.

* Field selection ignores right and middle clicks

* A little more menu/selection tweaking

You can't extend through fields and buttons

* Added CUSTOMBUTTONEVENTFN to menu field buttons

Also, menu buttons in general can't be deleted

* A few more glitches, plus a little selection refactoring for buttons

* Reduce flicker in pargraph menu margin bar

* screen update glitch

* DOC-OBJECTS, TEDIT-SCREEN: Fixes the HCFILES DOC-OBJECTS failure

* TEDIT-BUTTONS:  Field values should always be shown in the specified FIELDFONT

* Abstracting the structure of the history lists

cleanup, but mostly as a precursor to maybe doing a ring buffer of a specified length

* TEDIT-FILE, a little font-reading cleanup

* Include the files from rmk-39 that deal with the text/binary renamefile problem

* TEDIT-PAGE addresses #1905

* Fix BUTTONSTART to STARTPC in Put/Get menu buttons

* Use width of M as width of EOL--easy to select

Also put in function call for potential kerning--needs eventual FONT support

* Rename a few internal functions from TEDIT.-- to \TEDIT.--

* Doesn't make sense for a charlooks to not have a font

* TEDIT-BUTTONS - Fix comment

* Take out Tedit internals from \CARET.FLASH?

Should have included this in fifth round long ago

* TEDIT-FILE:  use DEFAULTFONT for .sh files

Easier to follow the layout

* TEDIT-LOOKS: fix loadup order

* tedit-exports.all  Remove line-has-protection field

Useless

* Make sure that charlooks change as expected

* External format for .sh files is UTF-8

* Better display of history information for debugging

* Button changes: show document font families, better fields

* TEDIT-WINDOW, remove extra truncated line with down-scroll

* TEDIT-SELECTION: suppress line/paragraph selection for built-in menus

Line/para selection would be reasonable for multi-line fields, but most menu lines have protected text that would behave inconsistently.  So just suppress

* Better support for potential kerning

* Fix empty field value

* Simplify ASCII translation code

* Make sure headings have a default tab

* Word boundary at character 1

* Remember that you specified a font class instead of a font

For the charlooks menu, but also so that it is saved on a put

* More items on the Family NWAY-button line

* glitch

* TEDIT-LOOKS: Better algorithm for Ascii translation

* Charmenu remembers previous "Other" fonts, even if not installed

* Fix initial piece index

* Fix fontclass changes (again)
2024-12-23 11:07:54 -08:00
Larry Masinter
024e83d17e fix #1861 typo in Interpress \IPC macro for constants (#1865)
fix typo in INTERPRESS \IPC macro
2024-10-27 17:51:01 -07:00
Matt Heffron
fe04869cb3 Add git commit ID to beginning of loadups .dribble files. (#1778)
* Add git commit ID to beginning of loadups .dribble files.
The commit ID is put into the .dribble file in the .sh scripts. (using echo ... > name.dribble)
The changes to MEDLEY-UTILS, LOADUP-FULL, and LOADUP-LISP are to enable the passing of APPENDFLG to (DRIBBLE ... APPENDFLG).

* I hadn't saved file before previous commit.

* Add to IL:SYSOUTCOMMITS instead of to the .dribble files.

* Initialize SYSOUTCOMMITS so PUTASSOC has somewhere to put value(s)
2024-10-07 10:22:48 -07:00
Matt Heffron
fface7d9de CL READ-FROM-STRING returns byte position instead of character position. (#1833)
* Fix for issue 1812: CL:READ-FROM-STRING returns byte position instead of character position.

* Previous edit hadn't noticed corresponding issue using the value of the START argument passed to SETFILEPTR
2024-09-26 13:54:15 -07:00
Matt Heffron
b41ae0cbbe Extend DEFPACKAGE to accept uninterned symbols as the names to export… (#1822)
…. They are treated the same as strings: the `symbol-name` is first
interned in the package before being exported.
This is defined as the behavior in CLtL2, and using uninterned symbols
appears to be common practice in other Common Lisp code.
2024-09-23 10:28:16 -07:00
Matt Heffron
3526a61be1 Import XCL:DEFPACKAGE into LISP package, and then export it. 2024-09-05 22:40:32 -07:00
Matt Heffron
115ba43100 Extend DEFPACKAGE to accept uninterned symbols as the names to export. They are treated the same as strings: the symbol-name is first interned in the package before being exported. 2024-09-05 21:44:45 -07:00
rmkaplan
e9200c73c9 WINDOWOBJ: Install classname in IMAGEFNS 2024-07-17 23:39:33 -07:00
rmkaplan
d1fcd6cf7e Add INSPECTMACRO for windows
so that USERDATA properties show up in the single Inspect window
2024-07-04 17:00:38 -07:00
Matt Heffron
7dcc200c91 Fix issue #1749 - type-of NIL doesn't match CLtL2 (#1753)
* Fix issue #1749 - type-of NIL doesn't match CLtL2

* Fix uses of cl:type-of in the LOOP macro to deal with the change to cl:type-of.
2024-06-16 21:36:37 -07:00
Matt Heffron
ee57eabe21 In PRINT-ALL-DOCUMENTATION only one of two places was checked for the documentation string.
(Also, MAKEFILE updated the LAMA variable in the CMLEXECCOMS.)
2024-05-24 21:28:15 -07:00
Matt Heffron
eda9863432 Fix issue #1719. (#1726)
MANAGER called PF with function NAME in a variable. BUT PF is NLAMBDA so
didn't eval its argument. Changed to use CL:APPLY*. Moved the process
function from a local LAMBDA in Manager.DO.COMMAND to a separate named
function. Tweaked prompt strings for the "CopyDef" and "Rename All" item
menu commands.
2024-05-24 20:42:54 -07:00
Frank Halasz
dab6f2635f Add a DEVICE argument to \NSRANDOM.CREATE.STREAM so that when it creates a stream, it can pass a device to the stream creation code. As of PR814 of July 2022, streams whose DEVICE field is NIL break during creation. Update all callers to \NSRANDOM.CREATE.STREAM to pass the new DEVICE argument. 2024-05-23 23:37:07 -07:00
Matt Heffron
1c2f9bc395 Fix issue #1719.
MANAGER called PF with function NAME in a variable. BUT PF is NLAMBDA so didn't eval its argument. Changed to use CL:APPLY*.
Moved the process function from a local LAMBDA in Manager.DO.COMMAND to a separate named function.
Tweaked prompt strings for the "CopyDef" and "Rename All" item menu commands.
2024-05-21 22:34:30 -07:00
rmkaplan
8e22a4dcb9 UNPACKFILENAME produces lt-gt for top-level directory (#1696)
* UNPACKFILENAME produces <> for top-level directory

For virtually any combination of leading <, > or /.  Addresses   #1685.

* Produce < instead of <> for top-level empty directory

Does not yet deal with all combinations of directory-internal bracket sequences
2024-05-13 15:27:52 -07:00
rmkaplan
837f4029fe WINDOWOBJ: Add ENCAPSULATEDOBJP function (#1679)
* WINDOWOBJ:  Add ENCAPSULATEDOBJP function

If provided to TEDIT.MAP.OBJECTS, this will return a list of all unknown image objects and their locations

* Fix earlier misunderstanding of encapsulated set up
2024-04-29 19:46:25 -07:00
rmkaplan
448cb6feba HARDCOPY: Replace PROMPTFORWORD with TTYINPROMPTFORWORD in popup (#1651)
Also remade HARDCOPY NEW and TCOMPLed the whole file to get everything pretty printed and compiled.  The NEW option to MAKEFILE was not enough, I also had to set MAKEFILEREMAKEFLG to NIL.
2024-04-29 17:05:23 -07:00
Larry Masinter
92fd33eaad Add support for cl: loop for hash tables (#1605)
* Add support for cl: loop for hash tables
* fix subtle package problems setting up LISP package & conflicts with CLOS
* include fix for 'repeat n' clause
* remake in lower-case p make diffs legible, dfasl for defuns
2024-04-17 16:21:22 -07:00
Larry Masinter
0c62577e92 ANSI CL says all non-symbol non-list is self-evaluating; fix CL:EVAL (#1664) 2024-04-16 10:51:23 -07:00
Larry Masinter
44b1f8a7f3 hash p write pathname (#1612)
* #P"pathname" reads in as pathname
* #P"pathname" used for printing pathnames
* remake to remove extraneous reprint of CMLPATHNAMECOMS
2024-04-09 15:41:11 -07:00
rmkaplan
f6eb5d9846 Fixex to \FORMATBYTESTRING and \FORMATBYTESTREAM (#1618)
Motivated by the fact that FILEPOS was not being properly informed that the bytes of the encoded stream are stable (unlike XCCS) so it can run at the byte level without character decoding.
2024-04-01 20:21:38 -07:00
Larry Masinter
9b82f1a7c2 lmm57 interrupts clipboard wheelscroll (#1634)
* Changes to interrupt initialization for CLIPBOARD and WHEELSCROLL

* fixed initialization
2024-04-01 15:18:40 -07:00
rmkaplan
0a37520014 Fix for TTYINPROMPTFORWORD's bad behavior on CR termination (#1565)
Brute-force addition of parameter to TTYIN that BKSYS/DELETE function (TTYINUNREADBUF) can access freely.  Seems to work.
2024-03-20 20:34:47 -07:00
Larry Masinter
8e07e25b9a import an LOOP macro (#1579)
* import an LOOP macro
* add to loadup

* change CML-LOOP to XCL-LOOP finish
* Change package to LOOP, no nickname; 'loop' and 'loop-finish' are in LISP package
 Install copyright/acknowledgement
2024-03-16 19:57:20 -07:00
rmkaplan
c66583e7b0 Rmk110 fix unpackfilename.string (#1573)
* ADIR:  prevent segmentation fault on Intel macs

* Move the coercion of STRUCTURE and GENERATION down into UNPACKFILENAME.STRING

It was just in FILENAMEFIELD and FILENAMEFIELD.STRING, I think the coercion should be uniform
2024-03-16 19:47:53 -07:00
rmkaplan
44e42940a9 Tedit 4th round (#1352)
* INSPECT:  Sort datatype fields alphabetically, fixed a small bug

* INSPECT:  Sort only DATATYPE records

* VIRTUALKEYBOARD:  fix loadup

* Reorganizing VIRTUALKEYBOARDS as described in #1267

* KEYBOARDEDITOR:  fixed one bug, still is out of step

* MEDLEYDIR: Pack DSK as the default HOST on the value of (UNIX-GETENV "MEDLEYDIR")

* Move KEYBOARDCONFIGS KEYBOARDEDIT to library/virtualkeyboards

This collects all files relevant to VIRTUALKEYBOARDS into the same subdirectory

* NEARESTCORNER must be onscreen  (addresses #1294

Mouse jumps to the nearest onscreen corner of the ghost region

* EQUALALL tests equivalence of bitmaps and big bitmaps

* Oops, off by one

* INSPECT:  had wrong test in deciding whether to sort or not

* Improve check for closed stream in \UFSCloseFile.

Check if the (STREAM ACCESS) bits are NIL, indicating a closed stream, and
if so do not attempt to close the file again

* COMPAREDIRECTORIES, COMPARESOURCES, COMPARETEXT, EXAMINEDEFS

Relatively minor cleanups, little or no functionality improvements

* Remove calls to OPENFILE

OPENFILE is a residual Interlisp function that returns a litatom instead of a stream.  In almost all cases, this immediate causes an error that litatom files are no longer supported.  I have found (FINDCALLERS) all the examples in lispusers/sources/library/ and replaced OPENFILE with OPENSTREAM (except for the calls from \PEEKPUP and \PEEKNS, that I didn't track down).  There was a trivai call in COMPILE.FILECHECK in COMPILE, but that function is not called anywhere.  So I removed it.

* ADIR:  remove OPENFILE calls, also another stab at \COPYSYS

With respect to \COPYSYS, this replaces the draft PR #1263.  This applies TRUEFILENAME at the start, but remembers whether it was in fact a pseudohost and restores that for the return value.  So if you start in a pseudo world you end up there.

* Next version of TEDIT core files

* Update

* Update

* UPDATE

* UPDATE

* UPDATE:  FORCE-END fix

* FILEIO:  OPENSTREAM parameters default to STREAMPROP

also add LINELENGTH

* Expose useful subfunctions

* TEDITDORADOKEYS - compatibility with new declarations

* Update tedit-exports.all

* * removed from title when all changes are undone

* Delete old tedit fiels

* Add TEDIT.FILEDATE

* REGISTER-TYPED-REGION creates a new TYPED-REGIONS entry

If a window is closed whose region is of an as-yet-unknown type, a new entry will be added implicitly to TYPED-REGIONS to that that region and future regions of that type can be recycled.

* COMPAREDIRECTORIES:  Get AUTHOR only if selected

This may provide a little speed up.  But of more importance, almost all the array crashes I am seeing are underneath (GETFILEINFO xxx 'AUTHOR).  The UFS implementation may be smashing array space, or maybe it is just detecting the corruption.  For now, I'm eliminating this potential source of bad behavior.

* Hilighting and caret flashing in split windows

* A little more on window splitting caret/hilights

* Rename caret functions

* REGIONMANAGER:  Compatibility with REGIONMANAGER PR

* EXAMINEDEFS: Better interpretation of TYPE NIL = (FNS FUNCTIONS) with better formatting

* Refining caret behavior, importing separate changes also in other PRs for compatibility

* Mostly dealing with highlighting and caret flashing in split windows

* FONTPROFILE: specvars declaration for cleanliness

* Prep for UTF8, a little performance tuning

* Meta EOL = non-paragraph linebreak

* Back-scrolling based on linebreak characters, not paragraph breaks, also eliminate obsolete code

* FIddling around with window titles (getting *'s when changed), dealing with titles  not computed by Tedit

* Recompile DOC-OBJECTS because \DIRTY bit has changed

* COMPARETEXT: fixed to avoid EOF error if EOL gets confused

* CLIPBOARD (bug fix also a separate PR)

* \TEXTBOUT of EOL doesn't create a paragraph, though typing does

Otherwise, every line in a plaintext or lisp sourcefile is a separate paragraph, which adds unnecessary overhead.

* TEDIT-PCTREE:  Move some straggling piece and btree functions to their proper home

* Change \TEDIT2 to \TEDIT1 as a way of recognizing a Tedit process

* Prepping for more speed up in SEEing of large source files

* Miscellaneous stability/maintenance/performance changes

Fixes the TEDIT.TITLEMENUFN problem, adds TEDIT.COLLECT.OBJECTS

* TEDIT-FILE :  fix readers for obsolete Tedit file formats

* Cleanout misplaced pane/ files

* Fix for most of the lispusers/ hardcopy failures

They all had to do with the diacritic overbar in Env-os.

* Another diacritic glitch

* MODERNIZE:  Fixed off by one bug in NEARESTCORNER

* Update tedit-exports.all

* The "HELP PURGE" problem, plus a little cleanup

* hide initial caret in menus

* TEDIT-LOOKS, TEDIT-PCTREE:  prep for reducing FIXP's

* LLSYMBOL's FILEMAP was also incomplete

This update hopefully won't reveal any other problems

* Introduce NOTSPLITTABLE TEXTPROPERTY

If T, window-splitting cannot happen for this text stream.  Hopefully removes need for Notecards advice on \TEDIT.SPLITW.

* PSEUDHOSTS and .TEDIT: Apply TRUEFILENAME on PREFIX, update documentation

Documentation addresses #1303 .  Using TRUEFILENAME makes sure it always goes to a ground instance in e.g.  (PSEUDOHOST 'MEDLEY '{MEDLEY}).

* Don't allow Put of readonly file

* Inverted selection (black) hilights in readonly texts

More visible than a little underline when there is no blinking cursor

* Remove redundant type-tests

The I.S.OPRs test the I.V. type for lines and pieces, so that field accesses can safely be fast inside the loops

* MULTIPLE-HARDCOPY: at least fix obvious issues with new Tedit

Also avoided FILELST as a bound variable.  This needs work and maybe a little support from Tedit--it shouldn't be advising and unadvising a Tedit function.

* TEDIT-SELECTION:  Fix hilighting glitch with READONLY texts

(Shift select should have its usual highlighting)

* TEDIT menus are not splittable

* TEDIT-FILE fixes imageobj bug in old Tedit formats

Revealed by running HCFILES

* Improve conversion of unformatted to formatted

Also cache HINTPC inside \CHTOPC

* Fix to pageregion problem in old versions

Also adds TEDIT.NCHARS

* Code cleanup after testing faster scrolling

* EXTERNALFORMAT: \CHECKECOLC macro confusedf ANY vs CR EOL convention

* Recompile callers of \CHECKEOLC macro

* EXTERNALFORMAT: \CHECKECOLC macro confusedf ANY vs CR EOL convention

* Recompile callers of \CHECKEOLC macro

* Mostly work on scrolling and  HCFILE issues

* Trying to fix PSEUDHOSTS conficts

* PDFSTREAM

Backing up to fix merge problems

* update EXTERNALFORMAT to avoid conflicdt

* Mostly diacritic display and hardcopy

* Change DIRTY field to LDIRTY

* Added new user function TEDIT.FINDLOOKS

* WINDOWOBJ:  READIMAGEOBJ doesn't ask for permission

If the image object is on a hyphenated file and it can find a nonhyphenated sister, it loads that.  If that doesn't provide the getfn, it tries the original file.

* If ANY and no CR after LF, return EOL instead of CR

* Move charset management to externalformat (addresses #1454)

Removed IMCHARSET from IMAGEOPS declaration, added FORMATCHARSETFN to EXTERNALFORMAT, put XCCS charset handling in the XCCS externalformat.

* XCCS, fixed a glitch

* Fix EXTERNALFORMAT clash

* Mostly CHARENCODING

* TEDIT-PF-SEE:  Use TEDIT.ATOMBOUND.READTABLE

Tedit word-selection → atom selection in source files

* For merging with new charset arrangement

* Mostly work on hardcopy-display

Also asks before it saves a plaintext file as a formatted file

* Changing to hardcopy display doesn't mark "dirty"

* Mostly Put and Get, reorganizing for UTF8, plus odds and ends

* Straggler: TMAX-XREF.LCOM

* Meta-EOL

* Fix and extend page-format updates

Original TEDIT.PAGEFORMAT was unsafe and less useful.  Also did not update history for undoing.

* Use window's screen's height/width to test offscreen

* Write and read unbreakable character property

* Don't suggest put-name if TEMPLATE

* 2 point hilight if readonly

* Mostly proper treatment of invisible pieces and forward char-delete

* Forward word delete, better paragraph selection, cleanup, lisp source atom selection

* fix conflicts for merge

* fix incompatible merge

* Updates including UTF-8 plaintext files

Other continuing cleanups

* Continue edit after writing out UTF-8 plaintext

* TEDIT-FILE   EOL stays EOL after putting to a different EOL convention

for continued editing.

* Update EXTERNALFORMAT from master

* Get rid of needless file change

* EOL processing

* Fix Lafite glitches

Including relaxing constraints on the order of pieces in Tedit files.

* Unsplit any existing panes before main window is reused

* TEDIT-FILE glitch

* Better TEDIT.FORMATTEDFILEP, more TEDIT.CONCAT

* Headings with concatenated Tedit files

* Adjust page headers and numbers

* Reshaping reestablishes the YBOT of PLINES

* Tighten up on binable, better error when binning on empty textstream

* TEDIT.PUT.STREAM, left click gives point selection

* TEDIT.PUT.STREAM

* Unhighlighting of menu buttons

related to point vs. single-character selection

* Better behavior when moving to foreign target

also some cleanup of the file-putting code

* More improvements to cursor tracking

* Single-char shift-selection (lost an edit)

* Try it again

* Suppress EOF error

* BIN instead of GETBASEBYTE, more cleanup of buttonevent and TEDIT.PUT

* Mostly work on process and menu configuration

* A little more careful in choosing the current selection (as opposed to prior search target) for find and substitutes

Use the selection if it is greater than a single character, otherwise the prior target.  meta,G is available for clearly just repeating the prior target.

* Make the names of the Tedit menu process more distinctive

E.g. TEDIT-Charlooks instead of TEDIT#2.  TEDIT and TEDIT#n stand out as the document processes.

* Logically correct undo of Move between different documents

The destination document keeps the delete event in the source, if it is still the most recent source event when the move is undone, the deletion is undone in the source.  Otherwise, the deletion is ignored.

* Line spacing reflects offsets

* TEXTPROP returns length

* TEDIT-HISTORY:  Redo of a move just does a new-location insert

* remove unwanted cpv from PR

* Removed the unecessary SPTEXTOBJ field in SELPIECES, move work on move-undo

* Fix hardcopy bug

* More work on the hardcopy interface

* TEDIT-FILE addresses put of empty stream (issue #1577)

---------

Co-authored-by: Nick Briggs <nicholas.h.briggs@gmail.com>
Co-authored-by: Larry Masinter <lmm@acm.org>
2024-03-11 23:12:46 -07:00
rmkaplan
10d83c5f5d Extended EQUALALL with BLOCKEQUALP test for equivalent arrayblocks (#1480)
HPRINT:  Better BLOCKEQUALP, still heuristic on true blocks
2024-03-04 21:30:04 -08:00
Larry Masinter
a80788201f Fix \MAPMDS, compile STORAGE lispusers, fixes HARDRESET problem too (#1159)
* Fix \MAPMDS, compile STORAGE lispusers, fixes HARDRESET problem too

* don't use BCOMPL on LLDATATYPE, needs FAKE-COMPILE-FILE
2024-03-04 16:26:24 -08:00
rmkaplan
3c237c1937 INSPECT: Sort datatype fields alphabetically, fixed a small bug (#1247)
* INSPECT:  Sort datatype fields alphabetically, fixed a small bug

* INSPECT:  Sort only DATATYPE records

* INSPECT:  had wrong test in deciding whether to sort or not

---------

Co-authored-by: Larry Masinter <lmm@acm.org>
2024-03-04 15:00:41 -08:00