* Start of a DEMO facility to run demos and part of automatied testing from inside Medley
Originally done for the BALISP 2023 talk. Possibly of use for building tests as well as demos.
* Mostly minor fixups (typos, formatting) to a few existing documentation files
Plus converting the Unicode documentation from TXT to formatted
* Update UNICODE.TEDIT
Previous version did not have page-looks (heading location etc.)
* UNICODE.TEDIT: write unbreakable charlook property
* Delete UNICODE.TEDIT
Master has a newer version, trying to eliminate conflict
* 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}).
* PSEUDOHOSTS.LCOM and .TEDIT
Appear to have gotten out of step
* Fixes some of the character mappings from Ascii fonts into NS, moves Math mappings into Interpress
The separate lispusers/MATHTONS is now obsolete.
* INTERPRESS: Add back empty ASCIITONSTRANSLATIONS
Turns out they were intended, not a mistake. But that was just a shorthand for saying MODERN, as a fall back. I made that explicit.
* NEARESTCORNER must be onscreen (addresses #1294
Mouse jumps to the nearest onscreen corner of the ghost region
* MODERNIZE: Fixed off by one bug in NEARESTCORNER
* COMPAREDIRECTORIES, COMPARESOURCES, COMPARETEXT, EXAMINEDEFS
Relatively minor cleanups, little or no functionality improvements
* 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.
* EXAMINEDEFS: Better interpretation of TYPE NIL = (FNS FUNCTIONS) with better formatting
* COMPARETEXT: fixed to avoid EOF error if EOL gets confused
* Expose useful subfunctions
* 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.
* If a window with a typed-region is reshaped and then closed, the typed-region is also reshaped for reuse
Also, the typed-region of a window is pushed on the front of the TYPED-REGIONS list when the window is closed, so the most recent region of that type will be used the next time. Recency seems more intuitive than primacy
* 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.
---------
Co-authored-by: Larry Masinter <lmm@acm.org>
* File See operations use full path to loaded file.
Add Manager.WINDOW-ANCHOR to fix corner from which MANAGER-MAIN-WINDOW grows, and (attempt) to keep it on-screen.
* Improved handling of the ICONW for MANAGER-MAIN-WINDOW.
* Fix typo in MasterScope functions (multiple occurrences: LOADBFLG should be LOADDBFLG).
Changed to CL compiler by default (not need to go to submenu). This is my preference, so I should remove it before setting pull request.
* Manual cleanup of multiple "Edited" comments in 4 FNS.
Reverted: Changed to CL compiler by default (not need to go to submenu). (From commit f60c6362)
* Update MANAGER.TEDIT documentation file.
Fix error in previous commit. (Changes that I thought were there, were not.)
Cleanup COMMON-MAKE COMS so it can be handled by the file package, and add .LCOM file to the repo.
* PDFSTREAM: first implementation
Makes PS file, then applies separate utility (if available) to convert PS to PDF
* POSTSCRIPTSTREAM: Adds extra field to postscript data for PDFSTREAM filename
* HARDCOPY: fixes printer menu
* PDFSTREAM: define PDF fonts as POSTSCRIPT fonts
* PDFSTREAM: fix convert template
* PDFSTREAM: Fix logic around closing the postscript sub-stream
* PDF Stream: slight generalization
* PDFSTREAM uses AFTERCLOSE streamprop so doesn't require change to POSTSCRIPTSTREAM
* UNIXUTILS: moved PROCESS-COMMAND and SLASHIT from GITFNS and PSEUDOHOST resp.
PROCESS-COMMAND executes a command in process-stream, like ShellCommand, but returns a completion code and not what happens in the shell. SLASHIT is an approximation (doesn't deal with versions) of converting a Medley file name to its Unix equivalent, to use in commands
* GITFNS: PROCESS-COMMAND moved to UNIXUTILS, cleanups from previous (unexamined) PR
The other PR will be cleaned out
* PSEUDOHOSTS: Moved SLASHIT to UNIXUTILS, also includes minor change in previous (unexamined) PR, to be removed
* PDFSTREAM: wrapped FULLNAME around TRUEFILENAME
* Restore POSTSCRIPTSTREAM
* UNIXUTILS: Added UNIX-FILE-NAME
Produces a Unix filename corresponding to a Medley file name (slashes, version number). For use in ShellCommand an PROCESS-COMMAND.
* PDF-STREAM: added SEE-PDF
A little stub that (on a mac) does a shell command to open Preview on the Unix-named file corresponding to a medley name
(Also added back some key functions that got lost in a bad edit)
* Pick up master changes
---------
Co-authored-by: Larry Masinter <lmm@acm.org>
* SPY.POINTERS is always T (no 2-byte atoms)
* Set SPY to not record entries when in \BACKGROUND-YIELD or (conditionally) backgroudn process
* Use \IGNORE.BACKGROUND as global variable, initially T; clean up declarations
* changes used DECLARE%%: incorrectly, now fixed
* FILEWATCH: Shift select names, plus show PSEUDOFILENAMES
* FILEWATCH: Copied file is a string, not an atom
Modern systems tend to allow spaces and other funky characters in filenames. COPYINSERT doesn't automatically escape. But generally we are moving towards strings. (Shift-select from FILEBROWSER has the same problem)
* Updated Tedit files for a few Lispusers packages--formatting and typos
* Format OBJECTWINDOW.TEDIT, delete WHEELSCROLL.TXT
* Create CLIPBOARD.TEDIT
Small (formatted) documentation file
* CALENDAR, AOFD: Calendar had a Y2K problem, AOFD did not allow string-streams to reopen
There still may be some Y2K issues, I fixed the obvious ones, including how it interacted with Tedit
* try recompiling
---------
Co-authored-by: Larry Masinter <LMM@acm.org>
* FILEPKG: EDITCALLERS now notices possible new stream after getting filemap
* GITFNS: cdw and cdg commands preserve pseudohost
* SAMEDIR: match all combinations of truefilename and pseudofilename
* PSEUDOHOSTS: Bug fix--openstream failure goes thru normal error machinery
* ADIR: Put in stubs for TRUEFILENAME, PSEUDOFILENAME, PSEUDOHOSTP
Also, fix \COPYSYS so it works with pseudhosts
Plus typo fixes in the TEDIT file.
Note that the MATCHNAME has always been uppercase, and that the directory matching has been filtered using the FILEDIRCASEARRAY
* IFLE.PROFILE has LOGOUT and SAVEVM options; add some delays in IDLE hacks
* add extra delays so the demos work more like intended
* IDLEDEMO loads lispusers with idle hacks
* make sure NOTIFY.EVENT \IDLING.OVER is called
* clean up resetsave
* slow down KINETIC
* Redo logic to minimize diffs with 1992 version
* minor tweaks to \IDLER for making sure mouse doesn't hang
* Update HELPSYS to find CLHS (Common Lisp HyperSpec) and lispusers/library docs
* restore lost edits; fix package inclusion for XCL and LISP
* mere with previous commit
* try again
* INSPECT: Allow optional user-specified tags in window titles to help keep track of multiple instances of the same datatype
* DWIM: Remove warning about order of evaluation change that happened in 1980
* BREAK-AND-TRACE: remake to get functions in filemap
* GITFNS, COMPAREDIRECTORIES: prc file list correlates with github PR web page
* DWIM, DWIMIFY: Removed WARNUSER and its calls
* INSPECT: Value of INSPECT is the inspect window
(as IRM says it should be)
* Move cd, ls, pwd to it's own little lispusers (needs documentation)
* add .TXT documentation, also patch lsee script to translate ^ and _ to up and left arrow
* Add document for CONDITIONGRAPH
* IDLE will LOGOUT instead of SAVEVM if ONLINEP
* patched some idle hacks fora better show
* idle.random chooses an idle program at random among those loaded