1
0
mirror of synced 2026-03-14 22:38:23 +00:00

Compare commits

...

191 Commits

Author SHA1 Message Date
Frank Halasz
4ae7a5d9af Add function (ShellWget URL OUTFILE) that calls the shell to execute 'wget URL -O OUTFILE'. No checking is done on the URL. 2025-11-02 12:21:06 -08:00
rmkaplan
aae53a700f Adjustments to GITFNS (#2321)
prc status is C if changes requested, prc comparison runs in its own process, initial changes for gwc to treat the clone as UNIX, not DSK, so branch-switching doesn't cause files from other branches to pile up.

* COMPAREDIRECTORIES: don't fail on empty directory

* Bug in slashit

* gwc copies to UNIX--doesn't track Medley version numbers when it copies to the clone
2025-10-27 12:12:20 -07:00
rmkaplan
54f8b889b9 Rmk131 Mapping MCCS filenames to (Mac?) UTF-8 file names (#2320)
* Coerce MCCS filename strings to UTF8 filename strings in file-name system calls, coerce system filenames back to MCCS codes

* Add UNICODE-TABLES so MTOUTF8STRING gets defined in right place in the loadup sequence

* ADIR:  Bug fix: UNPACKFILENAME sets FATSTRINGP

* fix virtualkeyboard bug in code assignment

* Unicode canonicalizes non-SMALLP unicodes
2025-10-27 11:54:56 -07:00
rmkaplan
8d0011ce2c EDITFONT bug fix--compatibility with new FONT conventions (#2323) 2025-10-27 11:22:28 -07:00
rmkaplan
87b3ee3134 WHICHKEY returns the keynumber as well as the keyname, for convenience (#2322)
WHICHKEY returns the keynumber as well as the keyname, for convenience

* Added documentation
2025-10-27 11:21:46 -07:00
rmkaplan
1ff49b58fe Update MODERNIZE.TEDIT (#2324)
Tedit reference is no longer applicable
2025-10-27 11:21:01 -07:00
rmkaplan
ac570f4b06 TEDIT: Better heuristic estimate of initial region, better management of margin bar (#2326)
* Estimates suggested width for unformatted documents from the width of the first 20 lines
* Recycled regions satisfy minimum and maximum size specifications
* Fine tuning:  suggests recycled no bigger than 90% of screen, no prompt message if old region reused
2025-10-27 11:20:33 -07:00
rmkaplan
82fc95ce18 rmk122--Next round on fonts and MCCS (#2280)
* A revision to the font, Unicode, Tedit, and other modules to implement the MCCS character coding as the standard for internal text strings.  MCCS is a variant of XCCS with arrows switched with circumflex/underscore and $ switched with currency, and allows for additional code assignments over time. :MCCS replaces :XCCS as the default external format, especially for source files.  The file XCCS is removed in favor of the file MCCS, which includes the XCCS external format for backward compatibility.

* This includes a single Medley-font formatted font file for each of the family/size/face display fonts.  The glyph assignments correspond to the MCCS character encoding (except for fonts with idiosyncratic encodings--Hippo, Symbol).  All charsets from legacy font files are included in each file, and the character sets and glyphs in each file have also been extended by offline coercion from related families (e.g. Glyphs not in legacy Terminal are taken from legacy Modern). There should be fewer black boxes, and character-display shouldn't change when you switch fonts.

* The Unicode mapping tables have been redefined to set up correspondences between Unicode and MCCS, not XCCS.  Separate XCCS to/from MCCS mapping functions are provided in the file MCCS; they are no longer included in INTERPRESS.

* TEDIT converts characters in legacy fonts to their new MCCS codes as it reads formatted files, marks the file as MCCS compatible and preserves the new codes on writing.

* Default keyboard assignments produce the MCCS uparrow and leftarrow for shift-6 and shift-hyphen, use Function-6 for circumflex and Function-10 for underscore.

See documentation in FONTCODECHANGES.TEDIT MCCS.TEDIT MEDLEYFONTFORMAT.TEDIT in docs/internal, and library/UNICODE.TEDIT.
2025-10-20 17:17:34 -07:00
Frank Halasz
54353a4bef Fix Issue #2285 (partial): Add ghostscript to cygwin install to support PDFSTREAM (#2292)
Add ghostscript to cygwin install
2025-10-20 10:42:10 -07:00
rmkaplan
34531738d5 Restore files that got nulled out (#2317) 2025-10-17 22:38:47 -07:00
rmkaplan
f6106d7b0c EDITINTERFACE--ED searches for symbols, no error when declining a loadfns (#2301)
* EDITINTERFACE--ED searches for symbols, no error when declining a loadfns

* Symbol by type menu pops up when the symbol with different package qualifiers have different types
2025-10-06 19:58:04 -07:00
Matt Heffron
43b11b2860 Check that a MENU has ITEMS that is LISTP before trying to display/use it. (#2309)
Checking added to FNS: ADDMENU, CHECK/MENU/IMAGE, UPDATE/MENU/IMAGE, and
MENU.
This resolves #2306
2025-10-06 11:21:50 -07:00
rmkaplan
2af7324fff CLIPBOARD passes file to xclip (windows) (#2297)
* CLIPBOARD passes file to xclip (windows)

* More careful to specify {UNIX} as the host on the Medley side

* Make sure the process stream is closed in the xclip case

* This time using ShellCommand

* Use DSK and UNIX-FILE-NAME

* Added .txt to the tmp file
2025-10-06 10:39:33 -07:00
rmkaplan
60dcbe2933 Add function COMPILEFILETYPE (#2304) 2025-10-03 22:09:21 -07:00
Matt Heffron
4d6aa38b8b Check that a MENU has ITEMS that is LISTP before trying to display/use it.
Checking added to FNS: ADDMENU, CHECK/MENU/IMAGE, UPDATE/MENU/IMAGE, and MENU.
2025-10-02 18:00:08 -07:00
rmkaplan
69832c5db0 COMPILE-FILE? wasn't returning the right value for FILETYPE CL:COMPILE-FILE (#2300) 2025-09-29 12:31:15 -07:00
Paolo Amoroso
2cb8b51c94 Remove duplicate line of code (#2295)
Fix issue #2226 to remove a duplicate line of code that's potentially
confusing and ambiguous.
2025-09-25 08:14:56 +02:00
rmkaplan
17515ef441 Make sure TEDIT backing files close on error (#2284)
Make sure backing files close on error
2025-09-09 23:44:18 -07:00
rmkaplan
83bbf9e4c0 Update HIPPO18-MRR-C0.DISPLAYFONT (#2278) 2025-09-08 09:27:30 -07:00
rmkaplan
1a8a5ca90e Fix TEDIT object insertion (#2279) 2025-09-07 22:15:47 -07:00
rmkaplan
2961670d7d Qualify record names in MASTERSCOPE COMPAREDIRECTORIES TTYIN (#2270)
To avoid conflicts when creating fuller.database
2025-09-05 08:46:15 -07:00
rmkaplan
0206fb6f43 Rmk120 move press to obsolete (#2274)
* Move PRESS and PRESSFROMNS to obsolete

* Remove PRESS from the loadup

Also moves MULTI-ALIST forward to the beginning of LOADUP-LISP

* BACKGROUNDIMAGES depended on PRESSFILEP, now moved here from PRESS
2025-09-03 23:14:47 -07:00
Paolo Amoroso
95e015329d Update the guidelines for project contributors (#2272)
Update project contributor guidelines

Replace the documentation link to point to the Documentation section of the project site instead of the discontinued Wiki.

Under Working with Medley, advise opening an issue to report errors and unexpected behaviors.

Under Did you write a patch that fixes a bug?, remove the link to Maiko PRs as the project has more repos a contributor may want to open PRs for.

Signed-off-by: Paolo Amoroso <paolo.amoroso@gmail.com>
2025-09-01 20:18:01 +02:00
rmkaplan
60e0044870 EDITFONT: Column-major order to match XCCS and Unicode tables (#2271)
* Column major order to match XCCS and Unicode tables

* Compile with exports

* HLDISPLAY added a title argument to EDITBM

* EDITFONT puts the character and font in the title of the EDITBM window

* Put character set in edit window title
2025-08-31 18:17:23 -07:00
Larry Masinter
1df0e1b17e Fix MEDLEYDIR to handle filename if given (#2268) 2025-08-24 04:02:12 -07:00
rmkaplan
90fdcb9d56 Rmk121 Modernize the EDITBM window (#2265)
* Modernize the EDITBM window

so that it can be moved and resized like other modern windows

* Move lispusers/FASTEDITBM to obsolete/lispusers

It isn't used, doesn't even have an LCOM.  But maybe it would be worth resurrecting at some time in the future.
2025-08-21 10:43:24 -07:00
Frank Halasz
1968021bb4 Update loadup and medley scripts to use "tag" instead of "branch"; add ability to completely delete tagged loadups rather than just thin them (#2249)
* WIP in changing loadups to tagged nomeclature rather that branch and ability to delete tagged branches as well as thin them.

* In loadup and medley scripts, changed the --branch (-br) command line argument to --tag (-tg).  Correspondingly changed the MEDLEYDIR/loadups/branches directory to be MEDLEYDIR/loadups/tagged.  Separately, added a + parameter to the --thinw and --thinl command line arguments which causes ALL files to be deleted, not just the versioned files.  Added a --thin command line argument that is equivalent to --thinw followed by --thinl.  Updated the man page to reflect all these changes.

* Updated medley script man page to reflect the new tag nomenclature instead of branch nomenclature.

* Fix issue#2063 - typo in medley man page

* 1) In loadup script made --help (-h) be a synomym of --man (-z).  2)  In both loadup and medley scripts added an optional parameter (+) to the --man (z) command line argument that when specified will display the man page without paging - i.e., sets the pager to cat.

* Fix Issue#2251 LOADUPSDIRECTORIES settings by the MEDLEYDIR fn now takes into account tagged loadups
2025-08-20 11:00:53 -07:00
rmkaplan
ec16fafeac Fix glitches in Gacha displayfonts (#2255)
Take out the goofy glyph at character 0 in Gacha 12, add underscores at 30Q for Gacha 8 and 10, and also add updated Medleydisplayfont for Gacha 10.
2025-08-20 10:58:24 -07:00
rmkaplan
c3a833e5d0 EDITFONT minor update: apply CHARSET.DECODE to charset argument (#2262) 2025-08-19 15:16:38 -07:00
rmkaplan
fc26d21cc2 Delete DFILE--basically content-free (#2252) 2025-08-18 22:49:35 -07:00
rmkaplan
287b10c9c3 Moving JAPANESE to library adding tiny documentation file (#2253) 2025-08-18 22:49:05 -07:00
rmkaplan
f004d43ef1 Extensions to MULTI-ALIST especially for PLACE (#2261)
* Extensions to MULTI-ALIST especially for PLACE

* Decided to add FETCHMULTI with computed keys parallel to GETMULTI
2025-08-16 13:46:07 -07:00
rmkaplan
74f518ca02 Tedit PLOOKS cleanup plus default paralooks (#2259) 2025-08-16 13:45:28 -07:00
rmkaplan
8fa61304a3 Updated EDITFONT for FONT compatibility and robustness (#2257)
Updated for FONT compatibility and robustness
2025-08-16 13:45:00 -07:00
rmkaplan
4fef217c45 Remove the LEAVETTY from the PF-TEDIT Tedit window (#2260) 2025-08-15 13:42:57 -07:00
rmkaplan
92a3cea0eb Add charset functions in LLREAD, move IOCHAR a little bit earlier (#2256)
CHARSET.DECODE, CHARSET.ENCODE added.  CHARACTER.ENCODE moved here from TEDIT-FNKEYS. Some character names moved here from a few other files.

This anticipates the ability to use names for the charset argument to FONTCREATE.  IOCHAR needed to move a little earlier so that STRING.EQUAL/UPPERCASEARRAY is available before FONTCREATE created the guaranteed displayfont.
2025-08-15 09:49:21 -07:00
rmkaplan
a39e3d9dc5 Updated TMAX to separate window vs textstream properties (#2254)
* Updated TMAX to separate window vs textstream properties

* missed one
2025-08-14 23:48:51 -07:00
Larry Masinter
0469bd2820 change RING to HRING to avoid record name conflicdt (#2258) 2025-08-14 20:01:59 -07:00
rmkaplan
a9618e4aaf Rmk103 font and related code updates (#2216)
This PR contains a large number of changes in support of the implementation of the  Medley Dsplay Fon file format.

The changes are documented in the docs/internal/FONTCHANGES.TEDIT file.
2025-08-13 09:59:37 -07:00
rmkaplan
9c93b27d79 Move lispusers/PS-SKETCH-PATCH to obsolete/lispusers/ (#2248)
Incompatible with current font interface, not loaded and sketch seems to work fine without it
2025-08-11 12:20:11 -07:00
Larry Masinter
e8c5ba90f3 update PICK to remove old comment. PICK is still just a hack, incomplete (#2247) 2025-08-11 11:56:48 -07:00
Matt Heffron
305c419b1d WHERE-IS error handling improvement (#2235)
For loadup --aux reporting of errors during building whereis.hash:
Just ignore pathnames that are just a directory.
For other errors, report the condition that caused the error, instead of just generic Warning message
2025-08-11 11:56:00 -07:00
rmkaplan
37aef55990 SEE-PDF returns the file name, not T (#2237) 2025-07-31 09:06:37 -07:00
Matt Heffron
4019578944 Update lispusers module INSPECTCODE-TEDIT for changes to Tedit. (#2224)
* Update lispusers/INSPECTCODE-TEDIT for changes to Tedit.
This could be considered to be incorporated directly into sources/INSPECT.
(This was changed from TCOMPL (LCOM) to COMPILE-FILE (DFASL) because it just wouldn't compile correctly otherwise, for me.)

---------

Co-authored-by: rmkaplan <ron.kaplan@post.harvard.edu>
2025-07-30 16:02:12 -07:00
rmkaplan
3692c8f1e6 Removed a call to CENTRALWINDOW in Tedit's modernized buttoneventfn (#2223)
Uses uses Tedit's own knowledge of its window layout.  Test case is Lafite's mail scavenger
2025-07-30 15:42:59 -07:00
rmkaplan
bc7269e3c4 Inspectcode scrolls, has the correct window title (#2222)
* Inspectcode scrolls, has the correct window title

* Add promptwindo so M-f search strings are locally visible

* Fix FILETYPE for LLDISPLAY

* MEDLEYFONTFORMAT More efficient store and read of numeric Interlisp arrays
2025-07-30 15:42:20 -07:00
rmkaplan
10de55af05 TALK files were moved to lispusers/talk/ but never deleted (#2218)
These files were moved to lispusers/talk/ but never deleted
2025-07-26 23:20:29 -07:00
rmkaplan
840f8afb51 Move all the proofreader and dictionary-related files to lispsuers/proofreader/, with hyphen names (#2220)
Move all the proofreader/dictionary files to a proofreader subdirectory
2025-07-23 11:09:59 -07:00
rmkaplan
5bc05caba5 Rmk100 tedit catch up a few more fixes (#2204)
* Fixed #2185 and  #2173.

* TEDIT-MENU TEDIT-PAGE Fix a few more bugs

* TEDIT-STRESS--cleanup and harden a bit for future use

* TEDIT-FILE:  Allow putting of an APPEND file. There is still a guard against putting a readonly file--use COPYFILE instead. Provide message if won't put

* Get proper insert caret looks before EOL
2025-07-15 15:02:40 -07:00
rmkaplan
cad0143209 Rmk99 cleanup display fonts (#2203)
All display fontfiles are now in the single fonts/displayfonts/ directory. The subdirectories adobe, big, other, altofonts have been deleted, and are no longer on DISPLAYFONTDIRECTORIES. The few additional displayfonts from the envos repo are included.

This is the result of:

Removing all byte-identical files, leaving a representative of each such equivalence class in displayfonts/

Removing all files in displayfonts that are renamed byte-identical copies of other files in displayfonts/ (e.g. helvetica1-MRR-c0.displayfont is a fake-renamed copy of helvetica4-MRR-c0.displayfont). These are to be constructed on the fly by the font substitution mechanism.

Roughly comparing the bitmaps of non-identical files with the same font family/size/face/charset in the different subdirectories, and making displayfonts/ have the one that looks best (e.g. most glyphs, unless garbage), giving priority to ones that are already in displayfonts/.

Moving the remaining odd-ball files from the subdirectories to displayfonts/ (e.g. gates, music).

Copying from Envos the 30 or so files that are not byte-identical copies of files already in displayfonts/.
2025-07-14 11:43:11 -07:00
Frank Halasz
d6cb62a354 Response to Issue #2198: loadup and medley scripts can now store/retrieve loadup files to/from named subdirectories of MEDLEYDIR/loadups (#2200)
* Add to loadup and medley scripts a --branch argument whereby which loadup outputs are stored in MEDLEYDIR/loadups/branches/BRANCH, where BRANCH is the name of the currently active git branch of MEDLEYDIR (for loadup) or the name of a BRANCH whereby which a loadup had been run with the --branch option (for medley).  Man pages updated accordingly.

* Removed --git-branch synonym for --branch from both medley and loadup scripts.  Added optional BRANCH argument to --branch in loadup script. If BRANCH is specified iot is used as the (pseudo)branch name instead of the current active git branch of MEDLEYDIR.  If BRANCH is "-", the current git branch name is used.

* When doing loadups, a file called gitinfo is created in the LOADUP_OUTDIR that contains the git commit, git branch and git status of MEDLEYDIR at the time of the loadup.  Branch names in loadup and medley scripts now contain only alphanumerics, dahes, underscores, periods.  Any other character is coerced to underscore.  The branch name is now included in the window title.

* Incorporate changes from PR#2208: Use the loadup step script names as the --id string.

* Add loadups/gitinfo and loadups/branches to .gitignore
2025-07-14 10:28:26 -07:00
Matt Heffron
88a7fa5480 BUTTONS - Correctly wait for edit of button to complete before updating (#2207)
Fix editing of button...correctly wait for edit to complete before updating the button itself.
Add (FIND-BUTTON label) function.
Minor updates to documentation.
2025-07-08 10:37:51 -07:00
rmkaplan
63d5849a15 Rmk88 split screen updates and color, eliminate reliance on STREAMHINT xpointer (#2119)
* Tedit window splitting is more robust, interface through menu items instead of split-region on the right of the window.  See TEDIT-RELEASENOTES.TEDIT

* Tedit recognizes color as specfied by DSPCOLOR, passes it to hardcopy

* N-way buttons default to unsorted--new items go at the end. Otherwise keyboard shortcut meta-3 for the 3rd font might pick a different one depending on what went before.

* USER.CM can be specified as an opening property for Bravo conversion.

* Adresses/fixes Tedit issues #2173 #2172 #2171 #2142  #2105 #2062 #2059 #1972 (maybe some others).

* Changes to rationalize internal interfaces and simplify code, and particularly to eliminate internal dependencies on the STREAMHINT Xpointer backlink.  STREAMHINT is only accessed if a client has grabbed the TEXTOBJ and passes it back in.  The stream and window are the safe/reliable way of referencing the Tedit state (and the window and stream know about each other, and know about the TEXTOBJ only through the stream).

* Many changes to TEDIT-STRESS, including new defaults CHECKARRAYS NIL, NSYSOUTS 0, ARRAYBLOCKCHECKING T

* lispusers/EQUATIONS: image object no longer saves state on the stream, not the window (which may not be there).

* Rename CHARNAME to be CHARCODE.ENCODE, parallel to CHARCODE.DECODE
2025-07-03 00:06:10 -07:00
Frank Halasz
d6253dbffd Fix online.interlisp.org/downloads/medley_downloads.html to reflect new wsl1 versus wsl2 ,releases (instead of just wsl) (#2197)
Add the WSL1 vs WSL2 distinction to the medley_downloads page
2025-06-30 15:08:42 -07:00
InterlispMachineUser
ba4250d8fe Updated github actions to add wsl1-specific builds to the releases (#2182)
Updated Build/Push Medley Release workflow to add wsl1-specific assets
to the releases - based on the new wsl1-specific maiko builds.

Renamed the current wsl release assets to be wsl2-speciic assets.

There are now 20 assets in a release build.
2025-06-16 22:26:47 -07:00
InterlispMachineUser
654a925074 Add a --vnc flag to loadup script, used to tell loadup scripts to run Medley with the --vnc option. (#2181)
Add a --vnc flag to loadup script, used to tell loadup scripts to run
Medley with the --vnc option.

Used primarily on WSL1 and WSL2 systems where loadup defaults to X
Windows. But can be used on any Linux platform that uses Xvnc.

Not relevant on MacOS and Cygwin. 

Man page updated accordingly.
2025-06-16 22:26:02 -07:00
Frank Halasz
357406e7d8 Merge branch 'master' into fgh_loadup-vnc
Signed-off-by: Frank Halasz <frank@halasz.org>
2025-06-16 22:18:13 -07:00
Matt Heffron
72032afdde Fix POSTSCRIPTSTREAM to refine or default values for COLOR. (#2177)
* Fix POSTSCRIPTSTREAM to accept SMALLP values 0 and 1 as COLOR.
(Don't require them to be FLOATP.)

* Changed handling when color values are not directly interpretable without other context (e.g., as an index into a color map).

POSTSCRIPTSTREAM should behave similar to INTERPRESS and just ignore a BRUSHCOLOR if it is a SMALLP that's neither 0 nor 1, and use the current DSPCOLOR of the stream.
If someone wants a specific color, or grayscale, they can use the color descriptions as documented in POSTSCRIPTSTREAM.TEDIT.

* Update documentation to better describe allowed COLOR specification.
2025-06-16 20:49:27 -07:00
Frank Halasz
87fafe901e Medley script currently forces -vnc when using WSL1. This PR removes this infelicity. (#2180)
IMedley script currently forces -vnc when using WSL1.  This PR removes this infelicity. (#2180)
2025-06-16 20:24:54 -07:00
Frank Halasz
7f3a3d1f81 Fix Issue #2148: loadups fail on WSL1 with Xvnc server errors - fixed by adding new flag to medley script, use this flag in loadup script (#2163)
* 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.

* Fix Issue 2148 - loadups fail on WSL1 with Xvnc server error.  Root cause of 2148 is that certain Medley sessions in loadups run very quickly - less that a second or 2.  This causes the medley script to improperly detect an Xvnc server error.  Fixed by adding a cli flag --automation that forces the medley script to skip the check for Xvnc server errors.  Changed loadup script to call medley with this flag set.  Also add a cl flag to loadup --forcevnc that forces loadup to use vnc even on WSL2.  This is intended for testing purposes only.
2025-06-16 20:23:40 -07:00
rmkaplan
30af8ea5cb Clicking on the graph after the main window has closed does't break (#2146) 2025-06-16 11:56:33 -07:00
rmkaplan
d26e29f0d0 Collect TALK files into lispusers/talk/ (#2147)
* Collect TALK files into lispusers/talk/

renamed with hyphen convention.  Also pull over TALKGAP files that were previous obsolete, and remove them from obsolete/lispusers

* Replace TALK.TEDIT--file got smashed

* TALK.TEDIT now comments the current situation
2025-06-16 11:46:00 -07:00
Arun Welch
c5dd583468 Fixed issue 1883, error in printing class from CLOS browser (#2187) 2025-06-15 18:08:53 -05:00
Arun Welch
356fd62478 Merge branch 'master' into akw-fix-1883-clos-browser 2025-06-10 19:03:17 -05:00
Arun Welch
60195c4f31 Fixed issue 1883
Fixed issue 1883, error in printing class from CLOS browser
2025-06-10 18:50:06 -05:00
rmkaplan
499e3ab77a PDFSTREAM opens the scratch stream (#2184) 2025-06-09 20:40:16 -07:00
Frank Halasz
145d240346 Return buildLoadup.yml to its normal state after mods for testing 2025-06-04 16:56:45 -07:00
Frank Halasz
a398d40630 Add a --vnc flag to loadup script, used to tell loadup scripts to run Medley with the --vnc option. Used primarily on WSL1 and WSL2 systems where loadup defaults to X Windows. But can be used on any Linux platform that uses Xvnc. Not relevant on MacOS and Cygwin. Man page updated accordingly. 2025-06-04 16:47:24 -07:00
Frank Halasz
90326613d1 Fix up testing version of buildLoadup.yml. Will be reverted to original after testing is done. 2025-06-04 12:33:00 -07:00
Frank Halasz
96945e63e3 Fix typo in buildLoadup.yml 2025-06-04 12:12:57 -07:00
Frank Halasz
e686790bc1 Fixing up control files for wsl in making of debs 2025-06-04 12:06:41 -07:00
Frank Halasz
e09feb7b6a Update buildLoadup workflow to handle new wsl1 maiko package. Actual work is in installers/deb/build_deb.sh. THere will now be wsl1 and wsl2 packages instead of just wsl packages. 2025-06-04 11:15:39 -07:00
Frank Halasz
5534e85a12 IN medley script, remove forcing wsl1 to use vnc 2025-06-03 20:03:50 -07: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.
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.
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.
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) 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.
2025-05-01 06:45:29 -07:00
rmkaplan
40e3edc291 Remove DIRECTORYNAMEP check in EDITCALLERS (#2123)
So that (EDITCALLERS 'xxx 'UNICODE) works
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) 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.
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) 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) 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.
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.
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..
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
rmkaplan
a4da0ec553 Update Tedit field names in Lafite (#2034)
Lafite is not in the fuller ms database, so I missed these references in
TEDIT-INDENT.

But note also: there are 2 definitions of the function
\GV.PARSERECIPIENTS1, one on lafite/TEDIT-PRIVATEDL and one on
internal/MAILCLIENT.

The one on TEDIT-PRIVATEDL references the variable ADDRESSPARSERRDTBL,
which is not initialized.
2025-03-10 23:39:21 -07:00
rmkaplan
02411ef3f4 rmk72: Address Tedit Find and Substitute issues reported in #2055 (#2058)
Selection highlighting should be correct if line contains a preceding
diacritic.

Find from expanded menu should work.

Screen and selection should not be garbled after substitute.

I have not yet replicated the break-on-put also reported in #2055
2025-03-10 23:38:30 -07:00
rmkaplan
7242b998c7 LLREAD: Add character names One, Two... for digits 0, 1 ... 2025-03-08 09:59:28 -08:00
rmkaplan
70f0e97886 TEDIT-SELECTION and TEDIT-SCREEN: Selection should take account of diacritics 2025-03-06 20:24:32 -08:00
rmkaplan
6bf26ebadd TEDIT-FIND: Display after substitute should not be garbled 2025-03-06 20:23:39 -08:00
rmkaplan
02031bbf81 TEDIT-MENU: Find should work from expanded menu 2025-03-06 20:22:27 -08:00
rmkaplan
d4b8656803 TEDIT: Fix image object glitch plus minor extensions (#2049)
* Paren error when selection looks set to INVERTED

* Add SET, SHADE, and SHADEHEIGHT properties to TEDIT.SELPROP

* Add QUIET as optional last argument to TEDIT.FORMAT.HARDCOPY, suppress prompt-window message

* COLLECT? argument to TEDIT.MAP.OBJECTS can specify what kind of information to collect.
2025-03-05 12:27:50 -08:00
Larry Masinter
0aa52aa8cd update LispUsers xerox-to-xbm to at least be cl:compiled (DFASL not LCOM) and TXT -> TEDIT. (#2047) 2025-03-03 10:40:31 -08:00
Frank Halasz
ebe96bc7b0 Fix Issue #2050 - loadup script failures if Medley is not a .git directory (#2052) 2025-03-03 10:27:10 -08:00
rmkaplan
98c481ba1a PDF to {NULL} only does postscript part (#2045)
* PDF to {NULL} only does postscript part

* added TRUEFILENAME in NULL case
2025-02-26 12:48:26 -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
Frank Halasz
0400c1ec7f Fix Medley builds on github actions - currently breaks due to error in creating Docker image for arm64. (#2039)
In github actions, remove build of Medley Docker for arm64 since the Dockerfile_medley build fails when loading tigervnc-standalone-server for arm64.  Arm64 docker image has never been used anyway.  It was meant for running online on arm64 servers, but we have never done that and have no plans to do so.  So just getting rid of arm64 docker image rather than trying to fix it.
2025-02-24 09:19:54 -08:00
Matt Heffron
736ac51a8c FONTSAMPLER - Enable option to use HEX vs OCTAL on page info (#2018)
* Enable optional to use HEX vs OCTAL for charset number (in page title) and grid row/column titles.

* Fix typos in documentation.
2025-02-21 16:05:41 -08:00
rmkaplan
c7f08aade9 forgot this one 2025-02-15 17:53:46 -08:00
rmkaplan
c0e0aea80a Remove a few more dependencies on Tedit internals 2025-02-15 17:39:40 -08:00
rmkaplan
f56033fca0 Change field names 2025-02-15 09:27:28 -08:00
rmkaplan
ae52a44231 lispusers/DOCUMENT cleaned up and working with current Tedit (#2023)
Cleaned up lispusers/DOCUMENT
2025-02-09 22:07:41 -08:00
Matt Heffron
fbf0a98aec Yet another attempt to make a clean PR (compared with broken PRs #2007 & #2008 & #2013) (#2014)
Enable **FONTSAMPLER** to display glyphs from **.DISPLAYFONT** (bitmap
font) on non-`DISPLAY` stream (e.g., **PDF**)
Change to match 2025-02-03 discussion on Ascent/Descent
per-`CHARSETINFO` _vs._ whole `FONTDESCRIPTOR`.
(Use whole `FONTDESCRIPTOR`.)
2025-02-04 17:55:35 -08:00
Matt Heffron
87d3abc632 Yet another attempt to make a clean PR (compared with broken PRs #2007 & #2008 & #2013) 2025-02-04 17:22:54 -08:00
Matt Heffron
1f317d34ef Obsolete and rename FONTSAMPLE no R (#2010)
* Add back character sets that had characters outside 16 bit plane

* Update XCCS-353=SYMBOLS3.TXT

Update title line

* Update UNICODE.TEDIT

* Fix charset names

* Reorganized the tables, added requested interfaces

* Use a single hash

* Top-level array branch beats a single hash

* cleanup UNICODE.TRANSLATE macro

* Fix slug in outcharfn

* Remove a stray line

* Another try, would work for raw

* Remove duplicates, redo hashing

* Getting complete maps in both directions

* Initializing

* Only the latest file versions

* Add back gothic mappings

* Enable FONTSAMPLER to display glyphs from DISPLAYFONT (bitmap font) on non-DISPLAY stream (e.g., PDF)
Added .LCOM to repository.

Corrected PR.

* Relocate FONTSAMPLE files to obsolete.

* Files renamed. Internal names and documentation were NOT updated.

---------

Co-authored-by: rmkaplan <ron.kaplan@post.harvard.edu>
2025-02-03 12:30:53 -08:00
rmkaplan
86f5aadf95 Tedit: eliminate some CHARLOOKS fields, change Charlooks menu, add pagenum object, a few cleanups (#2004)
* CHARLOOKS fields, Charlooks menu, pagenum object, a few cleanups

* Add TEDIT-DEBUG

* Glitch in redo

* Select left of EOL
2025-02-03 12:14:49 -08:00
rmkaplan
fc36176134 fix GITFNS prc command (#1994)
* fix prc command

* A little cleaner

* Match also on the pull-request number

* Oops, remove HELP
2025-02-03 12:07:58 -08:00
Larry Masinter
1e47741a71 typo: chmod +x instead of -x for post-checkout script (#2006) 2025-02-03 12:06:44 -08:00
Matt Heffron
40d18fff6e Fix unbound vars errors in WRITESTRIKEFONTFILE from earlier edit. (#2003) 2025-02-03 11:58:06 -08:00
Frank Halasz
8323b1fae4 Improved REGIONMANAGER reference coordinates (#1998)
Additional ways of specifying the anchor for the reference (window,
region, position)
2025-02-03 11:14:22 -08:00
Matt Heffron
16e99100f5 Macros for multi-level alists (#1996)
These are macros that I have been using for years to simplify the
storage and retrieval of items in alist structures with arbitrary
numbers of keys. They may prove useful to others.
2025-02-03 11:01:03 -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
rmkaplan
907010013e Add back character sets that had characters outside 16 bit plane (#1964)
* Add back character sets that had characters outside 16 bit plane

* Update XCCS-353=SYMBOLS3.TXT

Update title line

* Update UNICODE.TEDIT

* Fix charset names

* Reorganized the tables, added requested interfaces

* Use a single hash

* Top-level array branch beats a single hash

* cleanup UNICODE.TRANSLATE macro

* Fix slug in outcharfn

* Remove a stray line

* Another try, would work for raw

* Remove duplicates, redo hashing

* Getting complete maps in both directions

* Initializing

* Only the latest file versions

* Add back gothic mappings
2025-02-03 10:47:12 -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
Larry Masinter
db98ea346b Remove GITFNS.PDF from repo (added by HCFILES ) (#2001) 2025-02-01 10:49:21 -08:00
Matt Heffron
402a861b95 Fix unbound vars errors in WRITESTRIKEFONTFILE from earlier edit. 2025-02-01 10:25:49 -08:00
rmkaplan
6c3f0d8e56 Improved reference coordinates 2025-01-30 22:53:26 -08:00
rmkaplan
6c86838d18 Macros for multi-level alists 2025-01-29 22:57:37 -08:00
rmkaplan
d9090011d4 Add WHICHKEY to lispusers/ (#1987)
* WHICHKEY

* WHICHKEY collects all down keys
2025-01-27 11:54:09 -08:00
rmkaplan
40d2ac394c SEE-PDF searches for PDF file (#1939) 2025-01-27 11:52:31 -08:00
rmkaplan
4873590e22 TEDIT-FNKEYS makes sure that the new caret-point after onechar forward/backward is always LEFT (#1988)
Make sure that the new caret-point is always LEFT

I hope this fixes it
2025-01-27 11:51:05 -08:00
rmkaplan
188895c7e9 Fix a glitch in Tedit screen-update (#1984)
Fixes a screen-update glitch in Tedit
2025-01-27 11:48:53 -08:00
rmkaplan
292a7cd787 Fix typo in VERSIONDEFS (#1990)
Fix typo
2025-01-27 11:45:55 -08:00
rmkaplan
a1a67959d1 Converted EXV to a command exv (#1981)
As requested
2025-01-27 11:44:46 -08:00
Nick Briggs
015868e9a6 Adds STATUS argument to LOGOUT for process exit status (#1978) 2025-01-27 11:32:29 -08:00
Larry Masinter
9f980276bf Add a call to check for orphaned versions after any checkout (#1973)
* Add a call to check for orphaned versions after any checkout

* use == instead of -eq for optional

* Add a scripts/install-repo-checks for things to run after checkout; only this versioning error checked for now
2025-01-25 11:15:27 -08:00
Matt Heffron
ef6a645bf5 Fix move of PSEUDOHOSTS from lispusers to library (#1980)
The files were **copied** from `lispusers` to `library`, and then
modified there.
They should have been **moved** so the git history was preserved.
I replaced these files _with themselves_ by a 3 step process that
_appears_ to have gotten the git history to be correct.
(And the `PSEUDOHOSTS.TEDIT` from `lispusers` was also moved. It had
been left behind previously.)
2025-01-21 10:40:30 -08:00
Matt Heffron
90c723a8c1 Replace with the PSEUDOHOSTS files that were originally modified in the library. This preserves the git history. 2025-01-20 21:11:09 -08:00
Matt Heffron
20ec5c2bc9 Step 2 of move: move the files. 2025-01-20 21:07:28 -08:00
Matt Heffron
ba3a5668bd Step 1 of move: Make a place to move friles from lispusers (delete git's knowledge of PSEUDOHOSTS in library) 2025-01-20 21:04:39 -08:00
rmkaplan
d737f7ec93 Manipulate versions of definitions by their ordinal file numbers (#1931) 2025-01-20 12:40:46 -08:00
rmkaplan
9e6eba2cd9 Clicking See for pdf files will do the ShellOpen (#1930)
* Click See on a pdf file will do the ShellOpen

instead of crashing into Tedit.  prc will inherit this behavior

* Loads PDFSTREAM if not already loaded
2025-01-20 12:40:00 -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
27d8bffaa9 Commands with OUTPUT TEDIT go to Tedit window (#1932) 2025-01-20 12:06:36 -08:00
rmkaplan
58122db362 Open man page with TEDIT READONLY-QUIET instead of OPENTEXTSTREAM (#1933)
Tedit process enables meta key commands

Find, Open, Documentation
2025-01-20 12:05:47 -08:00
rmkaplan
5eb8a7bd34 Proper error messages for meta-O and meta-D on empty selection (#1944)
* Addresses #1943

* Better prompt messages for meta-O and meta-D

* Cleanup TEDIT.SETSEL

* Meta-O shows menu of types to edit

* Extra variable

* More cleaning of TEDIT.SETSEL
2025-01-20 12:03:20 -08:00
Herb Jellinek
4e11554156 TAB-WINDOWS: A lispusers package that lets you step through open windows (#1789)
Start it running with `(START-TAB-WINDOWS)`.

Bonus debug tool: `(KEY-WINDOW)` starts a process that monitors keyboard
and mouse button events and displays them in a little window.
2025-01-20 10:47:15 -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
rmkaplan
936337d6bb Shakedown of field menu items (#1957)
* Shakedown of field menu items

* Suppress shift-select in menus

* Typo, plus inserting EOL-containing strings

* Fix selection display glitch revealed by DOCUMENT

* Fix arg order, eliminate U-CASE

* U-CASE only if coercing IDENTIFIER from LABEL

* Allow SMALLP for identifiers, INITSTATE for SELECTION

Also a fence-post glitch in paragraph selection

* Fix MB.GET

* TEDIT-MENU:  Right button doesn't invert Marginbar, copying suppressed

* TEDIT-STREAM:  Error if copying an image object that doesn't allow copying

* Missed another LITATOM/SMALLP test on IDENTIFIERS

* Clicking in a menu removes stale promptwindow text

---------

Co-authored-by: Frank Halasz <frank@halasz.org>
2025-01-15 10:52:18 -08:00
Matt Heffron
6bdcb1853d Fix GREET0 off by 1 error. Without changing the file's READTABLE (#1970)
Replaces mth26 branch (PR #1969). This doesn't change the file's
READTABLE.
2025-01-14 16:21:22 -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
33a53e47e1 Unicode: Added replacement mapping (#1938)
Added replacement mapping

and fixed typos in the Tedit file
2024-12-25 12:59:40 -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
b46583557a Make PDF BINARY on DEFAULTFILETYPELIST (#1902)
* Make PDF BINARY on DEFAULTFILETYPELIST

* Make all POSTSCRIPT/PDF extensions be BINARY
2024-12-23 23:02:09 -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
Herb Jellinek
a26d061843 Update issue templates (#1925) 2024-12-19 11:02:54 -08:00
rmkaplan
b51be87524 Update .ignore to suppress uploading of .sysout files (#1892) 2024-12-03 09:15:03 -08:00
Herb Jellinek
7a32bd3051 Update docs, make configurable
Make the meta-key name a parameter and update the docs to match.

Document how different OSes, keyboards, and window systems can affect results.
2024-10-23 14:07:56 -07:00
Herb Jellinek
7ed120ca97 TAB-WINDOWS: Step through open windows
Start it running with `(START-TAB-WINDOWS)`.

Bonus: `(KEY-WINDOW)` starts a process that monitors keyboard and mouse button
events and displays them in a little window.
2024-07-19 10:59:52 -07:00
1140 changed files with 56256 additions and 40676 deletions

View File

@@ -3,6 +3,7 @@ name: Bug report (not specific)
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---
@@ -22,11 +23,13 @@ A clear and concise description of what you expected to happen.
If applicable, add screenshots to help explain your problem.
**Context (please complete the following information):**
- OS: [e.g. Mac/Linux/Cygwin]
- OS Version: [e.g. High Siera/Ubuntu 18/Raspbian]
- Host arch: [e.g. x86_64, arm7l, arm64, sparc]
- Are you using online.interlisp.org? [yes / no]
- OS: [e.g. macOS/Linux/Cygwin]
- OS Version: [e.g. Ventura, Ubuntu 24, Raspberry Pi OS]
- Display/window system: [e.g. X11, SDL, VNC, Web browser]
- Host arch: [e.g. x86_64, arm7l, arm64, SPARC]
- Maiko version: [e.g. commit ID from `git log | head`]
- IL:MAKESYSDATE: [ date ]
- `IL:MAKESYSDATE`: [ date ] or `(il:print-lisp-information)`: copy-paste or screenshot this
**Additional context**
Add any other context about the problem here.

View File

@@ -3,6 +3,7 @@ name: Documentation problem
about: Problems with this web site?
title: ''
labels: ''
assignees: ''
---

View File

@@ -3,6 +3,7 @@ name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''
---

View File

@@ -154,7 +154,8 @@ jobs:
if [ "${{ inputs.draft }}" = "false" ];
then
docker_tags="${docker_image}:latest,${docker_image}:${MEDLEY_RELEASE#*-}_${MAIKO_RELEASE#*-}"
platforms="linux/amd64,linux/arm64"
platforms="linux/amd64"
#,linux/arm64
else
docker_tags="${docker_image}:draft"
platforms="linux/amd64"
@@ -171,7 +172,8 @@ jobs:
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
platforms: linux/amd64,linux/arm64,linux/arm/v7
platforms: linux/amd64
# ,linux/arm64,linux/arm/v7
# Setup the Docker Buildx funtion
- name: Set up Docker Buildx

View File

@@ -131,7 +131,7 @@ jobs:
run: |
if [ ! "${{ needs.inputs.outputs.draft }}" = "true" ]
then
gh workflow run buildAndDeployMedleyDocker.yml --repo Interlisp/online --ref master
gh workflow run buildAndDeployMedleyDocker.yml --repo Interlisp/online --ref main
fi
env:
GITHUB_TOKEN: ${{ secrets.ONLINE_TOKEN }}

View File

@@ -52,6 +52,12 @@ jobs:
- name: Checkout Medley repo
uses: actions/checkout@v4
- name: Checkout maiko
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/maiko
path: ./maiko
- name: Checkout notecards
uses: actions/checkout@v4
with:
@@ -79,6 +85,7 @@ jobs:
--repo ${{ github.repository_owner }}/maiko \
--pattern '*-linux.x86_64.tgz'
tar -xzf /tmp/maiko.tgz
touch ./maiko/linux.x86_64/.skip
env:
GH_TOKEN: ${{ secrets.MU_TOKEN }}

16
.gitignore vendored
View File

@@ -13,11 +13,9 @@ maiko/
# normally when you have derived files, you ignore them from git
# because they will get regenerated when you rebuild.
# MEDLEY-UTILS HCFILES regenerates
# do not ignore .pdf files after all... rather, [new workflow](scripts/make-gh-pages.md) stores it in the src repository gh-pages branch.
# *.pdf
# index.html
# index.html files are also produced by HCFILES
*.pdf
index.html
# all loadup files
@@ -32,11 +30,19 @@ loadups/*.dribble
loadups/whereis.hash
loadups/apps.sysout
loadups/fuller.database
loadups/build/
loadups/branches
loadups/gitinfo
# manual cross-reference files
*.IMPTR
# (Accidentally) created sysouts at any level
*.sysout
*.SYSOUT
#compiled code -- leave in for now
# *.lcom

View File

@@ -3,7 +3,7 @@
First, we want to thank you for helping reach the goal of restoring Medley Interlisp
to the point where it is as useful today as it was 30 years ago.
This guide is meant to help you make useful contributions, whether to the [Maiko](https://github.com/Interlisp/maiko) C-based virtual machine implementation, the [Medley](https://github.com/Interlisp/medley) Lisp code (in Interlisp and Common Lisp), or [documentation](https://github.com/Interlisp/medley/wiki). There are a number of [GitHub](https://github.com/Interlisp/medley/discussions/categories/github-use) problems that could use some attention.
This guide is meant to help you make useful contributions, whether to the [Maiko](https://github.com/Interlisp/maiko) C-based virtual machine implementation, the [Medley](https://github.com/Interlisp/medley) Lisp code (in Interlisp and Common Lisp), or [documentation](https://interlisp.org/software/using-medley). There are a number of [GitHub](https://github.com/Interlisp/medley/discussions/categories/github-use) problems that could use some attention.
## Working with Maiko
@@ -17,6 +17,8 @@ The current arrangement of files and extentions is awkward for working on the im
* The most useful contributions are reproducible errors -- things that don't work as documented.
* Second most useful are reports of unexpected behavior -- things that aren't documented but behave unexpectedly.
To report these errors and behaviors [open an issue](https://github.com/Interlisp/medley/issues).
## Reporting a bug or feature request
* Ensure the bug was not already reported by searching on GitHub under [Issues](https://github.com/Interlisp/medley/issues) or [Discussions](https://github.com/Interlisp/medley/discussions). Note that all issues and Discussions are found in the Medley repository, using labels to distinguish. Discussions are for questions or topics where there is some disagreement or uncertainty about the "right" direction.
* If you're unable to find a discussion or open issue addressing the problem, open a new one. Be sure to include a title
@@ -24,7 +26,7 @@ and clear description, as much relevant information as possible. Use the issue t
## Did you write a patch that fixes a bug?
* Some bug fixes and "improvements" have unintended consequences, well beyond what you might expect for well-written modern code. We don't have testing new builds automated or integrated. Be sure you've tested your patch.
* Open a new [GitHub pull request](https://github.com/Interlisp/maiko/pulls) with the patch.
* Open a new GitHub pull request with the patch.
* Ensure the PR description clearly describes the problem and solution. Include the relevant issue number if applicable.
* Keep Pull Requests small and easily reviewable. https://www.thedroidsonroids.com/blog/splitting-pull-request for
a writeup of good practices.

View File

@@ -1,18 +1,18 @@
(DEFINE-FILE-INFO PACKAGE (PROGN (DEFPACKAGE "CLOS-BROWSER" (USE "CLOS") (EXPORT "CLOS-ICON"
"CLOS-BROWSER" "ADD-BROWSER-METHOD" "BROWSE-CLASS")) (CLFIND-PACKAGE "USER")) READTABLE "XCL" BASE
10)
(DEFINE-FILE-INFO PACKAGE (PROGN (DEFPACKAGE "CLOS-BROWSER" (USE "CLOS" "LISP") (EXPORT "CLOS-ICON"
"CLOS-BROWSER" "ADD-BROWSER-METHOD" "BROWSE-CLASS")) (CLFIND-PACKAGE "USER")) READTABLE "XCL" BASE
10)
(IL:FILECREATED " 5-Dec-2023 12:07:41" IL:{CLOS}NEW-CLOS-BROWSER.\;3 91622
(IL:FILECREATED "28-Apr-2025 18:32:38" 
IL:|{DSK}<Users>arunwelch>DOCUMENTS>MEDLEY-WORKSPACE>RELEASE>NEW-CLOS-BROWSER.;4| 91934
:EDIT-BY "mth"
:EDIT-BY "akw"
:CHANGES-TO (IL:PROPS (IL:NEW-CLOS-BROWSER IL:MAKEFILE-ENVIRONMENT))
:PREVIOUS-DATE " 5-Dec-2023 00:58:05" IL:{CLOS}NEW-CLOS-BROWSER.\;2)
:PREVIOUS-DATE "26-Apr-2025 17:16:46"
IL:|{DSK}<Users>arunwelch>DOCUMENTS>MEDLEY-WORKSPACE>RELEASE>NEW-CLOS-BROWSER.;3|)
; Copyright (c) 1991, 2020, 2023 by Venue.
(IL:PRETTYCOMPRINT IL:NEW-CLOS-BROWSERCOMS)
(IL:RPAQQ IL:NEW-CLOS-BROWSERCOMS
@@ -275,7 +275,7 @@
(IL:PUTPROPS IL:NEW-CLOS-BROWSER IL:MAKEFILE-ENVIRONMENT (:PACKAGE (PROGN (XCL:DEFPACKAGE
"CLOS-BROWSER"
(:USE "CLOS")
(:USE "CLOS" "LISP")
(:EXPORT "CLOS-ICON"
"CLOS-BROWSER"
"ADD-BROWSER-METHOD"
@@ -1159,9 +1159,14 @@ Below this line operates on individual slots and methods."
(DOCUMENTATION (SLOT-VALUE CLOS-BROWSER::SELF 'CLOS-BROWSER::CLASS)))
(DEFMETHOD CLOS-BROWSER::PRINT-CLASS ((CLOS-BROWSER::SELF CLOS-BROWSER::CLOS-BROWSER-NODE))
(PPRINT (IL:GETDEF (SLOT-VALUE (SLOT-VALUE CLOS-BROWSER::SELF `CLOS-BROWSER::CLASS)
'CLOS::NAME)
'CLOS-BROWSER::CLASSES)))
(IF (IL:HASDEF (SLOT-VALUE (SLOT-VALUE CLOS-BROWSER::SELF 'CLOS-BROWSER::CLASS)
'CLOS::NAME)
'CLOS-BROWSER::CLASSES)
(PPRINT (IL:GETDEF (SLOT-VALUE (SLOT-VALUE CLOS-BROWSER::SELF `CLOS-BROWSER::CLASS)
'CLOS::NAME)
'CLOS-BROWSER::CLASSES))
(IL:PROMPTPRINT "No Printable Definition for the class " (SLOT-VALUE CLOS-BROWSER::SELF
'WEB::NAME))))
(DEFMETHOD CLOS-BROWSER::SPECIALIZE-CLASS ((CLOS-BROWSER::NODE CLOS-BROWSER::CLOS-BROWSER-NODE)
&OPTIONAL CLOS-BROWSER::FORM CLOS-BROWSER::NEW-CLASS-NAME)
@@ -1211,7 +1216,8 @@ Below this line operates on individual slots and methods."
(RETURN))))))
(IL:SETCURSOR CLOS-BROWSER::ORIGINALCURSOR))))))
(DEFUN CLOS-BROWSER::LYRIC-COMPLETE-SPECIALIZE (IGNORE STRUCTURE)
(DEFUN CLOS-BROWSER::LYRIC-COMPLETE-SPECIALIZE (IGNORE STRUCTURE)
(IL:* IL:\; "Edited 26-Apr-2025 14:31 by arunwelch")
(LET ((CLOS-BROWSER::ORIGINALCURSOR (IL:CURSOR)))
(UNWIND-PROTECT
(PROGN (IL:SETCURSOR IL:WAITINGCURSOR)
@@ -1224,8 +1230,7 @@ Below this line operates on individual slots and methods."
(IL:* IL:|;;| "check for bug")
(WHEN (SYMBOLP CLOS-BROWSER::SUB-CLASS)
(SETQ CLOS-BROWSER::SUB-CLASS (CLOS::SYMBOL-CLASS CLOS-BROWSER::SUB-CLASS
)))
(SETQ CLOS-BROWSER::SUB-CLASS (FIND-CLASS CLOS-BROWSER::SUB-CLASS)))
(DOLIST (CLOS-BROWSER::BROWSER (SLOT-VALUE CLOS-BROWSER:CLOS-ICON
'CLOS-BROWSER::CLASS-BROWSERS))
(DOLIST (CLOS-BROWSER::SUPER-CLASS (SLOT-VALUE CLOS-BROWSER::SUB-CLASS
@@ -1387,14 +1392,12 @@ Below this line operates on individual slots and methods."
(0 (FORMAT T "Unspecialized methods cannot be copied. ~A" (CLOS::FULL-METHOD-NAME
CLOS-BROWSER::METHOD NIL)))
(1 (SETQ CLOS-BROWSER::FROM-CLASS (CAR CLOS-BROWSER::NON-T-CLASSES)))
(OTHERWISE (SETQ CLOS-BROWSER::FROM-CLASS (CLOS::SYMBOL-CLASS
(IL:PROMPTFORWORD (FORMAT NIL
(OTHERWISE (SETQ CLOS-BROWSER::FROM-CLASS (FIND-CLASS (IL:PROMPTFORWORD
(FORMAT NIL
"Which class in ~A do you wish to move from?"
(
CLOS::FULL-METHOD-NAME
CLOS-BROWSER::METHOD
NIL))))))))
(CLOS::FULL-METHOD-NAME
CLOS-BROWSER::METHOD
NIL))))))))
(IL:* IL:|;;| "should contain from-class. If it is not the same, abort.")
@@ -1465,7 +1468,7 @@ Below this line operates on individual slots and methods."
 "fix bug in the inconsistent way CLOS objects store T class specializers and do method lookup.")
(WHEN (EQ CLOS-BROWSER::CLASS T)
(SETQ CLOS-BROWSER::CLASS (CLOS::SYMBOL-CLASS T)))
(SETQ CLOS-BROWSER::CLASS (FIND-CLASS T)))
(LET ((CLOS-BROWSER::NODE (CLOS-BROWSER::BROWSER-CONTAINS-P
CLOS-BROWSER::CLASS CLOS-BROWSER::BROWSER)))
(WHEN CLOS-BROWSER::NODE
@@ -1582,7 +1585,8 @@ Below this line operates on individual slots and methods."
(IL:|if| PACKAGE
IL:|then| (IN-PACKAGE PACKAGE))))
(DEFUN CLOS-BROWSER::CLASSES-IN-PACKAGE (PACKAGE &OPTIONAL CLOS-BROWSER::MAP-ON-PACKAGE)
(DEFUN CLOS-BROWSER::CLASSES-IN-PACKAGE (PACKAGE &OPTIONAL CLOS-BROWSER::MAP-ON-PACKAGE)
(IL:* IL:\; "Edited 26-Apr-2025 14:25 by arunwelch")
"Retrieves a list of all the classes for a given package. When map-on-package is t this can be very slow."
(IL:* IL:|;;| "The maphash is always fast, whereas for some strange reason map-on-package varys among packages greatly.")
@@ -1594,7 +1598,7 @@ Below this line operates on individual slots and methods."
(DO-SYMBOLS (CLOS-BROWSER::SYM PACKAGE)
(IF (AND (EQ (SYMBOL-PACKAGE CLOS-BROWSER::SYM)
PACKAGE)
(CLOS::SYMBOL-CLASS CLOS-BROWSER::SYM T))
(FIND-CLASS CLOS-BROWSER::SYM T))
(PUSH CLOS-BROWSER::SYM CLOS-BROWSER::CLASSES)))
(MAPHASH #'(LAMBDA (CLOS-BROWSER::KEY CLOS-BROWSER::VAL)
(IF (EQ (SYMBOL-PACKAGE CLOS-BROWSER::KEY)
@@ -1623,17 +1627,16 @@ Below this line operates on individual slots and methods."
IL:|BackgroundMenuCommands|)
(SETQ IL:|BackgroundMenu| NIL)
(IL:PUTPROPS IL:NEW-CLOS-BROWSER IL:COPYRIGHT ("Venue" 1991 2020 2023))
(IL:DECLARE\: IL:DONTCOPY
(IL:FILEMAP (NIL (11770 13440 (CLOS-BROWSER:BROWSE-CLASS 11770 . 13440)) (13442 14785 (
CLOS-BROWSER::COLLECT-FAMILY 13442 . 14785)) (14787 16819 (CLOS-BROWSER::MAKE-NODES 14787 . 16819)) (
16821 17496 (CLOS-BROWSER::CLOS-BROWSER-CLOSE-FN 16821 . 17496)) (17498 18430 (CLOS-BROWSER::BROWSER-CONTAINS-P
17498 . 18430)) (42263 42587 (CLOS-BROWSER::EDIT 42263 . 42587)) (42589 48183 (
CLOS-BROWSER::MAKE-METHOD-MENU-ITEMS 42589 . 48183)) (48185 49663 (CLOS-BROWSER::MAKE-TOP-LEVEL-METHOD-MENU-ITEMS
48185 . 49663)) (49665 50955 (CLOS-BROWSER::MAKE-MULTI-METHOD-SUB-MENU 49665 . 50955)) (64981 65598 (
CLOS-BROWSER::COMPLETE-ADD-METHOD 64981 . 65598)) (65600 67812 (CLOS-BROWSER::COMPLETE-SPECIALIZE
65600 . 67812)) (67814 69482 (CLOS-BROWSER::LYRIC-COMPLETE-SPECIALIZE 67814 . 69482)) (69484 69649 (
CLOS-BROWSER::THIS-CLASS-NODE-P 69484 . 69649)) (69651 69753 (CLOS::CLASS-DIRECT-METHODS 69651 . 69753
)) (86457 87472 (CLOS-BROWSER::REPLACE-SPECIALIZERS 86457 . 87472)) (87783 89367 (CLOS-BROWSER::IN-SELECT-PACKAGE
87783 . 89367)) (89369 90516 (CLOS-BROWSER::CLASSES-IN-PACKAGE 89369 . 90516)))))
(IL:FILEMAP (NIL (11846 13516 (CLOS-BROWSER:BROWSE-CLASS 11846 . 13516)) (13518 14861 (
CLOS-BROWSER::COLLECT-FAMILY 13518 . 14861)) (14863 16895 (CLOS-BROWSER::MAKE-NODES 14863 . 16895)) (
16897 17572 (CLOS-BROWSER::CLOS-BROWSER-CLOSE-FN 16897 . 17572)) (17574 18506 (CLOS-BROWSER::BROWSER-CONTAINS-P
17574 . 18506)) (42339 42663 (CLOS-BROWSER::EDIT 42339 . 42663)) (42665 48259 (
CLOS-BROWSER::MAKE-METHOD-MENU-ITEMS 42665 . 48259)) (48261 49739 (CLOS-BROWSER::MAKE-TOP-LEVEL-METHOD-MENU-ITEMS
48261 . 49739)) (49741 51031 (CLOS-BROWSER::MAKE-MULTI-METHOD-SUB-MENU 49741 . 51031)) (65408 66025 (
CLOS-BROWSER::COMPLETE-ADD-METHOD 65408 . 66025)) (66027 68239 (CLOS-BROWSER::COMPLETE-SPECIALIZE
66027 . 68239)) (68241 69946 (CLOS-BROWSER::LYRIC-COMPLETE-SPECIALIZE 68241 . 69946)) (69948 70113 (
CLOS-BROWSER::THIS-CLASS-NODE-P 69948 . 70113)) (70115 70217 (CLOS::CLASS-DIRECT-METHODS 70115 . 70217
)) (86738 87753 (CLOS-BROWSER::REPLACE-SPECIALIZERS 86738 . 87753)) (88064 89648 (CLOS-BROWSER::IN-SELECT-PACKAGE
88064 . 89648)) (89650 90900 (CLOS-BROWSER::CLASSES-IN-PACKAGE 89650 . 90900)))))
IL:STOP

Binary file not shown.

Binary file not shown.

BIN
docs/internal/MCCS.TEDIT Normal file

Binary file not shown.

Binary file not shown.

View File

@@ -1,164 +1,372 @@
<h1>NAME</h1>
<p><strong>medley</strong> — starts up Medley Interlisp</p>
<h1>SYNOPSIS</h1>
<p><strong>medley</strong> [ flags ... ] [ <em>SYSOUT_FILE</em> ] [ -- <em>PASS_ON_ARGS</em> ]</p>
<p><strong>medley</strong> [ flags ... ] [ <em>SYSOUT_FILE</em> ] [ --
<em>PASS_ON_ARGS</em> ]</p>
<h1>DESCRIPTION</h1>
<p>Starts Medley Interlisp in a window.</p>
<h1>OPTIONS</h1>
<p><strong>MEDLEYDIR</strong> is an environment variable set by Medley and used by many of the options described below. MEDLEYDIR is the top level directory of the Medley installation that contains the specific medley script that is invoked after all symbolic links are resolved. In the standard global installation this will be /usr/local/interlisp/medley. But Medley can be installed in multiple places on any given machine and hence MEDLEYDIR is computed on each invocation of medley.</p>
<p><strong>MEDLEYDIR</strong> is an environment variable set by Medley
and used by many of the options described below. MEDLEYDIR is the top
level directory of the Medley installation that contains the specific
medley script that is invoked after all symbolic links are resolved. In
the standard global installation this will be
/usr/local/interlisp/medley. But Medley can be installed in multiple
places on any given machine and hence MEDLEYDIR is computed on each
invocation of medley.</p>
<h2>Flags</h2>
<dl>
<dt>-h, --help</dt>
<dd><p>Prints out a brief summary of the flags and arguments to medley.</p>
<dd>
<p>Prints out a brief summary of the flags and arguments to medley.</p>
</dd>
<dt>-z, --man</dt>
<dd><p>Show the man page for medley</p>
<dt>-z [+], --man [+]</dt>
<dd>
<p>Show the man page for medley. If the <strong>+</strong> parameter is
specified, then no pager is used when displaying the man page.</p>
</dd>
<dt>-c [<em>FILE</em> | -], --config [<em>FILE</em> | -]</dt>
<dd><p>Use <em>FILE</em> as the config file for this run of Medley. See information on <em>CONFIG FILE</em> below.</p>
<p>If the given value is “-”, then suppress the use of a config file for this run of Medley.</p>
<dd>
<p>Use <em>FILE</em> as the config file for this run of Medley. See
information on <em>CONFIG FILE</em> below.</p>
<p>If the given value is “-”, then suppress the use of a config file for
this run of Medley.</p>
</dd>
<dt>-f, --full</dt>
<dd><p>Start Medley from the standard “full” sysout. full.sysout includes a complete Interlisp and CommonLisp environment with a standard set of development tools. It does not include any of the applications built using Medley.</p>
<p>(See <em>SYSOUT_FILE</em> below for more information on starting sysouts.)</p>
<dd>
<p>Start Medley from the standard “full” sysout. full.sysout includes a
complete Interlisp and CommonLisp environment with a standard set of
development tools. It does not include any of the applications built
using Medley.</p>
<p>(See <em>SYSOUT_FILE</em> below for more information on starting
sysouts.)</p>
</dd>
<dt>-l, --lisp</dt>
<dd><p>Start Medley from the standard “lisp” sysout. lisp.sysout only includes the basic Interlisp and CommonLisp environment.</p>
<p>(See <em>SYSOUT_FILE</em> below for more information on starting sysouts.)</p>
<dd>
<p>Start Medley from the standard “lisp” sysout. lisp.sysout only
includes the basic Interlisp and CommonLisp environment.</p>
<p>(See <em>SYSOUT_FILE</em> below for more information on starting
sysouts.)</p>
</dd>
<dt>-a, --apps</dt>
<dd><p>Start Medley from the standard “apps” sysout. apps.sysout includes everything in full.sysout plus Medley applications including Notecards, Rooms and CLOS. It also includes pre-installed links to key Medley documentation.</p>
<p>(See <em>SYSOUT_FILE</em> below for more information on starting sysouts.)</p>
<dd>
<p>Start Medley from the standard “apps” sysout. apps.sysout includes
everything in full.sysout plus Medley applications including Notecards,
Rooms and CLOS. It also includes pre-installed links to key Medley
documentation.</p>
<p>(See <em>SYSOUT_FILE</em> below for more information on starting
sysouts.)</p>
</dd>
<dt>-u, --continue</dt>
<dd><p>Nullify any prior setting of the sysout file (e.g., from the config file) - causing Medley to start from the virtual memory file resulting from the previous invocation (with the same values for id and logindir), if any. If there is no matching virtual memory file, Medley will start from the full.sysout (see -f/full above).</p>
<dd>
<p>Nullify any prior setting of the sysout file (e.g., from the config
file) - causing Medley to start from the virtual memory file resulting
from the previous invocation (with the same values for id and
logindir), if any. If there is no matching virtual memory file, Medley
will start from the full.sysout (see -f/full above).</p>
<p>Equivalent to “-y -”.</p>
<p>(See <em>SYSOUT FILE</em> section below.)</p>
</dd>
<dt>-y [<em>SYSOUT_FILE</em> | -], --sysout [<em>SYSOUT-FILE</em> | -]</dt>
<dd><p>Start Medley from the specified <em>SYSOUT-FILE</em>. This is an alternative to specifying the <em>SYSOUT-FILE</em> as the last argument on the command line (but before any <em>PASS_ON_ARGS</em>). It can be used to specify the <em>SYSOUT-FILE</em> in the config file (see information on <em>CONFIG FILE</em> below).</p>
<p>If the given value is “-”, then any prior setting of the sysout file (e.g., from the config file) is nullified (see -u/continue above).</p>
<dt>-y [<em>SYSOUT_FILE</em> | -], --sysout [<em>SYSOUT-FILE</em> |
-]</dt>
<dd>
<p>Start Medley from the specified <em>SYSOUT-FILE</em>. This is an
alternative to specifying the <em>SYSOUT-FILE</em> as the last argument
on the command line (but before any <em>PASS_ON_ARGS</em>). It can be
used to specify the <em>SYSOUT-FILE</em> in the config file (see
information on <em>CONFIG FILE</em> below).</p>
<p>If the given value is “-”, then any prior setting of the sysout file
(e.g., from the config file) is nullified (see -u/continue above).</p>
<p>(See <em>SYSOUT FILE</em> section below.)</p>
</dd>
<dt>-e [+ | -], --interlisp [+ | -]</dt>
<dd><p>If value is “+” or no value, make the initial Exec window within Medley be an Interlisp Exec. If value is “-”, make the initial Exec window be the default XCL Exec.</p>
<dd>
<p>If value is “+” or no value, make the initial Exec window within
Medley be an Interlisp Exec. If value is “-”, make the initial Exec
window be the default XCL Exec.</p>
<p>This flag applies only when the apps flag is used.</p>
</dd>
<dt>-n [+ | -], --noscroll [+ | -]</dt>
<dd><p>Medley ordinarily displays scroll bars to enable the user to pan the Medley virtual display within the Medley window. This is true even when the entire virtual display fits within the window.</p>
<p>Specifying “-n +” (noscroll +) turns off scroll bars. Specifying “-n -” (scroll -) turns on scroll bars. Specifying -n (noscroll) with no value is equivalent to specifying “noscroll +”.</p>
<dd>
<p>Medley ordinarily displays scroll bars to enable the user to pan the
Medley virtual display within the Medley window. This is true even when
the entire virtual display fits within the window.</p>
<p>Specifying “-n +” (noscroll +) turns off scroll bars. Specifying “-n
-” (scroll -) turns on scroll bars. Specifying -n (noscroll) with no
value is equivalent to specifying “noscroll +”.</p>
<p>Default is scroll bars off.</p>
<p>Note: If scroll bars are off and the virtual screen is larger than the window, there will be no way to pan to the non-visible parts of the virtual display.</p>
<p>Note: If scroll bars are off and the virtual screen is larger than
the window, there will be no way to pan to the non-visible parts of the
virtual display.</p>
</dd>
<dt>-g [<em>WxH</em> | -], --geometry [<em>WxH</em> | -]</dt>
<dd><p>Sets the size of the X Window (or VNC window) that Medley runs in to be Width x Height. (Full X Windows geomtery specification with +X+Y is not currently supported).</p>
<dd>
<p>Sets the size of the X Window (or VNC window) that Medley runs in to
be Width x Height. (Full X Windows geometry specification with +X+Y is
not currently supported).</p>
<p>If a value of “-” is given, geometry is set to the default value.</p>
<p>If --geometry is not specified but --screensize is, then the window size will be determined based on the --screensize values and the --noscroll flag. If neither --geometry nor --screensize is provided, then the window size is set to 1440x900 if --noscroll is set and 1462x922 if --noscroll is not set.</p>
<p>(Also see note below under <em>CONFIG FILE</em> on the use of geometry and screensize in config files.)</p>
<p>If --geometry is not specified but --screensize is, then the window
size will be determined based on the --screensize values and the
--noscroll flag. If neither --geometry nor --screensize is provided,
then the window size is set to 1440x900 if --noscroll is set and
1462x922 if --noscroll is not set.</p>
<p>(Also see note below under <em>CONFIG FILE</em> on the use of
geometry and screensize in config files.)</p>
</dd>
<dt>-s [<em>WxH</em> | -], --screensize [<em>WxH</em> | -]</dt>
<dd><p>Sets the size of the virtual display as seen from Medleys point of view. The Medley window is an unscaled viewport onto this virtual display.</p>
<p>If a value of “-” is given, screensize is set to the default value.</p>
<p>If --screensize is not specified but --geometry is, then the virtual display size will be set so that the entire virtual display fits into the given window geometry. If neither --screensize nor --geometry is provided, then the screen size is set to 1440x900.</p>
<p>(Also see note below under <em>CONFIG FILE</em> on the use of geometry and screensize in config files.)</p>
<dd>
<p>Sets the size of the virtual display as seen from Medleys point of
view. The Medley window is an unscaled viewport onto this virtual
display.</p>
<p>If a value of “-” is given, screensize is set to the default
value.</p>
<p>If --screensize is not specified but --geometry is, then the virtual
display size will be set so that the entire virtual display fits into
the given window geometry. If neither --screensize nor --geometry is
provided, then the screen size is set to 1440x900.</p>
<p>(Also see note below under <em>CONFIG FILE</em> on the use of
geometry and screensize in config files.)</p>
</dd>
<dt>-ps [<em>N</em> | -], pixelscale [<em>N</em> | -] ** <strong>Applicable only when display is SDL-based (e.g., on Windows/Cygwin)</strong> **</dt>
<dd><p>Sets the pixel scaling factor to <em>N</em>, an integer</p>
<p>If value of “-” is given, the pixel scale factor is set to its default of 1.</p>
<dt>-ps [<em>N</em> | -], pixelscale [<em>N</em> | -] **
<strong>Applicable only when display is SDL-based (e.g., on
Windows/Cygwin)</strong> **</dt>
<dd>
<p>Sets the pixel scaling factor to <em>N</em>, an integer</p>
<p>If value of “-” is given, the pixel scale factor is set to its
default of 1.</p>
</dd>
<dt>-t [<em>STRING</em> | -], --title [<em>STRING</em> | -]</dt>
<dd><p>Use <em>STRING</em> as title of Medley window.</p>
<p>If <em>STRING</em> includes the character sequence “%i”, then the value of the id string (see id flag below) prefixed by “::” will be substituited for the “%i”. Example: if the id is “run_45” and <em>STRING</em> is “Medley Interlisp %i”, then the actual window title will be “Medley Interlisp :: run_45”.</p>
<p>If the value of “-” is given, sets the title to its default value (“Medley Interlisp %i”).</p>
<dd>
<p>Use <em>STRING</em> as title of Medley window.</p>
<p>If <em>STRING</em> includes the character sequence “%i”, then the
value of the id string (see id flag below) prefixed by “::” will be
substituited for the “%i”. Example: if the id is “run_45” and
<em>STRING</em> is “Medley Interlisp %i”, then the actual window title
will be “Medley Interlisp :: run_45”.</p>
<p>If the value of “-” is given, sets the title to its default value
(“Medley Interlisp %i”).</p>
<p>This flag is ignored when when the --vnc flag is set.</p>
</dd>
<dt>-d [<em>:N</em> | -], --display [<em>:N</em> | -]</dt>
<dd><p>Use X display <em>:N</em>.</p>
<p>If value is “-”, reset display to its default value. Default value is the value of $DISPLAY.</p>
<p>On platforms that support both SDL and X Windows, set the value of -d (display) to “SDL” to select using SDL instead of X Windows.</p>
<p>This flag is ignored on the Windows/Cygwin platform and when the --vnc flag is set on Windows System for Linux.</p>
<dd>
<p>Use X display <em>:N</em>.</p>
<p>If value is “-”, reset display to its default value. Default value is
the value of $DISPLAY.</p>
<p>On platforms that support both SDL and X Windows, set the value of -d
(display) to “SDL” to select using SDL instead of X Windows.</p>
<p>This flag is ignored on the Windows/Cygwin platform and when the
--vnc flag is set on Windows System for Linux.</p>
</dd>
<dt>-v [+ | -] , --vnc [+ | -] ** <strong>Applicable only to WSL installations</strong> **</dt>
<dd><p>If value is “+” or no value is given, then use a VNC window running on the Windows side instead of an X window. If value is “-”, then do not use a VNC window, relying instead on a standard X Window.</p>
<p>A VNC window will folllow the Windows desktop scaling setting allowing for much more usable Medley on high resolution displays. On WSL, X windows do not scale well.</p>
<dt>-v [+ | -] , --vnc [+ | -] ** <strong>Applicable only to WSL
installations</strong> **</dt>
<dd>
<p>If value is “+” or no value is given, then use a VNC window running
on the Windows side instead of an X window. If value is “-”, then do not
use a VNC window, relying instead on a standard X Window.</p>
<p>A VNC window will folllow the Windows desktop scaling setting
allowing for much more usable Medley on high resolution displays. On
WSL, X windows do not scale well.</p>
<p>This flag is always set for WSL1 installations.</p>
</dd>
<dt>-i [<em>ID_STRING</em> | - | --], --id [<em>ID_STRING</em> | - | --]</dt>
<dd><p>Use <em>ID_STRING</em> as the id for this run of Medley, unless the given value is “-”, “--”, or “---”.</p>
<p>Only one instance of Medley can be run simultaneously for any given id.</p>
<p><em>ID-STRING</em> can consist of any alphanumeric character plus the underscore (_) character, ending (optionally) in a “+” character. If <em>ID_STRING</em> ends with a “+” (including just a singleton “+”), then Medley will add a number to the id to make it unique among currently running Medley intsances.</p>
<p>If the given value is “-”, then the id will be (re)set to “default” (e.g., if it was previously set in the config file). If it is “--”, then id will be set to the basename of $MEDLEYDIR. If ID_STRING is “---”, then id will be set to the basename of the parent directory of $MEDLEYDIR.</p>
<dt>-i [<em>ID_STRING</em> | - | --], --id [<em>ID_STRING</em> | - |
--]</dt>
<dd>
<p>Use <em>ID_STRING</em> as the id for this run of Medley, unless the
given value is “-”, “--”, or “---”.</p>
<p>Only one instance of Medley can be run simultaneously for any given
id.</p>
<p><em>ID-STRING</em> can consist of any alphanumeric character plus the
underscore (_) character, ending (optionally) in a “+” character. If
<em>ID_STRING</em> ends with a “+” (including just a singleton “+”),
then Medley will add a number to the id to make it unique among
currently running Medley intsances.</p>
<p>If the given value is “-”, then the id will be (re)set to “default”
(e.g., if it was previously set in the config file). If it is “--”, then
id will be set to the basename of $MEDLEYDIR. If ID_STRING is “---”,
then id will be set to the basename of the parent directory of
$MEDLEYDIR.</p>
<p>Default id is “default”.</p>
</dd>
<dt>-m [<em>N</em> | -], --mem [<em>N</em> | -]</dt>
<dd><p>Set Medley to run in <em>N</em> MB of virtual memory. Defaults to 256MB.</p>
<dd>
<p>Set Medley to run in <em>N</em> MB of virtual memory. Defaults to
256MB.</p>
</dd>
</dl>
<p>If a value of “-” is given, resets to default value.</p>
<dl>
<dt>-p [<em>FILE</em> | -], --vmem [<em>FILE</em> | -]</dt>
<dd><p>Use <em>FILE</em> as the Medley virtual memory (vmem) store. <em>FILE</em> must be writeable by the current user.</p>
<p>Care must be taken not to use the same vmem FILE for two instances of Medley running simultaneously. The --id flag will not protect against vmem collisions when the --vmem flag is used.</p>
<p>If the value “-” is given, then resets the vmem file to the default.</p>
<p>Default is to store the vmem in LOGINDIR/vmem/lisp_III.virtualmem, where III is the id of this Medley run (see --id flag above). See --logindir below for setting of LOGINDIR.</p>
<dd>
<p>Use <em>FILE</em> as the Medley virtual memory (vmem) store.
<em>FILE</em> must be writeable by the current user.</p>
<p>Care must be taken not to use the same vmem FILE for two instances of
Medley running simultaneously. The --id flag will not protect against
vmem collisions when the --vmem flag is used.</p>
<p>If the value “-” is given, then resets the vmem file to the
default.</p>
<p>Default is to store the vmem in LOGINDIR/vmem/lisp_III.virtualmem,
where III is the id of this Medley run (see --id flag above). See
--logindir below for setting of LOGINDIR.</p>
</dd>
<dt>-r [<em>FILE</em> | -], --greet [<em>FILE</em> | -]</dt>
<dd><p>Use <em>FILE</em> as the Medley greetfile.</p>
<p>If the given value is “-”, Medley will start up without using a greetfile.</p>
<p>The default Medley greetfile is $MEDLEYDIR/greetfiles/MEDLEYDIR-INIT, except when the --apps flag is used in which case it is $MEDLEYDIR/greetfiles/APPS-INIT.</p>
<p>On Windows/Cygwin installations, <em>FILE</em> is specified in the Medley file system, not the host Windows file system.</p>
<dd>
<p>Use <em>FILE</em> as the Medley greetfile.</p>
<p>If the given value is “-”, Medley will start up without using a
greetfile.</p>
<p>The default Medley greetfile is $MEDLEYDIR/greetfiles/MEDLEYDIR-INIT,
except when the --apps flag is used in which case it is
$MEDLEYDIR/greetfiles/APPS-INIT.</p>
<p>On Windows/Cygwin installations, <em>FILE</em> is specified in the
Medley file system, not the host Windows file system.</p>
</dd>
<dt>-cm [<em>FILE</em> | -], --rem.cm [<em>FILE</em> | -]</dt>
<dd>
<p>Use <em>FILE</em> as the REM.CM file that Medley reads and executes
at startup - after any greet files. Usually used only for loadups and
other maintenance operations .</p>
<p>If the given value is “-”, Medley will start up without using REM.CM
file.</p>
<p>There is no default Medley REM.CM file.</p>
<p>On Windows/Cygwin installations, <em>FILE</em> is specified in the
Medley file system, not the host Windows file system.</p>
</dd>
<dt>-x [<em>DIR</em> | - | ], --logindir [<em>DIR</em> | - | ]</dt>
<dd><p>Use <em>DIR</em> as LOGINDIR in Medley. <em>DIR</em> must be writeable by the current user.</p>
<p>LOGINDIR is used by Medley as the working directory on start-up and where it loads any “personal” initialization file from.</p>
<p>If the given value is “-”, then reset LOGINDIR to its default value. If the given value is “–”, uses $MEDLEYDIR/logindir as LOGINDIR.</p>
<dd>
<p>Use <em>DIR</em> as LOGINDIR in Medley. <em>DIR</em> must be
writeable by the current user.</p>
<p>LOGINDIR is used by Medley as the working directory on start-up and
where it loads any “personal” initialization file from.</p>
<p>If the given value is “-”, then reset LOGINDIR to its default value.
If the given value is “–”, uses $MEDLEYDIR/logindir as LOGINDIR.</p>
<p>LOGINDIR defaults to $HOME/il.</p>
<p>On Windows/Cygwin installations, <em>FILE</em> is specified in the Medley file system, not the host Windows file system.</p>
<p>On Windows/Cygwin installations, <em>FILE</em> is specified in the
Medley file system, not the host Windows file system.</p>
</dd>
<dt>-nh <em>Host:Port:Mac:Debug</em>, --nethub <em>Host:Port:Mac:Debug</em></dt>
<dd><p>Set the parameters for using Nethub XNS networking. <em>Host</em> is the full domain name of the nethub host. <em>Port</em> is the port on <em>Host</em> that nethub is using. <em>Mac</em> is the Mac address that this instance of Medley should use when contacting the nethub host. <em>Debug</em> is the level of nethub debug information that should be printed on stdout (value is 0, 1, or 2). A <em>Host</em> value is required and serves to turn nethub functionality on. <em>Port</em>, <em>Mac</em> and <em>Debug</em> parameters are optional and will default if left off.</p>
<p>If any of the parameters have a value of “-”, any previous setting (e.g., in a config file) for the parameter will be reset to the default value - which in the case of <em>Host</em> is the null string, turning nethub functionality off.</p>
<dt>-nh <em>Host:Port:Mac:Debug</em>, --nethub
<em>Host:Port:Mac:Debug</em></dt>
<dd>
<p>Set the parameters for using Nethub XNS networking. <em>Host</em> is
the full domain name of the nethub host. <em>Port</em> is the port on
<em>Host</em> that nethub is using. <em>Mac</em> is the Mac address that
this instance of Medley should use when contacting the nethub host.
<em>Debug</em> is the level of nethub debug information that should be
printed on stdout (value is 0, 1, or 2). A <em>Host</em> value is
required and serves to turn nethub functionality on. <em>Port</em>,
<em>Mac</em> and <em>Debug</em> parameters are optional and will default
if left off.</p>
<p>If any of the parameters have a value of “-”, any previous setting
(e.g., in a config file) for the parameter will be reset to the default
value - which in the case of <em>Host</em> is the null string, turning
nethub functionality off.</p>
</dd>
<dt>-nf, -NF, nofork</dt>
<dd><p>No fork. Relevant only to the Medley loadup workflow.</p>
<dd>
<p>No fork. Relevant only to the Medley loadup workflow.</p>
</dd>
<dt>-prog <em>EXE</em>, maikoprog <em>EXE</em></dt>
<dd><p>Use <em>EXE</em> as the basename of the Maiko executable. Relevant only to the Medley loadup workflow.</p>
<dd>
<p>Use <em>EXE</em> as the basename of the Maiko executable. Relevant
only to the Medley loadup workflow.</p>
</dd>
<dt>maikodir <em>DIR</em></dt>
<dd><p>Use <em>DIR</em> as the directory containing the Maiko emulator. For testing purposes only.</p>
<dd>
<p>Use <em>DIR</em> as the directory containing the Maiko emulator. For
testing purposes only.</p>
</dd>
<dt>-cc [<em>FILE</em> | -], --repeat [<em>FILE</em> | -]</dt>
<dd>
<p>Run Medley once. And then as long as <em>FILE</em> exists and is
greater then zero length, repeatedly run Medley using <em>FILE</em> as
the REM.CM file that Medley reads and executes at startup. Each run of
Medley can change the contents of <em>FILE</em> to effect the subsequent
run of Medley. To end the cycle, Medley needs to delete <em>FILE</em>.
WIthin Medley, <em>FILE</em> can be found as the value of the
environment variable LDEREPEATCM.</p>
<p>On Windows/Cygwin installations, <em>FILE</em> is specified in the
Medley file system, not the host Windows file system.</p>
</dd>
<dt>-am, automation</dt>
<dd>
<p>Useful only when using vnc (and always on WSL1). When calling medley
as part of an automation script, often Medley will run for a very short
time (&lt; a couple of seconds). This can cause issues with medley code
that detects Xvnc server failures. Setting this flag notifies Medley
that very short Medley sessions are possible and the Xvnc error
detection needs to be adjusted accordingly.</p>
</dd>
<dt>-tg [<em>TAG</em> | -], --tag [<em>TAG</em> | -]</dt>
<dd>
<p>By default, sysout files are loaded from the MEDLEYDIR/loadups
directory. If “--tag <em>TAG</em>” is specified, then by default sysout
files are loaded from the MEDLEYDIR/loadups/tagged/TAG directory. The
sysouts in these directories are created using a loadups script with the
--tag flag set. See the loadup man page. If <em>TAG</em> is “-”, then
the name of the active git branch for MEDLEYDIR (if any) is used as
<em>TAG</em>.</p>
</dd>
</dl>
<h2>Other Options</h2>
<dl>
<dt><em>SYSOUT_FILE</em></dt>
<dd><p>The pathname of the file to use as a sysout for Medley to start from. If SYSOUT_FILE is not provided and none of the flags (--apps, --full, --lisp) is used, then Medley will start from the saved virtual memory file from the previous session with the same ID_STRING as this run. If no such virtual memory file exists, then Medley will start from the standard full.sysout (equivalent to specifying the --full flag). On Windows (Docker) installations, <em>SYSOUT_FILE</em> is specified in the Medley file system, not the host Windows file system.</p>
<dd>
<p>The pathname of the file to use as a sysout for Medley to start from.
If SYSOUT_FILE is not provided and none of the flags (--apps, --full,
--lisp) is used, then Medley will start from the saved virtual memory
file from the previous session with the same ID_STRING as this run. If
no such virtual memory file exists, then Medley will start from the
standard full.sysout (equivalent to specifying the --full flag). On
Windows (Docker) installations, <em>SYSOUT_FILE</em> is specified in the
Medley file system, not the host Windows file system.</p>
</dd>
<dt><em>PASS_ON_ARGS</em></dt>
<dd><p>All arguments after the “--” flag, are passed unaltered to the Maiko emulator.</p>
<dd>
<p>All arguments after the “--” flag, are passed unaltered to the Maiko
emulator.</p>
</dd>
</dl>
<h1>CONFIG FILE</h1>
<p>A config file can be used to “pre-specify” any of the above command line arguments. The config file consists of command line arguments (flags or flag-value pairs), <em>one per line</em>. These arguments are read from the config file and prepended to the arguments actually given on the command line. Since later arguments override earlier arguments, any argument actually given on the command line will override a conflicting argument given in the config file.</p>
<p>Unless specified using the -c (config) argument, the default config file will be $MEDLEYDIR/.medley_config, if it exists, and $HOME/.medley_config, otherwise.</p>
<p>Specifying, “-c -” or “config -” on the command line will suppress the use of config files for the current run of Medley.</p>
<p><em>Note:</em> care must be taken when using -g (geometry) and/or -s (screensize) arguments in config files. If only one of these is specified, then the other is conputed. But if both are specified, then the specified dimensions are used as given. Unexpected results can arise if one is specified in the config file but the other is specified on the command line. In this case, the two specified dimensions will be used as given. It will not be the case, as might be expected, that the dimension given in the config file will be overridden by a dimension computed from the dimension given on the command line.</p>
<p>A config file can be used to “pre-specify” any of the above command
line arguments. The config file consists of command line arguments
(flags or flag-value pairs), <em>one per line</em>. These arguments are
read from the config file and prepended to the arguments actually given
on the command line. Since later arguments override earlier arguments,
any argument actually given on the command line will override a
conflicting argument given in the config file.</p>
<p>Unless specified using the -c (config) argument, the default config
file will be $MEDLEYDIR/.medley_config, if it exists, and
$HOME/.medley_config, otherwise.</p>
<p>Specifying, “-c -” or “config -” on the command line will suppress
the use of config files for the current run of Medley.</p>
<p><em>Note:</em> care must be taken when using -g (geometry) and/or -s
(screensize) arguments in config files. If only one of these is
specified, then the other is conputed. But if both are specified, then
the specified dimensions are used as given. Unexpected results can arise
if one is specified in the config file but the other is specified on the
command line. In this case, the two specified dimensions will be used as
given. It will not be the case, as might be expected, that the dimension
given in the config file will be overridden by a dimension computed from
the dimension given on the command line.</p>
<h1>OTHER FILES</h1>
<dl>
<dt>$HOME/il</dt>
<dd><p>Default Medley LOGINDIR</p>
<dd>
<p>Default Medley LOGINDIR</p>
</dd>
<dt>$HOME/il/vmem/lisp.virtualmem</dt>
<dd><p>Default virtual memory file</p>
<dd>
<p>Default virtual memory file</p>
</dd>
<dt>$HOME/il/INIT(.LCOM)</dt>
<dd><p>Default personal init file</p>
<dd>
<p>Default personal init file</p>
</dd>
<dt>$MEDLEYDIR/greetfiles/MEDLEYDIR-INIT(.LCOM)</dt>
<dd><p>Default Medley greetfile</p>
<dd>
<p>Default Medley greetfile</p>
</dd>
</dl>
<h1>BUGS</h1>
<p>See GitHub Issues: &lt;https://github.com/Interlisp/medley/issues&gt;</p>
<p>See GitHub Issues:
&lt;https://github.com/Interlisp/medley/issues&gt;</p>
<h1>COPYRIGHT</h1>
<p>Copyright(c) 2023-2024 by Interlisp.org</p>

View File

@@ -1,5 +1,19 @@
.\" Automatically generated by Pandoc 2.9.2.1
.\" Automatically generated by Pandoc 3.1.3
.\"
.\" Define V font for inline verbatim, using C font in formats
.\" that render this, and otherwise B font.
.ie "\f[CB]x\f[]"x" \{\
. ftr V B
. ftr VI BI
. ftr VB B
. ftr VBI BI
.\}
.el \{\
. ftr V CR
. ftr VI CI
. ftr VB CB
. ftr VBI CBI
.\}
.ad l
.TH "MEDLEY" "1" "" "" "Start Medley Interlisp"
.nh
@@ -8,8 +22,8 @@
\f[B]medley\f[R] \[em] starts up Medley Interlisp
.SH SYNOPSIS
.PP
\f[B]medley\f[R] [ flags \&... ] [ \f[I]SYSOUT_FILE\f[R] ] [ --
\f[I]PASS_ON_ARGS\f[R] ]
\f[B]medley\f[R] [ flags \&...
] [ \f[I]SYSOUT_FILE\f[R] ] [ -- \f[I]PASS_ON_ARGS\f[R] ]
.SH DESCRIPTION
.PP
Starts Medley Interlisp in a window.
@@ -31,8 +45,10 @@ hence MEDLEYDIR is computed on each invocation of medley.
-h, --help
Prints out a brief summary of the flags and arguments to medley.
.TP
-z, --man
Show the man page for medley
-z [+], --man [+]
Show the man page for medley.
If the \f[B]+\f[R] parameter is specified, then no pager is used when
displaying the man page.
.TP
-c [\f[I]FILE\f[R] | -], --config [\f[I]FILE\f[R] | -]
Use \f[I]FILE\f[R] as the config file for this run of Medley.
@@ -137,7 +153,7 @@ virtual display.
-g [\f[I]WxH\f[R] | -], --geometry [\f[I]WxH\f[R] | -]
Sets the size of the X Window (or VNC window) that Medley runs in to be
Width x Height.
(Full X Windows geomtery specification with +X+Y is not currently
(Full X Windows geometry specification with +X+Y is not currently
supported).
.RS
.PP
@@ -291,6 +307,21 @@ On Windows/Cygwin installations, \f[I]FILE\f[R] is specified in the
Medley file system, not the host Windows file system.
.RE
.TP
-cm [\f[I]FILE\f[R] | -], --rem.cm [\f[I]FILE\f[R] | -]
Use \f[I]FILE\f[R] as the REM.CM file that Medley reads and executes at
startup - after any greet files.
Usually used only for loadups and other maintenance operations .
.RS
.PP
If the given value is \[lq]-\[rq], Medley will start up without using
REM.CM file.
.PP
There is no default Medley REM.CM file.
.PP
On Windows/Cygwin installations, \f[I]FILE\f[R] is specified in the
Medley file system, not the host Windows file system.
.RE
.TP
-x [\f[I]DIR\f[R] | - | \[en]], --logindir [\f[I]DIR\f[R] | - | \[en]]
Use \f[I]DIR\f[R] as LOGINDIR in Medley.
\f[I]DIR\f[R] must be writeable by the current user.
@@ -341,6 +372,42 @@ Relevant only to the Medley loadup workflow.
\[en]maikodir \f[I]DIR\f[R]
Use \f[I]DIR\f[R] as the directory containing the Maiko emulator.
For testing purposes only.
.TP
-cc [\f[I]FILE\f[R] | -], --repeat [\f[I]FILE\f[R] | -]
Run Medley once.
And then as long as \f[I]FILE\f[R] exists and is greater then zero
length, repeatedly run Medley using \f[I]FILE\f[R] as the REM.CM file
that Medley reads and executes at startup.
Each run of Medley can change the contents of \f[I]FILE\f[R] to effect
the subsequent run of Medley.
To end the cycle, Medley needs to delete \f[I]FILE\f[R].
WIthin Medley, \f[I]FILE\f[R] can be found as the value of the
environment variable LDEREPEATCM.
.RS
.PP
On Windows/Cygwin installations, \f[I]FILE\f[R] is specified in the
Medley file system, not the host Windows file system.
.RE
.TP
-am, \[en]automation
Useful only when using \[en]vnc (and always on WSL1).
When calling medley as part of an automation script, often Medley will
run for a very short time (< a couple of seconds).
This can cause issues with medley code that detects Xvnc server
failures.
Setting this flag notifies Medley that very short Medley sessions are
possible and the Xvnc error detection needs to be adjusted accordingly.
.TP
-tg [\f[I]TAG\f[R] | -], --tag [\f[I]TAG\f[R] | -]
By default, sysout files are loaded from the MEDLEYDIR/loadups
directory.
If \[lq]--tag \f[I]TAG\f[R]\[rq] is specified, then by default sysout
files are loaded from the MEDLEYDIR/loadups/tagged/TAG directory.
The sysouts in these directories are created using a loadups script with
the --tag flag set.
See the loadup man page.
If \f[I]TAG\f[R] is \[lq]-\[rq], then the name of the active git branch
for MEDLEYDIR (if any) is used as \f[I]TAG\f[R].
.SS Other Options
.PP
\

Binary file not shown.

View File

@@ -1,4 +1,4 @@
% MEDLEY(1) | Start Medley Interlisp
% MEDLEY(1) | Start Medley Interlisp
---
adjusting: l
@@ -38,8 +38,9 @@ Flags
-h, \-\-help
: Prints out a brief summary of the flags and arguments to medley.
-z, \-\-man
: Show the man page for medley
-z [+], \-\-man [+]
: Show the man page for medley. If the **+** parameter is specified, then no pager is used when
displaying the man page.
-c [*FILE* | -], \-\-config [*FILE* | -]
: Use *FILE* as the config file for this run of Medley. See information on *CONFIG FILE* below.
@@ -106,7 +107,7 @@ than the window, there will be no way to pan to the non-visible parts of the vir
-g [*WxH* | -], \-\-geometry [*WxH* | -]
: Sets the size of the X Window (or VNC window) that Medley runs in to be Width x Height. (Full X Windows
geomtery specification with +X+Y is not currently supported).
geometry specification with +X+Y is not currently supported).
If a value of "-" is given, geometry is set to the default value.
@@ -210,6 +211,16 @@ in which case it is $MEDLEYDIR/greetfiles/APPS-INIT.
On Windows/Cygwin installations, *FILE* is
specified in the Medley file system, not the host Windows file system.
-cm \[*FILE* | -], \-\-rem.cm \[*FILE* | -]
: Use *FILE* as the REM&#46;CM file that Medley reads and executes at startup - after any greet files. Usually used only for loadups and other maintenance operations .
If the given value is "-", Medley will start up without using REM&#46;CM file.
There is no default Medley REM&#46;CM file.
On Windows/Cygwin installations, *FILE* is
specified in the Medley file system, not the host Windows file system.
-x \[*DIR* | - | --], \-\-logindir \[*DIR* | - | --]
: Use *DIR* as LOGINDIR in Medley. *DIR* must be writeable by the current user.
@@ -242,6 +253,25 @@ for the parameter will be reset to the default value - which in the case of *Hos
--maikodir *DIR*
: Use *DIR* as the directory containing the Maiko emulator. For testing purposes only.
-cc \[*FILE* | -], \-\-repeat \[*FILE* | -]
: Run Medley once. And then as long as *FILE* exists and is greater then zero length, repeatedly run Medley using *FILE* as the REM&#46;CM file that Medley reads and executes at startup. Each run of Medley can change the contents of *FILE* to effect the subsequent run of Medley. To end the cycle, Medley needs to delete *FILE*. WIthin Medley, *FILE* can be found as the value of the environment variable LDEREPEATCM.
On Windows/Cygwin installations, *FILE* is
specified in the Medley file system, not the host Windows file system.
-am, --automation
: Useful only when using --vnc (and always on WSL1). When calling medley as part of an automation script, often Medley
will run for a very short time (< a couple of seconds). This can cause issues with medley code that detects Xvnc server failures.
Setting this flag notifies Medley that very short Medley sessions are possible and the Xvnc error detection needs to be adjusted accordingly.
-tg [*TAG* | -], \-\-tag [*TAG* | -]
: By default, sysout files are loaded from the MEDLEYDIR/loadups directory.
If "\-\-tag *TAG*" is specified, then by default sysout files are loaded from the
MEDLEYDIR/loadups/tagged/TAG directory. The sysouts in these directories are created using
a loadups script with the \-\-tag flag set. See the loadup man page.
If *TAG* is "-", then the name of the active git branch for MEDLEYDIR (if any) is used as
*TAG*.
Other Options
-------------

View File

@@ -1,12 +1,12 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
(FILECREATED " 7-Apr-2024 09:25:49" {WMEDLEY}<doctools>IMINDEX.;6 37064
(FILECREATED "24-Mar-2025 10:31:37" {WMEDLEY}<doctools>IMINDEX.;10 37350
:EDIT-BY rmk
:CHANGES-TO (FNS IM.INDEX.PUTFN IM.INDEX.GETFN)
:CHANGES-TO (FNS IM.INDEX.EDIT)
:PREVIOUS-DATE " 4-Apr-2024 23:17:47" {WMEDLEY}<doctools>IMINDEX.;5)
:PREVIOUS-DATE "17-Mar-2025 12:07:55" {WMEDLEY}<doctools>IMINDEX.;9)
(PRETTYCOMPRINT IMINDEXCOMS)
@@ -163,11 +163,13 @@
(TERPRI PTRFILE])
(IM.INDEX.EDIT
[LAMBDA (OBJ TEXTSTREAM) (* ; "Edited 18-Jul-88 14:10 by burns")
[LAMBDA (OBJ TEXTSTREAM) (* ; "Edited 24-Mar-2025 10:30 by rmk")
(* ; "Edited 17-Mar-2025 12:06 by rmk")
(* ; "Edited 29-Jun-2024 00:14 by rmk")
(* ; "Edited 18-Jul-88 14:10 by burns")
(PROG* ((W (FREEMENU IM.INDEX.OBJ.FREEMENU.SPECS))
(REGION (WINDOWREGION W))
[TEDIT.WINDOW (CAR (fetch \WINDOW of (TEXTOBJ TEXTSTREAM]
(TEDIT.WINDOW (TEDITWINDOWP TEXTSTREAM))
(TEDIT.REGION (AND TEDIT.WINDOW (WINDOWREGION TEDIT.WINDOW)))
OBJ.DATA OBJ.DATA.PROPLIST)
(WINDOWPROP W 'IM.INDEX.OBJ OBJ)
@@ -640,13 +642,13 @@
(IM.INDEX.INIT)
(DECLARE%: DONTCOPY
(FILEMAP (NIL (1692 15373 (IM.INDEX.CLOSEF 1702 . 2393) (IM.INDEX.COPYFN 2395 . 2580) (
IM.INDEX.CREATEOBJ 2582 . 3928) (IM.INDEX.DISPLAY.STRING 3930 . 4351) (IM.INDEX.DISPLAYFN 4353 . 8450)
(IM.INDEX.EDIT 8452 . 11920) (IM.INDEX.LIST.FROM.STRING 11922 . 12956) (IM.INDEX.SIZEFN 12958 . 13718
) (IM.INDEX.STRING.FROM.LIST 13720 . 13965) (IM.INDEX.PUTFN 13967 . 14313) (IM.INDEX.GETFN 14315 .
14612) (IM.INDEX.BUTTONEVENTFN 14614 . 15371)) (15374 17444 (IM.INDEX.INIT 15384 . 17442)) (17445
29361 (IM.INDEX.MENU 17455 . 19143) (IM.INDEX.MENU.WHENSELECTEDFN 19145 . 25900) (
IM.INDEX.OBJ.FREEMENU.SELECTEDFN 25902 . 29359)) (31877 37020 (IM.CHAP.COPYFN 31887 . 32067) (
IM.CHAP.CREATEOBJ 32069 . 33495) (IM.CHAP.DISPLAYFN 33497 . 35457) (IM.CHAP.SIZEFN 35459 . 36461) (
IM.CHAP.PUTFN 36463 . 36647) (IM.CHAP.GETFN 36649 . 36810) (IM.CHAP.BUTTONEVENTFN 36812 . 37018)))))
(FILEMAP (NIL (1677 15659 (IM.INDEX.CLOSEF 1687 . 2378) (IM.INDEX.COPYFN 2380 . 2565) (
IM.INDEX.CREATEOBJ 2567 . 3913) (IM.INDEX.DISPLAY.STRING 3915 . 4336) (IM.INDEX.DISPLAYFN 4338 . 8435)
(IM.INDEX.EDIT 8437 . 12206) (IM.INDEX.LIST.FROM.STRING 12208 . 13242) (IM.INDEX.SIZEFN 13244 . 14004
) (IM.INDEX.STRING.FROM.LIST 14006 . 14251) (IM.INDEX.PUTFN 14253 . 14599) (IM.INDEX.GETFN 14601 .
14898) (IM.INDEX.BUTTONEVENTFN 14900 . 15657)) (15660 17730 (IM.INDEX.INIT 15670 . 17728)) (17731
29647 (IM.INDEX.MENU 17741 . 19429) (IM.INDEX.MENU.WHENSELECTEDFN 19431 . 26186) (
IM.INDEX.OBJ.FREEMENU.SELECTEDFN 26188 . 29645)) (32163 37306 (IM.CHAP.COPYFN 32173 . 32353) (
IM.CHAP.CREATEOBJ 32355 . 33781) (IM.CHAP.DISPLAYFN 33783 . 35743) (IM.CHAP.SIZEFN 35745 . 36747) (
IM.CHAP.PUTFN 36749 . 36933) (IM.CHAP.GETFN 36935 . 37096) (IM.CHAP.BUTTONEVENTFN 37098 . 37304)))))
STOP

Binary file not shown.

View File

@@ -1 +0,0 @@
(DEFINE-FILE-INFO READTABLE "XCL" PACKAGE "INTERLISP")

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More