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

Compare commits

...

374 Commits

Author SHA1 Message Date
Frank Halasz
d91176bc90 Minor fixes to loadup-lfg and related scripts as result of debugging. 2025-01-06 23:59:20 -08:00
Frank Halasz
a55246bc59 Create loadup-lfg.sh script and helper script loadup-app-setup.sh. The former is intended to be installed in the LFG directory (in the scripts subfolder). The later is to remain in the medley scripts direcory. 2025-01-06 22:49:21 -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
Frank Halasz
4b7a6daacd Fix Issue #1868: Cygwin installer now handles install directory with spaces in its name. (#1880)
* Fix cygwin install script (medley.iss) to handle install directory with spaces in the directoryname.  Also fix the uninstall.exe so that it actually deletes all of the installed directory instead of just portions of it.  Finally update architecture specifications to match the latest InnoSetup conventions.

* Add powershell script to prep installers/cygwin directory for local testing of cygwin installer.  Does what is done online by github action to get the files to include in the installer.
2024-11-29 10:39:09 -08:00
Herb Jellinek
c4c0b65616 Update github action workflows to account for deprecation of macos-12 runner and move of ubuntu-latest runner to ubuntu-24.04 (#1878)
Update github action workflows to account for deprecation of macos-12
runner and move of ubuntu-latest to ubuntu-24.04.

Removed use of ubuntu-latest and macos-latest in favor of explicit
versions (macos-14, ubuntu-24.04) in order to prevent issues when
*-latest changes without our notice.
2024-11-11 10:20:34 -08:00
Frank Halasz
0dfac33a25 In buildLoadup.yml, set runs-on:macos-latest to runs-on:macos-14 so as to avoid issues when -latest changes without our noticing. 2024-11-10 21:27:50 -08:00
Frank Halasz
e5d4e0d299 Change runs-on: ubuntu-latest to runs-on: ubuntu-24.04 for all github workflows. This is to test all is okay as ubuntu-latest moves from ubuntu-22 to ubuntu-24. 2024-11-10 18:00:44 -08:00
Frank Halasz
a365e42a92 In buildLoadup.yml workflow, changed to runs-on for macos from macos-12 to macos-latest. Needed because macos-12 runners are being deprecated. 2024-11-10 17:40:51 -08:00
Larry Masinter
024e83d17e fix #1861 typo in Interpress \IPC macro for constants (#1865)
fix typo in INTERPRESS \IPC macro
2024-10-27 17:51:01 -07:00
Herb Jellinek
5fef8528ab Update license to mention Interlisp.org but portions copyright Xerox & Venue & others (#1543) 2024-10-22 11:22:53 -07:00
Larry Masinter
0b3bc9ac48 fix misspelled contributers 2024-10-22 11:15:18 -07:00
Larry Masinter
93ee6a1fbf Update license to mention Interlisp.org but portions copyright Xerox & Venue & others 2024-10-21 18:40:41 -07:00
Matt Heffron
fe04869cb3 Add git commit ID to beginning of loadups .dribble files. (#1778)
* Add git commit ID to beginning of loadups .dribble files.
The commit ID is put into the .dribble file in the .sh scripts. (using echo ... > name.dribble)
The changes to MEDLEY-UTILS, LOADUP-FULL, and LOADUP-LISP are to enable the passing of APPENDFLG to (DRIBBLE ... APPENDFLG).

* I hadn't saved file before previous commit.

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

* Initialize SYSOUTCOMMITS so PUTASSOC has somewhere to put value(s)
2024-10-07 10:22:48 -07:00
Frank Halasz
178807afff Fix Issue#1841: using medley --vnc option on RaspberryPi OS (#1842)
In scripts/medley/medley_vnc.sh, update references to Xvnc and vncviewer to their tigervnc-specific versions Xtigervnc and xtigervncviewer.  Fixes Issue#1841.
2024-10-07 10:19:09 -07:00
Matt Heffron
e1989850f3 Added new module READ-BDF. (#1811)
* Added new module READ-BDF.
This will parse a bdf font file into a BDF::BDF-FONT structure.
It does NOT create (convert into) an IL:FONTDESCRIPTOR instance.
Minimal error checking!

* Remove work-around for bug in CL:READ-FROM-STRING that is fixed in PR #1833
2024-09-26 14:08:36 -07:00
Matt Heffron
fface7d9de CL READ-FROM-STRING returns byte position instead of character position. (#1833)
* Fix for issue 1812: CL:READ-FROM-STRING returns byte position instead of character position.

* Previous edit hadn't noticed corresponding issue using the value of the START argument passed to SETFILEPTR
2024-09-26 13:54:15 -07:00
Matt Heffron
b41ae0cbbe Extend DEFPACKAGE to accept uninterned symbols as the names to export… (#1822)
…. They are treated the same as strings: the `symbol-name` is first
interned in the package before being exported.
This is defined as the behavior in CLtL2, and using uninterned symbols
appears to be common practice in other Common Lisp code.
2024-09-23 10:28:16 -07:00
Matt Heffron
548d3f1567 Import XCL:DEFPACKAGE into LISP package, and then export it. (#1823)
Make DEFPACKAGE accessible from LISP (aka CL:) package.
CLtL2.
See Issue #1684
2024-09-23 10:24:50 -07:00
Matt Heffron
a85d6287ae Merge branch 'master' into mth19--DEFPACKAGE-accept-uninterned-symbols 2024-09-19 11:12:40 -07:00
Matt Heffron
719b4e744e Merge branch 'master' into mth20--extend-import-DEFPACKAGE-into-LISP-package 2024-09-19 11:12:17 -07:00
Matt Heffron
387fecf475 Merge branch 'master' into mth20--extend-import-DEFPACKAGE-into-LISP-package 2024-09-19 11:11:33 -07:00
Frank Halasz
433ffaf9e5 Add linux support for --vnc flag in medley script (#1825)
Previously --vnc flag in medley script worked only on WSL.

With this PR, the --vnc flag works on (non-WSL) linux platforms - any
linux distro that support the TigerVNC server and viewer.

To use this feature you must first install both the TigerVNC server and
TigerVNC client on linux. On Debian-based distros (e.g., Ubuntu and
Mint): ```sudo apt install tigervnc-standalone-server tigervnc-viewer```
2024-09-11 17:44:36 -07:00
Frank Halasz
2cec465f1f Merge branch 'master' into fgh_vnclinux 2024-09-09 14:32:56 -07:00
Frank Halasz
ca03e7f930 First pass - adding linux support to --vnc arg to medley script 2024-09-08 22:08:43 -07:00
Matt Heffron
3526a61be1 Import XCL:DEFPACKAGE into LISP package, and then export it. 2024-09-05 22:40:32 -07:00
Matt Heffron
115ba43100 Extend DEFPACKAGE to accept uninterned symbols as the names to export. They are treated the same as strings: the symbol-name is first interned in the package before being exported. 2024-09-05 21:44:45 -07:00
rmkaplan
d2b87a7327 XTOUCODE doesn't fail for nonexistent mappings (#1816)
assigns a unique otherwise unallocated Unicode code.  Addresses bug reported in #1814
2024-08-31 15:04:56 -07:00
Frank Halasz
f03a2fb4cb In scripts/do_hcfiles.sh, save hcfiles.dribble and hcfiles-fails.txt in loadups/. (#1786)
* Add clean-hcfiles.sh; update do_hcfiles.sh to save hcfiles.dribble to loadups and to extract fails to hcfiles-fails.txt in loadups.

* Fix clean_hcfiles.sh to handle pdf files that are tracked by git.

* Tweak output of clean_hcfiles.sh
2024-07-29 14:40:27 -07:00
Frank Halasz
244300de7b WINDOWOBJ: Install classname in IMAGEFNS (#1788)
IMAGEFNSCREATE had an argument CLASSNAME and the IMAGEFNS datatype had a
field IMAGECLASSNAME, but the CLASSNAME wasn't being installed in the
field
2024-07-22 15:02:26 -07:00
rmkaplan
e9200c73c9 WINDOWOBJ: Install classname in IMAGEFNS 2024-07-17 23:39:33 -07:00
Frank Halasz
1ffcde195a Automate HCFILES workflow (also add "up one level" button to index.html pages) (#1784)
* First pass at workflow for doing HCFILES on each release

* Finish doHCFILES workflow

* Fix delete of gh-page branch in DoHCFILES workflow

* Redo doHCFILES workflow for files.interlisp.org; add indexing to do_hcfiles script

* Fiddling with workflow names so that I can test doHCFILES.yml on a branch

* in doHCFILES workflow fix use of GH_TOKEN

* Fix typo in doHCFILES workflow

* Debugging doHCFILES workflow

* Fix multiple bugs in do_hcfiles script; fixed multiple bugs in doHCFILES workflow

* Debugging move

* in do_hcfiles.sh add back in Tedit file stoHCFILES run

* Clean up do_hcfiles.sh a bit

* Add debugging code to doHCFILES workflow

* In MAKE-INDEX-HTMLS, add code to ensure that the original case of the files/directory names are preserved since (DIRECTORY) seems to return names ia all-caps, always

* Debugging doHCFILES

* Fiddling with debugging code in doHCFILES workflow

* Add MEDLEY-INIT-VARS to cm file in do_hcfiles.sh

* Undo effect of merging fgh_hcfiles-updates into fgh_hcfiles-workflow.  fgh_hcfiles-update will be abadoned

* Add up button to index.html files in MAKE-INDEX-HTMLS

* Update MAKE-INDEX-HTMLS to include an up-on-level button in index.html files.  Move fio files to medley instead of source.  Streamline doHCFILES workflow

* Debugging

* In MAKE-INDEX-HTMLS, make sure that the up-one button does not appear in the top-level index.html

* In doHCFILES workflow, add difference between development(draft) and production; add doHCFILES workflow into buildReleraseInclDocker workflow

* Update MAKE-INDEX-HTMLS with new onclick script to handle directories properly

* Fix typo in buildRelease workflow

* Polishing up do_hcfiles.sh

* Return buildDocker.yml to original state after using it to test doHCFILES.yml
2024-07-15 05:56:53 -07:00
rmkaplan
19015712de Fix hardcopy under XCL exec #1781 (#1782)
* TEDIT-FILE fixes #1781

* TEDIT-FILE fixes #1781
2024-07-11 15:59:22 -07:00
Matt Heffron
7b0c746af2 Add INSPECTMACRO for windows (#1779)
The WINDOW datatype has a bunch of fixed fields for items that are
commonly used, and then it has USERDATA property list for other fields,
some of which are part of the window system and some of which belong to
particular applications.

When you inspect a WINDOW, you see the common fields all nicely laid
out, but you have to click again to bring up the user-data properties in
another window. And if your are inspecting several windows, you have to
keep track of which user properties go with which windows.

This adds an INSPECTMACRO for WINDOW that brings up the USERDATA
properties to the single inspect window, as first-class properties at
the bottom of the fixed-field entries, with a --USERDATA-- separator
2024-07-08 16:24:00 -07:00
Matt Heffron
325bc9b5da Merge branch 'master' into rmk31--INSPECTMACRO-for-windows 2024-07-08 16:23:04 -07:00
Matt Heffron
94548bd7da More consistent HCFILES filenames (#1776) 2024-07-08 16:21:43 -07:00
rmkaplan
d1fcd6cf7e Add INSPECTMACRO for windows
so that USERDATA properties show up in the single Inspect window
2024-07-04 17:00:38 -07:00
Larry Masinter
9e7445927c .nojekyll is used to indicate that no processing or workflows should be run before web publishing 2024-06-30 15:09:40 -07:00
Larry Masinter
31863256c8 The new HCFILES process is simpler if .pdf files aren't ignored 2024-06-30 14:45:46 -07:00
Larry Masinter
a8c82aa9c4 The new HCFILES process is simpler if .pdf files aren't ignored 2024-06-30 14:45:12 -07:00
Larry Masinter
84cd0c73cb More consistent HCFILES filenames 2024-06-30 08:34:22 -07:00
rmkaplan
54bea56b81 Extra argument to COMPAREDIRECTORIES to specify directory names (#1766)
Allow smaller headers for GITFNS browser
2024-06-25 20:36:09 -07:00
rmkaplan
65cfd1dd69 Pass the DW? argument to restore DWIMIFY functionality (#1765)
Got lost somewhere along the way, probably when I was creating the browser
2024-06-25 20:35:22 -07:00
Matt Heffron
7dcc200c91 Fix issue #1749 - type-of NIL doesn't match CLtL2 (#1753)
* Fix issue #1749 - type-of NIL doesn't match CLtL2

* Fix uses of cl:type-of in the LOOP macro to deal with the change to cl:type-of.
2024-06-16 21:36:37 -07:00
rmkaplan
9e0fdd0283 AFTERHARDCOPYFN not needed in IMTEDIT (#1762)
It is put in the first time the indexing image object is displayed, this was left over from earlier cleanup
2024-06-16 21:20:52 -07:00
rmkaplan
ffe99d6bcc FILEWATCH, QIX, SOLITAIRE--rename fields that conflict with REGION and POINT (#1763) 2024-06-16 21:17:48 -07:00
Matt Heffron
3e77f627a0 This fixes GITFNS prc not showing any changed files with certain filename/path patterns. (#1757)
This fixes GITFNS `prc` not showing any changed files if they included
`.git` in the full name.
It now is specific, and excludes only those in the `.git/` top-level
directory.
GITFNS also ignored changed files at the top-level of the repo. This is
fixed also.
This can be tested with PR #1756
2024-06-13 19:22:32 -07:00
Matt Heffron
8d648f46b1 The same issue happens with .git in a branch name.
Hoisted on its own petard!
2024-06-12 23:06:21 -07:00
Matt Heffron
e7dccf76a9 This fixes GITFNS prc not showing any changed files if they included .git in the full name.
GITFNS also ignored changed files at the top-level of the repo. This is fixed also.
2024-06-10 18:48:53 -07:00
rmkaplan
ff25001814 Change LAFITEDECLS to LAFITE-DECLS in UNDIGESTIFY (#1746) 2024-06-10 14:55:48 -07:00
Frank Halasz
9793e48c4e Update buildReleaseIncDocker workflow to automatically kick off a buildAndDeployMedleyDocker workflow in the online repo (#1752)
* to buildReleaseInclDocker workflow, add call to build and deploy the Online-Medley Docker image to oio

* add version tag to call to buildAndDeploy... workflow in online

* Oh boy, get the name of the build and deploy workflow in online right this time!

* Added explicit secrets to call to medley online build deploy workflow

* fix test code in buildReleaseInclDocker

* debuggin gbuildReleaseInclDocker

* Debugging adding of online deploy to buildReleaseInclDocker

* Change approach to running buildDeployMedleyDocker online workflow to use gh workflow run rather than use a cross-repo workflow call

* GH_TOKEN or GITHUB_TOKEN?

* Create ONLINE_TOKEN to access online repo from medley repo workflows via gh

* From buildReleaseInclDocker workflow, remove debugging stuff; change kickoff of oio build and deploy so that it will not kickoff workflow if draft is true
2024-06-10 14:52:39 -07:00
Matt Heffron
2f6499317b In medley.sh, improve error messages when MAIKODIR and/or the requested maiko executable (e.g., ldeinit) cannot be found (#1734)
In medley.sh, improve error messages when MAIKODIR and/or the requested
maiko executable (e.g., ldeinit) cannot be found.

Helps clarify error messaging in loadup-mid-from-init script that
utilizes ldeinit.
2024-06-03 15:35:41 -07:00
Frank Halasz
6398c2b8d4 Merge branch 'master' into fgh_fix-maikodir_msg 2024-06-03 15:26:07 -07:00
Frank Halasz
fcd40bc409 Fix PRINT-ALL-DOCUMENTATION locating documentation string (#1736)
In PRINT-ALL-DOCUMENTATION only one of two places was checked for the
documentation string.
(Also, MAKEFILE updated the LAMA variable in the CMLEXECCOMS.)
Issue #1735
2024-06-03 15:25:04 -07:00
Frank Halasz
c8133ebb96 Fix FILEBROWSER error when a borrowed function needs the prompt window. (#1743)
FB.PROMPTW.FORMAT now uses the global PROMPTWINDOW if called under a
borrowed function (i.e., not a FILEBROWSER window). Tweaked the format
string provided by FB.FASTSEE.ONEFILE to go to newline conditionally.
Issue #1742
2024-06-03 15:24:23 -07:00
Frank Halasz
9962a9ca0a Merge branch 'master' into fgh_fix-maikodir_msg 2024-06-03 14:58:31 -07:00
Matt Heffron
014c34959f Merge branch 'master' into mth13--qmark_command_omits_documentation_if_given_name_argument 2024-06-01 11:57:16 -07:00
Matt Heffron
4c18373229 Fix FILEBROWSER error when a borrowed function needs the prompt window.
FB.PROMPTW.FORMAT now uses the global PROMPTWINDOW if called under a borrowed function (i.e., not a FILEBROWSER window).
Tweaked the format string provided by FB.FASTSEE.ONEFILE to go to newline conditionally.
2024-05-29 15:46:15 -07:00
Herb Jellinek
1148cd5945 Further updates to loadup scripts to make its easier to use Lisp-side copy functions to copy medley directories (#1718)
Update all loadup scripts so that 3 things are true:

1. all sub-scripts are called via `/bin/sh <subscript>` so that exec bit
need not be set on any loadup script

2. medley is called via `scripts/medley/medley.command` rather than just
`medley` so that the top-level medley symbolic link is not necessary for
loadups

3. the loadup scripts do not have to be started while cwd is MEDLEYDIR;
instead MEDLEYDIR is automatically computed based on where the loadup
script is executed from (as the medley script does).
2024-05-27 15:17:29 -07:00
rmkaplan
f44b96e870 Rmk22 gitfns ignores other owners (#1713)
* GITFNS: prc ignores PRs from other owners

The menu just includes Interlisp PR's.  Fixing it to deal with other owners will take more work.

* JSON:  JSON-GET takes a list of attributes

A convenience for accessing objects embedded in objects

* GITFNS:  a minor cleanup

* Remove JSON-GET left over

* Put the git commands to install remotes in comments

So we don't have to rediscover them when we decide to fix prc to deal with this issue.
2024-05-27 15:16:58 -07:00
Herb Jellinek
e9bea32fa3 Edit of function from popup menu in MASTERSCOPE show paths graph locks mouse process (#1728)
Fix issue #1727
Edit of function from popup menu in MASTERSCOPE show paths graph locks
mouse process.
Left buttonfn didn't include :DONTWAIT option when launching the editor;
middle buttonfn did.
2024-05-27 15:16:29 -07:00
Matt Heffron
10cd51e5b1 Merge branch 'master' into mth12--Fix-1727-Edit-from-MASTERSCOPE-graph-can-lock-mouse-process 2024-05-24 21:45:49 -07:00
Matt Heffron
ee57eabe21 In PRINT-ALL-DOCUMENTATION only one of two places was checked for the documentation string.
(Also, MAKEFILE updated the LAMA variable in the CMLEXECCOMS.)
2024-05-24 21:28:15 -07:00
Matt Heffron
eda9863432 Fix issue #1719. (#1726)
MANAGER called PF with function NAME in a variable. BUT PF is NLAMBDA so
didn't eval its argument. Changed to use CL:APPLY*. Moved the process
function from a local LAMBDA in Manager.DO.COMMAND to a separate named
function. Tweaked prompt strings for the "CopyDef" and "Rename All" item
menu commands.
2024-05-24 20:42:54 -07:00
Frank Halasz
a9a8c35827 Merge branch 'master' into fgh_fix-maikodir_msg 2024-05-24 19:32:27 -07:00
Frank Halasz
40306a3fe8 Merge branch 'master' into fgh_loadups-updates-24-05-16 2024-05-24 19:31:21 -07:00
Frank Halasz
eb7d34784b Fix Issue#1730: Break during OPENSTREAM on file on XNS Server (#1733)
Add a DEVICE argument to \NSRANDOM.CREATE.STREAM so that when it creates
a stream, it can pass a device to the stream creation code. As of PR814
of July 2022, streams whose DEVICE field is NIL break during creation.
Update all callers to \NSRANDOM.CREATE.STREAM to pass the new DEVICE
argument.
2024-05-24 19:28:51 -07:00
Frank Halasz
ba8aac6321 Add extra error message in loadup-mid-from-init scripts when ldeinit cannot be found 2024-05-24 19:21:26 -07:00
Frank Halasz
c578bfd983 In medley.sh, improve error messages when cannot find maikodir or the expected maiko executable within maikodir 2024-05-24 19:02:26 -07:00
Frank Halasz
dab6f2635f Add a DEVICE argument to \NSRANDOM.CREATE.STREAM so that when it creates a stream, it can pass a device to the stream creation code. As of PR814 of July 2022, streams whose DEVICE field is NIL break during creation. Update all callers to \NSRANDOM.CREATE.STREAM to pass the new DEVICE argument. 2024-05-23 23:37:07 -07:00
Matt Heffron
40ae5fb9b3 Fix issue #1727
Edit of function from popup menu in MASTERSCOPE show paths graph locks mouse process.
Left buttonfn didn't include :DONTWAIT option when launching the editor; middle buttonfn did.
2024-05-21 23:15:59 -07:00
Matt Heffron
1c2f9bc395 Fix issue #1719.
MANAGER called PF with function NAME in a variable. BUT PF is NLAMBDA so didn't eval its argument. Changed to use CL:APPLY*.
Moved the process function from a local LAMBDA in Manager.DO.COMMAND to a separate named function.
Tweaked prompt strings for the "CopyDef" and "Rename All" item menu commands.
2024-05-21 22:34:30 -07:00
Frank Halasz
9214a6335a Change Medley release builds from Mon 2:00a PT to Wed 2:00a PT ... (#1722)
Change Medley release builds from Mon 2:00a PT to Wed 2:00a PT
2024-05-20 21:17:22 -07:00
Frank Halasz
a9941b36aa Fix typo in copy-all.sh loadup script 2024-05-18 00:06:35 -07:00
Frank Halasz
3129597058 Merge branch 'master' into fgh_loadups-updates-24-05-16 2024-05-17 23:59:45 -07:00
Frank Halasz
0d8e5ae9f6 Turning off exec bit on loadup-setup.sh, which is meant to be sourced only 2024-05-17 23:55:06 -07:00
Frank Halasz
354c7f035a Update all loadup scripts so that 3 things: 1) call subscripts with /bin/sh so that exec bit need not be set on any loadup script, 2) call medley via scripts/medley/medley.command rather than just medley so that the top-level medley symbolic link is not necessary for loadups and 3) no longer require that the loadup scripts run while cwd is MEDLEYDIR and instead determine MEDLEYDIR from where the loadup script is executed from 2024-05-17 23:53:35 -07:00
Matt Heffron
6c47d75ab9 Fix 1715 - "structural typo" in output of MANAGER Documentation menu item (#1716)
Fix "structural typo" in output of Documentation menu item
2024-05-17 11:54:55 -07:00
Matt Heffron
1134cb1ce6 Fix Issue 1711: problem with "-x ~" in new medley.sh (#1712)
Fixed two typos in medley_utils.sh:  $%2 -> $2
2024-05-13 17:05:37 -07:00
Frank Halasz
cc9fcc3e5b Fix Issue 1711 - fix two typos in medley_utils.sh $%2 -> $2 2024-05-13 16:31:58 -07:00
Frank Halasz
5073a793e3 medley.sh: Fix handling of '--title -' in medley_run.sh and medley_args.sh (#1710)
* Fix handilng of '--title -' in medley_run.sh and medley_args.sh

* medley.sh: Fix typo in default title introduced in last commit
2024-05-13 15:33:14 -07:00
rmkaplan
8e22a4dcb9 UNPACKFILENAME produces lt-gt for top-level directory (#1696)
* UNPACKFILENAME produces <> for top-level directory

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

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

Does not yet deal with all combinations of directory-internal bracket sequences
2024-05-13 15:27:52 -07:00
Frank Halasz
b8de8209d0 Update medley man page with latest updates to medley.sh (#1709) 2024-05-13 15:20:37 -07:00
Frank Halasz
9846353c9a Fix to Issue #1704. Cygwin Install fail (#1707)
In cygwin installer, change cygwin download site to https://mirrors.kernel.org since old gatech site is deprecated.
2024-05-13 14:24:09 -07:00
Frank Halasz
415a698df5 Overhaul of loadup scripts (#1699)
* Make medley.sh and its associated scripts POSIX compliant - i.e., debashify them

* Added config file for medley script, medley now reads from config file and prepends arguemnts from file to the copmmand line arguments

* WIP. Updates to medley.sh scripts.

* WIP.  More on medley.sh and friends update.

* WIP. Medley redo

* WIP.  Debugging new medley scripts

* Renamed medley.sh/medley.command to be medley_main.sh.  Added code to compile single medley.sh/medley.command script by inlining all of the source'd medley_*.sh files.

* Add temp fix for cygwin Issue #1685

* Minor fixup to medley_utils.sh; take debug code out out of run_medley

* Add README to medley directory to explain how to compile medley.sh (medley.command).

* Ooops. This time really adding the README file to the medley directory explaining how to compile medley.sh (medley.command)

* Update loadup- scripts to use updated medley scripts rather than run-medley

* Fix default setting of $config_file in medley_configfile.sh

* Redo medley compile to pick up last commikt

* Fixing how maiko exe is found and sysout argument error processing - both issues discovered testing on MAcOS

* In medley_configfile, replace echo with printf %s because echo - does not work in zsh

* Supress config file on loadups calls to Medley

* Add oldschool support (use original run-medley) to loadup scripts; improve FAILURE detection so loadup-all won't proceed once one of the components fails

* Add in medley_args.sh add -prog as synonym to --maikoprog to aid in loadup scripts; in medley_run.sh script try to get a good exit code for call to maiko, especially useful for loadup scripts

* Run loadup scripts thru shellcheck and update as necessary to make Posix compliant

* Get rid of -nt comparisons in loadup-setup.sh because they are not posix-complaint.  They were not really needed anyway.

* Removing (for now) use of lde exit codes to decide FAILURE case in loadup-setup.sh since exit codes from lde apperar to be inverted on MacOS.

* Update medley man page.  Add - functionality to more args is medley_args.sh

* Compile medley.sh with changes from last commit

* Ooops.  Left medley_args.sh changes out of last commit.  Rectifying here.

* Added support for LDEKEYBOARDTYPE to medley_run to match run-medley

* Add to medley.sh: auto numbered id's and titles with id's inserted

* Cleanup some shellcheck issues in medley_main.sh

* fix maiko args -nh-xxx.  were -nethub-xxxx. In medley_run.sh

* Overhaul handling of pass-on args to manage the quoting issues prevelant in the previous implementation

* Cleanup minor shellcheck issues in medley_*.sh scripts

* Add underscore as character allowed in ids - makes things clearer when id used with +

* Add a self-numbering id to medley calls in loadup scripts

* Put workaround in medley_run.sh for Issue #1702 - issues with sysout arg processing in Maiko

* Oops.  messed up LDESRCSYSOUT in last commit.  should be LDESOURCESYSOUT

* compile medley.sh
2024-05-09 21:31:27 -07:00
Matt Heffron
4272a6e5ed GITFNS prc menu is added to the screen instead of just popping up (#1695)
So the full set of available PRs (with their draft/approved status)
remains visible. You can poke from one to the other. May be useful when
we go through the PRs in Monday meetings. (Still doesn't bother with a
menu at all if there is only one PR to work on.)

On this first pass, the menu is placed (but not attached) just under the
current exec window, on the hope that this keeps it out of the way of
the windows that are created during the comparison.

Try it, let me know how this feels, whether this is an improvement over
the previous pop-up.
2024-05-06 16:21:49 -07:00
rmkaplan
6bc9aee7b9 GITFNS prc menu is added to the screen instead of just popping up
So the full set of available PRs (with their draft/approved status) remains visible.  You can poke from one to the other. May be useful when we go through the PRs in Monday meetings.  (Still doesn't bother with a menu at all if there is only one PR to work on.)

On this first pass, the menu is placed (but not attached) just under the current exec window, on the hope that this keeps it out of the way of the windows that are created during the comparison.

Try it, let me know how this feels, whether this is an improvement over the previous pop-up.
2024-05-03 11:11:01 -07:00
Matt Heffron
9f0475936f GITFNS quote branch names in git commands (#1693)
* GITFNS gets prc information in JSON form

prc uses the simple JSON parser in the new lispusers file JSON to convert the json string into a lisp data structure.  Maybe the commonlisp package YASON that Matt looked at would be more general, but perhaps also requires more understanding.

With this change, drafts should be marked with D, approves should be marked with A.

* Quote branch names in git commands -- attempt to fix issue #1691

---------

Co-authored-by: rmkaplan <ron.kaplan@post.harvard.edu>
2024-05-02 23:16:26 -07:00
Frank Halasz
2dfb1b71f6 Temporary fix in medley.sh to work around Issue #1685. Applies to cygwin only. (#1686)
Temp fix in medley.sh to work around issue #1685.  Applies to cygwin only.
2024-04-30 07:18:25 -07:00
rmkaplan
837f4029fe WINDOWOBJ: Add ENCAPSULATEDOBJP function (#1679)
* WINDOWOBJ:  Add ENCAPSULATEDOBJP function

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

* Fix earlier misunderstanding of encapsulated set up
2024-04-29 19:46:25 -07:00
rmkaplan
e40d3311c1 Rmk16 remove tedit special stuff from CLIPBOARD, move it to TEDIT-COMMAND. (#1676)
* CLIPBOARD:  Remove Tedit-specific code

* TEDIT-COMMAND:  Add interface to Clipboard

This also implements a different way of dealing with image objects in the selection.  Instead of causing an error (since an imageobject can't be printed to the clipboard stream), it tries to put out a useful representation of the object.  If the object has a preprint function, it applies that.  Otherwise, it prints out the name of the getfn.  Other objects can be explored.
2024-04-29 19:44:29 -07:00
rmkaplan
047aa5ff23 TEDIT.FORMAT.HARDCOPY fetches the AFTERHARDCOPYFN at the end (#1671)
so that it can be set by a display fn or boxfn along the way.  This permits the fix to IRM indexing in PR #1649 to take effect (for HCFILES).
2024-04-29 19:43:01 -07:00
rmkaplan
710513f2fd TEDIT-FILE with TEXTOBJ argument passed to lower get-piece functions (#1669)
An internal extension, so that error or warning messages if any can be displayed in the local prompt window
2024-04-29 17:20:49 -07:00
rmkaplan
448cb6feba HARDCOPY: Replace PROMPTFORWORD with TTYINPROMPTFORWORD in popup (#1651)
Also remade HARDCOPY NEW and TCOMPLed the whole file to get everything pretty printed and compiled.  The NEW option to MAKEFILE was not enough, I also had to set MAKEFILEREMAKEFLG to NIL.
2024-04-29 17:05:23 -07:00
rmkaplan
931807ef44 IMINDEX: The displayfn of index image objects sets AFTERHARDCOPYFN to close the index file (#1649)
* IMINDEX:  The displayfn of index image objects sets AFTERHARDCOPYFN to close the index file

Removes the need for advising the Tedit hardcopy function.  This won't have an effect until a separate PR (after rmk7 is merged) that updates the hardcopy function.

* Index image object explicitly uses OLD-INTERLISP-FILE for printing and reading  (cf #1652)
2024-04-29 17:04:12 -07:00
Larry Masinter
d79d5b397b Remove derived PDFs from repo; now in 'src' repo, comstructed by HCFILES and MAKE-INDEX-HTMLS (#1657)
* Remove derived PDFs from branch other than gh-pages

* only the gh-pages branch should have the pdfs

* make pdfs and listings

* Update HCFILES and MAKE-INDEX-HTMLS, add preliminary documentation

* add a slashit to avoid angle brackets
2024-04-29 16:28:22 -07:00
rmkaplan
14b102f143 TEDIT-MENU: Eliminate illegal arg and caret location errors (#1670)
* TEDIT-MENU: Eliminate illegal arg and caret location errors

@nbriggs got an error when (as I remember) parsing the OTHER font in the charlooks menu.  This was because of a missing BOUNDP check when trying to decide if the other font is a fontclass.

Separately, the caret appeared in the wrong place if a field insert was the first interaction with a menu.

* Remove redundant binding
2024-04-20 22:55:53 -07:00
Matt Heffron
88d10ee75c Merge pull request #1668 from Interlisp/rmk10--Fix-Tedit-imageobj-hardcopy
TEDIT-HCPY set X position after image object hardcopy display
2024-04-19 11:50:19 -07:00
rmkaplan
0f8652e15b TEDIT-HCPY set X position after image object
Addresses issue #1667
2024-04-19 09:50:39 -07:00
Frank Halasz
c30940ef19 Merge pull request #1639 from Interlisp/rmk7---Names-of-internal-Tedit-function-are-consistently-prefixed-with-TEDIT.-
Systematically renamed internal Tedit files with \TEDIT
2024-04-17 22:03:57 -07:00
Larry Masinter
92fd33eaad Add support for cl: loop for hash tables (#1605)
* Add support for cl: loop for hash tables
* fix subtle package problems setting up LISP package & conflicts with CLOS
* include fix for 'repeat n' clause
* remake in lower-case p make diffs legible, dfasl for defuns
2024-04-17 16:21:22 -07:00
rmkaplan
3564f502e4 Fixed a missed case in NSDISPLAYSIZES (#1658)
FONTSAVAILABLE calls with SIZE = *
2024-04-16 12:29:38 -07:00
Larry Masinter
0c62577e92 ANSI CL says all non-symbol non-list is self-evaluating; fix CL:EVAL (#1664) 2024-04-16 10:51:23 -07:00
rmkaplan
bda5cf1606 DINFO: recreate textstream if it has disappeared from the window (#1659)
Not sure how this can happen--a Tedit window without a textstream--but now testing for it.  DINFO must have removed it for some unknown reason.
2024-04-11 15:41:37 -07:00
Larry Masinter
44b1f8a7f3 hash p write pathname (#1612)
* #P"pathname" reads in as pathname
* #P"pathname" used for printing pathnames
* remake to remove extraneous reprint of CMLPATHNAMECOMS
2024-04-09 15:41:11 -07:00
rmkaplan
d5cc219895 NSDISPLAYSIZES: A better attempt at TERMINAL and TITAN (#1655)
This now builds in knowledge of which Titan and Terminal fonts actually exist, so it doesn't try to increase the size to a black hole.  Still a hack, but there are so many MOVD's involved that it is really hard to see how to do it with a generic FIND-NEXT-LARGEST-FONT.
2024-04-08 16:32:33 -07:00
Frank Halasz
a1a99c04cd Add PLOTANDNC-PATCH from obsolete back to lispusers since its used by Notecards - specifically NCPLOTCARD (#1647) 2024-04-06 21:40:13 -07:00
rmkaplan
f4fd00f8b8 Systematically renamed internal Tedit files with \TEDIT
This includes some files in lispusers that are not in the Tedit core but had references to Tedit internal functions (TMAX, DOC-OBJECTS and some others) that have been renamed. (I hope to clean out those internal references, at some point.)

A few additional changes are here to track the changes that were recently made in the unrenamed master branch.  Going forward, I want to make future changes in this branch.

Eventual plan is to introduce a Tedit package and do another systematic renaming of all \TEDIT.xxx functions to TEDIT::xxx, this is a first step.

This does not yet include a backward-compatibility mapping of oldnames to newnames, as was discussed in the technical meeting.
2024-04-01 20:49:06 -07:00
rmkaplan
f6eb5d9846 Fixex to \FORMATBYTESTRING and \FORMATBYTESTREAM (#1618)
Motivated by the fact that FILEPOS was not being properly informed that the bytes of the encoded stream are stable (unlike XCCS) so it can run at the byte level without character decoding.
2024-04-01 20:21:38 -07:00
rmkaplan
90dc568bae COMPAREDIRECTORIES makes directory filedate consistent with internal date of Tedit files (#1637) 2024-04-01 19:52:56 -07:00
rmkaplan
720ce08483 COMPARESOURCES ignores arbitrary forms, not just comments (#1533)
* COMPARESOURCES ignores arbitrary forms, not just comments

* Update COMPARESOURCES.TEDIT

* COMPARESOURCES.TEDIT -- typos
2024-04-01 16:13:53 -07:00
Larry Masinter
9b82f1a7c2 lmm57 interrupts clipboard wheelscroll (#1634)
* Changes to interrupt initialization for CLIPBOARD and WHEELSCROLL

* fixed initialization
2024-04-01 15:18:40 -07:00
rmkaplan
e92381b706 SEDIT-MAN arms Meta-D in SEDIT for man page (#1624)
Initial attempt
2024-04-01 15:16:07 -07:00
rmkaplan
2341531ac3 Minor updates to Tedit files (#1617) 2024-04-01 15:04:52 -07:00
rmkaplan
8df2418f97 On-demand UNICODE with READBOM, new .TEDIT, and small 2-way run-time mapping tables (#1620)
Replaces PR rmk105--UNICODE-on-demand
2024-04-01 15:03:45 -07:00
Frank Halasz
5437fac7aa Merge pull request #1636 from Interlisp/rmk3--Add-TEXTOBOJ-to-TEDIT.PROMPTPRINT-in-TEDIT.PUT
Address issue #1635
2024-04-01 11:29:04 -07:00
rmkaplan
fa39f9ec5d Address issue #1635 2024-03-31 23:52:13 -07:00
Frank Halasz
e4c4bb9f8d Remove extra scheduled Medley builds that were added for testing purposes last weeek. (#1615) 2024-03-25 11:57:34 -07:00
Frank Halasz
43374862e5 Merge pull request #1604 from Interlisp/rmk114--Add-TEDIT.XYTOCH-for-Notecards
Add TEDIT.XYTOCH for Notecards
2024-03-25 11:28:54 -07:00
Frank Halasz
6cbacf754b Merge branch 'master' into rmk114--Add-TEDIT.XYTOCH-for-Notecards 2024-03-25 11:26:53 -07:00
Frank Halasz
ef6d2d5b03 Merge pull request #1606 from Interlisp/rmk115--TEDIT.NORMALIZECARET-all-visible-caret-to-top
TEDIT.NORMALIZECARET moves line with left-most selection to the top
2024-03-25 11:22:53 -07:00
rmkaplan
121a166047 TEDIT.NORMALIZECARET moves line with left-most selection to the top 2024-03-21 21:51:55 -07:00
rmkaplan
1a550ce499 Add TEDIT.XYTOCH for Notecards
Provide a simple public interface function
2024-03-21 10:34:43 -07:00
Larry Masinter
9232a0db90 add more info on setting up directories (#1600) 2024-03-21 05:57:22 -07:00
rmkaplan
0a37520014 Fix for TTYINPROMPTFORWORD's bad behavior on CR termination (#1565)
Brute-force addition of parameter to TTYIN that BKSYS/DELETE function (TTYINUNREADBUF) can access freely.  Seems to work.
2024-03-20 20:34:47 -07:00
rmkaplan
6155bcb430 Off-by-one in the interpretation of the event length (#1585) 2024-03-20 20:31:42 -07:00
Larry Masinter
8ca35635e5 first cut at better build explanation (#1507)
* first cut at better build explanation for how medley sysouts are made.
2024-03-20 15:49:04 -07:00
Matt Heffron
2f7972e78d The BUTTONS lispusers package will edit the button content in the TTY process. So, for example, a copy-paste to the EXEC that had the TTY is not possible. Changed to invoke EDITE as a new process, instead of in the TTY process. (#1594)
(Lots of changes in file because change from FAST-formatted to PRETTY-formatted file. Actually only 1 line of code changed.)
Second, cleaned up, attempt.
2024-03-19 21:28:33 -07:00
Frank Halasz
2a88ad712e Further cleanup on cpv script; (#1506)
* Further cleanup on cpv script; add back a ln_or_cp function and use it to cp only when ln fails for all instances of linking/copying in the script;  better handling of case where the unversioned dest file does not exist but version versions of the file DO exst.

* cpv: remove local declarations to be Posix-compliant
2024-03-19 21:24:35 -07:00
Frank Halasz
51cb65cf37 Fix issue with release workflow whereby not pushing docker image to docker hub / update versions on all actions (#1589)
* Update all workflows to use latest versions of actions to accomodate deprecation of Node 16; Change how inputs are handled due to changes in the inputs context in guthiub actions.

* Add more schedule kickoffs for buildRelease... for testing purposes
2024-03-18 22:02:43 -07:00
Frank Halasz
220c995cda Minor Tedit tweaks to help Notecards get rid of TEXTOBJs (#1586) 2024-03-18 17:22:37 -07:00
Matt Heffron
fcd0206611 Merge pull request #1582 from Interlisp/fix-wholine-package
Fix bug in setting package with wholine
2024-03-18 17:05:43 -07:00
Matt Heffron
d0edc69cd7 Merge branch 'master' into fix-wholine-package 2024-03-18 17:04:40 -07:00
rmkaplan
5ad5083c6d GREP: avoids tedit-file formatting, font change chars in Lisp source files, adds TGREP (#1513)
* GREP: avoids tedit-file formatting, font change chars in Lisp source files, adds TGREP

* Oops, TAB is not a fontchange character

* Updated documentation GREP.TEDIT

* Avoids EXPORTS.ALL by doing SYSREC1

* Don't change the outcharfn

* Make it work on Tedit files

* Print out the filename instead of the stream for Tedit files
2024-03-18 16:21:06 -07:00
Larry Masinter
8e07e25b9a import an LOOP macro (#1579)
* import an LOOP macro
* add to loadup

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

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

It was just in FILENAMEFIELD and FILENAMEFIELD.STRING, I think the coercion should be uniform
2024-03-16 19:47:53 -07:00
Larry Masinter
a86c5ad145 start with makefile new 2024-03-16 12:11:19 -07:00
rmkaplan
dd60b85658 IMTEDIT and IMINDEX (#1571)
Backquote commas were escaped in IMTEDIT.  Also put the AFTERHARDCOPYFN on the text proplist, removed the advice in IMINDEX.
2024-03-15 15:55:24 -07:00
rmkaplan
b038a6b16e Rmk112 fix tedit hardcopy smash (#1580)
* Hardcopy wasn't binding the internally created textstreams, only the textobjs

* Putting the stream instead of the textobj in hardcopy lines

* TEDIT-SCREEN:  Fixed \FORMATLINE to deal with a last-line ending in white space

* Added TEDIT-STRESS

Not part of the loadup, a collection of offline routines to stress various Tedit interfaces
2024-03-15 12:31:19 -07:00
rmkaplan
5e5fea9ceb Rmk107 rename lafite files take2 (#1566)
* First commit:  git mv of all XXX.* to LAFITE-XXX.*

* Update all internal references to renamed Lafite files.

---------

Co-authored-by: Nick Briggs <nicholas.h.briggs@gmail.com>
Co-authored-by: Larry Masinter <LMM@acm.org>
2024-03-13 11:49:16 -07:00
rmkaplan
44e42940a9 Tedit 4th round (#1352)
* INSPECT:  Sort datatype fields alphabetically, fixed a small bug

* INSPECT:  Sort only DATATYPE records

* VIRTUALKEYBOARD:  fix loadup

* Reorganizing VIRTUALKEYBOARDS as described in #1267

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

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

* Move KEYBOARDCONFIGS KEYBOARDEDIT to library/virtualkeyboards

This collects all files relevant to VIRTUALKEYBOARDS into the same subdirectory

* NEARESTCORNER must be onscreen  (addresses #1294

Mouse jumps to the nearest onscreen corner of the ghost region

* EQUALALL tests equivalence of bitmaps and big bitmaps

* Oops, off by one

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

* Improve check for closed stream in \UFSCloseFile.

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

* COMPAREDIRECTORIES, COMPARESOURCES, COMPARETEXT, EXAMINEDEFS

Relatively minor cleanups, little or no functionality improvements

* Remove calls to OPENFILE

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

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

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

* Next version of TEDIT core files

* Update

* Update

* UPDATE

* UPDATE

* UPDATE:  FORCE-END fix

* FILEIO:  OPENSTREAM parameters default to STREAMPROP

also add LINELENGTH

* Expose useful subfunctions

* TEDITDORADOKEYS - compatibility with new declarations

* Update tedit-exports.all

* * removed from title when all changes are undone

* Delete old tedit fiels

* Add TEDIT.FILEDATE

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

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

* COMPAREDIRECTORIES:  Get AUTHOR only if selected

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

* Hilighting and caret flashing in split windows

* A little more on window splitting caret/hilights

* Rename caret functions

* REGIONMANAGER:  Compatibility with REGIONMANAGER PR

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

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

* Mostly dealing with highlighting and caret flashing in split windows

* FONTPROFILE: specvars declaration for cleanliness

* Prep for UTF8, a little performance tuning

* Meta EOL = non-paragraph linebreak

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

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

* Recompile DOC-OBJECTS because \DIRTY bit has changed

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

* CLIPBOARD (bug fix also a separate PR)

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

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

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

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

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

* Miscellaneous stability/maintenance/performance changes

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

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

* Cleanout misplaced pane/ files

* Fix for most of the lispusers/ hardcopy failures

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

* Another diacritic glitch

* MODERNIZE:  Fixed off by one bug in NEARESTCORNER

* Update tedit-exports.all

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

* hide initial caret in menus

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

* LLSYMBOL's FILEMAP was also incomplete

This update hopefully won't reveal any other problems

* Introduce NOTSPLITTABLE TEXTPROPERTY

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

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

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

* Don't allow Put of readonly file

* Inverted selection (black) hilights in readonly texts

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

* Remove redundant type-tests

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

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

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

* TEDIT-SELECTION:  Fix hilighting glitch with READONLY texts

(Shift select should have its usual highlighting)

* TEDIT menus are not splittable

* TEDIT-FILE fixes imageobj bug in old Tedit formats

Revealed by running HCFILES

* Improve conversion of unformatted to formatted

Also cache HINTPC inside \CHTOPC

* Fix to pageregion problem in old versions

Also adds TEDIT.NCHARS

* Code cleanup after testing faster scrolling

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

* Recompile callers of \CHECKEOLC macro

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

* Recompile callers of \CHECKEOLC macro

* Mostly work on scrolling and  HCFILE issues

* Trying to fix PSEUDHOSTS conficts

* PDFSTREAM

Backing up to fix merge problems

* update EXTERNALFORMAT to avoid conflicdt

* Mostly diacritic display and hardcopy

* Change DIRTY field to LDIRTY

* Added new user function TEDIT.FINDLOOKS

* WINDOWOBJ:  READIMAGEOBJ doesn't ask for permission

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

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

* Move charset management to externalformat (addresses #1454)

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

* XCCS, fixed a glitch

* Fix EXTERNALFORMAT clash

* Mostly CHARENCODING

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

Tedit word-selection → atom selection in source files

* For merging with new charset arrangement

* Mostly work on hardcopy-display

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

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

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

* Straggler: TMAX-XREF.LCOM

* Meta-EOL

* Fix and extend page-format updates

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

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

* Write and read unbreakable character property

* Don't suggest put-name if TEMPLATE

* 2 point hilight if readonly

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

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

* fix conflicts for merge

* fix incompatible merge

* Updates including UTF-8 plaintext files

Other continuing cleanups

* Continue edit after writing out UTF-8 plaintext

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

for continued editing.

* Update EXTERNALFORMAT from master

* Get rid of needless file change

* EOL processing

* Fix Lafite glitches

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

* Unsplit any existing panes before main window is reused

* TEDIT-FILE glitch

* Better TEDIT.FORMATTEDFILEP, more TEDIT.CONCAT

* Headings with concatenated Tedit files

* Adjust page headers and numbers

* Reshaping reestablishes the YBOT of PLINES

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

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

* TEDIT.PUT.STREAM

* Unhighlighting of menu buttons

related to point vs. single-character selection

* Better behavior when moving to foreign target

also some cleanup of the file-putting code

* More improvements to cursor tracking

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

* Try it again

* Suppress EOF error

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

* Mostly work on process and menu configuration

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

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

* Make the names of the Tedit menu process more distinctive

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

* Logically correct undo of Move between different documents

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

* Line spacing reflects offsets

* TEXTPROP returns length

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

* remove unwanted cpv from PR

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

* Fix hardcopy bug

* More work on the hardcopy interface

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

---------

Co-authored-by: Nick Briggs <nicholas.h.briggs@gmail.com>
Co-authored-by: Larry Masinter <lmm@acm.org>
2024-03-11 23:12:46 -07:00
rmkaplan
35b7195ed5 DINFO was expecting to use a closed textstream without reopening (#1576)
* DINFO was expecting to use a closed textstream without reopening

Not sure why it got closed.  Also fixed some escaped backquote commas (not sure that was necessary, but...)

* Oops, dropped out the PROG1
2024-03-10 21:59:59 -07:00
rmkaplan
10d83c5f5d Extended EQUALALL with BLOCKEQUALP test for equivalent arrayblocks (#1480)
HPRINT:  Better BLOCKEQUALP, still heuristic on true blocks
2024-03-04 21:30:04 -08:00
Larry Masinter
a80788201f Fix \MAPMDS, compile STORAGE lispusers, fixes HARDRESET problem too (#1159)
* Fix \MAPMDS, compile STORAGE lispusers, fixes HARDRESET problem too

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

* INSPECT:  Sort only DATATYPE records

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

---------

Co-authored-by: Larry Masinter <lmm@acm.org>
2024-03-04 15:00:41 -08:00
Larry Masinter
174bbe8e14 Fix problems due to FX record incompatibly on SPY, miscompiled (#1561)
* Fix problems due to FX record incompatibly on SPY, miscompiled

* PROC recompile for safe measure

* Add ASTACK.LCOM, also needed recompile!
2024-02-28 18:33:28 -08:00
Paolo Amoroso
d48bd9f77a Update documentation link (#1559)
Replace the documentation link to the Wiki with the link to the Using Medley page of the project site.

Signed-off-by: Paolo Amoroso <info@paoloamoroso.com>
2024-02-27 11:09:37 -08:00
Frank Halasz
76a6e26faa Update APPS-INIT to update NOTECARDSDIRECTORIES appropriately (#1555)
* Add to APPS-INIT code to always update NOTECARDSDIRECTORIES since automatic builds do not set this correctly

* Add AROUNDEXITFN to reset NOTECARDSDIRS after returning from logout, etc.
2024-02-25 19:59:10 -08:00
Matt Heffron
f8521c612e The setting to NEVER wasn't suppressing asking. (#1550)
The issue was incorrectly getting the ROOTFILENAME as where to attach the COPYRIGHT property.
2024-02-24 19:14:31 -08:00
Larry Masinter
de7a1e1deb Add (FILES LAFITE) to UNIXMAIL -- must load lafite before loading UNIXMAIL (#1553) 2024-02-24 19:03:29 -08:00
Larry Masinter
49cb172e3d Start of a DEMO facility to run demos from inside Medley (#1118)
* Start of a DEMO facility to run demos and part of automatied testing from inside Medley

Originally done for the BALISP 2023 talk. Possibly of use for building tests as well as demos.
2024-02-23 17:55:20 -08:00
Matt Heffron
cedc8d1e11 Merge pull request #1532 from Interlisp/mth4--Add-default-to-suppress-DUMPDB-asking-copyright-owner
DUMPDB annoyingly always asked COPYRIGHT owner when dumping DB
2024-02-20 17:24:19 -08:00
Larry Masinter
496fa408c2 Make macros that expand to fetch or replace note the record fields used. (#1548) 2024-02-20 15:16:55 -08:00
Matt Heffron
60e390789c Change the default value for DEFAULTDATABASECOPYRIGHTOWNER to 'NEVER.
This is so dumping the database never asks about copyright. Copyright on these database files is pretty nonsensical.
2024-02-19 16:34:26 -08:00
Matt Heffron
4dec18527e Made this "smarter":
If COPYRIGHTFLG is NEVER
   or DEFAULTDATABASECOPYRIGHTOWNER is NIL
   or the .DATABASE file already has a COPYRIGHT property
Then
   No need to do anything special (it already shouldn't ask)
Else If DEFAULTDATABASECOPYRIGHTOWNER
   is NONE or NEVER Then Set the COPYRIGHT to NONE (I.e., never mention it again.)
   is SAME Then Same as the source file. If it doesn't have one, then just normal handling
   is DEFAULT Then Use the general default for copyright: DEFAULTCOPYRIGHTOWNER
   Otherwise: Enable the general copyright defaulting.
              Hopefully, DEFAULTDATABASECOPYRIGHTOWNER is one of the COPYRIGHTOWNERS keys.
2024-02-07 18:47:37 -08:00
Matt Heffron
3ca4495c76 Added NONE in addition to NEVER as DEFAULTDATABASECOPYRIGHTOWNER to preset to (NONE).
The change from USEDFREE to SPECVARS may be irrelevant.
I thought that was the issue when using NONE as DEFAULTDATABASECOPYRIGHTOWNER didn't do as expected.
The DEFAULTCOPYRIGHTOWNER must be one of the "real" entry keys on COPYRIGHTOWNERS.
2024-02-06 21:31:30 -08:00
Matt Heffron
6eeccb40cb DUMPDB annoyingly always asked COPYRIGHT owner when dumping DB (unless COPYRIGHTFLG suppressed).
I added DEFAULTDATABASECOPYRIGHTOWNER (INITVARS to NIL; to preserve current behavior).
If it is EQ to NEVER, then the COPYRIGHT property on the file.DATABASE is set to (NONE) to forever suppress asking about copyright.
If any other non-NIL value, then COPYRIGHTFLG is bound to 'DEFAULT, and DEFAULTCOPYRIGHTOWNER is bound to the value of DEFAULTDATABASECOPYRIGHTOWNER.
2024-02-06 20:49:51 -08:00
Frank Halasz
2647d98f8f Merge pull request #1519 from Interlisp/fgh_modernize-for-nc
In MODERNIZE, fixed \MODERNIZED.TEDIT.BUTTONEVENTFN so it can work with Notecards
2024-02-05 15:12:13 -08:00
Frank Halasz
b52015e71d \MODERNIZED.TEDIT.BUTTONEVENTFN passes down a hardwired value for TITLEPROPORTION of NIL. This prevents the Notecards left button title bar menu from ever being shown. Replaced this hardwired NIL value with (WINDOWPROP W 'MODERNIZE.TITLEPROPORTION) so that Notecards can set this Windowprop and hence get its left title bar menu. 2024-01-27 14:06:45 -08:00
Matt Heffron
39ee2ecb5d Merge pull request #1518 from Interlisp/mth1--a-few-UNICODE-cleanups
A few fixes to UNICODE that I stumbled across.
2024-01-26 16:12:25 -08:00
Matt Heffron
a90b7ed73d A few fixes to UNICODE that I stumbled across.
READ-UNICODE-MAPPING-FILENAMES returned a bare string if FILESPEC matched 1 file (first clause of the (OR...) in join), this caused READ-UNICODE-MAPPING to fail.
SHOWCHARS referenced variable CODE that should have been C
Added FILETYPE property to UNICODE to specify TCOMPL compiler.
(Other changes are formatting by pretty printer, not mine.)
2024-01-26 14:38:04 -08:00
rmkaplan
54b2607070 Removed STORAGE.LCOM (#1511) 2024-01-19 23:53:12 -08:00
rmkaplan
971e8936b6 Replace \TEDIT.FORMATTED1 with TEDIT.FORMATTEDFILEP (#1508)
Internal \TEDIT.FORMATTED1 is being decommissioned
2024-01-19 21:49:45 -08:00
rmkaplan
e276460836 HRULE: More informative error messages (#1501) 2024-01-14 17:46:24 -08:00
Frank Halasz
ab818ff335 Merge pull request #1500 from Interlisp/repair-cpv
oops missing edit cpv
2024-01-12 17:23:16 -08:00
Larry Masinter
47d77542be oops missing edit cpv 2024-01-12 11:59:32 -08:00
rmkaplan
934d0fb7a4 Move charset management to externalformat (addresses #1454) (#1455)
* Move charset management to externalformat (addresses #1454)

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

* XCCS, fixed a glitch

* UNICODE: Remove merge conflict

* Fix typo CLFUNCALL, MAKEFILE NEW and BCOMPL (versions didn't match)

---------

Co-authored-by: Larry Masinter <lmm@acm.org>
2024-01-12 11:42:22 -08:00
Frank Halasz
6420bdcf27 Fix for Issue #1472 (loadup failure on btrfs): update how cpv scripts handles hardlink versus copy (#1497) 2024-01-12 05:34:57 -08:00
rmkaplan
1d6e43e1ea Minor fixups (typos, formatting) to a few existing documentation files (#1470)
* Mostly minor fixups (typos, formatting) to a few existing documentation files

Plus converting the Unicode documentation from TXT to formatted

* Update UNICODE.TEDIT

Previous version did not have page-looks (heading location etc.)

* UNICODE.TEDIT:  write unbreakable charlook property

* Delete UNICODE.TEDIT

Master has a newer version, trying to eliminate conflict
2024-01-10 12:31:28 -08:00
rmkaplan
8837c61f85 SKETCHOPS (unhyphenated) should have been included (#1464) 2024-01-10 10:49:04 -08:00
rmkaplan
18aae01362 Suppresses size coercion for Titan 12 (#1476)
* Suppresses size coercion for Titan 12

* Typo
2024-01-10 10:48:03 -08:00
rmkaplan
a84242561a Rmk100 unicode utf 8 update (#1489)
* UNICODE:  a few additional Tedit helpers, revised documentation

* New JIS files (courtesy of Peter)

* Updated mapping files (courtesy of Peter Craven)

* UNICODE:  changed SHOULDNT to ERROR
2024-01-10 10:47:16 -08:00
Matt Heffron
70885c5a19 Merge pull request #1487 from Interlisp/mth-LockXorShift-issue-1486
change for CapsLock & Shift to be XOR vs OR.
2024-01-10 10:02:50 -08:00
Matt Heffron
57de705f39 Fix error in flag testing logic.
(No more midnight coding!)
2024-01-03 16:12:23 -08:00
Matt Heffron
7c3fa261c7 Rename KEYBOARD.SHIFTXORLOCK to SHIFTXORLOCKFLG.
(More inline with Medley/Interlisp convention.)
2024-01-03 12:37:30 -08:00
Matt Heffron
7fe4d2dcca Merge branch 'mth-LockXorShift-issue-1486' of https://github.com/Interlisp/medley into mth-LockXorShift-issue-1486
# Includes changes to make Shift XOR Lock behavior be conditional on GLOBALVAR KEYBOARD.SHIFTXORLOCK:
#	sources/LLKEY
#	sources/LLKEY.LCOM
The changes were made before the merge, and then Stashed.
2024-01-03 00:41:28 -08:00
Matt Heffron
30a4697d75 On Branch_medley-231217-3727653e: LLKEY 2024-01-03 00:22:14 -08:00
Matt Heffron
60a766574d index on Branch_medley-231217-3727653e: 3727653e Rmk96 move sketch files to library/sketch (#1446) 2024-01-03 00:22:14 -08:00
Matt Heffron
25a18f6bc0 Merge branch 'master' into mth-LockXorShift-issue-1486 2024-01-02 22:59:03 -08:00
Matt Heffron
6558a49adb change for CapsLock & Shift to be XOR vs OR. 2024-01-02 19:46:15 -08:00
Larry Masinter
4b30aa1640 update medley README to match new build instructions (#1458)
* update medley README to match new build instructions

* Remove NUL character

* Fix grammatical and typographic errors reported by Matt

* Fixed a few typos, some punctuation, a bit of wording, and removed the Docker references (Docker related files aren't in the repo anymore).

* A few more fixes

---------

Co-authored-by: Nick Briggs <nicholas.h.briggs@gmail.com>
Co-authored-by: Matt Heffron <heffron@alumni.caltech.edu>
2024-01-01 21:35:58 -08:00
rmkaplan
3727653e23 Rmk96 move sketch files to library/sketch (#1446)
* Move all SKETCH files from library/ to library/sketch/

and rename subsidiary files SKETCHXXX to SKETCH-XXX, according to our hyphen convention.  This will allow SKETCH and all its subsidiary files to be loaded automatically when the sketch GETFN is required to display an image object.

* New files again

Somehow GITFNS produced smashed copies on the first attempt.  May have to do with the fact that Medley doesn't always report that it couldn't create a new directory, or otherwise behaves badly in that situation.
2023-12-17 16:42:59 -08:00
rmkaplan
b1294ea5e9 Rmk94 fix checkeolc macro (#1435)
* EXTERNALFORMAT: \CHECKECOLC macro confusedf ANY vs CR EOL convention

* Recompile callers of \CHECKEOLC macro

* If ANY and no CR after LF, return EOL instead of CR
2023-12-09 22:50:39 -08:00
Matt Heffron
2a9076bede Change files DEFINE-FILE-INFO (i.e., the IL:MAKEFILE-ENVIRONMENT) to fix issue #1447 (#1448) 2023-12-09 22:42:28 -08:00
rmkaplan
72456ce4ec WINDOWOBJ: READIMAGEOBJ doesn't ask for permission (#1449)
If the image object is on a hyphenated file and it can find a nonhyphenated sister, it loads that.  If that doesn't provide the getfn, it tries the original file.
2023-12-09 22:41:43 -08:00
rmkaplan
c8c4768315 WINDOWOBJ: Better handling of unknown image objects (#1436)
* WINDOWOBJ: Better handling of unknown image objects

2 changes:   If WHEREIS says that an unknown getfn is on FOO-FIE and FOO>FOO exists, then offer FOO in the mouseconfirm.  This should get all the support code (e.g. TMAX is offered instead of TMAX-NUMBER).  Issue #748.  Separately, if the getfn is not found when the file is opened (so the image object is encapsulated), the encapsulated imagebox fn will upgrade the image if the getfn exists when the object is redisplayed.

* Glitch
2023-12-02 15:51:20 -08:00
Larry Masinter
735108ecb7 Pull in newer or missing library/*.tedit files (#1398) 2023-11-29 14:05:09 -08:00
rmkaplan
f735fca83e POSTSCRIPTSTREAM: POSTSCRIPTFILEP applies also to closed files (#1434) 2023-11-29 07:14:00 -08:00
rmkaplan
560def37bc PSEUDHOSTS and .TEDIT: Apply TRUEFILENAME on PREFIX, update documenta… (#1385)
* PSEUDHOSTS and .TEDIT: Apply TRUEFILENAME on PREFIX, update documentation

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

* PSEUDOHOSTS.LCOM and .TEDIT

Appear to have gotten out of step
2023-11-29 07:11:37 -08:00
rmkaplan
41f32b7db5 INTERPRESS fixes some of the Asciifont-to-NS character mappings, MATHTONS is obsolete (#1413)
* Fixes some of the character mappings from Ascii fonts into NS, moves Math mappings into Interpress

The separate lispusers/MATHTONS is now obsolete.

* INTERPRESS:  Add back empty ASCIITONSTRANSLATIONS

Turns out they were intended, not a mistake.  But that was just a shorthand for saying MODERN, as a fall back.  I made that explicit.
2023-11-29 07:09:38 -08:00
rmkaplan
ab831a46ba Add a hook to extend FILEBROWSER SEE, PDFSTREAM uses it (#1414)
So SEE of a PDF file should open up a desktop window in a pdf viewer.  (This uses PDFILEP, which looks inside the file, not at the extension.  So it might try to open a file with a wrong extension, and the viewer might fail.)
2023-11-29 07:04:58 -08:00
rmkaplan
f1cf759098 LLSYMBOL's FILEMAP was also incomplete (#1381)
This update hopefully won't reveal any other problems
2023-11-29 06:58:58 -08:00
rmkaplan
017bf88a3a FILEIO: OPENSTREAM parameters default to STREAMPROP (#1335)
also add LINELENGTH
2023-11-29 06:47:14 -08:00
Nick Briggs
b2f750e549 Restore NSPROTECTION files to lispusers (#1430) 2023-11-22 22:05:26 -08:00
Frank Halasz
8cf17ce950 Fix loadup-apps-from-full.sh so that it fails gracefully when a notecards directory cannot be found (#1428) 2023-11-21 21:40:19 -08:00
Larry Masinter
008aff1d25 EDITBMPATCHES already in EDITBM; NEW-SKETCH-COLOR saved but in Obsolete (#1379) 2023-11-20 22:58:06 -08:00
Larry Masinter
214cfb8674 Add some files to set analyzed in fuller.database (#1425) 2023-11-20 22:56:11 -08:00
Larry Masinter
2e7b88d0cc Recompile files that seemed to have \IS.NO.RANDACCESSP in compiled code (#1417) 2023-11-20 22:48:37 -08:00
Frank Halasz
14fbff63cf Merge pull request #1419 from Interlisp/fgh_LDEKBDTYPE
Set LDEKBDTYPE to X in run-medley - if not already set.  Works around issue with loading VIRTUALKEYBOARDS
2023-11-17 23:20:26 -08:00
Frank Halasz
bec32f475a Merge pull request #1420 from Interlisp/fgh_ShellBrowserGit
Fix minor issue in ShellBrowser - when using the git path was missing the web--browse subcommand.
2023-11-17 23:19:31 -08:00
rmkaplan
6e845d747f ADIR fix UNPACKFILENAME.STRING address #1416 (#1421)
The early . was seen as starting an extension, the ! then was seen as starting a version.  When the other marks caused those hypotheses to be revised, the extension's end wasn't being revised
2023-11-14 07:11:58 -08:00
Frank Halasz
459aeef74a Merge branch 'master' into fgh_LDEKBDTYPE 2023-11-13 13:07:55 -08:00
Frank Halasz
19ceac6515 Fix the git case in ShellBrowser. Was missing the web--browse argument. 2023-11-13 13:04:16 -08:00
Frank Halasz
914604a6eb Set LDEKBDTYPE to X in run-medley - if not already set. Fixes issue with loading VIRTUALKEYBOARDS 2023-11-13 12:42:34 -08:00
Larry Masinter
05f3ad19eb Update CLHS reference to use Interlisp CHLS instead; use UNIXUTILS ShellBrowser (#1412) 2023-11-13 12:12:56 -08:00
Frank Halasz
c62c183ae4 Update ShellOpen to handle versioned files; add ShellOpen into SEE-PDF in place of MacOS-specific open. (#1410)
* Update PDFSTREAM: integrate ShellOpen into PDF-SEE in place of MacOS specific calls; update how PDFCONVERTER is set to fix bug whereby it was always ps2pdf

* Fix ShellOpen so that if a file to open is versioned then that file is copied to tmp and its filename is changed from foo.pdf;25 to foo~25~.pdf and this tmp is passed to the opener instead of the original file.  This is so that the extension is preserved as the last thing when there are versions.  The extension as the last thing is used by most openers to determine the file type.

* Oops. Checked in the wriong versions of UNIXUTILS(.DFASL) last commit.  Correcting that here.
2023-11-11 11:05:24 -08:00
rmkaplan
328d3f53cd NEARESTCORNER must be onscreen (addresses #1294 (#1295)
* NEARESTCORNER must be onscreen  (addresses #1294

Mouse jumps to the nearest onscreen corner of the ghost region

* MODERNIZE:  Fixed off by one bug in NEARESTCORNER
2023-11-03 17:45:49 -07:00
rmkaplan
5b90251210 Patch to REGIONMANAGER and ADISPLAY for SCREENREGIONS (#1387)
For ADISPLAY, just added SCREENREGIONP.  Fixed typos in REGIONMANAGER.TEDIT
2023-11-03 17:39:33 -07:00
rmkaplan
713f2388c7 COMPAREDIRECTORIES, COMPARESOURCES, COMPARETEXT, EXAMINEDEFS (#1329)
* COMPAREDIRECTORIES, COMPARESOURCES, COMPARETEXT, EXAMINEDEFS

Relatively minor cleanups, little or no functionality improvements

* COMPAREDIRECTORIES:  Get AUTHOR only if selected

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

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

* COMPARETEXT: fixed to avoid EOF error if EOL gets confused
2023-11-02 19:23:38 -07:00
rmkaplan
f49729cbd3 COLOROBJ never worked, move to obsolete (#1374) 2023-10-30 21:37:59 -07:00
Matt Heffron
bdf03e08a1 Modify CL:CHAR-NAME always to return string from lookup in IL:CHARACTERNAMES. (#1377)
This *seems* to fix the issue with printing "control characters" in #\Name format.
2023-10-30 19:43:13 -07:00
Frank Halasz
b19cfd5bbb Revert "Merge pull request #1331 from Interlisp/Remake-CMLARITH-filemap" (#1376)
This reverts commit e2d8c9e5ad, reversing
changes made to 9054814ef7.
2023-10-30 13:21:24 -07:00
Matt Heffron
e2d8c9e5ad Merge pull request #1331 from Interlisp/Remake-CMLARITH-filemap
CMLARAITH:  Makefile new to get fns/functions in filemap
2023-10-29 22:51:41 -07:00
Matt Heffron
2ea1321d81 Merge branch 'master' into Remake-CMLARITH-filemap
Signed-off-by: Matt Heffron <mattheffron475@gmail.com>
2023-10-29 22:38:03 -07:00
Frank Halasz
9054814ef7 Add dribble file to app-from-full loadup (#1371) 2023-10-29 10:00:59 -07:00
rmkaplan
84dead86af Patch TEDIT.DEACTIVATE.WINDOW in old Tedit (#1361) 2023-10-28 14:34:25 -07:00
rmkaplan
5e83d63567 VIRTUALKEYBOARD: fix loadup (#1262)
* VIRTUALKEYBOARD:  fix loadup

* Reorganizing VIRTUALKEYBOARDS as described in #1267

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

* Move KEYBOARDCONFIGS KEYBOARDEDIT to library/virtualkeyboards

This collects all files relevant to VIRTUALKEYBOARDS into the same subdirectory
2023-10-28 14:21:32 -07:00
rmkaplan
bcfeda62e1 EQUALALL tests equivalence of bitmaps and big bitmaps (#1302)
* EQUALALL tests equivalence of bitmaps and big bitmaps

* Oops, off by one

---------

Co-authored-by: Larry Masinter <lmm@acm.org>
2023-10-23 21:18:57 -07:00
Frank Halasz
45513f563b Extend changes made in PR#1356 to medley/sh et al to handle -title arguments with space; extend to handle vnc case and well as without vnc case. (#1358) 2023-10-19 17:04:40 -07:00
Frank Halasz
db084c6281 Add copy-full.sh to loadup-full.sh script to copy loadup products from the tmp directory into MEDLEYDIR/loadups - make loadup-full akin to loadup-all (#1359) 2023-10-18 20:53:24 -07:00
Matt Heffron
6c53acaca8 Merge pull request #1356 from Interlisp/EnableMedleyWindowTitleWithSpaces
Modify launcher to enable --title STRING option to work when STRING has embedded spaces (multiple words).
2023-10-18 14:01:19 -07:00
rmkaplan
fbb5a8f6f5 Expose useful subfunctions in REGIONMANAGER (#1336)
* Expose useful subfunctions

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

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

* If a window with a typed-region is reshaped and then closed, the typed-region is also reshaped for reuse

Also, the typed-region of a window is pushed on the front of the TYPED-REGIONS list when the window is closed, so the most recent region of that type will be used the next time.  Recency seems more intuitive than primacy
2023-10-18 07:38:27 -07:00
Matt Heffron
cb8eab788a Modify launcher to enable --title STRING option to work when STRING has embedded spaces (multiple words). 2023-10-17 23:40:26 -07:00
rmkaplan
50dc0a9269 Remove calls to openfile (#1333)
* Remove calls to OPENFILE

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

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

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

---------

Co-authored-by: Larry Masinter <lmm@acm.org>
2023-10-17 21:54:17 -07:00
Larry Masinter
9273cffce2 pull (non-working) TCP files to obsolete (#1283) 2023-10-17 21:34:17 -07:00
rmkaplan
df8c5a52f1 Also remade filemap for CMLCHARACTER (and changed from LCOM to DFASL)
CLEANUP is confused about how to compile.  This had FILETYPE = CL-COMPILE-TYPE, with an existing LCOM.  It produced a new DFASL, but the LCOM was still hanging around.  I'm deleting the LCOM here, pushing the new DFASL.
2023-10-17 13:33:18 -07:00
rmkaplan
a219ea03e5 Improve check for closed stream in \UFSCloseFile. (#1334)
Check if the (STREAM ACCESS) bits are NIL, indicating a closed stream, and
if so do not attempt to close the file again

Co-authored-by: Nick Briggs <nicholas.h.briggs@gmail.com>
Co-authored-by: Larry Masinter <lmm@acm.org>
2023-10-16 15:54:34 -07:00
rmkaplan
2072deb6ae GITFNS: preserves casing of pseudohost prefix-paths of medley projects (#1344)
Also, minor edit to GITFNS.TEDIT, but now also includes a Tedit timestamp.
2023-10-16 15:37:09 -07:00
rmkaplan
f6c91ee11c FONTPROFILE: specvars declaration for cleanliness (#1351) 2023-10-16 15:35:17 -07:00
rmkaplan
adc27d9684 MEDLEYDIR: Pack DSK as the default HOST on the value of (UNIX-GETENV "MEDLEYDIR") (#1282)
Co-authored-by: Larry Masinter <lmm@acm.org>
2023-10-16 14:45:29 -07:00
Matt Heffron
d92aa6395a Manager (Lispusers) grow anchor, icon, and fix typo. (#1346)
* File See operations use full path to loaded file.
Add Manager.WINDOW-ANCHOR to fix corner from which MANAGER-MAIN-WINDOW grows, and (attempt) to keep it on-screen.

* Improved handling of the ICONW for MANAGER-MAIN-WINDOW.

* Fix typo in MasterScope functions (multiple occurrences: LOADBFLG should be LOADDBFLG).
Changed to CL compiler by default (not need to go to submenu). This is my preference, so I should remove it before setting pull request.

* Manual cleanup of multiple "Edited" comments in 4 FNS.
Reverted: Changed to CL compiler by default (not need to go to submenu). (From commit f60c6362)

* Update MANAGER.TEDIT documentation file.
Fix error in previous commit. (Changes that I thought were there, were not.)
Cleanup COMMON-MAKE COMS so it can be handled by the file package, and add .LCOM file to the repo.
2023-10-14 06:39:13 -07:00
Matt Heffron
f1833861cc Merge pull request #1348 from Interlisp/medley-issue-1347
Fix for typo; issue #1347
2023-10-13 10:41:05 -07:00
Matt Heffron
270fee89e3 Fix for typo; issue #1347 2023-10-12 13:19:59 -07:00
Frank Halasz
cba04e168c Merge pull request #1342 from Interlisp/PDFSTREAM
Pdfstream
2023-10-08 23:30:02 -07:00
Frank Halasz
1e847ec274 Add ShellOpen (and ShellOpener) to UNIXUTILS; fix small bug in UNIX-FILE-NAME (#1341)
* Add ShellOpener and ShellOpen to UNIXUTILS - used to open a file using the generic opener on this machine.  Adapted ShellBrowse and ShellBrowser accordingly; fixed bug in UNIX-FILE-NAME where it fails if file does not exist and COPY is non-NIL and access is INPUT

* Add return of error strings to ShellOpen
2023-10-08 19:34:43 -07:00
rmkaplan
f765676ec4 UNIXUTILS: Add UNIX-FILE-NAME etc on top of previous ShellWhich update--should resynch 2023-10-02 12:56:57 -07:00
rmkaplan
17c72a1f2f Merge branch 'master' into PDFSTREAM 2023-10-02 12:47:02 -07:00
rmkaplan
995c6de04e PDFSTREAM: First implementation (#1260)
* PDFSTREAM:  first implementation

Makes PS file, then applies separate utility (if available) to convert PS to PDF

* POSTSCRIPTSTREAM:  Adds extra field to postscript data for PDFSTREAM filename

* HARDCOPY:  fixes printer menu

* PDFSTREAM: define PDF fonts as POSTSCRIPT fonts

* PDFSTREAM: fix convert template

* PDFSTREAM:  Fix logic around closing the postscript sub-stream

* PDF Stream:  slight generalization

* PDFSTREAM uses AFTERCLOSE streamprop so doesn't require change to POSTSCRIPTSTREAM

* UNIXUTILS: moved PROCESS-COMMAND and SLASHIT from GITFNS and PSEUDOHOST resp.

PROCESS-COMMAND executes a command in process-stream, like ShellCommand, but returns a completion code and not what happens in the shell.  SLASHIT is an approximation (doesn't deal with versions) of converting a Medley file name to its Unix equivalent, to use in commands

* GITFNS:  PROCESS-COMMAND moved to UNIXUTILS, cleanups from previous (unexamined) PR

The other PR will be cleaned out

* PSEUDOHOSTS: Moved SLASHIT to UNIXUTILS, also includes minor change in previous (unexamined) PR, to be removed

* PDFSTREAM:  wrapped FULLNAME around TRUEFILENAME

* Restore POSTSCRIPTSTREAM

* UNIXUTILS:  Added UNIX-FILE-NAME

Produces a Unix filename corresponding to a Medley file name (slashes, version number).  For use in ShellCommand an PROCESS-COMMAND.

* PDF-STREAM:  added SEE-PDF

A little stub that (on a mac) does a shell command to open Preview on the Unix-named file corresponding to a medley name

(Also added back some key functions that got lost in a bad edit)

* Pick up master changes

---------

Co-authored-by: Larry Masinter <lmm@acm.org>
2023-10-02 12:39:25 -07:00
Larry Masinter
877c6fbf17 Pick up master changes 2023-10-02 12:36:39 -07:00
rmkaplan
97b19f1b96 PDF-STREAM: added SEE-PDF
A little stub that (on a mac) does a shell command to open Preview on the Unix-named file corresponding to a medley name

(Also added back some key functions that got lost in a bad edit)
2023-10-01 23:54:23 -07:00
rmkaplan
948b0e09d1 UNIXUTILS: Added UNIX-FILE-NAME
Produces a Unix filename corresponding to a Medley file name (slashes, version number).  For use in ShellCommand an PROCESS-COMMAND.
2023-10-01 23:52:40 -07:00
Frank Halasz
de4e5f5ca4 Add cygwin build & install script to buildRealease action; remove old Windows docker build / install (#1337)
* Add cygwin-sdl build to buildLoadup workflow; add installer for cygwin-sdl on windows

* Change how buildLoadup computes latest maiko release to accomodate draft releases

* Fix call to gh release list for maiko

* Debugging call to gh release list for maiko

* Debugging call to gh release list for maiko #2

* Debugging call to gh release list for maiko #3

* Debugging call to gh release list for maiko #4

* Debugging call to gh release list for maiko #5

* Debugging call to gh release list for maiko #6

* Change maiko downloads to accoiunt for draft releases

* Change maiko downloads to account for draft releases #2

* Specify shell (powershell) for Download cygwin installler

* Few cleanup items on cygwin-install

* Update ShellWhich to use command -v instead of which because which returns to much crap on cygwin and command -v is more portable overall

* Switch from using medley-loadup & -runtime tars to medley-full-*.tgz so we get full release incl notecards; delete maiko on install and replace with cygwin maiko

* Make sure Notecards doesn't try to load its HASH fileon PostGreet - for apps.sysout

* Add xdg-utils to cygwin install to support ShellBrowser

* Odds and ends on cygwin build

* Redo medley.iss install script to use tar from Windows rather than cygwin tar because cygwin tar was messing up ACLs in windows.  Needed to change creation of medley.bat accordingly.

* Remove junk lines from buildLoadup.yml

* Restore accidently deleted line to buildLoadup.yml

* Fix multiple issues with cygwin_installer filename; arrange to remove placeholder.txt from the release assets at the end of cygwin installer

* Change name of job from windows_installer to cygwin_installer

* Fix missing GH_TOKEN is removal of placeholder.txt; fix naming of output file in medley.iss

* Fiddling with getting cygwin-installer name right

* Redoing merge of medley.sh/medley.command to handle the Darwin plus Cygwin cases; is medley.iss recreate symbolic links surrounding the medley.sh script

* Fix typos/syntrax errors in medley.sh/medley.command
2023-09-27 10:41:01 -07:00
rmkaplan
af912247b3 Restore POSTSCRIPTSTREAM 2023-09-25 20:32:17 -07:00
Frank Halasz
ebb5c739ea Fix latest issues with docker build (and Release+Docker builds) for Medley (#1326)
* fix buildRealeaseInclDocker.yml to pass secrets via inherits rather than explicitly.  Attempt to fix issue with GITHUB_TOEN not being passed to buildRelease.yml

* In buildDocker.yml, fix up calculation of medley and maiko release to accomodate new naming scheme for medley deb files

* Update Dockerfile_medley with new deb file naming convention
2023-09-25 11:34:51 -07:00
rmkaplan
1bed018db8 CMLARITH: The compiled file was bad in the previous commit
This has a FILESLOAD for lispusers/UNBOXEDOPS that somehow didn't get executed by the previous cleanup.  (That may be a separate issue with the compiler interface, not clear that it always makes the right choices even when the FILETYPE property is set.)

But this also begs the question, why is UNBOXEDOPS on lispusers?
2023-09-24 16:41:52 -07:00
rmkaplan
8a8e6fa4dc CMLARAITH: Makefile new to get fns/functions in filemap 2023-09-23 23:30:25 -07:00
rmkaplan
bf2e34841b PDFSTREAM: wrapped FULLNAME around TRUEFILENAME 2023-09-23 22:56:54 -07:00
rmkaplan
9ed6448591 PSEUDOHOSTS: Moved SLASHIT to UNIXUTILS, also includes minor change in previous (unexamined) PR, to be removed 2023-09-23 16:32:03 -07:00
rmkaplan
445de6745d GITFNS: PROCESS-COMMAND moved to UNIXUTILS, cleanups from previous (unexamined) PR
The other PR will be cleaned out
2023-09-23 16:30:47 -07:00
rmkaplan
68ed78a9f9 UNIXUTILS: moved PROCESS-COMMAND and SLASHIT from GITFNS and PSEUDOHOST resp.
PROCESS-COMMAND executes a command in process-stream, like ShellCommand, but returns a completion code and not what happens in the shell.  SLASHIT is an approximation (doesn't deal with versions) of converting a Medley file name to its Unix equivalent, to use in commands
2023-09-23 16:23:46 -07:00
rmkaplan
1ae08139c9 PDFSTREAM uses AFTERCLOSE streamprop so doesn't require change to POSTSCRIPTSTREAM 2023-09-23 16:20:30 -07:00
rmkaplan
bb4e230df4 Merge branch 'master' into PDFSTREAM 2023-09-23 15:57:53 -07:00
Frank Halasz
02665ca91b Change github workflows to provide MacOs full release zip file (#1290) 2023-09-17 23:03:18 -07:00
Frank Halasz
b819e18c64 Fix Issue#1323: buildDocker.yml Github Action is failing due to Ubuntu 22.10 being deprecated (#1324)
* Remove trailing whitespaces in buildDocker.yml; move Dockerfile_medley base back to 20.04 since 22.10 deprecated.

* In Dockerfile_medley load tzdata early so as to avaoid problems later on.

* In Dockerfile_medley do an apt update before tzdata

* Changing dockerfile_medley to be based on 22.04 to take care on glibc problems in online_medley docker
2023-09-16 18:09:34 -07:00
rmkaplan
781709e4e1 PDF Stream: slight generalization 2023-09-12 13:49:56 -07:00
Frank Halasz
b772b8383c Moving vncviewer to online.interlisp.org/downloads to bypass issues with sourceforge in buildLoadup.yml (#1319) 2023-09-04 10:39:52 -07:00
Frank Halasz
701a642fb4 Merge pull request #1308 from Interlisp/fgh_loadups3
Fix issue with tmp/logindir remaining after loadup-all and loadup-db scripts
2023-08-15 15:31:33 -07:00
Frank Halasz
7f99792afe In loadup- scripts, at end remove the tmp and tmp/logindir directories if they don't exist before the script runs 2023-08-14 23:29:38 -07:00
Frank Halasz
6a147af97f Merge pull request #1304 from Interlisp/fgh_loadups2
Revamp loadup scripts and release-medley script; sync with github workflow buildLoadup.yml
2023-08-14 10:56:57 -07:00
Frank Halasz
41b5870164 Switch comparison of timestamp tocraeted file to ensure that when the times are equal it is counted as success and not failure. Remove two second wait from loadup-mid-from-init, which was a previous attempt to solve same issue. 2023-08-13 21:13:48 -07:00
Frank Halasz
3ed4d52f53 Remove junk accidently added to loadup-db.sh. Fix CM file in loadup-db-from-full.sh to add internal/loadups to DIRECTORIES so files in this subdir can be analyzed. Add delay into loadup-mid-from-init.sh to make sure timestamp race conditions are avoided. 2023-08-07 22:30:12 -07:00
Frank Halasz
3aa01c7a38 Making @nbrigg's check for existance of LOADUP_OUTDIR and LOADUP_WORKDIR a bit fancier 2023-08-07 18:00:53 -07:00
Nick Briggs
3cefaf338c Ensure that the LOADUP_OUTDIR directory exists as part of the loadup-setup.sh 2023-08-07 17:24:38 -07:00
Frank Halasz
204605268e Remove venuesysouts from release tars 2023-08-07 14:53:33 -07:00
Frank Halasz
62422cd4ce Add changes from PR#1307 (@masinter). Can't easily merge PR#1307 in directly because MAKEINIT has moved. These changes set OK.TO.MODIFYFNS to T for all loadups to prevent loadups asking if its OK to modify system functions 2023-08-07 13:35:25 -07:00
Frank Halasz
ed6a6e4e04 move all loadups-related source files into internal/loadups; adjust scripts accordingly; move venuesysouts from loadups into internal/venuesysouts; fix issues in .CM files to allow starting loadups-all from any lisp/full.sysout 2023-08-07 12:34:11 -07:00
Frank Halasz
dbf6808bcb Merge remote-tracking branch 'origin/fgh_loadups2' into fgh_loadups2 2023-08-04 15:19:56 -07:00
Frank Halasz
126a8cfb37 Remove references to LOADUP_WORKDIR from all lisp code and instead pass the file references down from the callinf .CM files (which are now embedded in the loadup- scripts; also add /unicode subdir to the release tars. 2023-08-04 15:07:43 -07:00
Frank Halasz
1ff71ea15d update buildLOadup.yml to use new scripts/release-make-tars.sh instead of its almost but not quite equivalent make tars code 2023-08-04 12:29:40 -07:00
Frank Halasz
dfce541a18 Fix scripts/README.md 2023-08-04 12:29:40 -07:00
Frank Halasz
84391b367b First pass a complete new make-release.sh 2023-08-04 12:29:40 -07:00
Frank Halasz
346c11b0ad WIP fixing up scripts/release_medley.sh and syncing with buildLoadup.yml 2023-08-04 12:29:40 -07:00
Frank Halasz
ae2633591e Remove now obsolete sources/*.CM files; update README a bit 2023-08-04 12:29:40 -07:00
Frank Halasz
b0ec2476d5 Handle case where files already exist in LOADUP_WORKDIR - show only the newly created files - not the old ones 2023-08-04 12:29:40 -07:00
Frank Halasz
1c077d1b3d First full pass at loadups revamp. 2023-08-04 12:29:40 -07:00
Frank Halasz
ca3280f894 WIP updating loadups scripts 2023-08-04 12:29:40 -07:00
Frank Halasz
5b3cf9b7d5 Add new files left out from last commit; add RDSYS to library as part of loadups-all 2023-08-04 12:29:40 -07:00
Frank Halasz
e4c3a16ce4 Remake loadup scripts to not use MEDLEYDIR/tmp as a working dir AND cleanly separate loadup-all from loadup-db; adjust buildLoadup.yml accordingly 2023-08-04 12:29:40 -07:00
rmkaplan
41f4489e9f LLREAD uses \INCCODE.EOLC instead of \INCCODE to coerce LF and CRLF to EOL(=CR) (#1300) 2023-08-03 14:15:16 -07:00
Frank Halasz
51ef95d30f update buildLOadup.yml to use new scripts/release-make-tars.sh instead of its almost but not quite equivalent make tars code 2023-08-02 22:03:38 -07:00
Frank Halasz
0c9744455c Fix scripts/README.md 2023-08-02 16:47:04 -07:00
Frank Halasz
41608a1b27 First pass a complete new make-release.sh 2023-08-02 16:43:35 -07:00
Frank Halasz
9d26047d8c WIP fixing up scripts/release_medley.sh and syncing with buildLoadup.yml 2023-08-02 13:41:36 -07:00
Frank Halasz
48c9a82a1c Remove now obsolete sources/*.CM files; update README a bit 2023-08-02 01:02:12 -07:00
Frank Halasz
f9838ac631 Handle case where files already exist in LOADUP_WORKDIR - show only the newly created files - not the old ones 2023-08-01 23:41:39 -07:00
Frank Halasz
f514dd04c2 First full pass at loadups revamp. 2023-08-01 22:59:01 -07:00
Frank Halasz
656bb53ef6 WIP updating loadups scripts 2023-08-01 12:08:55 -07:00
Frank Halasz
c105799096 Merge pull request #1298 from Interlisp/fgh_medley.sh-sysout
Fix bug in medley.sh wherein it was ignoring sysout argument
2023-07-31 12:11:14 -07:00
Frank Halasz
d2102bfe9b Add new files left out from last commit; add RDSYS to library as part of loadups-all 2023-07-31 01:07:39 -07:00
Frank Halasz
b59e37b703 Remake loadup scripts to not use MEDLEYDIR/tmp as a working dir AND cleanly separate loadup-all from loadup-db; adjust buildLoadup.yml accordingly 2023-07-31 00:42:23 -07:00
Frank Halasz
71a2d7aac7 Fix bug in medley.sh wherein it was ignoring sysout argument 2023-07-30 13:01:17 -07:00
Larry Masinter
94269303d0 SPY.POINTERS is always T (no 2-byte atoms) (#1293)
* SPY.POINTERS is always T (no 2-byte atoms)

* Set SPY to not record entries when in \BACKGROUND-YIELD or (conditionally) backgroudn process

* Use \IGNORE.BACKGROUND as global variable, initially T; clean up declarations

* changes used DECLARE%%: incorrectly, now fixed
2023-07-30 11:35:23 -07:00
Frank Halasz
91305cc2c9 Fix whitespace typo in buildLoadup.yml (#1287) 2023-07-22 18:21:52 -07:00
rmkaplan
9b4c4a3bf7 Merge branch 'PDFSTREAM' of https://github.com/interlisp/medley into PDFSTREAM 2023-07-20 22:26:48 -07:00
rmkaplan
51d554c67e Merge branch 'master' into PDFSTREAM 2023-07-20 22:26:41 -07:00
rmkaplan
b513bb44a3 Simplify EXPORTS.ALL loading commands (#1281)
Standard FILES commands now do the right thing, no need for extra junk
2023-07-20 22:24:18 -07:00
Larry Masinter
652a9dc320 release dribbles and msfuller (#1280)
* ignore loadups/exports.all (moved)

* add fuller.database and dribble files to release
2023-07-20 21:39:15 -07:00
Larry Masinter
a678515a35 ignore loadups/exports.all (moved) (#1279) 2023-07-20 21:38:20 -07:00
rmkaplan
ca39ccf27b Merge branch 'master' into PDFSTREAM 2023-07-20 21:01:13 -07:00
Arun Welch
11ac5b7ec7 add rooms manual (scanned, no tedit found) (#1100)
* Lafite and Rooms Manuals

Add Lafite and Rooms Manuals

* Only rooms-manual, Lafite has .tedit files

---------

Co-authored-by: Larry Masinter <LMM@acm.org>
2023-07-20 20:19:23 -07:00
rmkaplan
e1cd9260b4 Merge branch 'master' into PDFSTREAM 2023-07-19 20:29:48 -07:00
Larry Masinter
9e433314d8 don't declare most interpress constants (#1193)
* rewrite INTERPRESS to not pollute pool of CL:CONSTANTP variables in common use

* update some functions that are (inappropriately) tied to INTERPRESS

* no change to SKETCHOPS needed

* still need one \IPC 'constant' from INTERPRESS

* changes to WINDOW GLOBALVARS another time

* recompile XXFILL

* fix a few other messes exposed
2023-07-19 19:11:17 -07:00
rmkaplan
b0aa518a41 Merge branch 'master' into PDFSTREAM 2023-07-19 14:57:50 -07:00
rmkaplan
9e0bfabc52 Merge branch 'master' into PDFSTREAM 2023-07-19 12:58:02 -07:00
rmkaplan
feff0cefc0 SEDIT-WINDOW: Shift-title selection conforms to standard mouse conventions (#1272)
In previous commit/PR #1256 the bksysbuf wasn't waiting for the copy/shift key to come up.
2023-07-19 12:53:46 -07:00
rmkaplan
a258a5e9f0 FILEWATCH: Shift select names, plus show PSEUDOFILENAMES (#1276)
* FILEWATCH: Shift select names, plus show PSEUDOFILENAMES

* FILEWATCH:  Copied file is a string, not an atom

Modern systems tend to allow spaces and other funky characters in filenames.  COPYINSERT doesn't automatically escape.  But generally we are moving towards strings.  (Shift-select from FILEBROWSER has the same problem)
2023-07-19 12:53:04 -07:00
rmkaplan
9529c35631 FILEBROWSER: FB.COPYFN uses COPYINSERT instead of BKSYSBUF (#1277)
So shift-selecting produces strings for file names with funky characters
2023-07-19 12:52:43 -07:00
rmkaplan
a111907bf4 GATHEREXPORTS uses standard MAKEFILE machinery (#1278)
* GATHEREXPORTS uses standard MAKEFILE machinery

So that it gets all the normal file properties (FILE, FILEDATES) when it is LOADed.  Also nothing special about setting up its reader environment

* GATHEREXPORTS again:  PRETTYDEF likes only litatom filenames

(which probably should be fixed)
2023-07-19 12:01:38 -07:00
Larry Masinter
c797d919f1 Merge pull request #1274 from Interlisp/fgh_loadups
Move exports.all to the loadups directory; add a LOADUPSDIRECTORIES to MEDLEY-INIT-VARS
2023-07-19 05:37:48 -07:00
Frank Halasz
03e59d15c8 Adding (FROM LOADUPS) whereever EXPORTS.ALL is loaded - changing from LOAD to FILESLOAD where necessary. 2023-07-18 13:39:49 -07:00
rmkaplan
ebff4f7268 PDFSTREAM: Fix logic around closing the postscript sub-stream 2023-07-17 23:04:38 -07:00
Frank Halasz
08880d550e Move exports.all to the loadups directory; add a LOADUPSDIRECTORIES to MEDLEY-INIT-VARS 2023-07-17 16:38:10 -07:00
Frank Halasz
e4b6f69e8e Merge pull request #1269 from Interlisp/fgh_ipfonts
Add ipfonts to release tars
2023-07-10 10:42:07 -07:00
Frank Halasz
52499052e8 Add ipfonts to release tars 2023-07-08 22:29:49 -07:00
Larry Masinter
b5f71670cb Merge branch 'add-bigbitmaps' 2023-07-08 13:17:18 -07:00
Larry Masinter
d21dfe1061 Merge pull request #1256 from Interlisp/Minor-updates-to-LLREAD-and-SEDIT
Minor updates to llread and sedit
2023-07-07 12:30:52 -07:00
Bill Stumbo
efae6d2911 Template for capturing 'What People are Saying' suggestions. (#1261) 2023-07-07 12:27:42 -07:00
Larry Masinter
2aae0e7bb6 put back in IRM.SMART.LOOKUP needed for helpsys from menu (#1251) 2023-07-07 12:27:06 -07:00
rmkaplan
02a6d7ad1b Updated Tedit files for a few Lispusers packages--formatting and typos (#1246)
* Updated Tedit files for a few Lispusers packages--formatting and typos

* Format OBJECTWINDOW.TEDIT, delete WHEELSCROLL.TXT

* Create CLIPBOARD.TEDIT

Small (formatted) documentation file
2023-07-07 12:25:18 -07:00
rmkaplan
4826035054 CALENDAR, AOFD: Calendar had a Y2K problem, AOFD did not allow string-streams to reopen (#1204)
* CALENDAR, AOFD:  Calendar had a Y2K problem, AOFD did not allow string-streams to reopen

There still may be some Y2K issues, I fixed the obvious ones, including how it interacted with Tedit

* try recompiling

---------

Co-authored-by: Larry Masinter <LMM@acm.org>
2023-07-07 12:18:46 -07:00
Larry Masinter
6c6856efb9 (PATHNAME NIL) now errors; don't try to add it to whereis list (#1188) 2023-07-07 11:41:56 -07:00
Larry Masinter
871bbb735f Add a few inits to SYSEDIT, obsoleting ABC (#1184) 2023-07-07 11:30:42 -07:00
Larry Masinter
08852f7b55 Add TEDIT files for many Library packages (#1181)
* WHERE-IS library doc

* Gather keyboard files, add VIRTUAL.TEDIT

* add UNIXCOMM.TEDIT

* rest of TEdit library files

* save table of contents index for reworking

* Don't move around VIRTUALKEYBOARDS files; will move in separate commit

* Add MATMULT from Envos/Medley
2023-07-07 11:25:17 -07:00
Bill Stumbo
4362618ea0 Add documentation template (#1257)
Copied from Interlisp .github repo.
2023-07-06 08:27:05 -07:00
Larry Masinter
1659c452b5 remove POSTLOADUP from fileset... was removed (#1218) 2023-07-03 16:37:59 -07:00
Larry Masinter
f5a8888aff Add .tedit files which correspond to Medley release notes (#1124) 2023-07-03 12:43:19 -07:00
rmkaplan
c281728c65 PDFSTREAM: fix convert template 2023-07-02 18:25:41 -07:00
Larry Masinter
4fed40bb85 Add BROWSERMAX to limit depth of paths graph (#1158)
* Add BROWSERMAX to limit depth of paths graph

* Update Browser to use left-button menu popup to select action
2023-06-30 16:56:54 -07:00
Larry Masinter
3cca8c4940 Fix places where rename of record LINE to XXLINE was incomplete (#1212) 2023-06-30 16:42:07 -07:00
rmkaplan
c4554894b3 PDFSTREAM: define PDF fonts as POSTSCRIPT fonts 2023-06-25 17:16:27 -07:00
rmkaplan
58196b4011 HARDCOPY: fixes printer menu 2023-06-24 15:49:31 -07:00
rmkaplan
f6a9b88b34 POSTSCRIPTSTREAM: Adds extra field to postscript data for PDFSTREAM filename 2023-06-24 15:49:18 -07:00
rmkaplan
bad19ab45f PDFSTREAM: first implementation
Makes PS file, then applies separate utility (if available) to convert PS to PDF
2023-06-24 15:48:21 -07:00
rmkaplan
d6a4b3bf88 SEDIT-WINDOW: use COPYINSERT instead of BKSYSBUF for shift-selection from titlebar
Gets the package
2023-06-20 21:12:13 -07:00
Larry Masinter
b493d98aeb fix GATHER-INFO for compiled code -- globalvars vs.bounc (#1219) 2023-06-18 21:24:23 -07:00
Larry Masinter
beb4a77195 Recompile PRETTY (#1220) 2023-06-17 21:40:34 -07:00
rmkaplan
d43846b4f4 SEDIT: SELECTC formatted like SELECTQ, copy-select from the titlebar
Fixes long-standing irritants (for me at least).  SELECTC is highlighted and format like SELECTQ and SELCHARQ.  And left-button in the title bar with the copy (shift) key down does a bksysbuf of the thing being edited.  The menu is available under the middle button, moving and reshaping still provided by modernize with the shift not down.
2023-06-17 20:18:17 -07:00
rmkaplan
28c673f296 LLREAD: CHARACTERNAMES saved with ALISTS instead of VARS commands
Also CHARACTERSETNAMES.  So that initial values don't smash or pick up the values that might otherwise be active in a development environment.
2023-06-17 20:14:00 -07:00
Frank Halasz
e067e02dde Add on:schedule to buildRelease workflow so that Medley builds happen automatically on Mondays at 1am (#1225)
* Add an On:schedule to the build release and docker workflow to build a new release every Monday at 1am

* Add an On:schedule to the build release and docker workflow to build a new release every Monday at 9am UTC (1am or 2am Pacfic time, depending on daylight savings
2023-06-11 13:40:38 -07:00
Larry Masinter
1af56ddaa2 Add .tedit files for Lafite manual and release notes -- PDFs on Google Drive (#1209)
* Add .tedit files for Lafite manual and release notes -- PDFs on Google Drive

* use 'docs' for subfolder name; wliminate dup

* Remove duplicate LAFITEMANUAL-GLOSSARY-CUSTOMER.TEDIT

---------

Co-authored-by: Nick Briggs <nicholas.h.briggs@gmail.com>
2023-05-16 19:30:15 -07:00
Nick Briggs
16dd66a016 Pass --display/-d argument as -display not by setting DISPLAY env variable. (#1213) 2023-05-16 19:28:21 -07:00
Larry Masinter
81b74be043 Another pass on CLOSEALL simplify by calling (OPENP) (#1182)
* Another pass on CLOSEALL simplify by calling (OPENP)

* Put back in checks for CLOSEALL IOMODE USERVISIBLE

* \TERM.OFD and \LINEBUF.OFD are bound, no global

* getting rid of \OPENFILES everywhere

* one more \OPENFILES
2023-05-16 19:02:43 -07:00
Larry Masinter
f8a5d0fbe5 Rewrite code for deciding 'Good morning', 'Good evening' 'You're working late' Y2K (#1208) 2023-05-16 19:00:49 -07:00
Larry Masinter
3e0ec62d27 Prettyfileindex knows about :EDIT-BY (#1205) 2023-05-16 10:06:03 -07:00
Larry Masinter
654675661f Do not set keyboard type without knowing better (#1211) 2023-05-16 10:05:31 -07:00
Larry Masinter
3cb051ea7b Allow (CLOSALL) to work after all (#1164) 2023-04-19 19:47:11 -07:00
Frank Halasz
8bb283e0c4 Merge pull request #1154 from Interlisp/tweak-init2
Tweak INIT: HELPTIME 1 for more break windows; extend font profile
2023-04-19 18:03:08 -07:00
Frank Halasz
6fae5c14e9 Merge branch 'master' into tweak-init2 2023-04-19 17:54:43 -07:00
Frank Halasz
c58ef4ee56 Merge pull request #1161 from Interlisp/minor-usage-tweaks
minor usage tweaks
2023-04-19 17:53:57 -07:00
Frank Halasz
730fc5b678 Merge pull request #1153 from Interlisp/who-line-only
tweak WHO-LINE
2023-04-19 17:46:25 -07:00
Frank Halasz
8d54603329 Merge branch 'master' into who-line-only 2023-04-19 17:45:29 -07:00
Larry Masinter
21ceff5ad9 add internal/MAINTAIN.TXT to explain what MAINTAIN is 2023-04-18 15:21:35 -07:00
Larry Masinter
5a07e6c266 SYSEDIT also sets copyright flag 2023-04-18 15:16:07 -07:00
Larry Masinter
4a09d3a027 Init file set HELPTIME to 1 more break windows; copyright NEVER 2023-04-18 15:15:00 -07:00
Larry Masinter
691563024b Yet another Logo with parameters for substrings. WINDOW.BITMAP move to Window (#1151)
* Yet another Logo with parameters for substrings. WINDOW.BITMAP move to Window

* Added LOGOW.DFASL, so rm LOGOW.LCOM

* LOGOW: Add local variables for most of the hard-coded constants to make it easier to experiment with adjusting said constants.  Adding kerning for substring1.

* LOGOW: Add more kerning options.  Cretaed separate kerned.prin3 function.

* Set default params to Option 8.  Added some top and right margins when placing LOGOW in screen so it doesn't look so squished into the corner.

---------

Co-authored-by: Frank Halasz <frank@halasz.org>
2023-04-18 14:57:41 -07:00
Larry Masinter
0f49e248d3 Tweak INIT: HELPTIME 1 for more break windows; extend font profile 2023-04-13 09:56:16 -07:00
Larry Masinter
54782f5b21 tweak to WHO-LINE: hostname (don't use pup), change dir (don't offer directories that don't exist), package (sort so likely choices are at top) 2023-04-12 22:26:23 -07:00
rmkaplan
d34522d769 GITNFS: Doesn't error if clonepath defaults but is not required (#1123)
If CLONEPATH is NIL, no error if the clone can't be found, just prints a note.  If CLONEPATH is T, will error.
2023-03-30 09:59:27 -07:00
Larry Masinter
c501dc82fb add :EDIT-BY initials to FILECREATED (#1074) 2023-03-24 21:52:44 -07:00
Bill Stumbo
c256a8f411 Merge pull request #1110 from neauoire/patch-1
Changed wiki link to new docs url
2023-03-19 20:44:31 -04:00
Devine Lu Linvega
69dbe43d87 Update README.md 2023-03-19 16:45:17 -07:00
Devine Lu Linvega
989ec5b0b5 Changed wiki link to new docs url 2023-03-19 09:40:25 -07:00
Larry Masinter
fb1d14dfeb once more 2023-03-01 07:53:44 -08:00
Larry Masinter
6d86932d35 remake ADISPLY 2023-02-28 06:50:17 -08:00
Larry Masinter
9ada6de6b9 Revert changes in \DRAWLINE.DISPLAY and add BIGBITMAPS to loadup & exports 2023-02-28 05:48:41 -08:00
rmkaplan
12b5e90727 GITFNS: Better default directory-finding, better pseudohosts (#1064) (#1065)
* GITFNS:  Better default directory-finding, better pseudohosts  (addresses #1064)

Also updated documentation

* GITFNS:  better error message in GIT-MAKE-PROJECT
2023-02-18 17:19:29 -08:00
965 changed files with 105569 additions and 525798 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.

18
.github/ISSUE_TEMPLATE/documentation.md vendored Normal file
View File

@@ -0,0 +1,18 @@
---
name: Documentation problem
about: Problems with this web site?
title: ''
labels: ''
assignees: ''
---
**Errors happen. Please tell us the URL**
**What does it say?**
**What should it say?**
**Screen shot**

View File

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

View File

@@ -0,0 +1,32 @@
name: "New entry for **What People Are Saying**"
description: "Suggest a new entry for the **What People are Saying** page"
title: "What People are Saying suggestion"
body:
- type: dropdown
id: contentType
attributes:
label: "What type of entry?"
options:
- Blog
- Tweet
- Email
- Other
validations:
required: true
- type: input
id: entryLink
attributes:
label: Link to entry
description: "What is the link to the item we should add to the **What People are Saying** page?"
validations:
required: true
- type: textarea
id: additionalInformation
attributes:
label: Additional information
description: "Use this space to supply any addiitonal information on the suggested item."
validations:
required: false
- type: markdown
attributes:
value: "## Thank you for your suggestion!"

View File

@@ -7,7 +7,7 @@
#
# ******************************************************************************
FROM ubuntu:22.10
FROM ubuntu:22.04
ARG TARGETPLATFORM
# Handle ARGs, ENV variables, and LABELs
@@ -31,6 +31,12 @@ ENV LANG=C.UTF-8
# Copy over the release deb files
ADD ./*.deb /tmp
# Get tzdata setup ahead of time
RUN apt-get update; \
ln -fs /usr/share/zoneinfo/America/Los_Angeles /etc/localtime; \
DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata; \
dpkg-reconfigure --frontend noninteractive tzdata
# Install Medley/Maiko and add tightvnc server and xclip to the image
RUN apt-get update \
&& apt-get install -y apt-utils \
@@ -51,8 +57,8 @@ RUN apt-get update \
echo "x86_64"; \
fi \
) \
&& deb="medley-full-${MEDLEY_RELEASE#medley-}" \
&& deb=${deb}_${MAIKO_RELEASE#maiko-}-linux-${p}.deb \
&& deb="medley-full-linux-${p}-${MEDLEY_RELEASE#medley-}" \
&& deb=${deb}_${MAIKO_RELEASE#maiko-}.deb \
&& apt-get install -y /tmp/${deb} \
&& chown --recursive root:root /usr/local/interlisp \
&& (if [ -n "$(which unminimize)" ]; then (yes | unminimize); fi)

View File

@@ -20,7 +20,7 @@ name: 'Build/Push Docker Image'
# Run this workflow on ...
on:
workflow_dispatch:
inputs:
inputs:
draft:
description: "Mark this as a draft release"
type: choice
@@ -33,7 +33,7 @@ on:
options:
- 'false'
- 'true'
workflow_call:
outputs:
successful:
@@ -59,35 +59,10 @@ on:
defaults:
run:
shell: bash
jobs:
######################################################################################
# Regularize the inputs so they can be referenced the same way whether they are
# the result of a workflow_dispatch or a workflow_call
inputs:
runs-on: ubuntu-latest
outputs:
draft: ${{ steps.one.outputs.draft }}
force: ${{ steps.one.outputs.force }}
steps:
- id: one
run: >
if [ '${{ toJSON(inputs) }}' = 'null' ];
then
echo "workflow_dispatch";
echo "draft=${{ github.event.inputs.draft }}" >> $GITHUB_OUTPUT;
echo "force=${{ github.event.inputs.force }}" >> $GITHUB_OUTPUT;
else
echo "workflow_call";
echo "draft=${{ inputs.draft }}" >> $GITHUB_OUTPUT;
echo "force=${{ inputs.force }}" >> $GITHUB_OUTPUT;
fi
######################################################################################
@@ -95,22 +70,21 @@ jobs:
# based on the latest commit to the repo
sentry:
needs: inputs
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
outputs:
release_not_built: ${{ steps.check.outputs.release_not_built }}
steps:
steps:
# Checkout the actions for this repo owner
- name: Checkout Actions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/.github
path: ./Actions_${{ github.sha }}
- run: mv ./Actions_${{ github.sha }}/actions ../actions && rm -rf ./Actions_${{ github.sha }}
# Check if build already run for this commit
- name: Build already completed?
- name: Build already completed?
id: check
continue-on-error: true
uses: ./../actions/check-sentry-action
@@ -125,24 +99,24 @@ jobs:
build_and-push:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
needs: [inputs, sentry]
needs: [sentry]
if: |
needs.sentry.outputs.release_not_built == 'true'
|| needs.inputs.outputs.force == 'true'
|| inputs.force == 'true'
steps:
# Checkout latest commit
- name: Checkout Medley
uses: actions/checkout@v3
uses: actions/checkout@v4
# Find latest release (draft or normal)
# and download its assets
- name: Download linux debs from latest (draft) release
run: |
tag=""
if [ "${{ needs.inputs.outputs.draft }}" = "true" ];
if [ "${{ inputs.draft }}" = "true" ];
then
tag=$(gh release list | grep Draft | head -n 1 | awk '{ print $3 }')
fi
@@ -160,7 +134,7 @@ jobs:
- name: Get info about Miako and Medley releases
id: release_info
run: |
regex="^[^0-9]*\([^_]*\)_\([^-]*-[^-]*\)-\([^-]*\)-\([^.]*\).*\$"
regex="^medley-full-[^-]*-[^-]*-\([^_]*\)_\(.*\).deb\$"
ls -1 release_debs | head -n 1 > debname.tmp
medley_release="medley-$(sed -e "s/${regex}/\1/" debname.tmp)"
maiko_release="maiko-$(sed -e "s/${regex}/\2/" debname.tmp)"
@@ -168,6 +142,8 @@ jobs:
echo "MEDLEY_RELEASE=${medley_release}" >> ${GITHUB_ENV}
echo "MAIKO_RELEASE=${maiko_release}" >> ${GITHUB_ENV}
# regex="^[^0-9]*\([^_]*\)_\([^-]*-[^-]*\)-\([^-]*\)-\([^.]*\).*\$"
# Set repo env variables
- name: Set repo/docker env variables
id: repo_env
@@ -175,11 +151,11 @@ jobs:
repo_name="${GITHUB_REPOSITORY#*/}"
docker_namespace="$(echo "${{ github.repository_owner }}" | tr '[:upper:]' '[:lower:]')"
docker_image="${docker_namespace}/${repo_name}"
if [ "${{ needs.inputs.outputs.draft }}" = "false" ];
then
if [ "${{ inputs.draft }}" = "false" ];
then
docker_tags="${docker_image}:latest,${docker_image}:${MEDLEY_RELEASE#*-}_${MAIKO_RELEASE#*-}"
platforms="linux/amd64,linux/arm64"
else
else
docker_tags="${docker_image}:draft"
platforms="linux/amd64"
fi
@@ -193,18 +169,18 @@ jobs:
# Setup the Docker Machine Emulation environment.
- name: Set up QEMU
uses: docker/setup-qemu-action@master
uses: docker/setup-qemu-action@v3
with:
platforms: linux/amd64,linux/arm64,linux/arm/v7
# Setup the Docker Buildx funtion
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@master
uses: docker/setup-buildx-action@v3
# Login into DockerHub - required to store the created image
- name: Login to DockerHub
uses: docker/login-action@v2
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
@@ -213,7 +189,7 @@ jobs:
# checked out and the release tars just downloaded.
# Push the result to Docker Hub
- name: Build Docker Image for Push to Docker Hub
uses: docker/build-push-action@v3
uses: docker/build-push-action@v5
with:
builder: ${{ steps.buildx.outputs.name }}
build-args: |
@@ -235,17 +211,17 @@ jobs:
complete:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
outputs:
build_successful: ${{ steps.output.outputs.build_successful }}
needs: [inputs, sentry, build_and-push]
needs: [sentry, build_and-push]
steps:
steps:
# Checkout the actions for this repo owner
- name: Checkout Actions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/.github
path: ./Actions_${{ github.sha }}
@@ -257,10 +233,10 @@ jobs:
uses: ./../actions/set-sentry-action
with:
tag: "docker"
- name: Output
id: output
run: |
echo "build_successful='true'" >> ${GITHUB_OUTPUT}
######################################################################################

View File

@@ -56,90 +56,66 @@ on:
defaults:
run:
shell: bash
jobs:
######################################################################################
# Regularize the inputs so they can be referenced the same way whether they are
# the result of a workflow_dispatch or a workflow_call
inputs:
runs-on: ubuntu-latest
outputs:
draft: ${{ steps.one.outputs.draft }}
force: ${{ steps.one.outputs.force }}
steps:
- id: one
run: >
if [ '${{ toJSON(inputs) }}' = 'null' ];
then
echo "workflow_dispatch";
echo "draft=${{ github.event.inputs.draft }}" >> $GITHUB_OUTPUT;
echo "force=${{ github.event.inputs.force }}" >> $GITHUB_OUTPUT;
else
echo "workflow_call";
echo "draft=${{ inputs.draft }}" >> $GITHUB_OUTPUT;
echo "force=${{ inputs.force }}" >> $GITHUB_OUTPUT;
fi
######################################################################################
# JOB: sentry #######################################################################
# Use sentry-action to determine if this release has already been built
# based on the latest commit to the repo
sentry:
needs: inputs
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
outputs:
release_not_built: ${{ steps.check.outputs.release_not_built }}
steps:
steps:
# Checkout the actions for this repo owner
- name: Checkout Actions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/.github
path: ./Actions_${{ github.sha }}
- run: mv ./Actions_${{ github.sha }}/actions ../actions && rm -rf ./Actions_${{ github.sha }}
# Check if build already run for this commit
- name: Build already completed?
- name: Build already completed?
id: check
continue-on-error: true
uses: ./../actions/check-sentry-action
with:
tag: "loadup"
######################################################################################
# JOB: loadup #######################################################################
#
# Do the loadup
# Do the loadup and push to release on github
#
loadup:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
outputs:
combined_release_tag: ${{ steps.job_outputs.outputs.COMBINED_RELEASE_TAG }}
medley_release_tag: ${{ steps.job_outputs.outputs.MEDLEY_RELEASE_TAG }}
medley_short_release_tag: ${{ steps.job_outputs.outputs.MEDLEY_SHORT_RELEASE_TAG }}
debs_filename_base: ${{ steps.debs.outputs.DEBS_FILENAME_BASE }}
maiko_release_tag: ${{ steps.job_outputs.outputs.MAIKO_RELEASE_TAG }}
artifacts_filename_template: ${{ steps.job_outputs.outputs.ARTIFACTS_FILENAME_TEMPLATE }}
release_url: ${{ steps.push.outputs.html_url }}
needs: [inputs, sentry]
needs: [sentry]
if: |
needs.sentry.outputs.release_not_built == 'true'
|| needs.inputs.outputs.force == 'true'
|| inputs.force == 'true'
steps:
# Checkout the actions for this repo owner
- name: Checkout Actions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/.github
path: ./Actions_${{ github.sha }}
@@ -147,31 +123,43 @@ jobs:
# Checkout latest commit
- name: Checkout Medley
uses: actions/checkout@v3
uses: actions/checkout@v4
# Setup release tag
- name: Setup Release Tag
id: tag
uses: ./../actions/release-tag-action
# Get Maiko release information, retrieves the name of the latest
# Get Maiko release information, retrieves the name of the latest (draft)
# release. Used to download the correct Maiko release
- name: Get Maiko Release Information
# Find latest release (draft or normal)
- name: Get maiko release information
id: maiko
uses: abatilo/release-info-action@v1.3.2
with:
owner: ${{ github.repository_owner }}
repo: maiko
run: |
tag=""
if [ "${{ inputs.draft }}" = "true" ];
then
gh release list --repo ${{ github.repository_owner }}/maiko | grep Draft >/tmp/releases-$$
if [ $? -eq 0 ];
then
tag=$(head -n 1 /tmp/releases-$$ | awk '{ print $3 }')
fi
fi
if [ -z "${tag}" ];
then
tag=$(gh release list --repo ${{ github.repository_owner }}/maiko | grep Latest | head -n 1 | awk '{ print $3 }')
fi
echo "maiko_tag=${tag}" >> ${GITHUB_OUTPUT}
env:
GITHUB_TOKEN: ${{ secrets.MAIKO_TOKEN }}
# Setup environment variables & establish job outputs
- name: Setup Environment Variables
run: |
echo "build_time=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" >> ${GITHUB_OUTPUT}
echo "TARBALL_DIR=installers/deb/tmp/tarballs" >>${GITHUB_ENV}
echo "DEBS_DIR=installers/deb/debs" >>${GITHUB_ENV}
echo "TARS_DIR=installers/deb/tars" >>${GITHUB_ENV}
echo "TARBALL_DIR=/tmp/tarballs" >>${GITHUB_ENV}
echo "MEDLEY_RELEASE_TAG=${RELEASE_TAG}" >>${GITHUB_ENV}
echo "MAIKO_RELEASE_TAG=${{ steps.maiko.outputs.latest_tag }}" >>${GITHUB_ENV}
echo "MAIKO_RELEASE_TAG=${{ steps.maiko.outputs.maiko_tag }}" >>${GITHUB_ENV}
echo "ARTIFACTS_FILENAME_TEMPLATE=medley-full-@@PLATFORM@@-@@ARCH@@-@@MEDLEY.RELEASE@@_@@MAIKO.RELEASE@@" >>${GITHUB_ENV}
- name: More Environment Variables
run: |
echo "MEDLEY_SHORT_RELEASE_TAG=${MEDLEY_RELEASE_TAG#medley-}" >>${GITHUB_ENV}
@@ -182,39 +170,38 @@ jobs:
- name: Establish job outputs
id: job_outputs
run: |
echo "COMBINED_RELEASE_TAG=${COMBINED_RELEASE_TAG}" >> $GITHUB_OUTPUT;
echo "MEDLEY_RELEASE_TAG=${MEDLEY_RELEASE_TAG}" >> $GITHUB_OUTPUT;
echo "MEDLEY_SHORT_RELEASE_TAG=${MEDLEY_SHORT_RELEASE_TAG}" >> $GITHUB_OUTPUT;
echo "COMBINED_RELEASE_TAG=${COMBINED_RELEASE_TAG}" >> ${GITHUB_OUTPUT}
echo "MEDLEY_RELEASE_TAG=${MEDLEY_RELEASE_TAG}" >> ${GITHUB_OUTPUT}
echo "MEDLEY_SHORT_RELEASE_TAG=${MEDLEY_SHORT_RELEASE_TAG}" >> ${GITHUB_OUTPUT}
echo "MAIKO_RELEASE_TAG=${MAIKO_RELEASE_TAG}" >> $GITHUB_OUTPUT;
echo "ARTIFACTS_FILENAME_TEMPLATE=${ARTIFACTS_FILENAME_TEMPLATE}" >> ${GITHUB_OUTPUT}
# Setup some needed dirs in workspace
- name: Create work dirs
run: mkdir -p ${TARBALL_DIR}
# Download Maiko Release Assets
# Download Maiko Release Assets and untar it
- name: Download Release Assets
uses: robinraju/release-downloader@v1.6
with:
repository: ${{ github.repository_owner }}/maiko
token: ${{ secrets.GITHUB_TOKEN }}
latest: true
out-file-path: ${{ env.TARBALL_DIR }}
fileName: "${{ env.MAIKO_RELEASE_TAG }}-linux.*.tgz"
- name: Untar Maiko Release for use in loadup
run: |
tar -xzf "${TARBALL_DIR}/${{ env.MAIKO_RELEASE_TAG }}-linux.x86_64.tgz"
gh release download ${MAIKO_RELEASE_TAG} \
-D ${TARBALL_DIR} \
--repo ${{ github.repository_owner }}/maiko \
-p '*.tgz'
tar -xzf "${TARBALL_DIR}/${MAIKO_RELEASE_TAG}-linux.x86_64.tgz"
env:
GITHUB_TOKEN: ${{ secrets.MAIKO_TOKEN }}
# Checkout Notecards and tar it in the tarballsdir
- name: Checkout Notecards
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/notecards
path: ./notecards
- run: mv ./notecards ../notecards
- name: Tar notecards into tarball dir
run: |
cd ..
tar cfz medley/${TARBALL_DIR}/notecards.tgz notecards
mv ./notecards ../notecards
cd ../notecards
git archive --format=tgz --output="${TARBALL_DIR}/notecards.tgz" --prefix=notecards/ main
# Install vnc
- name: Install vnc
@@ -224,96 +211,214 @@ jobs:
run: |
Xvnc -geometry 1280x720 :0 &
export DISPLAY=":0"
PATH="$PWD/maiko:$PATH"
scripts/loadup-all.sh -apps
- name: Build loadups release tar
run: |
cd ..
mkdir -p medley/${TARBALL_DIR}
tar cfz medley/${TARBALL_DIR}/${MEDLEY_RELEASE_TAG}-loadups.tgz \
medley/loadups/lisp.sysout \
medley/loadups/full.sysout \
medley/loadups/apps.sysout \
medley/loadups/whereis.hash \
medley/library/exports.all
- name: Build runtime release tar
run: |
cd ..
mkdir -p medley/${TARBALL_DIR}
tar cfz medley/${TARBALL_DIR}/${MEDLEY_RELEASE_TAG}-runtime.tgz \
--exclude "*~" --exclude "*#*" \
--exclude exports.all \
medley/clos \
medley/docs/dinfo \
medley/docs/man-page/medley.1.gz \
medley/doctools \
medley/greetfiles \
medley/rooms \
medley/medley \
medley/run-medley \
medley/scripts \
medley/fonts/displayfonts \
medley/fonts/altofonts \
medley/fonts/adobe \
medley/fonts/postscriptfonts \
medley/library \
medley/lispusers \
medley/sources \
medley/internal
scripts/loadup-db.sh
- name: Build release tars
run: |
scripts/release-make-tars.sh "${MEDLEY_RELEASE_TAG}"
mv releases/"${MEDLEY_SHORT_RELEASE_TAG}"/*.tgz "${TARBALL_DIR}"
# Push the release up to github releases
- name: Delete existing release with same tag (if any)
uses: cb80/delrel@latest
with:
tag: ${{ env.MEDLEY_RELEASE_TAG }}
continue-on-error: true
- name: Push the release
id: push
uses: ncipollo/release-action@v1
with:
allowUpdates: true
artifacts:
# ${{ env.TARBALL_DIR }}/notecards.tgz,
${{ env.TARBALL_DIR }}/${{ env.MEDLEY_RELEASE_TAG }}-loadups.tgz,
${{ env.TARBALL_DIR }}/${{ env.MEDLEY_RELEASE_TAG }}-runtime.tgz
tag: ${{ env.MEDLEY_RELEASE_TAG }}
draft: ${{ inputs.draft }}
prerelease: false
generateReleaseNotes: true
token: ${{ secrets.GITHUB_TOKEN }}
# Save the tarball directory for subsequent jobs
- name: Save tarballs
uses: actions/upload-artifact@v4
with:
name: tarballs
path: ${{ env.TARBALL_DIR }}
if-no-files-found: error
# JOB: linux_installer ##############################################################
#
# Create the linux installers (.deb and .tgz) and push to release on github
#
linux_installer:
runs-on: ubuntu-24.04
needs: [sentry, loadup]
if: |
needs.sentry.outputs.release_not_built == 'true'
|| inputs.force == 'true'
steps:
# Checkout latest commit
- name: Checkout Medley
uses: actions/checkout@v4
# Environment variables
- name: Environment variables
run: |
echo "DEBS_DIR=installers/deb/debs" >>${GITHUB_ENV}
echo "TARS_DIR=installers/deb/tars" >>${GITHUB_ENV}
echo "TARBALL_DIR=installers/deb/tmp/tarballs" >>${GITHUB_ENV}
echo "MEDLEY_RELEASE_TAG=${{ needs.loadup.outputs.medley_release_tag }}" \
>>${GITHUB_ENV}
echo "ARTIFACTS_FILENAME_TEMPLATE=${{ needs.loadup.outputs.artifacts_filename_template }}" >>${GITHUB_ENV}
# Create taball dir
- run: mkdir -p ${TARBALL_DIR}
# Get the tarballs
- name: Get tarballs
uses: actions/download-artifact@v4
with:
name: tarballs
path: ${{ env.TARBALL_DIR }}
# Build the deb files as well as the tgz files
- name: Build .deb files for 3 architectures
id: debs
run: |
cd installers/deb
debs_filename_base=$(./build_deb.sh)
echo "DEBS_FILENAME_BASE=${debs_filename_base}" >> $GITHUB_ENV;
echo "DEBS_FILENAME_BASE=${debs_filename_base}" >> $GITHUB_OUTPUT;
# Push the release up to github releases
- name: Delete existing release with same tag (if any)
uses: cb80/delrel@latest
with:
tag: ${{ env.MEDLEY_RELEASE_TAG }}
continue-on-error: true
./build_deb.sh
# Push the debs and tgz up to github releases
- name: Push the release
id: push_release
uses: ncipollo/release-action@v1
with:
with:
allowUpdates: true
artifacts:
${{ env.TARBALL_DIR }}/${{ env.MEDLEY_RELEASE_TAG }}-loadups.tgz,
${{ env.TARBALL_DIR }}/${{ env.MEDLEY_RELEASE_TAG }}-runtime.tgz,
${{ env.DEBS_DIR }}/*.deb,
${{ env.TARS_DIR }}/*.tgz
tag: ${{ env.MEDLEY_RELEASE_TAG }}
draft: ${{ needs.inputs.outputs.draft }}
prerelease: false
generateReleaseNotes: true
token: ${{ secrets.GITHUB_TOKEN }}
omitBodyDuringUpdate: true
omitDraftDuringUpdate: true
omitNameDuringUpdate: true
omitPrereleaseDuringUpdate: true
- name: Rename medley tar for the x86_64 platform
run: |
cd ${{ env.TARS_DIR }}
mv medley-full-linux-x86_64-*.tgz medley.tgz
- name: Save medley tar for use in cygwin installers
uses: actions/upload-artifact@v4
with:
name: medley-tar
path: |
${{ env.TARS_DIR }}/medley.tgz
# JOB: macos_installer ##############################################################
#
# Create the macos installers (.dmg and .zip) and push to release on github
#
macos_installer:
runs-on: macos-14
needs: [sentry, loadup]
if: |
needs.sentry.outputs.release_not_built == 'true'
|| inputs.force == 'true'
# if: false
defaults:
run:
shell: bash
steps:
# Checkout latest commit
- name: Checkout Medley
uses: actions/checkout@v4
# Environment variables
- name: Environment variables
run: |
MACOS_DIR=installers/macos
echo "MACOS_DIR=${MACOS_DIR}" >>${GITHUB_ENV}
echo "ARTIFACTS_DIR=${MACOS_DIR}/artifacts" >>${GITHUB_ENV}
echo "TARBALL_DIR=${MACOS_DIR}/tmp/tarballs" >>${GITHUB_ENV}
echo "MEDLEY_RELEASE_TAG=${{ needs.loadup.outputs.medley_release_tag }}" >>${GITHUB_ENV}
echo "ARTIFACTS_FILENAME_TEMPLATE=${{ needs.loadup.outputs.artifacts_filename_template }}" >>${GITHUB_ENV}
# Create tarball dir
- run: mkdir -p ${TARBALL_DIR}
# Get the tarballs
- name: Get tarballs
uses: actions/download-artifact@v4
with:
name: tarballs
path: ${{ env.TARBALL_DIR }}
# Build the .dmg and .zip files
- name: Build .dmg & .zip files
id: dmg-zip
run: |
cd ${MACOS_DIR}
./build_artifacts.sh
# Push the .dmg and .zip up to github releases
- name: Push the release
id: push_release
uses: ncipollo/release-action@v1
with:
allowUpdates: true
artifacts:
# 2023-07-20 not yet building dmg -- ${{ env.ARTIFACTS_DIR }}/*.dmg,
${{ env.ARTIFACTS_DIR }}/*.zip
tag: ${{ env.MEDLEY_RELEASE_TAG }}
token: ${{ secrets.GITHUB_TOKEN }}
omitBodyDuringUpdate: true
omitDraftDuringUpdate: true
omitNameDuringUpdate: true
omitPrereleaseDuringUpdate: true
# JOB: cygwin_installer #############################################################
#
# Create the Windows installer, push it up to the release on github and
# update the downloads page on OIO
#
windows_installer:
cygwin_installer:
runs-on: windows-latest
runs-on: windows-2022
needs: [inputs, sentry, loadup]
needs: [sentry, loadup, linux_installer]
if: |
needs.sentry.outputs.release_not_built == 'true'
|| needs.inputs.outputs.force == 'true'
|| inputs.force == 'true'
outputs:
cygwin_installer: ${{ steps.compile_iss.outputs.CYGWIN_INSTALLER }}
steps:
# Checkout latest commit
- name: Checkout Medley
uses: actions/checkout@v3
uses: actions/checkout@v4
# Store the values output from loadup job as environment variables
- name: Environment Variables
@@ -325,32 +430,67 @@ jobs:
echo "MEDLEY_RELEASE_TAG=$mrt" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
$msrt="${{ needs.loadup.outputs.medley_short_release_tag }}"
echo "MEDLEY_SHORT_RELEASE_TAG=$msrt" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
$aft="${{ needs.loadup.outputs.artifacts_filename_template }}"
echo "ARTIFACTS_FILENAME_TEMPLATE=$aft" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
$debs="${{ needs.loadup.outputs.debs_filename_base }}"
echo "DEBS_FILENAME_BASE=$debs" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
# Retrieve medley tars from artifact store
- name: Retrieve medley tar
uses: actions/download-artifact@v4
with:
name: medley-tar
path: installers/cygwin/
# Download maiko cygwin build
- name: Retrieve maiko cygwin build
shell: powershell
env:
GH_TOKEN: ${{ secrets.MAIKO_TOKEN }}
run: |
gh release download ${{ needs.loadup.outputs.maiko_release_tag }} --repo interlisp/maiko --pattern ${{ needs.loadup.outputs.maiko_release_tag }}-cygwin.x86_64.tgz --output installers\cygwin\maiko-cygwin.x86_64.tgz
# Download cygwin installer to be included by medley.iss
- name: Download cygwin installer
id: cygwin
shell: powershell
run: |
wget https://cygwin.com/setup-x86_64.exe -OutFile installers\cygwin\setup-x86_64.exe
# Download vnc viewer
- name: Download vncviewer
shell: powershell
run: |
$url = "https://sourceforge.net/projects/tigervnc/files/stable/1.12.0/vncviewer64-1.12.0.exe"
$output = "installers\win\vncviewer64-1.12.0.exe"
(New-Object System.Net.WebClient).DownloadFile($url, $output)
#- name: Download vncviewer
# shell: powershell
# run: |
# $url = "https://sourceforge.net/projects/tigervnc/files/stable/1.12.0/vncviewer64-1.12.0.exe"
# $output = "installers\win\vncviewer64-1.12.0.exe"
# (New-Object System.Net.WebClient).DownloadFile($url, $output)
# Run iscc.exe to compile the installer
- name: Compile medley.iss
#- name: Compile medley.iss
# shell: powershell
# run: |
# iscc installers\win\medley.iss
# $filename="medley-install_${env:COMBINED_RELEASE_TAG}_x64.exe"
# echo "INSTALLER_FILENAME=$filename" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
# Run iscc.exe to compile the installer
- name: Compile cygwin_medley.iss
id: compile_iss
shell: powershell
run: |
iscc installers\win\medley.iss
$filename="medley-install_${env:COMBINED_RELEASE_TAG}_x64.exe"
echo "INSTALLER_FILENAME=$filename" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
$Env:CYGWIN_INSTALLER_BASE="medley-full-cygwin-x86_64-${env:COMBINED_RELEASE_TAG}"
$CYGWIN_INSTALLER="${Env:CYGWIN_INSTALLER_BASE}.exe"
echo "CYGWIN_INSTALLER=$CYGWIN_INSTALLER" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
echo "CYGWIN_INSTALLER=$CYGWIN_INSTALLER" | Out-File -FilePath $Env:GITHUB_OUTPUT -Encoding utf8 -Append
iscc installers\cygwin\medley.iss
# Upload windows installer to release
- name: Upload windows installer to release
id: push
uses: ncipollo/release-action@v1
with:
with:
allowUpdates: true
artifacts: installers/win/${{ env.INSTALLER_FILENAME }}
artifacts: installers/cygwin/${{ env.CYGWIN_INSTALLER }}
tag: ${{ env.MEDLEY_RELEASE_TAG }}
token: ${{ secrets.GITHUB_TOKEN }}
omitBodyDuringUpdate: true
@@ -358,38 +498,85 @@ jobs:
omitNameDuringUpdate: true
omitPrereleaseDuringUpdate: true
# Install the OpenSSH Client
- name: Install the OpenSSH Client
shell: powershell
# JOB: downloads_page ################################################################
#
# Update the downloads page on OIO
#
downloads_page:
runs-on: ubuntu-24.04
needs: [sentry, loadup, linux_installer, macos_installer, cygwin_installer]
if: |
needs.sentry.outputs.release_not_built == 'true'
|| inputs.force == 'true'
steps:
# Environment variables
- name: Environment Varibales (from other jobs)
run: |
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
crt="${{ needs.loadup.outputs.combined_release_tag }}"
echo "COMBINED_RELEASE_TAG=${crt}" >>${GITHUB_ENV}
mrt="${{ needs.loadup.outputs.medley_release_tag }}"
echo "MEDLEY_RELEASE_TAG=${mrt}" >>${GITHUB_ENV}
msrt="${{ needs.loadup.outputs.medley_short_release_tag }}"
echo "MEDLEY_SHORT_RELEASE_TAG=${msrt}" >>${GITHUB_ENV}
cyginst="${{ needs.cygwin_installer.outputs.cygwin_installer }}"
echo "CYGWIN_INSTALLER=${cyginst}" >>${GITHUB_ENV}
# Checkout latest commit
- name: Checkout Medley
uses: actions/checkout@v4
# Upload a dummy file to release
# Needed since download url of the release changes on every update
# So this will be the final update before creating downloads page
# and we can use its url for the page
- run: echo "placeholder" >placeholder.txt
- name: Upload windows placeholder.txt to release
id: pushph
uses: ncipollo/release-action@v1
with:
allowUpdates: true
artifacts: placeholder.txt
tag: ${{ env.MEDLEY_RELEASE_TAG }}
token: ${{ secrets.GITHUB_TOKEN }}
omitBodyDuringUpdate: true
omitDraftDuringUpdate: true
omitNameDuringUpdate: true
omitPrereleaseDuringUpdate: true
# Update the downloads page and the man page on OIO
- name: Update the downloads page and the man page to the OIO static page host
shell: bash
run: |
# Figure out filenames
download_url="${{ steps.push.outputs.html_url }}"
download_url="${{ steps.pushph.outputs.html_url }}"
download_url="${download_url/\/tag\//\/download\/}"
local_template="installers/downloads_page/medley_downloads.html"
local_filename="medley_downloads.html"
local_manpath="docs/man-page/man_medley.html"
if [ "${{ needs.inputs.outputs.draft }}" = "true" ];
if [ "${{ inputs.draft }}" = "true" ];
then
remote_filename="draft_downloads"
remote_manname="man_draft.html"
else
remote_filename="${local_filename%.html}"
remote_manname="man_medley.html"
fi
fi
remote_filepath="/srv/oio/static/${remote_filename}"
remote_manpath="/srv/oio/static/${remote_manname}"
# Fill in downloads page template
sed \
-e "s/@@@MEDLEY.SHORT.RELEASE.TAG@@@/${MEDLEY_SHORT_RELEASE_TAG}/g" \
-e "s/@@@COMBINED.RELEASE.TAG@@@/${COMBINED_RELEASE_TAG}/g" \
-e "s~@@@DOWNLOAD_URL@@@~${download_url}~g" \
-e "s/@@@DEBS.FILENAME.BASE@@@/${DEBS_FILENAME_BASE}/g" \
-e "s/@@@WINDOWS.INSTALLER.FILENAME@@@/${INSTALLER_FILENAME}/g" \
-e "s~@@@CYGWIN.INSTALLER@@@~${CYGWIN_INSTALLER}~g" \
< "${local_template}" > "${local_filename}"
# Create sftp instruction file
echo "-rm ${remote_filepath}.oldold" > batch
@@ -403,27 +590,40 @@ jobs:
sftp -o StrictHostKeyChecking=no -b batch ubuntu@online.interlisp.org
env:
SSH_KEY: ${{ secrets.OIO_SSH_KEY }}
# Remove placeholder.txt
- name: Remove placeholder.txt
run: |
gh release delete-asset ${{ env.MEDLEY_RELEASE_TAG }} placeholder.txt --yes
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
######################################################################################
# JOB: complete #####################################################################
# Use set-sentry-action to determine set the sentry that says this release has
# been successfully built
complete:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
outputs:
build_successful: ${{ steps.output.outputs.build_successful }}
needs: [inputs, sentry, loadup, windows_installer]
needs: [sentry, loadup, downloads_page]
steps:
# Delete the tarballs artifact
- name: Delete tarballs artifact
uses: geekyeggo/delete-artifact@v5
with:
name: tarballs
failOnError: false
steps:
# Checkout the actions for this repo owner
- name: Checkout Actions
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/.github
path: ./Actions_${{ github.sha }}
@@ -440,23 +640,6 @@ jobs:
id: output
run: |
echo "build_successful='true'" >> $GITHUB_OUTPUT
######################################################################################
######################################################################################
# - name: Download the Windows installer created in windows job
# uses: actions/download-artifact@v3
# with:
# name: windows_installer
# path: installers/win
# - name: Rename the Windows installer w/ version tag
# run: |
# maiko_release_tag="${{ steps.maiko.outputs.latest_tag }}"
# combined_release_tag="${MEDLEY_RELEASE_TAG#medley-}_${maiko_release_tag#maiko-}"
# windows_installer_filename="medley_install_${combined_release_tag}_x64.exe"
# cd installers/win
# mv medley_install_vXXXVERSIONXXX_x64.exe "${windows_installer_filename}"
# echo "WINDOWS_INSTALLER_FILENAME=${windows_installer_filename}" >>${GITHUB_ENV}

View File

@@ -3,6 +3,7 @@
#
# Interlisp webflow to build a Medley release and push it to github.
# And to build a multiplatform Docker image for the release and push it to Docker Hub.
# And to kickoff a build and deploy workflow for Medley-online within the online repo.
#
# This workflow just calls two reuseable workflows to the two task:
# buildLoadup.yml and buildDocker.yml
@@ -14,10 +15,13 @@
# ******************************************************************************
name: "Build/Push Release & Docker"
name: "Build/Push Release, Docker, OIO"
# Run this workflow on ...
on:
schedule:
- cron: '17 9 * * 3'
workflow_dispatch:
inputs:
draft:
@@ -53,7 +57,7 @@ on:
defaults:
run:
shell: bash
# Jobs that compose this workflow
jobs:
@@ -65,24 +69,22 @@ jobs:
# the result of a workflow_dispatch or a workflow_call
inputs:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
outputs:
draft: ${{ steps.one.outputs.draft }}
force: ${{ steps.one.outputs.force }}
steps:
- id: one
run: >
if [ '${{ toJSON(inputs) }}' = 'null' ];
if [ '${{ toJSON(inputs) }}' != '{}' ];
then
echo "workflow_dispatch";
echo "draft=${{ github.event.inputs.draft }}" >> $GITHUB_OUTPUT;
echo "force=${{ github.event.inputs.force }}" >> $GITHUB_OUTPUT;
echo "draft=${{ inputs.draft }}" >> $GITHUB_OUTPUT;
echo "force=${{ inputs.force }}" >> $GITHUB_OUTPUT;
else
echo "workflow_call";
echo "draft=${{ inputs.draft }}" >> $GITHUB_OUTPUT;
echo "force=${{ inputs.force }}" >> $GITHUB_OUTPUT;
echo "draft=false" >> $GITHUB_OUTPUT;
echo "force=false" >> $GITHUB_OUTPUT;
fi
######################################################################################
@@ -94,8 +96,7 @@ jobs:
with:
draft: ${{ needs.inputs.outputs.draft }}
force: ${{ needs.inputs.outputs.force }}
secrets:
OIO_SSH_KEY: ${{ secrets.OIO_SSH_KEY }}
secrets: inherit
######################################################################################
@@ -107,9 +108,30 @@ jobs:
with:
draft: ${{ needs.inputs.outputs.draft }}
force: ${{ needs.inputs.outputs.force }}
secrets:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
secrets: inherit
######################################################################################
# Run HCFILES and push to files.interlisp.org
do_HCFILES:
needs: [inputs, do_release]
uses: ./.github/workflows/doHCFILES.yml
with:
draft: ${{ needs.inputs.outputs.draft }}
secrets: inherit
######################################################################################
# Kickoff workflow in online repo to build and deploy Medley docker image to oio
do_oio:
runs-on: ubuntu-24.04
needs: [inputs, do_docker]
steps:
- name: trigger-oio-buildAndDeploy
run: |
if [ ! "${{ needs.inputs.outputs.draft }}" = "true" ]
then
gh workflow run buildAndDeployMedleyDocker.yml --repo Interlisp/online --ref master
fi
env:
GITHUB_TOKEN: ${{ secrets.ONLINE_TOKEN }}

139
.github/workflows/doHCFILES.yml vendored Normal file
View File

@@ -0,0 +1,139 @@
#*******************************************************************************
# doHCFILES.yml
#
# Interlisp workflow to run HCFILES. HCFILES prints out PDF files for all of the
# files in the Medley directory and posts them on files.interlisp.org.
#
# This workflow is designed to be kickjed off by the buildReleaseInclDocker
# workflow running in the Medley repo, once the release has been completed successfully
#
# Copyright 2024 by Interlisp.org
#
# ******************************************************************************
name: Run HCFILES
# Run this workflow on ...
on:
workflow_dispatch:
inputs:
draft:
description: "Mark this as a draft release"
type: choice
options:
- 'false'
- 'true'
workflow_call:
inputs:
draft:
description: "Mark this as a draft release"
required: false
type: string
default: 'false'
secrets:
OIO_SSH_KEY:
required: true
MU_TOKEN:
required: true
defaults:
run:
shell: bash
jobs:
run_HCFILES:
runs-on: ubuntu-24.04
steps:
- name: Checkout Medley repo
uses: actions/checkout@v4
- name: Checkout notecards
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/notecards
path: ./notecards
- name: Checkout loops
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/loops
path: ./loops
- name: Checkout test
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/test
path: ./test
- name: Cleanup .git for notecards, loops, test
run: rm -rf ./notecards/.git ./loops/.git ./test/.git
- name: Download Maiko
run: |
gh release download --output /tmp/maiko.tgz \
--repo ${{ github.repository_owner }}/maiko \
--pattern '*-linux.x86_64.tgz'
tar -xzf /tmp/maiko.tgz
env:
GH_TOKEN: ${{ secrets.MU_TOKEN }}
- name: Install vnc & ghostscript (ps2pdf)
run: |
sudo apt-get update
sudo apt-get install -y tightvncserver
sudo apt-get install -y ghostscript
- name: Build apps.sysout
run: |
Xvnc -geometry 1280x720 :0 &
export DISPLAY=":0"
scripts/loadup-all.sh -apps
- name: Run HCFILES
run: |
export DISPLAY=":0"
scripts/do_hcfiles.sh
- name: Push Medley files (including created pdf files) to files.interlisp.org
run: |
# create a tar file of all of the directories to be pushed
tarfile=/tmp/source-$$.tgz
tar -c -z -f ${tarfile} --exclude=.git .
# set up ssh identity
eval $(ssh-agent)
ssh-add - <<< "${SSH_KEY}"
# set destination directory on files.interlisp.org
if [ "${{ inputs.draft }}" = "true" ]
then
dest=/srv/oio/files/development/medley
else
dest=/srv/oio/files/production/medley
fi
# Push tar file up to files.interlisp.org
batchfile=/tmp/batch-$$
echo "-put ${tarfile} ${dest}.tgz" > ${batchfile}
sftp -o StrictHostKeyChecking=no -b ${batchfile} ubuntu@files.interlisp.org
# now tar is up, untar it and juggle backups
scriptfile=/tmp/script-$$
# create script file to do the work
cat > ${scriptfile} <<EOF
rm -rf ${dest}.new
mkdir -p ${dest}.new
tar -C ${dest}.new -x -z -f ${dest}.tgz
rm -f ${dest}.tgz
rm -rf ${dest}.oldold
if [ -e ${dest}.old ]; then mv ${dest}.old ${dest}.oldold; fi
if [ -e ${dest} ]; then mv ${dest} ${dest}.old; fi
mv ${dest}.new ${dest}
EOF
# execute the script file via ssh
ssh -aTxo BatchMode=yes ubuntu@files.interlisp.org /bin/sh -s < ${scriptfile}
env:
SSH_KEY: ${{ secrets.OIO_SSH_KEY }}

27
.gitignore vendored
View File

@@ -2,20 +2,45 @@
tmp/*
# releases directory
releases/*
# maiko directory
maiko/
# all PDFs (those explicitly checked in aren't ignored
# 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
# all loadup files
library/exports.all
loadups/exports.all
library/RDSYS*
loadups/lisp.sysout
loadups/full.sysout
# not currently included but might as well ignore it
loadups/fuller.sysout
loadups/*.dribble
loadups/whereis.hash
loadups/apps.sysout
loadups/fuller.database
# manual cross-reference files
*.IMPTR
# (Accidentally) created sysouts at any level
*.sysout
*.SYSOUT
#compiled code -- leave in for now
# *.lcom

0
.nojekyll Normal file
View File

View File

@@ -1,34 +1,126 @@
# How to build a medley release
# How to Build Medley and make a Release
Originally done only with shell scripts:
```
./scripts/loadup-all.sh
```
to make the loadups
```
./scripts/loadup-and-release.sh
```
to go on to make the tgz files and release them
The files in the Medley repository are used for making "loadups" lisp.sysout, full.sysout, apps.sysout. In order to build the Medley images, you need to have a build of "Maiko" (in flavors 'ldeinit' and 'lde' and either (`ldex` or `ldesdl`). Head over to the `Interlisp/maiko` repository to find out about making those.
# Using github actions
# Using GitHub actions
In the github medley repository (Interlisp/medley) go to the Actions tab.
Note that GitHub actions are used to automate the build process and insure that the system is built using known files, and that the releases are coordinated across platforms. We try to minimize dependencies on GitHub.
It will list the available github actions, select: **Build Medley Release**.
That said, you can manually trigger the automatic making of Medley loadups.
In the GitHub medley repository (Interlisp/medley) go to the Actions tab.
It will list the available GitHub actions.
Select: **Build/Push Release & Docker**.
In the middle of the screen there is a box labeled "Workflow Runs".
In the middle of the screen there's a box labeled workflow runs.
There should be a row in it that states 'This workflow has a workflow_dispatch event trigger' with a drop down menu (it really looks more like a button) on the right side labeled 'Run workflow'. Select that and you'll get a form allowing you to select the branch (I've only used Master) and enter the release name. Enter a name or leave it empty and press the green 'Run workflow' button. The workflow should queue up and run.
# How to create a Docker image for the latest Medley release
In the github medley repository (Interlisp/medley) go to the Actions tab.
It will list the available github actions, select: **Build Medley Docker image**.
A table is presented which lists the previous runs of the workflow. If the workflow has never been run, it will be empty. A the top of the list is a row labeled, 'This workflow has a workflow_dispatch event trigger.' with a drop down menu labeled 'Run workflow'. Select it.
A box will be presented asking, 'Use workflow from' with a drop down menu of all available branches. The default branch is **master**. Leave it selected and push the green 'Run workflow' button.
The workflow will be queued to run and start running.
Build/Push Release & Docker first builds Maiko and Medley, pushes a Medley release to the Interlisp/medley repo Releases, then makes a Docker image.
The files in .github/workflows/ contain the details.
<!--
The workflow pulls the latest Maiko image from Docker Hub and the Release Assets from the latest Medley release, generally defined as medley-YYMMDD. The Medley Docker image adds in Tight VNC Server and retrieves the two tarballs associated with a release, one containing the sysouts and the other the other needed files source, fonts, etc. The contents are uncompressed and loaded into the Medley directory structure.
-->
# Building Medley for yourself
The actual building itself is done with various shell scripts, found in the `scripts` directory in the medley repository. Most of the scripts have a minimal sanity check that they are being run from the medley repository.
Historically, building the medley image (called a "sysout") was called "doing a loadup". Back in the day, a loadup took the better part of a day, and no one would do the whole thing -- there was no automation.
## Prerequisites
In these instructions, there is an assumption that the loadup scripts can find other repositories. All of the loadup scripts have to find `lde` and `ldex` or `ldisdl` and also `ldeinit`.
Loadups use the run-medley script, which looks for Maiko (actually the lde & ldeinit executables) as follows:
1. lde (ldeinit) on PATH
2. In the `<osversion>.<machinetype>` subdirectory of the directory specified by the $MAIKODIR environment variable
3. In the `<osversion>.<machinetype>` subdirectory of the directory specified by $MEDLEYDIR/../maiko/
4. In the `<osversion>.<machinetype>` subdirectory of the directory specified by $MEDLEYDIR/maiko/
where $MEDLEYDIR is the directory from which you called the loadup script.
## Make everything
The shell command:
```
time ./scripts/loadup-all.sh -apps && time ./scripts/loadup-db.sh
```
does everything; on a fast machine it takes 4-6 minutes, most of which is spent in the `loadup-db.sh` step. Without the `loadup-db.sh` step, it runs in 22 seconds on a fast system.
## How loadup-all.sh works
You don't need to know this unless you want to change some of the low-level files involved.
The script "loadup-all.sh" itself involes scripts used for different steps in the loadup -- basically loadup-all calls the scripts in this order:
* `loadup-init.sh`
* `loadup-mid-from-init.sh`
* `loadup-lisp-from-mid.sh`
* `loadup-full-from-lisp.sh`
* `loadup-aux.sh`
* `loadup-apps-from-full.sh`
* `loadup-db.sh`
* `copy-all.sh`
Most of these scripts should only be run from the 'medley' repository top level directory.
```
your-working-area
maiko
medley
notecards
```
These are explained in reverse order:
### `copy-all.sh`: copy files from build directory to loadups
Most of the scripts build things in a temporary directory and, if the entire process succeeds, copies the results to the `loadups` directory. The environment variable `LOADUP-OUTDIR`, if set, is used, otherwise a sub-directory of /tmp.
`copy-db.sh` and `copy-full.sh` are provided if you've only done partial loadups.
`cpv` is a script that copies a file from one place to another while maintaining Medley version numbering.
### `loadup.db`: build `fuller.database`
This step was added to make a Masterscope database of "everything". The result is a file `fuller.database`. This was an artifact of an attempt to build some diagnostic tools to help understand what was going on in Medley. There is a 4 step process in the `GATHER-INFO` function in the file `MEDLEY-UTILS` in the `internal` subdirectory of the medley repository that ends with creating a masterscope database after loading all of the source files for every file that is part of the loadup, plus a few additional LispUsers files listed in variables that are part of `MEDLEY-UTILS`.
There are some problems that `GATHER-INFO` results hint at, but haven't been explored systematically.
Masterscope has some gaps and bugs so `fuller.database` isn't as useful as it could be. For example, Masterscope 'show paths' was written assuming you had only anlayzed the parts you were working on, and so the results of `SHOW PATHS` are too big to be useful.
## `loadup-aux.sh`: rebuild two files used for Medley development
`exports.all` is a collection of external declarations from a set of files in the medley/sources directory that are marked as being exported within those sources. Low level system declarations that aren't needed by most users. The files that need exports.all are generally loaded by loading `SYSEDIT`, which sets up a couple of preferences and then loads `exports.all`.
`whereis.hash` is an index file mapping function, variable, record declarations and other components to the file name containing that definition. It is the result of scanning the directories in the medley repository, including lispusers and library and internal etc. (but not obsolete?).
### `loadup-apps-from-full.sh:`build `apps.sysout`
`apps.sysout` includes some other components that are part of online.interlisp.org experience. In particular, you need `notecards`, which is in a separate repository (currently).
### `loadup-full-from-lisp.sh`: Build a `full.sysout` and
`full.sysout` Includes what we hope is a useful subset of Interlisp library and lispusers components as well as our modernization components.
### Build a `lisp.sysout` in 4 scripts:
### `loadup-lisp-from-mid.sh` build `lisp.sysout`
`lisp.sysout` is what most 1990s customers started with. This step starts with `init-mid.sysout` and runs `sources/LOADUP-LISP`.
### `loadup-mid-from-init.sh` build `mid.sysout`
This step uses a Maiko that has been compiled with the `init` option. It reads the `init.dlinit` and initializes the package system and runs the EXPRESSIONS from the files that were "loaded" by MAKEINIT, and writes out `init-mid.sysout`.
### `loadup-init.sh`: build `mid.sysout`
This step (called `MAKEINIT`) runs a Lisp program (using a `starter` sysout) that reads in Lisp sources for the bootstrap loader, walks through the code renaming the low-level memory management functions to work on a file instead of in memory. These renamed functions are written to a file (called I-NEW), and I-NEW is then compiled and loaded in and run to 'virtually' load the core set of files in an initial memory image (called INIT.SYSOUT). It then does another (theoretically unnecessary) pass of reading in INIT.SYSOUT using a different renaming of variables used originally for remote debugging (called TELERAID) and moving some pages around to make room for Dandelion IO Processor boot code.
While this step requires an Interlisp implementation, it isn't necessarily a Medley implementation. If you want to change the instruction set or modify any data structures that are reflected in both the Lisp code and Maiko, you can run this part in an older Interlisp. Theoretically.

View File

@@ -1,6 +1,6 @@
MIT License
Copyright Interlisp.org contributors
Copyright © 2024 Interlisp.org. Portions originally copyrighted by Xerox, Venue, John Sybalsky, and other contributors.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@@ -1,45 +1,43 @@
# Medley
This repository is for the Lisp environment of [Medley Interlisp](https://Interlisp.org).
This repository is for the Lisp environment of [Medley](https://interlisp.org).
See the [Documentation links](https://github.com/Interlisp/medley/wiki/Documentation) for an overview and pointers to documentation.
In particular [Running](https://github.com/Interlisp/medley/wiki/Running) explains other methods of getting Medley Interlisp.
[Install and Run](https://interlisp.org/software/install-and-run) covers ways to install and start up Medley on Linux systems, MacOS, and Windows (with or without WSL).
[Interlisp/maiko](https://github.com/Interlisp/maiko), is the repo for the implementation (in C) of the Medley virtual machine.
[Using Medley](https://interlisp.org/software/using-medley/) has an overview and pointers to documentation.
## Using releases
[Interlisp/maiko](https://github.com/Interlisp/maiko), is the repo for the implementation (in C) of the Medley virtual machine.
There currently are separate releases of medley and maiko; get the latest version of each.
## Releases
### Getting releases
While there are installers for popular platforms, this section may be useful in some circumstances.
Get the Maiko release [here](https://github.com/Interlisp/maiko/releases). You'll need the .tgz file corresponding to your operating system and processor (for Windows with WSL or Intel Linux, use `linux.x86_64`; for Macs use `darwin.x86_64` for Intel and `darwin.aarch64` for M1.)
### Getting releases
Or, build your own maiko (the binaries `lde` `ldex` and `ldeinit`) We can build for other OS arch pairs depending on what is available for GitHub actions.
Get the Maiko release [here](https://github.com/Interlisp/maiko/releases). You'll need the .tgz file corresponding to your operating system and processor. For Windows with WSL or Intel Linux, use `linux.x86_64`; for Macs use `darwin.x86_64` for Intel and `darwin.aarch64` for Mac silicon. Windows without WSL uses `cygwin` instead.
The medley release comes in two parts, found [here](https://github.com/Interlisp/medley/releases)
1. The "loadups" (download `medley-`YYMMDD`-loadups.tgz`)
2. The "runtime" (download `medley-`YYMMDD`-runtime.tgz`)
Or, build your own maiko (the binaries `lde`, `ldex` OR `ldesdl`, and `ldeinit`).
You can also build for other architectures
You don't need the "runtime" if you've cloned this (medley) repo, but you'll still need the "loadups" release.
The medley release image and sources come in two parts, found [here](https://github.com/Interlisp/medley/releases)
1. The "loadups" (download `medley-`_YYMMDD-XXXXX_`-loadups.tgz`)
2. The "runtime" (download `medley-`_YYMMDD-XXXXX_`-runtime.tgz`)
If you happen to have the 'gh' GitHub command line installed you can download both using
```
gh release download -R Interlisp/medley -p "*"
```
but otherwise just click on the link(s) below to the parts you need.
where _YYMMDD_ is the date and _XXXXX_ is the GitHub commit ID.
The "runtime" isn't needed if you've cloned the (medley) repo--you have all the files. The "runtime" has extra fonts, unicode tables, and source code that aren't part of the loadups but may be called on.
### Unpacking releases
From a shell/terminal window:
1. Choose where you want to install medley and maiko.
Unpack the medley loadups file
1. Choose a directory _parent_ where you want to install medley and maiko.
2. Unpack the medley loadups file
* `cd ` ~parent~
* `tar xvzf medley-`YYMMDD`-loadups.tgz`
* `cd ` _parent_
* `tar xvzf medley-`_YYMMDD-XXXXX_`-loadups.tgz`
2. Unpack the medley runtime OR clone the Medley repo
3. Unpack the medley runtime OR clone the Medley repo
(the "medley runtime" is just a subset of the whole repo)
* `tar xvzf medley-`YYMMDD`-runtime.tgz`
@@ -49,25 +47,27 @@ Unpack the medley loadups file
git clone https://github.com/Interlisp/medley
```
3. Unpack the maiko file for your operating system and CPU type, e.g.,
4. Unpack the maiko file for your operating system and CPU type, e.g.,
```
tar xvzf maiko-210823.linux.x86_64.tgz
```
3. This should leave you with two directories, `medley` and `maiko`.
5. This should leave you with two directories, `medley` and `maiko`.
### Setting up X
Medley Interlisp currently needs an X-Server to manage its display. Most Linux desktops have one. Windows 11 with WSL includes an X-Server. For Windows 10 with WSL2, there are a number of open-source X servers; for example vcxsrv.
In many configurations, Medley uses an X-Server to manage its display. Most Linux desktops have one. Windows 11 with WSL includes an X-Server. For Windows 10 with WSL2, there are a number of open-source X servers; for example vcxsrv.
Mac users should get [XQuartz from XQuartz.org](https://xquartz.org/releases).
Medley manages the display entirely, doesn't use X fonts and manages it's own window system.
If you have a high-resolution display, note that much of the graphics was designed for a low-resolution display, so an X-server that does "pixel doublilng" is best. (E.g., Raspberry Pi does pixel doubling on 4K displays.) It also presumes you have a 3-button mouse; the scroll-wheel on some mice act as one with some difficulty.) XQuartz Preferences/Input has "Emulate three button mouse" option.
If you have a high-resolution display, note that much of the graphics was designed for a low-resolution display, so an X-server that does "pixel doubling" is best. (E.g., Raspberry Pi does pixel doubling on 4K displays.)
### Running Medley Interlisp
Medley presumes you have a 3-button mouse; the scroll-wheel on some mice acts as one, with some difficulty. Go into XQuartz Preferences/Input and check "Emulate three button mouse" option.
### Running Medley Interlisp (obsolete)
The `run-medley` script in this repo sets up some convenient defaults. Running Medley can be done by typing:
```
@@ -105,15 +105,15 @@ dump of your system located in your home directory named
specify a specific image to run, Medley restores that image so that
you can continue right where you left off.
* [Using Medley Interlisp](https://github.com/Interlisp/medley/wiki/Using-Medley-Interlisp)
* [Using Medley Interlisp](https://interlisp.org/doc/info/Using.html)
## Naming conventions and directory structure
File Names and Extensions: Most Interlisp source file names are
UPPERCASE and Interlisp didn't use file extensions for its source
files. A .TEDIT or .TXT file is probably documentation
for the package of same name, at least in the library, lispusers.
for the package of the same name, at least in the library and lispusers
directories.
The current repo has both Lisp sources and compiled .LCOM and .DFASL
files.
@@ -122,9 +122,8 @@ Each directory should have a README.md, but briefly
* BUILDING.md -- instructions on how to make your own loadups
* clos -- early implementation of Common Lisp Object System
* CLTL2 -- files submitted to bring Medley up to the conformance to "Common Lisp, the Language" 2nd edition. Not enough to conform to the ANSII standard lisp.
* Dockerfile -- used when building Docker containers with Medley
* docs -- Documentation files (in TEdit format PDFs or online help; look [here](https://github.com/Interlisp/medley/Documentation)
* CLTL2 -- files submitted to bring Medley up to the conformance to "Common Lisp, the Language" 2nd edition. Not enough to conform to the ANSI standard lisp.
* docs -- Documentation files (in TEdit format, PDFs, or online help; look [here](https://github.com/Interlisp/medley/Documentation))
* fonts -- raster fonts (or font widths) in various resolutions for display, postscript, interpress, press formats
* greetfiles -- various configuration setups
* internal -- These _were_ internal to Venue
@@ -134,11 +133,6 @@ Each directory should have a README.md, but briefly
* obsolete -- files we should remove from the repo
* rooms -- implementation of ROOMS window/desktop manager
* run-medley -- script to enhance the options of running medley
* scripts -- some scripts for fixing up things
* scripts -- some scripts for fixing up things, building and running medley
* sources -- sources for Interlisp and Common Lisp implementations
* unicode -- data files for support of XCCS to and from Unicode mappings
plus
Dockerfile, and scripts for building and running medley
tmp directory for use during build processes

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

View File

@@ -1505,7 +1505,7 @@ window"
(setf (sedit:get-format 'call-next-method)
'(:indent (1) :args (:keyword nil)))
(setf (sedit:get-format 'symbol-macrolet) 'let)
(setf (sedit:get-format 'cl:symbol-macrolet) 'let)
(setf (sedit:get-format 'with-accessors)
'(:indent ((1) 1)

Binary file not shown.

View File

@@ -1,16 +1,12 @@
;;;-*- Package: CLOS; Syntax: Common-Lisp; Base: 10 -*-
;;; File converted on 26-Mar-91 10:23:29 from source pkg
;;;. Original source {dsk}<usr>local>users>welch>lisp>clos>rev4>il-format>pkg.;4 created 1-Mar-91 10:10:26
;;;. Copyright (c) 1991 by Venue
(in-package "CLOS")
;;; Some CommonLisps have more symbols in the Lisp package than the ones that are explicitly
;;; specified in CLtL. This causes trouble. Any Lisp that has extra symbols in the Lisp package
;;; should shadow those symbols in the CLOS package.
@@ -31,7 +27,7 @@
no-applicable-method no-next-method print-object reinitialize-instance remove-method
shared-initialize slot-boundp slot-exists-p slot-makunbound slot-missing slot-unbound
slot-value standard standard-class standard-generic-function standard-method
standard-object structure-class symbol-macrolet update-instance-for-different-class
standard-object structure-class update-instance-for-different-class
update-instance-for-redefined-class with-accessors with-added-methods with-slots))
(import '(xcl:false xcl:destructuring-bind xcl:true) *the-clos-package*)

Binary file not shown.

View File

@@ -1,5 +1,5 @@
See [Documentation links](https://github.com/Interlisp/medley/wiki/Documentation)
a complete list of available documentation. Much of the documentation still
See [Using Medley](https://interlisp.org/software/using-medley)
for a list of available documentation. Much of the documentation still
needs review and updating.
This directory has source (.TEDIT) for some documents that are found elsewhere.

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -1,267 +0,0 @@
%PDF-1.3
%âãÏÓ
2 0 obj
<<
/Length 555
>>
stream
BT
/TT2 1 Tf
10 0 0 10 548 15 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(xv)Tj
ET
0 G
0 J 0 j 1 w 10 M []0 d
1 i
54.01 27.5 m
558.01 27.5 l
S
BT
10 0 0 10 54 17.21 Tm
(LISP RELEASE NOTES, MEDLEY RELEASE, LIST OF TABLES )Tj
/TT4 1 Tf
18 0 0 18 411.97 752.97 Tm
(LIST OF TABLES )Tj
ET
6 w
258.01 745.99 m
558.01 745.99 l
S
BT
10 0 0 10 54 666.2 Tm
(Table )Tj
48.01 0 TD
(Page)Tj
ET
1 w
54.01 663.43 m
558.01 663.43 l
S
BT
/TT2 1 Tf
10 0 0 10 54 635.14 Tm
[(1. TEdits Abbreviations and their Expanded Characters )-23497(6-1)]TJ
ET
54.01 632.43 m
558.01 632.43 l
S
endstream
endobj
3 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
/TT4 5 0 R
>>
/ExtGState <<
/GS1 6 0 R
>>
>>
endobj
9 0 obj
<<
/Length 360
>>
stream
BT
/TT2 1 Tf
10 0 0 10 54 15 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(xvi)Tj
ET
0 G
0 J 0 j 1 w 10 M []0 d
1 i
54.01 27.5 m
558.01 27.5 l
S
BT
10 0 0 10 264.55 17.21 Tm
(LISP RELEASE NOTES, MEDLEY RELEASE, LIST OF TABLES )Tj
-21.055 74.479 TD
(LIST OF TABLES )Tj
ET
54.01 759.29 m
558.01 759.29 l
S
BT
10 0 0 10 228 494.21 Tm
([This page intentionally left blank])Tj
ET
endstream
endobj
10 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 6 0 R
>>
>>
endobj
6 0 obj
<<
/Type /ExtGState
/SA false
/SM 0.02
/OP false
/op false
/OPM 1
/BG2 /Default
/UCR2 /Default
/HT /Default
/TR2 /Default
>>
endobj
11 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 32
/FontBBox [-166 -225 1000 931]
/FontName /Helvetica
/ItalicAngle 0
/StemV 88
/XHeight 523
/StemH 88
>>
endobj
12 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 262176
/FontBBox [-170 -228 1003 962]
/FontName /Helvetica-Bold
/ItalicAngle 0
/StemV 133
/XHeight 532
/StemH 140
>>
endobj
4 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 146
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 278 0
0 556 0 0 0 0 556 0 0 0 0 0 0 0 0 0
0 667 667 722 722 667 611 0 0 278 0 0 556 833 722 778
667 0 722 667 611 0 0 0 0 667 0 278 0 278 0 0
0 556 556 500 556 556 278 556 556 222 0 500 222 0 556 556
556 0 333 500 278 0 500 0 500 500 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 222 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica
/FontDescriptor 11 0 R
>>
endobj
5 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 108
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 722 722 0 0 667 611 0 0 278 0 0 611 0 0 778
667 0 0 667 611 0 0 0 0 0 0 0 0 0 0 0
0 556 611 0 0 556 0 611 0 0 0 0 278 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-Bold
/FontDescriptor 12 0 R
>>
endobj
1 0 obj
<<
/Type /Page
/Parent 7 0 R
/Resources 3 0 R
/Contents 2 0 R
>>
endobj
8 0 obj
<<
/Type /Page
/Parent 7 0 R
/Resources 10 0 R
/Contents 9 0 R
>>
endobj
13 0 obj
<<
/S /D
>>
endobj
14 0 obj
<<
/Nums [0 13 0 R ]
>>
endobj
7 0 obj
<<
/Type /Pages
/Kids [1 0 R 8 0 R]
/Count 2
/MediaBox [0 0 612 792]
>>
endobj
15 0 obj
<<
/CreationDate (D:20210119174402-06'00')
/ModDate (D:20210119174402-06'00')
/Producer (PSNormalizer.framework)
>>
endobj
16 0 obj
<<
/Type /Catalog
/Pages 7 0 R
/PageLabels 14 0 R
>>
endobj
xref
0 17
0000000000 65535 f
0000002622 00000 n
0000000016 00000 n
0000000622 00000 n
0000001776 00000 n
0000002265 00000 n
0000001235 00000 n
0000002851 00000 n
0000002702 00000 n
0000000728 00000 n
0000001139 00000 n
0000001375 00000 n
0000001570 00000 n
0000002783 00000 n
0000002811 00000 n
0000002938 00000 n
0000003070 00000 n
trailer
<<
/Size 17
/Root 16 0 R
/Info 15 0 R
/ID [<ca10df19395abe4a04bf8921d65b5135><ca10df19395abe4a04bf8921d65b5135>]
>>
startxref
3139
%%EOF

BIN
docs/ReleaseNote/LOT.tedit Normal file

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -1,346 +0,0 @@
%PDF-1.3
%âãÏÓ
2 0 obj
<<
/Length 1582
>>
stream
BT
/TT2 1 Tf
14 0 0 14 211.88 709.08 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(PRINTING SPECIFICATIONS)Tj
-3.7521 -2 TD
(LISP RELEASE NOTES, MEDLEY RELEASE )Tj
9.3914 -1 TD
(AND)Tj
-10.0293 -1 TD
(LISP LIBRARY MODULES, MEDLEY RELEASE)Tj
11.1129 -1 TD
( )Tj
/TT4 1 Tf
12 0 0 12 72 610.64 Tm
(Special Instructions: )Tj
/TT6 1 Tf
10.3911 0 TD
(>>3-hole punch \(error tolerances: + or - 1/16 inch\)<<)Tj
ET
0 G
0 J 0 j 0.75 w 10 M []0 d
1 i
72 585.99 m
72 585.99 l
S
BT
/TT2 1 Tf
14 0 0 14 72 575.08 Tm
(PRINTING)Tj
ET
72 571.99 m
138.89 571.99 l
S
BT
/TT4 1 Tf
12 0 0 12 72 554.64 Tm
(Printing Method: >>)Tj
/TT6 1 Tf
9.6665 0 TD
(offset)Tj
/TT4 1 Tf
2.4458 0 TD
(<<)Tj
-12.1123 -2 TD
(Paper Weight: )Tj
/TT6 1 Tf
7.0005 0 TD
(>>60 lb. )Tj
/TT4 1 Tf
3.8921 0 TD
(<<)Tj
-10.8926 -2 TD
(Paper Type \(Finish\):)Tj
/TT6 1 Tf
12 0 TD
(>> Matte<<)Tj
/TT4 1 Tf
-12 -2 TD
(Paper Color: )Tj
/TT6 1 Tf
9 0 TD
(>>White<<)Tj
/TT4 1 Tf
-9 -2 TD
(Paper Texture: )Tj
/TT6 1 Tf
9 0 TD
(>>Smooth<<)Tj
/TT4 1 Tf
-9 -2 TD
(Paper Opacity: )Tj
/TT6 1 Tf
9 0 TD
(92 \(no show through\))Tj
/TT4 1 Tf
-9 -2 TD
(Paper Size: )Tj
/TT6 1 Tf
5.6689 0 TD
(>>8-1/2 X 11<<)Tj
/TT4 1 Tf
-5.6689 -2 TD
(Exceptions \(e.g., oversize diagrams\): )Tj
/TT6 1 Tf
18.1724 0 TD
(>>none)Tj
/TT4 1 Tf
3.3926 0 TD
(<<)Tj
/TT8 1 Tf
8 0 0 8 72 378.79 Tm
( )Tj
/TT4 1 Tf
12 0 0 12 72 366.64 Tm
(Special Instructions: )Tj
/TT6 1 Tf
10.3911 0 TD
(>><<)Tj
/TT4 1 Tf
-10.3911 -2 TD
(Number of Pages:)Tj
/TT6 1 Tf
8.5571 0 TD
( >><<)Tj
/TT4 1 Tf
-8.5571 -2 TD
( )Tj
/TT2 1 Tf
14 0 0 14 72 305.08 Tm
(PAPER )Tj
ET
72 301.99 m
128.02 301.99 l
S
endstream
endobj
3 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
/TT4 5 0 R
/TT6 6 0 R
/TT8 7 0 R
>>
/ExtGState <<
/GS1 8 0 R
>>
>>
endobj
8 0 obj
<<
/Type /ExtGState
/SA false
/SM 0.02
/OP false
/op false
/OPM 1
/BG2 /Default
/UCR2 /Default
/HT /Default
/TR2 /Default
>>
endobj
10 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 262176
/FontBBox [-170 -228 1003 962]
/FontName /Helvetica-Bold
/ItalicAngle 0
/StemV 133
/XHeight 532
/StemH 140
>>
endobj
11 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 262240
/FontBBox [-174 -228 1114 962]
/FontName /Helvetica-BoldOblique
/ItalicAngle -15
/StemV 133
/XHeight 532
/StemH 140
>>
endobj
12 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 32
/FontBBox [-166 -225 1000 931]
/FontName /Helvetica
/ItalicAngle 0
/StemV 88
/XHeight 523
/StemH 88
>>
endobj
13 0 obj
<<
/Type /FontDescriptor
/Ascent 753
/CapHeight 562
/Descent -246
/Flags 35
/FontBBox [-28 -250 628 805]
/FontName /Courier
/ItalicAngle 0
/StemV 51
/XHeight 426
/StemH 51
>>
endobj
4 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 89
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 722 722 722 722 667 611 778 0 278 0 0 611 833 722 778
667 0 722 667 611 722 0 0 0 667 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-Bold
/FontDescriptor 10 0 R
>>
endobj
5 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 122
/Widths [278 0 0 0 0 0 0 0 333 333 0 0 278 0 278 0
0 0 0 0 0 0 0 0 0 0 333 0 584 0 584 0
0 0 0 722 0 667 611 0 0 278 0 0 0 833 722 778
667 0 0 667 611 0 0 944 0 0 0 0 0 0 0 0
0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611
611 0 389 556 333 611 556 0 556 556 500 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-BoldOblique
/FontDescriptor 11 0 R
>>
endobj
6 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 119
/Widths [278 0 0 0 0 0 0 0 333 333 0 584 0 333 278 278
556 556 556 556 0 0 556 0 556 556 278 0 584 0 584 0
0 0 0 0 0 0 0 0 0 0 0 0 0 833 0 0
0 0 0 667 0 0 0 944 667 0 0 0 0 0 0 0
0 556 556 500 0 556 278 556 556 222 0 0 222 833 556 556
556 0 333 500 278 556 0 722 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica
/FontDescriptor 12 0 R
>>
endobj
7 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 32
/Widths [600 ]
/Encoding /WinAnsiEncoding
/BaseFont /Courier
/FontDescriptor 13 0 R
>>
endobj
1 0 obj
<<
/Type /Page
/Parent 9 0 R
/Resources 3 0 R
/Contents 2 0 R
>>
endobj
14 0 obj
<<
/S /D
>>
endobj
15 0 obj
<<
/Nums [0 14 0 R ]
>>
endobj
9 0 obj
<<
/Type /Pages
/Kids [1 0 R]
/Count 1
/MediaBox [0 0 612 792]
>>
endobj
16 0 obj
<<
/CreationDate (D:20210119174402-06'00')
/ModDate (D:20210119174402-06'00')
/Producer (PSNormalizer.framework)
>>
endobj
17 0 obj
<<
/Type /Catalog
/Pages 9 0 R
/PageLabels 15 0 R
>>
endobj
xref
0 18
0000000000 65535 f
0000004077 00000 n
0000000016 00000 n
0000001650 00000 n
0000002725 00000 n
0000003050 00000 n
0000003493 00000 n
0000003914 00000 n
0000001778 00000 n
0000004225 00000 n
0000001918 00000 n
0000002124 00000 n
0000002339 00000 n
0000002534 00000 n
0000004157 00000 n
0000004185 00000 n
0000004306 00000 n
0000004438 00000 n
trailer
<<
/Size 18
/Root 17 0 R
/Info 16 0 R
/ID [<c00d46236d153a63764cc2b5438c7853><c00d46236d153a63764cc2b5438c7853>]
>>
startxref
4507
%%EOF

Binary file not shown.

View File

@@ -1,739 +0,0 @@
%PDF-1.3
%âãÏÓ
2 0 obj
<<
/Length 5511
>>
stream
BT
/TT2 1 Tf
10 0 0 10 543.55 15 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(1-1)Tj
ET
0 G
0 J 0 j 1 w 10 M []0 d
1 i
54.01 27.5 m
558.01 27.5 l
S
BT
10 0 0 10 54 17.21 Tm
(LISP RELEASE NOTES, MEDLEY RELEASE, INTRODUCTION)Tj
/TT4 1 Tf
18 0 0 18 258 762.97 Tm
[(1.)-8166(INTRODUCTION)]TJ
ET
6 w
258.01 755.99 m
558.01 755.99 l
S
BT
/TT2 1 Tf
10 0 0 10 258 718.2 Tm
(The)Tj
/TT6 1 Tf
1.7231 0 TD
0.177 Tw
[( Lisp Release Notes)]TJ
/TT2 1 Tf
9.4802 0 TD
[( contain information from both the Lyric)]TJ
ET
570 732.98 0.99 -18.99 re
f
BT
10 0 0 10 258 706.2 Tm
0.104 Tw
[(and Medley releases, including descriptions of all Lyric bug fixes.)]TJ
ET
570 713.98 0.99 -11.99 re
f
BT
10 0 0 10 258 694.2 Tm
0.327 Tw
[(Medley additions are indicated with revision bars in the right)]TJ
ET
570 701.98 0.99 -11.99 re
f
BT
10 0 0 10 258 682.2 Tm
0 Tw
(margin. )Tj
ET
570 689.98 0.99 -11.99 re
f
2 w
54.01 626.99 m
558.01 626.99 l
S
570 677.98 0.99 -51.99 re
f
BT
/TT4 1 Tf
14 0 0 14 54 615.08 Tm
(Summary of Medley Changes )Tj
ET
570 625.98 0.99 -13.99 re
f
1 w
54.01 611.49 m
558.01 611.49 l
S
570 611.98 0.99 -0.99 re
f
BT
/TT2 1 Tf
10 0 0 10 258 579.2 Tm
0.093 Tw
[(The Medley release is currently provided on two platforms, Xerox)]TJ
ET
570 610.98 0.99 -35.99 re
f
BT
10 0 0 10 258 567.2 Tm
0.641 Tw
[(1100 series workstations using Medley 1.0, and Sun 3)]TJ
ET
570 574.98 0.99 -11.99 re
f
BT
10 0 0 10 258 555.2 Tm
0.1098 Tw
[(workstations using Medley 1.0-S. Medley 1.0 and Medley 1.0-S)]TJ
ET
570 562.98 0.99 -11.99 re
f
BT
10 0 0 10 258 543.2 Tm
0.029 Tw
(are compatible with each other and will let you develop software on)Tj
ET
570 550.98 0.99 -11.99 re
f
BT
10 0 0 10 258 531.2 Tm
0.419 Tw
[(either platform. Source and compiled files are transferable)]TJ
ET
570 538.98 0.99 -11.99 re
f
BT
10 0 0 10 258 519.2 Tm
0.596 Tw
[(between the two platforms. Sysouts developed on Xerox)]TJ
ET
570 526.98 0.99 -11.99 re
f
BT
10 0 0 10 258 507.2 Tm
0.062 Tw
[(workstations can also be run on the Sun 3. Sysouts made on the)]TJ
ET
570 514.98 0.99 -11.99 re
f
BT
10 0 0 10 258 495.2 Tm
0 Tw
(Sun 3, however, cannot be run on Xerox workstations. )Tj
ET
570 502.98 0.99 -11.99 re
f
BT
10 0 0 10 258 459.2 Tm
0.054 Tw
[(The Medley release enhances the Lyric release and fixes over 450)]TJ
ET
570 490.98 0.99 -35.99 re
f
BT
10 0 0 10 258 447.2 Tm
0.024 Tw
[(known Lyric bugs. Medley adds new features, improves Common)]TJ
ET
570 454.98 0.99 -11.99 re
f
BT
10 0 0 10 258 435.2 Tm
0.13 Tw
[(Lisp implementation, and improves overall reliability of the Lisp)]TJ
ET
570 442.98 0.99 -11.99 re
f
BT
10 0 0 10 258 423.2 Tm
0 Tw
(sysout. Specific enhancements include: )Tj
ET
570 430.98 0.99 -11.99 re
f
BT
10 0 0 10 258 404.2 Tm
0.522 Tw
[(•)-1449.9(The COMPILER contains many added optimizations and)]TJ
ET
570 418.98 0.99 -18.99 re
f
BT
10 0 0 10 276 392.2 Tm
0 Tw
(numerous bug fixes. )Tj
ET
570 399.98 0.99 -11.99 re
f
BT
10 0 0 10 258 373.2 Tm
0.423 Tw
[(•)-1449.9(The DEBUGGER evaluates lexical variables. Lexical)]TJ
ET
570 387.98 0.99 -18.99 re
f
BT
10 0 0 10 276 361.2 Tm
0 Tw
(variables can now be contained in interpreted code. )Tj
ET
570 368.98 0.99 -11.99 re
f
BT
10 0 0 10 258 342.2 Tm
0.212 Tw
[(•)-1449.9(DFASL files now behave at the level of Interlisp-D compiled)]TJ
ET
570 356.98 0.99 -18.99 re
f
BT
10 0 0 10 276 330.2 Tm
0.229 Tw
[(files. COMS are contained in DFASLs so that the system)]TJ
ET
570 337.98 0.99 -11.99 re
f
BT
10 0 0 10 276 318.2 Tm
0 Tw
(loads a DFASL file only once. )Tj
ET
570 325.98 0.99 -11.99 re
f
BT
10 0 0 10 258 299.2 Tm
0.09 Tw
[(•)-1449.9(The SEDIT code editor is more robust and better integrated)]TJ
ET
570 313.98 0.99 -18.99 re
f
BT
10 0 0 10 276 287.2 Tm
0 Tw
(with the environment. )Tj
ET
570 294.98 0.99 -11.99 re
f
BT
10 0 0 10 258 268.2 Tm
0.045 Tw
[(•)-1449.9(Common Lisp comments are preserved during loading. During)]TJ
ET
570 282.98 0.99 -18.99 re
f
BT
10 0 0 10 276 256.2 Tm
0 Tw
(MAKEFILE, comments can be written out with just semicolons. )Tj
ET
570 263.98 0.99 -11.99 re
f
BT
10 0 0 10 258 237.2 Tm
0.047 Tw
[(•)-1449.9(The new ERROR SYSTEM is compatible with the most recent)]TJ
ET
570 251.98 0.99 -18.99 re
f
BT
10 0 0 10 276 225.2 Tm
0 Tw
(standard defined for Common Lisp error systems. )Tj
ET
570 232.98 0.99 -11.99 re
f
BT
10 0 0 10 258 206.2 Tm
[(•)-1449.9(TEdit contains numerous bug fixes.)]TJ
ET
570 220.98 0.99 -18.99 re
f
BT
10 0 0 10 258 187.2 Tm
0.738 Tw
[(•)-1449.9(MASTERSCOPE contains Common Lisp query support)]TJ
ET
570 201.98 0.99 -18.99 re
f
BT
10 0 0 10 276 175.2 Tm
0.175 Tw
(allowing you to ask questions about Common Lisp code that)Tj
ET
570 182.98 0.99 -11.99 re
f
BT
10 0 0 10 276 163.2 Tm
0.074 Tw
[(could previously be asked only of Interlisp-D code. Currently,)]TJ
ET
570 170.98 0.99 -11.99 re
f
BT
10 0 0 10 276 151.2 Tm
0.646 Tw
(questions specific to Common Lisp constructs are not)Tj
ET
570 158.98 0.99 -11.99 re
f
BT
10 0 0 10 276 139.2 Tm
0 Tw
(supported. )Tj
ET
570 146.98 0.99 -11.99 re
f
BT
10 0 0 10 258 120.2 Tm
0.169 Tw
[(•)-1449.9(RS232 contains may bug fixes that improve the reliability of)]TJ
ET
570 134.98 0.99 -18.99 re
f
BT
10 0 0 10 276 108.2 Tm
0 Tw
(data transfer and the addition of various debugging tools. )Tj
ET
570 115.98 0.99 -11.99 re
f
BT
10 0 0 10 258 89.2 Tm
0.366 Tw
[(• TCP/IP now contains many bug fixes including UNIX file)]TJ
ET
570 103.98 0.99 -18.99 re
f
BT
10 0 0 10 276 77.2 Tm
0 Tw
(interface and directory enumeration. )Tj
ET
570 84.98 0.99 -11.99 re
f
endstream
endobj
3 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
/TT4 5 0 R
/TT6 6 0 R
>>
/ExtGState <<
/GS1 7 0 R
>>
>>
endobj
10 0 obj
<<
/Length 2079
>>
stream
BT
/TT2 1 Tf
10 0 0 10 54 15 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(1-2)Tj
ET
0 G
0 J 0 j 1 w 10 M []0 d
1 i
54.01 27.5 m
558.01 27.5 l
S
BT
10 0 0 10 266.81 17.21 Tm
( LISP RELEASE NOTES, MEDLEY RELEASE, INTRODUCTION)Tj
-21.281 74.479 TD
(1. INTRODUCTION)Tj
ET
54.01 759.29 m
558.01 759.29 l
S
BT
10 0 0 10 258 730.2 Tm
(• A new System Tool lets you fetch sysouts from TCP hosts.)Tj
ET
570 744.98 0.99 -18.99 re
f
BT
10 0 0 10 258 711.2 Tm
[(•)-1449.9(NS Random Access is now supported. )]TJ
ET
570 725.98 0.99 -18.99 re
f
BT
10 0 0 10 258 692.2 Tm
0.053 Tw
[(•)-1449.9(A)0( new File Browser user interface now supports file sorting by)]TJ
ET
570 706.98 0.99 -18.99 re
f
BT
10 0 0 10 276 680.2 Tm
0.016 Tw
[(dates. The new interface includes the ability to stop in the)]TJ
ET
570 687.98 0.99 -11.99 re
f
BT
10 0 0 10 276 668.2 Tm
0 Tw
(middle of operations.)Tj
ET
570 675.98 0.99 -11.99 re
f
BT
10 0 0 10 258 649.2 Tm
(• The Medley sysout is about the same size as the Lyric sysout.)Tj
ET
570 663.98 0.99 -18.99 re
f
BT
10 0 0 10 258 613.2 Tm
0.096 Tw
[(In addition, Medley on the Sun 3 workstation offers the following)]TJ
ET
570 644.98 0.99 -35.99 re
f
BT
10 0 0 10 258 601.2 Tm
0 Tw
(new features:)Tj
ET
570 608.98 0.99 -11.99 re
f
BT
10 0 0 10 258 582.2 Tm
0.04 Tw
[(•)-1449.9(The UnixChat library module allows you to communicate with a)]TJ
ET
570 596.98 0.99 -18.99 re
f
BT
10 0 0 10 276 570.2 Tm
0 Tw
(UNIX shell on your own host. )Tj
ET
570 577.98 0.99 -11.99 re
f
BT
10 0 0 10 258 551.2 Tm
0.011 Tw
[(• The UnixComm library module allows you to start a Unix process)]TJ
ET
570 565.98 0.99 -18.99 re
f
BT
10 0 0 10 276 539.2 Tm
0.072 Tw
[(on a Sun workstation and provides an interface to the SunOS)]TJ
ET
570 546.98 0.99 -11.99 re
f
BT
10 0 0 10 276 527.2 Tm
0 Tw
(operating system. )Tj
ET
570 534.98 0.99 -11.99 re
f
BT
10 0 0 10 258 508.2 Tm
0.08 Tw
[(•)-1449.9(The ability to suspend Medley and use UNIX as a background)]TJ
ET
570 522.98 0.99 -18.99 re
f
BT
10 0 0 10 276 496.2 Tm
0 Tw
(process is provided. )Tj
ET
570 503.98 0.99 -11.99 re
f
endstream
endobj
11 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 7 0 R
>>
>>
endobj
13 0 obj
<<
/Length 353
>>
stream
BT
/TT2 1 Tf
10 0 0 10 543.55 15 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(1-3)Tj
ET
0 G
0 J 0 j 1 w 10 M []0 d
1 i
54.01 27.5 m
558.01 27.5 l
S
BT
10 0 0 10 54 17.21 Tm
(LISP RELEASE NOTES, MEDLEY RELEASE, INTRODUCTION)Tj
41.622 74.479 TD
(1. INTRODUCTION)Tj
ET
54.01 759.29 m
558.01 759.29 l
S
BT
10 0 0 10 228 496.21 Tm
([This page intentionally left blank])Tj
ET
endstream
endobj
14 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 7 0 R
>>
>>
endobj
7 0 obj
<<
/Type /ExtGState
/SA false
/SM 0.02
/OP false
/op false
/OPM 1
/BG2 /Default
/UCR2 /Default
/HT /Default
/TR2 /Default
>>
endobj
15 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 32
/FontBBox [-166 -225 1000 931]
/FontName /Helvetica
/ItalicAngle 0
/StemV 88
/XHeight 523
/StemH 88
>>
endobj
16 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 262176
/FontBBox [-170 -228 1003 962]
/FontName /Helvetica-Bold
/ItalicAngle 0
/StemV 133
/XHeight 532
/StemH 140
>>
endobj
17 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 96
/FontBBox [-170 -225 1116 931]
/FontName /Helvetica-Oblique
/ItalicAngle -15
/StemV 88
/XHeight 523
/StemH 88
>>
endobj
4 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 149
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 333 278 278
556 556 556 556 556 556 0 0 0 0 278 0 0 0 0 0
0 667 667 722 722 667 611 778 0 278 0 667 556 833 722 778
667 0 722 667 611 722 0 0 667 667 0 278 0 278 0 0
0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556
556 556 333 500 278 556 500 722 500 500 500 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 350 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica
/FontDescriptor 15 0 R
>>
endobj
5 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 121
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0
0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 722 722 0 0 0 0 278 0 0 0 833 722 778
0 0 722 667 611 722 0 0 0 0 0 0 0 0 0 0
0 556 0 0 611 556 333 611 611 0 0 0 278 889 611 611
0 0 389 556 0 611 0 0 0 556 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-Bold
/FontDescriptor 16 0 R
>>
endobj
6 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 116
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 556 0 722 0
0 0 722 0 0 0 0 0 0 0 0 0 0 0 0 0
0 556 0 0 0 556 0 0 0 222 0 0 222 0 0 556
556 0 0 500 278 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-Oblique
/FontDescriptor 17 0 R
>>
endobj
1 0 obj
<<
/Type /Page
/Parent 8 0 R
/Resources 3 0 R
/Contents 2 0 R
>>
endobj
9 0 obj
<<
/Type /Page
/Parent 8 0 R
/Resources 11 0 R
/Contents 10 0 R
>>
endobj
12 0 obj
<<
/Type /Page
/Parent 8 0 R
/Resources 14 0 R
/Contents 13 0 R
>>
endobj
18 0 obj
<<
/S /D
>>
endobj
19 0 obj
<<
/Nums [0 18 0 R ]
>>
endobj
8 0 obj
<<
/Type /Pages
/Kids [1 0 R 9 0 R 12 0 R]
/Count 3
/MediaBox [0 0 612 792]
>>
endobj
20 0 obj
<<
/CreationDate (D:20210119174403-06'00')
/ModDate (D:20210119174403-06'00')
/Producer (PSNormalizer.framework)
>>
endobj
21 0 obj
<<
/Type /Catalog
/Pages 8 0 R
/PageLabels 19 0 R
>>
endobj
xref
0 22
0000000000 65535 f
0000010473 00000 n
0000000016 00000 n
0000005579 00000 n
0000009171 00000 n
0000009698 00000 n
0000010104 00000 n
0000008425 00000 n
0000010786 00000 n
0000010553 00000 n
0000005696 00000 n
0000007828 00000 n
0000010635 00000 n
0000007924 00000 n
0000008329 00000 n
0000008565 00000 n
0000008760 00000 n
0000008966 00000 n
0000010718 00000 n
0000010746 00000 n
0000010880 00000 n
0000011012 00000 n
trailer
<<
/Size 22
/Root 21 0 R
/Info 20 0 R
/ID [<e834e923fc3b25aaaec2dd8b3b775b25><e834e923fc3b25aaaec2dd8b3b775b25>]
>>
startxref
11081
%%EOF

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -1,157 +0,0 @@
%PDF-1.3
%âãÏÓ
2 0 obj
<<
/Length 318
>>
stream
BT
/TT2 1 Tf
8 0 0 8 0.04 783.96 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(Unknown IMAGEOBJ type)Tj
0 -1 TD
(GETFN: SKIO.GETFN.2)Tj
ET
q
1 i
0 792 612 -791.94 re
W n
0 G
0 J 0 j 0.02 w 10 M [0.32 0.16 0.16 0.16 ]0 d
0.01 775.93 m
99.6 775.93 l
99.6 775.93 m
99.6 791.95 l
0.01 791.95 m
99.6 791.95 l
0.01 791.95 m
0.01 775.93 l
S
Q
endstream
endobj
3 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
5 0 obj
<<
/Type /ExtGState
/SA false
/SM 0.02
/OP false
/op false
/OPM 1
/BG2 /Default
/UCR2 /Default
/HT /Default
/TR2 /Default
>>
endobj
7 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 262176
/FontBBox [-170 -228 1003 962]
/FontName /Helvetica-Bold
/ItalicAngle 0
/StemV 133
/XHeight 532
/StemH 140
>>
endobj
4 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 121
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0
0 0 556 0 0 0 0 0 0 0 333 0 0 0 0 0
0 722 722 0 0 667 611 778 0 278 556 722 0 833 722 778
0 0 0 667 611 722 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 556 0 0 0 0 0 556 0 0 611 611
611 0 0 0 333 0 0 778 0 556 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-Bold
/FontDescriptor 7 0 R
>>
endobj
1 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 3 0 R
/Contents 2 0 R
>>
endobj
8 0 obj
<<
/S /D
>>
endobj
9 0 obj
<<
/Nums [0 8 0 R ]
>>
endobj
6 0 obj
<<
/Type /Pages
/Kids [1 0 R]
/Count 1
/MediaBox [0 0 612 792]
>>
endobj
10 0 obj
<<
/CreationDate (D:20210119174411-06'00')
/ModDate (D:20210119174411-06'00')
/Producer (PSNormalizer.framework)
>>
endobj
11 0 obj
<<
/Type /Catalog
/Pages 6 0 R
/PageLabels 9 0 R
>>
endobj
xref
0 12
0000000000 65535 f
0000001228 00000 n
0000000016 00000 n
0000000385 00000 n
0000000825 00000 n
0000000480 00000 n
0000001373 00000 n
0000000620 00000 n
0000001308 00000 n
0000001335 00000 n
0000001454 00000 n
0000001586 00000 n
trailer
<<
/Size 12
/Root 11 0 R
/Info 10 0 R
/ID [<8a8c3746cf3e6e016b12f3bf4d7b0363><8a8c3746cf3e6e016b12f3bf4d7b0363>]
>>
startxref
1654
%%EOF

File diff suppressed because one or more lines are too long

View File

@@ -1,157 +0,0 @@
%PDF-1.3
%âãÏÓ
2 0 obj
<<
/Length 318
>>
stream
BT
/TT2 1 Tf
8 0 0 8 0.04 783.96 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(Unknown IMAGEOBJ type)Tj
0 -1 TD
(GETFN: SKIO.GETFN.2)Tj
ET
q
1 i
0 792 612 -791.94 re
W n
0 G
0 J 0 j 0.02 w 10 M [0.32 0.16 0.16 0.16 ]0 d
0.01 775.93 m
99.6 775.93 l
99.6 775.93 m
99.6 791.95 l
0.01 791.95 m
99.6 791.95 l
0.01 791.95 m
0.01 775.93 l
S
Q
endstream
endobj
3 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
5 0 obj
<<
/Type /ExtGState
/SA false
/SM 0.02
/OP false
/op false
/OPM 1
/BG2 /Default
/UCR2 /Default
/HT /Default
/TR2 /Default
>>
endobj
7 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 262176
/FontBBox [-170 -228 1003 962]
/FontName /Helvetica-Bold
/ItalicAngle 0
/StemV 133
/XHeight 532
/StemH 140
>>
endobj
4 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 121
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0
0 0 556 0 0 0 0 0 0 0 333 0 0 0 0 0
0 722 722 0 0 667 611 778 0 278 556 722 0 833 722 778
0 0 0 667 611 722 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 556 0 0 0 0 0 556 0 0 611 611
611 0 0 0 333 0 0 778 0 556 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-Bold
/FontDescriptor 7 0 R
>>
endobj
1 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 3 0 R
/Contents 2 0 R
>>
endobj
8 0 obj
<<
/S /D
>>
endobj
9 0 obj
<<
/Nums [0 8 0 R ]
>>
endobj
6 0 obj
<<
/Type /Pages
/Kids [1 0 R]
/Count 1
/MediaBox [0 0 612 792]
>>
endobj
10 0 obj
<<
/CreationDate (D:20210119174411-06'00')
/ModDate (D:20210119174411-06'00')
/Producer (PSNormalizer.framework)
>>
endobj
11 0 obj
<<
/Type /Catalog
/Pages 6 0 R
/PageLabels 9 0 R
>>
endobj
xref
0 12
0000000000 65535 f
0000001228 00000 n
0000000016 00000 n
0000000385 00000 n
0000000825 00000 n
0000000480 00000 n
0000001373 00000 n
0000000620 00000 n
0000001308 00000 n
0000001335 00000 n
0000001454 00000 n
0000001586 00000 n
trailer
<<
/Size 12
/Root 11 0 R
/Info 10 0 R
/ID [<04821c2e391d350e759a439f0a49e2f9><04821c2e391d350e759a439f0a49e2f9>]
>>
startxref
1654
%%EOF

Binary file not shown.

View File

@@ -1,157 +0,0 @@
%PDF-1.3
%âãÏÓ
2 0 obj
<<
/Length 318
>>
stream
BT
/TT2 1 Tf
8 0 0 8 0.04 783.96 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(Unknown IMAGEOBJ type)Tj
0 -1 TD
(GETFN: SKIO.GETFN.2)Tj
ET
q
1 i
0 792 612 -791.94 re
W n
0 G
0 J 0 j 0.02 w 10 M [0.32 0.16 0.16 0.16 ]0 d
0.01 775.93 m
99.6 775.93 l
99.6 775.93 m
99.6 791.95 l
0.01 791.95 m
99.6 791.95 l
0.01 791.95 m
0.01 775.93 l
S
Q
endstream
endobj
3 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
5 0 obj
<<
/Type /ExtGState
/SA false
/SM 0.02
/OP false
/op false
/OPM 1
/BG2 /Default
/UCR2 /Default
/HT /Default
/TR2 /Default
>>
endobj
7 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 262176
/FontBBox [-170 -228 1003 962]
/FontName /Helvetica-Bold
/ItalicAngle 0
/StemV 133
/XHeight 532
/StemH 140
>>
endobj
4 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 121
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0
0 0 556 0 0 0 0 0 0 0 333 0 0 0 0 0
0 722 722 0 0 667 611 778 0 278 556 722 0 833 722 778
0 0 0 667 611 722 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 556 0 0 0 0 0 556 0 0 611 611
611 0 0 0 333 0 0 778 0 556 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-Bold
/FontDescriptor 7 0 R
>>
endobj
1 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 3 0 R
/Contents 2 0 R
>>
endobj
8 0 obj
<<
/S /D
>>
endobj
9 0 obj
<<
/Nums [0 8 0 R ]
>>
endobj
6 0 obj
<<
/Type /Pages
/Kids [1 0 R]
/Count 1
/MediaBox [0 0 612 792]
>>
endobj
10 0 obj
<<
/CreationDate (D:20210119174411-06'00')
/ModDate (D:20210119174411-06'00')
/Producer (PSNormalizer.framework)
>>
endobj
11 0 obj
<<
/Type /Catalog
/Pages 6 0 R
/PageLabels 9 0 R
>>
endobj
xref
0 12
0000000000 65535 f
0000001228 00000 n
0000000016 00000 n
0000000385 00000 n
0000000825 00000 n
0000000480 00000 n
0000001373 00000 n
0000000620 00000 n
0000001308 00000 n
0000001335 00000 n
0000001454 00000 n
0000001586 00000 n
trailer
<<
/Size 12
/Root 11 0 R
/Info 10 0 R
/ID [<f4b3f73f380b56f5c72cabea6aa0f315><f4b3f73f380b56f5c72cabea6aa0f315>]
>>
startxref
1654
%%EOF

Binary file not shown.

View File

@@ -1,423 +0,0 @@
%PDF-1.3
%âãÏÓ
2 0 obj
<<
/Length 2294
>>
stream
BT
/TT2 1 Tf
14 0 0 14 219.66 709.08 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(TAB SPECIFICATIONS for)Tj
6.1671 -1 TD
( )Tj
-10.475 -1 TD
(LISP RELEASE NOTES, MEDLEY RELEASE )Tj
9.5864 -1 TD
(and)Tj
-10.2243 -1 TD
(LISP LIBRARY MODULES, MEDLEY RELEASE )Tj
-5.6014 -3 TD
(TABS)Tj
/TT4 1 Tf
12 0 0 12 72 584.64 Tm
(Tab Paper Size )Tj
/TT6 1 Tf
7.6694 0 TD
( 8 1/2 by 11 inches \(excluding the actual tab\))Tj
/TT4 1 Tf
-7.6694 -2 TD
(Stock Type)Tj
/TT6 1 Tf
6 0 TD
( Ledger; matte finish)Tj
/TT4 1 Tf
-6 -2 TD
(Stock Weight)Tj
/TT6 1 Tf
9 0 TD
(110 pound)Tj
/TT4 1 Tf
-9 -2 TD
(Stock Color)Tj
/TT6 1 Tf
6 0 TD
( White)Tj
/TT4 1 Tf
-6 -2 TD
(Tab Coating)Tj
/TT6 1 Tf
6 0 TD
( Mylar )Tj
/TT4 1 Tf
-6 -2 TD
(Mylar Color)Tj
/TT6 1 Tf
6 0 TD
[( )-4888.7( )]TJ
3 -1 TD
(PMS 422-C coordinated gray)Tj
/TT4 1 Tf
-9 -2 TD
(Holes )Tj
/TT6 1 Tf
3.5566 0 TD
( 3-hole punch)Tj
/TT4 1 Tf
6.6157 0 TD
(, )Tj
/TT6 1 Tf
0.8335 0 TD
( 5/16" diameter holes )Tj
/TT4 1 Tf
-11.0059 -2 TD
(Hole Reinforcement)Tj
/TT6 1 Tf
12 0 TD
( clear mylar strip )Tj
/TT4 1 Tf
-12 -2 TD
(Hole Placement 1st hole centered:)Tj
/TT6 1 Tf
16.561 0 TD
( 1 3/16" from top of page, 7/16" in from side )Tj
/TT4 1 Tf
-10.561 -1 TD
( 2nd hole centered:)Tj
/TT6 1 Tf
10.8355 0 TD
( 5 7/16" from top of page, 7/16" in from side)Tj
/TT4 1 Tf
-10.8355 -1 TD
( 3rd hole centered:)Tj
/TT6 1 Tf
10.8916 0 TD
( 9 11/16" from top of page, 7/16" in from side )Tj
/TT2 1 Tf
-16.8916 -3.1667 TD
(Tab Cut Requirements)Tj
ET
0 G
0 J 0 j 1 w 10 M []0 d
1 i
72.01 315.49 m
576.01 315.49 l
S
BT
/TT4 1 Tf
12 0 0 12 72 293.64 Tm
(Number of Tab Cuts)Tj
/TT6 1 Tf
12 0 TD
(5)Tj
/TT4 1 Tf
-12 -2 TD
(Size of Cuts \(Length\))Tj
/TT6 1 Tf
12 0 TD
( 2 3/8" )Tj
/TT4 1 Tf
-12 -2 TD
(Depth of Tab Cut)Tj
/TT6 1 Tf
9 0 TD
( 1/2 inch)Tj
/TT4 1 Tf
4.3359 0 TD
( )Tj
-13.3359 -2 TD
(Cut Shapes)Tj
/TT6 1 Tf
6 0 TD
( straight edge, curved top, curved bottom )Tj
/TT2 1 Tf
-6 -2.1667 TD
(Print Specifications)Tj
ET
72.01 192.49 m
576.01 192.49 l
S
BT
/TT4 1 Tf
12 0 0 12 72 170.64 Tm
(One or Both Sides)Tj
/TT6 1 Tf
9 0 TD
(Both sides)Tj
/TT4 1 Tf
-9 -2 TD
(Font)Tj
/TT6 1 Tf
3 0 TD
(Modern/Optima )Tj
/TT4 1 Tf
-3 -2 TD
(Point Size)Tj
/TT6 1 Tf
6 0 TD
(10)Tj
/TT4 1 Tf
-6 -2 TD
(Ink Color)Tj
/TT6 1 Tf
6 0 TD
(Black)Tj
ET
endstream
endobj
3 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
/TT4 5 0 R
/TT6 6 0 R
>>
/ExtGState <<
/GS1 7 0 R
>>
>>
endobj
10 0 obj
<<
/Length 396
>>
stream
BT
/TT6 1 Tf
10 0 0 10 72 756 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(2)Tj
/TT4 1 Tf
12 0 0 12 72 710.64 Tm
(Type Spacing)Tj
/TT6 1 Tf
9 0 TD
(Centered)Tj
/TT2 1 Tf
14 0 0 14 72 661.08 Tm
(PACKAGING INSTRUCTIONS:)Tj
/TT6 1 Tf
14.2222 0 TD
( Shrink wrap with text)Tj
/TT2 1 Tf
-14.2222 -3 TD
(TOTAL NUMBER COPIES:)Tj
/TT4 1 Tf
12 0 0 12 245.4414 619.08 Tm
( )Tj
/TT6 1 Tf
0.5557 0 TD
( 500 )Tj
ET
endstream
endobj
11 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
/TT4 5 0 R
/TT6 6 0 R
>>
/ExtGState <<
/GS1 7 0 R
>>
>>
endobj
7 0 obj
<<
/Type /ExtGState
/SA false
/SM 0.02
/OP false
/op false
/OPM 1
/BG2 /Default
/UCR2 /Default
/HT /Default
/TR2 /Default
>>
endobj
12 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 262176
/FontBBox [-170 -228 1003 962]
/FontName /Helvetica-Bold
/ItalicAngle 0
/StemV 133
/XHeight 532
/StemH 140
>>
endobj
13 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 262240
/FontBBox [-174 -228 1114 962]
/FontName /Helvetica-BoldOblique
/ItalicAngle -15
/StemV 133
/XHeight 532
/StemH 140
>>
endobj
14 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 32
/FontBBox [-166 -225 1000 931]
/FontName /Helvetica
/ItalicAngle 0
/StemV 88
/XHeight 523
/StemH 88
>>
endobj
4 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 117
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 278 0 0 0
0 0 0 0 0 0 0 0 0 0 333 0 0 0 0 0
0 722 722 722 722 667 611 778 0 278 0 722 611 833 722 778
667 0 722 667 611 722 0 0 0 667 0 0 0 0 0 0
0 556 611 556 611 556 333 0 0 278 0 0 0 889 611 611
611 611 389 556 333 611 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-Bold
/FontDescriptor 12 0 R
>>
endobj
5 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 122
/Widths [278 0 0 0 0 0 0 0 333 333 0 0 278 0 0 0
0 556 556 556 0 0 0 0 0 0 333 0 0 0 0 0
0 0 722 722 722 0 611 0 722 278 0 0 611 833 722 778
667 0 722 667 611 0 0 944 0 0 0 0 0 0 0 0
0 556 611 556 611 556 333 611 611 278 0 556 278 889 611 611
611 0 389 556 333 611 0 0 0 556 500 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-BoldOblique
/FontDescriptor 13 0 R
>>
endobj
6 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 121
/Widths [278 0 355 0 0 0 0 0 333 333 0 0 278 333 0 278
556 556 556 556 556 556 556 556 556 556 0 278 0 0 0 0
0 0 667 722 0 0 0 0 0 0 0 0 556 833 0 778
667 0 0 667 0 0 0 944 0 0 0 0 0 0 0 0
0 556 556 500 556 556 278 556 556 222 0 500 222 833 556 556
556 0 333 500 278 556 500 722 500 500 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica
/FontDescriptor 14 0 R
>>
endobj
1 0 obj
<<
/Type /Page
/Parent 8 0 R
/Resources 3 0 R
/Contents 2 0 R
>>
endobj
9 0 obj
<<
/Type /Page
/Parent 8 0 R
/Resources 11 0 R
/Contents 10 0 R
>>
endobj
15 0 obj
<<
/S /D
>>
endobj
16 0 obj
<<
/Nums [0 15 0 R ]
>>
endobj
8 0 obj
<<
/Type /Pages
/Kids [1 0 R 9 0 R]
/Count 2
/MediaBox [0 0 612 792]
>>
endobj
17 0 obj
<<
/CreationDate (D:20210119174411-06'00')
/ModDate (D:20210119174411-06'00')
/Producer (PSNormalizer.framework)
>>
endobj
18 0 obj
<<
/Type /Catalog
/Pages 8 0 R
/PageLabels 16 0 R
>>
endobj
xref
0 19
0000000000 65535 f
0000005115 00000 n
0000000016 00000 n
0000002362 00000 n
0000003801 00000 n
0000004221 00000 n
0000004670 00000 n
0000003045 00000 n
0000005345 00000 n
0000005195 00000 n
0000002479 00000 n
0000002927 00000 n
0000003185 00000 n
0000003391 00000 n
0000003606 00000 n
0000005277 00000 n
0000005305 00000 n
0000005432 00000 n
0000005564 00000 n
trailer
<<
/Size 19
/Root 18 0 R
/Info 17 0 R
/ID [<d8d67fe46ad0b335a4ce76aa22b00931><d8d67fe46ad0b335a4ce76aa22b00931>]
>>
startxref
5633
%%EOF

BIN
docs/ReleaseNote/TOC.TEDIT Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -1,886 +0,0 @@
%PDF-1.3
%âãÏÓ
2 0 obj
<<
/Length 246
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
2.3356 -1 TD
(Table of Contents)Tj
6.945 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
3 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
8 0 obj
<<
/Length 237
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
7.1672 -1 TD
(Preface)Tj
2.1133 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
9 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
11 0 obj
<<
/Length 246
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
3.5583 -1 TD
(1. Introduction)Tj
5.7222 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
12 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
14 0 obj
<<
/Length 251
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
0.0006 -1 TD
(2. Notes and Cautions )Tj
9.28 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
15 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
17 0 obj
<<
/Length 259
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
-2.555 -1 TD
(3. Integration of Languages)Tj
11.8356 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
18 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
20 0 obj
<<
/Length 259
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
-1.2767 -1 TD
(4. Changes to Interlisp-D )Tj
10.5572 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
21 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
23 0 obj
<<
/Length 249
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
1.6672 -1 TD
(5. Library Modules)Tj
7.6133 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
24 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
26 0 obj
<<
/Length 248
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
2.6661 -1 TD
(6. Users Guides )Tj
6.6144 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
27 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
29 0 obj
<<
/Length 263
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
-4.9433 -1 TD
(7. Common Lisp Implementation )Tj
14.2239 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
30 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
32 0 obj
<<
/Length 243
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
4.8333 -1 TD
(A. The Exec )Tj
4.4472 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
33 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
35 0 obj
<<
/Length 240
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
6.6689 -1 TD
(B. SEdit )Tj
2.6117 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
36 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
40 0 obj
<<
/Length 241
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
5.7811 -1 TD
(C. ICONW )Tj
3.4994 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
41 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
43 0 obj
<<
/Length 244
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
4.2239 -1 TD
(D. Free Menu )Tj
5.0567 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
44 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
46 0 obj
<<
/Length 242
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
3 -1 TD
(E. Error System )Tj
6.2806 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
47 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
49 0 obj
<<
/Length 236
>>
stream
0 G
0 J 0 j 3 w 10 M []0 d
/GS1 gs
1 i
72.01 718.49 m
540.01 718.49 l
S
BT
/TT2 1 Tf
18 0 0 18 333.95 694.97 Tm
0 g
0 Tc
0 Tw
(Replace this page with)Tj
8.1683 -1 TD
(Index )Tj
1.1122 -1 TD
(tab)Tj
ET
228.01 653.49 m
528.01 653.49 l
S
endstream
endobj
50 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
5 0 obj
<<
/Type /ExtGState
/SA false
/SM 0.02
/OP false
/op false
/OPM 1
/BG2 /Default
/UCR2 /Default
/HT /Default
/TR2 /Default
>>
endobj
51 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 262176
/FontBBox [-170 -228 1003 962]
/FontName /Helvetica-Bold
/ItalicAngle 0
/StemV 133
/XHeight 532
/StemH 140
>>
endobj
4 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 146
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 0
0 556 556 556 556 556 556 556 0 0 0 0 0 0 0 0
0 722 722 722 722 667 611 778 0 278 0 0 611 833 722 778
667 0 722 667 611 722 0 944 0 0 0 0 0 0 0 0
0 556 611 556 611 556 333 611 611 278 0 0 278 889 611 611
611 0 389 556 333 611 0 778 556 556 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 278 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-Bold
/FontDescriptor 51 0 R
>>
endobj
1 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 3 0 R
/Contents 2 0 R
>>
endobj
7 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 9 0 R
/Contents 8 0 R
>>
endobj
10 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 12 0 R
/Contents 11 0 R
>>
endobj
13 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 15 0 R
/Contents 14 0 R
>>
endobj
16 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 18 0 R
/Contents 17 0 R
>>
endobj
19 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 21 0 R
/Contents 20 0 R
>>
endobj
22 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 24 0 R
/Contents 23 0 R
>>
endobj
25 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 27 0 R
/Contents 26 0 R
>>
endobj
28 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 30 0 R
/Contents 29 0 R
>>
endobj
31 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 33 0 R
/Contents 32 0 R
>>
endobj
34 0 obj
<<
/Type /Page
/Parent 38 0 R
/Resources 36 0 R
/Contents 35 0 R
>>
endobj
39 0 obj
<<
/Type /Page
/Parent 38 0 R
/Resources 41 0 R
/Contents 40 0 R
>>
endobj
42 0 obj
<<
/Type /Page
/Parent 38 0 R
/Resources 44 0 R
/Contents 43 0 R
>>
endobj
45 0 obj
<<
/Type /Page
/Parent 38 0 R
/Resources 47 0 R
/Contents 46 0 R
>>
endobj
48 0 obj
<<
/Type /Page
/Parent 38 0 R
/Resources 50 0 R
/Contents 49 0 R
>>
endobj
52 0 obj
<<
/S /D
>>
endobj
53 0 obj
<<
/Nums [0 52 0 R ]
>>
endobj
6 0 obj
<<
/Type /Pages
/Kids [1 0 R 7 0 R 10 0 R 13 0 R 16 0 R 19 0 R 22 0 R 25 0 R 28 0 R 31 0 R]
/Count 10
/Parent 37 0 R
>>
endobj
38 0 obj
<<
/Type /Pages
/Kids [34 0 R 39 0 R 42 0 R 45 0 R 48 0 R]
/Count 5
/Parent 37 0 R
>>
endobj
37 0 obj
<<
/Type /Pages
/Kids [6 0 R 38 0 R ]
/Count 15
/MediaBox [0 0 612 792]
>>
endobj
54 0 obj
<<
/CreationDate (D:20210119174411-06'00')
/ModDate (D:20210119174411-06'00')
/Producer (PSNormalizer.framework)
>>
endobj
55 0 obj
<<
/Type /Catalog
/Pages 37 0 R
/PageLabels 53 0 R
>>
endobj
xref
0 56
0000000000 65535 f
0000006786 00000 n
0000000016 00000 n
0000000313 00000 n
0000006282 00000 n
0000005936 00000 n
0000008098 00000 n
0000006866 00000 n
0000000408 00000 n
0000000696 00000 n
0000006946 00000 n
0000000791 00000 n
0000001089 00000 n
0000007029 00000 n
0000001185 00000 n
0000001488 00000 n
0000007112 00000 n
0000001584 00000 n
0000001895 00000 n
0000007195 00000 n
0000001991 00000 n
0000002302 00000 n
0000007278 00000 n
0000002398 00000 n
0000002699 00000 n
0000007361 00000 n
0000002795 00000 n
0000003095 00000 n
0000007444 00000 n
0000003191 00000 n
0000003506 00000 n
0000007527 00000 n
0000003602 00000 n
0000003897 00000 n
0000007610 00000 n
0000003993 00000 n
0000004285 00000 n
0000008335 00000 n
0000008233 00000 n
0000007694 00000 n
0000004381 00000 n
0000004674 00000 n
0000007778 00000 n
0000004770 00000 n
0000005066 00000 n
0000007862 00000 n
0000005162 00000 n
0000005456 00000 n
0000007946 00000 n
0000005552 00000 n
0000005840 00000 n
0000006076 00000 n
0000008030 00000 n
0000008058 00000 n
0000008426 00000 n
0000008558 00000 n
trailer
<<
/Size 56
/Root 55 0 R
/Info 54 0 R
/ID [<3f19364b5f81ff960ce7bb49c7d95dc0><3f19364b5f81ff960ce7bb49c7d95dc0>]
>>
startxref
8628
%%EOF

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,157 +0,0 @@
%PDF-1.3
%âãÏÓ
2 0 obj
<<
/Length 318
>>
stream
BT
/TT2 1 Tf
8 0 0 8 0.04 783.96 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(Unknown IMAGEOBJ type)Tj
0 -1 TD
(GETFN: SKIO.GETFN.2)Tj
ET
q
1 i
0 792 612 -791.94 re
W n
0 G
0 J 0 j 0.02 w 10 M [0.32 0.16 0.16 0.16 ]0 d
0.01 775.93 m
99.6 775.93 l
99.6 775.93 m
99.6 791.95 l
0.01 791.95 m
99.6 791.95 l
0.01 791.95 m
0.01 775.93 l
S
Q
endstream
endobj
3 0 obj
<<
/ProcSet [/PDF /Text ]
/Font <<
/TT2 4 0 R
>>
/ExtGState <<
/GS1 5 0 R
>>
>>
endobj
5 0 obj
<<
/Type /ExtGState
/SA false
/SM 0.02
/OP false
/op false
/OPM 1
/BG2 /Default
/UCR2 /Default
/HT /Default
/TR2 /Default
>>
endobj
7 0 obj
<<
/Type /FontDescriptor
/Ascent 770
/CapHeight 718
/Descent -229
/Flags 262176
/FontBBox [-170 -228 1003 962]
/FontName /Helvetica-Bold
/ItalicAngle 0
/StemV 133
/XHeight 532
/StemH 140
>>
endobj
4 0 obj
<<
/Type /Font
/Subtype /TrueType
/FirstChar 32
/LastChar 121
/Widths [278 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0
0 0 556 0 0 0 0 0 0 0 333 0 0 0 0 0
0 722 722 0 0 667 611 778 0 278 556 722 0 833 722 778
0 0 0 667 611 722 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 556 0 0 0 0 0 556 0 0 611 611
611 0 0 0 333 0 0 778 0 556 ]
/Encoding /WinAnsiEncoding
/BaseFont /Helvetica-Bold
/FontDescriptor 7 0 R
>>
endobj
1 0 obj
<<
/Type /Page
/Parent 6 0 R
/Resources 3 0 R
/Contents 2 0 R
>>
endobj
8 0 obj
<<
/S /D
>>
endobj
9 0 obj
<<
/Nums [0 8 0 R ]
>>
endobj
6 0 obj
<<
/Type /Pages
/Kids [1 0 R]
/Count 1
/MediaBox [0 0 612 792]
>>
endobj
10 0 obj
<<
/CreationDate (D:20210119174412-06'00')
/ModDate (D:20210119174412-06'00')
/Producer (PSNormalizer.framework)
>>
endobj
11 0 obj
<<
/Type /Catalog
/Pages 6 0 R
/PageLabels 9 0 R
>>
endobj
xref
0 12
0000000000 65535 f
0000001228 00000 n
0000000016 00000 n
0000000385 00000 n
0000000825 00000 n
0000000480 00000 n
0000001373 00000 n
0000000620 00000 n
0000001308 00000 n
0000001335 00000 n
0000001454 00000 n
0000001586 00000 n
trailer
<<
/Size 12
/Root 11 0 R
/Info 10 0 R
/ID [<037c8837cab2cb299e6b0b052324dbdc><037c8837cab2cb299e6b0b052324dbdc>]
>>
startxref
1654
%%EOF

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

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.

View File

@@ -7,101 +7,158 @@
<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>
<h2>Flags</h2>
<dl>
<dt><strong>-h, --help</strong></dt>
<dt>-h, --help</dt>
<dd><p>Prints out a brief summary of the flags and arguments to medley.</p>
</dd>
<dt><strong>-z, --man</strong></dt>
<dt>-z, --man</dt>
<dd><p>Show the man page for medley</p>
</dd>
<dt><strong>-f, --full</strong></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. (See <em>SYSOUT_FILE</em> below for more information on starting sysouts.)</p>
<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>
<dt><strong>-l, --lisp</strong></dt>
<dd><p>Start Medley from the standard “lisp” sysout. lisp.sysout only includes the basic Interlisp and CommonLisp environment. (See <em>SYSOUT_FILE</em> below for more information on starting sysouts.)</p>
<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>
<dt><strong>-a, --apps</strong></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. (See <em>SYSOUT_FILE</em> below for more information on starting sysouts.)</p>
<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>
<dt><strong>-e, --interlisp (relevent only when --apps is specified)</strong></dt>
<dd><p>Make the initial Exec window within Medley be an Interlisp Exec. Default is to start in an XCL Exec.</p>
<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>
<dt><strong>-n, --noscroll</strong></dt>
<dd><p>Ordinarily Medley 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. Specifying --noscroll turns off the scroll bars. Note: If --noscroll is specified 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>
<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>
<p>Equivalent to “-y -”.</p>
<p>(See <em>SYSOUT FILE</em> section below.)</p>
</dd>
<dt><strong>-g <em>WxH</em>, --geometry <em>WxH</em></strong></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). 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>
<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><strong>-s <em>WxH</em>, --screensize <em>WxH</em></strong></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. 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>
<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>
<p>This flag applies only when the apps flag is used.</p>
</dd>
<dt><strong>-t <em>STRING</em>, --title <em>STRING</em></strong></dt>
<dd><p>Use STRING as title of Medley window. Ignored when when the --vnc flag is set or when running on Windows (Docker) installations.</p>
<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>
<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>
</dd>
<dt><strong>-d <em>:N</em>, --display <em>:N</em> ** <strong>Not</strong> applicable to Windows (Docker) installations **</strong></dt>
<dd><p>Use X display :N. Defaults to the value of $DISPLAY. This flag is ignored when the --vnc flag is set as well as on Windows (Docker) installations.</p>
<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>
<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>
</dd>
<dt><strong>-v, --vnc ** <strong>Applicable</strong> only to WSL installations **</strong></dt>
<dd><p>Use a VNC window running on the Windows side instead of an X window. The 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. This flag is always set for WSL1 installations.</p>
<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>
<dt><strong>-i [<em>ID_STRING</em> | - | --], --id [<em>ID_STRING</em> | - | --]</strong></dt>
<dd><p>Use ID_STRING as the id for this run of Medley, iunless ID_STRING is “-” or “--”. If ID_STRING is “-”, then use the basename of $MEDLEYDIR as the id. If ID_STRING is “--”, then use the basename of the parent directory of $MEDLEYDIR as the id. Only one instance of Medley with a given id can run at a time. The id is used to distinguish the virtual memory stores so that multiple instances of Medley can run simultaneously. Default id is “default”.</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><strong>-m <em>N</em>, --mem <em>N</em></strong></dt>
<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>
<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>
<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>
<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>
<dt><strong>-p <em>FILE</em>, --vmem <em>FILE</em></strong></dt>
<dd><p>Use FILE as the Medley virtual memory (vmem) store. FILE must be writeable by the current user. 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. Default is to store the vmem in LOGINDIR/vmem/lisp_XXX.virtualmem, where XXX is the id of this Medley run (see --id flag above). See --logindir below for setting of LOGINDIR. On Windows (Docker) installations, <em>FILE</em> is specified in the Medley file system, not the host Windows file system.</p>
</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>
<dt><strong>-r [<em>FILE</em> | -], --greet [<em>FILE</em> | -]</strong></dt>
<dd><p>Use FILE as the Medley greetfile, unless FILE is “-” in which case Medley will start up without using a greetfile. 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. On Windows (Docker) installations, <em>FILE</em> is specified in the Medley file system, not the host Windows file system.</p>
<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>
<dt><strong>-x [<em>DIR</em> | -], --logindir [<em>DIR</em> | -] ** <strong>On</strong> Linux and WSL installations **</strong></dt>
<dd><p>Use DIR as LOGINDIR in Medley, unless DIR is “-”, in which case use $MEDLEYDIR/logindir. DIR (or $MEDLEYDIR/logindir) must be writeable by the current user. LOGINDIR defaults to $HOME/il. LOGINDIR is used by Medley as the working directory on start-up and where it loads any “personal” initialization file from.</p>
<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>
<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>
</dd>
<dt><strong>-x [<em>DIR</em> | -], --logindir [<em>DIR</em> | -] ** <strong>On</strong> Windows (Docker) installations **</strong></dt>
<dd><p>Map DIR in the Windows host file system to /home/medley/il in the Medley file system (in the Docker container). LOGINDIR is always /home/medley/il from Medleys standpoint. The “-” value is not valid in this case.</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><strong>-u, --update ** <strong>Windows</strong> (Docker) installations only **</strong></dt>
<dd><p>Before running Medley, do a pull to retrieve the latest interlisp/medley docker image from Docker Hub.</p>
<dt>-nf, -NF, nofork</dt>
<dd><p>No fork. Relevant only to the Medley loadup workflow.</p>
</dd>
<dt><strong>-b, --background ** <strong>Windows</strong> (Docker) installations only **</strong></dt>
<dd><p>Run Medley in background rather than foreground.</p>
<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>
<dt><strong>-p <em>PORT</em>, --port <em>PORT</em> ** <strong>Windows</strong> (Docker) installations only **</strong></dt>
<dd><p>Use <em>PORT</em> as the port that VNC viewer uses to contact the VNC server within the Docker container. Default is 5900.</p>
</dd>
<dt><strong>-w [<em>DISTRO</em> | -], --wsl [<em>DISTRO</em> | -] ** <strong>Windows</strong> (Docker) installations only **</strong></dt>
<dd><p>Run Medley in the context of the named WSL <em>DISTRO</em> instead of within Docker. If <em>DISTRO</em> is “-”, used the default WSL distro. Equivalent to typing “wsl -d <em>DISTRO</em> medley ...” into a Command or Powershell window.</p>
<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>
</dl>
<h2>Other Options</h2>
<dl>
<dt><strong><em>SYSOUT_FILE</em></strong></dt>
<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>
<dt><strong><em>PASS_ON_ARGS</em></strong></dt>
<dd><p>All arguments after the “--” flag, are passed unaltered to lde via run-medley.</p>
<dt><em>PASS_ON_ARGS</em></dt>
<dd><p>All arguments after the “--” flag, are passed unaltered to the Maiko emulator.</p>
</dd>
</dl>
<h1>FILES</h1>
<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>
<h1>OTHER FILES</h1>
<dl>
<dt><strong>$HOME/il</strong></dt>
<dt>$HOME/il</dt>
<dd><p>Default Medley LOGINDIR</p>
</dd>
<dt><strong>$HOME/il/vmem/lisp.virtualmem</strong></dt>
<dt>$HOME/il/vmem/lisp.virtualmem</dt>
<dd><p>Default virtual memory file</p>
</dd>
<dt><strong>$HOME/il/INIT(.LCOM)</strong></dt>
<dt>$HOME/il/INIT(.LCOM)</dt>
<dd><p>Default personal init file</p>
</dd>
<dt><strong>$MEDLEYDIR/greetfiles/MEDLEYDIR-INIT(.LCOM)</strong></dt>
<dt>$MEDLEYDIR/greetfiles/MEDLEYDIR-INIT(.LCOM)</dt>
<dd><p>Default Medley greetfile</p>
</dd>
</dl>
<h1>BUGS</h1>
<p>See GitHub Issues: &lt;https://github.com/Interlisp/medley/issues&gt;</p>
<h1>COPYRIGHT</h1>
<p>Copyright(c) 2023 by Interlisp.org</p>
<p>Copyright(c) 2023-2024 by Interlisp.org</p>

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