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

1198 Commits

Author SHA1 Message Date
Arun Welch
60195c4f31 Fixed issue 1883
Fixed issue 1883, error in printing class from CLOS browser
2025-06-10 18:50:06 -05:00
Frank Halasz
38f417907a
Fix Issue #2155 by reordering in the loadup script the component loadups and when their outputs are copied into loadups dir. (#2160)
Fix Issue #2155 (loadup -f -b -x fails can't find full.sysout).  

Reordered loadup so that the sysouts are copied to loadups before loadup-aux and loadup-db are run, and that the product of loadup-aux are copied to loadups before loadup-db is run -- all to make sure that the right prerequisites are available in loadups when needed.  

Also forced a run of loadup-aux if full.sysout is newer than exports.all when -db is specified.
medley-250603-38f41790
2025-06-03 17:25:10 -07:00
Frank Halasz
04d98d232f
Fix Issue 2139 (large parts of Medley tree not showing up in files.interlisp.org) and more improvements to files.interlisp.org (#2156)
Here is what this PR does:

Fix Issue 2139: (MAKE-INDEX-HTMLS) was not handling pseudohosts correctly and an errant LI pseudohost was causing MAKE-INDEX-HTMLS to terminate early. Adjusted MAKE-INDEX-HTML so it uses psuedohosts only for the top level directory and everything further down in the tree uses the truenames relative to the top-level pseudohost, Results in a MAKE-INDEX-HTMLS run that works in the presence of random pseudohosts and in a collection of index.html files without difficult to understand and out of context references to pseudohosts.

Remove loadups/build directory from all HCFILES runs (on desktop and via github actions)

Added maiko source code and removed maiko lde executables from HCFILES outputs for github actions - thus adding maiko code and removing maiki executables @ files.interlisp.org.

Fixed scripts/clean_hcfiles.sh so that it actually cleans off all of the index.html files - was missing some.

.github/workflow directory was being left out of HCFILES. Put it back it.
medley-250526-04d98d23
2025-05-26 10:18:10 -07:00
Frank Halasz
9dc408c81a
Expand the (PSEUDOHOSTS) function so that it can be used cleanly with RESETSAVE (#2154)
Expanded the (PSEUDOHOSTS) function to have an argument, which is a list of replacement pseudohost pair to replace the current list of pseudohosts.  Still returns the current list of pseudohosts as before.  Designed to be used cleanly with RESETSAVE.
2025-05-22 17:49:05 -07:00
Frank Halasz
330c5a01a7
Some polish on the new loadup scripts - dribble files and lock overrides (#2157)
Three changes to loadup scripts:

1) dribble files are now copied from the workdir into loadups if loadup completes successfully, 

2) if the lock preventing simultaneous runs is already set when loadup starts, it now asks the user if they want to override the lock or to exit (previously it just exited), 

3) there is now a --override flag that will automatically override the lock without asking the user.  

Man page updated accordingly.
medley-250519-330c5a01
2025-05-19 09:48:39 -07:00
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
7ad65469b1
GITFNS gwc looks at all subdirectories, like prc (#2131)
Co-authored-by: Matt Heffron <heffron@alumni.caltech.edu>
2025-05-14 10:11:29 -07:00
rmkaplan
9feba7f7c7
JSON-GET indexes arrays with integer attributes (#2140) medley-250512-9feba7f7 2025-05-12 12:15:47 -07:00
Matt Heffron
c1c2c757b9
POSTSCRIPTSTREAM: Enable color names and RGB triples (#2127)
* I put in support for standard color specifications. I think this is pretty close.
BLTSHADE, FILLCIRCLE, and FILLPOLYGON with the TEXTURE as TEXTUREP or BITMAPP convert to a gray scale as a function of the number of bits set.
It'll take a bunch more refreshing of PostScript knowledge to figure out how to do these with real colors, and actual pixel-by-pixel textures.
2025-05-09 22:31:11 -07:00
Matt Heffron
0f8959a074
Fix error in lsee RegEx to replace ^ with ↑ (#2138) 2025-05-07 07:59:46 -07:00
Matt Heffron
30872f62e7
READ-BDF Fix incorrect detection of Italic font slope from BDF font metadata. (#2132)
Fix incorrect detection of Italic font slope from BDF font metadata.
medley-250501-30872f62
2025-05-01 06:45:29 -07:00
rmkaplan
40e3edc291
Remove DIRECTORYNAMEP check in EDITCALLERS (#2123)
So that (EDITCALLERS 'xxx 'UNICODE) works
medley-250428-40e3edc2
2025-04-28 17:49:43 -07:00
Larry Masinter
6c025089c1
Rmk87 minor updates EXAMINEDEFS, REGIONMANAGER, and TEDIT-PF-SEE (#2113)
* EXAMINEDEFS uses the Tedit atom-bound table for word selection
* REGIONMANAGER gives client better control over region recovered 
* TEDIT-PF-SEE: Meta-T defaults to showing the definition in the curren… 
* REGIONMANAGER and GITFNS documentation update
2025-04-28 13:09:30 -07:00
Frank Halasz
f53da7518f
Fix Issue #1848: Medley script (and hence loadup script) now checks for lde (ldeinit) on PATH (#2129)
In medley script(s), when executing maiko (lde or ldeinit) check if its on the PATH before looking for it in MEDLEYDIR/maiko or MEDLEYDIR/../maiko.
2025-04-28 13:02:16 -07:00
Matt Heffron
39ebd40da4
READ-BDF: Handle newly encountered cases in BDF files. (#2108)
* Better handling of a glyph with ENCODING of -1. 
I treat it as the _slug_ glyph, instead of the _default_ of a solid block.

* Handle scrambled bitmaps issue #2109.
Glyphs with zero width bitmap *and* zero advance (_escapement_) caused miscalculated glyph offsets into the CHARSETINFO bitmap.

* Allow and ignore COMMENT lines preceding the STARTFONT line.
Add error checking for extracting font FAMILY, SIZE, FACE, etc. from the BDF-FONT object.
Add recommendation to documentation to write the DISPLAYFONT files to a directory separate from the system's IL:DISPLAYFONTDIRECTORIES locations.

* Account for glyphs with a negative initial offset.

* Add VERBOSE optional parameter to READ-BDF to report font internal FAMILY, FACE, etc.
Change &OPTIONAL parameters of WRITE-BDF-TO-DISPLAYFONT-FILES to &KEY to simplify calling. (No need to remember the order.)
Add CHAR-SETS and WRITE-UNMAPPED parameters to WRITE-BDF-TO-DISPLAYFONT-FILES to allow some level of control of which DISPLAYFONT files are written.
Updated documentation, and added warning note about font's FAMILY containing any digits.
2025-04-28 11:40:08 -07:00
Larry Masinter
ddbc8633eb
LOADUPFULLFONTS: don't choke on extra index.html files in postscript font directory (#2117)
Co-authored-by: Frank Halasz <frank@halasz.org>
2025-04-26 17:30:43 -07:00
Frank Halasz
a4b9099b80
Extensive loadup scripts revamp (#2111)
This PR is an extensive revamp of the loadup scripts including the following changes:

New omnibus script scripts/loadup which is meant to be the single interface to the loadup system. The man page for this script can be found here: https://online.interlisp.org/downloads/man_loadup.html

The new loadup script allows you to restart the loadup process from any particular stage - init, mid, lisp, full, etc. For example, you can start the loadup from an existing init-mid.sysout and have it run thru creating the full.sysout. The call for this would be: ./scripts/loadup --target full --start mid. (See man page for all options to the loadup script as well as examples of their use.)

In order to facilitate this target/start feature, the loadup workdir has been moved to a single location per MEDLEYDIR, specifically to MEDLEDIR/loadups/build. (Previously, it was different for every invocation in /tmp/loadups-$$)

When restarting the loadup from, say, lisp.sysout, the script will look for the lisp.sysout to start from first in MEDLEYDIR/loadups and then in MEDLEYDIR/loadups/build. If the starting sysout is found in loadups, it will be copied (non-versioned) into the workdir before doing the loadup, overwriting whatever is already there.

There is now a lock (MEDLEYDIR/loadups/build/lock) that prevents concurrent loadups from running (and very occassionally needs to be manually removed).

At successful completion of a loadup run, the created .sysouts and other files are moved into the loadups directory as before (unless the --nocopy option is specified). BUT the build files - including the dribble files - are left in the working directory (i.e., in loadups/build)

The loadup script now supersedes the former loadup-all.sh, loadup-full.sh and loadup-db.sh scripts. But I have left in their place scripts that call the new loadup script with the right options. loadup-all.sh is now just a link to the single loadup script, who's options are (hopefully) a superset of loadup-all.sh.

All of the worker scripts (e.g., loadup-full-from-lisp.sh) have been updated to use better mechanisms to catch and report errors, including the new (LOGOUT T EXITCODE) feature. The main script has been updated to better catch errors in these worker scripts when they do happen.

You can now specify a MAIKODIR for the loadup, either using the MAIKODIR env variable or thru the --maikodir command line option.

All of the loadup scripts have been moved down one level into scripts/loadups. But there are links from the scripts/ directory into the scripts/loadups directory for all of the top-level legacy scripts - loadup-all.sh, loadup-db.sh, loadup-full.sh so that you do not have to change your own scripts unless you need to use some of the new features. More importantly, none of the github workflows need to change right now.

The SYSOUTCOMMITS mechanism had to be changed since there is no guarantee that e.g., lisp.sysout and full.sysout are built on the same commit. So (ASSOC 'MEDLEY SYSOUTCOMMITS) now returns an assoc list of sysouts, e.g., ((INIT "aaa")(LISP "bbb")(FULL "ccc")(APPS "ddd")), showing the commits for the various layers of the loadup.

The new loadup scheme allows different sysouts to be created from different commits, so there is an issue with RDSYS (and RDSYS.LCOM) being out of sync with one or more of the sysout in loadups. RDSYS(.LCOM) are copied into library when ever a loadup of the Init stage completes successfully (unless the -nocopy option is specified). The only way to solve this issue when it arises is to do a complete loadup from starter.sysout to full.sysout (or apps.sysout) to ensure evrything is built on the same commit.
2025-04-26 16:24:04 -07:00
rmkaplan
f4b7e91a68
lispusers/COMMENTHACKS had a bogus 255 byte at end after STOP 2025-04-26 13:31:16 -07:00
rmkaplan
627f359b5e
(WHEREIS xx NIL) means (WHEREIS xx '(FNS FUNCTIONS)) (#2112) medley-250421-627f359b 2025-04-21 11:47:56 -07:00
rmkaplan
46fe81bf36 REGIONMANAGER and GITFNS documentation update
GITFNS is just formatting, REGIONMANAGER documents the new SAVED-TYPED-REGION feature
2025-04-20 23:05:54 -07:00
rmkaplan
67a3e558f6 TEDIT-PF-SEE: Meta-T defaults to showing the definition in the current file 2025-04-20 22:52:06 -07:00
rmkaplan
37195dc7d9 REGIONMANAGER gives client better control over region recovered at closing
The client can decide that some reshapings don't matter (e.g. Tedit window splits) when recovering the typed region for later reuse
2025-04-20 22:50:51 -07:00
rmkaplan
fe033efe22 EXAMINEDEFS uses the Tedit atom-bound table for word selection 2025-04-20 22:49:05 -07:00
Matt Heffron
1491fa91cc
READ-BDF add ability to create FONTDESCRIPTOR and write DISPLAYFONT files (#2015)
* Now can create the FONTDESCRIPTOR with all non-empty charsets.
Can write DISPLAYFONTFILE format ("STRIKE") files for the charsets.
Add ability to use mapping of Unicode charcode to unknown XCCS charcode in the private space.

* Create 2nd FONTDESCRIPTOR for unmapped Unicode to XCCS charcodes, organized by charset-like (8-bit splitting of charcode) of Unicode encoding value.

* Added option to create and write files for RAW FONTDESCRIPTOR which does NO mapping from Unicode to XCCS.
All glyphs are at the Unicode encoding positions.
Any glyphs with Unicode encoding > xFFFF are not included in the FONTDESCRIPTOR or DISPLAYFONT files.

* Fix a bug where I assumed glyph names couldn't be parsed as a number; and a little cleanup.
The linux otf2bdf utility uses the hex of encoding value as the name, which can appear to be a FLOAT and overflow (i.e., 3D39). 
Similar parsing problem fixed and corrected an error message.

* Initial documentation file written.
medley-250419-36098df8 medley-250414-1491fa91
2025-04-14 12:08:10 -07:00
Matt Heffron
aec7aba530
This addresses the 2 issues #1961 and #2061 in loadup building (#2103)
1961 - RDSYS incomplete path for copying
2061 - delay starting making loadups due to "expensive" operation just to check if connected dir is inside of a git repo
2025-04-14 11:54:23 -07:00
rmkaplan
b0551fb953
Masterscope OUTPUT TEDIT uses atom word-bound table (#2096)
Use atom boundtable for OUTPUT TEDIT
2025-04-14 11:00:40 -07:00
rmkaplan
cd3889874f
Rmk85 Tedit distinguish public TEDIT.NTHCHARCODE from private \TEDIT.NTH..., fix screen update bug (#2091)
* Distinguish public TEDIT.NTHCHARCODE... from private \TEDIT.NTHCHARCODE...

* Fix screen-update bug: deleting the character before the first character in a window

* glitch in region code
2025-04-09 11:46:01 -07:00
rmkaplan
78e88e238b
Sets EOL convention ANY in case SYSTEM-EXTERNALFORMAT defaults to :THROUGH (#2090) 2025-04-09 11:45:28 -07:00
rmkaplan
58aad924d2
Initial TEDIT window based on Lisp-source width estimate TEDIT.SOURCE.LINELENGTH (#2089) 2025-04-09 11:44:45 -07:00
Larry Masinter
39bf5ba6e5
add LAFITE to fuller.database (#2085) medley-250407-39bf5ba6 2025-04-07 11:25:12 -07:00
Larry Masinter
810ac28628
git ignore files produced by HCFILES (#2084)
Co-authored-by: rmkaplan <69548581+rmkaplan@users.noreply.github.com>
2025-04-07 11:09:45 -07:00
rmkaplan
3f5496f593
Use (CHARCODE Meta,0) instead of \KEYBOARD.META in LLKEY (#2094) 2025-04-05 22:19:46 -07:00
rmkaplan
6f44e39101
Remove library/keyboardeditor.tedit, it now resides in library/virtualkeyboards/ (#2092) 2025-04-05 12:33:22 -07:00
rmkaplan
b072b6ef52
TEDITKEY TKDORADO TEDITDORADOKEYS EDITKEYS are obsoleted by new Tedit keybinding architecture (#2088) 2025-04-05 12:32:33 -07:00
rmkaplan
b0c00e0636
Move WHEELSCROLL.xxx characters to Function character set (#2087) medley-250331-b0c00e06 2025-03-31 11:44:19 -07:00
rmkaplan
75666aa979
TEDIT: New architecture for key bindings, plus better suggestions for initial window regions (#2070)
* Implement new key binding architecture for Tedit actions, to make mappings more user-accessible. Includes new Buttons item on Tedit menu.  See TEDIT-RELEASENOTES
*  Prompts for Tedit initial-window region based on document properties
*  More flexible Tedit abbreviations
*  Size + or -  in Tedit character looks go to next available
*  Other bug fixes and code adjustments.
2025-03-31 11:43:13 -07:00
rmkaplan
36a7274390
Remove charset-shifting characternames from XCCS, leaving constants (#2082)
The character names were a mistake
2025-03-28 15:45:11 -07:00
rmkaplan
2a66f76606 Remove charset-shifting characternames from XCCS, leaving constants 2025-03-26 00:04:20 -07:00
Frank Halasz
3d5d96686a
Rmk78 IMINDEXto remove obsolete Tedit field dependency (#2073)
Removes dependency on \WINDOW field. Assigned to Frank, for when/if he
gets back to working on the IRM.
medley-250324-3d5d9668
2025-03-24 10:41:43 -07:00
rmkaplan
86ddc4b404
GITFNS: Middle-clicking the prc menu brings up the web page (#2077)
Middle-clicking the prc menu brings up the web page
2025-03-24 18:35:15 +01:00
rmkaplan
140415f99c Use TEDITWINDOWP instead of \TEDIT.PRIMARYPANE 2025-03-24 10:33:25 -07:00
rmkaplan
1bdaa63d49
WHEELSCROLL: Put more of the branching logic inside the WHEELSCROLL function, add character names (#2069)
Put more of the branching logic inside WHEELSCROLL, add character names
2025-03-24 10:19:06 -07:00
rmkaplan
88327b8644
Replace Envos with Medley in the lispusers documentation template (#2071)
Envos → Medley in documentation template
2025-03-19 11:57:09 -07:00
Frank Halasz
1d8685e6cb
Fix issue #2072 (doHCFILES.yml fails). Also fix unrelated bug in buildReleaseInclDocker.yml workflow that was causing build failure. (#2074)
* Fix Issue 2072: update do_hcfiles.sh to use new rem.cm argument to medley script.  Also update medley script to print out the REM.CM file used (if any).
* Update buildReleaseIncDocker.yml to account for the change on interlisp/online repo from 'master' to 'main' as primary branch
* Do compile.sh after update to medley-run.sh to add REM.CM to printout when using the medley command.
2025-03-19 11:11:16 -07:00
rmkaplan
5e897c50b1
Delete DLIONFNKEYS (#2066)
DLIONFNKEYS created button-images on the screen corresponding to some of
the Dandelion edit buttons for Tedit. EDITKEYS is a newer and better
version of the same functionality, and even that will be replaced by a new internal Tedit keyaction architecture.
medley-250317-5e897c50 medley-250317-0ea51512
2025-03-17 12:15:17 -07:00
rmkaplan
ec03478fcf TEXTSTREAM instead of TEXTOBJ 2025-03-17 12:08:35 -07:00
rmkaplan
5366ae124c Remove dependency on internal TEXTOBJ field 2025-03-17 12:04:27 -07:00
rmkaplan
83c363ad28 Delete DLIONFNKEYS 2025-03-13 20:06:14 -07:00
rmkaplan
97fdcbdfe3
LLREAD: Add character names One, Two... for digits 0, 1 ... (#2060)
Currently, (CHARCODE 1) produces 49, just like (CHARCODE a) produces 97.
That's because CHARCODE.DECODE interprets a single character (that is
not also defined as a cHARACTERNAME) input as exactly that character,
and gets its character code.

But a character name in the charset,charnum format is treated in a
different way. If either part of the name is a number, it is interpreted
as an octal number, to make it easier to match against the XCCS
specifications. So (CHARCODE Meta,1) does not map to the position of
digit 1 in the Meta (currently 1) character set (= 256+49=305), it maps
to 256+1=257. In order to get 305, you have to specify Meta,61 (where 61
is the octal equivalent of 49).

That's rather opaque, and I found that TEDITKEY had a workaround based
on the obscure fact that CHARCODE.DECODE adds 128 for each # it sees in
the beginning of a character name. So ##1 adds 2*128 to 49 to get 305,
corresponding to digit 1 in the Meta character set. But that depends on
the fact that Meta is currently defined as charset 1, it won't work when
we move Meta up to the Unicode/XCCS undefined region of the code space.

This PR adds (Zero 48) (One 49)...(Nine 57) to the initial value of
CHARACTERNAMES in LLREAD, so that 305 for example can be specified as
Meta,One. This is more obvious than Meta,61 and will remain valid when
Meta is moved, unlike the ## hack..
medley-250317-09268465
2025-03-12 23:57:07 -07:00
rmkaplan
d9f5bd5957
Merge branch 'master' into rmk73--Add-character-names-for-digits 2025-03-10 23:41:58 -07:00