1
0
mirror of synced 2026-01-13 15:37:38 +00:00

246 Commits

Author SHA1 Message Date
Larry Masinter
306af20e91
The macroexpansion of UNDOABLY shouldn't depend on runtime rebinding of LISPXHIST (#1023)
The history and undo code was written before the record package; but someone introduced a DEFMACRO UNDOABLY macro to do the work. But cached macroexpansions shouldn't depend on load/run/compile time values.
2022-12-29 18:48:12 -08:00
Frank Halasz
9d09033cc4
Fix to Issue#1022 "Error during greet" (#1027)
* Fix to Issue#1022 Error during greet

* More fix to Issue#1022.  Turns out need to reset MEDLEYDIR for AFTERMAKESYS as well as at greet time.  Discovered during loadup-online.sh with no greet file.

* Removing AFTERMAKESYS event action from (MEDLEY-INIT-VARS).  Cleaning up a bit the GREET event action in (MEDLEY-INIT-VARS).  Remove issue with MEDLEY-INIT-VARS being called after the user greet file in the AFTERMAKESYS case.
2022-11-26 11:46:41 -08:00
Larry Masinter
d0d952a10d
make SETQ and typed in calls undoable (first steps) (#996)
* First steps to make UNDO to work again

* make sure the right SETQ (CL vs IL) is used

* The change surfaced a irritating warning about the variable presumed to be SPECIAL
2022-10-25 15:40:41 -07:00
Larry Masinter
d5d21397d4
another pass at variable initialization after logout savevm sysout makesys (#1003)
This corrects some errors in the handling of initializing variables across SAVEVM, LOGOUT, SYSOUT and MAKESYS.
This is all now handled by MEDLEY-INIT-VARS (function and variable) which is called as an EVENTFN.
BEFOREMAKESYS (invoked by ENDLOADUP) clears the variables to a default setting (all directories are just {DSK}).
The other "BEFORE" events save away the current values of the variables in MEDLEY-INIT-VARS.

In order to get this to work it was necessary to change a hack for deciding where to find EXPORTS.ALL and WHEREIS.HASH. Now  if you do `./scripts/loadup-all.sh` to make a full, lisp sysouts, exports.all and whereis.hash it will still build the sysouts in tmp/ but will also "link" new versions in loadups (and library for exports.all). This replaces the previous hack scanning the sysout name for "tmp/".
MEDLEY-INIT-VARS had been called both by the AROUNDEXITFN and AFTER*FORMS.
2022-10-25 14:43:57 -07:00
Larry Masinter
7a4470ce8b
Rework MEDLEYDIR before/after logout to substitute instead of reset (#998)
* Rework MEDLEYDIR before/after logout to substitute instead of reset

* debugging

* working when changing home directory

* fix bug and removed redundtant declarations
2022-10-24 07:10:45 -07:00
Larry Masinter
32ff7b7649
DEFAULTPRINTINGHOST can have list members as per comments (#999) 2022-10-23 23:35:50 -07:00
Larry Masinter
540aff091c
When restarting after logout, don't print warning on closed stream (#990) 2022-10-12 12:00:43 -07:00
Larry Masinter
3f244f6cd3
Change SYSTEM-EXTERNALFORMAT to more accurately guess the external format (#987) 2022-10-10 22:29:21 -07:00
Larry Masinter
882fbacf59
when constructing a stream, it might not have a FDEV -- allow it to print (#984)
* when constructing a stream, it might not have a FDEV -- alow it to print

* Stream with no FDEV just prints as Stream
2022-10-10 18:56:43 -07:00
Larry Masinter
ecc2b22207
IDLE.PROFILE has LOGOUT and SAVEVM options; add some delays in IDLE hacks (#948)
* 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
2022-09-28 22:39:31 -07:00
Larry Masinter
d0945f7a5f
Update HELPSYS to find CLHS (Common Lisp HyperSpec) and lispusers/library docs (#917)
* 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
2022-09-22 09:01:40 -07:00
rmkaplan
a387094eab
Rmk68: Fix GITFNS PRC file lists, plus a few minor fixups (#937)
* 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)
2022-09-18 08:10:15 -07:00
Larry Masinter
5ee5482dd2
GETDEF binds variable when getting for edit -- needed by loops rather than a unreliable STKPOS (#926) 2022-09-13 13:22:06 -07:00
Larry Masinter
095beef454
misc lispusers changes -- UNIXYCD, lsee (#889)
* 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
2022-09-13 12:04:23 -07:00
Larry Masinter
06a7356b00
add IOCHAR to exportfiles and export \CATRANSLATE (#933) 2022-09-11 21:31:58 -07:00
Larry Masinter
147abac04c
CL:ROOM no longer errors (#890)
With 4-byte atoms it no longer makes sense to report atom-space separately.
2022-09-05 20:27:08 -07:00
Larry Masinter
56a52af6b9
Revert "IDLE will LOGOUT instead of SAVEVM if ONLINEP (#904)" (#922)
This reverts commit fad70d4947386b03893eb76b6d3835cc819c8be8.
2022-08-29 14:53:15 -07:00
Larry Masinter
fad70d4947
IDLE will LOGOUT instead of SAVEVM if ONLINEP (#904)
* 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
2022-08-26 11:27:48 -07:00
Larry Masinter
f5e48847c9
thie problem only shows when you switch EDITMODE but have some SEDIT windows open (#912) 2022-08-24 07:24:08 -07:00
rmkaplan
39a7512458
Rmk66: 2 little glitches, plus GITFNS prc dealing better with forking (#887)
* VTCHAT:  Changed name of CHARSET field to avoid ambiguity

Even though field was never referenced

* INSPECT: WHERE argument was passed incorrectly to datatype subfunction

* GITFNS: Better recognition of funny cases (colon) etc

Reconciled with Larry's previous commit

* COMPAREDIRECTORIES:  Bug fix in separate-panel display
2022-08-12 22:01:04 -07:00
Larry Masinter
43e6801341
copying format info to match the ultimate destination doesn't work for displaystreams (#875) 2022-08-09 12:44:35 -07:00
Larry Masinter
27a6063ce9
\RPLPTR when run interpreted doesn't work with large vmem pointers (#866)
* \RPLPTR when run interpreted doesn't work with large vmem pointers

* oops, misread maiko N_OP_rplptr; this is closer

* Make LLNEW UFNs and functions run renamed match maiko interp wrt high 4 bits
2022-07-30 19:22:37 -07:00
Larry Masinter
cd6b64efa2
unsafe.to.modify only warns if redefining compiled with interpreted (or in original UNSAFE.TO.MODIFY.FNS (#852)
* unsafe.to.modify only warns if redefining compiled with interpreted (or in original UNSAFE.TO.MODIFY.FNS

* Add list of functions you said OK to modify
2022-07-26 23:15:27 -07:00
rmkaplan
92f85c5957
Rmk64: mainly separate panels for GITFNS display, FILEPOS speed up (#862)
* HRULE:  Add a PREPRINTFN for horizontal rules

Looks better in plaintext files

* GITFNS, COMPAREDIRECTORIES:  Group earler/later in separate segments

GIT-CDBROWSER-SEPARATE-DIRECTIONS defaults to T

* FILEIO: INITVARS rather than VARS for FILING.TYPES

To avoid contamination with values from other files (like LAFITE)

* FILEPKG: SEPRCASE in EDITCALLERS includes comma and quote even if no DWIMIFYCOMPLFG

Also seprate the caseinsensitive UPPERCASEARRAY from the SEPRCASE array

* IOCHAR: Open code the call to \INCCODE.EOLC

About a 30% speed up in the slow (casearray/skip) case.  Eventually macros should be defined for the externalformat interface functions, for now it is nice to be able to trace/break them.

* EXTERNALFORMAT: a little bit of cleanup

particularly around EOLC
2022-07-25 19:12:52 -07:00
rmkaplan
6376579b1c
Rmk63 backccode peekccode eolc (#853)
* EXTERNALFORMAT,UNICODE,XCCS: Consistent naming of \PEEKCCODE(.EOL), \BACKCCODE returns the code

It was confusing that the naming of the peek functions was inconsistent with the inccode and backccode functions with respect to the EOLC qualifier.  Now uniformaly, the unqualified names (\PEEKCCODE, \BACKCCODE, \INCCODE) do not do any EOL interpretation.  The qualified-name functions (\PEEKCCODE.EOLC, \INCCODE.EOLC, \BACKCCODE.EOLC) do EOL interpretation.

Also, the \BACKCCODE interface is changed so that it returns the code corresponding to the bytes that it passed over.  This simplifies some of the callers.

* Clients of \PEEKCCODE \BACKCCODE and .EOL

Small changes either to fix inconsistencies (backing, reading, peeking with inconsistent EOL interpretation), updating the names in a few other cases, a few simplifications.

* glitches in ATERM, HARDCOPY updates
2022-07-21 10:36:19 -07:00
rmkaplan
0d13ed6a9d
Merge pull request #847 from Interlisp/tmp-without-slash
run-medley tmp/full.sysout add tmp
2022-07-18 12:14:37 -07:00
Larry Masinter
f3b73a5756 run-medley tmp/full.sysout add tmp 2022-07-18 12:13:22 -07:00
rmkaplan
a54888734e
FONT, EDITFONT: Cleanup strike font reading and writing (#845)
EDITFONThad its own slightly different version.  Now centralized in FONT with slight adjustments to internal interfaces.
Note that we don't have a way of writing AC font files, as near as I can tell
2022-07-17 21:22:56 -07:00
rmkaplan
06664219ca
Rmk57 mostly gitfns improvements, other minor cleanups (#843)
* MAKEINIT:  Remove bogus non-ascii character from comments

* UPCSTATS: move to obsolete

* GITFNS: better interface to process stream

Now only looks at the process return code, gets all output only from redirected streams.  Also offers to increase the diff.renameLimit if it is too small for the branch comparison.

* COMPAREDIRECTORIES:  reformat browser output

The lengths are now in their own column.  Also, the < and > are in different columns, to make it easier to pick out which side is newer.

* CLIPBOARD.TXT: documented that it uses (SYSTEM-EXTERNALFORMAT)

* GITFNS:  Fixed a glitch in the renameLimit

* GITFNS: Test for gh

* COMPAREDIRECTORIES:  Fix loadup record sequence

* Don't overwrite fixed NCFILES in MEDLEY-UTILS

* SKETCHOBJ and TEDIT-FILE already merged

Co-authored-by: Larry Masinter <LMM@acm.org>
2022-07-17 19:13:25 -07:00
Larry Masinter
c437b6c3bb
fix oklibrary and use to not fail when file has been renamed (#842) 2022-07-17 05:55:03 -07:00
rmkaplan
4238dc3888
Rmk56 filepos with external formats #3 (#827)
* TESTUPF:  Move from internal/ to internal/test/unpackfilename

to be parallel with filepos

* IOCHAR:  FILEPOS respects external format (#3)

* FILEPKG: EDITCALLERS speed up with new FILEPOS

* internal/test/filepos:  Testing jig and cases for new FILEPOS

* EXTERNALFORMAT, IOCHAR: fix external-format glitches
2022-07-16 21:30:54 -07:00
rmkaplan
7a220ddcba
Tedit2 move tedit files to separate tedit subdirectory attempt 2 (#836)
* TEDIT files: deleted from library/, renamed to library>tedit.TEDIT-xxx

* PSEUDOHOSTS:  Error if file won't open

* LOADUP-*, MEDLEYDIR, UNICODE

Adjustment for TEDIT-xxx, plus moving UNICODE to the beginning of LOADUP-LISP, with UNICODEDIRECTORIES creating in MEDLEYDIR
2022-07-16 21:24:32 -07:00
rmkaplan
8ee32f6243
Rmk55 gitfns with redirect (#826)
* CLIPBOARD, FILEIO: external format

CLIPBOARD uses SYSTEM-EXTERNALFORMAT.
FILEIO:  added sourceparameters argument to COPYFILE, so format can be specified.

* GITFNS:  rework to avoid hanging process stream

Redirects command output to tmp output and error streams, at most only looks for a COMPLETED signal in the process stream (which still sometimes hangs)

* EXAMINEDEFS:  Asks for a menu position on a keyboard call

(Otherwise, the chunk menu may be buried under the TTY window)
2022-07-15 18:01:30 -07:00
rmkaplan
de3185002c
LLDISPLAY, WINDOW, BIGBITMAPS: share common DSPCREATE, ensure formats (#824) 2022-07-09 17:14:34 -07:00
rmkaplan
c93e620624
Rmk53 added system externalformat (#823)
* CLSTREAMS: Fix EOL/external format on error stream (synonym and 2-way) #815

* CMLFORMAT: makefile NEW to get functions in filemap

* CLSTREAMS: cleanup formats for more types

* FILEIO:  Add readonly bit in streams for external-format

* UNIXCOMM, EXTERNALFORMAT: Introduce STREAM-EXTERNALFORMAT
2022-07-09 17:12:27 -07:00
rmkaplan
718d9f988c
Rmk52 fix external format for error stream (#817)
* CLSTREAMS: Fix EOL/external format on error stream (synonym and 2-way) #815

* CMLFORMAT: makefile NEW to get functions in filemap

* CLSTREAMS: cleanup formats for more types

* FILEIO:  Add readonly bit in streams for external-format
2022-07-09 17:08:16 -07:00
Larry Masinter
06953f408a
fix #411 scanfilehelp suggested 1100support (#766) 2022-07-08 12:23:00 -07:00
rmkaplan
32e8f44d9a
Merge pull request #804 from Interlisp/more-unsafe
mark \ fns and SI fns as potentially unsafe to run interpreted
2022-07-04 12:37:35 -07:00
rmkaplan
d7ca40ebeb
Rmk51 end game of external format integration (#814)
* Compile device-creation functions for new default interface

* UNICODE:  minor bug

* LLINTERP: MOVD? APPLY* to SPREADAPPLY*

* External format interface: a few more adjustments

* CLSTREAMS: Recompile, no source change

* PRETTYFILEINDEX: suppress when printing gitmaps to a non-display stream

* UNIXCOMM: Default format comes from device

Also, I seemed to have reverted back to LCOM with FAKE-COMPILE-FILE
2022-07-03 18:49:04 -07:00
Larry Masinter
32128f5e19
MEDLEY-UILS loadup-db run-medley fixes (#808)
* MEDLEY-UILS loadup-db run-medley fixes

* UNIXCOMM compile to DFASL; only set UTF-8 if getenv(LANG). loadup-db no lisp.virtualmem
2022-06-28 11:45:59 -07:00
rmkaplan
9660232d6e
Rmk50: TERMINAL fonts plus fixed masterscope conflicts (#806)
* EDITFONT:  CHARSET in  interface

* IDLEHAX, LIFE, TMAX-ENDNOTE:  Clean up conflicts in making full masterscope DB

* FONT:  Add charset coercion for TERMINAL

* TERMINAL fonts:  Remove bogus character set files

so that better coercions can take place
2022-06-27 11:49:36 -07:00
rmkaplan
13e2b5cda6
Merge pull request #805 from Interlisp/process-utf8
assume process streams are UTF-8
2022-06-26 18:43:07 -07:00
rmkaplan
648335bfec
Rmk49: responds to #800 (#803)
* TEDIT, TEXTOFD:  Pass FORMAT in PROPS to OPENSTREAM

In TEDIT and OPENTEXTSTREAM.  I don't think TEDIT interprets the external format, but at least the info is there

* WINDOW: CREATEW prompts on one line

It was calling PROMPTPRINT twice, which resulted in orphan-looking lines

* EXAMINEDEFS: Propagate textwidth to COMPARETEXT

* COMPARETEXT: propagate height/width of text windows, for linelength

#800

* GREP:  Will work with external formats, after FILEPOS update

Line printout could be better, if e.g. it is a Lisp source file, but...

* EXAMINEDEFS:  Propagate window width to COMPARETEXT, for LINELENGTH

* GITFNS: added fetch before git log

* PSEUDOHOSTS: Pseudohost-streams are now registered on the PH device, not the target device

* EXTERNALFORMAT, XCCS:  Globalvar declaration in wrong place

Also updated \CHECKEOLC macro

* GITFNS:  moved git fetch to beginning of prc

* GREP:  Propagated OUTSTREAM
2022-06-26 18:18:44 -07:00
Larry Masinter
8c7f42e595 assume process streams are UTF-8 2022-06-26 17:46:19 -07:00
Larry Masinter
ae07d213f0 mark \ fns and SI fns as potentially unsafe to run interpreted 2022-06-25 18:03:00 -07:00
rmkaplan
217938c104 EXTERNALFORMAT: Add \FORMATBYTESTRING, EOLC arg to \INCCODE.EOLC
Also, STREAM can be given as the format argument to \EXTERNALFORMAT, gets the stream's format.

Atoms (LF, CR, CRLF, ANY) allowed for EOL specs (caller won't need exports.all)
2022-06-22 16:28:03 -07:00
rmkaplan
5e629cebc9 EDITINTERFACE: Case-independent match of leading initials on a change-comment
Also, matching initials are recognized with or without a colon
2022-06-22 16:25:50 -07:00
rmkaplan
b320333ac1 PRINTFN: rename variabl
to clarify that it counts byte, not characters
2022-06-22 16:24:16 -07:00
rmkaplan
3c7fb08932
Rmk47: TEDIT, GITFNS, COREIO (#791)
* COMPARETEXT: Inverted nodes stay inverted when scrolled

* COMPARESOURCES: Remove unused stub for browsing in TEDIT window

* COMPAREDIRECTORIES: Upgrade to new LISPFILETYPE, add CD-COMPARE-FILES

CD-COMPARE-FILES interface to compare 2 given files, not whole directory

* TEDIT:  Show only file name, not stream address

* COREIO: preserve STREAMPROPS on stream reopen

* GITFNS:  Various project and git-interface cleanups
2022-06-13 15:20:41 -07:00
rmkaplan
9c8d9df1ac
Rmk45 testupf to internal, tedit pathnames, minor doc changes (#787)
* TESTUPF:  Moved to internal

* CLIPBOARD.TXT, MODERNIZE.TEDIT, WHEELSCROLL.TXT: Minor edits

* TEDIT, TEXTOFD:  CL:PATHNAMES are recognized as file names for opening
2022-06-04 18:32:56 -07:00