Compare commits
146 Commits
medley-230
...
medley-240
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e4c4bb9f8d | ||
|
|
43374862e5 | ||
|
|
6cbacf754b | ||
|
|
ef6d2d5b03 | ||
|
|
121a166047 | ||
|
|
1a550ce499 | ||
|
|
9232a0db90 | ||
|
|
0a37520014 | ||
|
|
6155bcb430 | ||
|
|
8ca35635e5 | ||
|
|
2f7972e78d | ||
|
|
2a88ad712e | ||
|
|
51cb65cf37 | ||
|
|
220c995cda | ||
|
|
fcd0206611 | ||
|
|
d0edc69cd7 | ||
|
|
5ad5083c6d | ||
|
|
8e07e25b9a | ||
|
|
c66583e7b0 | ||
|
|
a86c5ad145 | ||
|
|
dd60b85658 | ||
|
|
b038a6b16e | ||
|
|
5e5fea9ceb | ||
|
|
44e42940a9 | ||
|
|
35b7195ed5 | ||
|
|
10d83c5f5d | ||
|
|
a80788201f | ||
|
|
3c237c1937 | ||
|
|
174bbe8e14 | ||
|
|
d48bd9f77a | ||
|
|
76a6e26faa | ||
|
|
f8521c612e | ||
|
|
de7a1e1deb | ||
|
|
49cb172e3d | ||
|
|
cedc8d1e11 | ||
|
|
496fa408c2 | ||
|
|
60e390789c | ||
|
|
4dec18527e | ||
|
|
3ca4495c76 | ||
|
|
6eeccb40cb | ||
|
|
2647d98f8f | ||
|
|
b52015e71d | ||
|
|
39ee2ecb5d | ||
|
|
a90b7ed73d | ||
|
|
54b2607070 | ||
|
|
971e8936b6 | ||
|
|
e276460836 | ||
|
|
ab818ff335 | ||
|
|
47d77542be | ||
|
|
934d0fb7a4 | ||
|
|
6420bdcf27 | ||
|
|
1d6e43e1ea | ||
|
|
8837c61f85 | ||
|
|
18aae01362 | ||
|
|
a84242561a | ||
|
|
70885c5a19 | ||
|
|
57de705f39 | ||
|
|
7c3fa261c7 | ||
|
|
7fe4d2dcca | ||
|
|
30a4697d75 | ||
|
|
60a766574d | ||
|
|
25a18f6bc0 | ||
|
|
6558a49adb | ||
|
|
4b30aa1640 | ||
|
|
3727653e23 | ||
|
|
b1294ea5e9 | ||
|
|
2a9076bede | ||
|
|
72456ce4ec | ||
|
|
c8c4768315 | ||
|
|
735108ecb7 | ||
|
|
f735fca83e | ||
|
|
560def37bc | ||
|
|
41f32b7db5 | ||
|
|
ab831a46ba | ||
|
|
f1cf759098 | ||
|
|
017bf88a3a | ||
|
|
b2f750e549 | ||
|
|
8cf17ce950 | ||
|
|
008aff1d25 | ||
|
|
214cfb8674 | ||
|
|
2e7b88d0cc | ||
|
|
14fbff63cf | ||
|
|
bec32f475a | ||
|
|
6e845d747f | ||
|
|
459aeef74a | ||
|
|
19ceac6515 | ||
|
|
914604a6eb | ||
|
|
05f3ad19eb | ||
|
|
c62c183ae4 | ||
|
|
328d3f53cd | ||
|
|
5b90251210 | ||
|
|
713f2388c7 | ||
|
|
f49729cbd3 | ||
|
|
bdf03e08a1 | ||
|
|
b19cfd5bbb | ||
|
|
e2d8c9e5ad | ||
|
|
2ea1321d81 | ||
|
|
9054814ef7 | ||
|
|
84dead86af | ||
|
|
5e83d63567 | ||
|
|
bcfeda62e1 | ||
|
|
45513f563b | ||
|
|
db084c6281 | ||
|
|
6c53acaca8 | ||
|
|
fbb5a8f6f5 | ||
|
|
cb8eab788a | ||
|
|
50dc0a9269 | ||
|
|
9273cffce2 | ||
|
|
df8c5a52f1 | ||
|
|
a219ea03e5 | ||
|
|
2072deb6ae | ||
|
|
f6c91ee11c | ||
|
|
adc27d9684 | ||
|
|
d92aa6395a | ||
|
|
f1833861cc | ||
|
|
270fee89e3 | ||
|
|
cba04e168c | ||
|
|
1e847ec274 | ||
|
|
f765676ec4 | ||
|
|
17c72a1f2f | ||
|
|
995c6de04e | ||
|
|
877c6fbf17 | ||
|
|
97b19f1b96 | ||
|
|
948b0e09d1 | ||
|
|
af912247b3 | ||
|
|
1bed018db8 | ||
|
|
8a8e6fa4dc | ||
|
|
bf2e34841b | ||
|
|
9ed6448591 | ||
|
|
445de6745d | ||
|
|
68ed78a9f9 | ||
|
|
1ae08139c9 | ||
|
|
bb4e230df4 | ||
|
|
781709e4e1 | ||
|
|
9b4c4a3bf7 | ||
|
|
51d554c67e | ||
|
|
ca39ccf27b | ||
|
|
e1cd9260b4 | ||
|
|
b0aa518a41 | ||
|
|
9e0bfabc52 | ||
|
|
ebff4f7268 | ||
|
|
c281728c65 | ||
|
|
c4554894b3 | ||
|
|
58196b4011 | ||
|
|
f6a9b88b34 | ||
|
|
bad19ab45f |
50
.github/workflows/buildDocker.yml
vendored
50
.github/workflows/buildDocker.yml
vendored
@@ -63,31 +63,6 @@ defaults:
|
||||
|
||||
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,7 +70,6 @@ jobs:
|
||||
# based on the latest commit to the repo
|
||||
|
||||
sentry:
|
||||
needs: inputs
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
release_not_built: ${{ steps.check.outputs.release_not_built }}
|
||||
@@ -103,7 +77,7 @@ jobs:
|
||||
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 }}
|
||||
@@ -127,22 +101,22 @@ jobs:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
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
|
||||
@@ -177,7 +151,7 @@ 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" ];
|
||||
if [ "${{ inputs.draft }}" = "false" ];
|
||||
then
|
||||
docker_tags="${docker_image}:latest,${docker_image}:${MEDLEY_RELEASE#*-}_${MAIKO_RELEASE#*-}"
|
||||
platforms="linux/amd64,linux/arm64"
|
||||
@@ -195,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 }}
|
||||
@@ -215,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: |
|
||||
@@ -242,12 +216,12 @@ jobs:
|
||||
outputs:
|
||||
build_successful: ${{ steps.output.outputs.build_successful }}
|
||||
|
||||
needs: [inputs, sentry, build_and-push]
|
||||
needs: [sentry, build_and-push]
|
||||
|
||||
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 }}
|
||||
|
||||
84
.github/workflows/buildLoadup.yml
vendored
84
.github/workflows/buildLoadup.yml
vendored
@@ -60,38 +60,12 @@ defaults:
|
||||
|
||||
jobs:
|
||||
|
||||
# JOB: inputs #######################################################################
|
||||
|
||||
# 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
|
||||
outputs:
|
||||
release_not_built: ${{ steps.check.outputs.release_not_built }}
|
||||
@@ -99,7 +73,7 @@ jobs:
|
||||
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 }}
|
||||
@@ -133,15 +107,15 @@ jobs:
|
||||
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 }}
|
||||
@@ -149,7 +123,7 @@ jobs:
|
||||
|
||||
# Checkout latest commit
|
||||
- name: Checkout Medley
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
# Setup release tag
|
||||
- name: Setup Release Tag
|
||||
@@ -163,7 +137,7 @@ jobs:
|
||||
id: maiko
|
||||
run: |
|
||||
tag=""
|
||||
if [ "${{ needs.inputs.outputs.draft }}" = "true" ];
|
||||
if [ "${{ inputs.draft }}" = "true" ];
|
||||
then
|
||||
gh release list --repo ${{ github.repository_owner }}/maiko | grep Draft >/tmp/releases-$$
|
||||
if [ $? -eq 0 ];
|
||||
@@ -219,7 +193,7 @@ jobs:
|
||||
|
||||
# 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
|
||||
@@ -262,14 +236,14 @@ jobs:
|
||||
${{ env.TARBALL_DIR }}/${{ env.MEDLEY_RELEASE_TAG }}-loadups.tgz,
|
||||
${{ env.TARBALL_DIR }}/${{ env.MEDLEY_RELEASE_TAG }}-runtime.tgz
|
||||
tag: ${{ env.MEDLEY_RELEASE_TAG }}
|
||||
draft: ${{ needs.inputs.outputs.draft }}
|
||||
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@v3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: tarballs
|
||||
path: ${{ env.TARBALL_DIR }}
|
||||
@@ -285,16 +259,16 @@ jobs:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs: [inputs, sentry, loadup]
|
||||
needs: [sentry, loadup]
|
||||
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
|
||||
|
||||
# Environment variables
|
||||
- name: Environment variables
|
||||
@@ -311,7 +285,7 @@ jobs:
|
||||
|
||||
# Get the tarballs
|
||||
- name: Get tarballs
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: tarballs
|
||||
path: ${{ env.TARBALL_DIR }}
|
||||
@@ -345,7 +319,7 @@ jobs:
|
||||
mv medley-full-linux-x86_64-*.tgz medley.tgz
|
||||
|
||||
- name: Save medley tar for use in cygwin installers
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: medley-tar
|
||||
path: |
|
||||
@@ -361,10 +335,10 @@ jobs:
|
||||
|
||||
runs-on: macos-12
|
||||
|
||||
needs: [inputs, sentry, loadup]
|
||||
needs: [sentry, loadup]
|
||||
if: |
|
||||
needs.sentry.outputs.release_not_built == 'true'
|
||||
|| needs.inputs.outputs.force == 'true'
|
||||
|| inputs.force == 'true'
|
||||
# if: false
|
||||
|
||||
defaults:
|
||||
@@ -375,7 +349,7 @@ jobs:
|
||||
|
||||
# Checkout latest commit
|
||||
- name: Checkout Medley
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
# Environment variables
|
||||
- name: Environment variables
|
||||
@@ -392,7 +366,7 @@ jobs:
|
||||
|
||||
# Get the tarballs
|
||||
- name: Get tarballs
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: tarballs
|
||||
path: ${{ env.TARBALL_DIR }}
|
||||
@@ -432,10 +406,10 @@ jobs:
|
||||
|
||||
runs-on: windows-2022
|
||||
|
||||
needs: [inputs, sentry, loadup, linux_installer]
|
||||
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 }}
|
||||
@@ -444,7 +418,7 @@ jobs:
|
||||
|
||||
# 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
|
||||
@@ -463,7 +437,7 @@ jobs:
|
||||
|
||||
# Retrieve medley tars from artifact store
|
||||
- name: Retrieve medley tar
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: medley-tar
|
||||
path: installers/cygwin/
|
||||
@@ -535,10 +509,10 @@ jobs:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs: [inputs, sentry, loadup, linux_installer, macos_installer, cygwin_installer]
|
||||
needs: [sentry, loadup, linux_installer, macos_installer, cygwin_installer]
|
||||
if: |
|
||||
needs.sentry.outputs.release_not_built == 'true'
|
||||
|| needs.inputs.outputs.force == 'true'
|
||||
|| inputs.force == 'true'
|
||||
|
||||
steps:
|
||||
|
||||
@@ -556,7 +530,7 @@ jobs:
|
||||
|
||||
# Checkout latest commit
|
||||
- name: Checkout Medley
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
|
||||
# Upload a dummy file to release
|
||||
@@ -587,7 +561,7 @@ jobs:
|
||||
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"
|
||||
@@ -637,19 +611,19 @@ jobs:
|
||||
outputs:
|
||||
build_successful: ${{ steps.output.outputs.build_successful }}
|
||||
|
||||
needs: [inputs, sentry, loadup, downloads_page]
|
||||
needs: [sentry, loadup, downloads_page]
|
||||
|
||||
steps:
|
||||
# Delete the tarballs artifact
|
||||
- name: Delete tarballs artifact
|
||||
uses: geekyeggo/delete-artifact@v2
|
||||
uses: geekyeggo/delete-artifact@v5
|
||||
with:
|
||||
name: tarballs
|
||||
failOnError: false
|
||||
|
||||
# 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 }}
|
||||
|
||||
2
.github/workflows/buildReleaseInclDocker.yml
vendored
2
.github/workflows/buildReleaseInclDocker.yml
vendored
@@ -75,7 +75,7 @@ jobs:
|
||||
steps:
|
||||
- id: one
|
||||
run: >
|
||||
if [ '${{ toJSON(inputs) }}' != 'null' ];
|
||||
if [ '${{ toJSON(inputs) }}' != '{}' ];
|
||||
then
|
||||
echo "draft=${{ inputs.draft }}" >> $GITHUB_OUTPUT;
|
||||
echo "force=${{ inputs.force }}" >> $GITHUB_OUTPUT;
|
||||
|
||||
142
BUILDING.md
142
BUILDING.md
@@ -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.
|
||||
|
||||
|
||||
71
README.md
71
README.md
@@ -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:
|
||||
```
|
||||
@@ -112,7 +112,8 @@ you can continue right where you left off.
|
||||
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.
|
||||
@@ -121,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
|
||||
@@ -133,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.
@@ -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.
|
||||
|
||||
@@ -1,21 +1,20 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
(FILECREATED "12-Feb-92 12:28:48" {DSK}<users>sybalsky>PUBS>IMINDEX.;2 37264
|
||||
|
||||
changes to%: (FNS IM.CHAP.DISPLAYFN)
|
||||
(FILECREATED " 6-Mar-2024 21:19:25" {WMEDLEY}<doctools>IMINDEX.;2 36416
|
||||
|
||||
previous date%: " 8-Dec-91 15:46:22" {DSK}<users>sybalsky>PUBS>IMINDEX.;1)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS IMINDEXCOMS)
|
||||
|
||||
:PREVIOUS-DATE "12-Feb-92 12:28:48" {WMEDLEY}<doctools>IMINDEX.;1)
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1986, 1987, 1988, 1991, 1992 by Xerox Corporation. All rights reserved.
|
||||
")
|
||||
|
||||
(PRETTYCOMPRINT IMINDEXCOMS)
|
||||
|
||||
(RPAQQ IMINDEXCOMS
|
||||
(
|
||||
(* ;;
|
||||
"this file contains the functions used for creating and manipulating index image objects")
|
||||
"this file contains the functions used for creating and manipulating index image objects")
|
||||
|
||||
(FNS IM.INDEX.CLOSEF IM.INDEX.COPYFN IM.INDEX.CREATEOBJ IM.INDEX.DISPLAY.STRING
|
||||
IM.INDEX.DISPLAYFN IM.INDEX.EDIT IM.INDEX.LIST.FROM.STRING IM.INDEX.SIZEFN
|
||||
@@ -32,12 +31,7 @@ Copyright (c) 1986, 1987, 1988, 1991, 1992 by Xerox Corporation. All rights res
|
||||
(COMS (* ; "An image object to set the chapter number, on the TEXTOBJ's proplist, on the INDEXING-CHAPTER property.")
|
||||
(FNS IM.CHAP.COPYFN IM.CHAP.CREATEOBJ IM.CHAP.DISPLAYFN IM.CHAP.SIZEFN IM.CHAP.PUTFN
|
||||
IM.CHAP.GETFN IM.CHAP.BUTTONEVENTFN))
|
||||
(P (ADVISE 'TEDIT.FORMAT.HARDCOPY 'AROUND '(RESETLST
|
||||
(RESETSAVE NIL (LIST (FUNCTION IM.INDEX.CLOSEF
|
||||
)
|
||||
STREAM))
|
||||
*))
|
||||
(IM.INDEX.INIT))))
|
||||
(P (IM.INDEX.INIT))))
|
||||
|
||||
|
||||
|
||||
@@ -494,9 +488,9 @@ Copyright (c) 1986, 1987, 1988, 1991, 1992 by Xerox Corporation. All rights res
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(RECORD IM.INDEX.DATA (NAME TYPE SAV INFO SUBSEC PAGE# . PROPLIST)
|
||||
SUBSEC _ IM.INDEX.DEFAULT.SUBSEC (TYPE? (AND (LISTP DATUM)
|
||||
(IGEQ (LENGTH DATUM)
|
||||
6))))
|
||||
SUBSEC _ IM.INDEX.DEFAULT.SUBSEC (TYPE? (AND (LISTP DATUM)
|
||||
(IGEQ (LENGTH DATUM)
|
||||
6))))
|
||||
)
|
||||
|
||||
(RPAQQ IM.INDEX.OBJ.FREEMENU.SPECS
|
||||
@@ -638,21 +632,15 @@ Copyright (c) 1986, 1987, 1988, 1991, 1992 by Xerox Corporation. All rights res
|
||||
T])
|
||||
)
|
||||
|
||||
(ADVISE 'TEDIT.FORMAT.HARDCOPY 'AROUND '(RESETLST
|
||||
(RESETSAVE NIL (LIST (FUNCTION IM.INDEX.CLOSEF)
|
||||
STREAM))
|
||||
*))
|
||||
|
||||
(IM.INDEX.INIT)
|
||||
(PUTPROPS IMINDEX COPYRIGHT ("Xerox Corporation" 1986 1987 1988 1991 1992))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (2160 15212 (IM.INDEX.CLOSEF 2170 . 2785) (IM.INDEX.COPYFN 2787 . 2972) (
|
||||
IM.INDEX.CREATEOBJ 2974 . 4320) (IM.INDEX.DISPLAY.STRING 4322 . 4743) (IM.INDEX.DISPLAYFN 4745 . 8588)
|
||||
(IM.INDEX.EDIT 8590 . 12058) (IM.INDEX.LIST.FROM.STRING 12060 . 13094) (IM.INDEX.SIZEFN 13096 . 13856
|
||||
) (IM.INDEX.STRING.FROM.LIST 13858 . 14103) (IM.INDEX.PUTFN 14105 . 14294) (IM.INDEX.GETFN 14296 .
|
||||
14451) (IM.INDEX.BUTTONEVENTFN 14453 . 15210)) (15213 17283 (IM.INDEX.INIT 15223 . 17281)) (17284
|
||||
29200 (IM.INDEX.MENU 17294 . 18982) (IM.INDEX.MENU.WHENSELECTEDFN 18984 . 25739) (
|
||||
IM.INDEX.OBJ.FREEMENU.SELECTEDFN 25741 . 29198)) (31736 36879 (IM.CHAP.COPYFN 31746 . 31926) (
|
||||
IM.CHAP.CREATEOBJ 31928 . 33354) (IM.CHAP.DISPLAYFN 33356 . 35316) (IM.CHAP.SIZEFN 35318 . 36320) (
|
||||
IM.CHAP.PUTFN 36322 . 36506) (IM.CHAP.GETFN 36508 . 36669) (IM.CHAP.BUTTONEVENTFN 36671 . 36877)))))
|
||||
(FILEMAP (NIL (1673 14725 (IM.INDEX.CLOSEF 1683 . 2298) (IM.INDEX.COPYFN 2300 . 2485) (
|
||||
IM.INDEX.CREATEOBJ 2487 . 3833) (IM.INDEX.DISPLAY.STRING 3835 . 4256) (IM.INDEX.DISPLAYFN 4258 . 8101)
|
||||
(IM.INDEX.EDIT 8103 . 11571) (IM.INDEX.LIST.FROM.STRING 11573 . 12607) (IM.INDEX.SIZEFN 12609 . 13369
|
||||
) (IM.INDEX.STRING.FROM.LIST 13371 . 13616) (IM.INDEX.PUTFN 13618 . 13807) (IM.INDEX.GETFN 13809 .
|
||||
13964) (IM.INDEX.BUTTONEVENTFN 13966 . 14723)) (14726 16796 (IM.INDEX.INIT 14736 . 16794)) (16797
|
||||
28713 (IM.INDEX.MENU 16807 . 18495) (IM.INDEX.MENU.WHENSELECTEDFN 18497 . 25252) (
|
||||
IM.INDEX.OBJ.FREEMENU.SELECTEDFN 25254 . 28711)) (31229 36372 (IM.CHAP.COPYFN 31239 . 31419) (
|
||||
IM.CHAP.CREATEOBJ 31421 . 32847) (IM.CHAP.DISPLAYFN 32849 . 34809) (IM.CHAP.SIZEFN 34811 . 35813) (
|
||||
IM.CHAP.PUTFN 35815 . 35999) (IM.CHAP.GETFN 36001 . 36162) (IM.CHAP.BUTTONEVENTFN 36164 . 36370)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
268
doctools/IMTEDIT
268
doctools/IMTEDIT
@@ -1,17 +1,13 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "20-Jul-2022 15:10:53"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>working-medley>doctools>IMTEDIT.;2 117347
|
||||
(FILECREATED " 6-Mar-2024 21:18:02" {WMEDLEY}<doctools>IMTEDIT.;4 116622
|
||||
|
||||
:CHANGES-TO (FNS MAKE.IM.DOCUMENT)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:PREVIOUS-DATE " 8-Dec-91 15:41:54"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>working-medley>doctools>IMTEDIT.;1)
|
||||
:CHANGES-TO (FNS TRANSLATE.DUMPOUT MAKE.IM.DOCUMENT)
|
||||
|
||||
:PREVIOUS-DATE "20-Jul-2022 15:10:53" {WMEDLEY}<doctools>IMTEDIT.;2)
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1983-1986, 1991 by Xerox Corporation.
|
||||
")
|
||||
|
||||
(PRETTYCOMPRINT IMTEDITCOMS)
|
||||
|
||||
@@ -493,27 +489,26 @@ Copyright (c) 1983-1986, 1991 by Xerox Corporation.
|
||||
(DUMPOUT FONT LISP DUMP.CHARS SAV])
|
||||
|
||||
(MAKE.IM.DOCUMENT
|
||||
[LAMBDA (FORM OUTFILE.FLG PAGE.LAYOUT OUTPUT.MESSAGE DEFAULT.PARALOOKS PTRFILENAME)
|
||||
(* ; "Edited 20-Jul-2022 15:10 by rmk")
|
||||
[LAMBDA (FORM OUTFILE.FLG PAGE.LAYOUT OUTPUT.MESSAGE DEFAULT.PARALOOKS PTRFILENAME)
|
||||
|
||||
(* ;; "Edited 6-Mar-2024 21:17 by rmk: Fixed backquote commas. Also put IM.INDEX.CLOSEF calls in TEXTPROPs so advice in IMINDEX can be eliminated.")
|
||||
|
||||
(* ;; "Edited 20-Jul-2022 15:10 by rmk")
|
||||
(* mjs " 4-Aug-86 10:52")
|
||||
|
||||
(* * this function creates an IM output file, in XPS-compatible format.
|
||||
If sets up all of the special variables needed by DUMP, evaluates FORM, and sets
|
||||
all of the para and font looks)
|
||||
(* ;;; "this function creates an IM output file, in XPS-compatible format. If sets up all of the special variables needed by DUMP, evaluates FORM, and sets all of the para and font looks")
|
||||
|
||||
(* * If OUTFILE.FLG is NIL, the output file is just sent to the default printer.
|
||||
If OUTFILE.FLG is T, the outfile textstream is simply returned.
|
||||
If OUTFILE.FLG = anything else, it is taken as a file name to put the press file
|
||||
which is created <but not printed>.)
|
||||
(* ;;; "If OUTFILE.FLG is NIL, the output file is just sent to the default printer. If OUTFILE.FLG is T, the outfile textstream is simply returned. If OUTFILE.FLG = anything else, it is taken as a file name to put the press file which is created <but not printed>.")
|
||||
|
||||
(* * if PAGE.LAYOUT is non-NIL, it should be the compound page layout to be used.)
|
||||
(* ;;; "if PAGE.LAYOUT is non-NIL, it should be the compound page layout to be used.")
|
||||
|
||||
(* * if OUTPUT.MESSAGE is non-NIL, it is printed on the hardcopy output)
|
||||
(* ;;; "if OUTPUT.MESSAGE is non-NIL, it is printed on the hardcopy output")
|
||||
|
||||
(* * PTRFILENAME is the name to be used if an index pointer file is generated
|
||||
during hardcopy <by printing index objects>)
|
||||
(* ;;; "PTRFILENAME is the name to be used if an index pointer file is generated during hardcopy <by printing index objects>")
|
||||
|
||||
(PROG ((IM.OUTFILE (OPENTEXTSTREAM NIL NIL NIL NIL (LIST 'IM.INDEX.PTRFILENAME PTRFILENAME)))
|
||||
(PROG ([IM.OUTFILE (OPENTEXTSTREAM NIL NIL NIL NIL `(IM.INDEX.PTRFILENAME ,PTRFILENAME
|
||||
AFTERHARDCOPYFN (FUNCTION
|
||||
IM.INDEX.INIT]
|
||||
(FONT.STACK (CONS))
|
||||
(IM.TEDIT.LAST.PARA.BEGIN 1)
|
||||
(IM.TEDIT.LAST.FONT.BEGIN 1)
|
||||
@@ -532,7 +527,7 @@ Copyright (c) 1983-1986, 1991 by Xerox Corporation.
|
||||
(DUMP.HEADERS.FOOTERS " " " ")
|
||||
(DUMPOUT CR CR START.PARA PARALOOKS
|
||||
`(TYPE PAGEHEADING SUBTYPE DRAFTMESSAGE QUAD LEFT 1STLEFTMARGIN 0 LEFTMARGIN 0
|
||||
RIGHTMARGIN %, IM.TEXT.RIGHTMARGIN)
|
||||
RIGHTMARGIN ,IM.TEXT.RIGHTMARGIN)
|
||||
DUMP.CHARS
|
||||
(COND
|
||||
(IM.DRAFT.FLG (CONCAT "***DRAFT*** " (DATE)
|
||||
@@ -543,73 +538,65 @@ Copyright (c) 1983-1986, 1991 by Xerox Corporation.
|
||||
(COND
|
||||
(IM.EVEN.FLG
|
||||
|
||||
(* if you must quarantee that you have an even number of pages for two-sided
|
||||
copying, dump out a blank page no matter what --
|
||||
it can always be discarded)
|
||||
(* ;; "if you must quarantee that you have an even number of pages for two-sided copying, dump out a blank page no matter what -- it can always be discarded")
|
||||
|
||||
(DUMPOUT CR CR START.PARA PARALOOKS
|
||||
`(NEWPAGEBEFORE T QUAD LEFT 1STLEFTMARGIN 0 LEFTMARGIN 0 RIGHTMARGIN %,
|
||||
IM.TEXT.RIGHTMARGIN SPECIALX %, IM.BLANKPAGE.SPECIALX SPECIALY %,
|
||||
IM.BLANKPAGE.SPECIALY)
|
||||
`(NEWPAGEBEFORE T QUAD LEFT 1STLEFTMARGIN 0 LEFTMARGIN 0 RIGHTMARGIN
|
||||
,IM.TEXT.RIGHTMARGIN SPECIALX ,IM.BLANKPAGE.SPECIALX SPECIALY
|
||||
,IM.BLANKPAGE.SPECIALY)
|
||||
DUMP.CHARS "[This page intentionally left blank]" CR CR)))
|
||||
|
||||
(* after converting document, make sure that last para is formatted correctly by
|
||||
changing font, ending current para, and starting new para)
|
||||
(* ;; "after converting document, make sure that last para is formatted correctly by changing font, ending current para, and starting new para")
|
||||
|
||||
(DUMPOUT CR CR FONT NIL)
|
||||
(DUMP '(START.PARA))
|
||||
|
||||
(* * set page format)
|
||||
(* ;;; "set page format")
|
||||
|
||||
[TEDIT.PAGEFORMAT IM.OUTFILE
|
||||
(COND
|
||||
(PAGE.LAYOUT)
|
||||
(T (TEDIT.COMPOUND.PAGEFORMAT [TEDIT.SINGLE.PAGEFORMAT NIL NIL NIL NIL NIL
|
||||
IM.PAGE.LEFTMARGIN IM.PAGE.RIGHTMARGIN
|
||||
IM.PAGE.FIRST.TOPMARGIN IM.PAGE.BOTTOMMARGIN
|
||||
1 NIL NIL
|
||||
`((RECTOFOOT %, IM.PAGE.LEFTMARGIN %,
|
||||
IM.FOOTER.Y)
|
||||
(RECTOFOOTRULE %, IM.PAGE.LEFTMARGIN %,
|
||||
IM.FOOTER.RULE.Y)
|
||||
(DRAFTMESSAGE %, IM.DRAFT.MESSAGE.X %,
|
||||
IM.DRAFT.MESSAGE.BOTTOM.Y]
|
||||
(T (TEDIT.COMPOUND.PAGEFORMAT [TEDIT.SINGLE.PAGEFORMAT
|
||||
NIL NIL NIL NIL NIL IM.PAGE.LEFTMARGIN
|
||||
IM.PAGE.RIGHTMARGIN IM.PAGE.FIRST.TOPMARGIN
|
||||
IM.PAGE.BOTTOMMARGIN 1 NIL NIL
|
||||
`((RECTOFOOT ,IM.PAGE.LEFTMARGIN ,IM.FOOTER.Y)
|
||||
(RECTOFOOTRULE ,IM.PAGE.LEFTMARGIN
|
||||
,IM.FOOTER.RULE.Y)
|
||||
(DRAFTMESSAGE ,IM.DRAFT.MESSAGE.X
|
||||
,IM.DRAFT.MESSAGE.BOTTOM.Y]
|
||||
[TEDIT.SINGLE.PAGEFORMAT NIL NIL NIL NIL NIL IM.PAGE.LEFTMARGIN
|
||||
IM.PAGE.RIGHTMARGIN IM.PAGE.TOPMARGIN IM.PAGE.BOTTOMMARGIN 1 NIL
|
||||
NIL `((DRAFTMESSAGE %, IM.DRAFT.MESSAGE.X %,
|
||||
IM.DRAFT.MESSAGE.TOP.Y)
|
||||
(VERSOHEAD %, IM.PAGE.LEFTMARGIN %, IM.HEADER.Y)
|
||||
(VERSOHEADRULE %, IM.PAGE.LEFTMARGIN %, IM.HEADER.RULE.Y)
|
||||
(VERSOFOOT %, IM.PAGE.LEFTMARGIN %, IM.FOOTER.Y)
|
||||
(VERSOFOOTRULE %, IM.PAGE.LEFTMARGIN %, IM.FOOTER.RULE.Y)
|
||||
(DRAFTMESSAGE %, IM.DRAFT.MESSAGE.X %,
|
||||
IM.DRAFT.MESSAGE.BOTTOM.Y]
|
||||
NIL `((DRAFTMESSAGE ,IM.DRAFT.MESSAGE.X ,IM.DRAFT.MESSAGE.TOP.Y)
|
||||
(VERSOHEAD ,IM.PAGE.LEFTMARGIN ,IM.HEADER.Y)
|
||||
(VERSOHEADRULE ,IM.PAGE.LEFTMARGIN ,IM.HEADER.RULE.Y)
|
||||
(VERSOFOOT ,IM.PAGE.LEFTMARGIN ,IM.FOOTER.Y)
|
||||
(VERSOFOOTRULE ,IM.PAGE.LEFTMARGIN ,IM.FOOTER.RULE.Y)
|
||||
(DRAFTMESSAGE ,IM.DRAFT.MESSAGE.X
|
||||
,IM.DRAFT.MESSAGE.BOTTOM.Y]
|
||||
(TEDIT.SINGLE.PAGEFORMAT NIL NIL NIL NIL NIL IM.PAGE.LEFTMARGIN
|
||||
IM.PAGE.RIGHTMARGIN IM.PAGE.TOPMARGIN IM.PAGE.BOTTOMMARGIN 1 NIL
|
||||
NIL `((DRAFTMESSAGE %, IM.DRAFT.MESSAGE.X %,
|
||||
IM.DRAFT.MESSAGE.TOP.Y)
|
||||
(RECTOHEAD %, IM.PAGE.LEFTMARGIN %, IM.HEADER.Y)
|
||||
(RECTOHEADRULE %, IM.PAGE.LEFTMARGIN %, IM.HEADER.RULE.Y)
|
||||
(RECTOFOOT %, IM.PAGE.LEFTMARGIN %, IM.FOOTER.Y)
|
||||
(RECTOFOOTRULE %, IM.PAGE.LEFTMARGIN %, IM.FOOTER.RULE.Y)
|
||||
(DRAFTMESSAGE %, IM.DRAFT.MESSAGE.X %,
|
||||
IM.DRAFT.MESSAGE.BOTTOM.Y]
|
||||
NIL `((DRAFTMESSAGE ,IM.DRAFT.MESSAGE.X ,IM.DRAFT.MESSAGE.TOP.Y)
|
||||
(RECTOHEAD ,IM.PAGE.LEFTMARGIN ,IM.HEADER.Y)
|
||||
(RECTOHEADRULE ,IM.PAGE.LEFTMARGIN ,IM.HEADER.RULE.Y)
|
||||
(RECTOFOOT ,IM.PAGE.LEFTMARGIN ,IM.FOOTER.Y)
|
||||
(RECTOFOOTRULE ,IM.PAGE.LEFTMARGIN ,IM.FOOTER.RULE.Y)
|
||||
(DRAFTMESSAGE ,IM.DRAFT.MESSAGE.X
|
||||
,IM.DRAFT.MESSAGE.BOTTOM.Y]
|
||||
|
||||
(* * dump default char and para looks for whole document --
|
||||
and looks that should be different should be specified in the fns)
|
||||
(* ;;; "dump default char and para looks for whole document -- and looks that should be different should be specified in the fns")
|
||||
|
||||
(TEDIT.LOOKS IM.OUTFILE IM.TEXT.FONT 1 (GETFILEINFO IM.OUTFILE 'LENGTH))
|
||||
(TEDIT.PARALOOKS IM.OUTFILE
|
||||
[COND
|
||||
(DEFAULT.PARALOOKS)
|
||||
(T `(QUAD JUSTIFIED 1STLEFTMARGIN %, IM.TEXT.LEFTMARGIN LEFTMARGIN %,
|
||||
IM.TEXT.LEFTMARGIN RIGHTMARGIN %, IM.TEXT.RIGHTMARGIN LINELEADING 0
|
||||
PARALEADING 5 POSTPARALEADING 0]
|
||||
(TEDIT.PARALOOKS IM.OUTFILE [COND
|
||||
(DEFAULT.PARALOOKS)
|
||||
(T `(QUAD JUSTIFIED 1STLEFTMARGIN ,IM.TEXT.LEFTMARGIN
|
||||
LEFTMARGIN ,IM.TEXT.LEFTMARGIN RIGHTMARGIN
|
||||
,IM.TEXT.RIGHTMARGIN LINELEADING 0 PARALEADING 5
|
||||
POSTPARALEADING 0]
|
||||
1
|
||||
(GETFILEINFO IM.OUTFILE 'LENGTH))
|
||||
|
||||
(* must reverse list because the order of some char and paragraph looks is
|
||||
significant << earlier looks are overridden by later ones >>)
|
||||
(* ;; "must reverse list because the order of some char and paragraph looks is significant << earlier looks are overridden by later ones >>")
|
||||
|
||||
(SETQ IM.CHARLOOKS (DREVERSE IM.CHARLOOKS))
|
||||
(SETQ IM.PARALOOKS (DREVERSE IM.PARALOOKS))
|
||||
@@ -2309,83 +2296,75 @@ page edge.)
|
||||
(DEFINEQ
|
||||
|
||||
(TRANSLATE.DUMPOUT
|
||||
[LAMBDA (DUMPOUT.ARGS) (* mjs "18-Sep-85 16:17")
|
||||
[LAMBDA (DUMPOUT.ARGS) (* mjs "18-Sep-85 16:17")
|
||||
|
||||
(* * this function translates the DUMPOUT macro form into a PROGN form that
|
||||
calls a series of functions, such as DUMP.)
|
||||
(* * this function translates the DUMPOUT macro form into a PROGN form that calls
|
||||
a series of functions, such as DUMP.)
|
||||
|
||||
(* * the indentation code has been commented out ---
|
||||
will try indenting everything to same, unless specified otherwise with
|
||||
PARALOOKS)
|
||||
will try indenting everything to same, unless specified otherwise with PARALOOKS)
|
||||
|
||||
(PROG ((DUMPOUT.FORMS NIL)
|
||||
(DUMPOUT.UNDO NIL)
|
||||
COMM COMM.ARG)
|
||||
[while DUMPOUT.ARGS do (SELECTQ (SETQ COMM (pop DUMPOUT.ARGS))
|
||||
(NIL)
|
||||
((CR TAB START.PARA DUMP.FOOTNOTES START.SUPER START.SUB
|
||||
END.SUPER END.SUB)
|
||||
(* just pass these atoms as commands
|
||||
to DUMP)
|
||||
(push DUMPOUT.FORMS (LIST 'DUMP.FORMAT
|
||||
(KWOTE COMM))))
|
||||
((FLUSH.ARG TRIVIAL.ARG DUMP.ARG)
|
||||
(push DUMPOUT.FORMS (LIST COMM)))
|
||||
(INDENT
|
||||
(NIL)
|
||||
((CR TAB START.PARA DUMP.FOOTNOTES START.SUPER START.SUB
|
||||
END.SUPER END.SUB) (* just pass these atoms as commands
|
||||
to DUMP)
|
||||
(push DUMPOUT.FORMS (LIST 'DUMP.FORMAT (KWOTE COMM))))
|
||||
((FLUSH.ARG TRIVIAL.ARG DUMP.ARG)
|
||||
(push DUMPOUT.FORMS (LIST COMM)))
|
||||
(INDENT
|
||||
|
||||
(* * SELECTQ (SETQ COMM.ARG (pop DUMPOUT.ARGS))
|
||||
(INIT (push DUMPOUT.FORMS (QUOTE (PUT.MY.PROP
|
||||
(QUOTE INDENT) INITIAL.INDENT))) (push DUMPOUT.FORMS
|
||||
(QUOTE (PUT.MY.PROP (QUOTE WIDTH) INITIAL.WIDTH)))
|
||||
(push DUMPOUT.FORMS (QUOTE (DUMP.FORMAT
|
||||
(QUOTE INDENT) INITIAL.INDENT)))) (NONE
|
||||
(push DUMPOUT.FORMS (QUOTE (PUT.MY.PROP
|
||||
(QUOTE INDENT) (QUOTE NONE)))) (push DUMPOUT.FORMS
|
||||
(QUOTE (PUT.MY.PROP (QUOTE WIDTH) (ANC.WIDTH))))
|
||||
(push DUMPOUT.FORMS (QUOTE (DUMP.FORMAT
|
||||
(QUOTE INDENT) (QUOTE NONE))))) (push DUMPOUT.FORMS
|
||||
(LIST (QUOTE (LAMBDA (I) (PUT.MY.PROP (QUOTE INDENT)
|
||||
(IPLUS (ANC.INDENT) I)) (PUT.MY.PROP (QUOTE WIDTH)
|
||||
(IDIFFERENCE (ANC.WIDTH) I)) (DUMP.FORMAT
|
||||
(QUOTE INDENT) (IPLUS (ANC.INDENT) I)))) COMM.ARG)))
|
||||
(INIT (push DUMPOUT.FORMS (QUOTE (PUT.MY.PROP
|
||||
(QUOTE INDENT) INITIAL.INDENT))) (push DUMPOUT.FORMS
|
||||
(QUOTE (PUT.MY.PROP (QUOTE WIDTH) INITIAL.WIDTH)))
|
||||
(push DUMPOUT.FORMS (QUOTE (DUMP.FORMAT (QUOTE INDENT) INITIAL.INDENT))))
|
||||
(NONE (push DUMPOUT.FORMS (QUOTE (PUT.MY.PROP
|
||||
(QUOTE INDENT) (QUOTE NONE)))) (push DUMPOUT.FORMS
|
||||
(QUOTE (PUT.MY.PROP (QUOTE WIDTH) (ANC.WIDTH))))
|
||||
(push DUMPOUT.FORMS (QUOTE (DUMP.FORMAT (QUOTE INDENT)
|
||||
(QUOTE NONE))))) (push DUMPOUT.FORMS (LIST
|
||||
(QUOTE (LAMBDA (I) (PUT.MY.PROP (QUOTE INDENT)
|
||||
(IPLUS (ANC.INDENT) I)) (PUT.MY.PROP (QUOTE WIDTH)
|
||||
(IDIFFERENCE (ANC.WIDTH) I)) (DUMP.FORMAT
|
||||
(QUOTE INDENT) (IPLUS (ANC.INDENT) I)))) COMM.ARG)))
|
||||
|
||||
(* * push DUMPOUT.UNDO (QUOTE INDENT))
|
||||
|
||||
(SETQ COMM.ARG (pop DUMPOUT.ARGS)))
|
||||
(WIDTH (push DUMPOUT.FORMS
|
||||
(LIST 'PUT.MY.PROP (KWOTE 'WIDTH)
|
||||
(pop DUMPOUT.ARGS))))
|
||||
(FONT (SETQ COMM.ARG (pop DUMPOUT.ARGS))
|
||||
[push DUMPOUT.FORMS
|
||||
(LIST 'DUMP.FORMAT (KWOTE 'FONT)
|
||||
(COND
|
||||
((LISTGET IM.TEDIT.FONT.DEFS
|
||||
COMM.ARG)
|
||||
(KWOTE COMM.ARG))
|
||||
(T COMM.ARG]
|
||||
(push DUMPOUT.UNDO 'FONT))
|
||||
(PARALOOKS (push DUMPOUT.FORMS
|
||||
(LIST 'DUMP.FORMAT (KWOTE 'PARALOOKS)
|
||||
(pop DUMPOUT.ARGS))))
|
||||
(DUMP.CHARS (push DUMPOUT.FORMS
|
||||
(LIST (FUNCTION IM.DUMP.CHARS)
|
||||
(SETQ COMM.ARG (pop DUMPOUT.ARGS)))
|
||||
(WIDTH (push DUMPOUT.FORMS (LIST 'PUT.MY.PROP
|
||||
(KWOTE 'WIDTH)
|
||||
(pop DUMPOUT.ARGS))))
|
||||
(push DUMPOUT.FORMS (LIST 'DUMP.FORMAT
|
||||
(KWOTE 'TEXT)
|
||||
(LIST 'MAKE.SAVE COMM]
|
||||
[for X in DUMPOUT.UNDO do (push DUMPOUT.FORMS (LIST 'DUMP.FORMAT
|
||||
(KWOTE 'UNDO)
|
||||
(KWOTE X]
|
||||
(FONT (SETQ COMM.ARG (pop DUMPOUT.ARGS))
|
||||
[push DUMPOUT.FORMS (LIST 'DUMP.FORMAT (KWOTE 'FONT)
|
||||
(COND
|
||||
((LISTGET IM.TEDIT.FONT.DEFS
|
||||
COMM.ARG)
|
||||
(KWOTE COMM.ARG))
|
||||
(T COMM.ARG]
|
||||
(push DUMPOUT.UNDO 'FONT))
|
||||
(PARALOOKS (push DUMPOUT.FORMS (LIST 'DUMP.FORMAT
|
||||
(KWOTE 'PARALOOKS)
|
||||
(pop DUMPOUT.ARGS))))
|
||||
(DUMP.CHARS (push DUMPOUT.FORMS (LIST (FUNCTION IM.DUMP.CHARS)
|
||||
(pop DUMPOUT.ARGS))))
|
||||
(push DUMPOUT.FORMS (LIST 'DUMP.FORMAT (KWOTE 'TEXT)
|
||||
(LIST 'MAKE.SAVE COMM]
|
||||
[for X in DUMPOUT.UNDO do (push DUMPOUT.FORMS (LIST 'DUMP.FORMAT (KWOTE 'UNDO)
|
||||
(KWOTE X]
|
||||
|
||||
(* * push DUMPOUT.FORMS (QUOTE (PUT.MY.PROP
|
||||
(QUOTE INDENT) DUMPOUT.SAVE.INDENT)))
|
||||
(QUOTE INDENT) DUMPOUT.SAVE.INDENT)))
|
||||
|
||||
(* * push DUMPOUT.FORMS (QUOTE (PUT.MY.PROP
|
||||
(QUOTE WIDTH) DUMPOUT.SAVE.WIDTH)))
|
||||
(QUOTE WIDTH) DUMPOUT.SAVE.WIDTH)))
|
||||
|
||||
(* * RETURN (APPEND (QUOTE (PROG ((DUMPOUT.SAVE.INDENT
|
||||
(GET.MY.PROP (QUOTE INDENT))) (DUMPOUT.SAVE.WIDTH
|
||||
(GET.MY.PROP (QUOTE WIDTH)))))) (DREVERSE DUMPOUT.FORMS)))
|
||||
(GET.MY.PROP (QUOTE INDENT))) (DUMPOUT.SAVE.WIDTH
|
||||
(GET.MY.PROP (QUOTE WIDTH)))))) (DREVERSE DUMPOUT.FORMS)))
|
||||
|
||||
(RETURN (CONS 'PROGN (DREVERSE DUMPOUT.FORMS])
|
||||
|
||||
@@ -2408,25 +2387,24 @@ page edge.)
|
||||
|
||||
(PUTPROPS SAVE.DUMPOUT MACRO (X (TRANSLATE.SAVE.DUMPOUT X)))
|
||||
)
|
||||
(PUTPROPS IMTEDIT COPYRIGHT ("Xerox Corporation" 1983 1984 1985 1986 1991))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (10773 38278 (IM.TEDIT 10783 . 12464) (DUMP 12466 . 14761) (DUMP.HEADERS.FOOTERS 14763
|
||||
. 17129) (DUMP.HRULE 17131 . 18282) (CHANGE.FONT 18284 . 19478) (IM.BOUT.IMAGEOBJ 19480 . 19803) (
|
||||
IM.TEDIT.DUMP.COMMANDS 19805 . 23358) (IM.TEDIT.DUMP.FOOTNOTES 23360 . 23801) (IM.TEDIT.DUMP.PARA
|
||||
23803 . 24577) (INDEXX.PARSE.TYPE 24579 . 25874) (FORMAT.DEF 25876 . 28007) (FORMAT.LISPWORD 28009 .
|
||||
28160) (MAKE.IM.DOCUMENT 28162 . 37133) (PRINT.NOTE 37135 . 37349) (SEND.INFO 37351 . 38276)) (38387
|
||||
42405 (IM.VRULE.DISPLAYFN 38397 . 38721) (CREATE.VRULE.OBJECT 38723 . 40503) (PRINT.VRULES.ON.PAGE
|
||||
40505 . 42403)) (42563 47318 (IM.FOLIO.DISPLAYFN 42573 . 43251) (IM.FOLIO.SIZEFN 43253 . 44102) (
|
||||
CREATE.FOLIO.OBJECT 44104 . 45650) (GET.FOLIO.STRING 45652 . 47316)) (47450 93690 (ARG#TOPROG 47460 .
|
||||
47599) (BIGLISPCODE#TOPROG 47601 . 48837) (BRACKET#TOPROG 48839 . 49003) (CHAPTER#TOPROG 49005 . 51686
|
||||
) (COMMENT#TOPROG 51688 . 52240) (DEF#TOPROG 52242 . 55577) (FIGURE#TOPROG 55579 . 56923) (FN#TOPROG
|
||||
56925 . 57322) (FNDEF#TOPROG 57324 . 61216) (FOOT#TOPROG 61218 . 61759) (INCLUDE#TOPROG 61761 . 62076)
|
||||
(INDEX#TOPROG 62078 . 63168) (INDEXX#TOPROG 63170 . 65251) (IT#TOPROG 65253 . 65394) (LBRACKET#TOPROG
|
||||
65396 . 65550) (LISP#TOPROG 65552 . 65693) (LISPCODE#TOPROG 65695 . 66814) (LISPWORD#TOPROG 66816 .
|
||||
67556) (LIST#TOPROG 67558 . 71980) (MACDEF#TOPROG 71982 . 73160) (NOTE#TOPROG 73162 . 73842) (
|
||||
PRINT.SPECIAL.CHARS#TOPROG 73844 . 74821) (PROPDEF#TOPROG 74823 . 75100) (RBRACKET#TOPROG 75102 .
|
||||
75256) (REF#TOPROG 75258 . 83097) (RM#TOPROG 83099 . 83237) (SUB#TOPROG 83239 . 83387) (SUBSEC#TOPROG
|
||||
83389 . 87892) (SUPER#TOPROG 87894 . 88048) (TABLE#TOPROG 88050 . 92002) (TAG#TOPROG 92004 . 92271) (
|
||||
TERM#TOPROG 92273 . 92586) (VAR#TOPROG 92588 . 92991) (VARDEF#TOPROG 92993 . 93688)) (111336 116764 (
|
||||
TRANSLATE.DUMPOUT 111346 . 116363) (TRANSLATE.SAVE.DUMPOUT 116365 . 116762)))))
|
||||
(FILEMAP (NIL (10668 38115 (IM.TEDIT 10678 . 12359) (DUMP 12361 . 14656) (DUMP.HEADERS.FOOTERS 14658
|
||||
. 17024) (DUMP.HRULE 17026 . 18177) (CHANGE.FONT 18179 . 19373) (IM.BOUT.IMAGEOBJ 19375 . 19698) (
|
||||
IM.TEDIT.DUMP.COMMANDS 19700 . 23253) (IM.TEDIT.DUMP.FOOTNOTES 23255 . 23696) (IM.TEDIT.DUMP.PARA
|
||||
23698 . 24472) (INDEXX.PARSE.TYPE 24474 . 25769) (FORMAT.DEF 25771 . 27902) (FORMAT.LISPWORD 27904 .
|
||||
28055) (MAKE.IM.DOCUMENT 28057 . 36970) (PRINT.NOTE 36972 . 37186) (SEND.INFO 37188 . 38113)) (38224
|
||||
42242 (IM.VRULE.DISPLAYFN 38234 . 38558) (CREATE.VRULE.OBJECT 38560 . 40340) (PRINT.VRULES.ON.PAGE
|
||||
40342 . 42240)) (42400 47155 (IM.FOLIO.DISPLAYFN 42410 . 43088) (IM.FOLIO.SIZEFN 43090 . 43939) (
|
||||
CREATE.FOLIO.OBJECT 43941 . 45487) (GET.FOLIO.STRING 45489 . 47153)) (47287 93527 (ARG#TOPROG 47297 .
|
||||
47436) (BIGLISPCODE#TOPROG 47438 . 48674) (BRACKET#TOPROG 48676 . 48840) (CHAPTER#TOPROG 48842 . 51523
|
||||
) (COMMENT#TOPROG 51525 . 52077) (DEF#TOPROG 52079 . 55414) (FIGURE#TOPROG 55416 . 56760) (FN#TOPROG
|
||||
56762 . 57159) (FNDEF#TOPROG 57161 . 61053) (FOOT#TOPROG 61055 . 61596) (INCLUDE#TOPROG 61598 . 61913)
|
||||
(INDEX#TOPROG 61915 . 63005) (INDEXX#TOPROG 63007 . 65088) (IT#TOPROG 65090 . 65231) (LBRACKET#TOPROG
|
||||
65233 . 65387) (LISP#TOPROG 65389 . 65530) (LISPCODE#TOPROG 65532 . 66651) (LISPWORD#TOPROG 66653 .
|
||||
67393) (LIST#TOPROG 67395 . 71817) (MACDEF#TOPROG 71819 . 72997) (NOTE#TOPROG 72999 . 73679) (
|
||||
PRINT.SPECIAL.CHARS#TOPROG 73681 . 74658) (PROPDEF#TOPROG 74660 . 74937) (RBRACKET#TOPROG 74939 .
|
||||
75093) (REF#TOPROG 75095 . 82934) (RM#TOPROG 82936 . 83074) (SUB#TOPROG 83076 . 83224) (SUBSEC#TOPROG
|
||||
83226 . 87729) (SUPER#TOPROG 87731 . 87885) (TABLE#TOPROG 87887 . 91839) (TAG#TOPROG 91841 . 92108) (
|
||||
TERM#TOPROG 92110 . 92423) (VAR#TOPROG 92425 . 92828) (VARDEF#TOPROG 92830 . 93525)) (111173 116115 (
|
||||
TRANSLATE.DUMPOUT 111183 . 115714) (TRANSLATE.SAVE.DUMPOUT 115716 . 116113)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
@@ -1,11 +1,12 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "16-Jun-2023 17:20:09" {DSK}<home>frank>il>medley>gmedley>greetfiles>APPS-INIT.;11 21130
|
||||
(FILECREATED "25-Feb-2024 13:56:23" {DSK}<home>frank>il>medley>gmedley>greetfiles>APPS-INIT.;17 23321
|
||||
|
||||
:CHANGES-TO (FNS Apps.DoInit)
|
||||
:CHANGES-TO (VARS APPS-INITCOMS)
|
||||
(FNS Apps.DoInit Apps.AroundExitFn)
|
||||
|
||||
:PREVIOUS-DATE "19-Jan-2023 12:44:20"
|
||||
{DSK}<home>frank>il>medley>gmedley>greetfiles>APPS-INIT.;10)
|
||||
:PREVIOUS-DATE "25-Feb-2024 13:14:02"
|
||||
{DSK}<home>frank>il>medley>gmedley>greetfiles>APPS-INIT.;16)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT APPS-INITCOMS)
|
||||
@@ -16,8 +17,9 @@
|
||||
(GLOBALVARS Apps.NotecardsActivated Apps.RoomsActivated)
|
||||
(INITVARS (Apps.NotecardsActivated NIL)
|
||||
(Apps.RoomsActivated NIL))
|
||||
(FNS Apps.InitNotecards Apps.DoInit Apps.CreateButtons Apps.CreateLabel Apps.ActivateCLOS
|
||||
Apps.ActivateRooms Apps.ShowDoc XCL-USER::EXEC_INTERLISP)
|
||||
(FNS Apps.InitNotecards Apps.SetUpNOTECARDSDIRECTORIES Apps.DoInit Apps.CreateButtons
|
||||
Apps.CreateLabel Apps.ActivateCLOS Apps.ActivateRooms Apps.ShowDoc
|
||||
XCL-USER::EXEC_INTERLISP Apps.AroundExitFn)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY (P (Apps.DoInit)))
|
||||
(DECLARE%: FIRST DONTEVAL@LOAD DOCOPY (P (BKSYSBUF " "])
|
||||
|
||||
@@ -90,6 +92,33 @@
|
||||
(if (NOT DoNotRefreshButtons)
|
||||
then (Apps.CreateButtons])
|
||||
|
||||
(Apps.SetUpNOTECARDSDIRECTORIES
|
||||
[LAMBDA NIL
|
||||
|
||||
(* ;; "Find the location of the Notecards directory and call NC.SetUpNOTECARDSDIRECTORIES.")
|
||||
|
||||
(* ;; " This is needed to make sure that lazy loading of Notecard types works.")
|
||||
|
||||
(LET* [(LOC1 (CONCAT MEDLEYDIR "notecards>"))
|
||||
(LOC2 (CONCAT MEDLEYDIR "..>notecards>"))
|
||||
(LOC3 (CONCAT MEDLEYDIR "..>..>notecards>"))
|
||||
(NCDIR (for LOC in (LIST LOC1 LOC2 LOC3) thereis (OR (INFILEP (CONCAT LOC
|
||||
"system>NOTECARDS"))
|
||||
(INFILEP (CONCAT LOC
|
||||
"system>NOTECARDS.LCOM"
|
||||
]
|
||||
(if NCDIR
|
||||
then [SETQ NCDIR (OR (INFILEP (CONCAT NCDIR "system>NOTECARDS"))
|
||||
(INFILEP (CONCAT NCDIR "system>NOTECARDS.LCOM"]
|
||||
(SETQ NCDIR (SUBSTRING NCDIR 1 (IDIFFERENCE (STRPOS "system>NOTECARDS" NCDIR)
|
||||
1)))
|
||||
(NC.SetUpNOTECARDSDIRECTORIES NCDIR)
|
||||
T
|
||||
else (PRIN1 "Warning: Notecards directory could not be found." T)
|
||||
(PRIN1 "Hence, NOTECARDSDIRECTORIES is probably not set correctly" T)
|
||||
(PRIN1 "and Notecards will not work properly." T)
|
||||
NIL])
|
||||
|
||||
(Apps.DoInit
|
||||
[LAMBDA NIL
|
||||
|
||||
@@ -173,7 +202,16 @@
|
||||
|
||||
(* ;; " Make sure Notecards doesn't try to load its HASH file in NC.PostGreet")
|
||||
|
||||
(SETTOPVAL '\NC.SourceAccessFlg NIL])
|
||||
(SETTOPVAL '\NC.SourceAccessFlg NIL)
|
||||
|
||||
(* ;; "Setup NOTECARDSDIRECTORIES.")
|
||||
|
||||
(Apps.SetUpNOTECARDSDIRECTORIES)
|
||||
|
||||
(* ;; "Add AROUNDEXITFN to ensure NOTECARDSDIRECTORIES get reset after LOGOUT, etc.")
|
||||
|
||||
(SETQ AROUNDEXITFNS (LSUBST '(MEDLEY-INIT-VARS Apps.AroundExitFn)
|
||||
'MEDLEY-INIT-VARS AROUNDEXITFNS])
|
||||
|
||||
(Apps.CreateButtons
|
||||
[LAMBDA (DoDocsToo) (* ; "Edited 13-Dec-2022 12:51 by frank")
|
||||
@@ -366,6 +404,11 @@
|
||||
YCOORD _ (IDIFFERENCE SCREENHEIGHT 460]
|
||||
(XCL:SET-DEFAULT-EXEC-TYPE 'INTERLISP)
|
||||
(XCL:SET-EXEC-TYPE 'INTERLISP])
|
||||
|
||||
(Apps.AroundExitFn
|
||||
[LAMBDA (EVENT)
|
||||
(if (MEMB EVENT '(AFTERLOGOUT AFTERSYSOUT AFTERSAVEVM))
|
||||
then (Apps.SetUpNOTECARDSDIRECTORIES])
|
||||
)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY
|
||||
|
||||
@@ -376,8 +419,8 @@
|
||||
(BKSYSBUF " ")
|
||||
)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (1109 20996 (Apps.InitNotecards 1119 . 4981) (Apps.DoInit 4983 . 8227) (
|
||||
Apps.CreateButtons 8229 . 17053) (Apps.CreateLabel 17055 . 17865) (Apps.ActivateCLOS 17867 . 19216) (
|
||||
Apps.ActivateRooms 19218 . 20069) (Apps.ShowDoc 20071 . 20220) (XCL-USER::EXEC_INTERLISP 20222 . 20994
|
||||
)))))
|
||||
(FILEMAP (NIL (1229 23187 (Apps.InitNotecards 1239 . 5101) (Apps.SetUpNOTECARDSDIRECTORIES 5103 . 6658
|
||||
) (Apps.DoInit 6660 . 10257) (Apps.CreateButtons 10259 . 19083) (Apps.CreateLabel 19085 . 19895) (
|
||||
Apps.ActivateCLOS 19897 . 21246) (Apps.ActivateRooms 21248 . 22099) (Apps.ShowDoc 22101 . 22250) (
|
||||
XCL-USER::EXEC_INTERLISP 22252 . 23024) (Apps.AroundExitFn 23026 . 23185)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
@@ -1,165 +1,165 @@
|
||||
; Copyright (C) 2021-2023 by Bill Stewart (bstewart at iname.com)
|
||||
;
|
||||
; This program is free software; you can redistribute it and/or modify it under
|
||||
; the terms of the GNU Lesser General Public License as published by the Free
|
||||
; Software Foundation; either version 3 of the License, or (at your option) any
|
||||
; later version.
|
||||
;
|
||||
; This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
; FOR A PARTICULAR PURPOSE. See the GNU General Lesser Public License for more
|
||||
; details.
|
||||
;
|
||||
; You should have received a copy of the GNU Lesser General Public License
|
||||
; along with this program. If not, see https://www.gnu.org/licenses/.
|
||||
|
||||
; Sample Inno Setup (https://www.jrsoftware.org/isinfo.php) script
|
||||
; demonstrating use of PathMgr.dll.
|
||||
;
|
||||
; This script uses PathMgr.dll in the following ways:
|
||||
; * Copies PathMgr.dll to the target machine (required for uninstall)
|
||||
; * Defines a task in [Tasks] that should modify the Path
|
||||
; * Imports the AddDirToPath() DLL function at setup time
|
||||
; * Imports the RemoveDirFromPath() DLL function at uninstall time
|
||||
; * Stores task state as custom setting using RegisterPreviousData()
|
||||
; * Retrieves task state custom setting during setup and uninstall initialize
|
||||
; * At post install, adds app dir to Path if task selected
|
||||
; * At uninstall, removes dir from Path if custom setting present
|
||||
; * Unloads and deletes DLL and removes app dir at uninstall deinitialize
|
||||
|
||||
#if Ver < EncodeVer(6,0,0,0)
|
||||
#error This script requires Inno Setup 6 or later
|
||||
#endif
|
||||
|
||||
[Setup]
|
||||
AppId={{A17D2D05-C729-4F2A-9CC7-E04906C5A842}
|
||||
AppName=EditPath
|
||||
AppVersion=4.0.4.0
|
||||
UsePreviousAppDir=false
|
||||
DefaultDirName={autopf}\EditPath
|
||||
Uninstallable=true
|
||||
OutputDir=.
|
||||
OutputBaseFilename=EditPath_Setup
|
||||
ArchitecturesInstallIn64BitMode=x64
|
||||
PrivilegesRequired=none
|
||||
PrivilegesRequiredOverridesAllowed=dialog
|
||||
|
||||
[Files]
|
||||
; Install PathMgr.dll for use with both setup and uninstall; use
|
||||
; uninsneveruninstall flag because DeinitializeSetup() will delete after
|
||||
; unloading the DLL; install the 32-bit version of PathMgr.dll because both
|
||||
; setup and uninstall executables are 32-bit
|
||||
Source: "i386\PathMgr.dll"; DestDir: "{app}"; Flags: uninsneveruninstall
|
||||
|
||||
; Other files to install on target system
|
||||
Source: "i386\EditPath.exe"; DestDir: "{app}"; Check: not Is64BitInstallMode()
|
||||
Source: "x86_64\EditPath.exe"; DestDir: "{app}"; Check: Is64BitInstallMode()
|
||||
Source: "EditPath.md"; DestDir: "{app}"
|
||||
|
||||
[Tasks]
|
||||
Name: modifypath; Description: "&Add to Path"
|
||||
|
||||
[Code]
|
||||
const
|
||||
MODIFY_PATH_TASK_NAME = 'modifypath'; // Specify name of task
|
||||
|
||||
var
|
||||
PathIsModified: Boolean; // Cache task selection from previous installs
|
||||
ApplicationUninstalled: Boolean; // Has application been uninstalled?
|
||||
|
||||
// Import AddDirToPath() at setup time ('files:' prefix)
|
||||
function DLLAddDirToPath(DirName: string; PathType, AddType: DWORD): DWORD;
|
||||
external 'AddDirToPath@files:PathMgr.dll stdcall setuponly';
|
||||
|
||||
// Import RemoveDirFromPath() at uninstall time ('{app}\' prefix)
|
||||
function DLLRemoveDirFromPath(DirName: string; PathType: DWORD): DWORD;
|
||||
external 'RemoveDirFromPath@{app}\PathMgr.dll stdcall uninstallonly';
|
||||
|
||||
// Wrapper for AddDirToPath() DLL function
|
||||
function AddDirToPath(const DirName: string): DWORD;
|
||||
var
|
||||
PathType, AddType: DWORD;
|
||||
begin
|
||||
// PathType = 0 - use system Path
|
||||
// PathType = 1 - use user Path
|
||||
// AddType = 0 - add to end of Path
|
||||
// AddType = 1 - add to beginning of Path
|
||||
if IsAdminInstallMode() then
|
||||
PathType := 0
|
||||
else
|
||||
PathType := 1;
|
||||
AddType := 0;
|
||||
result := DLLAddDirToPath(DirName, PathType, AddType);
|
||||
end;
|
||||
|
||||
// Wrapper for RemoveDirFromPath() DLL function
|
||||
function RemoveDirFromPath(const DirName: string): DWORD;
|
||||
var
|
||||
PathType: DWORD;
|
||||
begin
|
||||
// PathType = 0 - use system Path
|
||||
// PathType = 1 - use user Path
|
||||
if IsAdminInstallMode() then
|
||||
PathType := 0
|
||||
else
|
||||
PathType := 1;
|
||||
result := DLLRemoveDirFromPath(DirName, PathType);
|
||||
end;
|
||||
|
||||
procedure RegisterPreviousData(PreviousDataKey: Integer);
|
||||
begin
|
||||
// Store previous or current task selection as custom user setting
|
||||
if PathIsModified or WizardIsTaskSelected(MODIFY_PATH_TASK_NAME) then
|
||||
SetPreviousData(PreviousDataKey, MODIFY_PATH_TASK_NAME, 'true');
|
||||
end;
|
||||
|
||||
function InitializeSetup(): Boolean;
|
||||
begin
|
||||
result := true;
|
||||
// Was task selected during a previous install?
|
||||
PathIsModified := GetPreviousData(MODIFY_PATH_TASK_NAME, '') = 'true';
|
||||
end;
|
||||
|
||||
function InitializeUninstall(): Boolean;
|
||||
begin
|
||||
result := true;
|
||||
// Was task selected during a previous install?
|
||||
PathIsModified := GetPreviousData(MODIFY_PATH_TASK_NAME, '') = 'true';
|
||||
ApplicationUninstalled := false;
|
||||
end;
|
||||
|
||||
procedure CurStepChanged(CurStep: TSetupStep);
|
||||
begin
|
||||
if CurStep = ssPostInstall then
|
||||
begin
|
||||
// Add app directory to Path at post-install step if task selected
|
||||
if PathIsModified or WizardIsTaskSelected(MODIFY_PATH_TASK_NAME) then
|
||||
AddDirToPath(ExpandConstant('{app}'));
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
|
||||
begin
|
||||
if CurUninstallStep = usUninstall then
|
||||
begin
|
||||
// Remove app directory from path during uninstall if task was selected;
|
||||
// use variable because we can't use WizardIsTaskSelected() at uninstall
|
||||
if PathIsModified then
|
||||
RemoveDirFromPath(ExpandConstant('{app}'));
|
||||
end
|
||||
else if CurUninstallStep = usPostUninstall then
|
||||
begin
|
||||
ApplicationUninstalled := true;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure DeinitializeUninstall();
|
||||
begin
|
||||
if ApplicationUninstalled then
|
||||
begin
|
||||
// Unload and delete PathMgr.dll and remove app dir when uninstalling
|
||||
UnloadDLL(ExpandConstant('{app}\PathMgr.dll'));
|
||||
DeleteFile(ExpandConstant('{app}\PathMgr.dll'));
|
||||
RemoveDir(ExpandConstant('{app}'));
|
||||
end;
|
||||
end;
|
||||
; Copyright (C) 2021-2023 by Bill Stewart (bstewart at iname.com)
|
||||
;
|
||||
; This program is free software; you can redistribute it and/or modify it under
|
||||
; the terms of the GNU Lesser General Public License as published by the Free
|
||||
; Software Foundation; either version 3 of the License, or (at your option) any
|
||||
; later version.
|
||||
;
|
||||
; This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
; FOR A PARTICULAR PURPOSE. See the GNU General Lesser Public License for more
|
||||
; details.
|
||||
;
|
||||
; You should have received a copy of the GNU Lesser General Public License
|
||||
; along with this program. If not, see https://www.gnu.org/licenses/.
|
||||
|
||||
; Sample Inno Setup (https://www.jrsoftware.org/isinfo.php) script
|
||||
; demonstrating use of PathMgr.dll.
|
||||
;
|
||||
; This script uses PathMgr.dll in the following ways:
|
||||
; * Copies PathMgr.dll to the target machine (required for uninstall)
|
||||
; * Defines a task in [Tasks] that should modify the Path
|
||||
; * Imports the AddDirToPath() DLL function at setup time
|
||||
; * Imports the RemoveDirFromPath() DLL function at uninstall time
|
||||
; * Stores task state as custom setting using RegisterPreviousData()
|
||||
; * Retrieves task state custom setting during setup and uninstall initialize
|
||||
; * At post install, adds app dir to Path if task selected
|
||||
; * At uninstall, removes dir from Path if custom setting present
|
||||
; * Unloads and deletes DLL and removes app dir at uninstall deinitialize
|
||||
|
||||
#if Ver < EncodeVer(6,0,0,0)
|
||||
#error This script requires Inno Setup 6 or later
|
||||
#endif
|
||||
|
||||
[Setup]
|
||||
AppId={{A17D2D05-C729-4F2A-9CC7-E04906C5A842}
|
||||
AppName=EditPath
|
||||
AppVersion=4.0.4.0
|
||||
UsePreviousAppDir=false
|
||||
DefaultDirName={autopf}\EditPath
|
||||
Uninstallable=true
|
||||
OutputDir=.
|
||||
OutputBaseFilename=EditPath_Setup
|
||||
ArchitecturesInstallIn64BitMode=x64
|
||||
PrivilegesRequired=none
|
||||
PrivilegesRequiredOverridesAllowed=dialog
|
||||
|
||||
[Files]
|
||||
; Install PathMgr.dll for use with both setup and uninstall; use
|
||||
; uninsneveruninstall flag because DeinitializeSetup() will delete after
|
||||
; unloading the DLL; install the 32-bit version of PathMgr.dll because both
|
||||
; setup and uninstall executables are 32-bit
|
||||
Source: "i386\PathMgr.dll"; DestDir: "{app}"; Flags: uninsneveruninstall
|
||||
|
||||
; Other files to install on target system
|
||||
Source: "i386\EditPath.exe"; DestDir: "{app}"; Check: not Is64BitInstallMode()
|
||||
Source: "x86_64\EditPath.exe"; DestDir: "{app}"; Check: Is64BitInstallMode()
|
||||
Source: "EditPath.md"; DestDir: "{app}"
|
||||
|
||||
[Tasks]
|
||||
Name: modifypath; Description: "&Add to Path"
|
||||
|
||||
[Code]
|
||||
const
|
||||
MODIFY_PATH_TASK_NAME = 'modifypath'; // Specify name of task
|
||||
|
||||
var
|
||||
PathIsModified: Boolean; // Cache task selection from previous installs
|
||||
ApplicationUninstalled: Boolean; // Has application been uninstalled?
|
||||
|
||||
// Import AddDirToPath() at setup time ('files:' prefix)
|
||||
function DLLAddDirToPath(DirName: string; PathType, AddType: DWORD): DWORD;
|
||||
external 'AddDirToPath@files:PathMgr.dll stdcall setuponly';
|
||||
|
||||
// Import RemoveDirFromPath() at uninstall time ('{app}\' prefix)
|
||||
function DLLRemoveDirFromPath(DirName: string; PathType: DWORD): DWORD;
|
||||
external 'RemoveDirFromPath@{app}\PathMgr.dll stdcall uninstallonly';
|
||||
|
||||
// Wrapper for AddDirToPath() DLL function
|
||||
function AddDirToPath(const DirName: string): DWORD;
|
||||
var
|
||||
PathType, AddType: DWORD;
|
||||
begin
|
||||
// PathType = 0 - use system Path
|
||||
// PathType = 1 - use user Path
|
||||
// AddType = 0 - add to end of Path
|
||||
// AddType = 1 - add to beginning of Path
|
||||
if IsAdminInstallMode() then
|
||||
PathType := 0
|
||||
else
|
||||
PathType := 1;
|
||||
AddType := 0;
|
||||
result := DLLAddDirToPath(DirName, PathType, AddType);
|
||||
end;
|
||||
|
||||
// Wrapper for RemoveDirFromPath() DLL function
|
||||
function RemoveDirFromPath(const DirName: string): DWORD;
|
||||
var
|
||||
PathType: DWORD;
|
||||
begin
|
||||
// PathType = 0 - use system Path
|
||||
// PathType = 1 - use user Path
|
||||
if IsAdminInstallMode() then
|
||||
PathType := 0
|
||||
else
|
||||
PathType := 1;
|
||||
result := DLLRemoveDirFromPath(DirName, PathType);
|
||||
end;
|
||||
|
||||
procedure RegisterPreviousData(PreviousDataKey: Integer);
|
||||
begin
|
||||
// Store previous or current task selection as custom user setting
|
||||
if PathIsModified or WizardIsTaskSelected(MODIFY_PATH_TASK_NAME) then
|
||||
SetPreviousData(PreviousDataKey, MODIFY_PATH_TASK_NAME, 'true');
|
||||
end;
|
||||
|
||||
function InitializeSetup(): Boolean;
|
||||
begin
|
||||
result := true;
|
||||
// Was task selected during a previous install?
|
||||
PathIsModified := GetPreviousData(MODIFY_PATH_TASK_NAME, '') = 'true';
|
||||
end;
|
||||
|
||||
function InitializeUninstall(): Boolean;
|
||||
begin
|
||||
result := true;
|
||||
// Was task selected during a previous install?
|
||||
PathIsModified := GetPreviousData(MODIFY_PATH_TASK_NAME, '') = 'true';
|
||||
ApplicationUninstalled := false;
|
||||
end;
|
||||
|
||||
procedure CurStepChanged(CurStep: TSetupStep);
|
||||
begin
|
||||
if CurStep = ssPostInstall then
|
||||
begin
|
||||
// Add app directory to Path at post-install step if task selected
|
||||
if PathIsModified or WizardIsTaskSelected(MODIFY_PATH_TASK_NAME) then
|
||||
AddDirToPath(ExpandConstant('{app}'));
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
|
||||
begin
|
||||
if CurUninstallStep = usUninstall then
|
||||
begin
|
||||
// Remove app directory from path during uninstall if task was selected;
|
||||
// use variable because we can't use WizardIsTaskSelected() at uninstall
|
||||
if PathIsModified then
|
||||
RemoveDirFromPath(ExpandConstant('{app}'));
|
||||
end
|
||||
else if CurUninstallStep = usPostUninstall then
|
||||
begin
|
||||
ApplicationUninstalled := true;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure DeinitializeUninstall();
|
||||
begin
|
||||
if ApplicationUninstalled then
|
||||
begin
|
||||
// Unload and delete PathMgr.dll and remove app dir when uninstalling
|
||||
UnloadDLL(ExpandConstant('{app}\PathMgr.dll'));
|
||||
DeleteFile(ExpandConstant('{app}\PathMgr.dll'));
|
||||
RemoveDir(ExpandConstant('{app}'));
|
||||
end;
|
||||
end;
|
||||
|
||||
@@ -1,118 +1,118 @@
|
||||
# EditPath
|
||||
|
||||
EditPath is a Windows console (text-based, command-line) program for managing the system Path and user Path.
|
||||
|
||||
# Author
|
||||
|
||||
Bill Stewart - bstewart at iname dot com
|
||||
|
||||
# License
|
||||
|
||||
EditPath.exe is covered by the GNU Lesser Public License (LPGL). See the file `LICENSE` for details.
|
||||
|
||||
# Download
|
||||
|
||||
https://github.com/Bill-Stewart/PathMgr/releases/
|
||||
|
||||
# Background
|
||||
|
||||
The system Path is found in the following location in the Windows registry:
|
||||
|
||||
Root: `HKEY_LOCAL_MACHINE`
|
||||
Subkey: `SYSTEM\CurrentControlSet\Control\Session Manager\Environment`
|
||||
Value name: `Path`
|
||||
|
||||
The current user Path is found in the following location in the registry:
|
||||
|
||||
Root: `HKEY_CURRENT_USER`
|
||||
Subkey: `Environment`
|
||||
Value name: `Path`
|
||||
|
||||
In both cases, the `Path` value is (or should be) the registry type `REG_EXPAND_SZ`, which means that it is a string that can contain values surrounded by `%` characters that Windows will automatically expand to environment variable values. (For example, `%SystemRoot%` will be expanded to `C:\Windows` on most systems.)
|
||||
|
||||
The `Path` value contains a `;`-delimited list of directory names that the system should search for executables, library files, scripts, etc. Windows appends the content of the current user Path to the system Path and expands the environment variable references. The resulting string is set as the `Path` environment variable for processes.
|
||||
|
||||
EditPath provides a command-line interface for managing the `Path` value in the system location (in `HKEY_LOCAL_MACHINE`) and the current user location (in `HKEY_CURRENT_USER`).
|
||||
|
||||
# Usage
|
||||
|
||||
The following describes the command-line usage for the program. Parameters are case-sensitive.
|
||||
|
||||
**EditPath** [_options_] _type_ _action_
|
||||
|
||||
You must specify only one of the following _type_ parameters:
|
||||
|
||||
| _type_ | Abbreviation | Description
|
||||
| ------- | ------------ | -----------
|
||||
| **--system** | **-s** | Specifies the system Path
|
||||
| **--user** | **-u** | Specifies the user Path
|
||||
|
||||
You must specify only one of the following _action_ parameters:
|
||||
|
||||
| _action_ | Abbreviation | Description
|
||||
| -------- | ------------ | -----------
|
||||
| **--list** | **-l** | Lists directories in Path
|
||||
| **--test "**_dirname_**"** | **-t "**_dirname_**"** | Tests if directory exists in Path
|
||||
| **--add "**_dirname_**"** | **-a "**_dirname_**"** | Adds directory to Path
|
||||
| **--remove "**_dirname_**"** | **-r "**_dirname_**"** | Removes directory from Path
|
||||
|
||||
The following parameters are optional:
|
||||
|
||||
| _options_ | Abbreviation | Description
|
||||
| --------- | ------------ | -----------
|
||||
| **--quiet** | **-q** | Suppresses result messages
|
||||
| **--expand** | **-x** | Expands environment variables (**--list** only)
|
||||
| **--beginning** | **-b** | Adds to beginning of Path (**--add** only)
|
||||
|
||||
# Exit Codes
|
||||
|
||||
The following table lists typical exit codes when not using **--test** (**-t**).
|
||||
|
||||
| Exit Code | Description
|
||||
| --------- | -----------
|
||||
| 0 | No errors
|
||||
| 2 | The Path value is not present in the registry
|
||||
| 3 | The specified directory does not exist in the Path
|
||||
| 5 | Access is denied
|
||||
| 87 | Incorrect parameter(s)
|
||||
| 183 | The specified directory already exists in the Path
|
||||
|
||||
The following table lists typical exit codes when using **--test** (**-t**).
|
||||
|
||||
| Exit Code | Description
|
||||
| --------- | -----------
|
||||
| 1 | The specified directory exists in the unexpanded Path
|
||||
| 2 | The specified directory exists in the expanded Path
|
||||
| 3 | The specified directory does not exist in the Path
|
||||
|
||||
# Remarks
|
||||
|
||||
* Anything on the command line after **--test**, **--add**, or **--remove** is considered to be the argument for the parameter. To avoid ambiguity, specify the _action_ parameter last on the command line.
|
||||
|
||||
* Uexpanded vs. expanded refers to whether the environment variable references (i.e., names between `%` characters) are expanded after retrieving the Path value from the registry. For example, `%SystemRoot%` is unexpanded but `C:\Windows` is expanded.
|
||||
|
||||
* The **--add** (**-a**) parameter checks whether the specified directory exists in both the unexpanded and expanded copies of the Path before adding the directory. For example, if the environment variable `TESTAPP` is set to `C:\TestApp` and `%TESTAPP%` is in the Path, specifying `--add C:\TestApp` will return exit code 183 (i.e., the directory already exists in the Path) because `%TESTAPP%` expands to `C:\TestApp`.
|
||||
|
||||
* The **--remove** (**-r**) parameter does not expand environment variable references. For example, if the environment variable `TESTAPP` is set to `C:\TestApp` and `%TESTAPP%` is in the Path, specifying `--remove "C:\TestApp"` will return exit code 3 (i.e., the directory does not exist in the Path) because **--remove** does not expand `%TESTAPP%` to `C:\TestApp`. For the command to succeed, you would have to specify `--remove "%TESTAPP%"` instead.
|
||||
|
||||
* The program will exit with error code 87 if a parameter (or an argument to a parameter) is missing or not valid, if mutually exclusive parameters are specified, etc.
|
||||
|
||||
* The program will exit with error code 5 if the current user does not have permission to update the Path value in the registry (for example, if you try to update the system Path using a standard user account or an unelevated administrator account).
|
||||
|
||||
# Examples
|
||||
|
||||
1. `EditPath --expand --system --list`
|
||||
|
||||
This command outputs the directories in the system Path, with environment variables expanded. You can also write this command as `EditPath -x -s -l`.
|
||||
|
||||
2. `EditPath --user --add "%LOCALAPPDATA%\Programs\MyApp"`
|
||||
|
||||
Adds the specified directory name to the user Path.
|
||||
|
||||
3. `EditPath -s -r "C:\Program Files\MyApp\bin"`
|
||||
|
||||
Removes the specified directory from the system Path.
|
||||
|
||||
4. `EditPath -s --test "C:\Program Files (x86)\MyApp\bin"`
|
||||
|
||||
Returns an exit code of 3 if the specified directory is not in the system Path, 1 if the specified directory is in the unexpanded copy of the system Path, or 2 if the specified directory is in the expanded copy of the system Path.
|
||||
# EditPath
|
||||
|
||||
EditPath is a Windows console (text-based, command-line) program for managing the system Path and user Path.
|
||||
|
||||
# Author
|
||||
|
||||
Bill Stewart - bstewart at iname dot com
|
||||
|
||||
# License
|
||||
|
||||
EditPath.exe is covered by the GNU Lesser Public License (LPGL). See the file `LICENSE` for details.
|
||||
|
||||
# Download
|
||||
|
||||
https://github.com/Bill-Stewart/PathMgr/releases/
|
||||
|
||||
# Background
|
||||
|
||||
The system Path is found in the following location in the Windows registry:
|
||||
|
||||
Root: `HKEY_LOCAL_MACHINE`
|
||||
Subkey: `SYSTEM\CurrentControlSet\Control\Session Manager\Environment`
|
||||
Value name: `Path`
|
||||
|
||||
The current user Path is found in the following location in the registry:
|
||||
|
||||
Root: `HKEY_CURRENT_USER`
|
||||
Subkey: `Environment`
|
||||
Value name: `Path`
|
||||
|
||||
In both cases, the `Path` value is (or should be) the registry type `REG_EXPAND_SZ`, which means that it is a string that can contain values surrounded by `%` characters that Windows will automatically expand to environment variable values. (For example, `%SystemRoot%` will be expanded to `C:\Windows` on most systems.)
|
||||
|
||||
The `Path` value contains a `;`-delimited list of directory names that the system should search for executables, library files, scripts, etc. Windows appends the content of the current user Path to the system Path and expands the environment variable references. The resulting string is set as the `Path` environment variable for processes.
|
||||
|
||||
EditPath provides a command-line interface for managing the `Path` value in the system location (in `HKEY_LOCAL_MACHINE`) and the current user location (in `HKEY_CURRENT_USER`).
|
||||
|
||||
# Usage
|
||||
|
||||
The following describes the command-line usage for the program. Parameters are case-sensitive.
|
||||
|
||||
**EditPath** [_options_] _type_ _action_
|
||||
|
||||
You must specify only one of the following _type_ parameters:
|
||||
|
||||
| _type_ | Abbreviation | Description
|
||||
| ------- | ------------ | -----------
|
||||
| **--system** | **-s** | Specifies the system Path
|
||||
| **--user** | **-u** | Specifies the user Path
|
||||
|
||||
You must specify only one of the following _action_ parameters:
|
||||
|
||||
| _action_ | Abbreviation | Description
|
||||
| -------- | ------------ | -----------
|
||||
| **--list** | **-l** | Lists directories in Path
|
||||
| **--test "**_dirname_**"** | **-t "**_dirname_**"** | Tests if directory exists in Path
|
||||
| **--add "**_dirname_**"** | **-a "**_dirname_**"** | Adds directory to Path
|
||||
| **--remove "**_dirname_**"** | **-r "**_dirname_**"** | Removes directory from Path
|
||||
|
||||
The following parameters are optional:
|
||||
|
||||
| _options_ | Abbreviation | Description
|
||||
| --------- | ------------ | -----------
|
||||
| **--quiet** | **-q** | Suppresses result messages
|
||||
| **--expand** | **-x** | Expands environment variables (**--list** only)
|
||||
| **--beginning** | **-b** | Adds to beginning of Path (**--add** only)
|
||||
|
||||
# Exit Codes
|
||||
|
||||
The following table lists typical exit codes when not using **--test** (**-t**).
|
||||
|
||||
| Exit Code | Description
|
||||
| --------- | -----------
|
||||
| 0 | No errors
|
||||
| 2 | The Path value is not present in the registry
|
||||
| 3 | The specified directory does not exist in the Path
|
||||
| 5 | Access is denied
|
||||
| 87 | Incorrect parameter(s)
|
||||
| 183 | The specified directory already exists in the Path
|
||||
|
||||
The following table lists typical exit codes when using **--test** (**-t**).
|
||||
|
||||
| Exit Code | Description
|
||||
| --------- | -----------
|
||||
| 1 | The specified directory exists in the unexpanded Path
|
||||
| 2 | The specified directory exists in the expanded Path
|
||||
| 3 | The specified directory does not exist in the Path
|
||||
|
||||
# Remarks
|
||||
|
||||
* Anything on the command line after **--test**, **--add**, or **--remove** is considered to be the argument for the parameter. To avoid ambiguity, specify the _action_ parameter last on the command line.
|
||||
|
||||
* Uexpanded vs. expanded refers to whether the environment variable references (i.e., names between `%` characters) are expanded after retrieving the Path value from the registry. For example, `%SystemRoot%` is unexpanded but `C:\Windows` is expanded.
|
||||
|
||||
* The **--add** (**-a**) parameter checks whether the specified directory exists in both the unexpanded and expanded copies of the Path before adding the directory. For example, if the environment variable `TESTAPP` is set to `C:\TestApp` and `%TESTAPP%` is in the Path, specifying `--add C:\TestApp` will return exit code 183 (i.e., the directory already exists in the Path) because `%TESTAPP%` expands to `C:\TestApp`.
|
||||
|
||||
* The **--remove** (**-r**) parameter does not expand environment variable references. For example, if the environment variable `TESTAPP` is set to `C:\TestApp` and `%TESTAPP%` is in the Path, specifying `--remove "C:\TestApp"` will return exit code 3 (i.e., the directory does not exist in the Path) because **--remove** does not expand `%TESTAPP%` to `C:\TestApp`. For the command to succeed, you would have to specify `--remove "%TESTAPP%"` instead.
|
||||
|
||||
* The program will exit with error code 87 if a parameter (or an argument to a parameter) is missing or not valid, if mutually exclusive parameters are specified, etc.
|
||||
|
||||
* The program will exit with error code 5 if the current user does not have permission to update the Path value in the registry (for example, if you try to update the system Path using a standard user account or an unelevated administrator account).
|
||||
|
||||
# Examples
|
||||
|
||||
1. `EditPath --expand --system --list`
|
||||
|
||||
This command outputs the directories in the system Path, with environment variables expanded. You can also write this command as `EditPath -x -s -l`.
|
||||
|
||||
2. `EditPath --user --add "%LOCALAPPDATA%\Programs\MyApp"`
|
||||
|
||||
Adds the specified directory name to the user Path.
|
||||
|
||||
3. `EditPath -s -r "C:\Program Files\MyApp\bin"`
|
||||
|
||||
Removes the specified directory from the system Path.
|
||||
|
||||
4. `EditPath -s --test "C:\Program Files (x86)\MyApp\bin"`
|
||||
|
||||
Returns an exit code of 3 if the specified directory is not in the system Path, 1 if the specified directory is in the unexpanded copy of the system Path, or 2 if the specified directory is in the expanded copy of the system Path.
|
||||
|
||||
@@ -1,20 +1,22 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10)
|
||||
|
||||
(FILECREATED " 3-Aug-2023 18:40:12" |{DSK}<home>frank>il>medley>gmedley>internal>MEDLEY-UTILS.;6| 10695
|
||||
(FILECREATED "16-Nov-2023 21:59:19" |{DSK}<home>larry>il>medley>internal>MEDLEY-UTILS.;2| 18962
|
||||
|
||||
:EDIT-BY "frank"
|
||||
:EDIT-BY "lmm"
|
||||
|
||||
:CHANGES-TO (FNS MAKE-FULLER-DB MAKE-EXPORTS-ALL MAKE-WHEREIS-HASH)
|
||||
:CHANGES-TO (VARS OKLIBRARY OKLISPUSERS)
|
||||
|
||||
:PREVIOUS-DATE " 1-Aug-2023 22:43:13"
|
||||
|{DSK}<home>frank>il>medley>gmedley>internal>MEDLEY-UTILS.;5|)
|
||||
:PREVIOUS-DATE " 4-Nov-2023 15:23:16" |{DSK}<home>larry>il>medley>internal>MEDLEY-UTILS.;1|)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT MEDLEY-UTILSCOMS)
|
||||
|
||||
(RPAQQ MEDLEY-UTILSCOMS ((FNS GATHER-INFO MAKE-FULLER-DB MEDLEY-FIX-LINKS MEDLEY-FIX-DATES)
|
||||
(VARS MEDLEY-FIX-DIRS OKSOURCES OKLIBRARY OKLISPUSERS OKINTERNAL)
|
||||
(FNS MAKE-EXPORTS-ALL MAKE-WHEREIS-HASH)))
|
||||
(FNS MAKE-EXPORTS-ALL MAKE-WHEREIS-HASH)
|
||||
(FNS BADFILE HCFILES PRETTYFILES)
|
||||
(INITVARS (HCFILES)
|
||||
(BADFILES))))
|
||||
(DEFINEQ
|
||||
|
||||
(GATHER-INFO
|
||||
@@ -137,12 +139,15 @@
|
||||
(POSTSCRIPTSTREAM CHATTERMINAL DMCHAT CHAT PRESS READNUMBER EDITBITMAP IMAGEOBJ TEDIT HRULE
|
||||
TABLEBROWSER FILEBROWSER GRAPHER SPY WHERE-IS COPYFILES MSANALYZE MSPARSE MSCOMMON
|
||||
MASTERSCOPE UNIXCOMM UNIXPRINT UNICODE HASH CLIPBOARD UNIXCHAT VT100KP VTCHAT SKETCH
|
||||
SKETCHBMELT SCALEBITMAP SKETCHOBJ SKETCHEDIT SKETCHELEMENTS SKETCHOPS MATMULT SAMEDIR))
|
||||
SKETCHBMELT SCALEBITMAP SKETCHOBJ SKETCHEDIT SKETCHELEMENTS SKETCHOPS MATMULT SAMEDIR
|
||||
REMOTEVMEM ETHERRECORDS UNIXUTILS CHATDECLS BROWSER))
|
||||
|
||||
(RPAQQ OKLISPUSERS (THINFILES ISO8859IO DINFO HELPSYS MODERNIZE WHEELSCROLL PRETTYFILEINDEX WHO-LINE
|
||||
BACKGROUND-YIELD OBJECTWINDOW REGIONMANAGER COMPARETEXT EXAMINEDEFS
|
||||
COMPARESOURCES COMPAREDIRECTORIES PSEUDOHOSTS DATEFORMAT-EDITOR DOC-OBJECTS
|
||||
EQUATIONS BICLOCK FILEWATCH LIFE IDLEHAX GITFNS TMAX IMTOOLS))
|
||||
(RPAQQ OKLISPUSERS
|
||||
(THINFILES ISO8859IO DINFO HELPSYS MODERNIZE WHEELSCROLL PRETTYFILEINDEX WHO-LINE
|
||||
BACKGROUND-YIELD OBJECTWINDOW REGIONMANAGER COMPARETEXT EXAMINEDEFS COMPARESOURCES
|
||||
COMPAREDIRECTORIES PSEUDOHOSTS DATEFORMAT-EDITOR DOC-OBJECTS EQUATIONS BICLOCK
|
||||
FILEWATCH LIFE IDLEHAX GITFNS TMAX IMTOOLS EQUATIONFORMS UNBOXEDOPS TILED-SEDIT
|
||||
IDLEDEMO WDWHACKS BUTTONS PICK PAGEHOLD UNIXYCD))
|
||||
|
||||
(RPAQQ OKINTERNAL (MEDLEY-UTILS))
|
||||
(DEFINEQ
|
||||
@@ -176,8 +181,167 @@
|
||||
(RENAMEFILE HASHFILE (OR WHEREISFILE "whereis.hash"))
|
||||
(DRIBBLE))))
|
||||
)
|
||||
(DEFINEQ
|
||||
|
||||
(BADFILE
|
||||
(LAMBDA NIL (* \; "Edited 20-Oct-2022 15:40 by lmm")
|
||||
(* \; "Edited 22-Jun-2022 09:40 by larry")
|
||||
(|pushnew| BADFILES *FILE*)
|
||||
(LET ((STR (OPENSTREAM "BADFILES.TXT" 'APPEND)))
|
||||
(SETFILEPTR STR -1)
|
||||
(PRINT *FILE* STR)
|
||||
(CLOSEF STR))
|
||||
(RETFROM (OR (STKPOS 'PRETTYFILES)
|
||||
'HCFILES))))
|
||||
|
||||
(HCFILES
|
||||
(LAMBDA (*FILE* DEST REDOFLG TOPDIRLEN)
|
||||
(DECLARE (SPECVARS *FILE*)
|
||||
(GLOBALVARS BADFILE)) (* \; "Edited 4-Nov-2023 11:14 by lmm")
|
||||
(* \; "Edited 20-Oct-2022 16:11 by lmm")
|
||||
(* \; "Edited 9-Aug-2022 20:44 by lmm")
|
||||
(|if| (NULL *FILE*)
|
||||
|then| (SETQ *FILE* MEDLEYDIR))
|
||||
(COND
|
||||
((LISTP *FILE*)
|
||||
(FOR X IN *FILE* DO (HCFILES X DEST REDOFLG TOPDIRLEN)))
|
||||
((DIRECTORYNAMEP *FILE*)
|
||||
|
||||
(* |;;| "canonicalize")
|
||||
|
||||
(SETQ *FILE* (DIRECTORYNAME *FILE*))
|
||||
(OR TOPDIRLEN (SETQ TOPDIRLEN (CL:LENGTH (FILENAMEFIELD.STRING *FILE* 'DIRECTORY))))
|
||||
(CL:UNLESS DEST
|
||||
(|ShellCommand| (CONCAT "mkdir -p " (UNIX-GETENV "MEDLEYDIR")
|
||||
"/tmp/psfiles/"))
|
||||
(SETQ DEST (MEDLEYDIR "tmp/psfiles" NIL T T)))
|
||||
|
||||
(* |;;| "first deal with files in this directory")
|
||||
|
||||
(|for| EXT |in| '("TED*" "SKETCH")
|
||||
|do| (|for| X |in| (DIRECTORY (CONCAT *FILE* "*." EXT ";*"))
|
||||
|do| (HCFILES X DEST REDOFLG TOPDIRLEN)))
|
||||
|
||||
(* |;;| " then deal with subdirs ")
|
||||
|
||||
(|for| X |in| (DIRECTORY (CONCAT *FILE* "*"))
|
||||
|when| (|for| SKIP |in| '(">." ">dinfo>") |always| (NOT (STRPOS SKIP (L-CASE X))))
|
||||
|when| (DIRECTORYNAMEP X) |do| (HCFILES X DEST REDOFLG TOPDIRLEN)))
|
||||
((SETQ *FILE* (INFILEP *FILE*))
|
||||
(LET* ((TF (UNPACKFILENAME.STRING *FILE*))
|
||||
(NAME (LISTGET TF 'NAME))
|
||||
(DIR (LISTGET TF 'DIRECTORY))
|
||||
(PSFILE (PACKFILENAME.STRING
|
||||
'EXTENSION
|
||||
(|if| (EQ REDOFLG 'IP)
|
||||
|then| "IP"
|
||||
|else| "PS")
|
||||
'NAME
|
||||
(|if| (EQ DEST T)
|
||||
|then| (* \; "with the tedit file")
|
||||
NAME
|
||||
|else| (CONCAT (PACK (SUBST '- '> (UNPACK (SUBSTRING DIR (IPLUS 2 TOPDIRLEN
|
||||
)
|
||||
-1))))
|
||||
"-" NAME))
|
||||
'HOST
|
||||
(LISTGET TF 'HOST)
|
||||
'DIRECTORY
|
||||
(|if| (EQ DEST T)
|
||||
|then| DIR
|
||||
|else| DEST)))
|
||||
(TEXTSTREAM))
|
||||
(|if| (AND (NOT REDOFLG)
|
||||
(INFILEP PSFILE))
|
||||
|then| (* \; " do nothing")
|
||||
(PRINTOUT T PSFILE " already there" T)
|
||||
|elseif| (EQ REDOFLG 'TEST)
|
||||
|then| (PRINTOUT T *FILE* "-> " PSFILE T)
|
||||
(CLOSEF (OPENTEXTSTREAM *FILE*))
|
||||
|elseif| (MEMBER *FILE* BADFILES)
|
||||
|then| (PRINTOUT T "Skipping " *FILE* " on BADFILES")
|
||||
|else| (PRINTOUT T "Converting " *FILE* " to " PSFILE "...")
|
||||
(TEDIT.FORMAT.HARDCOPY (SETQ TEXTSTREAM (OPENTEXTSTREAM *FILE*))
|
||||
PSFILE T NIL NIL NIL (|if| (EQ REDOFLG 'IP)
|
||||
|then| 'INTERPRESS
|
||||
|else| 'POSTSCRIPT))
|
||||
(|printout| T " DONE" T)
|
||||
(CLOSEF? TEXTSTREAM))))
|
||||
(T (PRINTOUT T "no such file " T)))))
|
||||
|
||||
(PRETTYFILES
|
||||
(LAMBDA (*FILE* DEST REDOFLG TOPDIRLEN)
|
||||
(DECLARE (SPECVARS *FILE*)
|
||||
(GLOBALVARS BADFILES)) (* \; "Edited 20-Oct-2022 16:12 by lmm")
|
||||
(* \; "Edited 9-Aug-2022 20:44 by lmm")
|
||||
(|if| (NULL *FILE*)
|
||||
|then| (SETQ *FILE* MEDLEYDIR))
|
||||
(COND
|
||||
((DIRECTORYNAMEP *FILE*)
|
||||
|
||||
(* |;;| "canonicalize")
|
||||
|
||||
(SETQ *FILE* (DIRECTORYNAME *FILE*))
|
||||
(OR TOPDIRLEN (SETQ TOPDIRLEN (CL:LENGTH (FILENAMEFIELD.STRING *FILE* 'DIRECTORY))))
|
||||
(CL:UNLESS DEST
|
||||
(|ShellCommand| (CONCAT "mkdir -p " (UNIX-GETENV "MEDLEYDIR")
|
||||
"/tmp/psfiles/"))
|
||||
(SETQ DEST (MEDLEYDIR "tmp/psfiles" NIL T T)))
|
||||
|
||||
(* |;;| "first deal with files in this directory; ignore files with extensions for now\"*.LISP\" \"*.ILISP\"")
|
||||
|
||||
(|for| PAT |in| '("*.;") |do| (|for| X |in| (DIRECTORY (CONCAT *FILE* PAT))
|
||||
WHEN (NOT (DIRECTORYNAMEP X)) WHEN (INFILEP X)
|
||||
WHEN (CAR (OR (NLSETQ (LISPSOURCEFILEP X))
|
||||
(PROGN (PRINTOUT T "LISPSOURCEFILEP error" X)
|
||||
NIL)))
|
||||
|do| (PRETTYFILES X DEST REDOFLG TOPDIRLEN)))
|
||||
|
||||
(* |;;| " then deal with subdirs ")
|
||||
|
||||
(|for| X |in| (DIRECTORY (CONCAT *FILE* "*"))
|
||||
|when| (|for| SKIP IN '("clos" "cltl2" "rooms>" ".>")
|
||||
|always| (NOT (STRPOS SKIP (L-CASE X)))) |when| (DIRECTORYNAMEP X)
|
||||
|do| (PRETTYFILES X DEST REDOFLG TOPDIRLEN)))
|
||||
((AND (SETQ *FILE* (INFILEP *FILE*))
|
||||
(LISPSOURCEFILEP *FILE*))
|
||||
(LET* ((TF (UNPACKFILENAME.STRING *FILE*))
|
||||
(NAME (LISTGET TF 'NAME))
|
||||
(DIR (LISTGET TF 'DIRECTORY))
|
||||
(PSFILE (PACKFILENAME.STRING
|
||||
'EXTENSION "ps" 'NAME
|
||||
(|if| (EQ DEST T)
|
||||
|then| (* \; "with the source file")
|
||||
(CONCAT NAME ".pfi")
|
||||
|else| (CONCAT (PACK (SUBST '- '> (UNPACK (SUBSTRING DIR (IPLUS 2 TOPDIRLEN
|
||||
)
|
||||
-1))))
|
||||
"-" NAME))
|
||||
'HOST
|
||||
(LISTGET TF 'HOST)
|
||||
'DIRECTORY
|
||||
(|if| (EQ DEST T)
|
||||
|then| DIR
|
||||
|else| DEST))))
|
||||
(|if| (AND (NOT REDOFLG)
|
||||
(INFILEP PSFILE))
|
||||
|then| (* \; " do nothing")
|
||||
(PRINTOUT T PSFILE " already there" T)
|
||||
|elseif| (MEMBER *FILE* BADFILES)
|
||||
|then| (PRINTOUT T "Skipping " *FILE* " on BADFILES")
|
||||
|else| (PRINTOUT T "Converting " *FILE* " to " PSFILE "...")
|
||||
(CL:WITH-OPEN-STREAM (STR (OPENPOSTSCRIPTSTREAM PSFILE))
|
||||
(PRETTYFILEINDEX *FILE* NIL STR))
|
||||
(|printout| T " DONE" T))))
|
||||
(T (PRINTOUT T "no such file " T)))))
|
||||
)
|
||||
|
||||
(RPAQ? HCFILES )
|
||||
|
||||
(RPAQ? BADFILES )
|
||||
(DECLARE\: DONTCOPY
|
||||
(FILEMAP (NIL (679 7642 (GATHER-INFO 689 . 6217) (MAKE-FULLER-DB 6219 . 6997) (MEDLEY-FIX-LINKS 6999
|
||||
. 7396) (MEDLEY-FIX-DATES 7398 . 7640)) (8681 10672 (MAKE-EXPORTS-ALL 8691 . 9752) (MAKE-WHEREIS-HASH
|
||||
9754 . 10670)))))
|
||||
(FILEMAP (NIL (781 7744 (GATHER-INFO 791 . 6319) (MAKE-FULLER-DB 6321 . 7099) (MEDLEY-FIX-LINKS 7101
|
||||
. 7498) (MEDLEY-FIX-DATES 7500 . 7742)) (8923 10914 (MAKE-EXPORTS-ALL 8933 . 9994) (MAKE-WHEREIS-HASH
|
||||
9996 . 10912)) (10915 18894 (BADFILE 10925 . 11393) (HCFILES 11395 . 15280) (PRETTYFILES 15282 .
|
||||
18892)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
@@ -1,11 +1,13 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10)
|
||||
|
||||
(FILECREATED "31-Jul-2023 18:22:53" |{DSK}<home>frank>il>medley>gmedley>sources>LOADUP-LISP.;2| 5235
|
||||
(FILECREATED "14-Mar-2024 12:16:33" |{DSK}<home>larry>il>medley>internal>loadups>LOADUP-LISP.;2| 5426
|
||||
|
||||
:EDIT-BY "lmm"
|
||||
|
||||
:CHANGES-TO (FNS LOADUP-LISP)
|
||||
|
||||
:PREVIOUS-DATE "27-Feb-2023 17:15:53"
|
||||
|{DSK}<home>frank>il>medley>gmedley>sources>LOADUP-LISP.;1|)
|
||||
:PREVIOUS-DATE "31-Jul-2023 18:22:53"
|
||||
|{DSK}<home>larry>il>medley>internal>loadups>LOADUP-LISP.;1|)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT LOADUP-LISPCOMS)
|
||||
@@ -18,7 +20,8 @@
|
||||
(DEFINEQ
|
||||
|
||||
(LOADUP-LISP
|
||||
(LAMBDA (DRIBBLEFILE) (* \; "Edited 26-Feb-2023 12:17 by lmm")
|
||||
(LAMBDA (DRIBBLEFILE) (* \; "Edited 14-Mar-2024 12:16 by lmm")
|
||||
(* \; "Edited 26-Feb-2023 12:17 by lmm")
|
||||
(* \; "Edited 13-Jul-2022 14:09 by rmk")
|
||||
(* \; "Edited 4-Mar-2022 19:13 by larry")
|
||||
(* \; "Edited 29-Apr-2021 22:30 by rmk:")
|
||||
@@ -107,6 +110,10 @@
|
||||
|
||||
(PACKAGE-ENABLE)
|
||||
|
||||
(* |;;| " Added late")
|
||||
|
||||
(LOADUP '(XCL-LOOP))
|
||||
|
||||
(* |;;| " networking code -- should make it optional but too many cross dependencies")
|
||||
|
||||
(LOADUP '(PUP 10MBDRIVER LEAF LLETHER DPUPFTP LOCALFILE DSKDISPLAY COURIER LLNS TRSERVER SPP
|
||||
@@ -123,5 +130,5 @@
|
||||
(GLOBALVARS MAKESYSFILENAME MEDLEY-INIT-VARS MEDLEYDIR SYSTEMINITVARS USERRECLST)
|
||||
)
|
||||
(DECLARE\: DONTCOPY
|
||||
(FILEMAP (NIL (649 5029 (LOADUP-LISP 659 . 5027)))))
|
||||
(FILEMAP (NIL (673 5220 (LOADUP-LISP 683 . 5218)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
@@ -1,15 +1,13 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10)
|
||||
|
||||
(FILECREATED " 9-Jul-2022 09:41:26"
|
||||
|{DSK}<Users>kaplan>Local>medley3.5>working-medley>library>BIGBITMAPS.;12| 108851
|
||||
(FILECREATED "31-Jul-2023 13:39:50" |{WMEDLEY}<library>BIGBITMAPS.;13| 109376
|
||||
|
||||
:EDIT-BY |rmk|
|
||||
|
||||
:CHANGES-TO (VARS BIGBITMAPSCOMS)
|
||||
(FNS \\GENERIC.DSPCREATE.DESTINATION.BITMAP?.BIGBM \\GENERIC.DSPCREATE.BIGBM
|
||||
\\DSPCREATE.BIGBM)
|
||||
(MACROS |\\SFInvert|)
|
||||
(FNS BIGBITMAPEQUAL)
|
||||
|
||||
:PREVIOUS-DATE "26-Oct-2021 14:51:38"
|
||||
|{DSK}<users>kaplan>local>medley3.5>working-medley>library>BIGBITMAPS.;6|)
|
||||
:PREVIOUS-DATE " 9-Jul-2022 09:41:26" |{WMEDLEY}<library>BIGBITMAPS.;12|)
|
||||
|
||||
|
||||
; Copyright (c) 1991, 1993-1994 by Venue.
|
||||
@@ -24,8 +22,8 @@
|
||||
(MACROS |GetNewFragment|)
|
||||
(MACROS |\\SFInvert|))
|
||||
(INITRECORDS BIGBM)
|
||||
(FNS BIGBITMAPP BITBLT.BIGBM BITMAPCREATE.BIGBM BITMAPCREATE BITMAPCOPY BLTSHADE.BIGBM BITBLT
|
||||
\\ORG.BITBLT \\BLTSHADE.DISPLAY \\RESHOWBORDER1)
|
||||
(FNS BIGBITMAPP BITBLT.BIGBM BITMAPCREATE.BIGBM BITMAPCREATE BITMAPCOPY BIGBITMAPEQUAL
|
||||
BLTSHADE.BIGBM BITBLT \\ORG.BITBLT \\BLTSHADE.DISPLAY \\RESHOWBORDER1)
|
||||
(FNS \\DRAWCIRCLE.BIGBM \\FILLCIRCLE.BIGBM \\DRAWELLIPSE.BIGBM \\DRAWCURVE.BIGBM
|
||||
\\DRAWLINE.BIGBM.DASH \\DRAWLINE.BIGBM.NODASH)
|
||||
(FNS \\GENERIC.DSPCREATE.DESTINATION.BITMAP?.BIGBM)
|
||||
@@ -353,6 +351,20 @@
|
||||
0 0 NIL NIL 'INPUT 'REPLACE 0)
|
||||
(RETURN NEWBITMAP))))
|
||||
|
||||
(BIGBITMAPEQUAL
|
||||
(LAMBDA (BM1 BM2) (* \; "Edited 31-Jul-2023 13:08 by rmk")
|
||||
|
||||
(* |;;| "Fields may not be SMALLP")
|
||||
|
||||
(AND (|type?| BIGBM |of| BM1)
|
||||
(|type?| BIGBM |of| BM2)
|
||||
(IEQP (|ffetch| (BIGBM BIGBMWIDTH) |of| BM1)
|
||||
(|ffetch| (BIGBM BIGBMWIDTH) |of| BM2))
|
||||
(IEQP (|ffetch| (BIGBM BIGBMHEIGHT) |of| BM1)
|
||||
(|ffetch| (BIGBM BIGBMHEIGHT) |of| BM2))
|
||||
(|for| B1 |in| (|ffetch| (BIGBM BIGBMLIST) |of| BM1) |as| B2
|
||||
|in| (|ffetch| (BIGBM BIGBMLIST) |of| BM2) |always| (EQUALBITMAPP B1 B2)))))
|
||||
|
||||
(BLTSHADE.BIGBM
|
||||
(LAMBDA (TEXTURE DESTINATION DESTLEFT DESTBOTTOM WIDTH HEIGHT OPERATION CLIPPINGREGION)
|
||||
(* \; "Edited 17-Oct-89 19:01 by takeshi")
|
||||
@@ -1699,15 +1711,15 @@
|
||||
)
|
||||
(PUTPROPS BIGBITMAPS COPYRIGHT ("Venue" 1991 1993 1994))
|
||||
(DECLARE\: DONTCOPY
|
||||
(FILEMAP (NIL (3546 48244 (BIGBITMAPP 3556 . 3702) (BITBLT.BIGBM 3704 . 14527) (BITMAPCREATE.BIGBM
|
||||
14529 . 15871) (BITMAPCREATE 15873 . 17475) (BITMAPCOPY 17477 . 18012) (BLTSHADE.BIGBM 18014 . 21150)
|
||||
(BITBLT 21152 . 22800) (\\ORG.BITBLT 22802 . 34371) (\\BLTSHADE.DISPLAY 34373 . 43611) (
|
||||
\\RESHOWBORDER1 43613 . 48242)) (48245 71523 (\\DRAWCIRCLE.BIGBM 48255 . 51618) (\\FILLCIRCLE.BIGBM
|
||||
51620 . 55666) (\\DRAWELLIPSE.BIGBM 55668 . 60188) (\\DRAWCURVE.BIGBM 60190 . 64040) (
|
||||
\\DRAWLINE.BIGBM.DASH 64042 . 68401) (\\DRAWLINE.BIGBM.NODASH 68403 . 71521)) (71524 71893 (
|
||||
\\GENERIC.DSPCREATE.DESTINATION.BITMAP?.BIGBM 71534 . 71891)) (72025 85168 (DSPDESTINATION 72035 .
|
||||
75933) (|\\SFFixY| 75935 . 81657) (|\\SFFixDestination| 81659 . 82842) (|\\SFFixClippingRegion| 82844
|
||||
. 85166)) (85169 93255 (\\SW2BM 85179 . 90203) (BITMAPHEIGHT 90205 . 90703) (BITMAPWIDTH 90705 .
|
||||
91197) (|\\SFFixFont| 91199 . 92171) (BITSPERPIXEL 92173 . 93253)) (93256 108609 (COLORIZEBITMAP 93266
|
||||
. 96076) (\\BWTOCOLORBLT 96078 . 102671) (UNCOLORIZEBITMAP 102673 . 108607)))))
|
||||
(FILEMAP (NIL (3364 48769 (BIGBITMAPP 3374 . 3520) (BITBLT.BIGBM 3522 . 14345) (BITMAPCREATE.BIGBM
|
||||
14347 . 15689) (BITMAPCREATE 15691 . 17293) (BITMAPCOPY 17295 . 17830) (BIGBITMAPEQUAL 17832 . 18537)
|
||||
(BLTSHADE.BIGBM 18539 . 21675) (BITBLT 21677 . 23325) (\\ORG.BITBLT 23327 . 34896) (\\BLTSHADE.DISPLAY
|
||||
34898 . 44136) (\\RESHOWBORDER1 44138 . 48767)) (48770 72048 (\\DRAWCIRCLE.BIGBM 48780 . 52143) (
|
||||
\\FILLCIRCLE.BIGBM 52145 . 56191) (\\DRAWELLIPSE.BIGBM 56193 . 60713) (\\DRAWCURVE.BIGBM 60715 . 64565
|
||||
) (\\DRAWLINE.BIGBM.DASH 64567 . 68926) (\\DRAWLINE.BIGBM.NODASH 68928 . 72046)) (72049 72418 (
|
||||
\\GENERIC.DSPCREATE.DESTINATION.BITMAP?.BIGBM 72059 . 72416)) (72550 85693 (DSPDESTINATION 72560 .
|
||||
76458) (|\\SFFixY| 76460 . 82182) (|\\SFFixDestination| 82184 . 83367) (|\\SFFixClippingRegion| 83369
|
||||
. 85691)) (85694 93780 (\\SW2BM 85704 . 90728) (BITMAPHEIGHT 90730 . 91228) (BITMAPWIDTH 91230 .
|
||||
91722) (|\\SFFixFont| 91724 . 92696) (BITSPERPIXEL 92698 . 93778)) (93781 109134 (COLORIZEBITMAP 93791
|
||||
. 96601) (\\BWTOCOLORBLT 96603 . 103196) (UNCOLORIZEBITMAP 103198 . 109132)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -1,13 +1,12 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED " 7-Jul-2022 23:53:01"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>working-medley>library>CLIPBOARD.;7 9243
|
||||
(FILECREATED "19-Oct-2023 00:20:01" {WMEDLEY}<library>CLIPBOARD.;8 9130
|
||||
|
||||
:CHANGES-TO (VARS CLIPBOARDCOMS)
|
||||
(FNS CLIPBOARD-COPY-STREAM CLIPBOARD-PASTE-STREAM)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:PREVIOUS-DATE " 3-Jul-2021 13:16:26"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>working-medley>library>CLIPBOARD.;6)
|
||||
:CHANGES-TO (FNS TEDIT.EXTRACTTOCLIPBOARD)
|
||||
|
||||
:PREVIOUS-DATE " 7-Jul-2022 23:53:01" {WMEDLEY}<library>CLIPBOARD.;7)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT CLIPBOARDCOMS)
|
||||
@@ -146,12 +145,12 @@
|
||||
THEN (PUTCLIPBOARD (TEDIT.SEL.AS.STRING TEXTSTREAM])
|
||||
|
||||
(TEDIT.EXTRACTTOCLIPBOARD
|
||||
[LAMBDA NIL (* ; "Edited 19-Apr-2020 12:17 by rmk:")
|
||||
(* ; "Edited 18-Apr-2018 00:02 by rmk:")
|
||||
(LET [(TEXTSTREAM (TEXTSTREAM (TTY.PROCESS]
|
||||
(IF TEXTSTREAM
|
||||
THEN (PUTCLIPBOARD (TEDIT.SEL.AS.STRING TEXTSTREAM))
|
||||
(TEDIT.DELETE TEXTSTREAM (TEDIT.GETSEL TEXTSTREAM])
|
||||
[LAMBDA (TSTREAM TEXTOBJ SEL) (* ; "Edited 19-Oct-2023 00:19 by rmk")
|
||||
(* ; "Edited 19-Apr-2020 12:17 by rmk:")
|
||||
(* ; "Edited 18-Apr-2018 00:02 by rmk:")
|
||||
(CL:WHEN TSTREAM
|
||||
(PUTCLIPBOARD (TEDIT.SEL.AS.STRING TSTREAM))
|
||||
(TEDIT.DELETE TSTREAM SEL))])
|
||||
)
|
||||
(DEFINEQ
|
||||
|
||||
@@ -199,8 +198,8 @@
|
||||
)
|
||||
(PUTPROPS CLIPBOARD COPYRIGHT (NONE))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (1317 6626 (INSTALL-CLIPBOARD 1327 . 3259) (GETCLIPBOARD 3261 . 3635) (PUTCLIPBOARD 3637
|
||||
. 4042) (PASTEFROMCLIPBOARD 4044 . 4962) (LISPINTERRUPTS.PASTE 4964 . 5385) (CLIPBOARD-COPY-STREAM
|
||||
5387 . 5902) (CLIPBOARD-PASTE-STREAM 5904 . 6624)) (6627 7386 (TEDIT.COPYTOCLIPBOARD 6637 . 6918) (
|
||||
TEDIT.EXTRACTTOCLIPBOARD 6920 . 7384)) (7387 8926 (SEDIT.COPYTOCLIPBOARD 7397 . 8924)))))
|
||||
(FILEMAP (NIL (1196 6505 (INSTALL-CLIPBOARD 1206 . 3138) (GETCLIPBOARD 3140 . 3514) (PUTCLIPBOARD 3516
|
||||
. 3921) (PASTEFROMCLIPBOARD 3923 . 4841) (LISPINTERRUPTS.PASTE 4843 . 5264) (CLIPBOARD-COPY-STREAM
|
||||
5266 . 5781) (CLIPBOARD-PASTE-STREAM 5783 . 6503)) (6506 7273 (TEDIT.COPYTOCLIPBOARD 6516 . 6797) (
|
||||
TEDIT.EXTRACTTOCLIPBOARD 6799 . 7271)) (7274 8813 (SEDIT.COPYTOCLIPBOARD 7284 . 8811)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
@@ -1,17 +0,0 @@
|
||||
library/CLIPBOARD
|
||||
|
||||
Written by Ron Kaplan, 2020-2021
|
||||
|
||||
A small package that implements copy and paste to the system clipboard.
|
||||
|
||||
It arms meta-C for copy to the clipboard from the current selection of an application that has been armed (Tedit, Sedit), and also meta-X for extraction (copy followed by delete).
|
||||
|
||||
Meta-V is defined as an interrupt character that pastes the current clipboard contents into whatever process curent has input focus.
|
||||
|
||||
The information in the clipboard can be provided from or provided to external (non-Medley) applications (mail, emacs, etc.) in the usual way. For example, a form cselected in SEDIT can be copied to the clipboard and pasted into an email message.
|
||||
|
||||
It assumes that the external format of the clipboard is determined by (SYSTEM-EXTERNALFORMAT, and characters will be converted to and from the Medley internal character encoding.
|
||||
|
||||
The name of the clipboard stream may differ from platform to platform. On the Mac, the paste stream is "pbpaste" and the copy stream is "pbcopy". Those names are used if "darwin" is a substring of (UNIX-GETENV "ostype"). Otherwise both stream-names default to "xclip". The functions CLIPBOARD-COPY-STREAM and CLIPBOARD-PASTE-STREAM perform this selection.
|
||||
|
||||
|
||||
Binary file not shown.
BIN
library/Cash-File.tedit
Normal file
BIN
library/Cash-File.tedit
Normal file
Binary file not shown.
@@ -1,171 +0,0 @@
|
||||
((EUROPEAN ((100 (53 197 NOLOCKSHIFT)) (101 (52 196 NOLOCKSHIFT)) (102 (54 198 NOLOCKSHIFT)) (103 (
|
||||
61887 61759 LOCKSHIFT)) (104 (55 199 NOLOCKSHIFT)) (105 (61888 61760 LOCKSHIFT)) (106 (61872 61744
|
||||
LOCKSHIFT)) (107 (61860 61732 LOCKSHIFT)) (108 (48 126 NOLOCKSHIFT)) (109 (61892 61764 LOCKSHIFT)) (
|
||||
110 (203 207 NOLOCKSHIFT)) (111 (61919 61791 LOCKSHIFT)) (112 (47 191 NOLOCKSHIFT)) (115 (8 8
|
||||
NOLOCKSHIFT) . IGNORE) (116 (51 195 NOLOCKSHIFT)) (117 (50 194 NOLOCKSHIFT)) (118 (61873 61745
|
||||
LOCKSHIFT)) (119 (61858 61730 LOCKSHIFT)) (120 (61874 61746 LOCKSHIFT)) (121 (61859 61731 LOCKSHIFT))
|
||||
(122 (57 202 NOLOCKSHIFT)) (123 (61886 61758 LOCKSHIFT)) (124 (61864 61736 LOCKSHIFT)) (125 (61903
|
||||
61775 LOCKSHIFT)) (126 (61908 61780 LOCKSHIFT)) (127 (241 225 LOCKSHIFT)) (128 (187 170 LOCKSHIFT)) (
|
||||
129 (249 233 LOCKSHIFT)) (132 (49 193 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9
|
||||
NOLOCKSHIFT) . IGNORE) (135 (61905 61777 LOCKSHIFT)) (137 (61869 61741 LOCKSHIFT)) (138 (61877 61749
|
||||
LOCKSHIFT)) (139 (61906 61778 LOCKSHIFT)) (140 (251 90 LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (
|
||||
250 234 LOCKSHIFT)) (143 (59 58 LOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (145 (171 186 LOCKSHIFT
|
||||
)) (148 (61904 61776 LOCKSHIFT)) (149 (61920 61792 LOCKSHIFT)) (150 (61921 61793 LOCKSHIFT)) (151 (
|
||||
61857 61729 LOCKSHIFT)) (152 (61863 61735 LOCKSHIFT)) (153 (56 200 NOLOCKSHIFT)) (154 (61900 61772
|
||||
LOCKSHIFT)) (155 (239 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (
|
||||
246 230 LOCKSHIFT)) (159 (207 176 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DANDELION) (logic ((100 (
|
||||
53 37 NOLOCKSHIFT)) (101 (52 164 NOLOCKSHIFT)) (102 (54 126 NOLOCKSHIFT)) (103 (61258 61260
|
||||
NOLOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105 (61292 61293 NOLOCKSHIFT)) (106 (61271 61270 NOLOCKSHIFT)
|
||||
) (107 (61284 61285 NOLOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (61307 61306 NOLOCKSHIFT)) (110 (45
|
||||
177 NOLOCKSHIFT)) (111 (61269 61268 LOCKSHIFT)) (112 (172 174 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) .
|
||||
IGNORE) (116 (51 35 NOLOCKSHIFT)) (117 (50 64 NOLOCKSHIFT)) (118 (61240 61241 NOLOCKSHIFT)) (119 (
|
||||
61234 61235 NOLOCKSHIFT)) (120 (61266 61262 NOLOCKSHIFT)) (121 (61365 61365 NOLOCKSHIFT)) (122 (57 40
|
||||
NOLOCKSHIFT)) (123 (61275 61274 NOLOCKSHIFT)) (124 (61300 61299 NOLOCKSHIFT)) (125 (61273 61272
|
||||
NOLOCKSHIFT)) (126 (61282 61283 NOLOCKSHIFT)) (127 (61256 61257 NOLOCKSHIFT)) (128 (61356 61356
|
||||
NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE)
|
||||
(134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (61250 61251 NOLOCKSHIFT)) (137 (61298 61297 NOLOCKSHIFT)) (138
|
||||
(61305 61303 NOLOCKSHIFT)) (139 (61265 61264 NOLOCKSHIFT)) (140 (61364 61364 NOLOCKSHIFT)) (141
|
||||
1SHIFTDOWN . 1SHIFTUP) (142 (61281 233 NOLOCKSHIFT)) (143 (61351 61351 NOLOCKSHIFT)) (144 (13 13
|
||||
NOLOCKSHIFT) . IGNORE) (145 (61357 61357 NOLOCKSHIFT)) (148 (61279 61278 NOLOCKSHIFT)) (149 (61239
|
||||
61238 NOLOCKSHIFT)) (150 (61290 61290 NOLOCKSHIFT)) (151 (61263 61261 NOLOCKSHIFT)) (152 (61295 61295
|
||||
NOLOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154 (61252 61253 NOLOCKSHIFT)) (155 (61254 61255 NOLOCKSHIFT)
|
||||
) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (91 123 NOLOCKSHIFT)) (159 (61 43
|
||||
NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DANDELION) (MATH ((100 (53 37 NOLOCKSHIFT)) (101 (52 36
|
||||
NOLOCKSHIFT)) (102 (54 126 NOLOCKSHIFT)) (103 (61284 61285 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105
|
||||
(100 68 LOCKSHIFT)) (106 (174 61245 NOLOCKSHIFT)) (107 (61369 61363 NOLOCKSHIFT)) (108 (48 41
|
||||
NOLOCKSHIFT)) (109 (61254 61255 NOLOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)) (111 (173 61246 LOCKSHIFT)) (
|
||||
112 (47 61300 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) . IGNORE) (116 (51 35 NOLOCKSHIFT)) (117 (50 64
|
||||
NOLOCKSHIFT)) (118 (61282 61283 LOCKSHIFT)) (119 (61287 61286 NOLOCKSHIFT)) (120 (61301 61302
|
||||
NOLOCKSHIFT)) (121 (61351 65 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (175 61247 LOCKSHIFT)) (124 (
|
||||
180 184 LOCKSHIFT)) (125 (172 61244 LOCKSHIFT)) (126 (61256 61257 LOCKSHIFT)) (127 (44 61250
|
||||
NOLOCKSHIFT)) (128 (61298 61253 NOLOCKSHIFT)) (129 (93 61265 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (
|
||||
133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (
|
||||
61356 61362 LOCKSHIFT)) (138 (61254 61291 NOLOCKSHIFT)) (139 (98 61360 NOLOCKSHIFT)) (140 (61309 177
|
||||
LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (46 61251 NOLOCKSHIFT)) (143 (61299 61252 NOLOCKSHIFT)) (
|
||||
144 (13 13 NOLOCKSHIFT) . IGNORE) (145 (95 94 NOLOCKSHIFT)) (148 (61358 82 LOCKSHIFT)) (149 (61296
|
||||
61266 NOLOCKSHIFT)) (150 (61305 61303 NOLOCKSHIFT)) (151 (61308 61267 LOCKSHIFT)) (152 (61288 72
|
||||
LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154 (61357 61361 NOLOCKSHIFT)) (155 (61292 61293 LOCKSHIFT)) (
|
||||
156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (91 61264 NOLOCKSHIFT)) (159 (61 43
|
||||
NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DANDELION) (OFFICE ((100 (61397 61381 NOLOCKSHIFT)) (101 (
|
||||
61396 61380 NOLOCKSHIFT)) (102 (61398 61382 NOLOCKSHIFT)) (103 (8557 8554 NOLOCKSHIFT)) (104 (61399
|
||||
61383 NOLOCKSHIFT)) (105 (61232 8743 NOLOCKSHIFT)) (106 (61346 8571 NOLOCKSHIFT)) (107 (188 86
|
||||
NOLOCKSHIFT)) (108 (61402 61386 NOLOCKSHIFT)) (109 (210 8738 NOLOCKSHIFT)) (110 (61437 61438
|
||||
NOLOCKSHIFT)) (111 (163 8558 NOLOCKSHIFT)) (112 (61248 63 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) .
|
||||
IGNORE) (116 (61395 61379 NOLOCKSHIFT)) (117 (61394 61378 NOLOCKSHIFT)) (118 (185 8553 NOLOCKSHIFT)) (
|
||||
119 (176 8546 NOLOCKSHIFT)) (120 (167 8744 NOLOCKSHIFT)) (121 (97 8745 NOLOCKSHIFT)) (122 (61401 61385
|
||||
NOLOCKSHIFT)) (123 (162 8570 NOLOCKSHIFT)) (124 (61437 88 NOLOCKSHIFT)) (125 (111 8569 NOLOCKSHIFT))
|
||||
(126 (61289 8737 NOLOCKSHIFT)) (127 (44 60 NOLOCKSHIFT)) (128 (39 34 NOLOCKSHIFT)) (129 (93 125
|
||||
NOLOCKSHIFT)) (132 (61393 61377 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9
|
||||
NOLOCKSHIFT) . IGNORE) (135 (61233 8742 NOLOCKSHIFT)) (137 (61438 67 NOLOCKSHIFT)) (138 (8739 74
|
||||
NOLOCKSHIFT)) (139 (190 61436 NOLOCKSHIFT)) (140 (189 90 NOLOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (
|
||||
142 (61249 62 NOLOCKSHIFT)) (143 (61352 58 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (145 (95
|
||||
61280 NOLOCKSHIFT)) (148 (212 8574 NOLOCKSHIFT)) (149 (61354 8573 NOLOCKSHIFT)) (150 (61286 8741
|
||||
NOLOCKSHIFT)) (151 (165 8572 NOLOCKSHIFT)) (152 (61368 8740 NOLOCKSHIFT)) (153 (61400 61384
|
||||
NOLOCKSHIFT)) (154 (173 175 NOLOCKSHIFT)) (155 (172 174 NOLOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32
|
||||
32 NOLOCKSHIFT) . IGNORE) (158 (91 123 NOLOCKSHIFT)) (159 (61406 61368 NOLOCKSHIFT)) (160 2SHIFTDOWN
|
||||
. 2SHIFTUP)) DANDELION) (DVORAK ((100 (49 42 NOLOCKSHIFT)) (101 (51 41 NOLOCKSHIFT)) (102 (57 37
|
||||
NOLOCKSHIFT)) (103 (46 62 NOLOCKSHIFT)) (104 (48 38 NOLOCKSHIFT)) (105 (101 69 LOCKSHIFT)) (106 (103
|
||||
71 LOCKSHIFT)) (107 (107 75 LOCKSHIFT)) (108 (54 45 NOLOCKSHIFT)) (109 (116 84 LOCKSHIFT)) (110 (56 95
|
||||
NOLOCKSHIFT)) (111 (108 76 LOCKSHIFT)) (112 (122 90 LOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) . IGNORE) (116
|
||||
(53 40 NOLOCKSHIFT)) (117 (55 35 NOLOCKSHIFT)) (118 (44 60 NOLOCKSHIFT)) (119 (63 47 NOLOCKSHIFT)) (
|
||||
120 (111 79 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (52 164 NOLOCKSHIFT)) (123 (99 67 LOCKSHIFT)) (
|
||||
124 (113 81 LOCKSHIFT)) (125 (114 82 LOCKSHIFT)) (126 (110 78 LOCKSHIFT)) (127 (119 87 LOCKSHIFT)) (
|
||||
128 (44 186 NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (33 64 NOLOCKSHIFT)) (133 (92 124
|
||||
NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (117 85 LOCKSHIFT)) (137 (106 74
|
||||
LOCKSHIFT)) (138 (104 72 LOCKSHIFT)) (139 (120 88 LOCKSHIFT)) (140 (59 58 NOLOCKSHIFT)) (141
|
||||
1SHIFTDOWN . 1SHIFTUP) (142 (118 86 LOCKSHIFT)) (143 (115 83 LOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) .
|
||||
IGNORE) (145 (169 170 NOLOCKSHIFT)) (148 (112 80 LOCKSHIFT)) (149 (121 89 LOCKSHIFT)) (150 (105 73
|
||||
LOCKSHIFT)) (151 (102 70 LOCKSHIFT)) (152 (100 68 LOCKSHIFT)) (153 (50 162 NOLOCKSHIFT)) (154 (98 66
|
||||
LOCKSHIFT)) (155 (109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (
|
||||
91 123 NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DANDELION) (GREEK ((100 (
|
||||
53 37 NOLOCKSHIFT)) (101 (52 36 NOLOCKSHIFT)) (102 (54 126 NOLOCKSHIFT)) (103 (9830 69 LOCKSHIFT)) (
|
||||
104 (55 38 NOLOCKSHIFT)) (105 (9829 9797 LOCKSHIFT)) (106 (9849 9817 LOCKSHIFT)) (107 (115 9814
|
||||
LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (9837 9805 LOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)) (111 (9843
|
||||
9811 LOCKSHIFT)) (112 (47 63 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) . IGNORE) (116 (51 35 NOLOCKSHIFT))
|
||||
(117 (50 64 NOLOCKSHIFT)) (118 (9853 9821 LOCKSHIFT)) (119 (9835 9803 LOCKSHIFT)) (120 (9846 9814
|
||||
LOCKSHIFT)) (121 (9825 9793 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (9836 9804 LOCKSHIFT)) (124 (
|
||||
9851 9819 LOCKSHIFT)) (125 (9842 9810 LOCKSHIFT)) (126 (9838 9806 LOCKSHIFT)) (127 (44 60 NOLOCKSHIFT)
|
||||
) (128 (39 34 NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (133 (92 124
|
||||
NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (9850 9818 LOCKSHIFT)) (137 (9841 9809
|
||||
LOCKSHIFT)) (138 (106 74 LOCKSHIFT)) (139 (9826 66 LOCKSHIFT)) (140 (9833 9801 LOCKSHIFT)) (141
|
||||
1SHIFTDOWN . 1SHIFTUP) (142 (46 62 NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) .
|
||||
IGNORE) (145 (95 94 NOLOCKSHIFT)) (148 (9845 9813 LOCKSHIFT)) (149 (9848 9816 LOCKSHIFT)) (150 (9828
|
||||
9796 LOCKSHIFT)) (151 (9852 9820 LOCKSHIFT)) (152 (9834 9802 LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (
|
||||
154 (9840 9808 LOCKSHIFT)) (155 (9839 9807 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT
|
||||
) . IGNORE) (158 (91 123 NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP))
|
||||
DANDELION) (ITALIAN ((100 (53 61903 NOLOCKSHIFT)) (101 (52 61886 NOLOCKSHIFT)) (102 (54 61919
|
||||
NOLOCKSHIFT)) (103 (101 69 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105 (100 68 LOCKSHIFT)) (106 (117 85
|
||||
LOCKSHIFT)) (107 (118 86 LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (107 75 LOCKSHIFT)) (110 (45 45
|
||||
NOLOCKSHIFT)) (111 (112 80 LOCKSHIFT)) (112 (204 63 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) . IGNORE) (
|
||||
116 (51 61872 NOLOCKSHIFT)) (117 (50 61858 NOLOCKSHIFT)) (118 (119 87 LOCKSHIFT)) (119 (113 81
|
||||
LOCKSHIFT)) (120 (115 83 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (105 73
|
||||
LOCKSHIFT)) (124 (120 88 LOCKSHIFT)) (125 (111 79 LOCKSHIFT)) (126 (108 76 LOCKSHIFT)) (127 (44 171
|
||||
NOLOCKSHIFT)) (128 (39 186 NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (133 (92
|
||||
124 NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (99 67
|
||||
LOCKSHIFT)) (138 (106 74 LOCKSHIFT)) (139 (98 66 LOCKSHIFT)) (140 (122 90 LOCKSHIFT)) (141 1SHIFTDOWN
|
||||
. 1SHIFTUP) (142 (46 187 NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (
|
||||
145 (95 170 NOLOCKSHIFT)) (148 (114 82 LOCKSHIFT)) (149 (116 84 LOCKSHIFT)) (150 (103 71 LOCKSHIFT)) (
|
||||
151 (121 89 LOCKSHIFT)) (152 (104 72 LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154 (110 78 LOCKSHIFT)) (
|
||||
155 (109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (91 123
|
||||
NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DANDELION) (SPANISH ((100 (53
|
||||
61904 NOLOCKSHIFT)) (101 (52 61887 NOLOCKSHIFT)) (102 (54 61920 NOLOCKSHIFT)) (103 (101 69 LOCKSHIFT))
|
||||
(104 (55 38 NOLOCKSHIFT)) (105 (100 68 LOCKSHIFT)) (106 (117 85 LOCKSHIFT)) (107 (118 86 LOCKSHIFT))
|
||||
(108 (48 41 NOLOCKSHIFT)) (109 (107 75 LOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)) (111 (112 80 LOCKSHIFT))
|
||||
(112 (204 63 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) . IGNORE) (116 (51 61873 NOLOCKSHIFT)) (117 (50
|
||||
61858 NOLOCKSHIFT)) (118 (119 87 LOCKSHIFT)) (119 (113 81 LOCKSHIFT)) (120 (115 83 LOCKSHIFT)) (121 (
|
||||
97 65 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (105 73 LOCKSHIFT)) (124 (120 88 LOCKSHIFT)) (125 (
|
||||
111 79 LOCKSHIFT)) (126 (108 76 LOCKSHIFT)) (127 (44 171 NOLOCKSHIFT)) (128 (59 58 NOLOCKSHIFT)) (129
|
||||
(203 187 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9
|
||||
NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (99 67 LOCKSHIFT)) (138 (106 74 LOCKSHIFT)) (139
|
||||
(98 66 LOCKSHIFT)) (140 (122 90 LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (46 187 NOLOCKSHIFT)) (
|
||||
143 (61900 61772 LOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (145 (161 191 NOLOCKSHIFT)) (148 (114
|
||||
82 LOCKSHIFT)) (149 (116 84 LOCKSHIFT)) (150 (103 71 LOCKSHIFT)) (151 (121 89 LOCKSHIFT)) (152 (104 72
|
||||
LOCKSHIFT)) (153 (56 61925 NOLOCKSHIFT)) (154 (110 78 LOCKSHIFT)) (155 (109 77 LOCKSHIFT)) (156
|
||||
LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (44 171 NOLOCKSHIFT)) (159 (61 43
|
||||
NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DANDELION) (FRENCH ((100 (53 61905 NOLOCKSHIFT)) (101 (52
|
||||
61888 NOLOCKSHIFT)) (102 (54 61921 NOLOCKSHIFT)) (103 (101 69 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (
|
||||
105 (100 68 LOCKSHIFT)) (106 (117 85 LOCKSHIFT)) (107 (118 86 LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (
|
||||
109 (107 75 LOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)) (111 (112 80 LOCKSHIFT)) (112 (204 63 NOLOCKSHIFT))
|
||||
(115 (8 8 NOLOCKSHIFT) . IGNORE) (116 (51 61874 NOLOCKSHIFT)) (117 (50 61859 NOLOCKSHIFT)) (118 (119
|
||||
87 LOCKSHIFT)) (119 (113 81 LOCKSHIFT)) (120 (115 83 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (57 40
|
||||
NOLOCKSHIFT)) (123 (105 73 LOCKSHIFT)) (124 (120 88 LOCKSHIFT)) (125 (111 79 LOCKSHIFT)) (126 (108 76
|
||||
LOCKSHIFT)) (127 (44 171 NOLOCKSHIFT)) (128 (39 61857 NOLOCKSHIFT)) (129 (61872 61892 LOCKSHIFT)) (132
|
||||
(49 33 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102
|
||||
70 LOCKSHIFT)) (137 (99 67 LOCKSHIFT)) (138 (106 74 LOCKSHIFT)) (139 (98 66 LOCKSHIFT)) (140 (122 90
|
||||
LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (46 187 NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13
|
||||
13 NOLOCKSHIFT) . IGNORE) (145 (61869 61741 LOCKSHIFT)) (148 (114 82 LOCKSHIFT)) (149 (116 84
|
||||
LOCKSHIFT)) (150 (103 71 LOCKSHIFT)) (151 (121 89 LOCKSHIFT)) (152 (104 72 LOCKSHIFT)) (153 (56 61919
|
||||
NOLOCKSHIFT)) (154 (110 78 LOCKSHIFT)) (155 (109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32
|
||||
NOLOCKSHIFT) . IGNORE) (158 (61873 61877 LOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN .
|
||||
2SHIFTUP)) DANDELION) (GERMAN ((100 (53 37 NOLOCKSHIFT)) (101 (52 36 NOLOCKSHIFT)) (102 (54 126
|
||||
NOLOCKSHIFT)) (103 (101 69 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105 (100 68 LOCKSHIFT)) (106 (117 85
|
||||
LOCKSHIFT)) (107 (118 86 LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (107 75 LOCKSHIFT)) (110 (45 45
|
||||
NOLOCKSHIFT)) (111 (112 80 LOCKSHIFT)) (112 (251 63 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) . IGNORE) (
|
||||
116 (51 35 NOLOCKSHIFT)) (117 (50 64 NOLOCKSHIFT)) (118 (119 87 LOCKSHIFT)) (119 (113 81 LOCKSHIFT)) (
|
||||
120 (115 83 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (105 73 LOCKSHIFT)) (
|
||||
124 (120 88 LOCKSHIFT)) (125 (111 79 LOCKSHIFT)) (126 (108 76 LOCKSHIFT)) (127 (44 60 NOLOCKSHIFT)) (
|
||||
128 (39 34 NOLOCKSHIFT)) (129 (61863 61735 LOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (133 (92 124
|
||||
NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (99 67 LOCKSHIFT
|
||||
)) (138 (106 74 LOCKSHIFT)) (139 (98 66 LOCKSHIFT)) (140 (122 90 LOCKSHIFT)) (141 1SHIFTDOWN .
|
||||
1SHIFTUP) (142 (46 62 NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (145
|
||||
(95 94 NOLOCKSHIFT)) (148 (114 82 LOCKSHIFT)) (149 (116 84 LOCKSHIFT)) (150 (103 71 LOCKSHIFT)) (151 (
|
||||
121 89 LOCKSHIFT)) (152 (104 72 LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154 (110 78 LOCKSHIFT)) (155 (
|
||||
109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (61908 61780
|
||||
LOCKSHIFT)) (159 (61925 61797 LOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DANDELION) (STANDARD-RUSSIAN ((
|
||||
100 (34 52 NOLOCKSHIFT)) (101 (47 51 NOLOCKSHIFT)) (102 (58 53 NOLOCKSHIFT)) (103 (10085 10037
|
||||
LOCKSHIFT)) (104 (44 54 NOLOCKSHIFT)) (105 (10067 10019 LOCKSHIFT)) (106 (10068 10020 LOCKSHIFT)) (107
|
||||
(10078 10030 LOCKSHIFT)) (108 (63 57 NOLOCKSHIFT)) (109 (10077 10029 LOCKSHIFT)) (110 (37 48
|
||||
NOLOCKSHIFT)) (111 (10073 10025 LOCKSHIFT)) (112 (10071 10023 LOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) .
|
||||
IGNORE) (116 (45 50 NOLOCKSHIFT)) (117 (61352 49 NOLOCKSHIFT)) (118 (10088 10040 LOCKSHIFT)) (119 (
|
||||
10075 10027 LOCKSHIFT)) (120 (10093 10045 LOCKSHIFT)) (121 (10086 10038 LOCKSHIFT)) (122 (95 56
|
||||
NOLOCKSHIFT)) (123 (10090 10042 LOCKSHIFT)) (124 (10089 10041 LOCKSHIFT)) (125 (10091 10043 LOCKSHIFT)
|
||||
) (126 (10069 10021 LOCKSHIFT)) (127 (10066 10018 LOCKSHIFT)) (128 (10095 10047 LOCKSHIFT)) (129 (
|
||||
10092 10044 LOCKSHIFT)) (132 (167 43 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9
|
||||
NOLOCKSHIFT) . IGNORE) (135 (10065 10017 LOCKSHIFT)) (137 (10083 10035 LOCKSHIFT)) (138 (10080 10032
|
||||
LOCKSHIFT)) (139 (10074 10026 LOCKSHIFT)) (140 (10097 10049 LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (
|
||||
142 (10096 10048 LOCKSHIFT)) (143 (10072 10024 LOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (145 (41
|
||||
40 NOLOCKSHIFT)) (148 (10076 10028 LOCKSHIFT)) (149 (10070 10022 LOCKSHIFT)) (150 (10081 10033
|
||||
LOCKSHIFT)) (151 (10079 10031 LOCKSHIFT)) (152 (10082 10034 LOCKSHIFT)) (153 (46 55 NOLOCKSHIFT)) (154
|
||||
(10084 10036 LOCKSHIFT)) (155 (10094 10046 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32
|
||||
NOLOCKSHIFT) . IGNORE) (158 (10087 10039 LOCKSHIFT)) (159 (33 61 NOLOCKSHIFT)) (160 2SHIFTDOWN .
|
||||
2SHIFTUP)) DANDELION))
|
||||
@@ -1,14 +1,16 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "27-Oct-2021 10:55:18" {DSK}<home>larry>medley>library>DATABASEFNS.;7 16051
|
||||
(FILECREATED "20-Feb-2024 23:45:56" {DSK}<mnt>e>Interlisp>medley>library>DATABASEFNS.;4 18445
|
||||
|
||||
changes to%: (FNS DUMPDB)
|
||||
:EDIT-BY "mth"
|
||||
|
||||
previous date%: "24-Oct-2021 20:18:51" {DSK}<home>larry>medley>library>DATABASEFNS.;6)
|
||||
:CHANGES-TO (FNS DUMPDB)
|
||||
|
||||
:PREVIOUS-DATE "19-Feb-2024 16:29:44" {DSK}<mnt>e>Interlisp>medley>library>DATABASEFNS.;1)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1986, 1990-1993 by Xerox Corporation.
|
||||
Copyright (c) 1986, 1990-1993, 2024 by Xerox Corporation.
|
||||
")
|
||||
|
||||
(PRETTYCOMPRINT DATABASEFNSCOMS)
|
||||
@@ -31,7 +33,8 @@ Copyright (c) 1986, 1990-1993 by Xerox Corporation.
|
||||
(INITVARS (LOADDBFLG 'ASK)
|
||||
(SAVEDBFLG 'ASK))
|
||||
(ADDVARS (MAKEFILEFORMS (MAKEDB FILE)))
|
||||
(INITVARS (MSFILETABLE))
|
||||
(INITVARS (MSFILETABLE)
|
||||
(DEFAULTDATABASECOPYRIGHTOWNER 'NEVER))
|
||||
(* ; "To permit MSHASH interface")
|
||||
(LOCALVARS . T)
|
||||
(BLOCKS (LOADDB LOADDB DBFILE DBFILE1 DBFILE2 (NOLINKFNS . T)))
|
||||
@@ -161,52 +164,85 @@ Copyright (c) 1986, 1990-1993 by Xerox Corporation.
|
||||
(DEFINEQ
|
||||
|
||||
(DUMPDB
|
||||
[LAMBDA (FILE PROPFLG) (* ;
|
||||
"Edited 27-Oct-2021 10:51 by larry")
|
||||
(* ;
|
||||
"Edited 24-Oct-2021 16:24 by rmk:")
|
||||
[LAMBDA (FILE PROPFLG) (* ; "Edited 20-Feb-2024 23:45 by mth")
|
||||
(* ; "Edited 7-Feb-2024 18:26 by mth")
|
||||
(* ; "Edited 27-Oct-2021 10:51 by larry")
|
||||
(* ; "Edited 24-Oct-2021 16:24 by rmk:")
|
||||
|
||||
(* ;; "Dumps a Masterscope database for functions in FILE. Checks the DATABASE property if PROPFLG=T which is how the MAKEFILE advice calls it. A user-level call would default PROPFLG to NIL.")
|
||||
|
||||
(* ;;
|
||||
"The FILE check is because MAKEFILE returns a list when it doesn't understand the options")
|
||||
(* ;; "The FILE check is because MAKEFILE returns a list when it doesn't understand the options")
|
||||
|
||||
(DECLARE (GLOBALVARS MSFILETABLE SAVEDBFLG))
|
||||
(DECLARE (GLOBALVARS MSFILETABLE SAVEDBFLG COPYRIGHTFLG DEFAULTCOPYRIGHTOWNER)
|
||||
(SPECVARS DEFAULTDATABASECOPYRIGHTOWNER))
|
||||
(CL:WHEN (AND FILE (OR (LITATOM FILE)
|
||||
(STRINGP FILE)))
|
||||
(PROG (DBFILE (FL (NAMEFIELD FILE))
|
||||
(FNS (FILEFNSLST FILE)))
|
||||
(COND
|
||||
(FNS)
|
||||
((AND MSFILETABLE (TESTTABLE FL (CADR MSFILETABLE)))
|
||||
(LET ((SAVEDCOPYRIGHTFLG COPYRIGHTFLG)
|
||||
(SAVEDDEFAULTCOPYRIGHTOWNER DEFAULTCOPYRIGHTOWNER))
|
||||
(CL:UNWIND-PROTECT
|
||||
(PROG (DBFILE DBFN DBROOTFN FLCPR (FL (NAMEFIELD FILE))
|
||||
(FNS (FILEFNSLST FILE)))
|
||||
(SETQ DBFN (PACKFILENAME 'EXTENSION 'DATABASE 'VERSION NIL 'BODY FILE))
|
||||
(SETQ DBROOTFN (ROOTFILENAME DBFN))
|
||||
(CL:UNLESS (OR (EQ COPYRIGHTFLG 'NEVER)
|
||||
(NULL DEFAULTDATABASECOPYRIGHTOWNER)
|
||||
(GETPROP DBROOTFN 'COPYRIGHT))
|
||||
(SELECTQ DEFAULTDATABASECOPYRIGHTOWNER
|
||||
((NONE NEVER)
|
||||
(* ;;
|
||||
"Set the COPYRIGHT to NONE (I.e., never mention it again.)")
|
||||
|
||||
(/PUT DBROOTFN 'COPYRIGHT (LIST 'NONE)))
|
||||
(SAME
|
||||
(* ;;
|
||||
"Same as the source file. If it doesn't have one, then just normal handling")
|
||||
|
||||
(CL:WHEN (SETQ FLCPR (GETPROP FL 'COPYRIGHT))
|
||||
(/PUT DBROOTFN 'COPYRIGHT (LIST (CAR FLCPR)))))
|
||||
(DEFAULT
|
||||
(* ;; "Use the general default for copyright")
|
||||
|
||||
(SETQ COPYRIGHTFLG 'DEFAULT))
|
||||
(PROGN (SETQ COPYRIGHTFLG 'DEFAULT)
|
||||
|
||||
(* ;;
|
||||
"Hopefully, DEFAULTDATABASECOPYRIGHTOWNER is one of the COPYRIGHTOWNERS keys")
|
||||
|
||||
(SETQ DEFAULTCOPYRIGHTOWNER DEFAULTDATABASECOPYRIGHTOWNER))))
|
||||
(COND
|
||||
(FNS)
|
||||
((AND MSFILETABLE (TESTTABLE FL (CADR MSFILETABLE)))
|
||||
(* ;
|
||||
"Always dump if this is a known file")
|
||||
(SETQ PROPFLG NIL))
|
||||
(T (COND
|
||||
(PROPFLG (/REMPROP FL 'DATABASE))
|
||||
(T (printout T T FILE " has no functions." T)))
|
||||
(RETURN)))
|
||||
(CL:WHEN [OR (NULL PROPFLG)
|
||||
(EQ (GETPROP FL 'DATABASE)
|
||||
'YES)
|
||||
(EQ SAVEDBFLG 'YES)
|
||||
(AND MSFILETABLE (TESTTABLE FL (CADR MSFILETABLE]
|
||||
(CL:WHEN MSFILETABLE
|
||||
[STORETABLE FL MSFILETABLE (CAR (GETPROP FL 'FILEDATES])
|
||||
[SETQ DBFILE (PRETTYDEF NIL (PACKFILENAME 'EXTENSION 'DATABASE 'VERSION NIL
|
||||
'BODY FILE)
|
||||
`((P (PROGN (PRIN1 "Use LOADDB to load database files!" T)
|
||||
(ERROR!)))
|
||||
(E [PRINT (CAR (GETPROP ',FILE 'FILEDATES]
|
||||
(DUMPDATABASE ',FNS]
|
||||
[COND
|
||||
(PROPFLG (PRINT (FULLNAME DBFILE)
|
||||
T))
|
||||
(T (/PUT FL 'DATABASEFILENAME DBFILE) (* ;
|
||||
"Remember that we have this file valid already.")
|
||||
(/PUT FL 'DATABASE 'YES] (* ;
|
||||
"Take future note of the databae on a user call")
|
||||
(RETURN DBFILE))))])
|
||||
"Always dump if this is a known file")
|
||||
(SETQ PROPFLG NIL))
|
||||
(T (COND
|
||||
(PROPFLG (/REMPROP FL 'DATABASE))
|
||||
(T (printout T T FILE " has no functions." T)))
|
||||
(RETURN)))
|
||||
(CL:WHEN [OR (NULL PROPFLG)
|
||||
(EQ (GETPROP FL 'DATABASE)
|
||||
'YES)
|
||||
(EQ SAVEDBFLG 'YES)
|
||||
(AND MSFILETABLE (TESTTABLE FL (CADR MSFILETABLE]
|
||||
(CL:WHEN MSFILETABLE
|
||||
[STORETABLE FL MSFILETABLE (CAR (GETPROP FL 'FILEDATES])
|
||||
[SETQ DBFILE
|
||||
(PRETTYDEF NIL DBFN
|
||||
`((P (PROGN (PRIN1 "Use LOADDB to load database files!" T)
|
||||
(ERROR!)))
|
||||
(E [PRINT (CAR (GETPROP ',FILE 'FILEDATES]
|
||||
(DUMPDATABASE ',FNS]
|
||||
[COND
|
||||
(PROPFLG (PRINT (FULLNAME DBFILE)
|
||||
T))
|
||||
(T (/PUT FL 'DATABASEFILENAME DBFILE)
|
||||
(* ;
|
||||
"Remember that we have this file valid already.")
|
||||
(/PUT FL 'DATABASE 'YES] (* ;
|
||||
"Take future note of the database on a user call")
|
||||
(RETURN DBFILE))))
|
||||
(SETQ COPYRIGHTFLG SAVEDCOPYRIGHTFLG)
|
||||
(SETQ DEFAULTCOPYRIGHTOWNER SAVEDDEFAULTCOPYRIGHTOWNER)))])
|
||||
|
||||
(LOADDB
|
||||
[LAMBDA (FILE ASKFLAG) (* ; "Edited 24-Oct-2021 17:44 by rmk:")
|
||||
@@ -321,6 +357,8 @@ Copyright (c) 1986, 1990-1993 by Xerox Corporation.
|
||||
|
||||
(RPAQ? MSFILETABLE )
|
||||
|
||||
(RPAQ? DEFAULTDATABASECOPYRIGHTOWNER 'NEVER)
|
||||
|
||||
|
||||
|
||||
(* ; "To permit MSHASH interface")
|
||||
@@ -337,9 +375,9 @@ Copyright (c) 1986, 1990-1993 by Xerox Corporation.
|
||||
|
||||
(RESETSAVE DWIMIFYCOMPFLG T)
|
||||
)
|
||||
(PUTPROPS DATABASEFNS COPYRIGHT ("Xerox Corporation" 1986 1990 1991 1992 1993))
|
||||
(PUTPROPS DATABASEFNS COPYRIGHT ("Xerox Corporation" 1986 1990 1991 1992 1993 2024))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (1679 6704 (DBFILE 1689 . 3334) (DBFILE1 3336 . 4846) (DBFILE2 4848 . 6070) (LOAD 6072
|
||||
. 6302) (LOADFROM 6304 . 6492) (MAKEFILE 6494 . 6702)) (6760 15499 (DUMPDB 6770 . 9534) (LOADDB 9536
|
||||
. 14411) (MAKEDB 14413 . 15497)))))
|
||||
(FILEMAP (NIL (1768 6793 (DBFILE 1778 . 3423) (DBFILE1 3425 . 4935) (DBFILE2 4937 . 6159) (LOAD 6161
|
||||
. 6391) (LOADFROM 6393 . 6581) (MAKEFILE 6583 . 6791)) (6849 17838 (DUMPDB 6859 . 11873) (LOADDB
|
||||
11875 . 16750) (MAKEDB 16752 . 17836)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
@@ -1,171 +0,0 @@
|
||||
((EUROPEAN ((100 (53 197 NOLOCKSHIFT)) (101 (52 196 NOLOCKSHIFT)) (102 (54 198 NOLOCKSHIFT)) (103 (
|
||||
61887 61759 LOCKSHIFT)) (104 (55 199 NOLOCKSHIFT)) (105 (61888 61760 LOCKSHIFT)) (106 (61872 61744
|
||||
LOCKSHIFT)) (107 (61860 61732 LOCKSHIFT)) (108 (48 126 NOLOCKSHIFT)) (109 (61892 61764 LOCKSHIFT)) (
|
||||
110 (203 207 NOLOCKSHIFT)) (111 (61919 61791 LOCKSHIFT)) (112 (47 191 NOLOCKSHIFT)) (115 (1 1
|
||||
NOLOCKSHIFT) . IGNORE) (116 (51 195 NOLOCKSHIFT)) (117 (50 194 NOLOCKSHIFT)) (118 (61873 61745
|
||||
LOCKSHIFT)) (119 (61858 61730 LOCKSHIFT)) (120 (61874 61746 LOCKSHIFT)) (121 (61859 61731 LOCKSHIFT))
|
||||
(122 (57 202 NOLOCKSHIFT)) (123 (61886 61758 LOCKSHIFT)) (124 (61864 61736 LOCKSHIFT)) (125 (61903
|
||||
61775 LOCKSHIFT)) (126 (61908 61780 LOCKSHIFT)) (127 (241 225 LOCKSHIFT)) (128 (187 170 LOCKSHIFT)) (
|
||||
129 (249 233 LOCKSHIFT)) (132 (49 193 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9
|
||||
NOLOCKSHIFT) . IGNORE) (135 (61905 61777 LOCKSHIFT)) (137 (61869 61741 LOCKSHIFT)) (138 (61877 61749
|
||||
LOCKSHIFT)) (139 (61906 61778 LOCKSHIFT)) (140 (251 90 LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (
|
||||
250 234 LOCKSHIFT)) (143 (59 58 LOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (145 (171 186 LOCKSHIFT
|
||||
)) (148 (61904 61776 LOCKSHIFT)) (149 (61920 61792 LOCKSHIFT)) (150 (61921 61793 LOCKSHIFT)) (151 (
|
||||
61857 61729 LOCKSHIFT)) (152 (61863 61735 LOCKSHIFT)) (153 (56 200 NOLOCKSHIFT)) (154 (61900 61772
|
||||
LOCKSHIFT)) (155 (239 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (
|
||||
246 230 LOCKSHIFT)) (159 (207 176 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DORADO) (logic ((100 (
|
||||
53 37 NOLOCKSHIFT)) (101 (52 164 NOLOCKSHIFT)) (102 (54 126 NOLOCKSHIFT)) (103 (61258 61260
|
||||
NOLOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105 (61292 61293 NOLOCKSHIFT)) (106 (61271 61270 NOLOCKSHIFT)
|
||||
) (107 (61284 61285 NOLOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (61307 61306 NOLOCKSHIFT)) (110 (45
|
||||
177 NOLOCKSHIFT)) (111 (61269 61268 LOCKSHIFT)) (112 (172 174 NOLOCKSHIFT)) (115 (1 1 NOLOCKSHIFT) .
|
||||
IGNORE) (116 (51 35 NOLOCKSHIFT)) (117 (50 64 NOLOCKSHIFT)) (118 (61240 61241 NOLOCKSHIFT)) (119 (
|
||||
61234 61235 NOLOCKSHIFT)) (120 (61266 61262 NOLOCKSHIFT)) (121 (61365 61365 NOLOCKSHIFT)) (122 (57 40
|
||||
NOLOCKSHIFT)) (123 (61275 61274 NOLOCKSHIFT)) (124 (61300 61299 NOLOCKSHIFT)) (125 (61273 61272
|
||||
NOLOCKSHIFT)) (126 (61282 61283 NOLOCKSHIFT)) (127 (61256 61257 NOLOCKSHIFT)) (128 (61356 61356
|
||||
NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE)
|
||||
(134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (61250 61251 NOLOCKSHIFT)) (137 (61298 61297 NOLOCKSHIFT)) (138
|
||||
(61305 61303 NOLOCKSHIFT)) (139 (61265 61264 NOLOCKSHIFT)) (140 (61364 61364 NOLOCKSHIFT)) (141
|
||||
1SHIFTDOWN . 1SHIFTUP) (142 (61281 233 NOLOCKSHIFT)) (143 (61351 61351 NOLOCKSHIFT)) (144 (13 13
|
||||
NOLOCKSHIFT) . IGNORE) (145 (61357 61357 NOLOCKSHIFT)) (148 (61279 61278 NOLOCKSHIFT)) (149 (61239
|
||||
61238 NOLOCKSHIFT)) (150 (61290 61290 NOLOCKSHIFT)) (151 (61263 61261 NOLOCKSHIFT)) (152 (61295 61295
|
||||
NOLOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154 (61252 61253 NOLOCKSHIFT)) (155 (61254 61255 NOLOCKSHIFT)
|
||||
) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (91 123 NOLOCKSHIFT)) (159 (61 43
|
||||
NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DORADO) (MATH ((100 (53 37 NOLOCKSHIFT)) (101 (52 36
|
||||
NOLOCKSHIFT)) (102 (54 126 NOLOCKSHIFT)) (103 (61284 61285 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105
|
||||
(100 68 LOCKSHIFT)) (106 (174 61245 NOLOCKSHIFT)) (107 (61369 61363 NOLOCKSHIFT)) (108 (48 41
|
||||
NOLOCKSHIFT)) (109 (61254 61255 NOLOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)) (111 (173 61246 LOCKSHIFT)) (
|
||||
112 (47 61300 NOLOCKSHIFT)) (115 (1 1 NOLOCKSHIFT) . IGNORE) (116 (51 35 NOLOCKSHIFT)) (117 (50 64
|
||||
NOLOCKSHIFT)) (118 (61282 61283 LOCKSHIFT)) (119 (61287 61286 NOLOCKSHIFT)) (120 (61301 61302
|
||||
NOLOCKSHIFT)) (121 (61351 65 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (175 61247 LOCKSHIFT)) (124 (
|
||||
180 184 LOCKSHIFT)) (125 (172 61244 LOCKSHIFT)) (126 (61256 61257 LOCKSHIFT)) (127 (44 61250
|
||||
NOLOCKSHIFT)) (128 (61298 61253 NOLOCKSHIFT)) (129 (93 61265 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (
|
||||
133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (
|
||||
61356 61362 LOCKSHIFT)) (138 (61254 61291 NOLOCKSHIFT)) (139 (98 61360 NOLOCKSHIFT)) (140 (61309 177
|
||||
LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (46 61251 NOLOCKSHIFT)) (143 (61299 61252 NOLOCKSHIFT)) (
|
||||
144 (13 13 NOLOCKSHIFT) . IGNORE) (145 (95 94 NOLOCKSHIFT)) (148 (61358 82 LOCKSHIFT)) (149 (61296
|
||||
61266 NOLOCKSHIFT)) (150 (61305 61303 NOLOCKSHIFT)) (151 (61308 61267 LOCKSHIFT)) (152 (61288 72
|
||||
LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154 (61357 61361 NOLOCKSHIFT)) (155 (61292 61293 LOCKSHIFT)) (
|
||||
156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (91 61264 NOLOCKSHIFT)) (159 (61 43
|
||||
NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DORADO) (OFFICE ((100 (61397 61381 NOLOCKSHIFT)) (101 (
|
||||
61396 61380 NOLOCKSHIFT)) (102 (61398 61382 NOLOCKSHIFT)) (103 (8557 8554 NOLOCKSHIFT)) (104 (61399
|
||||
61383 NOLOCKSHIFT)) (105 (61232 8743 NOLOCKSHIFT)) (106 (61346 8571 NOLOCKSHIFT)) (107 (188 86
|
||||
NOLOCKSHIFT)) (108 (61402 61386 NOLOCKSHIFT)) (109 (210 8738 NOLOCKSHIFT)) (110 (61437 61438
|
||||
NOLOCKSHIFT)) (111 (163 8558 NOLOCKSHIFT)) (112 (61248 63 NOLOCKSHIFT)) (115 (1 1 NOLOCKSHIFT) .
|
||||
IGNORE) (116 (61395 61379 NOLOCKSHIFT)) (117 (61394 61378 NOLOCKSHIFT)) (118 (185 8553 NOLOCKSHIFT)) (
|
||||
119 (176 8546 NOLOCKSHIFT)) (120 (167 8744 NOLOCKSHIFT)) (121 (97 8745 NOLOCKSHIFT)) (122 (61401 61385
|
||||
NOLOCKSHIFT)) (123 (162 8570 NOLOCKSHIFT)) (124 (61437 88 NOLOCKSHIFT)) (125 (111 8569 NOLOCKSHIFT))
|
||||
(126 (61289 8737 NOLOCKSHIFT)) (127 (44 60 NOLOCKSHIFT)) (128 (39 34 NOLOCKSHIFT)) (129 (93 125
|
||||
NOLOCKSHIFT)) (132 (61393 61377 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9
|
||||
NOLOCKSHIFT) . IGNORE) (135 (61233 8742 NOLOCKSHIFT)) (137 (61438 67 NOLOCKSHIFT)) (138 (8739 74
|
||||
NOLOCKSHIFT)) (139 (190 61436 NOLOCKSHIFT)) (140 (189 90 NOLOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (
|
||||
142 (61249 62 NOLOCKSHIFT)) (143 (61352 58 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (145 (95
|
||||
61280 NOLOCKSHIFT)) (148 (212 8574 NOLOCKSHIFT)) (149 (61354 8573 NOLOCKSHIFT)) (150 (61286 8741
|
||||
NOLOCKSHIFT)) (151 (165 8572 NOLOCKSHIFT)) (152 (61368 8740 NOLOCKSHIFT)) (153 (61400 61384
|
||||
NOLOCKSHIFT)) (154 (173 175 NOLOCKSHIFT)) (155 (172 174 NOLOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32
|
||||
32 NOLOCKSHIFT) . IGNORE) (158 (91 123 NOLOCKSHIFT)) (159 (61406 61368 NOLOCKSHIFT)) (160 2SHIFTDOWN
|
||||
. 2SHIFTUP)) DORADO) (DVORAK ((100 (49 42 NOLOCKSHIFT)) (101 (51 41 NOLOCKSHIFT)) (102 (57 37
|
||||
NOLOCKSHIFT)) (103 (46 62 NOLOCKSHIFT)) (104 (48 38 NOLOCKSHIFT)) (105 (101 69 LOCKSHIFT)) (106 (103
|
||||
71 LOCKSHIFT)) (107 (107 75 LOCKSHIFT)) (108 (54 45 NOLOCKSHIFT)) (109 (116 84 LOCKSHIFT)) (110 (56 95
|
||||
NOLOCKSHIFT)) (111 (108 76 LOCKSHIFT)) (112 (122 90 LOCKSHIFT)) (115 (1 1 NOLOCKSHIFT) . IGNORE) (116
|
||||
(53 40 NOLOCKSHIFT)) (117 (55 35 NOLOCKSHIFT)) (118 (44 60 NOLOCKSHIFT)) (119 (63 47 NOLOCKSHIFT)) (
|
||||
120 (111 79 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (52 164 NOLOCKSHIFT)) (123 (99 67 LOCKSHIFT)) (
|
||||
124 (113 81 LOCKSHIFT)) (125 (114 82 LOCKSHIFT)) (126 (110 78 LOCKSHIFT)) (127 (119 87 LOCKSHIFT)) (
|
||||
128 (44 186 NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (33 64 NOLOCKSHIFT)) (133 (92 124
|
||||
NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (117 85 LOCKSHIFT)) (137 (106 74
|
||||
LOCKSHIFT)) (138 (104 72 LOCKSHIFT)) (139 (120 88 LOCKSHIFT)) (140 (59 58 NOLOCKSHIFT)) (141
|
||||
1SHIFTDOWN . 1SHIFTUP) (142 (118 86 LOCKSHIFT)) (143 (115 83 LOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) .
|
||||
IGNORE) (145 (169 170 NOLOCKSHIFT)) (148 (112 80 LOCKSHIFT)) (149 (121 89 LOCKSHIFT)) (150 (105 73
|
||||
LOCKSHIFT)) (151 (102 70 LOCKSHIFT)) (152 (100 68 LOCKSHIFT)) (153 (50 162 NOLOCKSHIFT)) (154 (98 66
|
||||
LOCKSHIFT)) (155 (109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (
|
||||
91 123 NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DORADO) (GREEK ((100 (
|
||||
53 37 NOLOCKSHIFT)) (101 (52 36 NOLOCKSHIFT)) (102 (54 126 NOLOCKSHIFT)) (103 (9830 69 LOCKSHIFT)) (
|
||||
104 (55 38 NOLOCKSHIFT)) (105 (9829 9797 LOCKSHIFT)) (106 (9849 9817 LOCKSHIFT)) (107 (115 9814
|
||||
LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (9837 9805 LOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)) (111 (9843
|
||||
9811 LOCKSHIFT)) (112 (47 63 NOLOCKSHIFT)) (115 (1 1 NOLOCKSHIFT) . IGNORE) (116 (51 35 NOLOCKSHIFT))
|
||||
(117 (50 64 NOLOCKSHIFT)) (118 (9853 9821 LOCKSHIFT)) (119 (9835 9803 LOCKSHIFT)) (120 (9846 9814
|
||||
LOCKSHIFT)) (121 (9825 9793 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (9836 9804 LOCKSHIFT)) (124 (
|
||||
9851 9819 LOCKSHIFT)) (125 (9842 9810 LOCKSHIFT)) (126 (9838 9806 LOCKSHIFT)) (127 (44 60 NOLOCKSHIFT)
|
||||
) (128 (39 34 NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (133 (92 124
|
||||
NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (9850 9818 LOCKSHIFT)) (137 (9841 9809
|
||||
LOCKSHIFT)) (138 (106 74 LOCKSHIFT)) (139 (9826 66 LOCKSHIFT)) (140 (9833 9801 LOCKSHIFT)) (141
|
||||
1SHIFTDOWN . 1SHIFTUP) (142 (46 62 NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) .
|
||||
IGNORE) (145 (95 94 NOLOCKSHIFT)) (148 (9845 9813 LOCKSHIFT)) (149 (9848 9816 LOCKSHIFT)) (150 (9828
|
||||
9796 LOCKSHIFT)) (151 (9852 9820 LOCKSHIFT)) (152 (9834 9802 LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (
|
||||
154 (9840 9808 LOCKSHIFT)) (155 (9839 9807 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT
|
||||
) . IGNORE) (158 (91 123 NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP))
|
||||
DORADO) (ITALIAN ((100 (53 61903 NOLOCKSHIFT)) (101 (52 61886 NOLOCKSHIFT)) (102 (54 61919
|
||||
NOLOCKSHIFT)) (103 (101 69 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105 (100 68 LOCKSHIFT)) (106 (117 85
|
||||
LOCKSHIFT)) (107 (118 86 LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (107 75 LOCKSHIFT)) (110 (45 45
|
||||
NOLOCKSHIFT)) (111 (112 80 LOCKSHIFT)) (112 (204 63 NOLOCKSHIFT)) (115 (1 1 NOLOCKSHIFT) . IGNORE) (
|
||||
116 (51 61872 NOLOCKSHIFT)) (117 (50 61858 NOLOCKSHIFT)) (118 (119 87 LOCKSHIFT)) (119 (113 81
|
||||
LOCKSHIFT)) (120 (115 83 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (105 73
|
||||
LOCKSHIFT)) (124 (120 88 LOCKSHIFT)) (125 (111 79 LOCKSHIFT)) (126 (108 76 LOCKSHIFT)) (127 (44 171
|
||||
NOLOCKSHIFT)) (128 (39 186 NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (133 (92
|
||||
124 NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (99 67
|
||||
LOCKSHIFT)) (138 (106 74 LOCKSHIFT)) (139 (98 66 LOCKSHIFT)) (140 (122 90 LOCKSHIFT)) (141 1SHIFTDOWN
|
||||
. 1SHIFTUP) (142 (46 187 NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (
|
||||
145 (95 170 NOLOCKSHIFT)) (148 (114 82 LOCKSHIFT)) (149 (116 84 LOCKSHIFT)) (150 (103 71 LOCKSHIFT)) (
|
||||
151 (121 89 LOCKSHIFT)) (152 (104 72 LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154 (110 78 LOCKSHIFT)) (
|
||||
155 (109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (91 123
|
||||
NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DORADO) (SPANISH ((100 (53
|
||||
61904 NOLOCKSHIFT)) (101 (52 61887 NOLOCKSHIFT)) (102 (54 61920 NOLOCKSHIFT)) (103 (101 69 LOCKSHIFT))
|
||||
(104 (55 38 NOLOCKSHIFT)) (105 (100 68 LOCKSHIFT)) (106 (117 85 LOCKSHIFT)) (107 (118 86 LOCKSHIFT))
|
||||
(108 (48 41 NOLOCKSHIFT)) (109 (107 75 LOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)) (111 (112 80 LOCKSHIFT))
|
||||
(112 (204 63 NOLOCKSHIFT)) (115 (1 1 NOLOCKSHIFT) . IGNORE) (116 (51 61873 NOLOCKSHIFT)) (117 (50
|
||||
61858 NOLOCKSHIFT)) (118 (119 87 LOCKSHIFT)) (119 (113 81 LOCKSHIFT)) (120 (115 83 LOCKSHIFT)) (121 (
|
||||
97 65 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (105 73 LOCKSHIFT)) (124 (120 88 LOCKSHIFT)) (125 (
|
||||
111 79 LOCKSHIFT)) (126 (108 76 LOCKSHIFT)) (127 (44 171 NOLOCKSHIFT)) (128 (59 58 NOLOCKSHIFT)) (129
|
||||
(203 187 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9
|
||||
NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (99 67 LOCKSHIFT)) (138 (106 74 LOCKSHIFT)) (139
|
||||
(98 66 LOCKSHIFT)) (140 (122 90 LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (46 187 NOLOCKSHIFT)) (
|
||||
143 (61900 61772 LOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (145 (161 191 NOLOCKSHIFT)) (148 (114
|
||||
82 LOCKSHIFT)) (149 (116 84 LOCKSHIFT)) (150 (103 71 LOCKSHIFT)) (151 (121 89 LOCKSHIFT)) (152 (104 72
|
||||
LOCKSHIFT)) (153 (56 61925 NOLOCKSHIFT)) (154 (110 78 LOCKSHIFT)) (155 (109 77 LOCKSHIFT)) (156
|
||||
LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (44 171 NOLOCKSHIFT)) (159 (61 43
|
||||
NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DORADO) (FRENCH ((100 (53 61905 NOLOCKSHIFT)) (101 (52
|
||||
61888 NOLOCKSHIFT)) (102 (54 61921 NOLOCKSHIFT)) (103 (101 69 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (
|
||||
105 (100 68 LOCKSHIFT)) (106 (117 85 LOCKSHIFT)) (107 (118 86 LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (
|
||||
109 (107 75 LOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)) (111 (112 80 LOCKSHIFT)) (112 (204 63 NOLOCKSHIFT))
|
||||
(115 (1 1 NOLOCKSHIFT) . IGNORE) (116 (51 61874 NOLOCKSHIFT)) (117 (50 61859 NOLOCKSHIFT)) (118 (119
|
||||
87 LOCKSHIFT)) (119 (113 81 LOCKSHIFT)) (120 (115 83 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (57 40
|
||||
NOLOCKSHIFT)) (123 (105 73 LOCKSHIFT)) (124 (120 88 LOCKSHIFT)) (125 (111 79 LOCKSHIFT)) (126 (108 76
|
||||
LOCKSHIFT)) (127 (44 171 NOLOCKSHIFT)) (128 (39 61857 NOLOCKSHIFT)) (129 (61872 61892 LOCKSHIFT)) (132
|
||||
(49 33 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102
|
||||
70 LOCKSHIFT)) (137 (99 67 LOCKSHIFT)) (138 (106 74 LOCKSHIFT)) (139 (98 66 LOCKSHIFT)) (140 (122 90
|
||||
LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (46 187 NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13
|
||||
13 NOLOCKSHIFT) . IGNORE) (145 (61869 61741 LOCKSHIFT)) (148 (114 82 LOCKSHIFT)) (149 (116 84
|
||||
LOCKSHIFT)) (150 (103 71 LOCKSHIFT)) (151 (121 89 LOCKSHIFT)) (152 (104 72 LOCKSHIFT)) (153 (56 61919
|
||||
NOLOCKSHIFT)) (154 (110 78 LOCKSHIFT)) (155 (109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32
|
||||
NOLOCKSHIFT) . IGNORE) (158 (61873 61877 LOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN .
|
||||
2SHIFTUP)) DORADO) (GERMAN ((100 (53 37 NOLOCKSHIFT)) (101 (52 36 NOLOCKSHIFT)) (102 (54 126
|
||||
NOLOCKSHIFT)) (103 (101 69 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105 (100 68 LOCKSHIFT)) (106 (117 85
|
||||
LOCKSHIFT)) (107 (118 86 LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (107 75 LOCKSHIFT)) (110 (45 45
|
||||
NOLOCKSHIFT)) (111 (112 80 LOCKSHIFT)) (112 (251 63 NOLOCKSHIFT)) (115 (1 1 NOLOCKSHIFT) . IGNORE) (
|
||||
116 (51 35 NOLOCKSHIFT)) (117 (50 64 NOLOCKSHIFT)) (118 (119 87 LOCKSHIFT)) (119 (113 81 LOCKSHIFT)) (
|
||||
120 (115 83 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (105 73 LOCKSHIFT)) (
|
||||
124 (120 88 LOCKSHIFT)) (125 (111 79 LOCKSHIFT)) (126 (108 76 LOCKSHIFT)) (127 (44 60 NOLOCKSHIFT)) (
|
||||
128 (39 34 NOLOCKSHIFT)) (129 (61863 61735 LOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (133 (92 124
|
||||
NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (99 67 LOCKSHIFT
|
||||
)) (138 (106 74 LOCKSHIFT)) (139 (98 66 LOCKSHIFT)) (140 (122 90 LOCKSHIFT)) (141 1SHIFTDOWN .
|
||||
1SHIFTUP) (142 (46 62 NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (145
|
||||
(95 94 NOLOCKSHIFT)) (148 (114 82 LOCKSHIFT)) (149 (116 84 LOCKSHIFT)) (150 (103 71 LOCKSHIFT)) (151 (
|
||||
121 89 LOCKSHIFT)) (152 (104 72 LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154 (110 78 LOCKSHIFT)) (155 (
|
||||
109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (61908 61780
|
||||
LOCKSHIFT)) (159 (61925 61797 LOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DORADO) (STANDARD-RUSSIAN ((
|
||||
100 (34 52 NOLOCKSHIFT)) (101 (47 51 NOLOCKSHIFT)) (102 (58 53 NOLOCKSHIFT)) (103 (10085 10037
|
||||
LOCKSHIFT)) (104 (44 54 NOLOCKSHIFT)) (105 (10067 10019 LOCKSHIFT)) (106 (10068 10020 LOCKSHIFT)) (107
|
||||
(10078 10030 LOCKSHIFT)) (108 (63 57 NOLOCKSHIFT)) (109 (10077 10029 LOCKSHIFT)) (110 (37 48
|
||||
NOLOCKSHIFT)) (111 (10073 10025 LOCKSHIFT)) (112 (10071 10023 LOCKSHIFT)) (115 (1 1 NOLOCKSHIFT) .
|
||||
IGNORE) (116 (45 50 NOLOCKSHIFT)) (117 (61352 49 NOLOCKSHIFT)) (118 (10088 10040 LOCKSHIFT)) (119 (
|
||||
10075 10027 LOCKSHIFT)) (120 (10093 10045 LOCKSHIFT)) (121 (10086 10038 LOCKSHIFT)) (122 (95 56
|
||||
NOLOCKSHIFT)) (123 (10090 10042 LOCKSHIFT)) (124 (10089 10041 LOCKSHIFT)) (125 (10091 10043 LOCKSHIFT)
|
||||
) (126 (10069 10021 LOCKSHIFT)) (127 (10066 10018 LOCKSHIFT)) (128 (10095 10047 LOCKSHIFT)) (129 (
|
||||
10092 10044 LOCKSHIFT)) (132 (167 43 NOLOCKSHIFT)) (133 (92 124 NOLOCKSHIFT) . IGNORE) (134 (9 9
|
||||
NOLOCKSHIFT) . IGNORE) (135 (10065 10017 LOCKSHIFT)) (137 (10083 10035 LOCKSHIFT)) (138 (10080 10032
|
||||
LOCKSHIFT)) (139 (10074 10026 LOCKSHIFT)) (140 (10097 10049 LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (
|
||||
142 (10096 10048 LOCKSHIFT)) (143 (10072 10024 LOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (145 (41
|
||||
40 NOLOCKSHIFT)) (148 (10076 10028 LOCKSHIFT)) (149 (10070 10022 LOCKSHIFT)) (150 (10081 10033
|
||||
LOCKSHIFT)) (151 (10079 10031 LOCKSHIFT)) (152 (10082 10034 LOCKSHIFT)) (153 (46 55 NOLOCKSHIFT)) (154
|
||||
(10084 10036 LOCKSHIFT)) (155 (10094 10046 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32
|
||||
NOLOCKSHIFT) . IGNORE) (158 (10087 10039 LOCKSHIFT)) (159 (33 61 NOLOCKSHIFT)) (160 2SHIFTDOWN .
|
||||
2SHIFTUP)) DORADO))
|
||||
@@ -1,171 +0,0 @@
|
||||
((EUROPEAN ((100 (53 197 NOLOCKSHIFT)) (101 (52 196 NOLOCKSHIFT)) (102 (54 198 NOLOCKSHIFT)) (103 (
|
||||
61887 61759 LOCKSHIFT)) (104 (55 199 NOLOCKSHIFT)) (105 (61888 61760 LOCKSHIFT)) (106 (61872 61744
|
||||
LOCKSHIFT)) (107 (61860 61732 LOCKSHIFT)) (108 (48 126 NOLOCKSHIFT)) (109 (61892 61764 LOCKSHIFT)) (
|
||||
110 (203 207 NOLOCKSHIFT)) (111 (61919 61791 LOCKSHIFT)) (112 (47 191 NOLOCKSHIFT)) (115 (8 8
|
||||
NOLOCKSHIFT) . IGNORE) (116 (51 195 NOLOCKSHIFT)) (117 (50 194 NOLOCKSHIFT)) (118 (61873 61745
|
||||
LOCKSHIFT)) (119 (61858 61730 LOCKSHIFT)) (120 (61874 61746 LOCKSHIFT)) (121 (61859 61731 LOCKSHIFT))
|
||||
(122 (57 202 NOLOCKSHIFT)) (123 (61886 61758 LOCKSHIFT)) (124 (61864 61736 LOCKSHIFT)) (125 (61903
|
||||
61775 LOCKSHIFT)) (126 (61908 61780 LOCKSHIFT)) (127 (241 225 LOCKSHIFT)) (171 (187 170 LOCKSHIFT)) (
|
||||
129 (249 233 LOCKSHIFT)) (132 (49 193 NOLOCKSHIFT)) (165 (27 27 NOLOCKSHIFT) . IGNORE) (134 (9 9
|
||||
NOLOCKSHIFT) . IGNORE) (135 (61905 61777 LOCKSHIFT)) (137 (61869 61741 LOCKSHIFT)) (138 (61877 61749
|
||||
LOCKSHIFT)) (139 (61906 61778 LOCKSHIFT)) (140 (251 90 LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (
|
||||
250 234 LOCKSHIFT)) (143 (59 58 LOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (208 (171 186 LOCKSHIFT
|
||||
)) (148 (61904 61776 LOCKSHIFT)) (149 (61920 61792 LOCKSHIFT)) (150 (61921 61793 LOCKSHIFT)) (151 (
|
||||
61857 61729 LOCKSHIFT)) (152 (61863 61735 LOCKSHIFT)) (153 (56 200 NOLOCKSHIFT)) (154 (61900 61772
|
||||
LOCKSHIFT)) (155 (239 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (
|
||||
246 230 LOCKSHIFT)) (159 (207 176 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DOVE) (logic ((100 (53 37
|
||||
NOLOCKSHIFT)) (101 (52 164 NOLOCKSHIFT)) (102 (54 126 NOLOCKSHIFT)) (103 (61258 61260 NOLOCKSHIFT)) (
|
||||
104 (55 38 NOLOCKSHIFT)) (105 (61292 61293 NOLOCKSHIFT)) (106 (61271 61270 NOLOCKSHIFT)) (107 (61284
|
||||
61285 NOLOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (61307 61306 NOLOCKSHIFT)) (110 (45 177 NOLOCKSHIFT
|
||||
)) (111 (61269 61268 LOCKSHIFT)) (112 (172 174 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) . IGNORE) (116 (51
|
||||
35 NOLOCKSHIFT)) (117 (50 64 NOLOCKSHIFT)) (118 (61240 61241 NOLOCKSHIFT)) (119 (61234 61235
|
||||
NOLOCKSHIFT)) (120 (61266 61262 NOLOCKSHIFT)) (121 (61365 61365 NOLOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)
|
||||
) (123 (61275 61274 NOLOCKSHIFT)) (124 (61300 61299 NOLOCKSHIFT)) (125 (61273 61272 NOLOCKSHIFT)) (126
|
||||
(61282 61283 NOLOCKSHIFT)) (127 (61256 61257 NOLOCKSHIFT)) (171 (61356 61356 NOLOCKSHIFT)) (129 (93
|
||||
125 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (165 (27 27 NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT)
|
||||
. IGNORE) (135 (61250 61251 NOLOCKSHIFT)) (137 (61298 61297 NOLOCKSHIFT)) (138 (61305 61303
|
||||
NOLOCKSHIFT)) (139 (61265 61264 NOLOCKSHIFT)) (140 (61364 61364 NOLOCKSHIFT)) (141 1SHIFTDOWN .
|
||||
1SHIFTUP) (142 (61281 233 NOLOCKSHIFT)) (143 (61351 61351 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) .
|
||||
IGNORE) (208 (61357 61357 NOLOCKSHIFT)) (148 (61279 61278 NOLOCKSHIFT)) (149 (61239 61238 NOLOCKSHIFT)
|
||||
) (150 (61290 61290 NOLOCKSHIFT)) (151 (61263 61261 NOLOCKSHIFT)) (152 (61295 61295 NOLOCKSHIFT)) (153
|
||||
(56 42 NOLOCKSHIFT)) (154 (61252 61253 NOLOCKSHIFT)) (155 (61254 61255 NOLOCKSHIFT)) (156 LOCKDOWN .
|
||||
LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (91 123 NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160
|
||||
2SHIFTDOWN . 2SHIFTUP)) DOVE) (MATH ((100 (53 37 NOLOCKSHIFT)) (101 (52 36 NOLOCKSHIFT)) (102 (54 126
|
||||
NOLOCKSHIFT)) (103 (61284 61285 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105 (100 68 LOCKSHIFT)) (106 (
|
||||
174 61245 NOLOCKSHIFT)) (107 (61369 61363 NOLOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (61254 61255
|
||||
NOLOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)) (111 (173 61246 LOCKSHIFT)) (112 (47 61300 NOLOCKSHIFT)) (115
|
||||
(8 8 NOLOCKSHIFT) . IGNORE) (116 (51 35 NOLOCKSHIFT)) (117 (50 64 NOLOCKSHIFT)) (118 (61282 61283
|
||||
LOCKSHIFT)) (119 (61287 61286 NOLOCKSHIFT)) (120 (61301 61302 NOLOCKSHIFT)) (121 (61351 65 LOCKSHIFT))
|
||||
(122 (57 40 NOLOCKSHIFT)) (123 (175 61247 LOCKSHIFT)) (124 (180 184 LOCKSHIFT)) (125 (172 61244
|
||||
LOCKSHIFT)) (126 (61256 61257 LOCKSHIFT)) (127 (44 61250 NOLOCKSHIFT)) (171 (61298 61253 NOLOCKSHIFT))
|
||||
(129 (93 61265 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (165 (27 27 NOLOCKSHIFT) . IGNORE) (134 (9 9
|
||||
NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (61356 61362 LOCKSHIFT)) (138 (61254 61291
|
||||
NOLOCKSHIFT)) (139 (98 61360 NOLOCKSHIFT)) (140 (61309 177 LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (
|
||||
142 (46 61251 NOLOCKSHIFT)) (143 (61299 61252 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (208 (
|
||||
95 94 NOLOCKSHIFT)) (148 (61358 82 LOCKSHIFT)) (149 (61296 61266 NOLOCKSHIFT)) (150 (61305 61303
|
||||
NOLOCKSHIFT)) (151 (61308 61267 LOCKSHIFT)) (152 (61288 72 LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154
|
||||
(61357 61361 NOLOCKSHIFT)) (155 (61292 61293 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32
|
||||
NOLOCKSHIFT) . IGNORE) (158 (91 61264 NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN .
|
||||
2SHIFTUP)) DOVE) (OFFICE ((100 (61397 61381 NOLOCKSHIFT)) (101 (61396 61380 NOLOCKSHIFT)) (102 (61398
|
||||
61382 NOLOCKSHIFT)) (103 (8557 8554 NOLOCKSHIFT)) (104 (61399 61383 NOLOCKSHIFT)) (105 (61232 8743
|
||||
NOLOCKSHIFT)) (106 (61346 8571 NOLOCKSHIFT)) (107 (188 86 NOLOCKSHIFT)) (108 (61402 61386 NOLOCKSHIFT)
|
||||
) (109 (210 8738 NOLOCKSHIFT)) (110 (61437 61438 NOLOCKSHIFT)) (111 (163 8558 NOLOCKSHIFT)) (112 (
|
||||
61248 63 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) . IGNORE) (116 (61395 61379 NOLOCKSHIFT)) (117 (61394
|
||||
61378 NOLOCKSHIFT)) (118 (185 8553 NOLOCKSHIFT)) (119 (176 8546 NOLOCKSHIFT)) (120 (167 8744
|
||||
NOLOCKSHIFT)) (121 (97 8745 NOLOCKSHIFT)) (122 (61401 61385 NOLOCKSHIFT)) (123 (162 8570 NOLOCKSHIFT))
|
||||
(124 (61437 88 NOLOCKSHIFT)) (125 (111 8569 NOLOCKSHIFT)) (126 (61289 8737 NOLOCKSHIFT)) (127 (44 60
|
||||
NOLOCKSHIFT)) (171 (39 34 NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (61393 61377 NOLOCKSHIFT)) (
|
||||
165 (27 27 NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (61233 8742 NOLOCKSHIFT)) (137
|
||||
(61438 67 NOLOCKSHIFT)) (138 (8739 74 NOLOCKSHIFT)) (139 (190 61436 NOLOCKSHIFT)) (140 (189 90
|
||||
NOLOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (61249 62 NOLOCKSHIFT)) (143 (61352 58 NOLOCKSHIFT)) (
|
||||
144 (13 13 NOLOCKSHIFT) . IGNORE) (208 (95 61280 NOLOCKSHIFT)) (148 (212 8574 NOLOCKSHIFT)) (149 (
|
||||
61354 8573 NOLOCKSHIFT)) (150 (61286 8741 NOLOCKSHIFT)) (151 (165 8572 NOLOCKSHIFT)) (152 (61368 8740
|
||||
NOLOCKSHIFT)) (153 (61400 61384 NOLOCKSHIFT)) (154 (173 175 NOLOCKSHIFT)) (155 (172 174 NOLOCKSHIFT))
|
||||
(156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (91 123 NOLOCKSHIFT)) (159 (61406
|
||||
61368 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DOVE) (DVORAK ((100 (49 42 NOLOCKSHIFT)) (101 (51 41
|
||||
NOLOCKSHIFT)) (102 (57 37 NOLOCKSHIFT)) (103 (46 62 NOLOCKSHIFT)) (104 (48 38 NOLOCKSHIFT)) (105 (101
|
||||
69 LOCKSHIFT)) (106 (103 71 LOCKSHIFT)) (107 (107 75 LOCKSHIFT)) (108 (54 45 NOLOCKSHIFT)) (109 (116
|
||||
84 LOCKSHIFT)) (110 (56 95 NOLOCKSHIFT)) (111 (108 76 LOCKSHIFT)) (112 (122 90 LOCKSHIFT)) (115 (8 8
|
||||
NOLOCKSHIFT) . IGNORE) (116 (53 40 NOLOCKSHIFT)) (117 (55 35 NOLOCKSHIFT)) (118 (44 60 NOLOCKSHIFT)) (
|
||||
119 (63 47 NOLOCKSHIFT)) (120 (111 79 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (52 164 NOLOCKSHIFT)) (
|
||||
123 (99 67 LOCKSHIFT)) (124 (113 81 LOCKSHIFT)) (125 (114 82 LOCKSHIFT)) (126 (110 78 LOCKSHIFT)) (127
|
||||
(119 87 LOCKSHIFT)) (171 (44 186 NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (33 64 NOLOCKSHIFT)) (
|
||||
165 (27 27 NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (117 85 LOCKSHIFT)) (137 (106
|
||||
74 LOCKSHIFT)) (138 (104 72 LOCKSHIFT)) (139 (120 88 LOCKSHIFT)) (140 (59 58 NOLOCKSHIFT)) (141
|
||||
1SHIFTDOWN . 1SHIFTUP) (142 (118 86 LOCKSHIFT)) (143 (115 83 LOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) .
|
||||
IGNORE) (208 (169 170 NOLOCKSHIFT)) (148 (112 80 LOCKSHIFT)) (149 (121 89 LOCKSHIFT)) (150 (105 73
|
||||
LOCKSHIFT)) (151 (102 70 LOCKSHIFT)) (152 (100 68 LOCKSHIFT)) (153 (50 162 NOLOCKSHIFT)) (154 (98 66
|
||||
LOCKSHIFT)) (155 (109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (
|
||||
91 123 NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DOVE) (GREEK ((100 (53 37
|
||||
NOLOCKSHIFT)) (101 (52 36 NOLOCKSHIFT)) (102 (54 126 NOLOCKSHIFT)) (103 (9830 69 LOCKSHIFT)) (104 (55
|
||||
38 NOLOCKSHIFT)) (105 (9829 9797 LOCKSHIFT)) (106 (9849 9817 LOCKSHIFT)) (107 (115 9814 LOCKSHIFT)) (
|
||||
108 (48 41 NOLOCKSHIFT)) (109 (9837 9805 LOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)) (111 (9843 9811
|
||||
LOCKSHIFT)) (112 (47 63 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) . IGNORE) (116 (51 35 NOLOCKSHIFT)) (117
|
||||
(50 64 NOLOCKSHIFT)) (118 (9853 9821 LOCKSHIFT)) (119 (9835 9803 LOCKSHIFT)) (120 (9846 9814 LOCKSHIFT
|
||||
)) (121 (9825 9793 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (9836 9804 LOCKSHIFT)) (124 (9851 9819
|
||||
LOCKSHIFT)) (125 (9842 9810 LOCKSHIFT)) (126 (9838 9806 LOCKSHIFT)) (127 (44 60 NOLOCKSHIFT)) (171 (39
|
||||
34 NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (165 (27 27 NOLOCKSHIFT) .
|
||||
IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (9850 9818 LOCKSHIFT)) (137 (9841 9809 LOCKSHIFT)) (138
|
||||
(106 74 LOCKSHIFT)) (139 (9826 66 LOCKSHIFT)) (140 (9833 9801 LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP)
|
||||
(142 (46 62 NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (208 (95 94
|
||||
NOLOCKSHIFT)) (148 (9845 9813 LOCKSHIFT)) (149 (9848 9816 LOCKSHIFT)) (150 (9828 9796 LOCKSHIFT)) (151
|
||||
(9852 9820 LOCKSHIFT)) (152 (9834 9802 LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154 (9840 9808
|
||||
LOCKSHIFT)) (155 (9839 9807 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (
|
||||
158 (91 123 NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DOVE) (ITALIAN ((171
|
||||
(39 34 NOLOCKSHIFT)) (100 (53 61903 NOLOCKSHIFT)) (101 (52 61886 NOLOCKSHIFT)) (102 (54 61919
|
||||
NOLOCKSHIFT)) (103 (101 69 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105 (100 68 LOCKSHIFT)) (106 (117 85
|
||||
LOCKSHIFT)) (107 (118 86 LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (107 75 LOCKSHIFT)) (110 (45 45
|
||||
NOLOCKSHIFT)) (111 (112 80 LOCKSHIFT)) (112 (95 63 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) . IGNORE) (116
|
||||
(51 61872 NOLOCKSHIFT)) (117 (50 61857 NOLOCKSHIFT)) (118 (119 87 LOCKSHIFT)) (119 (113 81 LOCKSHIFT)
|
||||
) (120 (115 83 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (105 73 LOCKSHIFT))
|
||||
(124 (120 88 LOCKSHIFT)) (125 (111 79 LOCKSHIFT)) (126 (108 76 LOCKSHIFT)) (127 (44 171 NOLOCKSHIFT))
|
||||
(171 (39 186 NOLOCKSHIFT)) (129 (93 125 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (165 (27 27
|
||||
NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (99 67 LOCKSHIFT
|
||||
)) (138 (106 74 LOCKSHIFT)) (139 (98 66 LOCKSHIFT)) (140 (122 90 LOCKSHIFT)) (141 1SHIFTDOWN .
|
||||
1SHIFTUP) (142 (46 187 NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (208
|
||||
(95 170 NOLOCKSHIFT)) (148 (114 82 LOCKSHIFT)) (149 (116 84 LOCKSHIFT)) (150 (103 71 LOCKSHIFT)) (151
|
||||
(121 89 LOCKSHIFT)) (152 (104 72 LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154 (110 78 LOCKSHIFT)) (155
|
||||
(109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (91 123
|
||||
NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DOVE) (SPANISH ((208 (161 191
|
||||
NOLOCKSHIFT)) (171 (59 58 NOLOCKSHIFT)) (100 (53 61904 NOLOCKSHIFT)) (101 (52 61887 NOLOCKSHIFT)) (102
|
||||
(54 61920 NOLOCKSHIFT)) (103 (101 69 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105 (100 68 LOCKSHIFT)) (
|
||||
106 (117 85 LOCKSHIFT)) (107 (118 86 LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (107 75 LOCKSHIFT)) (
|
||||
110 (45 45 NOLOCKSHIFT)) (111 (112 80 LOCKSHIFT)) (112 (95 63 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) .
|
||||
IGNORE) (116 (51 61873 NOLOCKSHIFT)) (117 (50 61858 NOLOCKSHIFT)) (118 (119 87 LOCKSHIFT)) (119 (113
|
||||
81 LOCKSHIFT)) (120 (115 83 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (105 73
|
||||
LOCKSHIFT)) (124 (120 88 LOCKSHIFT)) (125 (111 79 LOCKSHIFT)) (126 (108 76 LOCKSHIFT)) (127 (44 171
|
||||
NOLOCKSHIFT)) (171 (59 58 NOLOCKSHIFT)) (129 (185 186 NOLOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (165 (27
|
||||
27 NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (99 67
|
||||
LOCKSHIFT)) (138 (106 74 LOCKSHIFT)) (139 (98 66 LOCKSHIFT)) (140 (122 90 LOCKSHIFT)) (141 1SHIFTDOWN
|
||||
. 1SHIFTUP) (142 (46 187 NOLOCKSHIFT)) (143 (61900 61772 LOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) .
|
||||
IGNORE) (208 (161 191 NOLOCKSHIFT)) (148 (114 82 LOCKSHIFT)) (149 (116 84 LOCKSHIFT)) (150 (103 71
|
||||
LOCKSHIFT)) (151 (121 89 LOCKSHIFT)) (152 (104 72 LOCKSHIFT)) (153 (56 61925 NOLOCKSHIFT)) (154 (110
|
||||
78 LOCKSHIFT)) (155 (109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (
|
||||
158 (169 170 NOLOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DOVE) (FRENCH ((208
|
||||
(61869 61741 NOLOCKSHIFT)) (171 (39 61857 NOLOCKSHIFT)) (100 (53 61905 NOLOCKSHIFT)) (101 (52 61888
|
||||
NOLOCKSHIFT)) (102 (54 61921 NOLOCKSHIFT)) (103 (101 69 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105 (
|
||||
100 68 LOCKSHIFT)) (106 (117 85 LOCKSHIFT)) (107 (118 86 LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (
|
||||
107 75 LOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)) (111 (112 80 LOCKSHIFT)) (112 (95 63 NOLOCKSHIFT)) (115 (
|
||||
1 1 NOLOCKSHIFT) . IGNORE) (116 (51 61874 NOLOCKSHIFT)) (117 (50 61859 NOLOCKSHIFT)) (118 (119 87
|
||||
LOCKSHIFT)) (119 (113 81 LOCKSHIFT)) (120 (115 83 LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (57 40
|
||||
NOLOCKSHIFT)) (123 (105 73 LOCKSHIFT)) (124 (120 88 LOCKSHIFT)) (125 (111 79 LOCKSHIFT)) (126 (108 76
|
||||
LOCKSHIFT)) (127 (44 171 NOLOCKSHIFT)) (171 (39 61857 NOLOCKSHIFT)) (129 (61872 61892 LOCKSHIFT)) (132
|
||||
(49 33 NOLOCKSHIFT)) (165 (27 27 NOLOCKSHIFT) . IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102 70
|
||||
LOCKSHIFT)) (137 (99 67 LOCKSHIFT)) (138 (106 74 LOCKSHIFT)) (139 (98 66 LOCKSHIFT)) (140 (122 90
|
||||
LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (46 187 NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13
|
||||
13 NOLOCKSHIFT) . IGNORE) (208 (61869 61741 LOCKSHIFT)) (148 (114 82 LOCKSHIFT)) (149 (116 84
|
||||
LOCKSHIFT)) (150 (103 71 LOCKSHIFT)) (151 (121 89 LOCKSHIFT)) (152 (104 72 LOCKSHIFT)) (153 (56 61919
|
||||
NOLOCKSHIFT)) (154 (110 78 LOCKSHIFT)) (155 (109 77 LOCKSHIFT)) (156 LOCKDOWN . LOCKUP) (157 (32 32
|
||||
NOLOCKSHIFT) . IGNORE) (158 (61873 61877 LOCKSHIFT)) (159 (61 43 NOLOCKSHIFT)) (160 2SHIFTDOWN .
|
||||
2SHIFTUP)) DOVE) (GERMAN ((100 (53 37 NOLOCKSHIFT)) (101 (52 36 NOLOCKSHIFT)) (102 (54 126 NOLOCKSHIFT
|
||||
)) (103 (101 69 LOCKSHIFT)) (104 (55 38 NOLOCKSHIFT)) (105 (100 68 LOCKSHIFT)) (106 (117 85 LOCKSHIFT)
|
||||
) (107 (118 86 LOCKSHIFT)) (108 (48 41 NOLOCKSHIFT)) (109 (107 75 LOCKSHIFT)) (110 (45 45 NOLOCKSHIFT)
|
||||
) (111 (112 80 LOCKSHIFT)) (112 (251 63 NOLOCKSHIFT)) (115 (8 8 NOLOCKSHIFT) . IGNORE) (116 (51 35
|
||||
NOLOCKSHIFT)) (117 (50 64 NOLOCKSHIFT)) (118 (119 87 LOCKSHIFT)) (119 (113 81 LOCKSHIFT)) (120 (115 83
|
||||
LOCKSHIFT)) (121 (97 65 LOCKSHIFT)) (122 (57 40 NOLOCKSHIFT)) (123 (105 73 LOCKSHIFT)) (124 (120 88
|
||||
LOCKSHIFT)) (125 (111 79 LOCKSHIFT)) (126 (108 76 LOCKSHIFT)) (127 (44 60 NOLOCKSHIFT)) (171 (39 34
|
||||
NOLOCKSHIFT)) (129 (61863 61735 LOCKSHIFT)) (132 (49 33 NOLOCKSHIFT)) (165 (27 27 NOLOCKSHIFT) .
|
||||
IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (102 70 LOCKSHIFT)) (137 (99 67 LOCKSHIFT)) (138 (106 74
|
||||
LOCKSHIFT)) (139 (98 66 LOCKSHIFT)) (140 (122 90 LOCKSHIFT)) (141 1SHIFTDOWN . 1SHIFTUP) (142 (46 62
|
||||
NOLOCKSHIFT)) (143 (59 58 NOLOCKSHIFT)) (144 (13 13 NOLOCKSHIFT) . IGNORE) (208 (95 94 NOLOCKSHIFT)) (
|
||||
148 (114 82 LOCKSHIFT)) (149 (116 84 LOCKSHIFT)) (150 (103 71 LOCKSHIFT)) (151 (121 89 LOCKSHIFT)) (
|
||||
152 (104 72 LOCKSHIFT)) (153 (56 42 NOLOCKSHIFT)) (154 (110 78 LOCKSHIFT)) (155 (109 77 LOCKSHIFT)) (
|
||||
156 LOCKDOWN . LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (61908 61780 LOCKSHIFT)) (159 (61925
|
||||
61797 LOCKSHIFT)) (160 2SHIFTDOWN . 2SHIFTUP)) DOVE) (STANDARD-RUSSIAN ((208 (41 40 NOLOCKSHIFT)) (171
|
||||
(10073 10025 NOLOCKSHIFT)) (100 (34 52 NOLOCKSHIFT)) (101 (47 51 NOLOCKSHIFT)) (102 (58 53
|
||||
NOLOCKSHIFT)) (103 (10085 10037 LOCKSHIFT)) (104 (44 54 NOLOCKSHIFT)) (105 (10067 10019 LOCKSHIFT)) (
|
||||
106 (10068 10020 LOCKSHIFT)) (107 (10078 10030 LOCKSHIFT)) (108 (63 57 NOLOCKSHIFT)) (109 (10077 10029
|
||||
LOCKSHIFT)) (110 (37 48 NOLOCKSHIFT)) (111 (10073 10025 LOCKSHIFT)) (112 (10071 10023 LOCKSHIFT)) (
|
||||
115 (8 8 NOLOCKSHIFT) . IGNORE) (116 (45 50 NOLOCKSHIFT)) (117 (61352 49 NOLOCKSHIFT)) (118 (10088
|
||||
10040 LOCKSHIFT)) (119 (10075 10027 LOCKSHIFT)) (120 (10093 10045 LOCKSHIFT)) (121 (10086 10038
|
||||
LOCKSHIFT)) (122 (95 56 NOLOCKSHIFT)) (123 (10090 10042 LOCKSHIFT)) (124 (10089 10041 LOCKSHIFT)) (125
|
||||
(10091 10043 LOCKSHIFT)) (126 (10069 10021 LOCKSHIFT)) (127 (10066 10018 LOCKSHIFT)) (171 (10095
|
||||
10047 LOCKSHIFT)) (129 (10092 10044 LOCKSHIFT)) (132 (167 43 NOLOCKSHIFT)) (165 (27 27 NOLOCKSHIFT) .
|
||||
IGNORE) (134 (9 9 NOLOCKSHIFT) . IGNORE) (135 (10065 10017 LOCKSHIFT)) (137 (10083 10035 LOCKSHIFT)) (
|
||||
138 (10080 10032 LOCKSHIFT)) (139 (10074 10026 LOCKSHIFT)) (140 (10097 10049 LOCKSHIFT)) (141
|
||||
1SHIFTDOWN . 1SHIFTUP) (142 (10096 10048 LOCKSHIFT)) (143 (10072 10024 LOCKSHIFT)) (144 (13 13
|
||||
NOLOCKSHIFT) . IGNORE) (208 (41 40 NOLOCKSHIFT)) (148 (10076 10028 LOCKSHIFT)) (149 (10070 10022
|
||||
LOCKSHIFT)) (150 (10081 10033 LOCKSHIFT)) (151 (10079 10031 LOCKSHIFT)) (152 (10082 10034 LOCKSHIFT))
|
||||
(153 (46 55 NOLOCKSHIFT)) (154 (10084 10036 LOCKSHIFT)) (155 (10094 10046 LOCKSHIFT)) (156 LOCKDOWN .
|
||||
LOCKUP) (157 (32 32 NOLOCKSHIFT) . IGNORE) (158 (10087 10039 LOCKSHIFT)) (159 (33 61 NOLOCKSHIFT)) (
|
||||
160 2SHIFTDOWN . 2SHIFTUP)) DOVE))
|
||||
@@ -1,12 +1,13 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10)
|
||||
|
||||
(FILECREATED "19-Jul-2023 09:30:47" |{WMEDLEY}<library>FILEBROWSER.;25| 265978
|
||||
(FILECREATED " 4-Nov-2023 23:55:27" |{WMEDLEY}<library>FILEBROWSER.;27| 266102
|
||||
|
||||
:EDIT-BY |rmk|
|
||||
|
||||
:CHANGES-TO (VARS FILEBROWSERCOMS)
|
||||
(FNS FB.EDITCOMMAND.ONEFILE)
|
||||
|
||||
:PREVIOUS-DATE "18-Jul-2023 22:19:30" |{WMEDLEY}<library>FILEBROWSER.;24|)
|
||||
:PREVIOUS-DATE " 4-Nov-2023 23:50:29" |{WMEDLEY}<library>FILEBROWSER.;26|)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT FILEBROWSERCOMS)
|
||||
@@ -41,7 +42,8 @@
|
||||
(FB.OVERFLOW.MAXABSOLUTE 30)
|
||||
(FB.OVERFLOW.MAXFRAC 0.06)
|
||||
(FB.DEFAULT.EDITOR 'TEDIT)
|
||||
(FB.DEFAULT.INFO '(SIZE CREATIONDATE AUTHOR)))
|
||||
(FB.DEFAULT.INFO '(SIZE CREATIONDATE AUTHOR))
|
||||
(FB.SEE.METHODS))
|
||||
(APPENDVARS (FONTVARS (FB.ICONFONT LITTLEFONT)
|
||||
(FB.BROWSERFONT DEFAULTFONT)
|
||||
(FB.PROMPTFONT LITTLEFONT)
|
||||
@@ -295,6 +297,8 @@ DOCOPY
|
||||
|
||||
(RPAQ? FB.DEFAULT.INFO '(SIZE CREATIONDATE AUTHOR))
|
||||
|
||||
(RPAQ? FB.SEE.METHODS )
|
||||
|
||||
(APPENDTOVAR FONTVARS (FB.ICONFONT LITTLEFONT)
|
||||
(FB.BROWSERFONT DEFAULTFONT)
|
||||
(FB.PROMPTFONT LITTLEFONT)
|
||||
@@ -1697,10 +1701,9 @@ Your deletions are thus ignored.")))
|
||||
ELSE (FB.FASTSEECOMMAND BROWSER KEY ITEM MENU)))))
|
||||
|
||||
(FB.EDITCOMMAND.ONEFILE
|
||||
(LAMBDA (BROWSER FILE OPTION ITEM MENU) (* \;
|
||||
"Edited 19-Sep-2021 18:07 by rmk:")
|
||||
(* \;
|
||||
"Edited 27-Feb-2021 20:07 by rmk:")
|
||||
(LAMBDA (BROWSER FILE OPTION ITEM MENU) (* \; "Edited 4-Nov-2023 23:55 by rmk")
|
||||
(* \; "Edited 19-Sep-2021 18:07 by rmk:")
|
||||
(* \; "Edited 27-Feb-2021 20:07 by rmk:")
|
||||
(* \; "Edited 1-Feb-88 19:00 by bvm:")
|
||||
|
||||
(* |;;| "Called when we know that FILE is a file, not a directory, and that TEDIT exists. If OPTION is READONLY, we don't want to edit, just view. .")
|
||||
@@ -1717,25 +1720,26 @@ Your deletions are thus ignored.")))
|
||||
(* |;;| "The particular item may be a subitem of the EDIT or SEE menu item, in which case we want to unshade that too. Seems a little bruteforce")
|
||||
|
||||
(CL:UNLESS (MEMBER ITEM (FETCH (MENU ITEMS) OF MENU))
|
||||
(FOR I IN (FETCH (MENU ITEMS) OF MENU)
|
||||
WHEN (MEMBER ITEM (CDR (SASSOC 'SUBITEMS I))) DO (SHADEITEM I MENU
|
||||
FB.ITEMUNSELECTEDSHADE)
|
||||
(PUTMENUPROP MENU 'ITEMSHADE
|
||||
(CONS I
|
||||
FB.ITEMUNSELECTEDSHADE
|
||||
))))
|
||||
(FOR I IN (FETCH (MENU ITEMS) OF MENU) WHEN (MEMBER ITEM (CDR (SASSOC 'SUBITEMS I)))
|
||||
DO (SHADEITEM I MENU FB.ITEMUNSELECTEDSHADE)
|
||||
(PUTMENUPROP MENU 'ITEMSHADE (CONS I FB.ITEMUNSELECTEDSHADE))))
|
||||
(CL:MULTIPLE-VALUE-BIND (IGNORE CONDITION)
|
||||
(IGNORE-ERRORS (SELECTQ OPTION
|
||||
(READONLY (TEDIT-SEE FILE))
|
||||
(READONLY (|for| SM |in| FB.SEE.METHODS
|
||||
|when| (APPLY* (CAR SM)
|
||||
FILE)
|
||||
|do| (RETURN (APPLY* (CADR SM)
|
||||
FILE))
|
||||
|finally| (RETURN (TEDIT-SEE FILE))))
|
||||
(LISP (* \;
|
||||
"Original code allowed OPTION=NIL in thie branch, but NIL should have been coerced to TEDIT above.")
|
||||
"Original code allowed OPTION=NIL in thie branch, but NIL should have been coerced to TEDIT above.")
|
||||
|
||||
(* |;;| "Asks to load prop and edits the coms, presumably with SEDIT. We really don't want to use a text editor on a source file.")
|
||||
|
||||
(IF (LISPSOURCEFILEP FILE)
|
||||
THEN (FB.EDITLISPFILE FILE BROWSER)
|
||||
ELSE (FB.PROMPTW.FORMAT BROWSER
|
||||
"Failed because not a Lisp source file")))
|
||||
"Failed because not a Lisp source file")))
|
||||
(PROGN
|
||||
(* |;;| "Might just be a call to TEDIT (if OPTION = TEDIT)")
|
||||
|
||||
@@ -4246,51 +4250,51 @@ then click Recompute"))))
|
||||
(ADDTOVAR LAMA FB.PROMPTW.FORMAT FB.PROMPTWPRINT)
|
||||
)
|
||||
(DECLARE\: DONTCOPY
|
||||
(FILEMAP (NIL (31814 54695 (FB 31824 . 32959) (FB.COPYBINARYCOMMAND 32961 . 33307) (FB.COPYTEXTCOMMAND
|
||||
33309 . 33651) (FILEBROWSER 33653 . 46759) (FB.TABLEBROWSER 46761 . 46978) (FB.SELECTEDFILES 46980 .
|
||||
47617) (FB.FETCHFILENAME 47619 . 48011) (FB.DIRECTORYP 48013 . 48407) (FB.PROMPTWPRINT 48409 . 49455)
|
||||
(FB.PROMPTW.FORMAT 49457 . 50194) (FB.PROMPTFORINPUT 50196 . 52448) (FB.YES-OR-NO-P 52450 . 53484) (
|
||||
FB.ALLOW.ABORT 53486 . 54340) (\\FB.HARDCOPY.TOFILE.EXTENSION 54342 . 54693)) (54719 55672 (FB.STARTUP
|
||||
54729 . 55244) (FB.MAKERIGIDWINDOW 55246 . 55670)) (55673 61156 (FB.PRINTFN 55683 . 60836) (FB.COPYFN
|
||||
60838 . 61154)) (61206 67546 (FB.MENU.WHENSELECTEDFN 61216 . 61574) (FB.COMMANDSELECTEDFN 61576 .
|
||||
63115) (FB.SUBITEMP 63117 . 63718) (FB.MAKE.BROWSER.BUSY 63720 . 64524) (FB.FINISH.COMMAND 64526 .
|
||||
66557) (FB.HANDLE.ABORT.BUTTON 66559 . 67544)) (67547 73063 (FB.DELETECOMMAND 67557 . 67838) (
|
||||
FB.DELVERCOMMAND 67840 . 71033) (FB.IS.NOT.SUBDIRECTORY.ITEM 71035 . 71216) (FB.DELVER.FILES 71218 .
|
||||
72307) (FB.DELETE.FILE 72309 . 73061)) (73064 74389 (FB.UNDELETECOMMAND 73074 . 73359) (
|
||||
FB.UNDELETEALLCOMMAND 73361 . 73640) (FB.UNDELETE.FILE 73642 . 74387)) (74390 98571 (FB.COPYCOMMAND
|
||||
74400 . 74669) (FB.RENAMECOMMAND 74671 . 74946) (FB.COPY/RENAME.COMMAND 74948 . 75871) (
|
||||
FB.COPY/RENAME.ONE 75873 . 78195) (FB.COPY/RENAME.MANY 78197 . 84417) (FB.MERGE.DIRECTORIES 84419 .
|
||||
84837) (FB.GREATEST.PREFIX 84839 . 86195) (FB.MAYBE.INSERT.FILE 86197 . 93637) (FB.GET.NEW.FILE.SPEC
|
||||
93639 . 97470) (FB.CANONICAL.DIRECTORY 97472 . 98569)) (98572 106356 (FB.HARDCOPYCOMMAND 98582 . 99712
|
||||
) (FB.HARDCOPY.TOFILE 99714 . 106354)) (106357 116556 (FB.EDITCOMMAND 106367 . 107234) (
|
||||
FB.EDITCOMMAND.ONEFILE 107236 . 110640) (FB.EDITLISPFILE 110642 . 111747) (FB.BROWSECOMMAND 111749 .
|
||||
116554)) (116557 128478 (FB.FASTSEECOMMAND 116567 . 120017) (FB.FASTSEE.ONEFILE 120019 . 123176) (
|
||||
FB.SEEFULLFN 123178 . 127309) (FB.SEEBUTTONFN 127311 . 128476)) (128479 130225 (FB.LOADCOMMAND 128489
|
||||
. 128996) (FB.COMPILECOMMAND 128998 . 129536) (FB.OPERATE.ON.FILES 129538 . 130223)) (130226 178411 (
|
||||
FB.UPDATECOMMAND 130236 . 130461) (FB.FIX-DIRECTORY-DATES 130463 . 131486) (FB.MAYBE.EXPUNGE 131488 .
|
||||
132549) (FB.UPDATEBROWSERITEMS 132551 . 145766) (FB.DATE 145768 . 146409) (FB.ADJUST.DATE.WIDTH 146411
|
||||
. 149379) (FB.SET.BROWSER.TITLE 149381 . 150383) (FB.MAYBE.WIDEN.NAMES 150385 . 152504) (
|
||||
FB.SET.DEFAULT.NAME.WIDTH 152506 . 153870) (FB.CREATE.FILEBUCKET 153872 . 161092) (
|
||||
FB.CHECK.NAME.LENGTH 161094 . 163515) (FB.ADD.FILEGROUP 163517 . 165044) (FB.INSERT.DIRECTORY 165046
|
||||
. 165284) (FB.MAKE.SUBDIRECTORY.ITEM 165286 . 166695) (FB.ADD.FILE 166697 . 167310) (FB.INSERT.FILE
|
||||
167312 . 170724) (FB.ANALYZE.PATTERN 170726 . 175990) (FB.CANONICALIZE.PATTERN 175992 . 177304) (
|
||||
FB.GETALLFILEINFO 177306 . 178409)) (178412 186571 (FB.SORT.VERSIONS 178422 . 181193) (
|
||||
FB.DECREASING.VERSION 181195 . 181864) (FB.INCREASING.VERSION 181866 . 182487) (
|
||||
FB.NAMES.DECREASING.VERSION 182489 . 183524) (FB.NAMES.INCREASING.VERSION 183526 . 184523) (
|
||||
FB.DECREASING.NUMERIC.ATTR 184525 . 185205) (FB.INCREASING.NUMERIC.ATTR 185207 . 185881) (
|
||||
FB.ALPHABETIC.ATTR 185883 . 186569)) (186572 196414 (FB.SORTCOMMAND 186582 . 193412) (
|
||||
FB.INSERT.SUBDIRECTORIES 193414 . 194211) (FB.GET.SORT.MENU 194213 . 196412)) (196415 212636 (
|
||||
FB.EXPUNGECOMMAND 196425 . 199010) (FB.NEWPATTERNCOMMAND 199012 . 199410) (FB.NEWINFOCOMMAND 199412 .
|
||||
202244) (FB.DEPTHCOMMAND 202246 . 204021) (FB.SHAPECOMMAND 204023 . 207365) (FB.REMOVE.FILE 207367 .
|
||||
209188) (FB.COUNT.FILE.CHANGE 209190 . 210635) (FB.SETNEWPATTERN 210637 . 211807) (FB.GET.NEWPATTERN
|
||||
211809 . 212393) (FB.OPTIONSCOMMAND 212395 . 212634)) (212671 213724 (FB.GETWINDOW 212681 . 213722)) (
|
||||
213725 214737 (FB.INFOMENU.SHADEINITIALSELECTIONS 213735 . 214382) (FB.INFO.ITEM.NAMED 214384 . 214735
|
||||
)) (214738 224270 (FB.MAKECOUNTERWINDOW 214748 . 216276) (FB.COUNTERW.REDISPLAYFN 216278 . 216865) (
|
||||
FB.UPDATE.COUNTERS 216867 . 218939) (FB.DISPLAY.COUNTERS 218941 . 224001) (FB.COUNTER.STRING 224003 .
|
||||
224268)) (224271 228980 (FB.MAKEHEADINGWINDOW 224281 . 225895) (FB.HEADINGW.REDISPLAYFN 225897 .
|
||||
226163) (FB.HEADINGW.RESHAPEFN 226165 . 226541) (FB.HEADINGW.DISPLAY 226543 . 228978)) (228981 233164
|
||||
(FB.ICONFN 228991 . 229338) (FB.INFOMENU.WHENSELECTEDFN 229340 . 230070) (FB.CLOSEFN 230072 . 231275)
|
||||
(FB.EXPUNGE?.MENU 231277 . 231689) (FB.AFTERCLOSEFN 231691 . 232052) (FB.CLOSE&EXPUNGE 232054 . 233162
|
||||
)) (233165 245223 (FB.HARDCOPY.DIRECTORY 233175 . 243532) (FB.HARDCOPY.PRINT.TITLE 243534 . 243860) (
|
||||
FB.HARDCOPY.MAXWIDTH 243862 . 245221)))))
|
||||
(FILEMAP (NIL (31928 54809 (FB 31938 . 33073) (FB.COPYBINARYCOMMAND 33075 . 33421) (FB.COPYTEXTCOMMAND
|
||||
33423 . 33765) (FILEBROWSER 33767 . 46873) (FB.TABLEBROWSER 46875 . 47092) (FB.SELECTEDFILES 47094 .
|
||||
47731) (FB.FETCHFILENAME 47733 . 48125) (FB.DIRECTORYP 48127 . 48521) (FB.PROMPTWPRINT 48523 . 49569)
|
||||
(FB.PROMPTW.FORMAT 49571 . 50308) (FB.PROMPTFORINPUT 50310 . 52562) (FB.YES-OR-NO-P 52564 . 53598) (
|
||||
FB.ALLOW.ABORT 53600 . 54454) (\\FB.HARDCOPY.TOFILE.EXTENSION 54456 . 54807)) (54833 55786 (FB.STARTUP
|
||||
54843 . 55358) (FB.MAKERIGIDWINDOW 55360 . 55784)) (55787 61270 (FB.PRINTFN 55797 . 60950) (FB.COPYFN
|
||||
60952 . 61268)) (61320 67660 (FB.MENU.WHENSELECTEDFN 61330 . 61688) (FB.COMMANDSELECTEDFN 61690 .
|
||||
63229) (FB.SUBITEMP 63231 . 63832) (FB.MAKE.BROWSER.BUSY 63834 . 64638) (FB.FINISH.COMMAND 64640 .
|
||||
66671) (FB.HANDLE.ABORT.BUTTON 66673 . 67658)) (67661 73177 (FB.DELETECOMMAND 67671 . 67952) (
|
||||
FB.DELVERCOMMAND 67954 . 71147) (FB.IS.NOT.SUBDIRECTORY.ITEM 71149 . 71330) (FB.DELVER.FILES 71332 .
|
||||
72421) (FB.DELETE.FILE 72423 . 73175)) (73178 74503 (FB.UNDELETECOMMAND 73188 . 73473) (
|
||||
FB.UNDELETEALLCOMMAND 73475 . 73754) (FB.UNDELETE.FILE 73756 . 74501)) (74504 98685 (FB.COPYCOMMAND
|
||||
74514 . 74783) (FB.RENAMECOMMAND 74785 . 75060) (FB.COPY/RENAME.COMMAND 75062 . 75985) (
|
||||
FB.COPY/RENAME.ONE 75987 . 78309) (FB.COPY/RENAME.MANY 78311 . 84531) (FB.MERGE.DIRECTORIES 84533 .
|
||||
84951) (FB.GREATEST.PREFIX 84953 . 86309) (FB.MAYBE.INSERT.FILE 86311 . 93751) (FB.GET.NEW.FILE.SPEC
|
||||
93753 . 97584) (FB.CANONICAL.DIRECTORY 97586 . 98683)) (98686 106470 (FB.HARDCOPYCOMMAND 98696 . 99826
|
||||
) (FB.HARDCOPY.TOFILE 99828 . 106468)) (106471 116680 (FB.EDITCOMMAND 106481 . 107348) (
|
||||
FB.EDITCOMMAND.ONEFILE 107350 . 110764) (FB.EDITLISPFILE 110766 . 111871) (FB.BROWSECOMMAND 111873 .
|
||||
116678)) (116681 128602 (FB.FASTSEECOMMAND 116691 . 120141) (FB.FASTSEE.ONEFILE 120143 . 123300) (
|
||||
FB.SEEFULLFN 123302 . 127433) (FB.SEEBUTTONFN 127435 . 128600)) (128603 130349 (FB.LOADCOMMAND 128613
|
||||
. 129120) (FB.COMPILECOMMAND 129122 . 129660) (FB.OPERATE.ON.FILES 129662 . 130347)) (130350 178535 (
|
||||
FB.UPDATECOMMAND 130360 . 130585) (FB.FIX-DIRECTORY-DATES 130587 . 131610) (FB.MAYBE.EXPUNGE 131612 .
|
||||
132673) (FB.UPDATEBROWSERITEMS 132675 . 145890) (FB.DATE 145892 . 146533) (FB.ADJUST.DATE.WIDTH 146535
|
||||
. 149503) (FB.SET.BROWSER.TITLE 149505 . 150507) (FB.MAYBE.WIDEN.NAMES 150509 . 152628) (
|
||||
FB.SET.DEFAULT.NAME.WIDTH 152630 . 153994) (FB.CREATE.FILEBUCKET 153996 . 161216) (
|
||||
FB.CHECK.NAME.LENGTH 161218 . 163639) (FB.ADD.FILEGROUP 163641 . 165168) (FB.INSERT.DIRECTORY 165170
|
||||
. 165408) (FB.MAKE.SUBDIRECTORY.ITEM 165410 . 166819) (FB.ADD.FILE 166821 . 167434) (FB.INSERT.FILE
|
||||
167436 . 170848) (FB.ANALYZE.PATTERN 170850 . 176114) (FB.CANONICALIZE.PATTERN 176116 . 177428) (
|
||||
FB.GETALLFILEINFO 177430 . 178533)) (178536 186695 (FB.SORT.VERSIONS 178546 . 181317) (
|
||||
FB.DECREASING.VERSION 181319 . 181988) (FB.INCREASING.VERSION 181990 . 182611) (
|
||||
FB.NAMES.DECREASING.VERSION 182613 . 183648) (FB.NAMES.INCREASING.VERSION 183650 . 184647) (
|
||||
FB.DECREASING.NUMERIC.ATTR 184649 . 185329) (FB.INCREASING.NUMERIC.ATTR 185331 . 186005) (
|
||||
FB.ALPHABETIC.ATTR 186007 . 186693)) (186696 196538 (FB.SORTCOMMAND 186706 . 193536) (
|
||||
FB.INSERT.SUBDIRECTORIES 193538 . 194335) (FB.GET.SORT.MENU 194337 . 196536)) (196539 212760 (
|
||||
FB.EXPUNGECOMMAND 196549 . 199134) (FB.NEWPATTERNCOMMAND 199136 . 199534) (FB.NEWINFOCOMMAND 199536 .
|
||||
202368) (FB.DEPTHCOMMAND 202370 . 204145) (FB.SHAPECOMMAND 204147 . 207489) (FB.REMOVE.FILE 207491 .
|
||||
209312) (FB.COUNT.FILE.CHANGE 209314 . 210759) (FB.SETNEWPATTERN 210761 . 211931) (FB.GET.NEWPATTERN
|
||||
211933 . 212517) (FB.OPTIONSCOMMAND 212519 . 212758)) (212795 213848 (FB.GETWINDOW 212805 . 213846)) (
|
||||
213849 214861 (FB.INFOMENU.SHADEINITIALSELECTIONS 213859 . 214506) (FB.INFO.ITEM.NAMED 214508 . 214859
|
||||
)) (214862 224394 (FB.MAKECOUNTERWINDOW 214872 . 216400) (FB.COUNTERW.REDISPLAYFN 216402 . 216989) (
|
||||
FB.UPDATE.COUNTERS 216991 . 219063) (FB.DISPLAY.COUNTERS 219065 . 224125) (FB.COUNTER.STRING 224127 .
|
||||
224392)) (224395 229104 (FB.MAKEHEADINGWINDOW 224405 . 226019) (FB.HEADINGW.REDISPLAYFN 226021 .
|
||||
226287) (FB.HEADINGW.RESHAPEFN 226289 . 226665) (FB.HEADINGW.DISPLAY 226667 . 229102)) (229105 233288
|
||||
(FB.ICONFN 229115 . 229462) (FB.INFOMENU.WHENSELECTEDFN 229464 . 230194) (FB.CLOSEFN 230196 . 231399)
|
||||
(FB.EXPUNGE?.MENU 231401 . 231813) (FB.AFTERCLOSEFN 231815 . 232176) (FB.CLOSE&EXPUNGE 232178 . 233286
|
||||
)) (233289 245347 (FB.HARDCOPY.DIRECTORY 233299 . 243656) (FB.HARDCOPY.PRINT.TITLE 243658 . 243984) (
|
||||
FB.HARDCOPY.MAXWIDTH 243986 . 245345)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
40
library/FX-80Driver.tedit
Normal file
40
library/FX-80Driver.tedit
Normal file
File diff suppressed because one or more lines are too long
@@ -1,16 +1,13 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "25-Jul-2022 15:09:26" {DSK}<Users>kaplan>Local>medley3.5>working-medley>library>HRULE.;4 23801
|
||||
(FILECREATED "26-Nov-2023 09:46:44" {WMEDLEY}<library>HRULE.;5 23918
|
||||
|
||||
:CHANGES-TO (VARS HRULECOMS)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:PREVIOUS-DATE "25-Jul-2022 15:07:00"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>working-medley>library>HRULE.;3)
|
||||
:CHANGES-TO (FNS HRULE.CREATE VRULE.CREATE CROPMARK.CREATE)
|
||||
|
||||
:PREVIOUS-DATE "25-Jul-2022 15:09:26" {WMEDLEY}<library>HRULE.;4)
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1985, 1990-1992 by Venue & Xerox Corporation.
|
||||
")
|
||||
|
||||
(PRETTYCOMPRINT HRULECOMS)
|
||||
|
||||
@@ -90,30 +87,27 @@ Copyright (c) 1985, 1990-1992 by Venue & Xerox Corporation.
|
||||
(DEFINEQ
|
||||
|
||||
(HRULE.CREATE
|
||||
[LAMBDA (WIDTH) (* jds "11-Sep-85 16:36")
|
||||
[LAMBDA (WIDTH) (* ; "Edited 26-Nov-2023 09:45 by rmk")
|
||||
(* jds "11-Sep-85 16:36")
|
||||
|
||||
(* * Create a Horizontal-Rule image object.
|
||||
WIDTH may be NIL to default, a number, for a single rule with its width in
|
||||
points (and fractions thereof)%, or a list of alternating black and white
|
||||
widths. E.g., to get a hairline over 1pt white over 3pt rule, specify
|
||||
(0.5 1 3))
|
||||
(* ;;; "Create a Horizontal-Rule image object. WIDTH may be NIL to default, a number, for a single rule with its width in points (and fractions thereof), or a list of alternating black and white widths. E.g., to get a hairline over 1pt white over 3pt rule, specify (0.5 1 3)")
|
||||
|
||||
(PROG ((HRULE (IMAGEOBJCREATE NIL HRULE.IMAGEFNS)))
|
||||
(COND
|
||||
((NOT WIDTH) (* USe the default width)
|
||||
((NOT WIDTH) (* ; "USe the default width")
|
||||
(IMAGEOBJPROP HRULE 'RULE.WIDTH HRULE.DEFAULT.WIDTH)
|
||||
(RETURN HRULE))
|
||||
((NUMBERP WIDTH)
|
||||
(IMAGEOBJPROP HRULE 'RULE.WIDTH WIDTH)
|
||||
(RETURN HRULE))
|
||||
((AND (LISTP WIDTH)
|
||||
(EVERY WIDTH (FUNCTION NUMBERP))) (* It's a list of numbers.
|
||||
Add (QUOTE em) up)
|
||||
(EVERY WIDTH (FUNCTION NUMBERP))) (* ;
|
||||
"It's a list of numbers. Add (QUOTE em) up")
|
||||
(IMAGEOBJPROP HRULE 'RULE.WIDTH WIDTH)
|
||||
(RETURN HRULE))
|
||||
(T (* Something was specified, and
|
||||
there was a non-number in it...)
|
||||
(TEDIT.PROMPTPRINT TEXTOBJ (CONCAT "Non-numeric widths not desirable: " WIDTH)
|
||||
(T (* ;
|
||||
"Something was specified, and there was a non-number in it...")
|
||||
(TEDIT.PROMPTPRINT TEXTOBJ (CONCAT "HRULE with non-numeric width: " WIDTH)
|
||||
T])
|
||||
|
||||
(HRULE.DISPLAYFN
|
||||
@@ -233,8 +227,9 @@ Copyright (c) 1985, 1990-1992 by Venue & Xerox Corporation.
|
||||
(DEFINEQ
|
||||
|
||||
(VRULE.CREATE
|
||||
[LAMBDA (WIDTH HEIGHT DASHING) (* ;
|
||||
"Edited 8-Oct-92 16:46 by sybalsky:mv:envos")
|
||||
[LAMBDA (WIDTH HEIGHT DASHING) (* ; "Edited 26-Nov-2023 09:45 by rmk")
|
||||
(* ;
|
||||
"Edited 8-Oct-92 16:46 by sybalsky:mv:envos")
|
||||
|
||||
(* ;; "Create a Vertical-Rule image object. HEIGHT may be NIL to default, a number, for a single rule with its width in points (and fractions thereof), or a list of alternating black and white widths. E.g., to get a hairline over 1pt white over 3pt rule, specify (0.5 1 3)")
|
||||
|
||||
@@ -246,7 +241,7 @@ Copyright (c) 1985, 1990-1992 by Venue & Xerox Corporation.
|
||||
(IMAGEOBJPROP VRULE 'RULE.WIDTH WIDTH))
|
||||
((AND (LISTP WIDTH)
|
||||
(EVERY WIDTH (FUNCTION NUMBERP))) (* ;
|
||||
"It's a list of numbers. Add 'em up")
|
||||
"It's a list of numbers. Add 'em up")
|
||||
(IMAGEOBJPROP VRULE 'RULE.WIDTH WIDTH)))
|
||||
(COND
|
||||
((NOT HEIGHT) (* ; "Use the default width")
|
||||
@@ -257,12 +252,12 @@ Copyright (c) 1985, 1990-1992 by Venue & Xerox Corporation.
|
||||
(RETURN VRULE))
|
||||
((AND (LISTP HEIGHT)
|
||||
(EVERY HEIGHT (FUNCTION NUMBERP))) (* ;
|
||||
"It's a list of numbers. Add 'em up")
|
||||
"It's a list of numbers. Add 'em up")
|
||||
(IMAGEOBJPROP VRULE 'RULE.HEIGHT HEIGHT)
|
||||
(RETURN VRULE))
|
||||
(T (* ;
|
||||
"Something was specified, and there was a non-number in it...")
|
||||
(TEDIT.PROMPTPRINT TEXTOBJ (CONCAT "Non-numeric widths not desirable: " HEIGHT)
|
||||
"Something was specified, and there was a non-number in it...")
|
||||
(TEDIT.PROMPTPRINT TEXTOBJ (CONCAT "VRULE with non-numeric height: " HEIGHT)
|
||||
T)))
|
||||
(IMAGEOBJPROP VRULE 'RULE.DASHING DASHING])
|
||||
|
||||
@@ -392,7 +387,8 @@ Copyright (c) 1985, 1990-1992 by Venue & Xerox Corporation.
|
||||
(DEFINEQ
|
||||
|
||||
(CROPMARK.CREATE
|
||||
[LAMBDA (WIDTH HEIGHT) (* ; "Edited 5-Jun-91 14:56 by jds")
|
||||
[LAMBDA (WIDTH HEIGHT) (* ; "Edited 26-Nov-2023 09:46 by rmk")
|
||||
(* ; "Edited 5-Jun-91 14:56 by jds")
|
||||
|
||||
(* ;; "Create a CROPMARK, that prints crop-marks for a page that is WIDTH points wide and HEIGHT points high.")
|
||||
|
||||
@@ -406,12 +402,12 @@ Copyright (c) 1985, 1990-1992 by Venue & Xerox Corporation.
|
||||
(RETURN CROPMARK))
|
||||
((AND (LISTP HEIGHT)
|
||||
(EVERY HEIGHT (FUNCTION NUMBERP))) (* ;
|
||||
"It's a list of numbers. Add 'em up")
|
||||
"It's a list of numbers. Add 'em up")
|
||||
(IMAGEOBJPROP CROPMARK 'PAGE.SIZE (LIST WIDTH HEIGHT))
|
||||
(RETURN CROPMARK))
|
||||
(T (* ;
|
||||
"Something was specified, and there was a non-number in it...")
|
||||
(TEDIT.PROMPTPRINT TEXTOBJ (CONCAT "Non-numeric widths not desirable: " HEIGHT)
|
||||
"Something was specified, and there was a non-number in it...")
|
||||
(TEDIT.PROMPTPRINT TEXTOBJ (CONCAT "CROPMARK with non-numeric height: " HEIGHT)
|
||||
T])
|
||||
|
||||
(CROPMARK.DISPLAYFN
|
||||
@@ -508,14 +504,13 @@ Copyright (c) 1985, 1990-1992 by Venue & Xerox Corporation.
|
||||
(FUNCTION NILL)
|
||||
(FUNCTION CROPMARK.WHENOPERATEDONFN)
|
||||
(FUNCTION NILL)))
|
||||
(PUTPROPS HRULE COPYRIGHT ("Venue & Xerox Corporation" 1985 1990 1991 1992))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (4512 10691 (HRULE.CREATE 4522 . 5944) (HRULE.DISPLAYFN 5946 . 8515) (HRULE.GETFN 8517
|
||||
. 8837) (HRULE.IMAGEBOXFN 8839 . 9641) (HRULE.PUTFN 9643 . 10021) (HRULE.COPYFN 10023 . 10487) (
|
||||
HRULE.WHENOPERATEDONFN 10489 . 10689)) (11583 17788 (VRULE.CREATE 11593 . 13592) (VRULE.DISPLAYFN
|
||||
13594 . 15788) (VRULE.GETFN 15790 . 16011) (VRULE.GETFN2 16013 . 16349) (VRULE.IMAGEBOXFN 16351 .
|
||||
16779) (VRULE.PUTFN 16781 . 17179) (VRULE.COPYFN 17181 . 17584) (VRULE.WHENOPERATEDONFN 17586 . 17786)
|
||||
) (18427 23077 (CROPMARK.CREATE 18437 . 19704) (CROPMARK.DISPLAYFN 19706 . 21206) (CROPMARK.GETFN
|
||||
21208 . 21502) (CROPMARK.IMAGEBOXFN 21504 . 22205) (CROPMARK.PUTFN 22207 . 22485) (CROPMARK.COPYFN
|
||||
22487 . 22870) (CROPMARK.WHENOPERATEDONFN 22872 . 23075)))))
|
||||
(FILEMAP (NIL (4411 10637 (HRULE.CREATE 4421 . 5890) (HRULE.DISPLAYFN 5892 . 8461) (HRULE.GETFN 8463
|
||||
. 8783) (HRULE.IMAGEBOXFN 8785 . 9587) (HRULE.PUTFN 9589 . 9967) (HRULE.COPYFN 9969 . 10433) (
|
||||
HRULE.WHENOPERATEDONFN 10435 . 10635)) (11529 17865 (VRULE.CREATE 11539 . 13669) (VRULE.DISPLAYFN
|
||||
13671 . 15865) (VRULE.GETFN 15867 . 16088) (VRULE.GETFN2 16090 . 16426) (VRULE.IMAGEBOXFN 16428 .
|
||||
16856) (VRULE.PUTFN 16858 . 17256) (VRULE.COPYFN 17258 . 17661) (VRULE.WHENOPERATEDONFN 17663 . 17863)
|
||||
) (18504 23271 (CROPMARK.CREATE 18514 . 19898) (CROPMARK.DISPLAYFN 19900 . 21400) (CROPMARK.GETFN
|
||||
21402 . 21696) (CROPMARK.IMAGEBOXFN 21698 . 22399) (CROPMARK.PUTFN 22401 . 22679) (CROPMARK.COPYFN
|
||||
22681 . 23064) (CROPMARK.WHENOPERATEDONFN 23066 . 23269)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
BIN
library/HRule.tedit
Normal file
BIN
library/HRule.tedit
Normal file
Binary file not shown.
Binary file not shown.
BIN
library/Kermit.tedit
Normal file
BIN
library/Kermit.tedit
Normal file
Binary file not shown.
BIN
library/KeyboardEditor.tedit
Normal file
BIN
library/KeyboardEditor.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.
45
library/Match.tedit
Normal file
45
library/Match.tedit
Normal file
File diff suppressed because one or more lines are too long
BIN
library/MiniServe.tedit
Normal file
BIN
library/MiniServe.tedit
Normal file
Binary file not shown.
BIN
library/NSMaintain.tedit
Normal file
BIN
library/NSMaintain.tedit
Normal file
Binary file not shown.
287
library/PDFSTREAM
Normal file
287
library/PDFSTREAM
Normal file
@@ -0,0 +1,287 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "11-Nov-2023 11:24:42" {WMEDLEY}<library>PDFSTREAM.;56 14033
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS PDFSTREAMCOMS)
|
||||
|
||||
:PREVIOUS-DATE " 9-Oct-2023 00:42:25" {WMEDLEY}<library>PDFSTREAM.;55)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT PDFSTREAMCOMS)
|
||||
|
||||
(RPAQQ PDFSTREAMCOMS
|
||||
((FILES (SYSLOAD)
|
||||
POSTSCRIPTSTREAM)
|
||||
[COMS (* ; "Hook into hardcopy interface")
|
||||
[ADDVARS [PRINTERTYPES ((PDF)
|
||||
(CANPRINT (PDF))
|
||||
(STATUS TRUE)
|
||||
(PROPERTIES NILL)
|
||||
(SEND POSTSCRIPTSEND)
|
||||
(BITMAPSCALE POSTSCRIPT.BITMAPSCALE)
|
||||
(BITMAPFILE (PDF.HARDCOPYW FILE BITMAP SCALEFACTOR REGION
|
||||
ROTATION TITLE]
|
||||
[PRINTFILETYPES (PDF (TEST PDFFILEP)
|
||||
(EXTENSION (PDF))
|
||||
(CONVERSION (TEXT PDF.TEXT TEDIT PDF.TEDIT]
|
||||
(IMAGESTREAMTYPES (PDF (OPENSTREAM OPEN-PDF-STREAM)
|
||||
(FONTCREATE POSTSCRIPT.FONTCREATE)
|
||||
(FONTSAVAILABLE POSTSCRIPT.FONTSAVAILABLE)
|
||||
(CREATECHARSET \CREATECHARSET.PSC]
|
||||
(VARS (DEFAULTPRINTERTYPE 'PDF))
|
||||
(FNS PDFFILEP PDF.HARDCOPYW PDF.TEXT PDF.TEDIT)
|
||||
(P (FONTPROFILE.ADDDEVICE 'PDF 'POSTSCRIPT]
|
||||
|
||||
(* ;; "")
|
||||
|
||||
|
||||
(* ;; "Implementation of PDF streams")
|
||||
|
||||
(INITVARS (PDFCONVERTER NIL))
|
||||
(* ; "Mac with ghostscript?")
|
||||
(ALISTS (PDF-CONVERTER-TEMPLATES ps2pdf pstopdf))
|
||||
(GLOBALVARS PDFCONVERTER PDF-CONVERTER-TEMPLATES)
|
||||
(FNS OPEN-PDF-STREAM CLOSE-PDF-STREAM PS-TO-PDF)
|
||||
(FNS SEE-PDF)
|
||||
(ADDVARS (FB.SEE.METHODS (PDFFILEP SEE-PDF)))
|
||||
(FNS PDFCONVERTER)))
|
||||
|
||||
(FILESLOAD (SYSLOAD)
|
||||
POSTSCRIPTSTREAM)
|
||||
|
||||
|
||||
|
||||
(* ; "Hook into hardcopy interface")
|
||||
|
||||
|
||||
(ADDTOVAR PRINTERTYPES ((PDF)
|
||||
(CANPRINT (PDF))
|
||||
(STATUS TRUE)
|
||||
(PROPERTIES NILL)
|
||||
(SEND POSTSCRIPTSEND)
|
||||
(BITMAPSCALE POSTSCRIPT.BITMAPSCALE)
|
||||
(BITMAPFILE (PDF.HARDCOPYW FILE BITMAP SCALEFACTOR REGION ROTATION TITLE))))
|
||||
|
||||
(ADDTOVAR PRINTFILETYPES (PDF (TEST PDFFILEP)
|
||||
(EXTENSION (PDF))
|
||||
(CONVERSION (TEXT PDF.TEXT TEDIT PDF.TEDIT))))
|
||||
|
||||
(ADDTOVAR IMAGESTREAMTYPES (PDF (OPENSTREAM OPEN-PDF-STREAM)
|
||||
(FONTCREATE POSTSCRIPT.FONTCREATE)
|
||||
(FONTSAVAILABLE POSTSCRIPT.FONTSAVAILABLE)
|
||||
(CREATECHARSET \CREATECHARSET.PSC)))
|
||||
|
||||
(RPAQQ DEFAULTPRINTERTYPE PDF)
|
||||
(DEFINEQ
|
||||
|
||||
(PDFFILEP
|
||||
[LAMBDA (FILE) (* ; "Edited 23-Jun-2023 14:43 by rmk")
|
||||
(* ; "Edited 5-Mar-93 21:40 by rmk:")
|
||||
(* ; "Edited 14-Jan-93 10:56 by jds")
|
||||
(OR (CL:MEMBER (UNPACKFILENAME.STRING FILE 'EXTENSION)
|
||||
'("PDF")
|
||||
:TEST
|
||||
(FUNCTION STRING-EQUAL))
|
||||
(CL:WHEN (STREAMP FILE)
|
||||
(SETFILEPTR FILE 0)
|
||||
(PROG1 (AND (EQ (BIN FILE)
|
||||
(CHARCODE %%))
|
||||
(EQ (BIN FILE)
|
||||
(CHARCODE P))
|
||||
(EQ (BIN FILE)
|
||||
(CHARCODE D))
|
||||
(EQ (BIN FILE)
|
||||
(CHARCODE F)))
|
||||
(SETFILEPTR FILE 0)))])
|
||||
|
||||
(PDF.HARDCOPYW
|
||||
[LAMBDA (PDFFILE BITMAP SCALEFACTOR REGION Landscape? TITLE)
|
||||
(* ; "Edited 24-Jul-2023 10:37 by rmk")
|
||||
(* ; "Edited 23-Jun-2023 13:28 by rmk")
|
||||
(* ; "Edited 6-Mar-2023 22:43 by rmk")
|
||||
(LET ((PSTTMP (PACKFILENAME 'EXTENSION 'TMPPS 'BODY PDFFILE)))
|
||||
(PS-TO-PDF (POSTSCRIPT.HARDCOPYW PSTTMP BITMAP SCALEFACTOR REGION Landscape? TITLE)
|
||||
PDFFILE])
|
||||
|
||||
(PDF.TEXT
|
||||
[LAMBDA (FILE PDFFILE FONTS HEADING TABS) (* ; "Edited 1-Oct-2023 15:24 by rmk")
|
||||
(* ; "Edited 23-Jun-2023 13:23 by rmk")
|
||||
(* ; "Edited 7-Mar-2023 08:39 by rmk")
|
||||
(TEXTTOIMAGEFILE FILE PDFFILE 'PDF FONTS HEADING TABS `(REGION ,POSTSCRIPT.DEFAULT.PAGEREGION
|
||||
ROTATION ,(NOT (NOT
|
||||
POSTSCRIPT.TEXTFILE.LANDSCAPE
|
||||
])
|
||||
|
||||
(PDF.TEDIT
|
||||
[LAMBDA (FILE PDFFILE) (* ; "Edited 23-Jun-2023 13:22 by rmk")
|
||||
(* ; "Edited 7-Mar-2023 08:39 by rmk")
|
||||
(LET ((TSTREAM (OPENTEXTSTREAM FILE)))
|
||||
(TEDIT.FORMAT.HARDCOPY FILE PDFFILE T NIL NIL NIL 'PDF)
|
||||
(CLOSEF TSTREAM])
|
||||
)
|
||||
|
||||
(FONTPROFILE.ADDDEVICE 'PDF 'POSTSCRIPT)
|
||||
|
||||
|
||||
|
||||
(* ;; "")
|
||||
|
||||
|
||||
|
||||
|
||||
(* ;; "Implementation of PDF streams")
|
||||
|
||||
|
||||
(RPAQ? PDFCONVERTER NIL)
|
||||
|
||||
|
||||
|
||||
(* ; "Mac with ghostscript?")
|
||||
|
||||
|
||||
(ADDTOVAR PDF-CONVERTER-TEMPLATES (ps2pdf " " PSFILE " " PDFFILE " 2> " ERRORFILE)
|
||||
(pstopdf " " PSFILE " -o " PDFFILE " 2> " ERRORFILE))
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS PDFCONVERTER PDF-CONVERTER-TEMPLATES)
|
||||
)
|
||||
(DEFINEQ
|
||||
|
||||
(OPEN-PDF-STREAM
|
||||
[LAMBDA (FILE OPTIONS) (* ; "Edited 23-Sep-2023 15:38 by rmk")
|
||||
(* ; "Edited 22-Sep-2023 11:04 by rmk")
|
||||
(* ; "Edited 24-Jun-2023 14:49 by rmk")
|
||||
|
||||
(* ;; "Open a temporary PS file, but set it up so that at closing it gets converted to PDF using an operating-system utility (if available), and then gets renamed to the original intended filename.")
|
||||
|
||||
(* ;; "We have to stash the original filename someplace. We could put it in the tmp filename and then parse it out, but then we would have to worry about how unix filenames might parse against our {, }, etc. ")
|
||||
|
||||
(* ;;
|
||||
"Simplest thing for now is to just add an extra field at the end of the \POSTSCRIPTDATA record.")
|
||||
|
||||
(* ;; "")
|
||||
|
||||
(if [AND NIL (EQ 'LPT (FILENAMEFIELD FILE 'HOST]
|
||||
then
|
||||
(* ;; "If FILE is on the LPT device, we could just ssume that it can be printed directly, no point in converting. But then we would alo have to lie and give it a PDF extension so it thinks that we are heading to a PDF printer.")
|
||||
|
||||
(OPENPOSTSCRIPTSTREAM FILE OPTIONS)
|
||||
else (CL:UNLESS (ASSOC (PDFCONVERTER)
|
||||
PDF-CONVERTER-TEMPLATES)
|
||||
(ERROR "A specified POSTSCRIPT-to-PDF converter cannot be found"))
|
||||
(SETQ FILE (OR (AND (NEQ FILE T)
|
||||
(OUTFILEP FILE))
|
||||
(ERROR "PDF target file not found" FILE)))
|
||||
(LET ((PSSTREAM (OPENPOSTSCRIPTSTREAM (CONCAT "{UNIX}/tmp/medley-pdf-" (IDATE)
|
||||
"-"
|
||||
(RAND)
|
||||
".ps")
|
||||
OPTIONS)))
|
||||
(STREAMPROP PSSTREAM 'AFTERCLOSE (CONS (FUNCTION CLOSE-PDF-STREAM)))
|
||||
(STREAMPROP PSSTREAM 'PDFTARGETINFO FILE)
|
||||
PSSTREAM])
|
||||
|
||||
(CLOSE-PDF-STREAM
|
||||
[LAMBDA (PSSTREAM) (* ; "Edited 22-Sep-2023 11:18 by rmk")
|
||||
(* ; "Edited 24-Jul-2023 10:37 by rmk")
|
||||
(* ; "Edited 17-Jul-2023 22:32 by rmk")
|
||||
(* ; "Edited 24-Jun-2023 13:57 by rmk")
|
||||
|
||||
(* ;; "PSSTREAM is a postscript (maybe in tmp) rendition of what is intended to end up as a pdf. If we are going directly to a printer, we can probably just pass it along without worrying about conversion. In fact, in that case we probably should not have bothered even setting up the PDF stream.")
|
||||
|
||||
(* ;; "But for a file we execute the PDFCONVERTER as a shell command to make a pdf, and then we rename it to the intended filename")
|
||||
|
||||
(STREAMPROP PSSTREAM 'AFTERCLOSE NIL) (* ;
|
||||
"Maybe just remove only CLOSE-PDF-STREAMfrom the list?")
|
||||
(LET ((TARGETINFO (STREAMPROP PSSTREAM 'PDFTARGETINFO NIL)))
|
||||
(CL:IF TARGETINFO
|
||||
(RENAMEFILE (PS-TO-PDF PSSTREAM)
|
||||
TARGETINFO)
|
||||
PSSTREAM)])
|
||||
|
||||
(PS-TO-PDF
|
||||
[LAMBDA (PSFILE PDFFILE DONTDELETE) (* ; "Edited 1-Oct-2023 15:18 by rmk")
|
||||
(* ; "Edited 23-Sep-2023 22:54 by rmk")
|
||||
(* ; "Edited 23-Jul-2023 22:30 by rmk")
|
||||
(* ; "Edited 24-Jun-2023 15:01 by rmk")
|
||||
(* ; "Edited 16-Jul-2022 13:06 by rmk")
|
||||
(* ; "Edited 8-Jul-2022 10:20 by rmk")
|
||||
(* ; "Edited 7-May-2022 22:40 by rmk")
|
||||
(* ; "Edited 7-Oct-2021 11:15 by rmk:")
|
||||
|
||||
(* ;; "PSFILE is the name of a closed PS file on a DSK/UNIX device. This function uses the PDFCONVERTER utility to convert that to a parallel pdf file, which is then renamed to PDFFILE. ")
|
||||
|
||||
(* ;; "DONTDELETE is just for debugging, keeps the /tmp/ files")
|
||||
|
||||
(SETQ PSFILE (FULLNAME (TRUEFILENAME PSFILE)))
|
||||
(CL:UNLESS (INFILEP PSFILE)
|
||||
(ERROR "NO PS FILE TO CONVERT"))
|
||||
(CL:UNLESS (ASSOC (PDFCONVERTER)
|
||||
PDF-CONVERTER-TEMPLATES)
|
||||
(ERROR "A specified POSTSCRIPT-to-PDF converter cannot be found"))
|
||||
(SETQ PDFFILE (if PDFFILE
|
||||
then (TRUEFILENAME PDFFILE)
|
||||
else (PACKFILENAME 'EXTENSION 'pdf 'BODY PSFILE)))
|
||||
(LET ((ERRORFILE (PACKFILENAME 'EXTENSION 'error 'BODY PSFILE))
|
||||
COMPLETIONCODE)
|
||||
|
||||
(* ;; "PROCESS-COMMAND is currently from GITFNS. Not sure whether ShellCommand in UNIXUTILS is appropriate.")
|
||||
|
||||
(* ;;
|
||||
"We have to map the filenames down to Unix conventions: (not pseudohost or host, slashes, etc.")
|
||||
|
||||
[SETQ COMPLETIONCODE (PROCESS-COMMAND (CONCATLIST (SUBLIS
|
||||
`((PSFILE \, (SLASHIT (TRUEFILENAME
|
||||
PSFILE)
|
||||
NIL T))
|
||||
(PDFFILE \, (SLASHIT (TRUEFILENAME
|
||||
PDFFILE)
|
||||
NIL T))
|
||||
(ERRORFILE \, (SLASHIT (TRUEFILENAME
|
||||
ERRORFILE)
|
||||
NIL T)))
|
||||
(ASSOC (PDFCONVERTER)
|
||||
PDF-CONVERTER-TEMPLATES]
|
||||
|
||||
(* ;; "Now use Medley names")
|
||||
|
||||
(CLOSEF? PSFILE)
|
||||
(CL:UNLESS DONTDELETE (DELFILE PSFILE))
|
||||
(CLOSEF? ERRORFILE)
|
||||
(CL:WHEN (INFILEP ERRORFILE)
|
||||
(CL:WHEN (IGREATERP (PROG1 (GETFILEINFO ERRORFILE 'LENGTH)
|
||||
(CL:UNLESS DONTDELETE (DELFILE ERRORFILE)))
|
||||
0)
|
||||
(ERROR "Cannot create PDF file for " PDFFILE)))
|
||||
(CL:WHEN (IGREATERP COMPLETIONCODE 0)
|
||||
(ERROR "Cannot create PDF file for " PDFFILE))
|
||||
PDFFILE])
|
||||
)
|
||||
(DEFINEQ
|
||||
|
||||
(SEE-PDF
|
||||
[LAMBDA (PDFFILE) (* ; "Edited 1-Oct-2023 20:47 by rmk")
|
||||
(* ; "Edited 26-Sep-2023 16:52 by rmk")
|
||||
|
||||
(* ;; "Use the ShellOpener for this machine to open the PDF file outside of Medley")
|
||||
|
||||
(ShellOpen (PACKFILENAME 'BODY PDFFILE 'EXTENSION 'PDF])
|
||||
)
|
||||
|
||||
(ADDTOVAR FB.SEE.METHODS (PDFFILEP SEE-PDF))
|
||||
(DEFINEQ
|
||||
|
||||
(PDFCONVERTER
|
||||
[LAMBDA NIL
|
||||
(SETQ PDFCONVERTER (OR PDFCONVERTER (MKATOM (UNIX-GETENV "MEDLEY-PDFCONVERTER"))
|
||||
(CAR (for TEMPLATE in PDF-CONVERTER-TEMPLATES
|
||||
thereis (ShellWhich (CAR TEMPLATE])
|
||||
)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (3162 5776 (PDFFILEP 3172 . 4086) (PDF.HARDCOPYW 4088 . 4686) (PDF.TEXT 4688 . 5405) (
|
||||
PDF.TEDIT 5407 . 5774)) (6216 13276 (OPEN-PDF-STREAM 6226 . 8362) (CLOSE-PDF-STREAM 8364 . 9651) (
|
||||
PS-TO-PDF 9653 . 13274)) (13277 13675 (SEE-PDF 13287 . 13673)) (13726 14010 (PDFCONVERTER 13736 .
|
||||
14008)))))
|
||||
STOP
|
||||
BIN
library/PDFSTREAM.LCOM
Normal file
BIN
library/PDFSTREAM.LCOM
Normal file
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
BIN
library/Press.tedit
Normal file
BIN
library/Press.tedit
Normal file
Binary file not shown.
141
library/RS232.tedit
Normal file
141
library/RS232.tedit
Normal file
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
164
library/SPY
164
library/SPY
@@ -1,13 +1,13 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "28-Jul-2023 20:13:45" {DSK}<home>larry>il>medley>library>SPY.;4 64149
|
||||
(FILECREATED "27-Feb-2024 20:25:02" {DSK}<home>larry>il>medley>SPY.;1 53724
|
||||
|
||||
:EDIT-BY "lmm"
|
||||
|
||||
:CHANGES-TO (VARS SPYCOMS)
|
||||
(FNS \SPY.INTERRUPT SPY.BUFFER.ENTRY SPY.ADD.ENTRY)
|
||||
:CHANGES-TO (RECORDS FX)
|
||||
(VARS SPYOBJCOMS)
|
||||
|
||||
:PREVIOUS-DATE " 4-Jan-2022 14:09:48" {DSK}<home>larry>il>medley>library>SPY.;1)
|
||||
:PREVIOUS-DATE "28-Jul-2023 20:13:45" {DSK}<home>larry>il>medley>library>SPY.;1)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT SPYCOMS)
|
||||
@@ -114,7 +114,7 @@
|
||||
(FUNCTION SPYOBJ.BUTTON)
|
||||
(FUNCTION SPYOBJ.COPYIN)
|
||||
NIL NIL NIL NIL NIL NIL 'SPYNODE]
|
||||
(DECLARE%: DONTCOPY DOEVAL@COMPILE (RECORDS FX SPYOBJDATA))
|
||||
(DECLARE%: DONTCOPY DOEVAL@COMPILE (RECORDS SPYOBJDATA))
|
||||
(INITRECORDS SPYOBJDATA)))
|
||||
(DEFINEQ
|
||||
|
||||
@@ -189,134 +189,6 @@
|
||||
(DECLARE%: DONTCOPY DOEVAL@COMPILE
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(ACCESSFNS FX ((FXBLOCK (ADDSTACKBASE DATUM))) (* ; "frame extension index")
|
||||
(BLOCKRECORD FXBLOCK ((FLAGS BITS 3) (* ; "= \STK.FX")
|
||||
(FAST FLAG)
|
||||
(NIL FLAG)
|
||||
(INCALL FLAG) (* ;
|
||||
"set when fncall microcode has to punt")
|
||||
(VALIDNAMETABLE FLAG) (* ;
|
||||
"if on, NAMETABLE field is filled in. If off, is same as FNHEADER")
|
||||
(NOPUSH FLAG) (* ;
|
||||
"when returning to this frame, don't push a value. Set by interrupt code")
|
||||
(USECNT BITS 8)
|
||||
(%#ALINK WORD) (* ; "low bit is SLOWP")
|
||||
(FNHEADER FULLXPOINTER)
|
||||
(NEXTBLOCK WORD)
|
||||
(PC WORD)
|
||||
(NAMETABLE# FULLXPOINTER)
|
||||
(%#BLINK WORD)
|
||||
(%#CLINK WORD)))
|
||||
(BLOCKRECORD FXBLOCK ((FLAGBYTE BYTE)
|
||||
(NIL BYTE)
|
||||
(NIL BITS 15) (* ; "most of the bits of #ALINK")
|
||||
(SLOWP FLAG) (* ;
|
||||
"if on, then BLINK and CLINK fields are valid. If off, they are implicit")
|
||||
(NIL FULLXPOINTER 2)
|
||||
(NAMETABHI WORD)
|
||||
(NAMETABLO WORD)))
|
||||
(TYPE? (IEQ (fetch (FX FLAGS) of DATUM)
|
||||
\STK.FX))
|
||||
[ACCESSFNS FX ((NAMETABLE (COND
|
||||
((fetch (FX VALIDNAMETABLE) of DATUM)
|
||||
(fetch (FX NAMETABLE#) of DATUM))
|
||||
(T (fetch (FX FNHEADER) of DATUM)))
|
||||
(PROGN (replace (FX FAST) of DATUM with NIL)
|
||||
(replace (FX NAMETABLE#) of DATUM with NEWVALUE)
|
||||
(replace (FX VALIDNAMETABLE) of DATUM with T)))
|
||||
(FRAMENAME (fetch (FNHEADER FRAMENAME) of (fetch (FX NAMETABLE)
|
||||
of DATUM)))
|
||||
(INVALIDP (EQ DATUM 0)) (* ;
|
||||
"true when A/CLink points at nobody, i.e. FX is bottom of stack")
|
||||
[FASTP (NOT (fetch (FX SLOWP) of DATUM))
|
||||
(PROGN (CHECK (NULL NEWVALUE))
|
||||
(COND
|
||||
((fetch (FX FASTP) of DATUM)
|
||||
(replace (FX %#BLINK) of DATUM
|
||||
with (fetch (FX DUMMYBF) of DATUM))
|
||||
(replace (FX %#CLINK) of DATUM
|
||||
with (fetch (FX %#ALINK) of DATUM))
|
||||
(replace (FX SLOWP) of DATUM with T]
|
||||
[BLINK (COND
|
||||
((fetch (FX FASTP) of DATUM)
|
||||
(fetch (FX DUMMYBF) of DATUM))
|
||||
(T (fetch (FX %#BLINK) of DATUM)))
|
||||
(PROGN (replace (FX %#BLINK) of DATUM with NEWVALUE)
|
||||
(COND
|
||||
((fetch (FX FASTP) of DATUM)
|
||||
(replace (FX %#CLINK) of DATUM
|
||||
with (fetch (FX %#ALINK) of DATUM))
|
||||
(replace (FX SLOWP) of DATUM with T]
|
||||
[CLINK (IDIFFERENCE (COND
|
||||
((fetch (FX FASTP) of DATUM)
|
||||
(fetch (FX %#ALINK) of DATUM))
|
||||
(T (fetch (FX %#CLINK) of DATUM)))
|
||||
\#ALINK.OFFSET)
|
||||
(PROGN (replace (FX %#CLINK) of DATUM with (IPLUS NEWVALUE
|
||||
\#ALINK.OFFSET)
|
||||
)
|
||||
(COND
|
||||
((fetch (FX FASTP) of DATUM)
|
||||
(replace (FX %#BLINK) of DATUM
|
||||
with (fetch (FX DUMMYBF) of DATUM))
|
||||
(replace (FX SLOWP) of DATUM with T]
|
||||
[ALINK (IDIFFERENCE (FLOOR (fetch (FX %#ALINK) of DATUM)
|
||||
WORDSPERCELL)
|
||||
\#ALINK.OFFSET)
|
||||
(PROGN [COND
|
||||
((fetch (FX FASTP) of DATUM)
|
||||
(replace (FX %#BLINK) of DATUM
|
||||
with (fetch (FX DUMMYBF) of DATUM))
|
||||
(replace (FX %#CLINK) of DATUM
|
||||
with (fetch (FX %#ALINK) of DATUM]
|
||||
(replace (FX %#ALINK) of DATUM with (IPLUS NEWVALUE
|
||||
\#ALINK.OFFSET
|
||||
(SUB1
|
||||
WORDSPERCELL
|
||||
]
|
||||
[ACLINK (SHOULDNT)
|
||||
(PROGN [COND
|
||||
((fetch (FX FASTP) of DATUM)
|
||||
(replace (FX %#BLINK) of DATUM
|
||||
with (fetch (FX DUMMYBF) of DATUM]
|
||||
(replace (FX %#CLINK) of DATUM with (IPLUS NEWVALUE
|
||||
\#ALINK.OFFSET)
|
||||
)
|
||||
(replace (FX %#ALINK) of DATUM with (IPLUS NEWVALUE
|
||||
\#ALINK.OFFSET
|
||||
(SUB1
|
||||
WORDSPERCELL
|
||||
]
|
||||
(* ;
|
||||
"replaces A & C Links at once more efficiently than separately")
|
||||
(DUMMYBF (IDIFFERENCE DATUM WORDSPERCELL))
|
||||
|
||||
(* ;; "This is either an actual BF or %"residual%" BF that provides enough BF to find its IVAR slot. This means that when a FX is copied, the cell preceding the FX is copied too.")
|
||||
|
||||
(IVAR (fetch (BF IVAR) of (fetch (FX DUMMYBF) of DATUM)))
|
||||
[CHECKED (AND (type? FX DATUM)
|
||||
(OR (IEQ (fetch (FX DUMMYBF) of DATUM)
|
||||
(fetch (FX BLINK) of DATUM))
|
||||
(AND (fetch (BF RESIDUAL) of (fetch (FX DUMMYBF)
|
||||
of DATUM))
|
||||
(IEQ (fetch (BF IVAR) of (fetch (FX DUMMYBF)
|
||||
of DATUM))
|
||||
(fetch (BF IVAR) of (fetch (FX BLINK)
|
||||
of DATUM]
|
||||
(FIRSTPVAR (IPLUS DATUM (fetch (FX FXSIZE) of T)))
|
||||
(* ; "stack offset of PVAR0")
|
||||
(FXSIZE (PROGN 10)) (* ;
|
||||
"fixed overhead from flags thru clink")
|
||||
(PADDING (PROGN 4)) (* ;
|
||||
"doublecell of garbage for microcode use")
|
||||
(FIRSTTEMP (IPLUS (fetch (FX FIRSTPVAR) of DATUM)
|
||||
(fetch (FX NPVARWORDS) of DATUM)
|
||||
(fetch (FX PADDING) of DATUM)))
|
||||
(* ;
|
||||
"note that NPVARWORDS is obtained from the FNHEADER")
|
||||
(SIZE (IDIFFERENCE (fetch (FX NEXTBLOCK) of DATUM)
|
||||
DATUM])
|
||||
|
||||
(RECORD SPYOBJDATA (CACHEDLABEL PERCENT LABEL))
|
||||
)
|
||||
)
|
||||
@@ -1053,17 +925,17 @@
|
||||
|
||||
(MOVD? 'NILL 'MODERNWINDOW)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (4707 7314 (SPYOBJ 4717 . 5006) (SPYOBJ.BUTTON 5008 . 5118) (SPYOBJ.SAVE 5120 . 5239) (
|
||||
SPYOBJ.COPY 5241 . 5303) (SPYOBJ.GET 5305 . 5434) (SPYOBJ.IMAGEBOX 5436 . 5960) (SPYOBJ.DISPLAY 5962
|
||||
. 6261) (SPYOBJ.LABEL 6263 . 6399) (SPYOBJ.HEIGHT 6401 . 6614) (SPYOBJ.COPYIN 6616 . 6659) (
|
||||
SPY.COPYBUTTON 6661 . 6753) (SPY.MERGEINFO 6755 . 7312)) (18156 60387 (SPY.FIND.TREE 18166 . 18575) (
|
||||
SPY.TOGGLE 18577 . 18767) (SPY.TREE 18769 . 19881) (SPY.LEGEND 19883 . 20233) (SPY.GRAPH.EDITOR 20235
|
||||
. 29800) (SPY.END 29802 . 30044) (SPY.MAKEGRAPHNODES 30046 . 32146) (SPY.MAX 32148 . 33031) (
|
||||
SPY.MERGE 33033 . 34464) (SPY.MERGE1 34466 . 40949) (SPY.MERGETREE 40951 . 43881) (SPY.NEXT.TREE 43883
|
||||
. 44557) (SPY.SUM 44559 . 45248) (SPY.TITLE 45250 . 45467) (SPY.MAKE.TREE 45469 . 47494) (
|
||||
SPY.UPDATE.TITLE 47496 . 50072) (SPY.DELETE 50074 . 50609) (SPY.DRAWBOX 50611 . 51136) (
|
||||
SPY.BUFFER.ENTRY 51138 . 51481) (SPY.BUTTON 51483 . 52052) (SPY.END.ENTRY 52054 . 52134) (SPY.START
|
||||
52136 . 52420) (SPY.INIT 52422 . 52657) (\SPY.INTERRUPT 52659 . 54064) (SPY.DUMP.BUFFER 54066 . 55526)
|
||||
(SPY.START.ENTRY 55528 . 55656) (SPY.ADD.ENTRY 55658 . 56090) (SPY.ORIGINAL 56092 . 56919) (
|
||||
SPY.OVERFLOW 56921 . 57022) (SPY.MERGE.CALLEES 57024 . 60060) (SPY.PRINT 60062 . 60385)))))
|
||||
(FILEMAP (NIL (4660 7267 (SPYOBJ 4670 . 4959) (SPYOBJ.BUTTON 4961 . 5071) (SPYOBJ.SAVE 5073 . 5192) (
|
||||
SPYOBJ.COPY 5194 . 5256) (SPYOBJ.GET 5258 . 5387) (SPYOBJ.IMAGEBOX 5389 . 5913) (SPYOBJ.DISPLAY 5915
|
||||
. 6214) (SPYOBJ.LABEL 6216 . 6352) (SPYOBJ.HEIGHT 6354 . 6567) (SPYOBJ.COPYIN 6569 . 6612) (
|
||||
SPY.COPYBUTTON 6614 . 6706) (SPY.MERGEINFO 6708 . 7265)) (7731 49962 (SPY.FIND.TREE 7741 . 8150) (
|
||||
SPY.TOGGLE 8152 . 8342) (SPY.TREE 8344 . 9456) (SPY.LEGEND 9458 . 9808) (SPY.GRAPH.EDITOR 9810 . 19375
|
||||
) (SPY.END 19377 . 19619) (SPY.MAKEGRAPHNODES 19621 . 21721) (SPY.MAX 21723 . 22606) (SPY.MERGE 22608
|
||||
. 24039) (SPY.MERGE1 24041 . 30524) (SPY.MERGETREE 30526 . 33456) (SPY.NEXT.TREE 33458 . 34132) (
|
||||
SPY.SUM 34134 . 34823) (SPY.TITLE 34825 . 35042) (SPY.MAKE.TREE 35044 . 37069) (SPY.UPDATE.TITLE 37071
|
||||
. 39647) (SPY.DELETE 39649 . 40184) (SPY.DRAWBOX 40186 . 40711) (SPY.BUFFER.ENTRY 40713 . 41056) (
|
||||
SPY.BUTTON 41058 . 41627) (SPY.END.ENTRY 41629 . 41709) (SPY.START 41711 . 41995) (SPY.INIT 41997 .
|
||||
42232) (\SPY.INTERRUPT 42234 . 43639) (SPY.DUMP.BUFFER 43641 . 45101) (SPY.START.ENTRY 45103 . 45231)
|
||||
(SPY.ADD.ENTRY 45233 . 45665) (SPY.ORIGINAL 45667 . 46494) (SPY.OVERFLOW 46496 . 46597) (
|
||||
SPY.MERGE.CALLEES 46599 . 49635) (SPY.PRINT 49637 . 49960)))))
|
||||
STOP
|
||||
|
||||
BIN
library/SPY.LCOM
BIN
library/SPY.LCOM
Binary file not shown.
BIN
library/SameDir.tedit
Normal file
BIN
library/SameDir.tedit
Normal file
Binary file not shown.
BIN
library/Spy.tedit
Normal file
BIN
library/Spy.tedit
Normal file
Binary file not shown.
BIN
library/SysEdit.tedit
Normal file
BIN
library/SysEdit.tedit
Normal file
Binary file not shown.
219
library/TEXEC
219
library/TEXEC
@@ -1,12 +1,12 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10)
|
||||
|
||||
(FILECREATED "16-Jul-2022 23:42:20"
|
||||
|{DSK}<Users>kaplan>Local>medley3.5>working-medley>library>TEXEC.;3| 196212
|
||||
(FILECREATED "18-Jun-2023 09:48:54" |{WMEDLEY}<library>TEXEC.;5| 185935
|
||||
|
||||
:CHANGES-TO (VARS TEXECCOMS TEXEC.ICON TEXEC.ICON.MASK TEXEC.TITLED.ICON.TEMPLATE)
|
||||
:EDIT-BY |rmk|
|
||||
|
||||
:PREVIOUS-DATE " 1-Feb-2022 09:24:13"
|
||||
|{DSK}<Users>kaplan>Local>medley3.5>working-medley>library>TEXEC.;2|)
|
||||
:CHANGES-TO (VARS TEXECCOMS)
|
||||
|
||||
:PREVIOUS-DATE "16-Jul-2022 23:42:20" |{WMEDLEY}<library>TEXEC.;3|)
|
||||
|
||||
|
||||
; Copyright (c) 1985, 1900, 1986-1991 by Venue & Xerox Corporation.
|
||||
@@ -16,22 +16,22 @@
|
||||
(RPAQQ TEXECCOMS
|
||||
((COMS (* \;
|
||||
"To support development and compilation")
|
||||
(DECLARE\: DONTCOPY EVAL@COMPILE (FILES (LOADCOMP)
|
||||
ATERM TEDIT-DCL)))
|
||||
(DECLARE\: DONTCOPY EVAL@COMPILE (FILES TEDIT-EXPORTS.ALL (LOADCOMP)
|
||||
ATERM)))
|
||||
(COMS
|
||||
(* |;;| "THE FILLBUFFER REPLACEMENT CODE")
|
||||
|
||||
(FNS TEXEC.BACKSKREAD TEXEC.OPENTEXTSTREAM TEXEC.DEFAULT.MENUFN TEXEC.DO?CMD
|
||||
TEXEC.CREATEMENU TEXEC.GET TEXEC.INCLUDE TEXEC.FIND.FORWARD TEXEC.FIND.BACKWARD
|
||||
TEDIT.FIND.BACKWARD TEDIT.BASICFIND.BACKWARD TEXEC.MENU.WHENHELDFN
|
||||
TEXEC.SHRINK.ICONCREATE TEXEC.FILLBUFFER TEXEC.FILLBUFFER.TCLASS
|
||||
TEXEC.CHSELPENDING TEXEC.FILLBUFFER.CHARDELETE TEXEC.FILLBUFFER.WORDDELETE
|
||||
TEXEC.FILLBUFFER.LINEDELETE TEXEC.PARENCOUNT TEXEC.PARENMATCH TEXEC.FLASHCARET
|
||||
TEXEC.TEXTSTREAM.TO.LINEBUF TEXEC.FIX TEXEC.NTHBUFCHARBACK TEXEC.NTHBACKCHNUM
|
||||
TEXEC.EOTP TEXEC.GETKEY TEXEC.INSERTCHAR TEXEC.DELETE TEXEC.\\CHDEL1 TEXEC.?EQUAL
|
||||
TEDIT.SCROLL? TEXEC.DISPLAYTEXT \\TEXEC.TEXTBOUT \\TEXEC.TEXTBOUT1
|
||||
\\TEXEC.TEXTBOUT2 \\TEXEC.TEXTBOUT3 \\TEXEC.TEXTBOUT4 \\TEXEC.SELFN
|
||||
TEXEC.PRINTARGS TEXEC.PROCENTRYFN TEXEC.PROCEXITFN))
|
||||
TEXEC.MENU.WHENHELDFN TEXEC.SHRINK.ICONCREATE TEXEC.FILLBUFFER
|
||||
TEXEC.FILLBUFFER.TCLASS TEXEC.CHSELPENDING TEXEC.FILLBUFFER.CHARDELETE
|
||||
TEXEC.FILLBUFFER.WORDDELETE TEXEC.FILLBUFFER.LINEDELETE TEXEC.PARENCOUNT
|
||||
TEXEC.PARENMATCH TEXEC.FLASHCARET TEXEC.TEXTSTREAM.TO.LINEBUF TEXEC.FIX
|
||||
TEXEC.NTHBUFCHARBACK TEXEC.NTHBACKCHNUM TEXEC.EOTP TEXEC.GETKEY TEXEC.INSERTCHAR
|
||||
TEXEC.DELETE TEXEC.\\CHDEL1 TEXEC.?EQUAL TEDIT.SCROLL? TEXEC.DISPLAYTEXT
|
||||
\\TEXEC.TEXTBOUT \\TEXEC.TEXTBOUT1 \\TEXEC.TEXTBOUT2 \\TEXEC.TEXTBOUT3
|
||||
\\TEXEC.TEXTBOUT4 \\TEXEC.SELFN TEXEC.PRINTARGS TEXEC.PROCENTRYFN TEXEC.PROCEXITFN
|
||||
))
|
||||
(COMS
|
||||
(* |;;| "Code to support a TEXEC lisp 'listener'")
|
||||
|
||||
@@ -56,8 +56,8 @@
|
||||
|
||||
(DECLARE\: DONTCOPY EVAL@COMPILE
|
||||
|
||||
(FILESLOAD (LOADCOMP)
|
||||
ATERM TEDIT-DCL)
|
||||
(FILESLOAD TEDIT-EXPORTS.ALL (LOADCOMP)
|
||||
ATERM)
|
||||
)
|
||||
|
||||
|
||||
@@ -996,155 +996,6 @@
|
||||
(\\SHOWSEL (|fetch| (TEXTOBJ SEL) |of| TEXTOBJ)
|
||||
NIL T))))))))
|
||||
|
||||
(TEDIT.FIND.BACKWARD
|
||||
(LAMBDA (TEXTOBJ TARGETSTRING START# END# WILDCARDS?) (* \; "Edited 30-May-91 19:17 by jds")
|
||||
|
||||
(* I\f WILDCARDS? |is| NIL |then| TEDIT.FIND.BACKWARD |is| |the| |old|
|
||||
TEDIT.FIND. |Else,| |it| |returns| \a |list| |of|
|
||||
(SEL.START# SEL.END#) |which| |is| |the| |start| |and| |end| |char| |positions|
|
||||
|of| |the| |selection|)
|
||||
|
||||
(PROG ((TEDIT.WILDCARD.CHARACTERS '("#" "*")))
|
||||
(AND TARGETSTRING (NOT (STRINGP TARGETSTRING))
|
||||
(SETQ TARGETSTRING (MKSTRING TARGETSTRING)))
|
||||
(SETQ TEXTOBJ (TEXTOBJ TEXTOBJ))
|
||||
(\\TEDIT.HISTORYADD TEXTOBJ (|create| TEDITHISTORYEVENT
|
||||
THACTION _ '|Find|
|
||||
THAUXINFO _ TARGETSTRING))
|
||||
(|replace| (TEXTOBJ \\INSERTPCVALID) |of| TEXTOBJ |with| NIL)
|
||||
(* |Any| FIND |invalidates| |the|
|
||||
|type-in| |cache.|)
|
||||
(RETURN
|
||||
(COND
|
||||
(WILDCARDS?
|
||||
|
||||
(* |will| |return| \a |list| |of| |start| |and| |end| |of| |selection| |or|
|
||||
|nil| |if| |not| |found|)
|
||||
|
||||
(PROG (TARGETLIST SEL RESULT RESULT1)
|
||||
(RETURN (COND
|
||||
((OR START# (AND (|fetch| (SELECTION SET)
|
||||
|of| (SETQ SEL (|fetch| (TEXTOBJ SEL)
|
||||
|of| TEXTOBJ)))
|
||||
(LEQ (SETQ START# (SELECTQ (|fetch| (SELECTION
|
||||
POINT)
|
||||
|of| SEL)
|
||||
(LEFT (|fetch|
|
||||
(SELECTION CH#)
|
||||
|of| SEL))
|
||||
(RIGHT (|fetch|
|
||||
(SELECTION CHLIM)
|
||||
|of| SEL))
|
||||
NIL))
|
||||
(OR END# (SETQ END# 1)))))
|
||||
(* |Backwards| |search|)
|
||||
(COND
|
||||
((AND (|for| X
|
||||
|in| (SETQ TARGETLIST
|
||||
(\\TEDIT.PARSE.SEARCHSTRING
|
||||
(|for| X |in| (UNPACK (MKATOM
|
||||
TARGETSTRING
|
||||
))
|
||||
|collect| (MKSTRING X)))) |collect|
|
||||
X
|
||||
|when| (LITATOM X))
|
||||
(SETQ RESULT1 (\\TEDIT.SUBST.FN1 TEXTOBJ TARGETLIST END#
|
||||
START#)))
|
||||
(* I\f |there| |are| |atoms,| |they|
|
||||
|are| |tedit| |wildcard| |chars|)
|
||||
(\\TEDIT.FIND.WC TEXTOBJ TARGETLIST RESULT1 START#))
|
||||
(T (* |no| |wildcards| |but| |bounded|
|
||||
|search|)
|
||||
(COND
|
||||
((SETQ RESULT (TEDIT.FIND.BACKWARD TEXTOBJ (CAR
|
||||
TARGETLIST
|
||||
)
|
||||
START# END# NIL))
|
||||
(LIST RESULT (SUB1 (IPLUS RESULT (NCHARS (CAR TARGETLIST))
|
||||
))))))))))))
|
||||
(T (* |will| |return| |just| |the|
|
||||
|number| |of| |the| |start| |char|
|
||||
|or| |nil| |if| |not| |found|)
|
||||
(PROG (RESULT)
|
||||
(SETQ RESULT (TEDIT.BASICFIND.BACKWARD TEXTOBJ TARGETSTRING START# 1))
|
||||
(RETURN (COND
|
||||
((NULL END#)
|
||||
RESULT)
|
||||
((OR (NULL RESULT))
|
||||
NIL)
|
||||
(T RESULT))))))))))
|
||||
|
||||
(TEDIT.BASICFIND.BACKWARD
|
||||
(LAMBDA (TEXTOBJ STRING CH# CHLIM) (* \; "Edited 30-May-91 19:17 by jds")
|
||||
|
||||
(* |Search| |thru| TEXTOBJ\, |starting| |where| |the| |caret| |is,| |for| |the|
|
||||
|string| STRING\, |exact| |match| |only| |for| |now.|
|
||||
(|Optionally,| |start| |the| |search| |at| |character| |ch#.|))
|
||||
|
||||
(PROG ((SEL (|fetch| (TEXTOBJ SEL) |of| TEXTOBJ))
|
||||
(TEXTLEN (|fetch| (TEXTOBJ TEXTLEN) |of| TEXTOBJ))
|
||||
(TEXTLIM (OR CHLIM (ADD1 (IDIFFERENCE (|fetch| (TEXTOBJ TEXTLEN) |of| TEXTOBJ)
|
||||
(NCHARS STRING)))))
|
||||
(TEXTSTREAM (|fetch| (TEXTOBJ STREAMHINT) |of| TEXTOBJ))
|
||||
(FOUND NIL)
|
||||
CH1 CH CH#1 (RSTRING "")
|
||||
(TSTRING (CONCAT STRING))
|
||||
ANCHOR PCH# OANCHOR CH) (* |Reverse| |the| |string|)
|
||||
(|while| (SETQ CH (GLC TSTRING)) |do| (SETQ RSTRING (CONCAT RSTRING (MKSTRING
|
||||
CH))))
|
||||
(SETQ CH#1 (NTHCHARCODE RSTRING 1))
|
||||
(|replace| (TEXTOBJ \\INSERTPCVALID) |of| TEXTOBJ |with| NIL)
|
||||
|
||||
(* |2/12/85| JDS\: I |don't| |understand| WHY |this| |is| |here,| |but| |I'll|
|
||||
|assume| |it's| |right| |for| |now.|)
|
||||
(* |Prohibit| |future| |insertions|
|
||||
|in| |the| |current| |piece.|)
|
||||
(COND
|
||||
((OR CH# (|fetch| (SELECTION SET) |of| SEL))
|
||||
(* |There| |must| |be| \a
|
||||
|well-defined| |starting| |point.|)
|
||||
(RETURN (PROG NIL
|
||||
(SETQ CH1 (SUB1 (OR CH# (SELECTQ (|fetch| (SELECTION POINT)
|
||||
|of| SEL)
|
||||
(LEFT (|fetch| (SELECTION CH#)
|
||||
|of| SEL))
|
||||
(RIGHT (|fetch| (SELECTION CHLIM)
|
||||
|of| SEL))
|
||||
NIL))))
|
||||
(* |Find| |the| |starting| |point|
|
||||
|for| |the| |search|)
|
||||
(* DO THE SEARCH)
|
||||
(COND
|
||||
((ILESSP CH1 2) (* |Starting| |the| |search| |past|
|
||||
|the| |last| |possible| |starting|
|
||||
|point.| |Just| |punt.|)
|
||||
(RETURN NIL)))
|
||||
RETRY
|
||||
(SETQ ANCHOR CH1)
|
||||
(\\SETUPGETCH ANCHOR TEXTOBJ)
|
||||
(|for| |old| ANCHOR |from| CH1 |by| -1 |to| 2
|
||||
|do| (SETQ CH (\\BACKBIN TEXTSTREAM))
|
||||
(COND
|
||||
((EQ CH CH#1)
|
||||
(RETURN))))
|
||||
(COND
|
||||
((ILEQ ANCHOR 2)
|
||||
(RETURN NIL))) (* N\o |starting| |character|
|
||||
|found| |before| |end| |of| |string|)
|
||||
(SETQ OANCHOR ANCHOR)
|
||||
(SETQ FOUND T)
|
||||
(|for| |old| CH1 |from| (SUB1 ANCHOR) |to| 2 |by|
|
||||
-1
|
||||
|as| PCH# |from| 2 |to| (NCHARS STRING)
|
||||
|do| (SETQ CH (\\BACKBIN TEXTSTREAM))
|
||||
(COND
|
||||
((NEQ CH (NTHCHARCODE RSTRING PCH#))
|
||||
(SETQ FOUND NIL)
|
||||
(RETURN))))
|
||||
(COND
|
||||
(FOUND (RETURN ANCHOR))
|
||||
(T (GO RETRY))))))))))
|
||||
|
||||
(TEXEC.MENU.WHENHELDFN
|
||||
(LAMBDA (ITEM MENU BUTTON) (* AJB "30-Jan-86 13:09")
|
||||
(PROMPTPRINT (SELECTQ (CAR ITEM)
|
||||
@@ -3160,21 +3011,21 @@
|
||||
(RPAQ? TEXEC.BUFFERLIMIT 10000)
|
||||
(PUTPROPS TEXEC COPYRIGHT ("Venue & Xerox Corporation" 1985 1900 1986 1987 1988 1989 1990 1991))
|
||||
(DECLARE\: DONTCOPY
|
||||
(FILEMAP (NIL (3225 181985 (TEXEC.BACKSKREAD 3235 . 7859) (TEXEC.OPENTEXTSTREAM 7861 . 9919) (
|
||||
TEXEC.DEFAULT.MENUFN 9921 . 14475) (TEXEC.DO?CMD 14477 . 19795) (TEXEC.CREATEMENU 19797 . 20255) (
|
||||
TEXEC.GET 20257 . 29092) (TEXEC.INCLUDE 29094 . 42479) (TEXEC.FIND.FORWARD 42481 . 55369) (
|
||||
TEXEC.FIND.BACKWARD 55371 . 68873) (TEDIT.FIND.BACKWARD 68875 . 74352) (TEDIT.BASICFIND.BACKWARD 74354
|
||||
. 79008) (TEXEC.MENU.WHENHELDFN 79010 . 79669) (TEXEC.SHRINK.ICONCREATE 79671 . 82474) (
|
||||
TEXEC.FILLBUFFER 82476 . 98910) (TEXEC.FILLBUFFER.TCLASS 98912 . 105252) (TEXEC.CHSELPENDING 105254 .
|
||||
113744) (TEXEC.FILLBUFFER.CHARDELETE 113746 . 115801) (TEXEC.FILLBUFFER.WORDDELETE 115803 . 120931) (
|
||||
TEXEC.FILLBUFFER.LINEDELETE 120933 . 123815) (TEXEC.PARENCOUNT 123817 . 125206) (TEXEC.PARENMATCH
|
||||
125208 . 126748) (TEXEC.FLASHCARET 126750 . 129409) (TEXEC.TEXTSTREAM.TO.LINEBUF 129411 . 132098) (
|
||||
TEXEC.FIX 132100 . 135269) (TEXEC.NTHBUFCHARBACK 135271 . 136334) (TEXEC.NTHBACKCHNUM 136336 . 137621)
|
||||
(TEXEC.EOTP 137623 . 138356) (TEXEC.GETKEY 138358 . 141274) (TEXEC.INSERTCHAR 141276 . 143577) (
|
||||
TEXEC.DELETE 143579 . 144354) (TEXEC.\\CHDEL1 144356 . 147481) (TEXEC.?EQUAL 147483 . 148532) (
|
||||
TEDIT.SCROLL? 148534 . 153497) (TEXEC.DISPLAYTEXT 153499 . 160274) (\\TEXEC.TEXTBOUT 160276 . 163284)
|
||||
(\\TEXEC.TEXTBOUT1 163286 . 168920) (\\TEXEC.TEXTBOUT2 168922 . 171253) (\\TEXEC.TEXTBOUT3 171255 .
|
||||
172645) (\\TEXEC.TEXTBOUT4 172647 . 174690) (\\TEXEC.SELFN 174692 . 176067) (TEXEC.PRINTARGS 176069 .
|
||||
181032) (TEXEC.PROCENTRYFN 181034 . 181575) (TEXEC.PROCEXITFN 181577 . 181983)) (182045 188420 (TEXEC
|
||||
182055 . 186477) (TTEXEC 186479 . 188418)))))
|
||||
(FILEMAP (NIL (3083 171708 (TEXEC.BACKSKREAD 3093 . 7717) (TEXEC.OPENTEXTSTREAM 7719 . 9777) (
|
||||
TEXEC.DEFAULT.MENUFN 9779 . 14333) (TEXEC.DO?CMD 14335 . 19653) (TEXEC.CREATEMENU 19655 . 20113) (
|
||||
TEXEC.GET 20115 . 28950) (TEXEC.INCLUDE 28952 . 42337) (TEXEC.FIND.FORWARD 42339 . 55227) (
|
||||
TEXEC.FIND.BACKWARD 55229 . 68731) (TEXEC.MENU.WHENHELDFN 68733 . 69392) (TEXEC.SHRINK.ICONCREATE
|
||||
69394 . 72197) (TEXEC.FILLBUFFER 72199 . 88633) (TEXEC.FILLBUFFER.TCLASS 88635 . 94975) (
|
||||
TEXEC.CHSELPENDING 94977 . 103467) (TEXEC.FILLBUFFER.CHARDELETE 103469 . 105524) (
|
||||
TEXEC.FILLBUFFER.WORDDELETE 105526 . 110654) (TEXEC.FILLBUFFER.LINEDELETE 110656 . 113538) (
|
||||
TEXEC.PARENCOUNT 113540 . 114929) (TEXEC.PARENMATCH 114931 . 116471) (TEXEC.FLASHCARET 116473 . 119132
|
||||
) (TEXEC.TEXTSTREAM.TO.LINEBUF 119134 . 121821) (TEXEC.FIX 121823 . 124992) (TEXEC.NTHBUFCHARBACK
|
||||
124994 . 126057) (TEXEC.NTHBACKCHNUM 126059 . 127344) (TEXEC.EOTP 127346 . 128079) (TEXEC.GETKEY
|
||||
128081 . 130997) (TEXEC.INSERTCHAR 130999 . 133300) (TEXEC.DELETE 133302 . 134077) (TEXEC.\\CHDEL1
|
||||
134079 . 137204) (TEXEC.?EQUAL 137206 . 138255) (TEDIT.SCROLL? 138257 . 143220) (TEXEC.DISPLAYTEXT
|
||||
143222 . 149997) (\\TEXEC.TEXTBOUT 149999 . 153007) (\\TEXEC.TEXTBOUT1 153009 . 158643) (
|
||||
\\TEXEC.TEXTBOUT2 158645 . 160976) (\\TEXEC.TEXTBOUT3 160978 . 162368) (\\TEXEC.TEXTBOUT4 162370 .
|
||||
164413) (\\TEXEC.SELFN 164415 . 165790) (TEXEC.PRINTARGS 165792 . 170755) (TEXEC.PROCENTRYFN 170757 .
|
||||
171298) (TEXEC.PROCEXITFN 171300 . 171706)) (171768 178143 (TEXEC 171778 . 176200) (TTEXEC 176202 .
|
||||
178141)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
BIN
library/TableBrowser.tedit
Normal file
BIN
library/TableBrowser.tedit
Normal file
Binary file not shown.
1832
library/UNICODE
1832
library/UNICODE
File diff suppressed because it is too large
Load Diff
Binary file not shown.
BIN
library/UNICODE.TEDIT
Normal file
BIN
library/UNICODE.TEDIT
Normal file
Binary file not shown.
@@ -1,98 +0,0 @@
|
||||
This file describes the UNICODE Lisp Library package.
|
||||
|
||||
Contributed by Ron Kaplan, August 2020.
|
||||
|
||||
The UNICODE library package defines external file formats that enable Medley to read and write files where 16 bit character codes are represented as UTF8 byte sequences or big-endian UTF16 byte-pairs. It also provides for character codes to be converted (on reading) from Unicode codes to equivalent codes in the Medley-internal Xerox Character Code Standard (XCCS) and (on writing) from XCCS codes to equivalent Unicode codes.
|
||||
|
||||
Four external formats are defined when the package is loaded:
|
||||
|
||||
:UTF8 codes are represented as UTF8 byte sequences and XCCS/Unicode character
|
||||
conversion takes place.
|
||||
|
||||
:UTF16BE codes are represented as 2-byte pairs, with the high order by appearing
|
||||
first in the file, and characters are converted.
|
||||
|
||||
The two other external formats translate byte sequences into codes, but do not translate the codes. These allow Medley to see and process characters in their native encoding.
|
||||
|
||||
:UTF8-RAW codes are represented as UTF8 byte sequences, but character conversion
|
||||
does not take place.
|
||||
|
||||
:UTF16BE-RAW codes are represented as big-ending 2-byte pairs but there is no
|
||||
conversion.
|
||||
|
||||
These formats all define the end-of-line convention (mostly for writing) for the external files according to the variable EXTERNALEOL (LF, CR, CRLF), with LF the default.
|
||||
|
||||
The external format can be specified as a parameter when a stream is opened:
|
||||
|
||||
(OPENSTREAM 'foo.txt 'INPUT 'OLD '((EXTERNALFORMAT :UTF8)))
|
||||
|
||||
(CL:OPEN 'foo.txt :DIRECTION :INPUT :EXTERNAL-FORMAT :UTF8)
|
||||
|
||||
The function STREAMPROP obtains or changes the external format of an open stream:
|
||||
|
||||
(STREAMPROP stream 'EXTERNALFORMAT) -> :XCCS
|
||||
|
||||
(STREAMPROP stream 'EXTERNALFORMAT :UTF8) -> :XCCS
|
||||
|
||||
In the latter case, the stream's format is changed to :UTF8 and the previous value is returned, in this example it is Medley's historical default format :XCCS.
|
||||
|
||||
Entries can be placed on the variable *DEFAULT-EXTERNALFORMATS* to change the external format that is set by default when a file is opened on a particular device. Loading UNICODE executes
|
||||
|
||||
(PUSH *DEFAULT-EXTERNALFORMATS* '(UNIX :UTF8))
|
||||
|
||||
so that all files opened (by OPENSTREAM, CL:OPEN, etc.) on the UNIX file device will be initialized with :UTF8. Note that the UNIX and DSK file devices reference the same files (although some caution is needed because {UNIX} does not simulate Medley versioning), but the device name in a file name ({UNIX}/Users/... vs. {DSK}/Users/...) selects one or the other. The default setting above applies only to files specified with {UNIX}; a separate default entry for DSK must be established to change its default from :XCCS.
|
||||
|
||||
The user can also specify the external format on a per-stream basis by putting a function on the list STREAM-AFTER-OPEN-FNS. After OPENSTREAM opens a stream and just before it is returned to the calling function, the functions on that list are applied in order to arguments STREAM, ACCESS, PARAMETERS. They can examine and/or change the properties of the stream, in particular, by calling STREAMPROP to change the external format from its device default.
|
||||
|
||||
The XCCS/Unicode mapping tables are defined by the code-mapping files for particular XCCS character sets. These are typically located in the Library sister directory
|
||||
|
||||
../Unicode/Xerox/
|
||||
|
||||
and the variable UNICODEDIRECTORIES is initialized with a globally valid reference to that path. The global reference is constructed by prepending the value of the Unix environment-variable "MEDLEYDIR" to the suffix /Unicode/Xerox/. MEDLEYDIR should be set by the Medley start-up shell script (e.g. /Users/kaplan/local/medley3.5/lispcore/)
|
||||
|
||||
The mapping files have conventional names of the form XCCS-<charsetnum>=<charsetname>.TXT, for example, XCCS-0=LATIN.TXT, XCCS-357=SYMBOLS4.TXT. The translations used by the external formats are read from these files by the function
|
||||
|
||||
(READ-UNICODE-MAPPING FILESPEC NOPRINT NOERROR)
|
||||
|
||||
where FILESPEC can be a list of files, charset octal strings ("0" "357"), or XCCS charset names (LATIN EXTENDED-LATIN). Reading will be silent if NOPRINT, and the process will not abort if an error occurs and NOERROR. The value is a flat list of the mappings for all the character sets, with elements of the form (XCCC-code Unicode-code).
|
||||
|
||||
When UNICODE is loaded the mappings for the character sets specified in the variable DEFAULT-XCCS-CHARSETS are installed. This is initialized to
|
||||
|
||||
(LATIN SYMBOLS1 SYMBOLS2 EXTENDED-LATIN FORMS SYMBOLS3 SYMBOLS4 ACCENTED-LATIN GREEK)
|
||||
|
||||
but DEFAULT-XCCS-CHARSETS can be set to a different collection before UNICODE is loaded.
|
||||
|
||||
The internal translation tables used by the external formats are constructed from a list of correspondence pairs by the function
|
||||
|
||||
(MAKE-UNICODE-TRANSLATION-TABLES MAPPING [FROM-XCCS-VAR][TO-XCCS-VAR])
|
||||
|
||||
This returns a list of two arrays (XCCS-to-Unicode Unicode-to-XCCS)containing the relevant translation information organized for rapid access. If the optional from/to-variables arguments are provide, they are the names of variables whose top-level values will be set to these arrays, for convenience. For the external formats defined above, these variables are *XCCSTOUNICODE* and *UNICODETOXCCS*.
|
||||
|
||||
The macro
|
||||
|
||||
(UNICODE.TRANSLATE CODE TRANSLATION-TABLE)
|
||||
|
||||
is used by the external formats to perform the mappings described by the translation-tables.
|
||||
|
||||
The following utilities are provided for lower-level manipulation of codes and strings
|
||||
|
||||
(XTOUCODE XCCSCODE) -> corresponding Unicode
|
||||
(UTOXCODE UNICODE) -> corresponding XCCS code
|
||||
(NUTF8CODEBYTES N) -> number of bytes in the UTF8 representation of N
|
||||
(NUTF8STRINGBYTES STRING RAWFLG) -> number of UTF8 bytes in the UTF8
|
||||
representation of STRING, translating XCCS to Unicode unless RAWFLG.
|
||||
(XTOUSTRING XCCSSTRING RAWFLG) -> The string of bytes in the UTF8 representation
|
||||
of the characters in XCCSSTRING (= the bytes in its UTF8 file encoding)
|
||||
(HEXSTRING N WIDTH) -> the hex string for N, padded to WIDTH
|
||||
|
||||
|
||||
The UNICODE file also contains a function for writing a mapping file given a list of mapping pairs. The function
|
||||
|
||||
(WRITE-TRANSLATION-TABLE MAPPING [INCLUDEDCHARSETS] [FILE])
|
||||
|
||||
produces one or more mapping files for the mapping-pairs in mapping. If the optional FILE argument is provided, then a single file with that name will be produced and contain all the mappings for all the character sets in MAPPING. If FILE and INCLUDEDCHARSETS are not provided, then all of the mappings will again go to a single file with a composite name XCCS-csn1,csn2,csn3.TXT. Each cs may be a single charset number, or a range of adjacent charset numbers. For example, if the mappings contain entries for characters in charset LATIN, SYMBOLS1, SYMBOLS2, and SYMBOLS3, the file name will be XCCS-0,41-43.TXT.
|
||||
|
||||
If INCLUDEDCHARSETS is provided, it specifies possibly a subset of the mappings in MAPPING for which files should be produced. This provides an implicit subsetting capability.
|
||||
|
||||
Finally, if FILE is not provided and INCLUDEDCHARSETS is T, then a separate file will be produced for each of the character sets, essentially a way of splitting a collection of character-set mappings into separate canonically named files (e.g. XCCS-357=SYMBOLS4.TXT).
|
||||
|
||||
@@ -1,26 +1,41 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "16-Jun-2023 13:30:18" {DSK}<home>frank>il>medley>gmedley>library>UNIXUTILS.;11 4989
|
||||
(FILECREATED "13-Nov-2023 12:57:10" {DSK}<home>frank>il>medley>gmedley>library>UNIXUTILS.;26 16663
|
||||
|
||||
:CHANGES-TO (FUNCTIONS ShellWhich)
|
||||
:CHANGES-TO (FNS ShellBrowser)
|
||||
|
||||
:PREVIOUS-DATE "18-Jan-2023 20:36:10" {DSK}<home>frank>il>medley>gmedley>library>UNIXUTILS.;8
|
||||
:PREVIOUS-DATE "11-Nov-2023 09:06:39" {DSK}<home>frank>il>medley>gmedley>library>UNIXUTILS.;25
|
||||
)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT UNIXUTILSCOMS)
|
||||
|
||||
(RPAQQ UNIXUTILSCOMS ((GLOBALVARS ShellBrowser)
|
||||
(INITVARS (ShellBrowser))
|
||||
(FUNCTIONS ShellCommand ShellWhich)
|
||||
(FNS ShellBrowser ShellBrowse)))
|
||||
(RPAQQ UNIXUTILSCOMS
|
||||
((DECLARE%: EVAL@COMPILE DONTCOPY (* ; "For PROCESS-COMMAND")
|
||||
(FILES (FROM LOADUPS)
|
||||
EXPORTS.ALL))
|
||||
(GLOBALVARS ShellBrowser ShellOpener)
|
||||
(INITVARS (ShellBrowser)
|
||||
(ShellOpener))
|
||||
(FUNCTIONS ShellCommand ShellWhich)
|
||||
(ADDVARS (MEDLEY-INIT-VARS (ShellBrowser)
|
||||
(ShellOpener)))
|
||||
(FNS ShellBrowser ShellBrowse ShellOpener ShellOpen PROCESS-COMMAND SLASHIT UNIX-FILE-NAME)
|
||||
(PROPS (UNIXUTILS FILETYPE))))
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY
|
||||
|
||||
(FILESLOAD (FROM LOADUPS)
|
||||
EXPORTS.ALL)
|
||||
)
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS ShellBrowser)
|
||||
(GLOBALVARS ShellBrowser ShellOpener)
|
||||
)
|
||||
|
||||
(RPAQ? ShellBrowser )
|
||||
|
||||
(RPAQ? ShellOpener )
|
||||
|
||||
(CL:DEFUN ShellCommand (Cmd &OPTIONAL (Output T))
|
||||
(CL:WITH-OPEN-STREAM (s (CREATE-PROCESS-STREAM Cmd))
|
||||
(CL:TAGBODY [SETFILEINFO s 'ENDOFSTREAMOP #'(CL:LAMBDA (s)
|
||||
@@ -40,54 +55,51 @@
|
||||
NIL)
|
||||
(T (SETFILEPTR S 0)
|
||||
(RSTRING S])
|
||||
|
||||
(ADDTOVAR MEDLEY-INIT-VARS (ShellBrowser)
|
||||
(ShellOpener))
|
||||
(DEFINEQ
|
||||
|
||||
(ShellBrowser
|
||||
[LAMBDA NIL (* ; "Edited 18-Jan-2023 20:30 by FGH")
|
||||
(OR ShellBrowser (SETQ ShellBrowser (LET (CMDPATH)
|
||||
(if (STRPOS "darwin" (OR (UNIX-GETENV "OSTYPE")
|
||||
(UNIX-GETENV "PATH")))
|
||||
then
|
||||
(* ;; " MacOS")
|
||||
|
||||
"open"
|
||||
elseif (SETQ CMDPATH (ShellWhich "wslview"))
|
||||
then
|
||||
(* ;; "windows with WSL")
|
||||
(* ;; "Figure out the browser to use for the ShellOpen/ShellBrowse functions. ")
|
||||
|
||||
CMDPATH
|
||||
elseif (SETQ CMDPATH (ShellWhich "xdg-open"))
|
||||
then
|
||||
(* ;; "Linux systems with xdg-utils installed ")
|
||||
(* ;; " Ordinarily, this would be the same as the generic ShellOpener.")
|
||||
|
||||
CMDPATH
|
||||
elseif (SETQ CMDPATH (ShellWhich "git"))
|
||||
then
|
||||
(* ;; " Systems with git installed")
|
||||
(* ;; " But if a generic ShellOpener is not found, then there are some additional")
|
||||
|
||||
(CONCAT CMDPATH " web--browse")
|
||||
(* ; "")
|
||||
elseif (SETQ CMDPATH (ShellWhich "lynx"))
|
||||
then
|
||||
(* ;; " Systems with lynx installed")
|
||||
(* ;; " possibilities that will work for http/https URLs. If one of these exists return it.")
|
||||
|
||||
(LET (CMDPATH2)
|
||||
(if (SETQ CMDPATH2 (ShellWhich "xterm"))
|
||||
then (CONCAT CMDPATH2 " -e " CMDPATH)
|
||||
else (LIST CMDPATH)))
|
||||
else
|
||||
(* ;;
|
||||
" Out of ideas - just return a dummy function")
|
||||
(OR ShellBrowser (SETQ ShellBrowser
|
||||
(if (NOT (STREQUAL (ShellOpener)
|
||||
"true"))
|
||||
then ShellOpener
|
||||
else (LET (CMDPATH)
|
||||
(if (SETQ CMDPATH (ShellWhich "git"))
|
||||
then
|
||||
(* ;; " Systems with git installed")
|
||||
|
||||
"true"])
|
||||
(CONCAT CMDPATH " web--browse")
|
||||
elseif (SETQ CMDPATH (ShellWhich "lynx"))
|
||||
then
|
||||
(* ;; " Systems with lynx installed")
|
||||
|
||||
(LET (CMDPATH2)
|
||||
(if (SETQ CMDPATH2 (ShellWhich "xterm"))
|
||||
then (CONCAT CMDPATH2 " -e " CMDPATH)
|
||||
else (LIST CMDPATH)))
|
||||
else
|
||||
(* ;; " Out of ideas - just return a dummy function")
|
||||
|
||||
"true"])
|
||||
|
||||
(ShellBrowse
|
||||
[LAMBDA (URL) (* ; "Edited 18-Jan-2023 20:32 by FGH")
|
||||
|
||||
(* ;; " Open the web page specified by URL using an external browser via shell call")
|
||||
|
||||
(* ;;
|
||||
" URL must start with http:// or https:// (case ireelevant) or this function will just return NIL.")
|
||||
(* ;; " URL must start with http:// or https:// or file:/// (case ireelevant) or this function will just return NIL.")
|
||||
|
||||
(* ;; " Returns T otherwise.")
|
||||
|
||||
@@ -95,17 +107,218 @@
|
||||
(if (OR (EQ (STRPOS "http://" (L-CASE URL))
|
||||
1)
|
||||
(EQ (STRPOS "https://" (L-CASE URL))
|
||||
1)
|
||||
(EQ (STRPOS "file:///" (L-CASE URL))
|
||||
1))
|
||||
then (ShellOpen URL)
|
||||
else NIL])
|
||||
|
||||
(ShellOpener
|
||||
[LAMBDA NIL
|
||||
|
||||
(* ;; "Find an %"opener%" that will open files (and URLs) using the appropriate/default app on this machine")
|
||||
|
||||
(OR ShellOpener (SETQ ShellOpener (LET (CMDPATH)
|
||||
(if (SETQ CMDPATH (ShellWhich "wslview"))
|
||||
then
|
||||
(* ;; "windows with WSL")
|
||||
|
||||
CMDPATH
|
||||
elseif (SETQ CMDPATH (ShellWhich "cygstart"))
|
||||
then
|
||||
(* ;; "windows with cygwin")
|
||||
|
||||
CMDPATH
|
||||
elseif (SETQ CMDPATH (ShellWhich "xdg-open"))
|
||||
then
|
||||
(* ;; "Linux systems with xdg-utils installed ")
|
||||
|
||||
CMDPATH
|
||||
elseif (SETQ CMDPATH (ShellWhich "open"))
|
||||
then
|
||||
(* ;; " MacOS open")
|
||||
|
||||
CMDPATH
|
||||
else
|
||||
(* ;;
|
||||
" Out of ideas - just return a dummy function")
|
||||
|
||||
"true"])
|
||||
|
||||
(ShellOpen
|
||||
[LAMBDA (FilenameOrURL)
|
||||
|
||||
(* ;; "Open the file or URL using the generic %"opener%" for this machine via a shell call.")
|
||||
|
||||
(* ;; " If FilenameOrURL starts with %"http://%" or %"https://%" or %"file:///%", then we use (ShellBrowser) as")
|
||||
|
||||
(* ;; " the %"opener%" (which includes some browsers on a machine without a generic opener).")
|
||||
|
||||
(* ;;
|
||||
" Otherwise FilenameOrURL is assumed to be a filename and will be opened using (ShellOpener).")
|
||||
|
||||
(* ;; " Returns T is all goes well; returns an error string if all does not go well")
|
||||
|
||||
(RANDSET T)
|
||||
(SETQ FilenameOrURL (MKSTRING FilenameOrURL))
|
||||
(if (OR (EQ (STRPOS "http://" (L-CASE FilenameOrURL))
|
||||
1)
|
||||
(EQ (STRPOS "https://" (L-CASE FilenameOrURL))
|
||||
1)
|
||||
(EQ (STRPOS "file://" (L-CASE FilenameOrURL))
|
||||
1))
|
||||
then (LET ((BROWSER (ShellBrowser)))
|
||||
(if (LISTP BROWSER)
|
||||
then (CHAT 'SHELL NIL (CONCAT (CAR BROWSER)
|
||||
" '" URL "'"))
|
||||
else (ShellCommand (CONCAT BROWSER " '" URL "'"
|
||||
" >>/tmp/ShellBrowser-warnings-$$.txt")))
|
||||
T)
|
||||
else NIL])
|
||||
(if (NOT (STREQUAL BROWSER "true"))
|
||||
then (if (LISTP BROWSER)
|
||||
then (CHAT 'SHELL NIL (CONCAT (CAR BROWSER)
|
||||
" '" FilenameOrURL "'"))
|
||||
else (ShellCommand (CONCAT BROWSER " '" FilenameOrURL "'"
|
||||
" >>/tmp/ShellBrowser-warnings-$$.txt"))
|
||||
T)
|
||||
else (CONCAT "Unable to find a browser to open: " FilenameOrURL)))
|
||||
else
|
||||
(LET*
|
||||
((OPENER (ShellOpener))
|
||||
(FULLNAME (FULLNAME FilenameOrURL)))
|
||||
(if (NOT FULLNAME)
|
||||
then (CONCAT "File not found: " FilenameOrURL)
|
||||
elseif (STREQUAL OPENER "true")
|
||||
then (CONCAT "Unable to find a file opener to open: " FilenameOrURL)
|
||||
else (LET* ((VERSION.SPECIFIED (FILENAMEFIELD FilenameOrURL 'VERSION))
|
||||
(UNPACKED (UNPACKFILENAME.STRING FULLNAME))
|
||||
(NEWNAME (CONCAT (LISTGET UNPACKED 'NAME)
|
||||
"~"
|
||||
(LISTGET UNPACKED 'VERSION)
|
||||
"~"))
|
||||
(EXTENSION (LISTGET UNPACKED 'EXTENSION))
|
||||
[UNVERSIONED (LET (FN (UNPACKED (COPY UNPACKED)))
|
||||
(LISTPUT UNPACKED 'VERSION NIL)
|
||||
(LISTPUT UNPACKED 'HOST NIL)
|
||||
(SETQ FN (PACKFILENAME.STRING UNPACKED))
|
||||
(if (STREQUAL (SUBSTRING FN -1)
|
||||
".")
|
||||
then (SETQ FN (SUBSTRING UNIXFILE 1 -2)))
|
||||
(SETQ FN (SLASHIT FN]
|
||||
(UNVERSIONED.EXISTS (INFILEP (CONCAT "{UNIX}" UNVERSIONED)))
|
||||
(TMPDIR (CONCAT "/tmp/" (RAND 1000 9999)))
|
||||
(TARGETFILE.LISP (PACKFILENAME.STRING 'HOST "{UNIX}" 'DIRECTORY TMPDIR
|
||||
'NAME NEWNAME 'EXTENSION EXTENSION))
|
||||
(TARGETFILE.UNIX (SLASHIT (PACKFILENAME.STRING 'HOST NIL 'DIRECTORY TMPDIR
|
||||
'NAME NEWNAME 'EXTENSION EXTENSION)))
|
||||
(UNIXFILE NIL))
|
||||
(DECLARE (SPECVARS UNIXFILE))
|
||||
(if (OR VERSION.SPECIFIED (NOT UNVERSIONED.EXISTS))
|
||||
then (COPYFILE FULLNAME TARGETFILE.LISP)
|
||||
(SETQ UNIXFILE TARGETFILE.UNIX)
|
||||
else (SETQ UNIXFILE UNVERSIONED))
|
||||
(CL:WITH-OPEN-STREAM
|
||||
(SHELLSTREAM (OPENSTREAM (CONCAT "{CORE}SHELLOUT" (RAND 1000 9999))
|
||||
'BOTH))
|
||||
(ShellCommand (CONCAT OPENER " '" UNIXFILE "'"
|
||||
" >>/tmp/ShellOpener-warnings-$$.txt")
|
||||
SHELLSTREAM)
|
||||
(if (EQ (GETFILEPTR SHELLSTREAM)
|
||||
0)
|
||||
then T
|
||||
else (LET* ((OUTSTRING (ALLOCSTRING (GETFILEPTR SHELLSTREAM)
|
||||
" ")))
|
||||
(CL:WITH-OPEN-STREAM (STRINGSTREAM (OPENSTRINGSTREAM OUTSTRING
|
||||
'OUTPUT))
|
||||
(SETFILEPTR SHELLSTREAM 0)
|
||||
(CL:TAGBODY [SETFILEINFO SHELLSTREAM 'ENDOFSTREAMOP
|
||||
#'(CL:LAMBDA (s)
|
||||
(GO OUT]
|
||||
(CL:LOOP (PRINTCCODE (READCCODE SHELLSTREAM)
|
||||
STRINGSTREAM))
|
||||
OUT))
|
||||
OUTSTRING])
|
||||
|
||||
(PROCESS-COMMAND
|
||||
[LAMBDA (CMD) (* ; "Edited 17-Jul-2022 08:17 by rmk")
|
||||
|
||||
(* ;; "This sets up an asynchronous process and waits until it returns with an exit code. Typically 0 means success.")
|
||||
|
||||
(CL:WITH-OPEN-STREAM (PS (CREATE-PROCESS-STREAM CMD))
|
||||
(BIND CODE WHILE (EQ T (SETQ CODE (OR (SUBRCALL UNIX-HANDLECOMM 7 (fetch (STREAM F1)
|
||||
of PS))
|
||||
0))) DO (BLOCK) FINALLY (RETURN CODE])
|
||||
|
||||
(SLASHIT
|
||||
[LAMBDA (X LCASEDIRS NOHOST) (* ; "Edited 23-Sep-2023 15:27 by rmk")
|
||||
|
||||
(* ;; "It would also be nice to use the generic unpackfilename/packfilename tools. But packfilename sticks in brackets again, and sticks a dot on when removing the version.")
|
||||
|
||||
(* ;; "Perhaps this should be a per file-device operation that maps device names into the local file system.")
|
||||
|
||||
(* ;; "This is a first approximation to a utility that converts a filename X on a host whose files physically reside in the local Unix file system into the strings that shell commands can use to reference that file. For now, this just involves replacing directory brackets with /, removing the host, and perhaps lower-casing the directory. It probably should be extended to deal with version number translation, for now it just keeps the ; version. ")
|
||||
|
||||
(LET [LASTDIRPOS SLASHED (DIRPOS (ADD1 (OR (STRPOS "}" X)
|
||||
0]
|
||||
[SETQ SLASHED (CONCATCODES (for I C from DIRPOS while (SETQ C (NTHCHARCODE X I))
|
||||
collect (SELCHARQ C
|
||||
((< >)
|
||||
(SETQ LASTDIRPOS I)
|
||||
(CHARCODE /))
|
||||
(/ (SETQ LASTDIRPOS I)
|
||||
C)
|
||||
C]
|
||||
(CL:WHEN (AND LCASEDIRS LASTDIRPOS)
|
||||
(SETQ LASTDIRPOS (ADD1 (IDIFFERENCE LASTDIRPOS DIRPOS)))
|
||||
(SETQ SLASHED (CONCAT (L-CASE (SUBSTRING SLASHED 1 LASTDIRPOS))
|
||||
(OR (SUBSTRING SLASHED (ADD1 LASTDIRPOS))
|
||||
""))))
|
||||
(CL:IF (OR (EQ DIRPOS 1)
|
||||
NOHOST)
|
||||
SLASHED
|
||||
(CONCAT (SUBSTRING X 1 (SUB1 DIRPOS))
|
||||
SLASHED))])
|
||||
|
||||
(UNIX-FILE-NAME
|
||||
[LAMBDA (FILE ACCESS COPY) (* ; "Edited 1-Oct-2023 20:52 by rmk")
|
||||
|
||||
(* ;; "Tries to return the string that would reference FILE in a Unix shell, for the use of PROCESS-COMMAND and ShellCommand. If VERSION is 1, it assumes that the Unix file is doesn't have the Medley version convention. If FILE does not have a corresponding Unix name, COPY is non-NIL, and ACCESS is INPUT, FILE will be copied to a unix tmp file (with COPY in its name) and that name will be returned.")
|
||||
|
||||
(CL:WHEN (\GETSTREAM FILE ACCESS T)
|
||||
(SETQ FILE (OR (FULLNAME FILE)
|
||||
FILE))) (* ; "Might catch NODIRCORE")
|
||||
(CL:WHEN FILE
|
||||
(SETQ FILE (TRUEFILENAME FILE))
|
||||
(CL:UNLESS (STREAMP FILE)
|
||||
[SETQ FILE (\GETFILENAME FILE (SELECTQ ACCESS
|
||||
(OUTPUT 'NEW)
|
||||
(INPUT 'OLD)
|
||||
(NIL (SETQ ACCESS 'INPUT)
|
||||
'OLD)
|
||||
(\ILLEGAL.ARG ACCESS])
|
||||
[SELECTQ (FILENAMEFIELD FILE 'HOST)
|
||||
(UNIX [SUBSTRING FILE (ADD1 (CONSTANT (NCHARS "{UNIX}"])
|
||||
(DSK (LET [(VERSION (FILENAMEFIELD FILE 'VERSION]
|
||||
(SETQ FILE (SLASHIT (PACKFILENAME 'HOST NIL 'VERSION NIL 'BODY FILE)))
|
||||
(CL:IF (AND VERSION (IGREATERP VERSION 1))
|
||||
(CONCAT FILE (CL:IF (FILENAMEFIELD FILE 'EXTENSION)
|
||||
"."
|
||||
"")
|
||||
"~" VERSION "~")
|
||||
FILE)))
|
||||
(CL:WHEN (AND COPY (EQ ACCESS 'INPUT)
|
||||
FILE)
|
||||
(RESETLST
|
||||
(CL:WHEN (\GETSTREAM FILE 'INPUT T) (* ; "Hope is randaccess")
|
||||
[RESETSAVE (GETFILEPTR FILE)
|
||||
`(PROGN (SETFILEPTR ,FILE OLDVALUE])
|
||||
(COPYFILE FILE (CONCAT "{UNIX}/tmp/medley-" (L-CASE COPY)
|
||||
"-"
|
||||
(IDATE)
|
||||
"-"
|
||||
(RAND)
|
||||
(CL:IF (FILENAMEFIELD FILE 'EXTENSION)
|
||||
(CONCAT "." (FILENAMEFIELD FILE 'EXTENSION))
|
||||
"")))))])])
|
||||
)
|
||||
|
||||
(PUTPROPS UNIXUTILS FILETYPE CL:COMPILE-FILE)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (664 1037 (ShellCommand 664 . 1037)) (1039 1436 (ShellWhich 1039 . 1436)) (1437 4966 (
|
||||
ShellBrowser 1447 . 3970) (ShellBrowse 3972 . 4964)))))
|
||||
(FILEMAP (NIL (1146 1519 (ShellCommand 1146 . 1519)) (1521 1918 (ShellWhich 1521 . 1918)) (2008 16585
|
||||
(ShellBrowser 2018 . 3790) (ShellBrowse 3792 . 4477) (ShellOpener 4479 . 6167) (ShellOpen 6169 . 11324
|
||||
) (PROCESS-COMMAND 11326 . 11939) (SLASHIT 11941 . 13983) (UNIX-FILE-NAME 13985 . 16583)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -1,16 +1,13 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
(FILECREATED "30-Sep-2021 22:59:08"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>git-medley>library>lafite>LAFITE.;5 71956
|
||||
|
||||
changes to%: (FILES LAFITEDECLS)
|
||||
(FILECREATED "26-Feb-2024 20:10:22" {WMEDLEY}<library>lafite>LAFITE.;19 72156
|
||||
|
||||
previous date%: "24-Jun-2021 19:17:01"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>git-medley>library>lafite>LAFITE.;4)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS LAFITECOMS LAFITEFILES)
|
||||
|
||||
:PREVIOUS-DATE "24-Feb-2024 11:56:21" {WMEDLEY}<library>lafite>LAFITE.;18)
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1982-1989, 1993-1994, 2021 by Xerox Corporation and Bolt Beranek and Newman Inc..
|
||||
")
|
||||
|
||||
(PRETTYCOMPRINT LAFITECOMS)
|
||||
|
||||
@@ -86,29 +83,29 @@ Copyright (c) 1982-1989, 1993-1994, 2021 by Xerox Corporation and Bolt Beranek a
|
||||
\LAFITE.CLOSE.FOLDER)
|
||||
(FNS \LAFITE.DESCRIBE.FOLDER))
|
||||
(COMS (* ;
|
||||
"Make is easy to load new versions of Lafite")
|
||||
"Make is easy to load new versions of Lafite")
|
||||
(FNS LOAD-LAFITE)
|
||||
(VARS LAFITEFILES))
|
||||
[DECLARE%: DOEVAL@COMPILE DONTCOPY (FILES (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
(LOCALVARS . T)
|
||||
(GLOBALVARS TEDIT.DEFAULT.MENU LAFITEFILES *COMPILED-EXTENSIONS*)
|
||||
(P (CL:PROCLAIM '(CL:SPECIAL *LAFITE-LOGGING-IN*]
|
||||
(INITRECORDS MAILFOLDER LAFITEMSG)
|
||||
(SYSRECORDS MAILFOLDER LAFITEMSG)
|
||||
[COMS (FNS \LAFITE.GLOBAL.INIT)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY
|
||||
(FILES LAFITEBROWSE LAFITECOMMANDS LAFITEFOLDERS LAFITESEND LAFITEMAIL
|
||||
LAFITESORT TEDIT LAFITETEDIT LAFITEFIND ATTACHEDWINDOW MAILSCAVENGE)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY (FILES TEDIT ATTACHEDWINDOW)
|
||||
(FILES LAFITE-BROWSE LAFITE-COMMANDS LAFITE-FOLDERS LAFITE-SEND LAFITE-MAIL
|
||||
LAFITE-SORT LAFITE-TEDIT LAFITE-FIND LAFITE-MAILSCAVENGE)
|
||||
(P * (PROGN LAFITE.PROCLAMATIONS))
|
||||
(* ;
|
||||
"Proclaim user interface variables. Value is on LAFITEDECLS")
|
||||
"Proclaim user interface variables. Value is on LAFITE-DECLS")
|
||||
(P (\LAFITE.GLOBAL.INIT)
|
||||
(COND ((EQ MAKESYSNAME :LYRIC)
|
||||
(FILESLOAD (SYSLOAD)
|
||||
NSCHARPATCH)
|
||||
(* ;
|
||||
"Patch to horrid Lyric NS chars bug")
|
||||
"Patch to horrid Lyric NS chars bug")
|
||||
(MOVD? 'PROMPTFORWORD 'TTYINPROMPTFORWORD NIL T]
|
||||
(DECLARE%: DOEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA)
|
||||
(NLAML)
|
||||
@@ -116,7 +113,7 @@ Copyright (c) 1982-1989, 1993-1994, 2021 by Xerox Corporation and Bolt Beranek a
|
||||
|
||||
(RPAQQ LAFITEVERSION# 10)
|
||||
|
||||
(RPAQQ LAFITESYSTEMDATE "30-Sep-2021 22:59:08")
|
||||
(RPAQQ LAFITESYSTEMDATE "26-Feb-2024 20:10:22")
|
||||
(DEFINEQ
|
||||
|
||||
(LAFITE
|
||||
@@ -277,7 +274,7 @@ Mode affects SendMail only; mail is still retrieved in all modes.~]" (if \LAFITE
|
||||
(CHARWIDTH (CHARCODE "W")
|
||||
DEFAULTFONT))
|
||||
(* ;
|
||||
"Yes, user has not changed default to a variable width font")
|
||||
"Yes, user has not changed default to a variable width font")
|
||||
DEFAULTFONT)
|
||||
(T (FONTCREATE '(GACHA 10]
|
||||
(LAFITEHARDCOPYFONT LAFITEDISPLAYFONT)
|
||||
@@ -317,7 +314,7 @@ Mode affects SendMail only; mail is still retrieved in all modes.~]" (if \LAFITE
|
||||
(CHARWIDTH (CHARCODE "W")
|
||||
DEFAULTFONT))
|
||||
(* ;
|
||||
"Yes, user has not changed default to a variable width font")
|
||||
"Yes, user has not changed default to a variable width font")
|
||||
DEFAULTFONT)
|
||||
(T (FONTCREATE '(GACHA 10])
|
||||
|
||||
@@ -354,9 +351,9 @@ Mode affects SendMail only; mail is still retrieved in all modes.~]" (if \LAFITE
|
||||
(RPAQ? LAFITE.USE.ALL.MODES T)
|
||||
|
||||
(RPAQQ LAFITERANDOMGLOBALS ((UNSUPPLIEDFIELDSTR "---")
|
||||
(LAFITEBUSYWAITTIME 1000)
|
||||
(LAFITEITEMBUSYSHADE 43605)
|
||||
(LAFITEEOL "
|
||||
(LAFITEBUSYWAITTIME 1000)
|
||||
(LAFITEITEMBUSYSHADE 43605)
|
||||
(LAFITEEOL "
|
||||
")))
|
||||
|
||||
(RPAQ? UNSUPPLIEDFIELDSTR "---")
|
||||
@@ -394,13 +391,13 @@ Mode affects SendMail only; mail is still retrieved in all modes.~]" (if \LAFITE
|
||||
|
||||
(RPAQ HEARDMARK (CHARCODE @))
|
||||
|
||||
(RPAQQ LAFITECOMMANDMENUITEMS (("Browse" '\LAFITE.BROWSE
|
||||
"Browse a mail file; MIDDLE for subcommands")
|
||||
("Send Mail" '\LAFITE.MESSAGEFORM
|
||||
(RPAQQ LAFITECOMMANDMENUITEMS (("Browse" '\LAFITE.BROWSE "Browse a mail file; MIDDLE for subcommands"
|
||||
)
|
||||
("Send Mail" '\LAFITE.MESSAGEFORM
|
||||
"Open a message composition window; MIDDLE for choice of forms"
|
||||
)
|
||||
("Quit" '\LAFITE.QUIT
|
||||
"Update and close all mail files and stop Lafite")))
|
||||
)
|
||||
("Quit" '\LAFITE.QUIT
|
||||
"Update and close all mail files and stop Lafite")))
|
||||
|
||||
(RPAQQ LAFITEUPDATEMENUITEMS
|
||||
(("Do Hardcopy Only" '\LAFITE.HARDCOPYONLY.PROC
|
||||
@@ -435,7 +432,7 @@ Mode affects SendMail only; mail is still retrieved in all modes.~]" (if \LAFITE
|
||||
("Server trace" 'LAFITE.TOGGLE.SERVER.TRACE "Change setting of *NSMAIL-TRACE-SERVERS*")))
|
||||
|
||||
(RPAQQ ANOTHERFOLDERMENUITEM ("** Other Folder **" '%##ANOTHERFILE##
|
||||
"You will be asked to specify another mail filename"))
|
||||
"You will be asked to specify another mail filename"))
|
||||
|
||||
(RPAQ? LAFITESTATUSWINDOW )
|
||||
|
||||
@@ -622,17 +619,40 @@ Mode affects SendMail only; mail is still retrieved in all modes.~]" (if \LAFITE
|
||||
(DEFINEQ
|
||||
|
||||
(LOAD-LAFITE
|
||||
(LAMBDA (DIR SOURCEP) (* ; "Edited 3-May-89 18:39 by bvm") (* ;; "Load Lafite from a specified directory (or the dir where we find the first file). If SOURCEP true we load the sources PROP, else the compiled files SYSLOAD. When loading compiled, we only load files that are noted as already loaded, since those are the only ones that won't be automatically loaded by the FILES command in file LAFITE (which must have been loaded if this function is defined).") (SETQ DIR (MKLIST DIR)) (for FILE in (if SOURCEP then LAFITEFILES else (REMOVE (QUOTE LAFITEDECLS) LAFITEFILES)) bind F when (OR SOURCEP (GET FILE (QUOTE FILEDATES))) collect (if (SETQ F (if SOURCEP then (FINDFILE FILE T DIR) else (FINDFILE-WITH-EXTENSIONS FILE DIR *COMPILED-EXTENSIONS*))) then (SETQ F (LOAD F (COND ((NOT SOURCEP) (QUOTE SYSLOAD)) ((EQ F (QUOTE LAFITEDECLS)) T) (T (QUOTE PROP))))) (if (NULL DIR) then (* ; "Fix dir for subsequent loading") (SETQ DIR (LIST (PACKFILENAME.STRING (QUOTE NAME) NIL (QUOTE EXTENSION) NIL (QUOTE VERSION) NIL (QUOTE BODY) F)))) F else (CONCAT FILE " not found"))))
|
||||
)
|
||||
[LAMBDA (DIR SOURCEP) (* ; "Edited 23-Feb-2024 23:02 by rmk")
|
||||
(* ; "Edited 3-May-89 18:39 by bvm")
|
||||
|
||||
(* ;; "Load Lafite from a specified directory (or the dir where we find the first file). If SOURCEP true we load the sources PROP, else the compiled files SYSLOAD. When loading compiled, we only load files that are noted as already loaded, since those are the only ones that won't be automatically loaded by the FILES command in file LAFITE (which must have been loaded if this function is defined).")
|
||||
|
||||
(SETQ DIR (MKLIST DIR))
|
||||
(for FILE in (if SOURCEP
|
||||
then LAFITEFILES
|
||||
else (REMOVE 'LAFITE-DECLS LAFITEFILES)) bind F
|
||||
when (OR SOURCEP (GET FILE 'FILEDATES))
|
||||
collect (if (SETQ F (if SOURCEP
|
||||
then (FINDFILE FILE T DIR)
|
||||
else (FINDFILE-WITH-EXTENSIONS FILE DIR *COMPILED-EXTENSIONS*)))
|
||||
then [SETQ F (LOAD F (COND
|
||||
((NOT SOURCEP)
|
||||
'SYSLOAD)
|
||||
((EQ F 'LAFITE-DECLS)
|
||||
T)
|
||||
(T 'PROP]
|
||||
[if (NULL DIR)
|
||||
then (* ; "Fix dir for subsequent loading")
|
||||
(SETQ DIR (LIST (PACKFILENAME.STRING 'NAME NIL 'EXTENSION NIL
|
||||
'VERSION NIL 'BODY F]
|
||||
F
|
||||
else (CONCAT FILE " not found"])
|
||||
)
|
||||
|
||||
(RPAQQ LAFITEFILES (LAFITEDECLS LAFITEBROWSE LAFITECOMMANDS LAFITEFOLDERS LAFITEMAIL LAFITESEND
|
||||
LAFITESORT LAFITETEDIT NSMAIL OLDNSMAIL NEWNSMAIL LAFITEFIND
|
||||
MAILSCAVENGE LAFITE))
|
||||
(RPAQQ LAFITEFILES (LAFITE-DECLS LAFITE-BROWSE LAFITE-COMMANDS LAFITE-FOLDERS LAFITE-MAIL LAFITE-SEND
|
||||
LAFITE-SORT LAFITE-TEDIT LAFITE-NSMAIL OLDNSMAIL LAFITE-NEWNSMAIL
|
||||
LAFITE-FIND LAFITE-MAILSCAVENGE LAFITE))
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(FILESLOAD (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
@@ -743,81 +763,81 @@ Mode affects SendMail only; mail is still retrieved in all modes.~]" (if \LAFITE
|
||||
(ADDTOVAR SYSTEMRECLST
|
||||
|
||||
(DATATYPE MAILFOLDER ((BROWSERPROMPTDIRTY FLAG)
|
||||
(BROWSERPROMPTGREW FLAG)
|
||||
(FOLDERNEEDSUPDATE FLAG)
|
||||
(FOLDERNEEDSEXPUNGE FLAG)
|
||||
(FOLDERBEINGUPDATED FLAG)
|
||||
(BROWSERSTATUS BITS 3)
|
||||
(FULLFOLDERNAME POINTER)
|
||||
(FOLDEROKTOSHRINK FLAG)
|
||||
(FOLDERGETSMAIL FLAG)
|
||||
(FOLDEROUTOFORDER FLAG)
|
||||
(NIL 5 FLAG)
|
||||
(VERSIONLESSFOLDERNAME POINTER)
|
||||
(SHORTFOLDERNAME POINTER)
|
||||
(FOLDERSTREAM POINTER)
|
||||
(MESSAGEDESCRIPTORS POINTER)
|
||||
(FOLDERLOCK POINTER)
|
||||
(%#OFMESSAGES WORD)
|
||||
(TOCLASTMESSAGE# WORD)
|
||||
(BROWSERFONTHEIGHT WORD)
|
||||
(BROWSERFONTASCENT WORD)
|
||||
(BROWSERFONTDESCENT WORD)
|
||||
(BROWSERMAXXPOS WORD)
|
||||
(ORDINALXPOS WORD)
|
||||
(DATEXPOS WORD)
|
||||
(FROMXPOS WORD)
|
||||
(FROMMAXXPOS WORD)
|
||||
(SUBJECTXPOS WORD)
|
||||
(BROWSERDIGITWIDTH WORD)
|
||||
(FIRSTSELECTEDMESSAGE WORD)
|
||||
(LASTSELECTEDMESSAGE WORD)
|
||||
(FIRSTCHANGEDMESSAGE WORD)
|
||||
(CURRENTPROMPTLINE WORD)
|
||||
(CURRENTDISPLAYEDSTREAM POINTER)
|
||||
(BROWSEREXTENT POINTER)
|
||||
(BROWSERORIGIN POINTER)
|
||||
(FOLDERDISPLAYREGION POINTER)
|
||||
(BROWSERWINDOW POINTER)
|
||||
(BROWSERMENU POINTER)
|
||||
(BROWSERMENUWINDOW POINTER)
|
||||
(BROWSERPROMPTWINDOW POINTER)
|
||||
(ORIGINALBROWSERTITLE POINTER)
|
||||
(FOLDERDISPLAYWINDOWS POINTER)
|
||||
(FOLDEREOFPTR POINTER)
|
||||
(DEFAULTMOVETOFILE POINTER)
|
||||
(CURRENTDISPLAYEDMESSAGE POINTER)
|
||||
(BROWSERUPDATEFROMHERE POINTER)
|
||||
(BROWSERLAYOUT POINTER)
|
||||
(FOLDERCREATIONDATE POINTER)
|
||||
(HARDCOPYMESSAGES POINTER)
|
||||
(HARDCOPYSTREAM POINTER)))
|
||||
(BROWSERPROMPTGREW FLAG)
|
||||
(FOLDERNEEDSUPDATE FLAG)
|
||||
(FOLDERNEEDSEXPUNGE FLAG)
|
||||
(FOLDERBEINGUPDATED FLAG)
|
||||
(BROWSERSTATUS BITS 3)
|
||||
(FULLFOLDERNAME POINTER)
|
||||
(FOLDEROKTOSHRINK FLAG)
|
||||
(FOLDERGETSMAIL FLAG)
|
||||
(FOLDEROUTOFORDER FLAG)
|
||||
(NIL 5 FLAG)
|
||||
(VERSIONLESSFOLDERNAME POINTER)
|
||||
(SHORTFOLDERNAME POINTER)
|
||||
(FOLDERSTREAM POINTER)
|
||||
(MESSAGEDESCRIPTORS POINTER)
|
||||
(FOLDERLOCK POINTER)
|
||||
(%#OFMESSAGES WORD)
|
||||
(TOCLASTMESSAGE# WORD)
|
||||
(BROWSERFONTHEIGHT WORD)
|
||||
(BROWSERFONTASCENT WORD)
|
||||
(BROWSERFONTDESCENT WORD)
|
||||
(BROWSERMAXXPOS WORD)
|
||||
(ORDINALXPOS WORD)
|
||||
(DATEXPOS WORD)
|
||||
(FROMXPOS WORD)
|
||||
(FROMMAXXPOS WORD)
|
||||
(SUBJECTXPOS WORD)
|
||||
(BROWSERDIGITWIDTH WORD)
|
||||
(FIRSTSELECTEDMESSAGE WORD)
|
||||
(LASTSELECTEDMESSAGE WORD)
|
||||
(FIRSTCHANGEDMESSAGE WORD)
|
||||
(CURRENTPROMPTLINE WORD)
|
||||
(CURRENTDISPLAYEDSTREAM POINTER)
|
||||
(BROWSEREXTENT POINTER)
|
||||
(BROWSERORIGIN POINTER)
|
||||
(FOLDERDISPLAYREGION POINTER)
|
||||
(BROWSERWINDOW POINTER)
|
||||
(BROWSERMENU POINTER)
|
||||
(BROWSERMENUWINDOW POINTER)
|
||||
(BROWSERPROMPTWINDOW POINTER)
|
||||
(ORIGINALBROWSERTITLE POINTER)
|
||||
(FOLDERDISPLAYWINDOWS POINTER)
|
||||
(FOLDEREOFPTR POINTER)
|
||||
(DEFAULTMOVETOFILE POINTER)
|
||||
(CURRENTDISPLAYEDMESSAGE POINTER)
|
||||
(BROWSERUPDATEFROMHERE POINTER)
|
||||
(BROWSERLAYOUT POINTER)
|
||||
(FOLDERCREATIONDATE POINTER)
|
||||
(HARDCOPYMESSAGES POINTER)
|
||||
(HARDCOPYSTREAM POINTER)))
|
||||
|
||||
(DATATYPE LAFITEMSG ((PARSED? FLAG)
|
||||
(DELETED? FLAG)
|
||||
(SEEN? FLAG)
|
||||
(DATEKNOWN? FLAG)
|
||||
(DATEFETCHED? FLAG)
|
||||
(MODEBITS BITS 3)
|
||||
(MARKCHAR BYTE)
|
||||
(%# WORD)
|
||||
(BEGIN POINTER)
|
||||
(MESSAGELENGTH POINTER)
|
||||
(STAMPLENGTH WORD)
|
||||
(TOCLENGTH WORD)
|
||||
(MESSAGELENGTHCHANGED? FLAG)
|
||||
(SELECTED? FLAG)
|
||||
(MSGFROMMECHECKED? FLAG)
|
||||
(MSGFROMMETRUTH FLAG)
|
||||
(DATE POINTER)
|
||||
(NIL FLAG)
|
||||
(MARKSCHANGEDINFILE? FLAG)
|
||||
(MARKSCHANGEDINTOC? FLAG)
|
||||
(NIL FLAG)
|
||||
(FROM POINTER)
|
||||
(SUBJECT POINTER)
|
||||
(TO POINTER)
|
||||
(IDATE FIXP)))
|
||||
(DELETED? FLAG)
|
||||
(SEEN? FLAG)
|
||||
(DATEKNOWN? FLAG)
|
||||
(DATEFETCHED? FLAG)
|
||||
(MODEBITS BITS 3)
|
||||
(MARKCHAR BYTE)
|
||||
(%# WORD)
|
||||
(BEGIN POINTER)
|
||||
(MESSAGELENGTH POINTER)
|
||||
(STAMPLENGTH WORD)
|
||||
(TOCLENGTH WORD)
|
||||
(MESSAGELENGTHCHANGED? FLAG)
|
||||
(SELECTED? FLAG)
|
||||
(MSGFROMMECHECKED? FLAG)
|
||||
(MSGFROMMETRUTH FLAG)
|
||||
(DATE POINTER)
|
||||
(NIL FLAG)
|
||||
(MARKSCHANGEDINFILE? FLAG)
|
||||
(MARKSCHANGEDINTOC? FLAG)
|
||||
(NIL FLAG)
|
||||
(FROM POINTER)
|
||||
(SUBJECT POINTER)
|
||||
(TO POINTER)
|
||||
(IDATE FIXP)))
|
||||
)
|
||||
(DEFINEQ
|
||||
|
||||
@@ -827,8 +847,11 @@ Mode affects SendMail only; mail is still retrieved in all modes.~]" (if \LAFITE
|
||||
)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY
|
||||
|
||||
(FILESLOAD LAFITEBROWSE LAFITECOMMANDS LAFITEFOLDERS LAFITESEND LAFITEMAIL LAFITESORT TEDIT
|
||||
LAFITETEDIT LAFITEFIND ATTACHEDWINDOW MAILSCAVENGE)
|
||||
(FILESLOAD TEDIT ATTACHEDWINDOW)
|
||||
|
||||
|
||||
(FILESLOAD LAFITE-BROWSE LAFITE-COMMANDS LAFITE-FOLDERS LAFITE-SEND LAFITE-MAIL LAFITE-SORT
|
||||
LAFITE-TEDIT LAFITE-FIND LAFITE-MAILSCAVENGE)
|
||||
|
||||
|
||||
(CL:PROCLAIM '(GLOBAL ANSWERMARK BROWSERMARKXPOSITION DEFAULTMAILFOLDERNAME
|
||||
@@ -864,7 +887,7 @@ Mode affects SendMail only; mail is still retrieved in all modes.~]" (if \LAFITE
|
||||
((EQ MAKESYSNAME :LYRIC)
|
||||
(FILESLOAD (SYSLOAD)
|
||||
NSCHARPATCH) (* ;
|
||||
"Patch to horrid Lyric NS chars bug")
|
||||
"Patch to horrid Lyric NS chars bug")
|
||||
(MOVD? 'PROMPTFORWORD 'TTYINPROMPTFORWORD NIL T)))
|
||||
)
|
||||
(DECLARE%: DOEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS
|
||||
@@ -875,31 +898,29 @@ Mode affects SendMail only; mail is still retrieved in all modes.~]" (if \LAFITE
|
||||
|
||||
(ADDTOVAR LAMA LAFITE)
|
||||
)
|
||||
(PUTPROPS LAFITE COPYRIGHT ("Xerox Corporation and Bolt Beranek and Newman Inc." 1982 1983 1984 1985
|
||||
1986 1987 1988 1989 1993 1994 2021))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (7104 22150 (LAFITE 7114 . 8425) (LAFITE.ON.FROM.BACKGROUND 8427 . 8798) (\LAFITE.OFF
|
||||
8800 . 9184) (\LAFITE.START.PROC 9186 . 10962) (LAFITE.COMPUTE.CACHED.VARS 10964 . 13666) (
|
||||
\LAFITE.PROCESS 13668 . 14034) (\LAFITE.START.ABORT 14036 . 14228) (\LAFITE.QUIT 14230 . 14472) (
|
||||
\LAFITE.RESTART 14474 . 14607) (\LAFITE.SUBQUIT 14609 . 15907) (\LAFITE.QUIT.PROC 15909 . 18645) (
|
||||
\LAFITEDEFAULTHOST&DIR 18647 . 19457) (LAFITEDEFAULTHOST&DIR 19459 . 19629) (MAKELAFITECOMMANDWINDOW
|
||||
19631 . 21270) (EXTRACTMENUCOMMAND 21272 . 21520) (DOMAINLAFITECOMMAND 21522 . 21671) (
|
||||
LAFITE.TOGGLE.SERVER.TRACE 21673 . 22148)) (22225 25193 (LAFITEMODE 22235 . 22715) (\LAFITE.INFER.MODE
|
||||
22717 . 23070) (\LAFITE.SHOW.MODE 23072 . 23309) (\LAFITE.MODE.TITLE 23311 . 23596) (
|
||||
LAFITE.SHOW.MODE.P 23598 . 23839) (LAFITE.ALL.MODES.P 23841 . 24184) (SET.LAFITE.MODE.INTERACTIVELY
|
||||
24186 . 24768) (\LAFITE.COMPUTE.MODE.COMMANDS 24770 . 25191)) (26043 27799 (\LAFITE.LOGIN 26053 .
|
||||
26435) (\LAFITE.LOGIN.NORESTART 26437 . 26543) (LAFITE.PROMPT.FOR.LOGIN 26545 . 27564) (
|
||||
\LAFITE.REAUTHENTICATE 27566 . 27797)) (35310 38752 (LAFITE.AROUNDEXIT 35320 . 35858) (
|
||||
\LAFITE.MARK.FOLDERS.OBSOLETE 35860 . 36776) (\LAFITE.CHECK.FOLDERS 36778 . 37177) (
|
||||
\LAFITE.ASSURE.FOLDER.READY 37179 . 37589) (\LAFITE.AFTERLOGIN 37591 . 38750)) (38784 41722 (
|
||||
LA.RESETSHADE 38794 . 39172) (LA.MENU.ITEM 39174 . 39592) (NTHMESSAGE 39594 . 39677) (
|
||||
\LAFITE.MAKE.MSGARRAY 39679 . 40109) (\LAFITE.ADDMESSAGES.TO.ARRAY 40111 . 40692) (
|
||||
\MAILFOLDER.DEFPRINT 40694 . 40941) (\LAFITEMSG.DEFPRINT 40943 . 41105) (LA.POSITION.FROM.REGION 41107
|
||||
. 41584) (MAILFOLDERBUSY 41586 . 41720)) (41900 58288 (TOCFILENAME 41910 . 42341) (DELETEMAILFOLDER
|
||||
42343 . 42863) (\LAFITE.OPEN.FOLDER 42865 . 47480) (\LAFITE.REPORT.FILE.WONT.OPEN 47482 . 48206) (
|
||||
\LAFITE.FOLDER.CHANGED 48208 . 50612) (\LAFITE.REBROWSE.FOLDER 50614 . 53579) (
|
||||
\LAFITE.FOLDER.CHANGED.MENU 53581 . 54504) (\LAFITE.SET.FOLDER.STREAM 54506 . 55200) (
|
||||
\LAFITE.OPENSTREAM 55202 . 55741) (\LAFITE.CREATE.MENU 55743 . 56096) (\LAFITE.EOF 56098 . 57440) (
|
||||
\LAFITE.CLOSE.FOLDER 57442 . 58286)) (58289 58873 (\LAFITE.DESCRIBE.FOLDER 58299 . 58871)) (58934
|
||||
60040 (LOAD-LAFITE 58944 . 60038)) (67751 69028 (\LAFITE.GLOBAL.INIT 67761 . 69026)))))
|
||||
(FILEMAP (NIL (6983 22029 (LAFITE 6993 . 8304) (LAFITE.ON.FROM.BACKGROUND 8306 . 8677) (\LAFITE.OFF
|
||||
8679 . 9063) (\LAFITE.START.PROC 9065 . 10841) (LAFITE.COMPUTE.CACHED.VARS 10843 . 13545) (
|
||||
\LAFITE.PROCESS 13547 . 13913) (\LAFITE.START.ABORT 13915 . 14107) (\LAFITE.QUIT 14109 . 14351) (
|
||||
\LAFITE.RESTART 14353 . 14486) (\LAFITE.SUBQUIT 14488 . 15786) (\LAFITE.QUIT.PROC 15788 . 18524) (
|
||||
\LAFITEDEFAULTHOST&DIR 18526 . 19336) (LAFITEDEFAULTHOST&DIR 19338 . 19508) (MAKELAFITECOMMANDWINDOW
|
||||
19510 . 21149) (EXTRACTMENUCOMMAND 21151 . 21399) (DOMAINLAFITECOMMAND 21401 . 21550) (
|
||||
LAFITE.TOGGLE.SERVER.TRACE 21552 . 22027)) (22104 25072 (LAFITEMODE 22114 . 22594) (\LAFITE.INFER.MODE
|
||||
22596 . 22949) (\LAFITE.SHOW.MODE 22951 . 23188) (\LAFITE.MODE.TITLE 23190 . 23475) (
|
||||
LAFITE.SHOW.MODE.P 23477 . 23718) (LAFITE.ALL.MODES.P 23720 . 24063) (SET.LAFITE.MODE.INTERACTIVELY
|
||||
24065 . 24647) (\LAFITE.COMPUTE.MODE.COMMANDS 24649 . 25070)) (25922 27678 (\LAFITE.LOGIN 25932 .
|
||||
26314) (\LAFITE.LOGIN.NORESTART 26316 . 26422) (LAFITE.PROMPT.FOR.LOGIN 26424 . 27443) (
|
||||
\LAFITE.REAUTHENTICATE 27445 . 27676)) (35157 38599 (LAFITE.AROUNDEXIT 35167 . 35705) (
|
||||
\LAFITE.MARK.FOLDERS.OBSOLETE 35707 . 36623) (\LAFITE.CHECK.FOLDERS 36625 . 37024) (
|
||||
\LAFITE.ASSURE.FOLDER.READY 37026 . 37436) (\LAFITE.AFTERLOGIN 37438 . 38597)) (38631 41569 (
|
||||
LA.RESETSHADE 38641 . 39019) (LA.MENU.ITEM 39021 . 39439) (NTHMESSAGE 39441 . 39524) (
|
||||
\LAFITE.MAKE.MSGARRAY 39526 . 39956) (\LAFITE.ADDMESSAGES.TO.ARRAY 39958 . 40539) (
|
||||
\MAILFOLDER.DEFPRINT 40541 . 40788) (\LAFITEMSG.DEFPRINT 40790 . 40952) (LA.POSITION.FROM.REGION 40954
|
||||
. 41431) (MAILFOLDERBUSY 41433 . 41567)) (41747 58135 (TOCFILENAME 41757 . 42188) (DELETEMAILFOLDER
|
||||
42190 . 42710) (\LAFITE.OPEN.FOLDER 42712 . 47327) (\LAFITE.REPORT.FILE.WONT.OPEN 47329 . 48053) (
|
||||
\LAFITE.FOLDER.CHANGED 48055 . 50459) (\LAFITE.REBROWSE.FOLDER 50461 . 53426) (
|
||||
\LAFITE.FOLDER.CHANGED.MENU 53428 . 54351) (\LAFITE.SET.FOLDER.STREAM 54353 . 55047) (
|
||||
\LAFITE.OPENSTREAM 55049 . 55588) (\LAFITE.CREATE.MENU 55590 . 55943) (\LAFITE.EOF 55945 . 57287) (
|
||||
\LAFITE.CLOSE.FOLDER 57289 . 58133)) (58136 58720 (\LAFITE.DESCRIBE.FOLDER 58146 . 58718)) (58781
|
||||
60618 (LOAD-LAFITE 58791 . 60616)) (68059 69336 (\LAFITE.GLOBAL.INIT 68069 . 69334)))))
|
||||
STOP
|
||||
|
||||
@@ -1,30 +1,47 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
(FILECREATED "11-Nov-88 19:37:06" |{NEWTON:EUROPARC:RX}<LOVSTRAND>LISP>MEDLEY>LAFITEABBREV.;1| 5987
|
||||
|
||||
changes to%: (VARS LAFITEABBREVCOMS)
|
||||
(FILECREATED "23-Feb-2024 23:14:08" {WMEDLEY}<library>lafite>LAFITE-ABBREV.;1 6164
|
||||
|
||||
previous date%: "22-Sep-88 13:06:40" |{NEWTON:EUROPARC:RX}<LOVSTRAND>LISP>LYRIC>LAFITEABBREV.;7|
|
||||
)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:PREVIOUS-DATE "11-Nov-88 19:37:06" {WMEDLEY}<library>lafite>LAFITEABBREV.;1)
|
||||
|
||||
|
||||
(* "
|
||||
Copyright (c) 1988, 1901 by Xerox Corporation. All rights reserved.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-ABBREVCOMS)
|
||||
|
||||
(PRETTYCOMPRINT LAFITEABBREVCOMS)
|
||||
(RPAQQ LAFITE-ABBREVCOMS
|
||||
((APPENDVARS (LAFITE.ABBREVS ("*@*:*" "*@*:*" :OUT)
|
||||
("*@*" "%"*%%*%":GV:Xerox" :IN)
|
||||
("*@*" "*%%*:GV:Xerox")
|
||||
("*@*.*" "*%%*:*:Xerox" :IN)
|
||||
("*.pa" "*:PA:Xerox")))
|
||||
(INITVARS (LAFITE.ABBREV.DIRECTIONS :BOTH)
|
||||
(LAFITE.ABBREV.MOVE.GAZE.RIGHT T)
|
||||
(LAFITE.ABBREV.TRACE))
|
||||
(FUNCTIONS SAFEUPPERCHARCODE)
|
||||
(FNS LAFITE.ABBREV LAFITE.ABBREV.MATCH)
|
||||
(ADVISE (NSNAME.TO.STRING :IN \NSMAIL.PRINT.NAMES)
|
||||
(PARSE.NSNAME :IN \NSMAIL.PARSE1))
|
||||
(GLOBALVARS LAFITE.ABBREVS LAFITE.ABBREV.DIRECTIONS LAFITE.ABBREV.MOVE.GAZE.RIGHT
|
||||
LAFITE.ABBREV.TRACE)))
|
||||
|
||||
(RPAQQ LAFITEABBREVCOMS ((APPENDVARS (LAFITE.ABBREVS ("*@*:*" "*@*:*" :OUT) ("*@*" "%"*%%*%":GV:Xerox" :IN) ("*@*" "*%%*:GV:Xerox") ("*@*.*" "*%%*:*:Xerox" :IN) ("*.pa" "*:PA:Xerox"))) (INITVARS (LAFITE.ABBREV.DIRECTIONS :BOTH) (LAFITE.ABBREV.MOVE.GAZE.RIGHT T) (LAFITE.ABBREV.TRACE)) (FUNCTIONS SAFEUPPERCHARCODE) (FNS LAFITE.ABBREV LAFITE.ABBREV.MATCH) (ADVISE (NSNAME.TO.STRING :IN \NSMAIL.PRINT.NAMES) (PARSE.NSNAME :IN \NSMAIL.PARSE1)) (GLOBALVARS LAFITE.ABBREVS LAFITE.ABBREV.DIRECTIONS LAFITE.ABBREV.MOVE.GAZE.RIGHT LAFITE.ABBREV.TRACE)))
|
||||
(APPENDTOVAR LAFITE.ABBREVS ("*@*:*" "*@*:*" :OUT)
|
||||
("*@*" "%"*%%*%":GV:Xerox" :IN)
|
||||
("*@*" "*%%*:GV:Xerox")
|
||||
("*@*.*" "*%%*:*:Xerox" :IN)
|
||||
("*.pa" "*:PA:Xerox"))
|
||||
|
||||
(APPENDTOVAR LAFITE.ABBREVS ("*@*:*" "*@*:*" :OUT) ("*@*" "%"*%%*%":GV:Xerox" :IN) ("*@*" "*%%*:GV:Xerox")
|
||||
("*@*.*" "*%%*:*:Xerox" :IN) ("*.pa" "*:PA:Xerox"))
|
||||
(RPAQ? LAFITE.ABBREV.DIRECTIONS :BOTH)
|
||||
|
||||
(RPAQ? LAFITE.ABBREV.DIRECTIONS :BOTH)
|
||||
(RPAQ? LAFITE.ABBREV.MOVE.GAZE.RIGHT T)
|
||||
|
||||
(RPAQ? LAFITE.ABBREV.MOVE.GAZE.RIGHT T)
|
||||
(RPAQ? LAFITE.ABBREV.TRACE )
|
||||
|
||||
(RPAQ? LAFITE.ABBREV.TRACE)
|
||||
|
||||
(DEFMACRO SAFEUPPERCHARCODE (CODE) (BQUOTE (if (AND (NUMBERP (\, CODE)) (LEQ (\, CODE) 255)) THEN (GETCASEARRAY UPPERCASEARRAY (\, CODE)) ELSE (\, CODE))))
|
||||
(DEFMACRO SAFEUPPERCHARCODE (CODE)
|
||||
`(if (AND (NUMBERP ,CODE)
|
||||
(LEQ ,CODE 255))
|
||||
THEN (GETCASEARRAY UPPERCASEARRAY ,CODE)
|
||||
ELSE ,CODE))
|
||||
(DEFINEQ
|
||||
|
||||
(LAFITE.ABBREV
|
||||
@@ -36,16 +53,22 @@ Copyright (c) 1988, 1901 by Xerox Corporation. All rights reserved.
|
||||
)
|
||||
)
|
||||
|
||||
(XCL:REINSTALL-ADVICE (QUOTE (NSNAME.TO.STRING :IN \NSMAIL.PRINT.NAMES)) :AFTER (QUOTE ((:LAST (SETQ !VALUE (LAFITE.ABBREV !VALUE :IN))))))
|
||||
[XCL:REINSTALL-ADVICE '(NSNAME.TO.STRING :IN \NSMAIL.PRINT.NAMES)
|
||||
:AFTER
|
||||
'((:LAST (SETQ !VALUE (LAFITE.ABBREV !VALUE :IN]
|
||||
|
||||
(XCL:REINSTALL-ADVICE (QUOTE (PARSE.NSNAME :IN \NSMAIL.PARSE1)) :BEFORE (QUOTE ((:LAST (SETQ NAME (LAFITE.ABBREV NAME :OUT))))))
|
||||
[XCL:REINSTALL-ADVICE '(PARSE.NSNAME :IN \NSMAIL.PARSE1)
|
||||
:BEFORE
|
||||
'((:LAST (SETQ NAME (LAFITE.ABBREV NAME :OUT]
|
||||
|
||||
(READVISE (NSNAME.TO.STRING :IN \NSMAIL.PRINT.NAMES) (PARSE.NSNAME :IN \NSMAIL.PARSE1))
|
||||
(READVISE (NSNAME.TO.STRING :IN \NSMAIL.PRINT.NAMES)
|
||||
(PARSE.NSNAME :IN \NSMAIL.PARSE1))
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS LAFITE.ABBREVS LAFITE.ABBREV.DIRECTIONS LAFITE.ABBREV.MOVE.GAZE.RIGHT LAFITE.ABBREV.TRACE)
|
||||
(GLOBALVARS LAFITE.ABBREVS LAFITE.ABBREV.DIRECTIONS LAFITE.ABBREV.MOVE.GAZE.RIGHT LAFITE.ABBREV.TRACE
|
||||
)
|
||||
)
|
||||
(PUTPROPS LAFITEABBREV COPYRIGHT ("Xerox Corporation" 1988 1901))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (1425 5397 (LAFITE.ABBREV 1435 . 3321) (LAFITE.ABBREV.MATCH 3323 . 5395)))))
|
||||
(FILEMAP (NIL (1475 1652 (SAFEUPPERCHARCODE 1475 . 1652)) (1653 5625 (LAFITE.ABBREV 1663 . 3549) (
|
||||
LAFITE.ABBREV.MATCH 3551 . 5623)))))
|
||||
STOP
|
||||
@@ -1,18 +1,17 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
(FILECREATED "30-Sep-2021 22:58:57"
|
||||
{DSK}<USERS>KAPLAN>LOCAL>MEDLEY3.5>GIT-MEDLEY>LIBRARY>LAFITE>LAFITEBROWSE.;1 141883
|
||||
|
||||
previous date%: "19-Feb-2001 09:26:50"
|
||||
{DSK}<USERS>KAPLAN>LOCAL>MEDLEY3.5>GIT-MEDLEY>LIBRARY>LAFITE>LAFITEBROWSE.;1)
|
||||
(FILECREATED "23-Feb-2024 22:24:01" {WMEDLEY}<library>lafite>LAFITE-BROWSE.;2 141738
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS LAFITE-BROWSECOMS)
|
||||
|
||||
:PREVIOUS-DATE "23-Feb-2024 21:54:27" {WMEDLEY}<library>lafite>LAFITE-BROWSE.;1)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1984-1989, 1999, 2001, 2021 by Xerox Corporation.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-BROWSECOMS)
|
||||
|
||||
(PRETTYCOMPRINT LAFITEBROWSECOMS)
|
||||
|
||||
(RPAQQ LAFITEBROWSECOMS
|
||||
(RPAQQ LAFITE-BROWSECOMS
|
||||
[(COMS (* ; "BROWSE")
|
||||
(FNS \LAFITE.BROWSE \LAFITE.SUBBROWSE \LAFITE.BROWSE.PROC \LAFITE.BROWSE.FORGET
|
||||
LAFITE.BROWSE.FOLDER \LAFITE.PREPARE.BROWSER \LAFITE.MAYBE.OPEN.FOLDER
|
||||
@@ -78,7 +77,7 @@ Copyright (c) 1984-1989, 1999, 2001, 2021 by Xerox Corporation.
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY (CONSTANTS * TOCSTATES)
|
||||
[P (CL:PROCLAIM '(CL:SPECIAL \CURRENTDISPLAYLINE]
|
||||
(FILES (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
(LOCALVARS . T))
|
||||
(DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA)
|
||||
(NLAML)
|
||||
@@ -93,12 +92,13 @@ Copyright (c) 1984-1989, 1999, 2001, 2021 by Xerox Corporation.
|
||||
(DEFINEQ
|
||||
|
||||
(\LAFITE.BROWSE
|
||||
[LAMBDA (ITEM MENU BUTTON) (* ; "Edited 17-Sep-87 19:13 by bvm:")
|
||||
[LAMBDA (ITEM MENU BUTTON) (* ; "Edited 23-Feb-2024 21:53 by rmk")
|
||||
(* ; "Edited 17-Sep-87 19:13 by bvm:")
|
||||
|
||||
(* ;;; "Function called by the Browse button on main Lafite window.")
|
||||
|
||||
(LET [(SUBP (EQ BUTTON 'MIDDLE] (* ;
|
||||
"Pass the :confirm option to LAFITE.BROWSE.FOLDER to require confirmation on folder creation.")
|
||||
"Pass the :confirm option to LAFITE.BROWSE.FOLDER to require confirmation on folder creation.")
|
||||
(\LAFITE.PROCESS `[,(COND
|
||||
(SUBP (FUNCTION \LAFITE.SUBBROWSE))
|
||||
(T (FUNCTION \LAFITE.BROWSE.PROC)))
|
||||
@@ -106,7 +106,7 @@ Copyright (c) 1984-1989, 1999, 2001, 2021 by Xerox Corporation.
|
||||
',MENU
|
||||
,@(AND (NOT SUBP)
|
||||
'(NIL '(:CONFIRM]
|
||||
'LAFITEBROWSE])
|
||||
'LAFITE-BROWSE])
|
||||
|
||||
(\LAFITE.SUBBROWSE
|
||||
[LAMBDA (ITEM MENU) (* ; "Edited 3-Sep-87 18:00 by bvm:")
|
||||
@@ -633,8 +633,7 @@ Copyright (c) 1984-1989, 1999, 2001, 2021 by Xerox Corporation.
|
||||
MAINW])
|
||||
)
|
||||
|
||||
(RPAQQ LAFITE.DUMMY.SHADE
|
||||
#*(16 16)@L@HA@@FALD@@DJ@AHF@@@JDH@NFD@@EDD@EDJ@EDJD@@LD@@HD@@HDD@@DJ@@DL)
|
||||
(RPAQQ LAFITE.DUMMY.SHADE #*(16 16)@L@HA@@FALD@@DJ@AHF@@@JDH@NFD@@EDD@EDJ@EDJD@@LD@@HD@@HDD@@DJ@@DL)
|
||||
|
||||
(RPAQQ LAFITE.DUMMY.HALF.SHADE
|
||||
#*(16 16)@H@@A@@D@@D@@DB@A@D@@@HDH@DB@@@DDD@A@B@DDHD@@D@@@@D@@H@D@@DJ@@@@)
|
||||
@@ -2134,8 +2133,8 @@ Copyright (c) 1984-1989, 1999, 2001, 2021 by Xerox Corporation.
|
||||
)
|
||||
|
||||
(RPAQQ LAFITE.FOLDER.ICON (#*(100 72)@OOOOOOOO@@@@@@@@@@@@@@@@@@@AOOOOOOOOH@@@@@@@@@@@@@@@@@@C@@@@@@@@L@@@@@@@@@@@@@@@@@@F@@@@@@@@F@@@@@@@@@@@@@@@@@@L@DA@@@@@C@@@@@@@@@@@@@@@@@@L@FC@@@@@C@@@@@@@@@@@@@@@@@@L@EE@HGB@C@@@@@@@@@@@@@@@@@@L@EEADBB@C@@@@@@@@@@@@@@@@@@L@DIBBBB@COOOOOOOOOOOOOOL@@@L@DACNBB@COOOOOOOOOOOOOOL@@@L@DABBGCL@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@L@@@LOOOOOOOOOOOOOOOOOOOOOOOO@@@LOOOOOOOOOOOOOOOOOOOOOOOO@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@LL@@@@@@@@@@@@@@@@@@@@@@C@@@FL@@@@@@@@@@@@@@@@@@@@@@C@@@CL@@@@@@@@@@@@@@@@@@@@@@C@@@AOOOOOOOOOOOOOOOOOOOOOOOO@@@@OOOOOOOOOOOOOOOOOOOOOOOO@@@
|
||||
#*(100 72)@OOOOOOOO@@@@@@@@@@@@@@@@@@@AOOOOOOOOH@@@@@@@@@@@@@@@@@@COOOOOOOOL@@@@@@@@@@@@@@@@@@GOOOOOOOON@@@@@@@@@@@@@@@@@@OOOOOOOOOO@@@@@@@@@@@@@@@@@@OOOOOOOOOO@@@@@@@@@@@@@@@@@@OOOOOOOOOO@@@@@@@@@@@@@@@@@@OOOOOOOOOO@@@@@@@@@@@@@@@@@@OOOOOOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@GOOOOOOOOOOOOOOOOOOOOOOOO@@@COOOOOOOOOOOOOOOOOOOOOOOO@@@AOOOOOOOOOOOOOOOOOOOOOOOO@@@@OOOOOOOOOOOOOOOOOOOOOOOO@@@
|
||||
(8 4 88 51)))
|
||||
#*(100 72)@OOOOOOOO@@@@@@@@@@@@@@@@@@@AOOOOOOOOH@@@@@@@@@@@@@@@@@@COOOOOOOOL@@@@@@@@@@@@@@@@@@GOOOOOOOON@@@@@@@@@@@@@@@@@@OOOOOOOOOO@@@@@@@@@@@@@@@@@@OOOOOOOOOO@@@@@@@@@@@@@@@@@@OOOOOOOOOO@@@@@@@@@@@@@@@@@@OOOOOOOOOO@@@@@@@@@@@@@@@@@@OOOOOOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@OOOOOOOOOOOOOOOOOOOOOOOOO@@@GOOOOOOOOOOOOOOOOOOOOOOOO@@@COOOOOOOOOOOOOOOOOOOOOOOO@@@AOOOOOOOOOOOOOOOOOOOOOOOO@@@@OOOOOOOOOOOOOOOOOOOOOOOO@@@
|
||||
(8 4 88 51)))
|
||||
|
||||
(RPAQ? LAFITEFROMFRACTION 0.3)
|
||||
|
||||
@@ -2191,7 +2190,7 @@ and delete the file(s) containing it."
|
||||
"Specify which subgroups should also appear at top level."])
|
||||
|
||||
(RPAQQ LAFITEBROWSERICONMENUITEMS (("Get Mail" '\LAFITE.GETMAIL.FROM.ICON
|
||||
"Open this window and retrieve new mail into it")))
|
||||
"Open this window and retrieve new mail into it")))
|
||||
|
||||
(RPAQ? LAFITESUBBROWSEMENU )
|
||||
|
||||
@@ -2206,10 +2205,10 @@ and delete the file(s) containing it."
|
||||
(ADDTOVAR LAFITEMENUVARS LAFITESUBBROWSEMENU LAFITEBROWSERICONMENU LAFITEEXTRAMENU)
|
||||
|
||||
(ADDTOVAR LAFITEEXTRAMENUITEMS ("Describe Folder" '\LAFITE.DESCRIBE.FOLDER
|
||||
"Display some relevant info about this folder"
|
||||
(SUBITEMS ("Inspect Folder" 'INSPECT
|
||||
"Display some relevant info about this folder"
|
||||
(SUBITEMS ("Inspect Folder" 'INSPECT
|
||||
"Inspect the MAILFOLDER data structure associated with this browser"
|
||||
))))
|
||||
))))
|
||||
|
||||
(RPAQQ BROWSERMARKXPOSITION 8)
|
||||
|
||||
@@ -2224,13 +2223,13 @@ and delete the file(s) containing it."
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(RPAQQ TOCSTATES ((TS.IDLE 0)
|
||||
(TS.REPLACING 1)
|
||||
(TS.ADDING 2)
|
||||
(TS.REMOVING 3)
|
||||
(TS.EXTENDING.HI 4)
|
||||
(TS.EXTENDING.LO 5)
|
||||
(TS.SHRINKING.HI 6)
|
||||
(TS.SHRINKING.LO 7)))
|
||||
(TS.REPLACING 1)
|
||||
(TS.ADDING 2)
|
||||
(TS.REMOVING 3)
|
||||
(TS.EXTENDING.HI 4)
|
||||
(TS.EXTENDING.LO 5)
|
||||
(TS.SHRINKING.HI 6)
|
||||
(TS.SHRINKING.LO 7)))
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(RPAQQ TS.IDLE 0)
|
||||
@@ -2265,7 +2264,7 @@ and delete the file(s) containing it."
|
||||
|
||||
|
||||
(FILESLOAD (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
@@ -2280,36 +2279,35 @@ and delete the file(s) containing it."
|
||||
|
||||
(ADDTOVAR LAMA LAB.MOUSECONFIRM LAB.FORMAT LAB.PROMPTPRINT)
|
||||
)
|
||||
(PUTPROPS LAFITEBROWSE COPYRIGHT ("Xerox Corporation" 1984 1985 1986 1987 1988 1989 1999 2001 2021))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (5768 31473 (\LAFITE.BROWSE 5778 . 6525) (\LAFITE.SUBBROWSE 6527 . 6864) (
|
||||
\LAFITE.BROWSE.PROC 6866 . 7959) (\LAFITE.BROWSE.FORGET 7961 . 8507) (LAFITE.BROWSE.FOLDER 8509 .
|
||||
10444) (\LAFITE.PREPARE.BROWSER 10446 . 12612) (\LAFITE.MAYBE.OPEN.FOLDER 12614 . 16056) (
|
||||
LAB.LOADFOLDER 16058 . 16553) (LAB.DISPLAYFOLDER 16555 . 18126) (LAB.MAKE.INITIAL.SELECTION 18128 .
|
||||
19364) (LAB.CREATEWINDOW 19366 . 27821) (LAB.TITLE.STRING 27823 . 29588) (LAB.COMMANDFN 29590 . 30120)
|
||||
(LAB.DO.COMMAND 30122 . 31099) (LAB.ASSURE.SELECTIONS 31101 . 31471)) (31474 41387 (
|
||||
BUILD.LAFITE.LAYOUTS 31484 . 37742) (\LAFITE.LAYOUT.FROM.WINDOW 37744 . 40224) (
|
||||
\LAFITE.MAKE.DUMMY.WINDOWS 40226 . 41385)) (41813 67265 (LAB.SETUP 41823 . 48008) (LAB.BUTTONEVENTFN
|
||||
48010 . 48540) (LAB.DO.UNLESS.BUSY 48542 . 49038) (LOADMAILFOLDER 49040 . 50323) (LAFITE.OBTAIN.FOLDER
|
||||
50325 . 59227) (\LAFITE.FIND.EXISTING.FOLDER 59229 . 60076) (\LAFITE.CONFLICTING.OLD.FOLDER 60078 .
|
||||
61249) (LAB.REPAINTFN 61251 . 61876) (LAB.SCROLLFN 61878 . 62466) (LAB.RESHAPEFN 62468 . 63761) (
|
||||
LAB.CLOSEFN 63763 . 63932) (LAB.SHRINKFN 63934 . 64098) (LAB.CLOSE/SHRINK 64100 . 65685) (LAB.EXPANDFN
|
||||
65687 . 66931) (LAFITEEXTRABROWSERCOMMANDFN 66933 . 67263)) (67300 85005 (LAB.SELECTMESSAGE 67310 .
|
||||
80668) (LAB.CHANGEMARK 80670 . 82271) (LA.READ.NEW.MARK 82273 . 84056) (YPOS.TO.MESSAGE# 84058 . 84666
|
||||
) (MESSAGE#.TO.YPOS 84668 . 85003)) (85006 93673 (LA.CONSIDERRANGE 85016 . 85700) (LA.DECONSIDERRANGE
|
||||
85702 . 86118) (LA.RECONSIDERRANGE 86120 . 86824) (LA.SELECTRANGE 86826 . 88162) (LA.DESELECTRANGE
|
||||
88164 . 90242) (LAB.FIND.SELECTED.MSG 90244 . 90621) (LAB.REV.FIND.SELECTED.MSG 90623 . 91108) (
|
||||
LA.UNDOSELECTION 91110 . 91404) (LA.VERIFY.SELECTION 91406 . 93671)) (93674 100537 (
|
||||
LAB.COPYBUTTONEVENTFN 93684 . 98889) (LAB.SHOW.COPY.SELECTION 98891 . 100535)) (100744 108238 (
|
||||
LAB.PROMPTPRINT 100754 . 100933) (LAB.FORMAT 100935 . 101372) (LAB.MOUSECONFIRM 101374 . 101837) (
|
||||
LAB.PRINT.TO.PROMPTWINDOW 101839 . 104988) (LAB.PAGEFULLFN 104990 . 106042) (
|
||||
\LAFITE.MAYBE.CLEAR.PROMPT 106044 . 108236)) (108462 129133 (PRINTMESSAGESUMMARY 108472 . 113229) (
|
||||
FIRSTVISIBLEMESSAGE 113231 . 114251) (LASTVISIBLEMESSAGE 114253 . 115442) (LAB.DISPLAYLINES 115444 .
|
||||
117686) (LAB.EXPOSEMESSAGE 117688 . 118795) (LAB.SELECTED.MESSAGES 118797 . 119059) (
|
||||
UNSELECTALLMESSAGES 119061 . 119547) (SELECTMESSAGE 119549 . 119841) (LAB.GO.TO.MESSAGE 119843 .
|
||||
121152) (MARKMESSAGE 121154 . 122201) (LAB.MARKS.CHANGED 122203 . 123010) (LA.SHOW.MARK 123012 .
|
||||
123657) (LA.INVERT.MARK.BOX 123659 . 124228) (LA.BLT.MARK.BOX 124230 . 124736) (LA.SHOW.DELETION
|
||||
124738 . 125642) (LA.SHOW.SELECTION 125644 . 126208) (SEENMESSAGE 126210 . 126996) (DELETEMESSAGE
|
||||
126998 . 127406) (UNDELETEMESSAGE 127408 . 128287) (LAB.SET.EXPUNGEABILITY 128289 . 129131)) (129370
|
||||
132578 (LAB.ICONFN 129380 . 131073) (LAB.ICON.BUTTONEVENTFN 131075 . 132576)))))
|
||||
(FILEMAP (NIL (5688 31509 (\LAFITE.BROWSE 5698 . 6561) (\LAFITE.SUBBROWSE 6563 . 6900) (
|
||||
\LAFITE.BROWSE.PROC 6902 . 7995) (\LAFITE.BROWSE.FORGET 7997 . 8543) (LAFITE.BROWSE.FOLDER 8545 .
|
||||
10480) (\LAFITE.PREPARE.BROWSER 10482 . 12648) (\LAFITE.MAYBE.OPEN.FOLDER 12650 . 16092) (
|
||||
LAB.LOADFOLDER 16094 . 16589) (LAB.DISPLAYFOLDER 16591 . 18162) (LAB.MAKE.INITIAL.SELECTION 18164 .
|
||||
19400) (LAB.CREATEWINDOW 19402 . 27857) (LAB.TITLE.STRING 27859 . 29624) (LAB.COMMANDFN 29626 . 30156)
|
||||
(LAB.DO.COMMAND 30158 . 31135) (LAB.ASSURE.SELECTIONS 31137 . 31507)) (31510 41423 (
|
||||
BUILD.LAFITE.LAYOUTS 31520 . 37778) (\LAFITE.LAYOUT.FROM.WINDOW 37780 . 40260) (
|
||||
\LAFITE.MAKE.DUMMY.WINDOWS 40262 . 41421)) (41820 67272 (LAB.SETUP 41830 . 48015) (LAB.BUTTONEVENTFN
|
||||
48017 . 48547) (LAB.DO.UNLESS.BUSY 48549 . 49045) (LOADMAILFOLDER 49047 . 50330) (LAFITE.OBTAIN.FOLDER
|
||||
50332 . 59234) (\LAFITE.FIND.EXISTING.FOLDER 59236 . 60083) (\LAFITE.CONFLICTING.OLD.FOLDER 60085 .
|
||||
61256) (LAB.REPAINTFN 61258 . 61883) (LAB.SCROLLFN 61885 . 62473) (LAB.RESHAPEFN 62475 . 63768) (
|
||||
LAB.CLOSEFN 63770 . 63939) (LAB.SHRINKFN 63941 . 64105) (LAB.CLOSE/SHRINK 64107 . 65692) (LAB.EXPANDFN
|
||||
65694 . 66938) (LAFITEEXTRABROWSERCOMMANDFN 66940 . 67270)) (67307 85012 (LAB.SELECTMESSAGE 67317 .
|
||||
80675) (LAB.CHANGEMARK 80677 . 82278) (LA.READ.NEW.MARK 82280 . 84063) (YPOS.TO.MESSAGE# 84065 . 84673
|
||||
) (MESSAGE#.TO.YPOS 84675 . 85010)) (85013 93680 (LA.CONSIDERRANGE 85023 . 85707) (LA.DECONSIDERRANGE
|
||||
85709 . 86125) (LA.RECONSIDERRANGE 86127 . 86831) (LA.SELECTRANGE 86833 . 88169) (LA.DESELECTRANGE
|
||||
88171 . 90249) (LAB.FIND.SELECTED.MSG 90251 . 90628) (LAB.REV.FIND.SELECTED.MSG 90630 . 91115) (
|
||||
LA.UNDOSELECTION 91117 . 91411) (LA.VERIFY.SELECTION 91413 . 93678)) (93681 100544 (
|
||||
LAB.COPYBUTTONEVENTFN 93691 . 98896) (LAB.SHOW.COPY.SELECTION 98898 . 100542)) (100751 108245 (
|
||||
LAB.PROMPTPRINT 100761 . 100940) (LAB.FORMAT 100942 . 101379) (LAB.MOUSECONFIRM 101381 . 101844) (
|
||||
LAB.PRINT.TO.PROMPTWINDOW 101846 . 104995) (LAB.PAGEFULLFN 104997 . 106049) (
|
||||
\LAFITE.MAYBE.CLEAR.PROMPT 106051 . 108243)) (108469 129140 (PRINTMESSAGESUMMARY 108479 . 113236) (
|
||||
FIRSTVISIBLEMESSAGE 113238 . 114258) (LASTVISIBLEMESSAGE 114260 . 115449) (LAB.DISPLAYLINES 115451 .
|
||||
117693) (LAB.EXPOSEMESSAGE 117695 . 118802) (LAB.SELECTED.MESSAGES 118804 . 119066) (
|
||||
UNSELECTALLMESSAGES 119068 . 119554) (SELECTMESSAGE 119556 . 119848) (LAB.GO.TO.MESSAGE 119850 .
|
||||
121159) (MARKMESSAGE 121161 . 122208) (LAB.MARKS.CHANGED 122210 . 123017) (LA.SHOW.MARK 123019 .
|
||||
123664) (LA.INVERT.MARK.BOX 123666 . 124235) (LA.BLT.MARK.BOX 124237 . 124743) (LA.SHOW.DELETION
|
||||
124745 . 125649) (LA.SHOW.SELECTION 125651 . 126215) (SEENMESSAGE 126217 . 127003) (DELETEMESSAGE
|
||||
127005 . 127413) (UNDELETEMESSAGE 127415 . 128294) (LAB.SET.EXPUNGEABILITY 128296 . 129138)) (129377
|
||||
132585 (LAB.ICONFN 129387 . 131080) (LAB.ICON.BUTTONEVENTFN 131082 . 132583)))))
|
||||
STOP
|
||||
Binary file not shown.
@@ -1,22 +1,17 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED " 7-Feb-2022 12:04:09"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>my-medley>library>lafite>LAFITECOMMANDS.;2 164626
|
||||
(FILECREATED "23-Feb-2024 22:24:01" {WMEDLEY}<library>lafite>LAFITE-COMMANDS.;2 164484
|
||||
|
||||
:CHANGES-TO (FILES LAFITEDECLS)
|
||||
(FNS \LAFITE.HARDCOPY.PROC \LAFITE.HARDCOPY.HEADERS)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:PREVIOUS-DATE "30-Sep-2021 22:58:57"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>my-medley>library>lafite>LAFITECOMMANDS.;1)
|
||||
:CHANGES-TO (VARS LAFITE-COMMANDSCOMS)
|
||||
|
||||
:PREVIOUS-DATE "23-Feb-2024 21:58:18" {WMEDLEY}<library>lafite>LAFITE-COMMANDS.;1)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1988-1989, 1992-1993, 1999, 2021 by Xerox Corporation.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-COMMANDSCOMS)
|
||||
|
||||
(PRETTYCOMPRINT LAFITECOMMANDSCOMS)
|
||||
|
||||
(RPAQQ LAFITECOMMANDSCOMS
|
||||
(RPAQQ LAFITE-COMMANDSCOMS
|
||||
[
|
||||
(* ;; "Handling of the main Lafite browser commands")
|
||||
|
||||
@@ -107,7 +102,7 @@ Copyright (c) 1988-1989, 1992-1993, 1999, 2021 by Xerox Corporation.
|
||||
(COMS (* ; "Obsolete")
|
||||
(INITVARS (LAFITEDISPLAYREGION (CREATEREGION 375 25 600 335]
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY (FILES (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
(LOCALVARS . T))
|
||||
(DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA)
|
||||
(NLAML)
|
||||
@@ -235,7 +230,8 @@ Copyright (c) 1988-1989, 1992-1993, 1999, 2021 by Xerox Corporation.
|
||||
LAST#])
|
||||
|
||||
(MESSAGEDISPLAYER
|
||||
[LAMBDA (MAILFOLDER TEXTFILE TITLE NEWWINDOWFLG) (* ; "Edited 24-Jun-99 15:34 by rmk:")
|
||||
[LAMBDA (MAILFOLDER TEXTFILE TITLE NEWWINDOWFLG) (* ; "Edited 14-Jan-2024 16:33 by rmk")
|
||||
(* ; "Edited 24-Jun-99 15:34 by rmk:")
|
||||
(* ; "Edited 24-Jun-99 15:32 by rmk:")
|
||||
(* ; "Edited 24-Jun-99 15:32 by rmk:")
|
||||
(* ; "Edited 6-Aug-93 18:48 by bvm")
|
||||
@@ -251,25 +247,23 @@ Copyright (c) 1988-1989, 1992-1993, 1999, 2021 by Xerox Corporation.
|
||||
(* ;; "WINDOWPROPS for when we finally give TEdit a window: READONLY in order to avoid TEdit's odd temptation to display an ugly caret at the start and prevent mouse actions from yielding %"NewEditProcess%" menu; PROMPTWINDOW to inhibit attaching a prompt window. Due to a TEdit bug, you can't give the PROMPTWINDOW prop when opening without a window or it will try to make the symbol DON'T be the promptwindow later on.")
|
||||
|
||||
(if (AND \LAPARSE.DONT.DISPLAY.HEADERS (NEQ EOF 0)
|
||||
(SETQ FILTERED (LAFITE.NEW.PARSE.HEADER TEXTFILE \LAPARSE.DONT.DISPLAY.HEADERS
|
||||
0)))
|
||||
then (* ;
|
||||
"We will filter some headers out, so put * in title to show this")
|
||||
(SETQ TITLE (CONCAT "*" TITLE)))
|
||||
(SETQ FILTERED (LAFITE.NEW.PARSE.HEADER TEXTFILE \LAPARSE.DONT.DISPLAY.HEADERS 0)))
|
||||
then (* ;
|
||||
"We will filter some headers out, so put * in title to show this")
|
||||
(SETQ TITLE (CONCAT "*" TITLE)))
|
||||
[COND
|
||||
((AND (NOT NEWWINDOWFLG)
|
||||
(SETQ DISPLAYWINDOW (CAR CURRENTWINDOWS)))
|
||||
(MAPC (WINDOWPROP DISPLAYWINDOW 'EXTRAWINDOWS NIL)
|
||||
(FUNCTION CLOSEW)) (* ;
|
||||
"Get rid of extra windows produced by attachments")
|
||||
"Get rid of extra windows produced by attachments")
|
||||
(CLEARW DISPLAYWINDOW)
|
||||
(WINDOWPROP DISPLAYWINDOW 'TITLE TITLE))
|
||||
(T (SETQ DISPLAYWINDOW (CREATEW (COND
|
||||
[(AND (NOT NEWWINDOWFLG)
|
||||
(PROGN (* ;
|
||||
"This says where we'd like the primary window to be.")
|
||||
(fetch (MAILFOLDER
|
||||
FOLDERDISPLAYREGION)
|
||||
"This says where we'd like the primary window to be.")
|
||||
(fetch (MAILFOLDER FOLDERDISPLAYREGION)
|
||||
of MAILFOLDER]
|
||||
(LAFITE.DISPLAY.SIZE
|
||||
(* ; "Global default")
|
||||
@@ -283,23 +277,23 @@ Copyright (c) 1988-1989, 1992-1993, 1999, 2021 by Xerox Corporation.
|
||||
[(NOT CURRENTWINDOWS)
|
||||
(replace (MAILFOLDER FOLDERDISPLAYWINDOWS) of MAILFOLDER
|
||||
with (if NEWWINDOWFLG
|
||||
then (* ;
|
||||
"not primary, even though no window previously open")
|
||||
(LIST NIL DISPLAYWINDOW)
|
||||
else (LIST DISPLAYWINDOW]
|
||||
then (* ;
|
||||
"not primary, even though no window previously open")
|
||||
(LIST NIL DISPLAYWINDOW)
|
||||
else (LIST DISPLAYWINDOW]
|
||||
[NEWWINDOWFLG (RPLACD CURRENTWINDOWS (CONS DISPLAYWINDOW (CDR CURRENTWINDOWS]
|
||||
(T (* ;
|
||||
"DIsplaying the primary window for the first time when there are already secondary windows.")
|
||||
"DIsplaying the primary window for the first time when there are already secondary windows.")
|
||||
(RPLACA CURRENTWINDOWS DISPLAYWINDOW] (* ; "Now let TEDIT display it")
|
||||
[COND
|
||||
((EQ EOF 0)
|
||||
(LAB.PROMPTPRINT MAILFOLDER "Message is empty"))
|
||||
(T [LET (WINDOW)
|
||||
(if (NOT FILTERED)
|
||||
then (* ;
|
||||
"Go ahead and display it right off. ")
|
||||
(SETQ PROPS (NCONC PROPS WINDOWPROPS))
|
||||
(SETQ WINDOW DISPLAYWINDOW))
|
||||
then (* ;
|
||||
"Go ahead and display it right off. ")
|
||||
(SETQ PROPS (NCONC PROPS WINDOWPROPS))
|
||||
(SETQ WINDOW DISPLAYWINDOW))
|
||||
(SETQ TEXTSTREAM (OR (CAR (NLSETQ (OPENTEXTSTREAM TEXTFILE WINDOW NIL NIL PROPS))
|
||||
)
|
||||
(PROGN (LAB.PROMPTPRINT MAILFOLDER T
|
||||
@@ -309,34 +303,36 @@ Copyright (c) 1988-1989, 1992-1993, 1999, 2021 by Xerox Corporation.
|
||||
(LIST* 'CLEARGET T PROPS]
|
||||
(if FILTERED
|
||||
then (if (NOT (= EOF (GETEOFPTR TEXTSTREAM)))
|
||||
then (* ;
|
||||
"rats, there may have been nschars in the header, so parse it now more carefully")
|
||||
(SETQ FILTERED (LAFITE.NEW.PARSE.HEADER TEXTSTREAM
|
||||
\LAPARSE.DONT.DISPLAY.HEADERS 0)))
|
||||
(\LAFITE.HIDE.HEADERS TEXTSTREAM FILTERED)
|
||||
then (* ;
|
||||
"rats, there may have been nschars in the header, so parse it now more carefully")
|
||||
(SETQ FILTERED (LAFITE.NEW.PARSE.HEADER TEXTSTREAM
|
||||
\LAPARSE.DONT.DISPLAY.HEADERS 0)))
|
||||
(\LAFITE.HIDE.HEADERS TEXTSTREAM FILTERED)
|
||||
(* ;
|
||||
"Now we can display it without a major glitch")
|
||||
(OPENTEXTSTREAM TEXTSTREAM DISPLAYWINDOW NIL NIL WINDOWPROPS)
|
||||
(TEXTPROP TEXTSTREAM 'FILTERED FILTERED)
|
||||
"Now we can display it without a major glitch")
|
||||
(OPENTEXTSTREAM TEXTSTREAM DISPLAYWINDOW NIL NIL WINDOWPROPS)
|
||||
(TEXTPROP TEXTSTREAM 'FILTERED FILTERED)
|
||||
(* ;
|
||||
"Remember what's invisible, so we can easily undo it")
|
||||
)
|
||||
"Remember what's invisible, so we can easily undo it")
|
||||
)
|
||||
(COND
|
||||
(LAFITEENDOFMESSAGESTR (* ;
|
||||
"Add %"End of message%" token. Have to take away READONLY for a moment here...")
|
||||
"Add %"End of message%" token. Have to take away READONLY for a moment here...")
|
||||
(TEXTPROP TEXTSTREAM 'READONLY NIL)
|
||||
[SETFILEPTR TEXTSTREAM (SUB1 (SETQ EOF (GETEOFPTR TEXTSTREAM]
|
||||
(COND
|
||||
((NEQ (BIN TEXTSTREAM)
|
||||
(CHARCODE CR)) (* ;
|
||||
"Message doesn't end in CR, so add one before inserting end of message str")
|
||||
(CHARCODE EOL)) (* ;
|
||||
"Message doesn't end in EOL, so add one before inserting end of message str")
|
||||
(TEDIT.INSERT TEXTSTREAM LAFITEEOL (ADD1 (add EOF 1))
|
||||
NIL T)))
|
||||
(TEDIT.INSERT TEXTSTREAM LAFITEENDOFMESSAGESTR (ADD1 EOF)
|
||||
LAFITEENDOFMESSAGEFONT T)
|
||||
(TEXTPROP TEXTSTREAM 'READONLY T)
|
||||
(TEDIT.SETSEL TEXTSTREAM 1 0)
|
||||
(\CARET.DOWN) (* ; "Patch around TEdit bug")
|
||||
(TEXTPROP TEXTSTREAM 'DIRTY NIL)
|
||||
(AND NIL (\CARET.DOWN)) (* ;
|
||||
"Patch around TEdit bug--probably fixed now")
|
||||
]
|
||||
DISPLAYWINDOW])
|
||||
|
||||
@@ -2534,7 +2530,7 @@ Copyright (c) 1988-1989, 1992-1993, 1999, 2021 by Xerox Corporation.
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(FILESLOAD (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
@@ -2549,39 +2545,38 @@ Copyright (c) 1988-1989, 1992-1993, 1999, 2021 by Xerox Corporation.
|
||||
|
||||
(ADDTOVAR LAMA LAFITE.HARDCOPY.MESSAGES)
|
||||
)
|
||||
(PUTPROPS LAFITECOMMANDS COPYRIGHT ("Xerox Corporation" 1988 1989 1992 1993 1999 2021))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (7934 27602 (\LAFITE.DISPLAY 7944 . 9649) (\LAFITE.DO.DISPLAY 9651 . 13816) (
|
||||
SELECTMESSAGETODISPLAY 13818 . 16186) (MESSAGEDISPLAYER 16188 . 23604) (LA.COPY.MESSAGE.TEXT 23606 .
|
||||
24360) (\LAFITE.CLOSE.DISPLAYWINDOWS 24362 . 25956) (\LAFITE.CLOSE.DISPLAYER 25958 . 27600)) (27603
|
||||
36195 (\LAFITE.UNHIDE.HEADERS 27613 . 28703) (\LAFITE.HIDE.HEADERS 28705 . 29358) (
|
||||
\LAFITE.REHIDE.HEADERS 29360 . 30396) (LAFITE.EAT.UNDESIRABLE.FIELD 30398 . 31157) (LAFITE.EAT.GVGV
|
||||
31159 . 32320) (\LAFITE.HARDCOPY.FROM.DISPLAY 32322 . 35841) (LAFITE.HARDCOPY.TAB.WIDTH 35843 . 36193)
|
||||
) (36196 44499 (\LAFITE.SET.LOOKS.FROM.MENU 36206 . 36383) (\LAFITE.SET.DEFAULT.LOOKS 36385 . 36576) (
|
||||
\LAFITE.SET.FIXED.LOOKS 36578 . 36770) (LAFITE.SET.LOOKS 36772 . 41229) (LAFITE.SET.TAB.LOOKS 41231 .
|
||||
41942) (LAFITE.SET.PARA.SEPARATION 41944 . 42152) (LAFITE.SET.LOWER.CASE 42154 . 43005) (
|
||||
LAFITE.SUBSTITUTE.VP.EOL 43007 . 44497)) (46416 54744 (LAFITE.DELETE.MESSAGES 46426 . 47476) (
|
||||
\LAFITE.DELETE 47478 . 48665) (DISPLAYAFTERDELETE 48667 . 53393) (\LAFITE.SELECT.NEXT 53395 . 54033) (
|
||||
\LAFITE.UNDELETE 54035 . 54742)) (54766 69261 (LAFITE.MOVE.MESSAGES 54776 . 55423) (\COERCE.TO.MSGLST
|
||||
55425 . 56183) (\LAFITE.MOVETO 56185 . 60129) (\LAFITE.COPYTO 60131 . 60547) (\LAFITE.MOVETO.PROC
|
||||
60549 . 61819) (\LAFITE.MOVE.MESSAGES.INTERNAL 61821 . 69259)) (69287 77839 (\LAFITE.ENABLE.MOVE.MENU
|
||||
69297 . 70339) (\LAFITE.ADD.TO.MOVE.MENU 70341 . 71357) (\LAFITE.UPDATE.MOVE.MENU 71359 . 75999) (
|
||||
\LAFITE.RESTORE.MOVE.MENU 76001 . 76677) (\LAFITE.HANDLE.AUTO.MOVE 76679 . 77837)) (78695 96179 (
|
||||
\LAFITE.UPDATE 78705 . 84338) (\LAFITE.EXPUNGE.PROC 84340 . 85145) (\LAFITE.UPDATE.PROC 85147 . 86230)
|
||||
(\LAFITE.HARDCOPYONLY.PROC 86232 . 86674) (LAB.CHOOSE.UPDATE.MENU 86676 . 87457) (
|
||||
LAB.CREATE.UPDATE.MENU 87459 . 89358) (LAB.UPDATE.NEEDED? 89360 . 90930) (\LAFITE.START.UPDATE 90932
|
||||
. 91964) (LAB.START.COMMAND 91966 . 92816) (\LAFITE.FINISH.UPDATE 92818 . 95071) (
|
||||
\LAFITE.CLOSE.OTHER.FOLDERS 95073 . 96177)) (96180 130974 (LAB.FLUSHWINDOW 96190 . 97869) (
|
||||
LAB.APPENDMESSAGES 97871 . 101033) (\LAFITE.COMPACT.FOLDER 101035 . 105199) (\LAFITE.COMPACT.FOLDER1
|
||||
105201 . 121240) (\LAFITE.COMPACT.FOLDER2 121242 . 125956) (\LAFITE.COMPACT.EXTRA 125958 . 128273) (
|
||||
\LAFITE.INVALIDATE.TOC 128275 . 128968) (\LAFITE.RENAMEFILE 128970 . 129440) (SMART-RENAMEFILEP 129442
|
||||
. 130002) (LA.OPENTEMPFILE 130004 . 130972)) (130975 144317 (\LAFITE.UPDATE.FOLDER 130985 . 132962) (
|
||||
\LAFITE.UPDATE.CONTENTS 132964 . 133681) (\LAFITE.UPDATE.CONTENTS1 133683 . 138537) (WRITETOCENTRY
|
||||
138539 . 141657) (WRITETOCMARKBYTES 141659 . 141901) (WRITEFOLDERMARKBYTES 141903 . 144315)) (144343
|
||||
163318 (LAFITE.HARDCOPY.MESSAGES 144353 . 144813) (\LAFITE.HARDCOPY 144815 . 145150) (
|
||||
\LAFITE.HARDCOPY.PROC 145152 . 148630) (\LAFITE.HARDCOPY.HEADERS 148632 . 153961) (
|
||||
\LAFITE.MARK.HARDCOPIED 153963 . 155673) (\LAFITE.TRANSMIT.HARDCOPY 155675 . 157265) (
|
||||
\LAFITE.HARDCOPY.BODIES 157267 . 158509) (\LAFITE.APPEND.MESSAGE.BODY 158511 . 160619) (
|
||||
\LAFITE.DO.PENDING.HARDCOPY 160621 . 161696) (\LAFITE.CANCEL.HARDCOPY 161698 . 162414) (
|
||||
\LAFITE.CLEAR.HARDCOPY.STATE 162416 . 163316)))))
|
||||
(FILEMAP (NIL (7743 27547 (\LAFITE.DISPLAY 7753 . 9458) (\LAFITE.DO.DISPLAY 9460 . 13625) (
|
||||
SELECTMESSAGETODISPLAY 13627 . 15995) (MESSAGEDISPLAYER 15997 . 23549) (LA.COPY.MESSAGE.TEXT 23551 .
|
||||
24305) (\LAFITE.CLOSE.DISPLAYWINDOWS 24307 . 25901) (\LAFITE.CLOSE.DISPLAYER 25903 . 27545)) (27548
|
||||
36140 (\LAFITE.UNHIDE.HEADERS 27558 . 28648) (\LAFITE.HIDE.HEADERS 28650 . 29303) (
|
||||
\LAFITE.REHIDE.HEADERS 29305 . 30341) (LAFITE.EAT.UNDESIRABLE.FIELD 30343 . 31102) (LAFITE.EAT.GVGV
|
||||
31104 . 32265) (\LAFITE.HARDCOPY.FROM.DISPLAY 32267 . 35786) (LAFITE.HARDCOPY.TAB.WIDTH 35788 . 36138)
|
||||
) (36141 44444 (\LAFITE.SET.LOOKS.FROM.MENU 36151 . 36328) (\LAFITE.SET.DEFAULT.LOOKS 36330 . 36521) (
|
||||
\LAFITE.SET.FIXED.LOOKS 36523 . 36715) (LAFITE.SET.LOOKS 36717 . 41174) (LAFITE.SET.TAB.LOOKS 41176 .
|
||||
41887) (LAFITE.SET.PARA.SEPARATION 41889 . 42097) (LAFITE.SET.LOWER.CASE 42099 . 42950) (
|
||||
LAFITE.SUBSTITUTE.VP.EOL 42952 . 44442)) (46361 54689 (LAFITE.DELETE.MESSAGES 46371 . 47421) (
|
||||
\LAFITE.DELETE 47423 . 48610) (DISPLAYAFTERDELETE 48612 . 53338) (\LAFITE.SELECT.NEXT 53340 . 53978) (
|
||||
\LAFITE.UNDELETE 53980 . 54687)) (54711 69206 (LAFITE.MOVE.MESSAGES 54721 . 55368) (\COERCE.TO.MSGLST
|
||||
55370 . 56128) (\LAFITE.MOVETO 56130 . 60074) (\LAFITE.COPYTO 60076 . 60492) (\LAFITE.MOVETO.PROC
|
||||
60494 . 61764) (\LAFITE.MOVE.MESSAGES.INTERNAL 61766 . 69204)) (69232 77784 (\LAFITE.ENABLE.MOVE.MENU
|
||||
69242 . 70284) (\LAFITE.ADD.TO.MOVE.MENU 70286 . 71302) (\LAFITE.UPDATE.MOVE.MENU 71304 . 75944) (
|
||||
\LAFITE.RESTORE.MOVE.MENU 75946 . 76622) (\LAFITE.HANDLE.AUTO.MOVE 76624 . 77782)) (78640 96124 (
|
||||
\LAFITE.UPDATE 78650 . 84283) (\LAFITE.EXPUNGE.PROC 84285 . 85090) (\LAFITE.UPDATE.PROC 85092 . 86175)
|
||||
(\LAFITE.HARDCOPYONLY.PROC 86177 . 86619) (LAB.CHOOSE.UPDATE.MENU 86621 . 87402) (
|
||||
LAB.CREATE.UPDATE.MENU 87404 . 89303) (LAB.UPDATE.NEEDED? 89305 . 90875) (\LAFITE.START.UPDATE 90877
|
||||
. 91909) (LAB.START.COMMAND 91911 . 92761) (\LAFITE.FINISH.UPDATE 92763 . 95016) (
|
||||
\LAFITE.CLOSE.OTHER.FOLDERS 95018 . 96122)) (96125 130919 (LAB.FLUSHWINDOW 96135 . 97814) (
|
||||
LAB.APPENDMESSAGES 97816 . 100978) (\LAFITE.COMPACT.FOLDER 100980 . 105144) (\LAFITE.COMPACT.FOLDER1
|
||||
105146 . 121185) (\LAFITE.COMPACT.FOLDER2 121187 . 125901) (\LAFITE.COMPACT.EXTRA 125903 . 128218) (
|
||||
\LAFITE.INVALIDATE.TOC 128220 . 128913) (\LAFITE.RENAMEFILE 128915 . 129385) (SMART-RENAMEFILEP 129387
|
||||
. 129947) (LA.OPENTEMPFILE 129949 . 130917)) (130920 144262 (\LAFITE.UPDATE.FOLDER 130930 . 132907) (
|
||||
\LAFITE.UPDATE.CONTENTS 132909 . 133626) (\LAFITE.UPDATE.CONTENTS1 133628 . 138482) (WRITETOCENTRY
|
||||
138484 . 141602) (WRITETOCMARKBYTES 141604 . 141846) (WRITEFOLDERMARKBYTES 141848 . 144260)) (144288
|
||||
163263 (LAFITE.HARDCOPY.MESSAGES 144298 . 144758) (\LAFITE.HARDCOPY 144760 . 145095) (
|
||||
\LAFITE.HARDCOPY.PROC 145097 . 148575) (\LAFITE.HARDCOPY.HEADERS 148577 . 153906) (
|
||||
\LAFITE.MARK.HARDCOPIED 153908 . 155618) (\LAFITE.TRANSMIT.HARDCOPY 155620 . 157210) (
|
||||
\LAFITE.HARDCOPY.BODIES 157212 . 158454) (\LAFITE.APPEND.MESSAGE.BODY 158456 . 160564) (
|
||||
\LAFITE.DO.PENDING.HARDCOPY 160566 . 161641) (\LAFITE.CANCEL.HARDCOPY 161643 . 162359) (
|
||||
\LAFITE.CLEAR.HARDCOPY.STATE 162361 . 163261)))))
|
||||
STOP
|
||||
Binary file not shown.
@@ -1,260 +1,244 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
(FILECREATED "22-Aug-94 12:59:34" {DSK}<king>export>lispcore>lafite>parc-94>LAFITEDECLS.;2 37889
|
||||
|
||||
changes to%: (VARS LAFITEDECLSCOMS)
|
||||
(RECORDS LAFITEMSG)
|
||||
(FILECREATED "26-Feb-2024 20:14:22" {WMEDLEY}<library>lafite>LAFITE-DECLS.;5 35711
|
||||
|
||||
previous date%: "21-Jun-89 12:10:42" {DSK}<king>export>lispcore>lafite>parc-94>LAFITEDECLS.;1
|
||||
)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS LAFITE.PROGRAMMER.ENTRIES)
|
||||
|
||||
:PREVIOUS-DATE "24-Feb-2024 12:01:11" {WMEDLEY}<library>lafite>LAFITE-DECLS.;4)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1985, 1986, 1987, 1988, 1989, 1994 by Xerox Corporation. All rights reserved.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-DECLSCOMS)
|
||||
|
||||
(PRETTYCOMPRINT LAFITEDECLSCOMS)
|
||||
|
||||
(RPAQQ LAFITEDECLSCOMS ((RECORDS LAFITEOPS LAFITEMODEDATA LAFITEMSG MAILFOLDER FOLDERGROUP
|
||||
DEFAULTHOST&DIR MAILSERVER MAILSERVEROPS OPENEDMAILBOX OUTBOX
|
||||
PROFILEVAR)
|
||||
(COMS (* ;
|
||||
"characteristics of standard Laurel messages")
|
||||
(CONSTANTS (LAFITEBASICSTAMPLENGTH 19)
|
||||
(LAFITESTAMPLENGTH 24)
|
||||
(DELETEDFLAG (CHARCODE D))
|
||||
(UNDELETEDFLAG (CHARCODE U))
|
||||
(SEENFLAG (CHARCODE S))
|
||||
(UNSEENFLAG (CHARCODE U))
|
||||
(DUPLICATEMARK 128)))
|
||||
(COMS (* ; "Stuff for table of contents")
|
||||
(CONSTANTS LAFITETOCPASSWORD LAFITETOCHEADERLENGTH))
|
||||
(COMS (* ;
|
||||
"Browser status values. %"Ready%" values have low bit 1.")
|
||||
(CONSTANTS LAS.READY LAS.LOGGED.OUT)
|
||||
(CONSTANTS LAS.PARSING LAS.FLUSHED LAS.OUT.OF.DATE))
|
||||
(COMS (* ;
|
||||
"Bits for figuring out which menu to use on Update, etc.")
|
||||
(CONSTANTS (\HARDCOPY.MENU.BIT 1)
|
||||
(\UPDATE.MENU.BIT 2)
|
||||
(\TOC.MENU.BIT 4)
|
||||
(\EXPUNGE.MENU.BIT 8)
|
||||
(\SORT.MENU.BIT 16)
|
||||
(\EXPUNGE&SORT.MENU.BIT 32)
|
||||
(\CLOSE.MENU.BIT 64)
|
||||
(\SHRINK.MENU.BIT 128)))
|
||||
(COMS (* ;
|
||||
"For iterating over the selected messages of a browser")
|
||||
(I.S.OPRS SELECTEDIN))
|
||||
(MACROS WORDIN FIXPIN WORDOUT FIXPOUT UCASECODE NTHMESSAGE .LAFITEMENU.
|
||||
MAYBEVERIFYMSG UNSEENMARKP)
|
||||
(COMS (GLOBALVARS * LAFITEGLOBALS)
|
||||
[P (CL:PROCLAIM '(CL:SPECIAL *LAFITE-MODE-DATA*
|
||||
*UPPER-CASE-FILE-NAMES* \#DISPLAYLINES]
|
||||
(RPAQQ LAFITE-DECLSCOMS
|
||||
((RECORDS LAFITEOPS LAFITEMODEDATA LAFITEMSG MAILFOLDER FOLDERGROUP DEFAULTHOST&DIR MAILSERVER
|
||||
MAILSERVEROPS OPENEDMAILBOX OUTBOX PROFILEVAR)
|
||||
(COMS (* ;
|
||||
"characteristics of standard Laurel messages")
|
||||
(CONSTANTS (LAFITEBASICSTAMPLENGTH 19)
|
||||
(LAFITESTAMPLENGTH 24)
|
||||
(DELETEDFLAG (CHARCODE D))
|
||||
(UNDELETEDFLAG (CHARCODE U))
|
||||
(SEENFLAG (CHARCODE S))
|
||||
(UNSEENFLAG (CHARCODE U))
|
||||
(DUPLICATEMARK 128)))
|
||||
(COMS (* ; "Stuff for table of contents")
|
||||
(CONSTANTS LAFITETOCPASSWORD LAFITETOCHEADERLENGTH))
|
||||
(COMS (* ;
|
||||
"Browser status values. %"Ready%" values have low bit 1.")
|
||||
(CONSTANTS LAS.READY LAS.LOGGED.OUT)
|
||||
(CONSTANTS LAS.PARSING LAS.FLUSHED LAS.OUT.OF.DATE))
|
||||
(COMS (* ;
|
||||
"Bits for figuring out which menu to use on Update, etc.")
|
||||
(CONSTANTS (\HARDCOPY.MENU.BIT 1)
|
||||
(\UPDATE.MENU.BIT 2)
|
||||
(\TOC.MENU.BIT 4)
|
||||
(\EXPUNGE.MENU.BIT 8)
|
||||
(\SORT.MENU.BIT 16)
|
||||
(\EXPUNGE&SORT.MENU.BIT 32)
|
||||
(\CLOSE.MENU.BIT 64)
|
||||
(\SHRINK.MENU.BIT 128)))
|
||||
(COMS (* ;
|
||||
"For iterating over the selected messages of a browser")
|
||||
(I.S.OPRS SELECTEDIN))
|
||||
(MACROS WORDIN FIXPIN WORDOUT FIXPOUT UCASECODE NTHMESSAGE .LAFITEMENU. MAYBEVERIFYMSG
|
||||
UNSEENMARKP)
|
||||
(COMS (GLOBALVARS * LAFITEGLOBALS)
|
||||
[P (CL:PROCLAIM '(CL:SPECIAL *LAFITE-MODE-DATA* *UPPER-CASE-FILE-NAMES* \#DISPLAYLINES]
|
||||
(* ;
|
||||
"LAFITE.PROCLAMATIONS are exported to user in file LAFITE--these are the documented variables")
|
||||
(P * LAFITE.PROCLAMATIONS))
|
||||
(COMS (* ;
|
||||
"For debugging with Masterscope, here are fns not called from code")
|
||||
(VARS LAFITE.CALLED.FROM.LITERALS LAFITE.PROGRAMMER.ENTRIES)
|
||||
(COMMANDS WHONOTLAFITE CHECKLAFITE))
|
||||
(DECLARE%: DONTEVAL@COMPILE (TEMPLATES WINDOWPROP WINDOWADDPROP
|
||||
WINDOWDELPROP PROCESSPROP TEXTPROP))))
|
||||
"LAFITE.PROCLAMATIONS are exported to user in file LAFITE--these are the documented variables")
|
||||
(P * LAFITE.PROCLAMATIONS))
|
||||
(COMS (* ;
|
||||
"For debugging with Masterscope, here are fns not called from code")
|
||||
(VARS LAFITE.CALLED.FROM.LITERALS LAFITE.PROGRAMMER.ENTRIES)
|
||||
(COMMANDS WHONOTLAFITE CHECKLAFITE))
|
||||
(DECLARE%: DONTEVAL@COMPILE (TEMPLATES WINDOWPROP WINDOWADDPROP WINDOWDELPROP PROCESSPROP
|
||||
TEXTPROP))))
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(RECORD LAFITEOPS (LAFITEMODE MODEINDEX SENDPARSER SENDER ANSWERER AUTHENTICATOR MESSAGEP
|
||||
MESSAGE-FROM-SELFP LOGIN))
|
||||
MESSAGE-FROM-SELFP LOGIN))
|
||||
|
||||
(RECORD LAFITEMODEDATA (LAFITEOPS (FULLUSERNAME CREDENTIALS UNPACKEDUSERNAME SHORTUSERNAME
|
||||
FROMFIELD)
|
||||
MAILSERVERS))
|
||||
(RECORD LAFITEMODEDATA (LAFITEOPS (FULLUSERNAME CREDENTIALS UNPACKEDUSERNAME SHORTUSERNAME FROMFIELD)
|
||||
MAILSERVERS))
|
||||
|
||||
(DATATYPE LAFITEMSG ((PARSED? FLAG) (* ;
|
||||
"True if we have parsed the message, and thus filled in the fields DATE, FROM, SUBJECT below.")
|
||||
(DELETED? FLAG) (* ;
|
||||
"True if message marked for deletion")
|
||||
(SEEN? FLAG) (* ; "True if message is examined.")
|
||||
(DATEKNOWN? FLAG) (* ;
|
||||
"True if DATE field correctly parsed into IDATE [formerly formatted? flag]")
|
||||
(DATEFETCHED? FLAG) (* ;
|
||||
"True if IDATE field contains a date (could be guess)")
|
||||
(MODEBITS BITS 3) (* ;
|
||||
"Mode in which the message was received")
|
||||
(MARKCHAR BYTE) (* ; "Arbitrary mark byte")
|
||||
(%# WORD) (* ; "Ordinal number of message")
|
||||
(BEGIN POINTER) (* ; "Start of the whole message")
|
||||
(MESSAGELENGTH POINTER) (* ; "Lengfth of whole message")
|
||||
(STAMPLENGTH WORD) (* ;
|
||||
"Number of bytes in file header (usually 24)")
|
||||
(TOCLENGTH WORD) (* ;
|
||||
"Number of bytes this message consumes on toc")
|
||||
(MESSAGELENGTHCHANGED? FLAG) (* ;
|
||||
"True if we have decided that the true length of this message is different from what the file says")
|
||||
(SELECTED? FLAG) (* ; "True if msg currently selected")
|
||||
(MSGFROMMECHECKED? FLAG) (* ;
|
||||
"True if we have tested whether this message is from self")
|
||||
(MSGFROMMETRUTH FLAG) (* ; "Is it?")
|
||||
(DATE POINTER) (* ;
|
||||
"The fields of the parse (strings)")
|
||||
(NIL FLAG)
|
||||
(MARKSCHANGEDINFILE? FLAG)
|
||||
(MARKSCHANGEDINTOC? FLAG)
|
||||
(NIL FLAG)
|
||||
(FROM POINTER)
|
||||
(SUBJECT POINTER)
|
||||
(TO POINTER)
|
||||
(IDATE FIXP) (* ;
|
||||
"Integer form of DATE (for sorting)")
|
||||
)
|
||||
(DATATYPE LAFITEMSG ((PARSED? FLAG) (* ;
|
||||
"True if we have parsed the message, and thus filled in the fields DATE, FROM, SUBJECT below.")
|
||||
(DELETED? FLAG) (* ;
|
||||
"True if message marked for deletion")
|
||||
(SEEN? FLAG) (* ; "True if message is examined.")
|
||||
(DATEKNOWN? FLAG) (* ;
|
||||
"True if DATE field correctly parsed into IDATE [formerly formatted? flag]")
|
||||
(DATEFETCHED? FLAG) (* ;
|
||||
"True if IDATE field contains a date (could be guess)")
|
||||
(MODEBITS BITS 3) (* ;
|
||||
"Mode in which the message was received")
|
||||
(MARKCHAR BYTE) (* ; "Arbitrary mark byte")
|
||||
(%# WORD) (* ; "Ordinal number of message")
|
||||
(BEGIN POINTER) (* ; "Start of the whole message")
|
||||
(MESSAGELENGTH POINTER) (* ; "Lengfth of whole message")
|
||||
(STAMPLENGTH WORD) (* ;
|
||||
"Number of bytes in file header (usually 24)")
|
||||
(TOCLENGTH WORD) (* ;
|
||||
"Number of bytes this message consumes on toc")
|
||||
(MESSAGELENGTHCHANGED? FLAG) (* ;
|
||||
"True if we have decided that the true length of this message is different from what the file says")
|
||||
(SELECTED? FLAG) (* ; "True if msg currently selected")
|
||||
(MSGFROMMECHECKED? FLAG) (* ;
|
||||
"True if we have tested whether this message is from self")
|
||||
(MSGFROMMETRUTH FLAG) (* ; "Is it?")
|
||||
(DATE POINTER) (* ; "The fields of the parse (strings)")
|
||||
(NIL FLAG)
|
||||
(MARKSCHANGEDINFILE? FLAG)
|
||||
(MARKSCHANGEDINTOC? FLAG)
|
||||
(NIL FLAG)
|
||||
(FROM POINTER)
|
||||
(SUBJECT POINTER)
|
||||
(TO POINTER)
|
||||
(IDATE FIXP) (* ;
|
||||
"Integer form of DATE (for sorting)")
|
||||
)
|
||||
|
||||
(* ;; "BEGIN is the only absolute pointer into the message file -- all other positions are relative to BEGIN -- see the ACCESSFNS")
|
||||
(* ;; "BEGIN is the only absolute pointer into the message file -- all other positions are relative to BEGIN -- see the ACCESSFNS")
|
||||
|
||||
(BLOCKRECORD LAFITEMSG ((PARSED&DELETED&SEENBITS BITS 3)
|
||||
(BLOCKRECORD LAFITEMSG ((PARSED&DELETED&SEENBITS BITS 3)
|
||||
(* ; "For toc version 8")
|
||||
(DATEBITS BITS 2)
|
||||
(* ; "For toc version 10")
|
||||
(NIL BITS 3)
|
||||
(NIL BYTE)
|
||||
(NIL WORD)))
|
||||
(BLOCKRECORD LAFITEMSG ((MSGFLAGBITS BITS 8)
|
||||
(NIL BYTE)
|
||||
(NIL WORD)
|
||||
(NIL BITS 4)
|
||||
(NIL POINTER)
|
||||
(NIL BITS 4)
|
||||
(NIL POINTER)
|
||||
(NIL WORD)
|
||||
(NIL WORD)
|
||||
(NIL BITS 4)
|
||||
(NIL POINTER)
|
||||
(NIL BITS 1)
|
||||
(MARKSCHANGEDBITS BITS 2)
|
||||
(NIL BITS 1)
|
||||
(NIL 3 POINTER)
|
||||
(IDATEHI WORD)
|
||||
(IDATELO WORD)))
|
||||
[ACCESSFNS LAFITEMSG ((END (+ (fetch (LAFITEMSG MESSAGELENGTH)
|
||||
of DATUM)
|
||||
(fetch (LAFITEMSG BEGIN) of DATUM)))
|
||||
(START (+ (fetch (LAFITEMSG BEGIN) of DATUM)
|
||||
(fetch (LAFITEMSG STAMPLENGTH)
|
||||
of DATUM)))
|
||||
(MSGFROMMEP (COND
|
||||
((fetch (LAFITEMSG MSGFROMMECHECKED?
|
||||
) of DATUM)
|
||||
(fetch (LAFITEMSG MSGFROMMETRUTH)
|
||||
of DATUM))
|
||||
(T (LA.MSGFROMMEP DATUM)))
|
||||
(PROG1 (replace (LAFITEMSG MSGFROMMETRUTH)
|
||||
of DATUM with NEWVALUE)
|
||||
(replace (LAFITEMSG MSGFROMMECHECKED?)
|
||||
of DATUM with T)))
|
||||
(MARKSCHANGED? (NEQ 0 (fetch (LAFITEMSG
|
||||
MARKSCHANGEDBITS
|
||||
) of DATUM)
|
||||
)
|
||||
(replace (LAFITEMSG MARKSCHANGEDBITS)
|
||||
of DATUM with 3))
|
||||
(MODE (CL:NTH (fetch (LAFITEMSG MODEBITS)
|
||||
of DATUM)
|
||||
*LAFITE-WELL-KNOWN-MODES*)
|
||||
(replace (LAFITEMSG MODEBITS) of DATUM
|
||||
WITH (OR (CL:POSITION NEWVALUE
|
||||
*LAFITE-WELL-KNOWN-MODES*)
|
||||
0])
|
||||
(DATEBITS BITS 2)(* ; "For toc version 10")
|
||||
(NIL BITS 3)
|
||||
(NIL BYTE)
|
||||
(NIL WORD)))
|
||||
(BLOCKRECORD LAFITEMSG ((MSGFLAGBITS BITS 8)
|
||||
(NIL BYTE)
|
||||
(NIL WORD)
|
||||
(NIL BITS 4)
|
||||
(NIL POINTER)
|
||||
(NIL BITS 4)
|
||||
(NIL POINTER)
|
||||
(NIL WORD)
|
||||
(NIL WORD)
|
||||
(NIL BITS 4)
|
||||
(NIL POINTER)
|
||||
(NIL BITS 1)
|
||||
(MARKSCHANGEDBITS BITS 2)
|
||||
(NIL BITS 1)
|
||||
(NIL 3 POINTER)
|
||||
(IDATEHI WORD)
|
||||
(IDATELO WORD)))
|
||||
[ACCESSFNS LAFITEMSG ((END (+ (fetch (LAFITEMSG MESSAGELENGTH) of DATUM)
|
||||
(fetch (LAFITEMSG BEGIN) of DATUM)))
|
||||
(START (+ (fetch (LAFITEMSG BEGIN) of DATUM)
|
||||
(fetch (LAFITEMSG STAMPLENGTH) of DATUM)))
|
||||
(MSGFROMMEP (COND
|
||||
((fetch (LAFITEMSG MSGFROMMECHECKED?)
|
||||
of DATUM)
|
||||
(fetch (LAFITEMSG MSGFROMMETRUTH)
|
||||
of DATUM))
|
||||
(T (LA.MSGFROMMEP DATUM)))
|
||||
(PROG1 (replace (LAFITEMSG MSGFROMMETRUTH)
|
||||
of DATUM with NEWVALUE)
|
||||
(replace (LAFITEMSG MSGFROMMECHECKED?)
|
||||
of DATUM with T)))
|
||||
(MARKSCHANGED? (NEQ 0 (fetch (LAFITEMSG MARKSCHANGEDBITS)
|
||||
of DATUM))
|
||||
(replace (LAFITEMSG MARKSCHANGEDBITS) of DATUM
|
||||
with 3))
|
||||
(MODE (CL:NTH (fetch (LAFITEMSG MODEBITS) of DATUM)
|
||||
*LAFITE-WELL-KNOWN-MODES*)
|
||||
(replace (LAFITEMSG MODEBITS) of DATUM
|
||||
WITH (OR (CL:POSITION NEWVALUE
|
||||
*LAFITE-WELL-KNOWN-MODES*)
|
||||
0])
|
||||
|
||||
(DATATYPE MAILFOLDER ((BROWSERPROMPTDIRTY FLAG) (* ;
|
||||
"Something's been printed in prompt window")
|
||||
(BROWSERPROMPTGREW FLAG) (* ;
|
||||
"Browser prompt window has expanded")
|
||||
(FOLDERNEEDSUPDATE FLAG) (* ; "Something changed")
|
||||
(FOLDERNEEDSEXPUNGE FLAG) (* ; "True if deleted msgs")
|
||||
(FOLDERBEINGUPDATED FLAG) (* ; "True during Update cmd")
|
||||
(BROWSERSTATUS BITS 3) (* ; "Ready, etc.")
|
||||
(FULLFOLDERNAME POINTER) (* ; "Full name of actual file")
|
||||
(FOLDEROKTOSHRINK FLAG) (* ;
|
||||
"Kludge to allow you to call SHRINKW without invoking the Update? question")
|
||||
(FOLDERGETSMAIL FLAG) (* ; "True if GetMail ok")
|
||||
(FOLDEROUTOFORDER FLAG) (* ; "True if folder has been sorted")
|
||||
(NIL 5 FLAG)
|
||||
(VERSIONLESSFOLDERNAME POINTER) (* ; "Versionless for conflict check")
|
||||
(SHORTFOLDERNAME POINTER) (* ; "Normal name displayed to user")
|
||||
(FOLDERSTREAM POINTER) (* ; "Stream open on the file, or NIL")
|
||||
(MESSAGEDESCRIPTORS POINTER) (* ; "Array of LAFITEMSG")
|
||||
(FOLDERLOCK POINTER) (* ; "Monitor lock for all access")
|
||||
(%#OFMESSAGES WORD)
|
||||
(TOCLASTMESSAGE# WORD) (* ;
|
||||
"Last message that is in TOC file")
|
||||
(BROWSERFONTHEIGHT WORD) (* ; "Cached info about browser font")
|
||||
(BROWSERFONTASCENT WORD)
|
||||
(BROWSERFONTDESCENT WORD)
|
||||
(BROWSERMAXXPOS WORD) (* ; "For extent computations")
|
||||
(ORDINALXPOS WORD) (* ; "Where msg # starts")
|
||||
(DATEXPOS WORD) (* ; "Where msg date starts")
|
||||
(FROMXPOS WORD) (* ; "Where msg From starts")
|
||||
(FROMMAXXPOS WORD) (* ; "Beyond here, From is truncated")
|
||||
(SUBJECTXPOS WORD) (* ; "Where msg subject starts")
|
||||
(BROWSERDIGITWIDTH WORD)
|
||||
(FIRSTSELECTEDMESSAGE WORD) (* ;
|
||||
"First/last msgs currently selected")
|
||||
(LASTSELECTEDMESSAGE WORD)
|
||||
(FIRSTCHANGEDMESSAGE WORD) (* ;
|
||||
"First message with any change--not currently used")
|
||||
(CURRENTPROMPTLINE WORD) (* ;
|
||||
"Value of \currentdisplayline for browser prompt")
|
||||
(CURRENTDISPLAYEDSTREAM POINTER) (* ;
|
||||
"The backing core file for the current message (not used interestingly)")
|
||||
(BROWSEREXTENT POINTER)
|
||||
(BROWSERORIGIN POINTER)
|
||||
(FOLDERDISPLAYREGION POINTER) (* ;
|
||||
"Region of display window (valid when browser shrunk)")
|
||||
(BROWSERWINDOW POINTER) (* ;
|
||||
"The browser window and various pieces...")
|
||||
(BROWSERMENU POINTER)
|
||||
(BROWSERMENUWINDOW POINTER)
|
||||
(BROWSERPROMPTWINDOW POINTER)
|
||||
(ORIGINALBROWSERTITLE POINTER) (* ;
|
||||
"Original title before we added %"default move to%"")
|
||||
(FOLDERDISPLAYWINDOWS POINTER) (* ; "WIndows currently displaying messages from this folder. First element is %"primary%" display window, or NIL")
|
||||
(FOLDEREOFPTR POINTER) (* ; "Length of file")
|
||||
(DEFAULTMOVETOFILE POINTER) (* ; "Folder we last moved to, or NIL")
|
||||
(CURRENTDISPLAYEDMESSAGE POINTER) (* ;
|
||||
"Message descriptor of most recently displayed message")
|
||||
(BROWSERUPDATEFROMHERE POINTER) (* ;
|
||||
"First potentially changed message, from which redisplay needs to occur when icon expands.")
|
||||
(BROWSERLAYOUT POINTER) (* ;
|
||||
"The element of LAFITEBROWSERLAYOUTS used to build this window, if any")
|
||||
(FOLDERCREATIONDATE POINTER) (* ; "the ICREATIONDATE of the file")
|
||||
(HARDCOPYMESSAGES POINTER) (* ;
|
||||
"List of msg descriptors being hardcopied")
|
||||
(HARDCOPYSTREAM POINTER) (* ;
|
||||
"A Textstream for pending hardcopy")
|
||||
)
|
||||
(BLOCKRECORD MAILFOLDER ((NIL 5 FLAG)
|
||||
(NIL BITS 2)
|
||||
(BROWSERREADYBIT FLAG)
|
||||
(* ;
|
||||
"Low bit of status on means ready")
|
||||
))
|
||||
[ACCESSFNS MAILFOLDER ((BROWSERREADY (fetch (MAILFOLDER BROWSERREADYBIT)
|
||||
of DATUM)
|
||||
(REPLACE (MAILFOLDER BROWSERSTATUS)
|
||||
OF DATUM WITH (COND
|
||||
(NEWVALUE
|
||||
LAS.READY)
|
||||
(T LAS.PARSING])
|
||||
(DATATYPE MAILFOLDER ((BROWSERPROMPTDIRTY FLAG) (* ;
|
||||
"Something's been printed in prompt window")
|
||||
(BROWSERPROMPTGREW FLAG) (* ;
|
||||
"Browser prompt window has expanded")
|
||||
(FOLDERNEEDSUPDATE FLAG) (* ; "Something changed")
|
||||
(FOLDERNEEDSEXPUNGE FLAG) (* ; "True if deleted msgs")
|
||||
(FOLDERBEINGUPDATED FLAG) (* ; "True during Update cmd")
|
||||
(BROWSERSTATUS BITS 3) (* ; "Ready, etc.")
|
||||
(FULLFOLDERNAME POINTER) (* ; "Full name of actual file")
|
||||
(FOLDEROKTOSHRINK FLAG) (* ;
|
||||
"Kludge to allow you to call SHRINKW without invoking the Update? question")
|
||||
(FOLDERGETSMAIL FLAG) (* ; "True if GetMail ok")
|
||||
(FOLDEROUTOFORDER FLAG) (* ; "True if folder has been sorted")
|
||||
(NIL 5 FLAG)
|
||||
(VERSIONLESSFOLDERNAME POINTER) (* ; "Versionless for conflict check")
|
||||
(SHORTFOLDERNAME POINTER) (* ; "Normal name displayed to user")
|
||||
(FOLDERSTREAM POINTER) (* ; "Stream open on the file, or NIL")
|
||||
(MESSAGEDESCRIPTORS POINTER) (* ; "Array of LAFITEMSG")
|
||||
(FOLDERLOCK POINTER) (* ; "Monitor lock for all access")
|
||||
(%#OFMESSAGES WORD)
|
||||
(TOCLASTMESSAGE# WORD) (* ; "Last message that is in TOC file")
|
||||
(BROWSERFONTHEIGHT WORD) (* ; "Cached info about browser font")
|
||||
(BROWSERFONTASCENT WORD)
|
||||
(BROWSERFONTDESCENT WORD)
|
||||
(BROWSERMAXXPOS WORD) (* ; "For extent computations")
|
||||
(ORDINALXPOS WORD) (* ; "Where msg # starts")
|
||||
(DATEXPOS WORD) (* ; "Where msg date starts")
|
||||
(FROMXPOS WORD) (* ; "Where msg From starts")
|
||||
(FROMMAXXPOS WORD) (* ; "Beyond here, From is truncated")
|
||||
(SUBJECTXPOS WORD) (* ; "Where msg subject starts")
|
||||
(BROWSERDIGITWIDTH WORD)
|
||||
(FIRSTSELECTEDMESSAGE WORD) (* ;
|
||||
"First/last msgs currently selected")
|
||||
(LASTSELECTEDMESSAGE WORD)
|
||||
(FIRSTCHANGEDMESSAGE WORD) (* ;
|
||||
"First message with any change--not currently used")
|
||||
(CURRENTPROMPTLINE WORD) (* ;
|
||||
"Value of \currentdisplayline for browser prompt")
|
||||
(CURRENTDISPLAYEDSTREAM POINTER) (* ;
|
||||
"The backing core file for the current message (not used interestingly)")
|
||||
(BROWSEREXTENT POINTER)
|
||||
(BROWSERORIGIN POINTER)
|
||||
(FOLDERDISPLAYREGION POINTER) (* ;
|
||||
"Region of display window (valid when browser shrunk)")
|
||||
(BROWSERWINDOW POINTER) (* ;
|
||||
"The browser window and various pieces...")
|
||||
(BROWSERMENU POINTER)
|
||||
(BROWSERMENUWINDOW POINTER)
|
||||
(BROWSERPROMPTWINDOW POINTER)
|
||||
(ORIGINALBROWSERTITLE POINTER) (* ;
|
||||
"Original title before we added %"default move to%"")
|
||||
(FOLDERDISPLAYWINDOWS POINTER) (* ; "WIndows currently displaying messages from this folder. First element is %"primary%" display window, or NIL")
|
||||
(FOLDEREOFPTR POINTER) (* ; "Length of file")
|
||||
(DEFAULTMOVETOFILE POINTER) (* ; "Folder we last moved to, or NIL")
|
||||
(CURRENTDISPLAYEDMESSAGE POINTER) (* ;
|
||||
"Message descriptor of most recently displayed message")
|
||||
(BROWSERUPDATEFROMHERE POINTER) (* ;
|
||||
"First potentially changed message, from which redisplay needs to occur when icon expands.")
|
||||
(BROWSERLAYOUT POINTER) (* ;
|
||||
"The element of LAFITEBROWSERLAYOUTS used to build this window, if any")
|
||||
(FOLDERCREATIONDATE POINTER) (* ; "the ICREATIONDATE of the file")
|
||||
(HARDCOPYMESSAGES POINTER) (* ;
|
||||
"List of msg descriptors being hardcopied")
|
||||
(HARDCOPYSTREAM POINTER) (* ; "A Textstream for pending hardcopy")
|
||||
)
|
||||
(BLOCKRECORD MAILFOLDER ((NIL 5 FLAG)
|
||||
(NIL BITS 2)
|
||||
(BROWSERREADYBIT FLAG)
|
||||
(* ; "Low bit of status on means ready")
|
||||
))
|
||||
[ACCESSFNS MAILFOLDER ((BROWSERREADY (fetch (MAILFOLDER BROWSERREADYBIT)
|
||||
of DATUM)
|
||||
(REPLACE (MAILFOLDER BROWSERSTATUS) OF DATUM
|
||||
WITH (COND
|
||||
(NEWVALUE LAS.READY)
|
||||
(T LAS.PARSING])
|
||||
|
||||
(RECORD FOLDERGROUP (FGNAME (FGTOPLEVEL . FGSUBGROUPS) . FGFOLDERS))
|
||||
|
||||
(RECORD DEFAULTHOST&DIR (PACKEDHOST&DIR . UNPACKEDHOST&DIR)
|
||||
(PROPRECORD UNPACKEDHOST&DIR (DEFAULTDIR DEFAULTHOST DEFAULTDEV)))
|
||||
(PROPRECORD UNPACKEDHOST&DIR (DEFAULTDIR DEFAULTHOST DEFAULTDEV)))
|
||||
|
||||
(RECORD MAILSERVER (MAILSERVEROPS MAILPORT MAILSERVERNAME CONTINUANCE NEWMAILP . MAILSTATE))
|
||||
|
||||
(RECORD MAILSERVEROPS (POLLNEWMAIL OPENMAILBOX NEXTMESSAGE RETRIEVEMESSAGE CLOSEMAILBOX
|
||||
SERVERPORTFROMNAME))
|
||||
SERVERPORTFROMNAME))
|
||||
|
||||
(RECORD OPENEDMAILBOX (MAILBOX . PROPERTIES)
|
||||
(PROPRECORD PROPERTIES (%#OFMESSAGES)))
|
||||
(PROPRECORD PROPERTIES (%#OFMESSAGES)))
|
||||
|
||||
(RECORD OUTBOX (OBWINDOW OBSIZE OBHEIGHT OBDESCENT OBORIGIN OBITEMS))
|
||||
|
||||
@@ -462,55 +446,51 @@ Copyright (c) 1985, 1986, 1987, 1988, 1989, 1994 by Xerox Corporation. All righ
|
||||
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
[I.S.OPR 'SELECTEDIN NIL '(bind ($$MESSAGES _ (fetch (MAILFOLDER MESSAGEDESCRIPTORS)
|
||||
of BODY))
|
||||
($$MSG# _ (SUB1 (fetch (MAILFOLDER FIRSTSELECTEDMESSAGE)
|
||||
of BODY)))
|
||||
($$MSGLAST _ (fetch (MAILFOLDER LASTSELECTEDMESSAGE)
|
||||
of BODY)) until (IGREATERP (add $$MSG# 1
|
||||
)
|
||||
$$MSGLAST)
|
||||
when (fetch (LAFITEMSG SELECTED?) of (SETQ I.V.
|
||||
(NTHMESSAGE $$MESSAGES
|
||||
$$MSG#]
|
||||
[I.S.OPR 'SELECTEDIN NIL '(bind ($$MESSAGES _ (fetch (MAILFOLDER MESSAGEDESCRIPTORS) of BODY))
|
||||
($$MSG# _ (SUB1 (fetch (MAILFOLDER FIRSTSELECTEDMESSAGE) of BODY)))
|
||||
($$MSGLAST _ (fetch (MAILFOLDER LASTSELECTEDMESSAGE) of BODY))
|
||||
until (IGREATERP (add $$MSG# 1)
|
||||
$$MSGLAST) when (fetch (LAFITEMSG SELECTED?)
|
||||
of (SETQ I.V. (NTHMESSAGE $$MESSAGES
|
||||
$$MSG#]
|
||||
)
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(PROGN (PUTPROPS WORDIN DMACRO (= . \WIN))
|
||||
(PUTPROPS WORDIN MACRO (= . \WIN)))
|
||||
(PROGN (PUTPROPS WORDIN DMACRO (= . \WIN))
|
||||
(PUTPROPS WORDIN MACRO (= . \WIN)))
|
||||
|
||||
[PUTPROPS FIXPIN DMACRO (OPENLAMBDA (STREAM)
|
||||
(\MAKENUMBER (WORDIN STREAM)
|
||||
(WORDIN STREAM]
|
||||
(PUTPROPS FIXPIN DMACRO (OPENLAMBDA (STREAM)
|
||||
(\MAKENUMBER (WORDIN STREAM)
|
||||
(WORDIN STREAM))))
|
||||
|
||||
(PUTPROPS WORDOUT DMACRO (= . \WOUT))
|
||||
(PUTPROPS WORDOUT DMACRO (= . \WOUT))
|
||||
|
||||
[PUTPROPS FIXPOUT DMACRO (OPENLAMBDA (STREAM N)
|
||||
(PROGN (WORDOUT STREAM (LRSH N 16))
|
||||
(WORDOUT STREAM (LOGAND N 65535]
|
||||
(PUTPROPS FIXPOUT DMACRO [OPENLAMBDA (STREAM N)
|
||||
(PROGN (WORDOUT STREAM (LRSH N 16))
|
||||
(WORDOUT STREAM (LOGAND N 65535])
|
||||
|
||||
[PUTPROPS UCASECODE MACRO (OPENLAMBDA (CHAR)
|
||||
(COND
|
||||
((AND (IGEQ CHAR (CHARCODE a))
|
||||
(ILEQ CHAR (CHARCODE z)))
|
||||
(LOGAND CHAR 95))
|
||||
(T CHAR]
|
||||
(PUTPROPS UCASECODE MACRO (OPENLAMBDA (CHAR)
|
||||
(COND
|
||||
((AND (IGEQ CHAR (CHARCODE a))
|
||||
(ILEQ CHAR (CHARCODE z)))
|
||||
(LOGAND CHAR 95))
|
||||
(T CHAR))))
|
||||
|
||||
(PUTPROPS NTHMESSAGE MACRO (= . ELT))
|
||||
(PUTPROPS NTHMESSAGE MACRO (= . ELT))
|
||||
|
||||
[PUTPROPS .LAFITEMENU. MACRO ((NAME ITEMS TITLE)
|
||||
(PUTPROPS .LAFITEMENU. MACRO [(NAME ITEMS TITLE)
|
||||
(PROGN (DECLARE (GLOBALVARS NAME))
|
||||
(OR NAME (SETQ NAME (\LAFITE.CREATE.MENU ITEMS TITLE]
|
||||
(OR NAME (SETQ NAME (\LAFITE.CREATE.MENU ITEMS TITLE])
|
||||
|
||||
[PUTPROPS MAYBEVERIFYMSG MACRO ((MSG MAILFOLDER)
|
||||
(AND LAFITEVERIFYFLG (\LAFITE.VERIFYMSG MSG MAILFOLDER]
|
||||
(PUTPROPS MAYBEVERIFYMSG MACRO ((MSG MAILFOLDER)
|
||||
(AND LAFITEVERIFYFLG (\LAFITE.VERIFYMSG MSG MAILFOLDER))))
|
||||
|
||||
[PUTPROPS UNSEENMARKP MACRO (OPENLAMBDA (MK)
|
||||
(OR (EQ MK UNSEENMARK)
|
||||
(EQ MK HEARDMARK]
|
||||
(PUTPROPS UNSEENMARKP MACRO (OPENLAMBDA (MK)
|
||||
(OR (EQ MK UNSEENMARK)
|
||||
(EQ MK HEARDMARK))))
|
||||
)
|
||||
|
||||
(RPAQQ LAFITEGLOBALS
|
||||
(RPAQQ LAFITEGLOBALS
|
||||
(*LAFITE-WELL-KNOWN-MODES* ANOTHERFOLDERMENUITEM AROUNDEXITFNS BackgroundMenu
|
||||
BackgroundMenuCommands FORWARDMARK HARDCOPYBATCHMARK HARDCOPYMARK HEARDMARK
|
||||
LA.CROSSCURSOR LA.SELECTION.BITMAP LAFITE.PERSONAL.VARS LAFITE.UPDATE.MENU.HASH
|
||||
@@ -551,7 +531,7 @@ Copyright (c) 1985, 1986, 1987, 1988, 1989, 1994 by Xerox Corporation. All righ
|
||||
(* ; "LAFITE.PROCLAMATIONS are exported to user in file LAFITE--these are the documented variables")
|
||||
|
||||
|
||||
(RPAQQ LAFITE.PROCLAMATIONS
|
||||
(RPAQQ LAFITE.PROCLAMATIONS
|
||||
[(CL:PROCLAIM '(GLOBAL ANSWERMARK BROWSERMARKXPOSITION DEFAULTMAILFOLDERNAME
|
||||
LAFITE.2COLUMN.MENU.MIN.ITEMS LAFITE.AUTO.MOVE.MENU
|
||||
LAFITE.BACKGROUND.ITEM LAFITE.BROWSER.ICON.PREFERENCE
|
||||
@@ -610,7 +590,7 @@ Copyright (c) 1985, 1986, 1987, 1988, 1989, 1994 by Xerox Corporation. All righ
|
||||
(* ; "For debugging with Masterscope, here are fns not called from code")
|
||||
|
||||
|
||||
(RPAQQ LAFITE.CALLED.FROM.LITERALS
|
||||
(RPAQQ LAFITE.CALLED.FROM.LITERALS
|
||||
(GV.CLOSEMAILBOX GV.INIT.MAIL.USER GV.MAKEANSWERFORM GV.NEXTMESSAGE GV.OPENMAILBOX
|
||||
GV.POLLNEWMAIL GV.PORTFROMNAME GV.RETRIEVEMESSAGE LAFITE.COMPUTE.CACHED.VARS
|
||||
LAFITE.GRAB.DATE LAFITE.ON.FROM.BACKGROUND LAFITE.PARSE.DATE.FIELD.ONLY
|
||||
@@ -637,11 +617,11 @@ Copyright (c) 1985, 1986, 1987, 1988, 1989, 1994 by Xerox Corporation. All righ
|
||||
\NSMAIL.MESSAGE.FROM.SELF.P \NSMAIL.MESSAGE.P \NSMAIL.SEND \NSMAIL.SEND.PARSE
|
||||
\SENDMSG.CHANGE.MODE \SENDMSG.DELIVER \SENDMSG.SAVE.FORM))
|
||||
|
||||
(RPAQQ LAFITE.PROGRAMMER.ENTRIES
|
||||
(LAFITEDEFAULTHOST&DIR LOAD-LAFITE LAFITE.SENDMESSAGE BUILD.LAFITE.LAYOUTS
|
||||
LAB.SELECTED.MESSAGES LAFITE.DELETE.MESSAGES LAFITE.MOVE.MESSAGES
|
||||
LAFITE.HARDCOPY.MESSAGES LAFITE.OBTAIN.FOLDER MAILSCAVENGE MS.EXPAND GV.READTOC
|
||||
GV.WRITETOC GV.DELETEMESSAGE))
|
||||
(RPAQQ LAFITE.PROGRAMMER.ENTRIES (LAFITEDEFAULTHOST&DIR LOAD-LAFITE LAFITE.SENDMESSAGE
|
||||
BUILD.LAFITE.LAYOUTS LAB.SELECTED.MESSAGES
|
||||
LAFITE.DELETE.MESSAGES LAFITE.MOVE.MESSAGES
|
||||
LAFITE.HARDCOPY.MESSAGES LAFITE.OBTAIN.FOLDER MAILSCAVENGE
|
||||
MS.EXPAND GV.READTOC GV.WRITETOC GV.DELETEMESSAGE))
|
||||
|
||||
(DEFCOMMAND (WHONOTLAFITE :HISTORY) NIL
|
||||
'((CL:SET-DIFFERENCE (CL:SET-DIFFERENCE (%. WHO ON ANY IN LAFITEFILES IS NOT CALLED)
|
||||
@@ -662,7 +642,6 @@ Copyright (c) 1985, 1986, 1987, 1988, 1989, 1994 by Xerox Corporation. All righ
|
||||
|
||||
(SETTEMPLATE 'TEXTPROP '(EVAL PROP EVAL . PPE))
|
||||
)
|
||||
(PUTPROPS LAFITEDECLS COPYRIGHT ("Xerox Corporation" 1985 1986 1987 1988 1989 1994))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL)))
|
||||
STOP
|
||||
@@ -1,20 +1,17 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
(FILECREATED "30-Sep-2021 23:01:05"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>git-medley>library>lafite>LAFITEFIND.;2 14882
|
||||
|
||||
changes to%: (FILES LAFITEDECLS)
|
||||
(FILECREATED "23-Feb-2024 22:24:01" {WMEDLEY}<library>lafite>LAFITE-FIND.;2 14652
|
||||
|
||||
previous date%: " 3-Jun-92 10:10:41"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>git-medley>library>lafite>LAFITEFIND.;1)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS LAFITE-FINDCOMS)
|
||||
|
||||
:PREVIOUS-DATE "23-Feb-2024 22:11:33" {WMEDLEY}<library>lafite>LAFITE-FIND.;1)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1984-1988, 1990, 1992, 2021 by Venue & Xerox Corporation.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-FINDCOMS)
|
||||
|
||||
(PRETTYCOMPRINT LAFITEFINDCOMS)
|
||||
|
||||
(RPAQQ LAFITEFINDCOMS
|
||||
(RPAQQ LAFITE-FINDCOMS
|
||||
((FNS \LAFITE.FIND \LAFITE.FIND.RELATED \LAFITE.FIND.RELATED.BACKWARD \LAFITE.GO.TO.FIRST
|
||||
\LAFITE.GO.TO.INTERACTIVE \LAFITE.GO.TO.LAST \LAFITE.FIND.AGAIN \LAFITE.FIND.PROMPT
|
||||
\LAFITE.DO.FIND \LAFITE.FIND.START)
|
||||
@@ -22,7 +19,7 @@ Copyright (c) 1984-1988, 1990, 1992, 2021 by Venue & Xerox Corporation.
|
||||
(GLOBALVARS LAFITEFINDAREAMENUITEMS LAFITEFINDTYPEMENUITEMS LAFITEFINDTYPEMENU
|
||||
LAFITEFINDAREAMENU LAFITEEXTRAMENU LAFITEEXTRAMENUFLG \LAFITE.LAST.SEARCH)
|
||||
(FILES (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
(LOCALVARS . T))
|
||||
(INITVARS LAFITEFINDTYPEMENU LAFITEFINDAREAMENU)
|
||||
(VARS LAFITEFINDAREAMENUITEMS LAFITEFINDTYPEMENUITEMS)
|
||||
@@ -133,7 +130,7 @@ Copyright (c) 1984-1988, 1990, 1992, 2021 by Venue & Xerox Corporation.
|
||||
|
||||
|
||||
(FILESLOAD (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
@@ -181,11 +178,10 @@ Copyright (c) 1984-1988, 1990, 1992, 2021 by Venue & Xerox Corporation.
|
||||
(ADDTOVAR LAFITEMENUVARS LAFITEFINDTYPEMENU LAFITEFINDAREAMENU)
|
||||
|
||||
(RPAQQ \LAFITE.LAST.SEARCH NIL)
|
||||
(PUTPROPS LAFITEFIND COPYRIGHT ("Venue & Xerox Corporation" 1984 1985 1986 1987 1988 1990 1992 2021))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (2309 12081 (\LAFITE.FIND 2319 . 3351) (\LAFITE.FIND.RELATED 3353 . 4018) (
|
||||
\LAFITE.FIND.RELATED.BACKWARD 4020 . 4156) (\LAFITE.GO.TO.FIRST 4158 . 4325) (
|
||||
\LAFITE.GO.TO.INTERACTIVE 4327 . 4939) (\LAFITE.GO.TO.LAST 4941 . 5149) (\LAFITE.FIND.AGAIN 5151 .
|
||||
5733) (\LAFITE.FIND.PROMPT 5735 . 7857) (\LAFITE.DO.FIND 7859 . 11010) (\LAFITE.FIND.START 11012 .
|
||||
12079)))))
|
||||
(FILEMAP (NIL (2180 11952 (\LAFITE.FIND 2190 . 3222) (\LAFITE.FIND.RELATED 3224 . 3889) (
|
||||
\LAFITE.FIND.RELATED.BACKWARD 3891 . 4027) (\LAFITE.GO.TO.FIRST 4029 . 4196) (
|
||||
\LAFITE.GO.TO.INTERACTIVE 4198 . 4810) (\LAFITE.GO.TO.LAST 4812 . 5020) (\LAFITE.FIND.AGAIN 5022 .
|
||||
5604) (\LAFITE.FIND.PROMPT 5606 . 7728) (\LAFITE.DO.FIND 7730 . 10881) (\LAFITE.FIND.START 10883 .
|
||||
11950)))))
|
||||
STOP
|
||||
BIN
library/lafite/LAFITE-FIND.LCOM
Normal file
BIN
library/lafite/LAFITE-FIND.LCOM
Normal file
Binary file not shown.
@@ -1,21 +1,17 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED " 7-Feb-2022 12:04:09"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>my-medley>library>lafite>LAFITEFOLDERS.;2 44421
|
||||
(FILECREATED "23-Feb-2024 22:24:01" {WMEDLEY}<library>lafite>LAFITE-FOLDERS.;2 44255
|
||||
|
||||
:CHANGES-TO (FNS \LAFITE.MAKE.RANDOM.DISPLAY)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:PREVIOUS-DATE " 2-Nov-89 18:16:37"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>my-medley>library>lafite>LAFITEFOLDERS.;1)
|
||||
:CHANGES-TO (VARS LAFITE-FOLDERSCOMS)
|
||||
|
||||
:PREVIOUS-DATE "23-Feb-2024 22:01:00" {WMEDLEY}<library>lafite>LAFITE-FOLDERS.;1)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1989 by Xerox Corporation.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-FOLDERSCOMS)
|
||||
|
||||
(PRETTYCOMPRINT LAFITEFOLDERSCOMS)
|
||||
|
||||
(RPAQQ LAFITEFOLDERSCOMS
|
||||
(RPAQQ LAFITE-FOLDERSCOMS
|
||||
[
|
||||
(* ;; "Maintenance of Lafite's folder structures, menus etc.")
|
||||
|
||||
@@ -53,7 +49,7 @@ Copyright (c) 1989 by Xerox Corporation.
|
||||
UALPHORDERCAR)
|
||||
(VARS LAFITE.SPACER.MENU.ITEM LAFITE.GROUP.COMMANDS (LAFITE.GROUP.COMMANDS.MENU)))
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY (FILES (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
(LOCALVARS . T)
|
||||
(GLOBALVARS MENUFONT LAFITE.GROUP.COMMANDS.MENU LAFITE.GROUP.COMMANDS)
|
||||
(P (CL:PROCLAIM '(CL:SPECIAL *LA.ABBREVS.IN.PROFILE*])
|
||||
@@ -334,7 +330,7 @@ Done." (ADD1 (GETEOFPTR TEXTSTREAM))))))
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY
|
||||
|
||||
(FILESLOAD (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
@@ -349,25 +345,24 @@ Done." (ADD1 (GETEOFPTR TEXTSTREAM))))))
|
||||
|
||||
(CL:PROCLAIM '(CL:SPECIAL *LA.ABBREVS.IN.PROFILE*))
|
||||
)
|
||||
(PUTPROPS LAFITEFOLDERS COPYRIGHT ("Xerox Corporation" 1989))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (3536 11401 (\LAFITE.READ.PROFILE 3546 . 5750) (\LAFITE.PROCESS.PROFILE 5752 . 6942) (
|
||||
\LAFITE.WRITE.PROFILE 6944 . 8778) (\LAFITE.MERGE.NAMELISTS 8780 . 9514) (\LAFITE.READ.OLD.PROFILE
|
||||
9516 . 10115) (\LAFITE.MERGE.FOLDERS 10117 . 10429) (\LAFITE.MERGE.STRUCTURES 10431 . 10631) (
|
||||
\LAFITE.REPACK.FOLDERS 10633 . 11399)) (11828 20372 (\LAFITE.PROMPTFORFOLDER 11838 . 12388) (
|
||||
PROMPTFORFILENAME 12390 . 13231) (MAKELAFITEMAILFOLDERSMENU 13233 . 13397) (MAKELAFITEFOLDERSMENUITEMS
|
||||
13399 . 14514) (LAFITE.GROUP.ITEM 14516 . 15053) (\LAFITE.ARRANGE.MENU 15055 . 16337) (
|
||||
\LAFITE.MAKE.FOLDER.MENU 16339 . 16864) (LAFITE.SELECT.FOLDERS 16866 . 17251) (LAFITE.SELECT.MULTIPLE
|
||||
17253 . 19597) (\LAFITE.HANDLE.MULTIPLE.SELECTION 19599 . 20071) (COLLECT.SHADED.ITEMS 20073 . 20370))
|
||||
(20595 29104 (LA.LONGFILENAME 20605 . 22480) (LA.SHORTFILENAME 22482 . 24305) (FORGETMAILFILE 24307
|
||||
. 24767) (\LAFITE.FOLDER.NAME.CHANGED 24769 . 25992) (\LAFITE.CHANGE.NAME.IN.LIST 25994 . 26373) (
|
||||
\LAFITE.RECOMPUTE.FOLDER.NAMES 26375 . 27796) (\LAFITE.NEW.SHORT.NAME 27798 . 28479) (
|
||||
\LAFITE.NOTICE.FILE 28481 . 28662) (\LAFITE.UNCACHE.FOLDER 28664 . 29102)) (29220 43399 (
|
||||
\LAFITE.NOTICE.FOLDERS 29230 . 30870) (\LAFITE.GC.FOLDERS 30872 . 31959) (\LAFITE.GC.FOLDERS.CONFIRM
|
||||
31961 . 32771) (\LAFITE.MAKE.RANDOM.DISPLAY 32773 . 34764) (\LAFITE.CHANGE.FOLDER.LIST 34766 . 35519)
|
||||
(\LAFITE.RENAME.FOLDER 35521 . 37251) (\LAFITE.ADD.NEW.GROUP 37253 . 37978) (\LAFITE.CHECK.GROUP.NAME
|
||||
37980 . 38331) (\LAFITE.CHANGE.GROUP.MEMBERS 38333 . 38708) (\LAFITE.SELECT.GROUP.FOLDERS 38710 .
|
||||
39716) (\LAFITE.CHANGE.SUBGROUPS 39718 . 40369) (\LAFITE.CHANGE.TOP.GROUPS 40371 . 41079) (
|
||||
\LAFITE.DELETE.GROUP 41081 . 41663) (LAFITE.RENAME.GROUP 41665 . 42521) (\LAFITE.EDIT.HIERARCHY 42523
|
||||
. 43082) (LAFITE.FIND.GROUP 43084 . 43280) (UALPHORDERCAR 43282 . 43397)))))
|
||||
(FILEMAP (NIL (3431 11296 (\LAFITE.READ.PROFILE 3441 . 5645) (\LAFITE.PROCESS.PROFILE 5647 . 6837) (
|
||||
\LAFITE.WRITE.PROFILE 6839 . 8673) (\LAFITE.MERGE.NAMELISTS 8675 . 9409) (\LAFITE.READ.OLD.PROFILE
|
||||
9411 . 10010) (\LAFITE.MERGE.FOLDERS 10012 . 10324) (\LAFITE.MERGE.STRUCTURES 10326 . 10526) (
|
||||
\LAFITE.REPACK.FOLDERS 10528 . 11294)) (11723 20267 (\LAFITE.PROMPTFORFOLDER 11733 . 12283) (
|
||||
PROMPTFORFILENAME 12285 . 13126) (MAKELAFITEMAILFOLDERSMENU 13128 . 13292) (MAKELAFITEFOLDERSMENUITEMS
|
||||
13294 . 14409) (LAFITE.GROUP.ITEM 14411 . 14948) (\LAFITE.ARRANGE.MENU 14950 . 16232) (
|
||||
\LAFITE.MAKE.FOLDER.MENU 16234 . 16759) (LAFITE.SELECT.FOLDERS 16761 . 17146) (LAFITE.SELECT.MULTIPLE
|
||||
17148 . 19492) (\LAFITE.HANDLE.MULTIPLE.SELECTION 19494 . 19966) (COLLECT.SHADED.ITEMS 19968 . 20265))
|
||||
(20490 28999 (LA.LONGFILENAME 20500 . 22375) (LA.SHORTFILENAME 22377 . 24200) (FORGETMAILFILE 24202
|
||||
. 24662) (\LAFITE.FOLDER.NAME.CHANGED 24664 . 25887) (\LAFITE.CHANGE.NAME.IN.LIST 25889 . 26268) (
|
||||
\LAFITE.RECOMPUTE.FOLDER.NAMES 26270 . 27691) (\LAFITE.NEW.SHORT.NAME 27693 . 28374) (
|
||||
\LAFITE.NOTICE.FILE 28376 . 28557) (\LAFITE.UNCACHE.FOLDER 28559 . 28997)) (29115 43294 (
|
||||
\LAFITE.NOTICE.FOLDERS 29125 . 30765) (\LAFITE.GC.FOLDERS 30767 . 31854) (\LAFITE.GC.FOLDERS.CONFIRM
|
||||
31856 . 32666) (\LAFITE.MAKE.RANDOM.DISPLAY 32668 . 34659) (\LAFITE.CHANGE.FOLDER.LIST 34661 . 35414)
|
||||
(\LAFITE.RENAME.FOLDER 35416 . 37146) (\LAFITE.ADD.NEW.GROUP 37148 . 37873) (\LAFITE.CHECK.GROUP.NAME
|
||||
37875 . 38226) (\LAFITE.CHANGE.GROUP.MEMBERS 38228 . 38603) (\LAFITE.SELECT.GROUP.FOLDERS 38605 .
|
||||
39611) (\LAFITE.CHANGE.SUBGROUPS 39613 . 40264) (\LAFITE.CHANGE.TOP.GROUPS 40266 . 40974) (
|
||||
\LAFITE.DELETE.GROUP 40976 . 41558) (LAFITE.RENAME.GROUP 41560 . 42416) (\LAFITE.EDIT.HIERARCHY 42418
|
||||
. 42977) (LAFITE.FIND.GROUP 42979 . 43175) (UALPHORDERCAR 43177 . 43292)))))
|
||||
STOP
|
||||
Binary file not shown.
@@ -1,19 +1,30 @@
|
||||
(DEFINE-FILE-INFO READTABLE "INTERLISP" PACKAGE "INTERLISP")
|
||||
(FILECREATED "26-Feb-93 14:36:38" "{DSK}<tilde>vanmelle>lisp>lafite>LAFITEHAX.;12" 9033
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
changes to%: (FNS \NSMAIL.PARSE1 \NSMAIL.NEW.CHECKSERVER LAFITE.TOGGLE.SERVER.TRACE LAFITE.HANDLE.ORIGINAL.FIELD LAFITE.COMPUTE.CACHED.VARS LAFITE.NEW.PARSE.HEADER INIT.NEW.PARSE.HANDLER)
|
||||
(VARS LAFITEHAXCOMS)
|
||||
(FILECREATED "23-Feb-2024 23:58:34" {WMEDLEY}<library>lafite>LAFITE-HAX.;1 9138
|
||||
|
||||
previous date%: " 3-Jun-92 16:10:47" "{DSK}<tilde>vanmelle>lisp>lafite>LAFITEHAX.;1")
|
||||
:EDIT-BY rmk
|
||||
|
||||
:PREVIOUS-DATE "26-Feb-93 14:36:38" {WMEDLEY}<library>lafite>LAFITEHAX.;1)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1992, 1993 by Xerox Corporation. All rights reserved.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-HAXCOMS)
|
||||
|
||||
(PRETTYCOMPRINT LAFITEHAXCOMS)
|
||||
|
||||
(RPAQQ LAFITEHAXCOMS ((COMS (* ; "New header parser") (FNS LAFITE.NEW.PARSE.HEADER LAFITE.HANDLE.ORIGINAL.FIELD INIT.NEW.PARSE.HANDLER LAFITE.COMPUTE.CACHED.VARS) (INITVARS (*LAFITE-MAX-FIELD-WIDTH* 100) (*LAFITE-PARSE-HEADER-STRING-RESOURCE*)) (GLOBALVARS *LAFITE-MAX-FIELD-WIDTH* *LAFITE-PARSE-HEADER-STRING-RESOURCE*) (DECLARE%: DONTEVAL@LOAD DOCOPY (P (INIT.NEW.PARSE.HANDLER)))) (COMS (* ; "automatically handle internet addresses") (FNS \NSMAIL.PARSE1)) (COMS (FNS LAFITE.TOGGLE.SERVER.TRACE) (APPENDVARS (LAFITESUBQUITMENUITEMS ("Server trace" (QUOTE LAFITE.TOGGLE.SERVER.TRACE) "Change setting of *NSMAIL-TRACE-SERVERS*"))) (VARS (LAFITESUBQUITMENU)))))
|
||||
(RPAQQ LAFITE-HAXCOMS
|
||||
[[COMS (* ; "New header parser")
|
||||
(FNS LAFITE.NEW.PARSE.HEADER LAFITE.HANDLE.ORIGINAL.FIELD INIT.NEW.PARSE.HANDLER
|
||||
LAFITE.COMPUTE.CACHED.VARS)
|
||||
(INITVARS (*LAFITE-MAX-FIELD-WIDTH* 100)
|
||||
(*LAFITE-PARSE-HEADER-STRING-RESOURCE*))
|
||||
(GLOBALVARS *LAFITE-MAX-FIELD-WIDTH* *LAFITE-PARSE-HEADER-STRING-RESOURCE*)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY (P (INIT.NEW.PARSE.HANDLER]
|
||||
(COMS (* ;
|
||||
"automatically handle internet addresses")
|
||||
(FNS \NSMAIL.PARSE1))
|
||||
(COMS (FNS LAFITE.TOGGLE.SERVER.TRACE)
|
||||
(APPENDVARS (LAFITESUBQUITMENUITEMS ("Server trace" 'LAFITE.TOGGLE.SERVER.TRACE
|
||||
"Change setting of *NSMAIL-TRACE-SERVERS*"))
|
||||
)
|
||||
(VARS (LAFITESUBQUITMENU])
|
||||
|
||||
|
||||
|
||||
@@ -40,16 +51,16 @@ Copyright (c) 1992, 1993 by Xerox Corporation. All rights reserved.
|
||||
)
|
||||
)
|
||||
|
||||
(RPAQ? *LAFITE-MAX-FIELD-WIDTH* 100)
|
||||
(RPAQ? *LAFITE-MAX-FIELD-WIDTH* 100)
|
||||
|
||||
(RPAQ? *LAFITE-PARSE-HEADER-STRING-RESOURCE*)
|
||||
(RPAQ? *LAFITE-PARSE-HEADER-STRING-RESOURCE* )
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS *LAFITE-MAX-FIELD-WIDTH* *LAFITE-PARSE-HEADER-STRING-RESOURCE*)
|
||||
)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY
|
||||
|
||||
(INIT.NEW.PARSE.HANDLER)
|
||||
(INIT.NEW.PARSE.HANDLER)
|
||||
)
|
||||
|
||||
|
||||
@@ -69,13 +80,12 @@ Copyright (c) 1992, 1993 by Xerox Corporation. All rights reserved.
|
||||
)
|
||||
)
|
||||
|
||||
(APPENDTOVAR LAFITESUBQUITMENUITEMS ("Server trace" (QUOTE LAFITE.TOGGLE.SERVER.TRACE) "Change setting of *NSMAIL-TRACE-SERVERS*")
|
||||
)
|
||||
(APPENDTOVAR LAFITESUBQUITMENUITEMS ("Server trace" 'LAFITE.TOGGLE.SERVER.TRACE
|
||||
"Change setting of *NSMAIL-TRACE-SERVERS*"))
|
||||
|
||||
(RPAQQ LAFITESUBQUITMENU NIL)
|
||||
(PUTPROPS LAFITEHAX COPYRIGHT ("Xerox Corporation" 1992 1993))
|
||||
(RPAQQ LAFITESUBQUITMENU NIL)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (1281 6753 (LAFITE.NEW.PARSE.HEADER 1291 . 3112) (LAFITE.HANDLE.ORIGINAL.FIELD 3114 .
|
||||
3790) (INIT.NEW.PARSE.HANDLER 3792 . 4047) (LAFITE.COMPUTE.CACHED.VARS 4049 . 6751)) (7070 8290 (
|
||||
\NSMAIL.PARSE1 7080 . 8288)) (8291 8778 (LAFITE.TOGGLE.SERVER.TRACE 8301 . 8776)))))
|
||||
(FILEMAP (NIL (1396 6868 (LAFITE.NEW.PARSE.HEADER 1406 . 3227) (LAFITE.HANDLE.ORIGINAL.FIELD 3229 .
|
||||
3905) (INIT.NEW.PARSE.HANDLER 3907 . 4162) (LAFITE.COMPUTE.CACHED.VARS 4164 . 6866)) (7198 8418 (
|
||||
\NSMAIL.PARSE1 7208 . 8416)) (8419 8906 (LAFITE.TOGGLE.SERVER.TRACE 8429 . 8904)))))
|
||||
STOP
|
||||
@@ -1,18 +1,17 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
(FILECREATED "30-Sep-2021 23:01:47"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>git-medley>library>lafite>LAFITEMAIL.;3 133718
|
||||
|
||||
previous date%: "22-Jun-2021 10:19:08"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>git-medley>library>lafite>LAFITEMAIL.;2)
|
||||
(FILECREATED "23-Feb-2024 22:24:01" {WMEDLEY}<library>lafite>LAFITE-MAIL.;2 133521
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS LAFITE-MAILCOMS)
|
||||
|
||||
:PREVIOUS-DATE "23-Feb-2024 22:05:03" {WMEDLEY}<library>lafite>LAFITE-MAIL.;1)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1984-1989, 1991-1993, 2021 by Xerox Corporation.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-MAILCOMS)
|
||||
|
||||
(PRETTYCOMPRINT LAFITEMAILCOMS)
|
||||
|
||||
(RPAQQ LAFITEMAILCOMS
|
||||
(RPAQQ LAFITE-MAILCOMS
|
||||
((COMS (* ; "Retrieving mail")
|
||||
(FNS \LAFITE.GETMAIL \LAFITE.GETMAIL.FROM.ICON \LAFITE.GETMAIL.PROC \LAFITE.GETNEWMAIL
|
||||
\LAFITE.GETNEWMAIL1 \LAFITE.GETNEWMAIL# \LAFITE.RETRIEVEMESSAGES))
|
||||
@@ -64,7 +63,7 @@ Copyright (c) 1984-1989, 1991-1993, 2021 by Xerox Corporation.
|
||||
\LAPARSE.TOCFIELDS \LAPARSE.TOFIELD \LAPARSE.SUBJECTFIELD \LAPARSE.DATEFIELD
|
||||
LAFITE.AFTER.GETMAIL.FN)
|
||||
(FILES (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
(LOCALVARS . T))))
|
||||
|
||||
|
||||
@@ -1909,9 +1908,9 @@ Copyright (c) 1984-1989, 1991-1993, 2021 by Xerox Corporation.
|
||||
("FORMAT:" LAFITE.READ.FORMAT)))
|
||||
|
||||
(RPAQQ LA.TOCFIELDS (("DATE:" LAFITE.GRAB.DATE)
|
||||
("FROM:" LAFITE.READ.LINE.FOR.TOC From)
|
||||
("SUBJECT:" LAFITE.READ.LINE.FOR.TOC Subject)
|
||||
("ORIGINAL-FROM:" LAFITE.READ.LINE.FOR.TOC Original-From)))
|
||||
("FROM:" LAFITE.READ.LINE.FOR.TOC From)
|
||||
("SUBJECT:" LAFITE.READ.LINE.FOR.TOC Subject)
|
||||
("ORIGINAL-FROM:" LAFITE.READ.LINE.FOR.TOC Original-From)))
|
||||
|
||||
(RPAQQ LA.TOFIELDONLY (("TO:" LAFITE.READ.ONE.LINE.FOR.TOC)))
|
||||
|
||||
@@ -2110,39 +2109,37 @@ Copyright (c) 1984-1989, 1991-1993, 2021 by Xerox Corporation.
|
||||
|
||||
|
||||
(FILESLOAD (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(LOCALVARS . T)
|
||||
)
|
||||
)
|
||||
(PUTPROPS LAFITEMAIL COPYRIGHT ("Xerox Corporation" 1984 1985 1986 1987 1988 1989 1991 1992 1993 2021)
|
||||
)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (4395 22354 (\LAFITE.GETMAIL 4405 . 4776) (\LAFITE.GETMAIL.FROM.ICON 4778 . 5126) (
|
||||
\LAFITE.GETMAIL.PROC 5128 . 5575) (\LAFITE.GETNEWMAIL 5577 . 11919) (\LAFITE.GETNEWMAIL1 11921 . 14653
|
||||
) (\LAFITE.GETNEWMAIL# 14655 . 15044) (\LAFITE.RETRIEVEMESSAGES 15046 . 22352)) (22401 51381 (
|
||||
\LAFITE.GET.USER.DATA 22411 . 25245) (\LAFITE.GUESS.MODE 25247 . 27467) (\LAFITE.REGISTER.MODE 27469
|
||||
. 28728) (LAFITECLEARCACHE 28730 . 29484) (FULLUSERNAME 29486 . 30585) (LAFITE.USER.NAME.FROM.LOGIN
|
||||
30587 . 32370) (LAFITEMAILWATCH 32372 . 33702) (\LAFITE.WAKE.WATCHER 33704 . 34293) (POLLNEWMAIL 34295
|
||||
. 47918) (\LAFITE.NEW.MAIL.EXISTS 47920 . 48256) (PRINTLAFITESTATUS 48258 . 50624) (
|
||||
LAFITE.STATUS.WITH.TIME 50626 . 50930) (\LAFITE.REINITIALIZING 50932 . 51379)) (51417 106191 (
|
||||
\LAFITE.PARSE.FOLDER 51427 . 52795) (\LAFITE.PARSE.FOLDER1 52797 . 60252) (\LAFITE.HANDLE.DUPLICATES
|
||||
60254 . 63290) (\LAFITE.CHECK.DUPLICATE 63292 . 64227) (\LAFITE.REPORT.DUPLICATES 64229 . 66114) (
|
||||
BADMAILFILE 66116 . 74672) (BADMAILFILE.CLOSEFN 74674 . 75002) (BADMAILFILE.FLAGBYTE 75004 . 75202) (
|
||||
VERIFYMAILFOLDER 75204 . 79775) (VERIFYFAILED 79777 . 79965) (\LAFITE.READ.TOC.FILE 79967 . 93470) (
|
||||
BADTOCFILE 93472 . 93966) (\LAFITE.TOCEOF 93968 . 94303) (LA.READCOUNT 94305 . 95533) (LA.READSTAMP
|
||||
95535 . 96078) (LA.PRINTHEADER 96080 . 99402) (LA.PRINTCOUNT 99404 . 99637) (LA.PRINTSTAMP 99639 .
|
||||
100063) (LA.READSHORTSTRING 100065 . 100832) (LA.PRINTSHORTSTRING 100834 . 101963) (LA.READSTRING
|
||||
101965 . 102436) (\LAFITE.VERIFYMSG 102438 . 104219) (LA.MSGFROMMEP 104221 . 106189)) (106192 122077 (
|
||||
LAFITE.PARSE.MSG.FOR.TOC 106202 . 109562) (LAFITE-EXTRACT-REAL-NAME 109564 . 112693) (
|
||||
LAFITE.FETCH.TO.FIELD 112695 . 113970) (LAFITE.PARSE.HEADER 113972 . 117081) (LAFITE.GRAB.DATE 117083
|
||||
. 117488) (LAFITE.READ.LINE.FOR.TOC 117490 . 117926) (LAFITE.READ.FORMAT 117928 . 118310) (
|
||||
LAFITE.READ.NAME.FIELD 118312 . 119345) (LAFITE.READ.ONE.LINE.FOR.TOC 119347 . 119528) (
|
||||
LAFITE.READ.TO.EOL 119530 . 120460) (LA.SKIP.TO.EOL 120462 . 121797) (LAFITE.SKIP.WHITE.SPACE 121799
|
||||
. 122075)) (122078 122719 (\LAFITE.PARSE.MESSAGE 122088 . 122717)) (123679 127667 (
|
||||
LAFITE.INIT.PARSETABLES 123689 . 124200) (LAFITE.MAKE.PARSE.TABLE 124202 . 125172) (
|
||||
LAFITE.MAKE.PARSE.TABLE1 125174 . 127665)) (127702 132269 (LAFITE.NEW.PARSE.HEADER 127712 . 131321) (
|
||||
LAFITE.HANDLE.ORIGINAL.FIELD 131323 . 132267)))))
|
||||
(FILEMAP (NIL (4314 22273 (\LAFITE.GETMAIL 4324 . 4695) (\LAFITE.GETMAIL.FROM.ICON 4697 . 5045) (
|
||||
\LAFITE.GETMAIL.PROC 5047 . 5494) (\LAFITE.GETNEWMAIL 5496 . 11838) (\LAFITE.GETNEWMAIL1 11840 . 14572
|
||||
) (\LAFITE.GETNEWMAIL# 14574 . 14963) (\LAFITE.RETRIEVEMESSAGES 14965 . 22271)) (22320 51300 (
|
||||
\LAFITE.GET.USER.DATA 22330 . 25164) (\LAFITE.GUESS.MODE 25166 . 27386) (\LAFITE.REGISTER.MODE 27388
|
||||
. 28647) (LAFITECLEARCACHE 28649 . 29403) (FULLUSERNAME 29405 . 30504) (LAFITE.USER.NAME.FROM.LOGIN
|
||||
30506 . 32289) (LAFITEMAILWATCH 32291 . 33621) (\LAFITE.WAKE.WATCHER 33623 . 34212) (POLLNEWMAIL 34214
|
||||
. 47837) (\LAFITE.NEW.MAIL.EXISTS 47839 . 48175) (PRINTLAFITESTATUS 48177 . 50543) (
|
||||
LAFITE.STATUS.WITH.TIME 50545 . 50849) (\LAFITE.REINITIALIZING 50851 . 51298)) (51336 106110 (
|
||||
\LAFITE.PARSE.FOLDER 51346 . 52714) (\LAFITE.PARSE.FOLDER1 52716 . 60171) (\LAFITE.HANDLE.DUPLICATES
|
||||
60173 . 63209) (\LAFITE.CHECK.DUPLICATE 63211 . 64146) (\LAFITE.REPORT.DUPLICATES 64148 . 66033) (
|
||||
BADMAILFILE 66035 . 74591) (BADMAILFILE.CLOSEFN 74593 . 74921) (BADMAILFILE.FLAGBYTE 74923 . 75121) (
|
||||
VERIFYMAILFOLDER 75123 . 79694) (VERIFYFAILED 79696 . 79884) (\LAFITE.READ.TOC.FILE 79886 . 93389) (
|
||||
BADTOCFILE 93391 . 93885) (\LAFITE.TOCEOF 93887 . 94222) (LA.READCOUNT 94224 . 95452) (LA.READSTAMP
|
||||
95454 . 95997) (LA.PRINTHEADER 95999 . 99321) (LA.PRINTCOUNT 99323 . 99556) (LA.PRINTSTAMP 99558 .
|
||||
99982) (LA.READSHORTSTRING 99984 . 100751) (LA.PRINTSHORTSTRING 100753 . 101882) (LA.READSTRING 101884
|
||||
. 102355) (\LAFITE.VERIFYMSG 102357 . 104138) (LA.MSGFROMMEP 104140 . 106108)) (106111 121996 (
|
||||
LAFITE.PARSE.MSG.FOR.TOC 106121 . 109481) (LAFITE-EXTRACT-REAL-NAME 109483 . 112612) (
|
||||
LAFITE.FETCH.TO.FIELD 112614 . 113889) (LAFITE.PARSE.HEADER 113891 . 117000) (LAFITE.GRAB.DATE 117002
|
||||
. 117407) (LAFITE.READ.LINE.FOR.TOC 117409 . 117845) (LAFITE.READ.FORMAT 117847 . 118229) (
|
||||
LAFITE.READ.NAME.FIELD 118231 . 119264) (LAFITE.READ.ONE.LINE.FOR.TOC 119266 . 119447) (
|
||||
LAFITE.READ.TO.EOL 119449 . 120379) (LA.SKIP.TO.EOL 120381 . 121716) (LAFITE.SKIP.WHITE.SPACE 121718
|
||||
. 121994)) (121997 122638 (\LAFITE.PARSE.MESSAGE 122007 . 122636)) (123586 127574 (
|
||||
LAFITE.INIT.PARSETABLES 123596 . 124107) (LAFITE.MAKE.PARSE.TABLE 124109 . 125079) (
|
||||
LAFITE.MAKE.PARSE.TABLE1 125081 . 127572)) (127609 132176 (LAFITE.NEW.PARSE.HEADER 127619 . 131228) (
|
||||
LAFITE.HANDLE.ORIGINAL.FIELD 131230 . 132174)))))
|
||||
STOP
|
||||
Binary file not shown.
@@ -1,25 +1,22 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED " 7-Feb-2022 12:04:09"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>my-medley>library>lafite>MAILSCAVENGE.;4 40080
|
||||
(FILECREATED "26-Feb-2024 20:13:24" {WMEDLEY}<library>lafite>LAFITE-MAILSCAVENGE.;2 39927
|
||||
|
||||
:CHANGES-TO (FNS \MAILSCAVENGE.MAKEWINDOW)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:PREVIOUS-DATE "30-Sep-2021 22:57:39"
|
||||
{DSK}<Users>kaplan>Local>medley3.5>my-medley>library>lafite>MAILSCAVENGE.;3)
|
||||
:CHANGES-TO (VARS LAFITE-MAILSCAVENGECOMS)
|
||||
(FNS MAILSCAVENGE)
|
||||
|
||||
:PREVIOUS-DATE "24-Feb-2024 11:28:52" {WMEDLEY}<library>lafite>LAFITE-SCAVENGE.;1)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1985, 1989-1990, 2021 by Venue & Xerox Corporation.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-MAILSCAVENGECOMS)
|
||||
|
||||
(PRETTYCOMPRINT MAILSCAVENGECOMS)
|
||||
|
||||
(RPAQQ MAILSCAVENGECOMS
|
||||
[(FNS LAFITE.SCAVENGE \MAILSCAVENGE.INTERNAL \MAILSCAVENGE.OPEN.SCRATCH
|
||||
\MAILSCAVENGE.LENGTHWIDTH \MAILSCAVENGE.LFCOPYBYTES \MAILSCAVENGE.READSTAMP
|
||||
\MAILSCAVENGE.DUPLICATE? \MAILSCAVENGE.FORMAT \MAILSCAVENGE.MAKEWINDOW
|
||||
\MAILSCAVENGE.ASKUSER \MAILSCAVENGE.FIX.LENGTHS \MAILSCAVENGE.CONFIRM)
|
||||
(RPAQQ LAFITE-MAILSCAVENGECOMS
|
||||
[(FNS MAILSCAVENGE \MAILSCAVENGE.INTERNAL \MAILSCAVENGE.OPEN.SCRATCH \MAILSCAVENGE.LENGTHWIDTH
|
||||
\MAILSCAVENGE.LFCOPYBYTES \MAILSCAVENGE.READSTAMP \MAILSCAVENGE.DUPLICATE?
|
||||
\MAILSCAVENGE.FORMAT \MAILSCAVENGE.MAKEWINDOW \MAILSCAVENGE.ASKUSER
|
||||
\MAILSCAVENGE.FIX.LENGTHS \MAILSCAVENGE.CONFIRM)
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY (CONSTANTS (*START*LENGTH 8))
|
||||
(SPECVARS *FOLDER* *ERRORMSGSTREAM* *EOL*)
|
||||
(LOCALVARS . T))
|
||||
@@ -30,11 +27,11 @@ Copyright (c) 1985, 1989-1990, 2021 by Venue & Xerox Corporation.
|
||||
])
|
||||
(DEFINEQ
|
||||
|
||||
(LAFITE.SCAVENGE
|
||||
[LAMBDA (FOLDERNAME ERRORMSGSTREAM FORGET?) (* ; "Edited 18-Apr-89 18:19 by bvm")
|
||||
(MAILSCAVENGE
|
||||
[LAMBDA (FOLDERNAME ERRORMSGSTREAM FORGET?) (* ; "Edited 18-Apr-89 18:19 by bvm")
|
||||
|
||||
(* ;;
|
||||
"User entry to the scavenger. If FORGET?, we won't add folder to the list of known folders.")
|
||||
"User entry to the scavenger. If FORGET?, we won't add folder to the list of known folders.")
|
||||
|
||||
(LET [(FOLDER (LAFITE.OBTAIN.FOLDER (LA.LONGFILENAME FOLDERNAME LAFITEMAIL.EXT)
|
||||
'INPUT T (AND FORGET? :FORGET]
|
||||
@@ -654,12 +651,11 @@ Copyright (c) 1985, 1989-1990, 2021 by Venue & Xerox Corporation.
|
||||
|
||||
(ADDTOVAR LAMA \MAILSCAVENGE.FORMAT)
|
||||
)
|
||||
(PUTPROPS MAILSCAVENGE COPYRIGHT ("Venue & Xerox Corporation" 1985 1989 1990 2021))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (1459 39559 (LAFITE.SCAVENGE 1469 . 1991) (\MAILSCAVENGE.INTERNAL 1993 . 28504) (
|
||||
\MAILSCAVENGE.OPEN.SCRATCH 28506 . 29109) (\MAILSCAVENGE.LENGTHWIDTH 29111 . 29524) (
|
||||
\MAILSCAVENGE.LFCOPYBYTES 29526 . 30095) (\MAILSCAVENGE.READSTAMP 30097 . 30844) (
|
||||
\MAILSCAVENGE.DUPLICATE? 30846 . 31547) (\MAILSCAVENGE.FORMAT 31549 . 32376) (\MAILSCAVENGE.MAKEWINDOW
|
||||
32378 . 34275) (\MAILSCAVENGE.ASKUSER 34277 . 37407) (\MAILSCAVENGE.FIX.LENGTHS 37409 . 38567) (
|
||||
\MAILSCAVENGE.CONFIRM 38569 . 39557)))))
|
||||
(FILEMAP (NIL (1387 39490 (MAILSCAVENGE 1397 . 1922) (\MAILSCAVENGE.INTERNAL 1924 . 28435) (
|
||||
\MAILSCAVENGE.OPEN.SCRATCH 28437 . 29040) (\MAILSCAVENGE.LENGTHWIDTH 29042 . 29455) (
|
||||
\MAILSCAVENGE.LFCOPYBYTES 29457 . 30026) (\MAILSCAVENGE.READSTAMP 30028 . 30775) (
|
||||
\MAILSCAVENGE.DUPLICATE? 30777 . 31478) (\MAILSCAVENGE.FORMAT 31480 . 32307) (\MAILSCAVENGE.MAKEWINDOW
|
||||
32309 . 34206) (\MAILSCAVENGE.ASKUSER 34208 . 37338) (\MAILSCAVENGE.FIX.LENGTHS 37340 . 38498) (
|
||||
\MAILSCAVENGE.CONFIRM 38500 . 39488)))))
|
||||
STOP
|
||||
Binary file not shown.
@@ -1,26 +1,26 @@
|
||||
(DEFINE-FILE-INFO §READTABLE "INTERLISP" §PACKAGE "INTERLISP")
|
||||
(FILECREATED "20-Feb-87 08:05:52" {IVY}<BLOOMBERG>LISP>MAILSHARE.;1 12250
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
previous date%: "15-Dec-86 10:01:06" {INDIGO}<GSLWS>BASICS>MAILSHARE.;3)
|
||||
(FILECREATED "23-Feb-2024 23:24:20" {WMEDLEY}<library>lafite>LAFITE-MAILSHARE.;1 12072
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:PREVIOUS-DATE "20-Feb-87 08:05:52" {WMEDLEY}<library>lafite>MAILSHARE.;1)
|
||||
|
||||
|
||||
(* "
|
||||
Copyright (c) 1986, 1987 by Xerox Corporation. All rights reserved.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-MAILSHARECOMS)
|
||||
|
||||
(PRETTYCOMPRINT MAILSHARECOMS)
|
||||
|
||||
(RPAQQ MAILSHARECOMS ((* Menu Functions)
|
||||
(FNS MASH.TopLevel MASH.CreateFreeMenu MASH.GetMail MASH.Quit MASH.Consistent
|
||||
MASH.MakeDirectoryName MASH.MakeProfileName MASH.MakeIconWindow)
|
||||
(* Icon bitmaps)
|
||||
(BITMAPS MASH.Icon MASH.IconMask)
|
||||
(* VARS)
|
||||
(INITVARS (MASH.VALID-HOSTS '(IVY INDIGO PHYLUM ERIS QV CHERRY)))
|
||||
(GLOBALVARS MASH.VALID-HOSTS)
|
||||
(ADDVARS (BackgroundMenuCommands (Mail% Share '(MASH.TopLevel)
|
||||
"Start the Mail Share menu")))
|
||||
(VARS (BackgroundMenu NIL))))
|
||||
(RPAQQ LAFITE-MAILSHARECOMS
|
||||
((* Menu Functions)
|
||||
(FNS MASH.TopLevel MASH.CreateFreeMenu MASH.GetMail MASH.Quit MASH.Consistent
|
||||
MASH.MakeDirectoryName MASH.MakeProfileName MASH.MakeIconWindow)
|
||||
(* Icon bitmaps)
|
||||
(BITMAPS MASH.Icon MASH.IconMask)
|
||||
(* VARS)
|
||||
[INITVARS (MASH.VALID-HOSTS '(IVY INDIGO PHYLUM ERIS QV CHERRY]
|
||||
(GLOBALVARS MASH.VALID-HOSTS)
|
||||
(ADDVARS (BackgroundMenuCommands (Mail% Share '(MASH.TopLevel)
|
||||
"Start the Mail Share menu")))
|
||||
(VARS (BackgroundMenu NIL))))
|
||||
|
||||
|
||||
|
||||
@@ -237,12 +237,12 @@ Copyright (c) 1986, 1987 by Xerox Corporation. All rights reserved.
|
||||
(GLOBALVARS MASH.VALID-HOSTS)
|
||||
)
|
||||
|
||||
(ADDTOVAR BackgroundMenuCommands (Mail% Share '(MASH.TopLevel) "Start the Mail Share menu"))
|
||||
(ADDTOVAR BackgroundMenuCommands (Mail% Share '(MASH.TopLevel)
|
||||
"Start the Mail Share menu"))
|
||||
|
||||
(RPAQQ BackgroundMenu NIL)
|
||||
(PUTPROPS MAILSHARE COPYRIGHT ("Xerox Corporation" 1986 1987))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (1099 9386 (MASH.TopLevel 1109 . 1795) (MASH.CreateFreeMenu 1797 . 2978) (MASH.GetMail
|
||||
2980 . 6921) (MASH.Quit 6923 . 7601) (MASH.Consistent 7603 . 8502) (MASH.MakeDirectoryName 8504 . 8783
|
||||
) (MASH.MakeProfileName 8785 . 9126) (MASH.MakeIconWindow 9128 . 9384)))))
|
||||
(FILEMAP (NIL (944 9231 (MASH.TopLevel 954 . 1640) (MASH.CreateFreeMenu 1642 . 2823) (MASH.GetMail
|
||||
2825 . 6766) (MASH.Quit 6768 . 7446) (MASH.Consistent 7448 . 8347) (MASH.MakeDirectoryName 8349 . 8628
|
||||
) (MASH.MakeProfileName 8630 . 8971) (MASH.MakeIconWindow 8973 . 9229)))))
|
||||
STOP
|
||||
BIN
library/lafite/LAFITE-MAILSHARE.LCOM
Normal file
BIN
library/lafite/LAFITE-MAILSHARE.LCOM
Normal file
Binary file not shown.
@@ -1,29 +1,28 @@
|
||||
(DEFINE-FILE-INFO READTABLE "INTERLISP" PACKAGE "INTERLISP")
|
||||
(FILECREATED " 3-Aug-2005 09:39:34" {DSK}<project>medley3.5>lispusers>MIME.;42 139917
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
changes to%: (FNS DEMIMEPART)
|
||||
(FILECREATED "24-Feb-2024 10:05:37" {WMEDLEY}<library>lafite>LAFITE-MIME.;1 140113
|
||||
|
||||
previous date%: "28-Jun-2002 16:23:39" {DSK}<project>medley3.5>lispusers>MIME.;41)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS MIMECOMS)
|
||||
|
||||
:PREVIOUS-DATE " 3-Aug-2005 09:39:34" {WMEDLEY}<library>lafite>MIME.;1)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1998, 1999, 1920, 2000, 2001, 2002, 2005 by Xerox Corporation. All rights reserved.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-MIMECOMS)
|
||||
|
||||
(PRETTYCOMPRINT MIMECOMS)
|
||||
|
||||
(RPAQQ MIMECOMS
|
||||
(RPAQQ LAFITE-MIMECOMS
|
||||
((FNS DEMIME PARSEMIME DEMIMEPART DEMIMETEXT DEMIMEAPPL MIMEERROR MIMEHEADERS MIMEPARAMS
|
||||
PARSE-SUNATTACHMENT RECODEMIMEHEADER)
|
||||
(COMS
|
||||
(* ;; "Replaces function on LAFITECOMMANDS and LAFITEHARDCOPY, so that MIME objects are decoded in messages. These functions require the LAFITEMSG and MAILFOLDER records to be available:")
|
||||
|
||||
(DECLARE%: DONTEVAL@LOAD DONTCOPY EVAL@COMPILE (FILES (LOADCOMP)
|
||||
LAFITEDECLS))
|
||||
LAFITE-DECLS))
|
||||
(FNS LA.COPY.MESSAGE.TEXT \LAFITE.APPEND.MESSAGE.BODY)
|
||||
|
||||
(* ;;
|
||||
"Replaces function on LAFITEBROWSE, so that browser window interprets different character sets.")
|
||||
"Replaces function on LAFITEBROWSE, so that browser window interprets different character sets.")
|
||||
|
||||
(FNS PRINTMESSAGESUMMARY.STRING))
|
||||
(FNS ADDMIMEOBJECT MIMEOBJINIT MIMEOBJ.DISPLAYFN MIMEOBJ.COPYFN MIMEOBJ.BUTTONEVENTINFN
|
||||
@@ -41,7 +40,7 @@ Copyright (c) 1998, 1999, 1920, 2000, 2001, 2002, 2005 by Xerox Corporation. Al
|
||||
(GLOBALVARS ATTACHMENTDIR)
|
||||
[COMS
|
||||
(* ;;
|
||||
"MIMEFASTRECODECHARCODE is a copy of FASTRECODECHARCODED on /project/dict/code/CHARACTERFNS")
|
||||
"MIMEFASTRECODECHARCODE is a copy of FASTRECODECHARCODED on /project/dict/code/CHARACTERFNS")
|
||||
|
||||
(FNS CACHEMIMECHARRECODEMAPS MIMEFASTRECODECHARCODE MIMERECODEMAP)
|
||||
(INITVARS (CURRENTCHARENCODING 'XEROX-RENDERING))
|
||||
@@ -582,7 +581,7 @@ Copyright (c) 1998, 1999, 1920, 2000, 2001, 2002, 2005 by Xerox Corporation. Al
|
||||
(DECLARE%: DONTEVAL@LOAD DONTCOPY EVAL@COMPILE
|
||||
|
||||
(FILESLOAD (LOADCOMP)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
)
|
||||
(DEFINEQ
|
||||
|
||||
@@ -685,8 +684,8 @@ Copyright (c) 1998, 1999, 1920, 2000, 2001, 2002, 2005 by Xerox Corporation. Al
|
||||
|
||||
|
||||
|
||||
(* ;;
|
||||
"Replaces function on LAFITEBROWSE, so that browser window interprets different character sets.")
|
||||
(* ;; "Replaces function on LAFITEBROWSE, so that browser window interprets different character sets."
|
||||
)
|
||||
|
||||
(DEFINEQ
|
||||
|
||||
@@ -1649,84 +1648,83 @@ Copyright (c) 1998, 1999, 1920, 2000, 2001, 2002, 2005 by Xerox Corporation. Al
|
||||
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(PUTPROPS BINHEXBYTE MACRO
|
||||
(NIL (IF (EQ REPEAT 0)
|
||||
THEN [PROG (C C2 REPFLAG)
|
||||
GETBYTE
|
||||
[WHILE (MEMB (SETQ C (BIN INSTREAM))
|
||||
(CHARCODE (CR LF]
|
||||
(CL:UNLESS (EQ (CHARCODE %:)
|
||||
C)
|
||||
[SETQ C (CL:SVREF BINHEXCHARARRAY (- C (CONSTANT (CHCON1 BINHEXCHARS]
|
||||
(PUTPROPS BINHEXBYTE MACRO
|
||||
(NIL (IF (EQ REPEAT 0)
|
||||
THEN [PROG (C C2 REPFLAG)
|
||||
GETBYTE
|
||||
[WHILE (MEMB (SETQ C (BIN INSTREAM))
|
||||
(CHARCODE (CR LF]
|
||||
(CL:UNLESS (EQ (CHARCODE %:)
|
||||
C)
|
||||
[SETQ C (CL:SVREF BINHEXCHARARRAY (- C (CONSTANT (CHCON1
|
||||
BINHEXCHARS
|
||||
]
|
||||
|
||||
(* ;; "Save byte in C for repetition")
|
||||
(* ;; "Save byte in C for repetition")
|
||||
|
||||
(SETQ C (SELECTQ POS
|
||||
(0 (* ;
|
||||
"Start of byte, used 6 bits from first code, 2 bits from second code, carry over 4 bits")
|
||||
(SETQ POS 1)
|
||||
[WHILE (MEMB (SETQ C2 (BIN INSTREAM))
|
||||
(CHARCODE (CR LF]
|
||||
(CL:WHEN (EQ (CHARCODE %:)
|
||||
C2)
|
||||
(HELP
|
||||
(SETQ C (SELECTQ POS
|
||||
(0 (* ;
|
||||
"Start of byte, used 6 bits from first code, 2 bits from second code, carry over 4 bits")
|
||||
(SETQ POS 1)
|
||||
[WHILE (MEMB (SETQ C2 (BIN INSTREAM))
|
||||
(CHARCODE (CR LF]
|
||||
(CL:WHEN (EQ (CHARCODE %:)
|
||||
C2)
|
||||
(HELP
|
||||
"BINHEX FILE TERMINATES IN THE MIDDLE OF A BYTE"
|
||||
))
|
||||
[SETQ C2 (CL:SVREF BINHEXCHARARRAY
|
||||
(- C2 (CONSTANT (CHCON1 BINHEXCHARS]
|
||||
(SETQ NEXTBYTE (LOGAND 255 (LLSH C2 4)))
|
||||
(LOGOR (LLSH C 2)
|
||||
(LRSH C2 4)))
|
||||
(1 (* ;
|
||||
" NEXTBYTE has 4 left-adjusted bits, use 4 bits from current code, save 2 bits")
|
||||
(SETQ POS 2)
|
||||
(PROG1 (LOGOR NEXTBYTE (LRSH C 2))
|
||||
(SETQ NEXTBYTE (LOGAND 255 (LLSH C 6)))))
|
||||
(2 (* ;
|
||||
"NEXTBYTE has 2 left-adjusted bits, use all 6 bits from current code, save nothing")
|
||||
(SETQ POS 0)
|
||||
(PROG1 (LOGOR NEXTBYTE C)
|
||||
(SETQ NEXTBYTE 0)))
|
||||
NIL))
|
||||
))
|
||||
[SETQ C2 (CL:SVREF BINHEXCHARARRAY
|
||||
(- C2 (CONSTANT (CHCON1 BINHEXCHARS]
|
||||
(SETQ NEXTBYTE (LOGAND 255 (LLSH C2 4)))
|
||||
(LOGOR (LLSH C 2)
|
||||
(LRSH C2 4)))
|
||||
(1 (* ;
|
||||
" NEXTBYTE has 4 left-adjusted bits, use 4 bits from current code, save 2 bits")
|
||||
(SETQ POS 2)
|
||||
(PROG1 (LOGOR NEXTBYTE (LRSH C 2))
|
||||
(SETQ NEXTBYTE (LOGAND 255 (LLSH C 6)))))
|
||||
(2 (* ;
|
||||
"NEXTBYTE has 2 left-adjusted bits, use all 6 bits from current code, save nothing")
|
||||
(SETQ POS 0)
|
||||
(PROG1 (LOGOR NEXTBYTE C)
|
||||
(SETQ NEXTBYTE 0)))
|
||||
NIL))
|
||||
|
||||
(* ;; "144 is hex 90, the repetition mark")
|
||||
(* ;; "144 is hex 90, the repetition mark")
|
||||
|
||||
(IF REPFLAG
|
||||
THEN
|
||||
(IF REPFLAG
|
||||
THEN
|
||||
(* ;; "C now contains the repetition factor")
|
||||
|
||||
(* ;; "C now contains the repetition factor")
|
||||
|
||||
(IF (EQ C 0)
|
||||
THEN (SETQ LASTBYTE 144)
|
||||
(RETURN 144)
|
||||
ELSE
|
||||
(IF (EQ C 0)
|
||||
THEN (SETQ LASTBYTE 144)
|
||||
(RETURN 144)
|
||||
ELSE
|
||||
|
||||
(* ;; "We already put out the prefix byte, and now we are putting out one that corresponds to the repeat-mark+number.")
|
||||
|
||||
(SETQ REPEAT (- C 2))
|
||||
(RETURN LASTBYTE))
|
||||
ELSEIF (EQ C 144)
|
||||
THEN (SETQ REPFLAG T)
|
||||
(GO GETBYTE)
|
||||
ELSE (SETQ LASTBYTE C)
|
||||
(RETURN C)))]
|
||||
ELSE (CL:DECF REPEAT)
|
||||
LASTBYTE)))
|
||||
(SETQ REPEAT (- C 2))
|
||||
(RETURN LASTBYTE))
|
||||
ELSEIF (EQ C 144)
|
||||
THEN (SETQ REPFLAG T)
|
||||
(GO GETBYTE)
|
||||
ELSE (SETQ LASTBYTE C)
|
||||
(RETURN C)))]
|
||||
ELSE (CL:DECF REPEAT)
|
||||
LASTBYTE)))
|
||||
|
||||
(PUTPROPS BINHEXWORD MACRO
|
||||
(NIL (LOGOR (LLSH (BINHEXBYTE)
|
||||
8)
|
||||
(BINHEXBYTE))))
|
||||
(PUTPROPS BINHEXWORD MACRO (NIL (LOGOR (LLSH (BINHEXBYTE)
|
||||
8)
|
||||
(BINHEXBYTE))))
|
||||
|
||||
(PUTPROPS BINHEXLONG MACRO
|
||||
(NIL (LOGOR (LLSH (BINHEXWORD)
|
||||
16)
|
||||
(BINHEXWORD))))
|
||||
(PUTPROPS BINHEXLONG MACRO (NIL (LOGOR (LLSH (BINHEXWORD)
|
||||
16)
|
||||
(BINHEXWORD))))
|
||||
)
|
||||
)
|
||||
|
||||
(RPAQ? ATTACHMENTDIR '(CONCAT "{dsk}/tilde/" (L-CASE (USERNAME))
|
||||
"/attachments"))
|
||||
"/attachments"))
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS ATTACHMENTDIR)
|
||||
@@ -1823,9 +1821,8 @@ Copyright (c) 1998, 1999, 1920, 2000, 2001, 2002, 2005 by Xerox Corporation. Al
|
||||
|
||||
(RPAQ? CURRENTCHARENCODING 'XEROX-RENDERING)
|
||||
|
||||
(RPAQQ CACHEDCHARENCODINGS (ISO8859/1 ISO-8859-1 ISO8859_1 ISO% 8859-1 LATIN1 ISO8859/2
|
||||
ISO-8859-2 ISO8859_2 LATIN2 CP1252 WINDOWS-1252 CP1250
|
||||
WINDOWS-1250))
|
||||
(RPAQQ CACHEDCHARENCODINGS (ISO8859/1 ISO-8859-1 ISO8859_1 ISO% 8859-1 LATIN1 ISO8859/2 ISO-8859-2
|
||||
ISO8859_2 LATIN2 CP1252 WINDOWS-1252 CP1250 WINDOWS-1250))
|
||||
|
||||
|
||||
|
||||
@@ -1951,22 +1948,21 @@ Copyright (c) 1998, 1999, 1920, 2000, 2001, 2002, 2005 by Xerox Corporation. Al
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(RECORD MIMEPART (STARTPOS ENDPOS TYPE ENCODING DISPOSITION PARTNUM SUBPARTS)
|
||||
(RECORD TYPE ((MAINTYPE SUBTYPE) . TYPEPROPS))
|
||||
(RECORD DISPOSITION ((MAINDISPOSITION SUBDISPOSITION) . DISPOSITIONPROPS)))
|
||||
(RECORD TYPE ((MAINTYPE SUBTYPE) . TYPEPROPS))
|
||||
(RECORD DISPOSITION ((MAINDISPOSITION SUBDISPOSITION) . DISPOSITIONPROPS)))
|
||||
)
|
||||
)
|
||||
(PUTPROPS MIME COPYRIGHT ("Xerox Corporation" 1998 1999 1920 2000 2001 2002 2005))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (2958 37439 (DEMIME 2968 . 4254) (PARSEMIME 4256 . 12136) (DEMIMEPART 12138 . 15903) (
|
||||
DEMIMETEXT 15905 . 20315) (DEMIMEAPPL 20317 . 25190) (MIMEERROR 25192 . 25520) (MIMEHEADERS 25522 .
|
||||
27090) (MIMEPARAMS 27092 . 30800) (PARSE-SUNATTACHMENT 30802 . 33712) (RECODEMIMEHEADER 33714 . 37437)
|
||||
) (37733 44293 (LA.COPY.MESSAGE.TEXT 37743 . 40444) (\LAFITE.APPEND.MESSAGE.BODY 40446 . 44291)) (
|
||||
44407 44646 (PRINTMESSAGESUMMARY.STRING 44417 . 44644)) (44647 54572 (ADDMIMEOBJECT 44657 . 46002) (
|
||||
MIMEOBJINIT 46004 . 46929) (MIMEOBJ.DISPLAYFN 46931 . 48688) (MIMEOBJ.COPYFN 48690 . 49587) (
|
||||
MIMEOBJ.BUTTONEVENTINFN 49589 . 52996) (MIMEOBJ.IMAGEBOXFN 52998 . 54570)) (54592 64584 (DEPS 54602 .
|
||||
57677) (FINDPSSEGMENTS 57679 . 59923) (POSTSCRIPTPART 59925 . 64582)) (64585 101169 (STREAMFROMBASE64
|
||||
64595 . 73017) (STREAMFROMBINHEX 73019 . 78166) (STREAMFROMASCII 78168 . 79197) (
|
||||
STREAMFROMENRICHEDTEXT 79199 . 86552) (STREAMFROMUUENCODE 86554 . 89507) (STREAMFROMQUOTEDPRINTABLE
|
||||
89509 . 94702) (STREAMFROMUTF-8 94704 . 101167)) (105793 110524 (CACHEMIMECHARRECODEMAPS 105803 .
|
||||
107748) (MIMEFASTRECODECHARCODE 107750 . 109231) (MIMERECODEMAP 109233 . 110522)))))
|
||||
(FILEMAP (NIL (2880 37361 (DEMIME 2890 . 4176) (PARSEMIME 4178 . 12058) (DEMIMEPART 12060 . 15825) (
|
||||
DEMIMETEXT 15827 . 20237) (DEMIMEAPPL 20239 . 25112) (MIMEERROR 25114 . 25442) (MIMEHEADERS 25444 .
|
||||
27012) (MIMEPARAMS 27014 . 30722) (PARSE-SUNATTACHMENT 30724 . 33634) (RECODEMIMEHEADER 33636 . 37359)
|
||||
) (37656 44216 (LA.COPY.MESSAGE.TEXT 37666 . 40367) (\LAFITE.APPEND.MESSAGE.BODY 40369 . 44214)) (
|
||||
44330 44569 (PRINTMESSAGESUMMARY.STRING 44340 . 44567)) (44570 54495 (ADDMIMEOBJECT 44580 . 45925) (
|
||||
MIMEOBJINIT 45927 . 46852) (MIMEOBJ.DISPLAYFN 46854 . 48611) (MIMEOBJ.COPYFN 48613 . 49510) (
|
||||
MIMEOBJ.BUTTONEVENTINFN 49512 . 52919) (MIMEOBJ.IMAGEBOXFN 52921 . 54493)) (54515 64507 (DEPS 54525 .
|
||||
57600) (FINDPSSEGMENTS 57602 . 59846) (POSTSCRIPTPART 59848 . 64505)) (64508 101092 (STREAMFROMBASE64
|
||||
64518 . 72940) (STREAMFROMBINHEX 72942 . 78089) (STREAMFROMASCII 78091 . 79120) (
|
||||
STREAMFROMENRICHEDTEXT 79122 . 86475) (STREAMFROMUUENCODE 86477 . 89430) (STREAMFROMQUOTEDPRINTABLE
|
||||
89432 . 94625) (STREAMFROMUTF-8 94627 . 101090)) (106123 110854 (CACHEMIMECHARRECODEMAPS 106133 .
|
||||
108078) (MIMEFASTRECODECHARCODE 108080 . 109561) (MIMERECODEMAP 109563 . 110852)))))
|
||||
STOP
|
||||
BIN
library/lafite/LAFITE-MIME.LCOM
Normal file
BIN
library/lafite/LAFITE-MIME.LCOM
Normal file
Binary file not shown.
@@ -1,18 +1,18 @@
|
||||
(DEFINE-FILE-INFO READTABLE "INTERLISP" PACKAGE "INTERLISP")
|
||||
(FILECREATED " 5-Sep-95 16:43:15" {DSK}<lispcore>lafite>parc-94>NEWNSMAIL.;2 91089
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
changes to%: (VARS NEWNSMAILCOMS)
|
||||
(FILECREATED "24-Feb-2024 11:59:44" {WMEDLEY}<library>lafite>LAFITE-NEWNSMAIL.;2 95095
|
||||
|
||||
previous date%: " 6-Aug-93 17:20:37" {DSK}<lispcore>lafite>parc-94>NEWNSMAIL.;1)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS LAFITE-NEWNSMAILCOMS NEWNSMAILCOMS)
|
||||
(FNS \NSMAIL.NEW.CHECK)
|
||||
|
||||
:PREVIOUS-DATE " 5-Sep-95 16:43:15" {WMEDLEY}<library>lafite>NEWNSMAIL.;1)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1989, 1990, 1992, 1993, 1995 by Xerox Corporation. All rights reserved.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-NEWNSMAILCOMS)
|
||||
|
||||
(PRETTYCOMPRINT NEWNSMAILCOMS)
|
||||
|
||||
(RPAQQ NEWNSMAILCOMS
|
||||
(RPAQQ LAFITE-NEWNSMAILCOMS
|
||||
[(COURIERPROGRAMS NEW.MAILTRANSPORT NEW.INBASKET)
|
||||
(COMS (* ; "Courier type EnvelopeItem")
|
||||
(FNS \NS.NEW.READ.ENVELOPE.ITEM \NS.NEW.WRITE.ENVELOPE.ITEM)
|
||||
@@ -68,20 +68,19 @@ Copyright (c) 1989, 1990, 1992, 1993, 1995 by Xerox Corporation. All rights res
|
||||
(VARS \NSMAIL.GOOD.BODY.PARTS \NSMAIL.DISCARDABLE.BODY.PARTS)
|
||||
(GLOBALVARS \NSMAIL.GOOD.BODY.PARTS \NSMAIL.DISCARDABLE.BODY.PARTS)
|
||||
(ALISTS (LAFITEMODELST NS))
|
||||
(FILES NSMAIL))
|
||||
(FILES LAFITE-NSMAIL))
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY (LOCALVARS . T)
|
||||
(RECORDS FORWARD)
|
||||
(MACROS \NSMAIL.BODY.PART.TYPE)
|
||||
(GLOBALVARS \NSMAIL.BODY.PART.TYPES \NSMAIL.HEADING.ATTRIBUTES)
|
||||
[P (CL:PROCLAIM '(CL:SPECIAL *RETRIEVAL-ERROR*]
|
||||
(FILES (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
(FILES (LOADCOMP)
|
||||
NSMAIL ATBL)
|
||||
LAFITE-NSMAIL ATBL)
|
||||
(* ; "ATBL has \COMPUTED.FORM macro.")
|
||||
(CONSTANTS * \NSMAIL.CONTENTS.TYPES)
|
||||
(* ;
|
||||
"This one we need at run time also")
|
||||
(* ; "This one we need at run time also")
|
||||
DOCOPY
|
||||
(VARS \NSMAIL.BODY.PART.TYPES))
|
||||
(DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA)
|
||||
@@ -106,7 +105,7 @@ Copyright (c) 1989, 1990, 1992, 1993, 1995 by Xerox Corporation. All rights res
|
||||
(ReportNotAllowed 4)))
|
||||
(NAME NSNAME)
|
||||
(RNAME NEW.RNAME (* ;
|
||||
"(choice (xns 0 name) (gateway 1 gateway.name))")
|
||||
"(choice (xns 0 name) (gateway 1 gateway.name))")
|
||||
)
|
||||
(RNAME.LIST (SEQUENCE RNAME))
|
||||
[GATEWAY.NAME (RECORD (COUNTRY STRING)
|
||||
@@ -367,8 +366,7 @@ Copyright (c) 1989, 1990, 1992, 1993, 1995 by Xerox Corporation. All rights res
|
||||
(Converted 15 (SEQUENCE CONVERTED.ITEM))
|
||||
(AuthenticationLevelOfSender 16 AUTHENTICATION.LEVEL)))
|
||||
|
||||
(PUTPROPS NEW.ENVELOPE.ITEM COURIERDEF (\NS.NEW.READ.ENVELOPE.ITEM
|
||||
\NS.NEW.WRITE.ENVELOPE.ITEM))
|
||||
(PUTPROPS NEW.ENVELOPE.ITEM COURIERDEF (\NS.NEW.READ.ENVELOPE.ITEM \NS.NEW.WRITE.ENVELOPE.ITEM))
|
||||
|
||||
|
||||
|
||||
@@ -414,8 +412,7 @@ Copyright (c) 1989, 1990, 1992, 1993, 1995 by Xerox Corporation. All rights res
|
||||
(BodyOffset 198 LONGCARDINAL)
|
||||
(LispFormatting 4911 STRING)))
|
||||
|
||||
(PUTPROPS HEADING.ATTRIBUTE COURIERDEF (\NS.READ.HEADING.ATTRIBUTE
|
||||
\NS.WRITE.HEADING.ATTRIBUTE))
|
||||
(PUTPROPS HEADING.ATTRIBUTE COURIERDEF (\NS.READ.HEADING.ATTRIBUTE \NS.WRITE.HEADING.ATTRIBUTE))
|
||||
|
||||
|
||||
|
||||
@@ -546,7 +543,7 @@ Copyright (c) 1989, 1990, 1992, 1993, 1995 by Xerox Corporation. All rights res
|
||||
(RPAQ? \NSMAIL.NEW.SERVER.CACHE )
|
||||
|
||||
(RPAQQ *NSMAIL-OP-VECTOR* (NEWNS.POLLNEWMAIL NEWNS.OPENMAILBOX NEWNS.NEXTMESSAGE
|
||||
NEWNS.RETRIEVEMESSAGE NEWNS.CLOSEMAILBOX))
|
||||
NEWNS.RETRIEVEMESSAGE NEWNS.CLOSEMAILBOX))
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS \NSMAIL.NEW.SERVER.CACHE \NSMAIL.MIN.VP.TYPE \NSMAIL.MAX.VP.TYPE)
|
||||
@@ -577,8 +574,127 @@ Copyright (c) 1989, 1990, 1992, 1993, 1995 by Xerox Corporation. All rights res
|
||||
)
|
||||
|
||||
(\NSMAIL.NEW.CHECK
|
||||
(LAMBDA (ADDRESS REGISTEREDNAME CREDENTIALS MAILSERVER STREAM RETURNERRORS) (* ; "Edited 6-Aug-93 16:41 by bvm") (* ;;; "Performs a mail check for user REGISTEREDNAME at ADDRESS, returning INBASKETSTATE if successful, NIL if not. Updates the MAILSTATE of MAILSERVER as appropriate to reflect current SESSION and STATEFIRSTNEW (first new message)") (RESETLST (PROG ((JUSTCHECKING (NULL STREAM)) (STATE (fetch (MAILSERVER MAILSTATE) of MAILSERVER)) SESSION POLLRESULT TIMER) (SETQ SESSION (fetch STATESESSION of STATE)) RETRY (COND ((NULL SESSION) (if JUSTCHECKING then (* ; "Just polling, don't need session") (SETQ POLLRESULT (COURIER.EXPEDITED.CALL ADDRESS \NSMAIL.SOCKET (QUOTE NEW.INBASKET) (QUOTE MAILPOLL) (fetch STATENAME of STATE) (CAR CREDENTIALS) (CDR CREDENTIALS) (QUOTE RETURNERRORS))) (GO GOTRESULT)) (COND ((NULL STREAM) (* ; "Need a real Courier stream for some reason here") (COND ((SETQ STREAM (COURIER.OPEN ADDRESS NIL T (QUOTE NSMAIL))) (RESETSAVE NIL (LIST (QUOTE CLOSEF) STREAM))) (T (RETURN NIL))))) (COND ((EQ (CAR (SETQ SESSION (COURIER.CALL STREAM (QUOTE NEW.INBASKET) (QUOTE LOGON) (fetch STATENAME of STATE) (CAR CREDENTIALS) (CDR CREDENTIALS) (QUOTE RETURNERRORS)))) (QUOTE ERROR)) (GO ERROR))) (* ; "result = (session state anchor)") (SETQ POLLRESULT (CADR SESSION)) (replace STATESESSION of STATE with (SETQ SESSION (CAR SESSION)))) (T (SETQ POLLRESULT (COND ((NULL STREAM) (* ; "Just checking") (COURIER.EXPEDITED.CALL ADDRESS \NSMAIL.SOCKET (QUOTE NEW.INBASKET) (QUOTE MAILCHECK) SESSION (QUOTE RETURNERRORS))) (T (COURIER.CALL STREAM (QUOTE NEW.INBASKET) (QUOTE MAILCHECK) SESSION (QUOTE RETURNERRORS))))))) GOTRESULT (COND ((NULL POLLRESULT) (* ; "Failed somehow") (RETURN NIL)) ((EQ (CAR (LISTP POLLRESULT)) (QUOTE ERROR)) (COND ((EQ (CADR POLLRESULT) (QUOTE SESSION.ERROR)) (* ; "Session timed out, start a new one") (replace STATESESSION of STATE with (SETQ SESSION NIL)) (replace STATEFIRSTNEW of STATE with NIL) (replace STATEOLDLAST of STATE with NIL) (GO RETRY)) (T (SETQ SESSION POLLRESULT) (GO ERROR))))) (replace STATELASTERROR of STATE with NIL) (replace (MAILSERVER CONTINUANCE) of MAILSERVER with NIL) (RETURN (COURIER.FETCH (NEW.INBASKET . STATE) TOTAL of POLLRESULT)) ERROR (if (AND (NOT (EQUAL (CDR SESSION) (QUOTE (CONNECTION.PROBLEM NoResponse)))) (NOT (EQUAL (CDR SESSION) (fetch STATELASTERROR of STATE)))) then (* ;; "Don't bother mentioning the error if it's just a timeout, since mailwatch will handle our NIL response fine. Also don't repeatedly print the same error message.") (replace STATELASTERROR of STATE with (CDR SESSION)) (LET ((ERRMSG (CASE (CADR SESSION) ((REJECT) (* ; "3rd element = reject reason") (LET* ((REASON (CADDR SESSION)) (TYPE (CAR REASON))) (if (AND (EQ TYPE (QUOTE WrongVersionOfService)) (<= (CAADR REASON) 1) (< (CADADR REASON) 2)) then (* ; "Server supports old inbasket, but not new") (PRINTOUT PROMPTWINDOW T T "****Note: " (fetch (MAILSERVER MAILSERVERNAME) of MAILSERVER) " does not support new mail protocols." T) (if (NOT RETURNERRORS) then (RETURN NIL))) TYPE)) ((SERVICE.ERROR ACCESS.ERROR) (* ; "the specific reason is just as informative, and more readable than the whole error.") (CADDR SESSION)) (T (COND (NSWIZARDFLG (HELP SESSION))) (SUBSTRING (CDR SESSION) 2 -2))))) (if RETURNERRORS then (RETURN (CONS (QUOTE ERROR) ERRMSG)) elseif (AND (EQ ERRMSG (QUOTE NoSuchInbasket)) (\NSMAIL.FIX.MAILBOX.LOCATIONS)) then (* ;; "We get this when the server no longer holds this inbox. At this point we have fixed mail servers in NS mode, but there's no good way for us to report the news, so go ahead and return NIL, but set %"continuance%" so that poll will happen again immediately") (replace (MAILSERVER CONTINUANCE) of MAILSERVER with 0) else (LET ((*PRINT-CASE* :UPCASE)) (* ; "Lousy atomic error names...") (CL:FORMAT PROMPTWINDOW "~%%From mail server ~A: ~A" (fetch (MAILSERVER MAILSERVERNAME) of MAILSERVER) (CASE ERRMSG (NoSuchService "Mail service not running") (T ERRMSG))))))) (RETURN NIL))))
|
||||
)
|
||||
[LAMBDA (ADDRESS REGISTEREDNAME CREDENTIALS MAILSERVER STREAM RETURNERRORS)
|
||||
(* ; "Edited 24-Feb-2024 11:54 by rmk")
|
||||
(* ; "Edited 6-Aug-93 16:41 by bvm")
|
||||
|
||||
(* ;;; "Performs a mail check for user REGISTEREDNAME at ADDRESS, returning INBASKETSTATE if successful, NIL if not. Updates the MAILSTATE of MAILSERVER as appropriate to reflect current SESSION and STATEFIRSTNEW (first new message)")
|
||||
|
||||
(RESETLST
|
||||
(PROG ((JUSTCHECKING (NULL STREAM))
|
||||
(STATE (fetch (MAILSERVER MAILSTATE) of MAILSERVER))
|
||||
SESSION POLLRESULT TIMER)
|
||||
(SETQ SESSION (fetch STATESESSION of STATE))
|
||||
RETRY
|
||||
[COND
|
||||
[(NULL SESSION)
|
||||
(if JUSTCHECKING
|
||||
then (* ; "Just polling, don't need session")
|
||||
(SETQ POLLRESULT (COURIER.EXPEDITED.CALL ADDRESS \NSMAIL.SOCKET
|
||||
'NEW.INBASKET
|
||||
'MAILPOLL
|
||||
(fetch STATENAME of STATE)
|
||||
(CAR CREDENTIALS)
|
||||
(CDR CREDENTIALS)
|
||||
'RETURNERRORS))
|
||||
(GO GOTRESULT))
|
||||
[COND
|
||||
((NULL STREAM) (* ;
|
||||
"Need a real Courier stream for some reason here")
|
||||
(COND
|
||||
((SETQ STREAM (COURIER.OPEN ADDRESS NIL T 'NSMAIL))
|
||||
(RESETSAVE NIL (LIST 'CLOSEF STREAM)))
|
||||
(T (RETURN NIL]
|
||||
(COND
|
||||
((EQ [CAR (SETQ SESSION (COURIER.CALL STREAM 'NEW.INBASKET 'LOGON
|
||||
(fetch STATENAME of STATE)
|
||||
(CAR CREDENTIALS)
|
||||
(CDR CREDENTIALS)
|
||||
'RETURNERRORS]
|
||||
'ERROR)
|
||||
(GO ERROR))) (* ; "result = (session state anchor)")
|
||||
(SETQ POLLRESULT (CADR SESSION))
|
||||
(replace STATESESSION of STATE with (SETQ SESSION (CAR SESSION]
|
||||
(T (SETQ POLLRESULT (COND
|
||||
((NULL STREAM) (* ; "Just checking")
|
||||
(COURIER.EXPEDITED.CALL ADDRESS \NSMAIL.SOCKET
|
||||
'NEW.INBASKET 'MAILCHECK SESSION 'RETURNERRORS))
|
||||
(T (COURIER.CALL STREAM 'NEW.INBASKET 'MAILCHECK SESSION
|
||||
'RETURNERRORS]
|
||||
GOTRESULT
|
||||
[COND
|
||||
((NULL POLLRESULT) (* ; "Failed somehow")
|
||||
(RETURN NIL))
|
||||
((EQ (CAR (LISTP POLLRESULT))
|
||||
'ERROR)
|
||||
(COND
|
||||
((EQ (CADR POLLRESULT)
|
||||
'SESSION.ERROR) (* ;
|
||||
"Session timed out, start a new one")
|
||||
(replace STATESESSION of STATE with (SETQ SESSION NIL))
|
||||
(replace STATEFIRSTNEW of STATE with NIL)
|
||||
(replace STATEOLDLAST of STATE with NIL)
|
||||
(GO RETRY))
|
||||
(T (SETQ SESSION POLLRESULT)
|
||||
(GO ERROR]
|
||||
(replace STATELASTERROR of STATE with NIL)
|
||||
(replace (MAILSERVER CONTINUANCE) of MAILSERVER with NIL)
|
||||
(RETURN (COURIER.FETCH (NEW.INBASKET . STATE)
|
||||
TOTAL of POLLRESULT))
|
||||
ERROR
|
||||
[if [AND [NOT (EQUAL (CDR SESSION)
|
||||
'(CONNECTION.PROBLEM NoResponse]
|
||||
(NOT (EQUAL (CDR SESSION)
|
||||
(fetch STATELASTERROR of STATE]
|
||||
then
|
||||
(* ;; "Don't bother mentioning the error if it's just a timeout, since mailwatch will handle our NIL response fine. Also don't repeatedly print the same error message.")
|
||||
|
||||
(replace STATELASTERROR of STATE with (CDR SESSION))
|
||||
(LET [(ERRMSG (CASE (CADR SESSION)
|
||||
((REJECT) (* ; "3rd element = reject reason")
|
||||
(LET* ((REASON (CADDR SESSION))
|
||||
(TYPE (CAR REASON)))
|
||||
(if (AND (EQ TYPE 'WrongVersionOfService)
|
||||
(<= (CAADR REASON)
|
||||
1)
|
||||
(< (CADADR REASON)
|
||||
2))
|
||||
then (* ;
|
||||
"Server supports old inbasket, but not new")
|
||||
(PRINTOUT PROMPTWINDOW T T "****Note: "
|
||||
(fetch (MAILSERVER MAILSERVERNAME)
|
||||
of MAILSERVER)
|
||||
|
||||
" does not support new mail protocols."
|
||||
T)
|
||||
(if (NOT RETURNERRORS)
|
||||
then (RETURN NIL)))
|
||||
TYPE))
|
||||
((SERVICE.ERROR ACCESS.ERROR)
|
||||
(* ;
|
||||
"the specific reason is just as informative, and more readable than the whole error.")
|
||||
(CADDR SESSION))
|
||||
(T (COND
|
||||
(NSWIZARDFLG (HELP SESSION)))
|
||||
(SUBSTRING (CDR SESSION)
|
||||
2 -2)))]
|
||||
(if RETURNERRORS
|
||||
then (RETURN (CONS 'ERROR ERRMSG))
|
||||
elseif (AND (EQ ERRMSG 'NoSuchInbasket)
|
||||
(\NSMAIL.FIX.MAILBOX.LOCATIONS))
|
||||
then
|
||||
|
||||
(* ;; "We get this when the server no longer holds this inbox. At this point we have fixed mail servers in NS mode, but there's no good way for us to report the news, so go ahead and return NIL, but set %"continuance%" so that poll will happen again immediately")
|
||||
|
||||
(replace (MAILSERVER CONTINUANCE) of MAILSERVER with 0)
|
||||
else (LET ((*PRINT-CASE* :UPCASE))
|
||||
(* ; "Lousy atomic error names...")
|
||||
(CL:FORMAT PROMPTWINDOW "~%%From mail server ~A: ~A"
|
||||
(fetch (MAILSERVER MAILSERVERNAME) of MAILSERVER)
|
||||
(CASE ERRMSG
|
||||
(NoSuchService "Mail service not running")
|
||||
(T ERRMSG))]
|
||||
(RETURN NIL)))])
|
||||
|
||||
(NEWNS.NEXTMESSAGE
|
||||
(LAMBDA (MAILBOX) (* ; "Edited 13-Dec-89 17:27 by bvm") (LET ((NEXT (NEW.INBASKET.CALL MAILBOX (QUOTE RETRIEVE.ENVELOPES) (fetch NSMAILLASTINDEX of MAILBOX) (QUOTE NEXT) (fetch NSMAILSESSION of MAILBOX)))) (* ;; "NEXT = (envelope status index)") (DESTRUCTURING-BIND (ENVELOPE STATUS INDEX) NEXT (if (EQ INDEX 0) then (* ; "No more messages") NIL else (replace NSMAILLASTINDEX of MAILBOX with INDEX) (replace NSMAILENVTAIL of MAILBOX with ENVELOPE) (* ; "Success") T))))
|
||||
@@ -684,17 +800,17 @@ Attachment: " T)) (TERPRI *MSGSTREAM*) (* ; "End header with blank line") (SETQ
|
||||
(RPAQQ \NSMAIL.GOOD.BODY.PARTS (0 5 6 2))
|
||||
|
||||
(RPAQQ \NSMAIL.DISCARDABLE.BODY.PARTS ((201 "Tioga formatting")
|
||||
(202 "Tioga header")))
|
||||
(202 "Tioga header")))
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS \NSMAIL.GOOD.BODY.PARTS \NSMAIL.DISCARDABLE.BODY.PARTS)
|
||||
)
|
||||
|
||||
(ADDTOVAR LAFITEMODELST (NS 1 \NSMAIL.NEW.SEND.PARSE \NSMAIL.NEW.SEND \NSMAIL.MAKEANSWERFORM
|
||||
\NSMAIL.NEW.AUTHENTICATE \NSMAIL.MESSAGE.P
|
||||
\NSMAIL.MESSAGE.FROM.SELF.P \NSMAIL.LOGIN))
|
||||
\NSMAIL.NEW.AUTHENTICATE \NSMAIL.MESSAGE.P \NSMAIL.MESSAGE.FROM.SELF.P
|
||||
\NSMAIL.LOGIN))
|
||||
|
||||
(FILESLOAD NSMAIL)
|
||||
(FILESLOAD LAFITE-NSMAIL)
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
@@ -709,11 +825,10 @@ Attachment: " T)) (TERPRI *MSGSTREAM*) (* ; "End header with blank line") (SETQ
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(PUTPROPS \NSMAIL.BODY.PART.TYPE MACRO [ARGS (COND
|
||||
((CADR (ASSOC (CAR ARGS)
|
||||
\NSMAIL.BODY.PART.TYPES)))
|
||||
(T (ERROR "Unknown body part type"
|
||||
(CAR ARGS))
|
||||
'IGNOREMACRO])
|
||||
((CADR (ASSOC (CAR ARGS)
|
||||
\NSMAIL.BODY.PART.TYPES)))
|
||||
(T (ERROR "Unknown body part type" (CAR ARGS))
|
||||
'IGNOREMACRO])
|
||||
)
|
||||
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
@@ -726,16 +841,16 @@ Attachment: " T)) (TERPRI *MSGSTREAM*) (* ; "End header with blank line") (SETQ
|
||||
|
||||
|
||||
(FILESLOAD (SOURCE)
|
||||
LAFITEDECLS)
|
||||
LAFITE-DECLS)
|
||||
|
||||
|
||||
(FILESLOAD (LOADCOMP)
|
||||
NSMAIL ATBL)
|
||||
LAFITE-NSMAIL ATBL)
|
||||
|
||||
|
||||
(RPAQQ \NSMAIL.CONTENTS.TYPES ((\CT.NULL 0)
|
||||
(\CT.STANDARD.MESSAGE 4)
|
||||
(\CT.REPORT 6)))
|
||||
(\CT.STANDARD.MESSAGE 4)
|
||||
(\CT.REPORT 6)))
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(RPAQQ \CT.NULL 0)
|
||||
@@ -774,26 +889,25 @@ DOCOPY
|
||||
|
||||
(ADDTOVAR LAMA NEW.INBASKET.CALL)
|
||||
)
|
||||
(PUTPROPS NEWNSMAIL COPYRIGHT ("Xerox Corporation" 1989 1990 1992 1993 1995))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (17944 19459 (\NS.NEW.READ.ENVELOPE.ITEM 17954 . 18719) (\NS.NEW.WRITE.ENVELOPE.ITEM
|
||||
18721 . 19457)) (20397 22075 (\NS.READ.HEADING.ATTRIBUTE 20407 . 21385) (\NS.WRITE.HEADING.ATTRIBUTE
|
||||
21387 . 22073)) (23334 24737 (\NSMAIL.READ.RNAME 23344 . 23902) (\NSMAIL.WRITE.RNAME 23904 . 24395) (
|
||||
\NSMAIL.RNAME.LENGTH 24397 . 24735)) (24841 26915 (RNAME.TO.STRING 24851 . 25030) (X400.NAME.TO.STRING
|
||||
25032 . 26719) (EQUAL.RNAMES 26721 . 26913)) (26940 46533 (\NSMAIL.NEW.SEND.PARSE 26950 . 29292) (
|
||||
\NSMAIL.CHECK.ENUMERATION 29294 . 30213) (\NSMAIL.NEW.SEND 30215 . 38707) (
|
||||
\NSMAIL.NEW.INVALID.RECIPIENTS 38709 . 39290) (\NSMAIL.BUILD.HEADING 39292 . 40591) (
|
||||
\NSMAIL.POST.BODY.PART 40593 . 42424) (\NSMAIL.NEW.PREPARE.ATTACHMENT 42426 . 44075) (
|
||||
\NSMAIL.CHECK.ABORT 44077 . 44435) (\NSMAIL.NEW.FINDSERVER 44437 . 45492) (\NSMAIL.NEW.CHECKSERVER
|
||||
45494 . 46531)) (48707 88661 (\NSMAIL.NEW.AUTHENTICATE 48717 . 49925) (NEWNS.POLLNEWMAIL 49927 . 50242
|
||||
) (NEWNS.OPENMAILBOX 50244 . 50928) (\NSMAIL.NEW.CHECK 50930 . 54952) (NEWNS.NEXTMESSAGE 54954 . 55448
|
||||
) (NEWNS.RETRIEVEMESSAGE 55450 . 59314) (\NSMAIL.READ.BODY.PARTS 59316 . 64727) (\NSMAIL.COPY.IA5
|
||||
64729 . 65478) (\NSMAIL.COPY.NSTEXTFILE 65480 . 67629) (\NSMAIL.READ.HEADING 67631 . 70366) (
|
||||
\NSMAIL.PARSE.ANNOTATION 70368 . 71102) (\NSMAIL.EMIT.ANNOTATION 71104 . 72372) (LA.TRIM.WHITESPACE
|
||||
72374 . 72496) (\NSMAIL.READ.FORWARDING 72498 . 73523) (\NSMAIL.NEW.PRINT.HEADING 73525 . 79149) (
|
||||
\NSMAIL.NEW.PRINT.NAMES 79151 . 80127) (\NSMAIL.EMIT.FORWARDING 80129 . 81963) (\NSMAIL.GDATE 81965 .
|
||||
82081) (\NSMAIL.TRANSLATE.IP.MESSAGEID 82083 . 82630) (\NSMAIL.MAYBE.QUOTE 82632 . 83270) (NULL.NSNAME
|
||||
83272 . 83614) (\NSMAIL.HANDLE.DELIVERY.REPORT 83616 . 86647) (\NSMAIL.RECIPIENT.NAME 86649 . 86876)
|
||||
(NEW.INBASKET.CALL 86878 . 87502) (NEWNS.CLOSEMAILBOX 87504 . 88220) (\NSMAIL.NEW.LOGOFF 88222 . 88659
|
||||
(FILEMAP (NIL (17902 19417 (\NS.NEW.READ.ENVELOPE.ITEM 17912 . 18677) (\NS.NEW.WRITE.ENVELOPE.ITEM
|
||||
18679 . 19415)) (20300 21978 (\NS.READ.HEADING.ATTRIBUTE 20310 . 21288) (\NS.WRITE.HEADING.ATTRIBUTE
|
||||
21290 . 21976)) (23182 24585 (\NSMAIL.READ.RNAME 23192 . 23750) (\NSMAIL.WRITE.RNAME 23752 . 24243) (
|
||||
\NSMAIL.RNAME.LENGTH 24245 . 24583)) (24689 26763 (RNAME.TO.STRING 24699 . 24878) (X400.NAME.TO.STRING
|
||||
24880 . 26567) (EQUAL.RNAMES 26569 . 26761)) (26788 46381 (\NSMAIL.NEW.SEND.PARSE 26798 . 29140) (
|
||||
\NSMAIL.CHECK.ENUMERATION 29142 . 30061) (\NSMAIL.NEW.SEND 30063 . 38555) (
|
||||
\NSMAIL.NEW.INVALID.RECIPIENTS 38557 . 39138) (\NSMAIL.BUILD.HEADING 39140 . 40439) (
|
||||
\NSMAIL.POST.BODY.PART 40441 . 42272) (\NSMAIL.NEW.PREPARE.ATTACHMENT 42274 . 43923) (
|
||||
\NSMAIL.CHECK.ABORT 43925 . 44283) (\NSMAIL.NEW.FINDSERVER 44285 . 45340) (\NSMAIL.NEW.CHECKSERVER
|
||||
45342 . 46379)) (48551 92848 (\NSMAIL.NEW.AUTHENTICATE 48561 . 49769) (NEWNS.POLLNEWMAIL 49771 . 50086
|
||||
) (NEWNS.OPENMAILBOX 50088 . 50772) (\NSMAIL.NEW.CHECK 50774 . 59139) (NEWNS.NEXTMESSAGE 59141 . 59635
|
||||
) (NEWNS.RETRIEVEMESSAGE 59637 . 63501) (\NSMAIL.READ.BODY.PARTS 63503 . 68914) (\NSMAIL.COPY.IA5
|
||||
68916 . 69665) (\NSMAIL.COPY.NSTEXTFILE 69667 . 71816) (\NSMAIL.READ.HEADING 71818 . 74553) (
|
||||
\NSMAIL.PARSE.ANNOTATION 74555 . 75289) (\NSMAIL.EMIT.ANNOTATION 75291 . 76559) (LA.TRIM.WHITESPACE
|
||||
76561 . 76683) (\NSMAIL.READ.FORWARDING 76685 . 77710) (\NSMAIL.NEW.PRINT.HEADING 77712 . 83336) (
|
||||
\NSMAIL.NEW.PRINT.NAMES 83338 . 84314) (\NSMAIL.EMIT.FORWARDING 84316 . 86150) (\NSMAIL.GDATE 86152 .
|
||||
86268) (\NSMAIL.TRANSLATE.IP.MESSAGEID 86270 . 86817) (\NSMAIL.MAYBE.QUOTE 86819 . 87457) (NULL.NSNAME
|
||||
87459 . 87801) (\NSMAIL.HANDLE.DELIVERY.REPORT 87803 . 90834) (\NSMAIL.RECIPIENT.NAME 90836 . 91063)
|
||||
(NEW.INBASKET.CALL 91065 . 91689) (NEWNS.CLOSEMAILBOX 91691 . 92407) (\NSMAIL.NEW.LOGOFF 92409 . 92846
|
||||
)))))
|
||||
STOP
|
||||
BIN
library/lafite/LAFITE-NEWNSMAIL.LCOM
Normal file
BIN
library/lafite/LAFITE-NEWNSMAIL.LCOM
Normal file
Binary file not shown.
117
library/lafite/LAFITE-NOXNSPATCH
Normal file
117
library/lafite/LAFITE-NOXNSPATCH
Normal file
@@ -0,0 +1,117 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "24-Feb-2024 12:03:41" {WMEDLEY}<library>lafite>LAFITE-NOXNSPATCH.;1 7148
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:PREVIOUS-DATE "24-Feb-2024 12:02:23" {WMEDLEY}<library>lafite>NOXNSPATCH.;2)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT LAFITE-NOXNSPATCHCOMS)
|
||||
|
||||
(RPAQQ LAFITE-NOXNSPATCHCOMS
|
||||
[
|
||||
(* ;; "Suppress login/clearinghouse/nsmail if not running XNS. Mail stuff is necessary in order to parse old NS messages in existing folders. User should set NS.USER.NAME to the canonical name (E.g. %"Ronald Kaplan%") before starting Lafite.")
|
||||
|
||||
[COMS (* ; "Suppress general XNS access")
|
||||
(FNS NOXNSLOGIN NOXNSCANONICAL.NSHOSTNAME NOXNSGETCLEARINGHOUSE)
|
||||
(P (MOVD? 'LOGIN 'XNSLOGIN)
|
||||
(MOVD 'NOXNSLOGIN 'LOGIN)
|
||||
(MOVD? '\CANONICAL.NSHOSTNAME 'XNSCANONICAL.NSHOSTNAME)
|
||||
(MOVD 'NOXNSCANONICAL.NSHOSTNAME '\CANONICAL.NSHOSTNAME)
|
||||
(MOVD? 'GETCLEARINGHOUSE 'XNSGETCLEARINGHOUSE)
|
||||
(MOVD 'NOXNSGETCLEARINGHOUSE 'GETCLEARINGHOUSE]
|
||||
(COMS (* ;
|
||||
"Let Unixmail deal with old NS messages when XNS unavailable")
|
||||
(FNS NOXNSNSMAIL.NEW.AUTHENTICATE NOXNSNSMAIL.MAKEANSWERFORM NOXNSNSMAIL.NEW.SEND
|
||||
NOXNSNSMAIL.NEW.SEND.PARSE)
|
||||
(INITVARS (NS.USER.NAME "no NS user name"))
|
||||
(VARS (LAFITE.USE.ALL.MODES NIL))
|
||||
(P (MOVD? '\NSMAIL.NEW.AUTHENTICATE 'XNSNSMAIL.NEW.AUTHENTICATE)
|
||||
(MOVD 'NOXNSNSMAIL.NEW.AUTHENTICATE '\NSMAIL.NEW.AUTHENTICATE)
|
||||
(MOVD? '\NSMAIL.MAKEANSWERFORM 'XNSNSMAIL.MAKEANSWERFORM)
|
||||
(MOVD 'NOXNSNSMAIL.MAKEANSWERFORM '\NSMAIL.MAKEANSWERFORM)
|
||||
(MOVD? '\NSMAIL.NEW.SEND 'XNSNSMAIL.NEW.SEND)
|
||||
(MOVD 'NOXNSNSMAIL.NEW.SEND '\NSMAIL.NEW.SEND)
|
||||
(MOVD? '\NSMAIL.NEW.SEND.PARSE 'XNSNSMAIL.NEW.SEND.PARSE)
|
||||
(MOVD 'NOXNSNSMAIL.NEW.SEND.PARSE '\NSMAIL.NEW.SEND.PARSE))
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY (FILES (LOADCOMP)
|
||||
LAFITE-DECLS])
|
||||
|
||||
|
||||
|
||||
(* ;;
|
||||
"Suppress login/clearinghouse/nsmail if not running XNS. Mail stuff is necessary in order to parse old NS messages in existing folders. User should set NS.USER.NAME to the canonical name (E.g. %"Ronald Kaplan%") before starting Lafite."
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
(* ; "Suppress general XNS access")
|
||||
|
||||
(DEFINEQ
|
||||
|
||||
(NOXNSLOGIN
|
||||
[LAMBDA (HOST FLG DIRECTORY MSG) (* ; "Edited 14-Oct-97 18:38 by rmk:")
|
||||
|
||||
(* ;; "Replace login with NOOP Lisp isn't running XNS")
|
||||
|
||||
(CL:WHEN (STREQUAL "1" (UNIX-GETENV "LDELISPXNS"))
|
||||
(XNSLOGIN HOST FLG DIRECTORY MSG])
|
||||
|
||||
(NOXNSCANONICAL.NSHOSTNAME
|
||||
[LAMBDA (HOST) (* ; "Edited 11-Feb-98 14:34 by rmk:")
|
||||
|
||||
(* ;; "Replace login with NOOP Lisp isn't running XNS")
|
||||
|
||||
(CL:WHEN (STREQUAL "1" (UNIX-GETENV "LDELISPXNS"))
|
||||
(XNSCANONICAL.NSHOSTNAME HOST])
|
||||
|
||||
(NOXNSGETCLEARINGHOUSE
|
||||
[LAMBDA NIL (* ; "Edited 6-Mar-99 01:15 by rmk:")
|
||||
|
||||
(* ;; "Replace login with NOOP Lisp isn't running XNS")
|
||||
|
||||
(CL:WHEN (STREQUAL "1" (UNIX-GETENV "LDELISPXNS"))
|
||||
(XNSGETCLEARINGHOUSE])
|
||||
)
|
||||
|
||||
(MOVD? 'LOGIN 'XNSLOGIN)
|
||||
|
||||
(MOVD 'NOXNSLOGIN 'LOGIN)
|
||||
|
||||
(MOVD? '\CANONICAL.NSHOSTNAME 'XNSCANONICAL.NSHOSTNAME)
|
||||
|
||||
(MOVD 'NOXNSCANONICAL.NSHOSTNAME '\CANONICAL.NSHOSTNAME)
|
||||
|
||||
(MOVD? 'GETCLEARINGHOUSE 'XNSGETCLEARINGHOUSE)
|
||||
|
||||
(MOVD 'NOXNSGETCLEARINGHOUSE 'GETCLEARINGHOUSE)
|
||||
|
||||
|
||||
|
||||
(* ; "Let Unixmail deal with old NS messages when XNS unavailable")
|
||||
|
||||
(DEFINEQ
|
||||
|
||||
(NOXNSNSMAIL.NEW.AUTHENTICATE
|
||||
[LAMBDA NIL (* ; "Edited 18-Mar-99 10:39 by rmk:")
|
||||
(* ; "Edited 8-Mar-99 20:59 by rmk:")
|
||||
(* ; "Edited 6-Mar-99 11:54 by rmk:")
|
||||
|
||||
(* ;; "Fake up lafite user data when not running XNS. This permits us to parse old mail folders with NS mesages and detect whether they are from the current user.")
|
||||
|
||||
(IF (STREQUAL "1" (UNIX-GETENV "LDELISPXNS"))
|
||||
THEN (XNSNSMAIL.NEW.AUTHENTICATE)
|
||||
ELSE (CREATE LAFITEMODEDATA
|
||||
FULLUSERNAME _ (CONCAT NS.USER.NAME ":" CH.DEFAULT.DOMAIN ":"
|
||||
CH.DEFAULT.ORGANIZATION)
|
||||
SHORTUSERNAME _ (UNIX-USERNAME)
|
||||
UNPACKEDUSERNAME _ (CREATE NSNAME
|
||||
NSOBJECT _ NS.USER.NAME
|
||||
NSDOMAIN _ CH.DEFAULT.DOMAIN
|
||||
NSORGANIZATION _ CH.DEFAULT.ORGANIZATION])
|
||||
|
||||
(NOXNSNSMAIL.MAKEANSWERFORM
|
||||
[LAMBDA (MSGDESCRIPTORS MAILFOLDER) (* ; "Edited 31-Mar-99 17:04 by rmk:")
|
||||
|
||||
BIN
library/lafite/LAFITE-NOXNSPATCH.LCOM
Normal file
BIN
library/lafite/LAFITE-NOXNSPATCH.LCOM
Normal file
Binary file not shown.
@@ -1,22 +1,94 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
(FILECREATED " 6-Aug-93 17:14:21" {DSK}<archive>lafite>sources>nsmail.;34 48519
|
||||
|
||||
changes to%: (VARS NSMAILCOMS) (FILES LLNSDECLS) (FNS \NSMAIL.MESSAGE.FROM.SELF.P \NSMAIL.PARSE1 \NSMAIL.MAKE.MAILSERVERS)
|
||||
(FILECREATED "24-Feb-2024 11:55:46" {WMEDLEY}<library>lafite>LAFITE-NSMAIL.;1 51946
|
||||
|
||||
previous date%: "26-May-92 11:56:11" {DSK}<archive>lafite>sources>nsmail.;30)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS NSMAILCOMS)
|
||||
(FNS \NSMAIL.COURIER.OPEN)
|
||||
|
||||
:PREVIOUS-DATE "13-Jan-2024 18:26:57" {WMEDLEY}<library>lafite>NSMAIL.;2)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1992, 1993 by Xerox Corporation. All rights reserved.
|
||||
")
|
||||
(PRETTYCOMPRINT LAFITE-NSMAILCOMS)
|
||||
|
||||
(PRETTYCOMPRINT NSMAILCOMS)
|
||||
(RPAQQ LAFITE-NSMAILCOMS
|
||||
(
|
||||
(* ;; "Stuff used by both LAFITE-NEWNSMAIL & OLDNSMAIL")
|
||||
|
||||
(RPAQQ NSMAILCOMS ((* ;; "Stuff used by both NEWNSMAIL & OLDNSMAIL") (COMS (* ; "Support of authentication") (FNS \NSMAIL.LOGIN NS.FINDMAILBOXES \NSMAIL.MAKE.MAILSERVERS \NSMAIL.FIX.MAILBOX.LOCATIONS)) (COMS (* ; "Utilities") (FNS \NSMAIL.CHECK.SERIALIZED.VERSION \NSMAIL.READ.SERIALIZED.CONTENT \NSMAIL.DISCARD.SERIALIZED.CONTENT \NSMAIL.READ.STRING.AS.STREAM) (* ; "Error handling") (FNS \NSMAIL.COURIER.OPEN \NSMAIL.ERRORHANDLER \NSMAIL.SIGNAL.ERROR) (INITVARS (NSMAILDEBUGFLG) (NSMAIL.HEADER.ORDER (QUOTE (Date Sender From Subject In-Reply-to To cc Message-ID Reply-to))))) (COMS (* ; "Handling attachments as a special kind of image object") (FNS \MAILOBJ.CREATE \MAILOBJ.TYPE.NAME \MAILOBJ.NS.TO.LISP.NAME \MAILOBJ.DISPLAY \MAILOBJ.GET \MAILOBJ.IMAGEBOX \MAILOBJ.PUT \MAILOBJ.INIT) (FNS \MAILOBJ.BUTTONEVENTFN \MAILOBJ.DO.COMMAND \MAILOBJ.HARDCOPY \MAILOBJ.FB \MAILOBJ.PUT.FILE \MAILOBJ.VIEW \MAILOBJ.MUNGE.NAME \MAILOBJ.COPY.BODY \MAILOBJ.EXPAND \MAILOBJ.COPY.CHILD \MAILOBJ.COPY.SEQUENCE \MAILOBJ.EXTRACT.TEXT \MAILOBJ.PARSE.ATTRIBUTES) (ADDVARS (FILING.TYPES (VIEWPOINT 4353) (RES 4428) (XEROX860 5120) (REFERENCE 4427) (MAILFOLDER 4417))) (VARS MAILOBJ.REFERENCE.FIELD) (INITVARS (MAILOBJ.WINDOWOFFSET 16) (MAILOBJ.SKIPCHAR (CHARCODE "."))) (DECLARE%: EVAL@COMPILE DONTCOPY (RECORDS MAILOBJ) (CONSTANTS \MAILOBJ.REFERENCE.LAST.FILED)) (DECLARE%: DONTEVAL@LOAD DOCOPY (P (\MAILOBJ.INIT) (AND (EQ MAKESYSNAME :LYRIC) (FILESLOAD (SYSLOAD) NSRANDOM))))) (COMS (FNS \NSMAIL.WRITE.ATTRIBUTE) (DECLARE%: EVAL@COMPILE DOCOPY (VARS \NSMAIL.ATTRIBUTES))) (COMS (* ; "sending mail") (FNS \NSMAIL.PARSE.REFERENCE \NSMAIL.EXPAND.DL \NSMAIL.PARSE \NSMAIL.PARSE1 NS.REMOVEDUPLICATES \NSMAIL.GUESS.FILE.TYPE COURIER.WRITE.STREAM.UNSPECIFIED \NSMAIL.SEND.STREAM.AS.STRING) (FILES LAFITEMAIL) (* ; "for LAFITE.MAKE.PARSE.TABLE") (VARS NSMAIL.PARSEFIELDS (\LAPARSE.NSMAIL (LAFITE.MAKE.PARSE.TABLE NSMAIL.PARSEFIELDS))) (GLOBALVARS \LAPARSE.NSMAIL) (INITVARS (NSMAIL.NET.HINT) (*NSMAIL-MAX-NOTE-LENGTH* 8000) (*NSMAIL-CACHE-TIMEOUT* 14400000) (*NSMAIL-GENEROUS-SELF-TEST* T) (LAFITEDL.EXT "DL")) (P (CL:PROCLAIM (QUOTE (GLOBAL NSMAIL.NET.HINT *NSMAIL-MAX-NOTE-LENGTH* *NSMAIL-CACHE-TIMEOUT* *NSMAIL-GENEROUS-SELF-TEST*)))) (FNS \NSMAIL.MESSAGE.P \NSMAIL.MESSAGE.FROM.SELF.P \NSMAIL.MAKEANSWERFORM \NSMAIL.PRINT.NAMES)) (DECLARE%: EVAL@COMPILE DONTCOPY (RECORDS NSMAILBOX NSMAILSTATE NSMAILPARSE) (CONSTANTS \NSMAIL.SOCKET \SERIALIZED.FILE.VERSION \SERIALIZED.FILE.VERSIONS \NSMAIL.TEXT.BODYTYPE \NSMAIL.EMPTY.BODYTYPE \NSMAIL.REFERENCE.BODYTYPE MAX.BULK.SEGMENT.LENGTH) (MACROS \NSMAIL.ATTRIBUTE.TYPE \NSMAIL.WRITE.ATTRIBUTE \NSMAIL.WRITE.ATTRIBUTE.MACRO) (PROP INFO \NSMAIL.ATTRIBUTE.TYPE) (GLOBALVARS *NSMAIL-OP-VECTOR* DEFAULTICONFONT FILING.TYPES MAILOBJ.REFERENCE.FIELD MAILOBJ.SKIPCHAR MAILOBJ.WINDOWOFFSET NSMAIL.HEADER.ORDER NSMAIL.NET.HINT NSMAILDEBUGFLG NSPRINT.WATCHERFLG NSWIZARDFLG \MAILOBJ.IMAGEFNS \NSFILING.ATTRIBUTES \NSMAIL.ATTRIBUTES) (FILES (SOURCE) LAFITEDECLS LLNSDECLS) (* ;; "LLNSDECLS to get NSADDRESS, needed by \NSMAIL.SIGNAL.ERROR") (LOCALVARS . T))))
|
||||
(COMS (* ; "Support of authentication")
|
||||
(FNS \NSMAIL.LOGIN NS.FINDMAILBOXES \NSMAIL.MAKE.MAILSERVERS
|
||||
\NSMAIL.FIX.MAILBOX.LOCATIONS))
|
||||
[COMS (* ; "Utilities")
|
||||
(FNS \NSMAIL.CHECK.SERIALIZED.VERSION \NSMAIL.READ.SERIALIZED.CONTENT
|
||||
\NSMAIL.DISCARD.SERIALIZED.CONTENT \NSMAIL.READ.STRING.AS.STREAM)
|
||||
(* ; "Error handling")
|
||||
(FNS \NSMAIL.COURIER.OPEN \NSMAIL.ERRORHANDLER \NSMAIL.SIGNAL.ERROR)
|
||||
(INITVARS (NSMAILDEBUGFLG)
|
||||
(NSMAIL.HEADER.ORDER '(Date Sender From Subject In-Reply-to To cc Message-ID
|
||||
Reply-to]
|
||||
[COMS (* ;
|
||||
"Handling attachments as a special kind of image object")
|
||||
(FNS \MAILOBJ.CREATE \MAILOBJ.TYPE.NAME \MAILOBJ.NS.TO.LISP.NAME \MAILOBJ.DISPLAY
|
||||
\MAILOBJ.GET \MAILOBJ.IMAGEBOX \MAILOBJ.PUT \MAILOBJ.INIT)
|
||||
(FNS \MAILOBJ.BUTTONEVENTFN \MAILOBJ.DO.COMMAND \MAILOBJ.HARDCOPY \MAILOBJ.FB
|
||||
\MAILOBJ.PUT.FILE \MAILOBJ.VIEW \MAILOBJ.MUNGE.NAME \MAILOBJ.COPY.BODY
|
||||
\MAILOBJ.EXPAND \MAILOBJ.COPY.CHILD \MAILOBJ.COPY.SEQUENCE \MAILOBJ.EXTRACT.TEXT
|
||||
\MAILOBJ.PARSE.ATTRIBUTES)
|
||||
(ADDVARS (FILING.TYPES (VIEWPOINT 4353)
|
||||
(RES 4428)
|
||||
(XEROX860 5120)
|
||||
(REFERENCE 4427)
|
||||
(MAILFOLDER 4417)))
|
||||
(VARS MAILOBJ.REFERENCE.FIELD)
|
||||
(INITVARS (MAILOBJ.WINDOWOFFSET 16)
|
||||
(MAILOBJ.SKIPCHAR (CHARCODE ".")))
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY (RECORDS MAILOBJ)
|
||||
(CONSTANTS \MAILOBJ.REFERENCE.LAST.FILED))
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY (P (\MAILOBJ.INIT)
|
||||
(AND (EQ MAKESYSNAME :LYRIC)
|
||||
(FILESLOAD (SYSLOAD)
|
||||
NSRANDOM]
|
||||
(COMS (FNS \NSMAIL.WRITE.ATTRIBUTE)
|
||||
(DECLARE%: EVAL@COMPILE DOCOPY (VARS \NSMAIL.ATTRIBUTES)))
|
||||
(COMS (* ; "sending mail")
|
||||
(FNS \NSMAIL.PARSE.REFERENCE \NSMAIL.EXPAND.DL \NSMAIL.PARSE \NSMAIL.PARSE1
|
||||
NS.REMOVEDUPLICATES \NSMAIL.GUESS.FILE.TYPE COURIER.WRITE.STREAM.UNSPECIFIED
|
||||
\NSMAIL.SEND.STREAM.AS.STRING)
|
||||
(FILES LAFITE-MAIL)
|
||||
(* ; "for LAFITE.MAKE.PARSE.TABLE")
|
||||
(VARS NSMAIL.PARSEFIELDS (\LAPARSE.NSMAIL (LAFITE.MAKE.PARSE.TABLE NSMAIL.PARSEFIELDS))
|
||||
)
|
||||
(GLOBALVARS \LAPARSE.NSMAIL)
|
||||
(INITVARS (NSMAIL.NET.HINT)
|
||||
(*NSMAIL-MAX-NOTE-LENGTH* 8000)
|
||||
(*NSMAIL-CACHE-TIMEOUT* 14400000)
|
||||
(*NSMAIL-GENEROUS-SELF-TEST* T)
|
||||
(LAFITEDL.EXT "DL"))
|
||||
[P (CL:PROCLAIM '(GLOBAL NSMAIL.NET.HINT *NSMAIL-MAX-NOTE-LENGTH*
|
||||
*NSMAIL-CACHE-TIMEOUT* *NSMAIL-GENEROUS-SELF-TEST*]
|
||||
(FNS \NSMAIL.MESSAGE.P \NSMAIL.MESSAGE.FROM.SELF.P \NSMAIL.MAKEANSWERFORM
|
||||
\NSMAIL.PRINT.NAMES))
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY (RECORDS NSMAILBOX NSMAILSTATE NSMAILPARSE)
|
||||
(CONSTANTS \NSMAIL.SOCKET \SERIALIZED.FILE.VERSION \SERIALIZED.FILE.VERSIONS
|
||||
\NSMAIL.TEXT.BODYTYPE \NSMAIL.EMPTY.BODYTYPE \NSMAIL.REFERENCE.BODYTYPE
|
||||
MAX.BULK.SEGMENT.LENGTH)
|
||||
(MACROS \NSMAIL.ATTRIBUTE.TYPE \NSMAIL.WRITE.ATTRIBUTE \NSMAIL.WRITE.ATTRIBUTE.MACRO)
|
||||
(PROP INFO \NSMAIL.ATTRIBUTE.TYPE)
|
||||
(GLOBALVARS *NSMAIL-OP-VECTOR* DEFAULTICONFONT FILING.TYPES MAILOBJ.REFERENCE.FIELD
|
||||
MAILOBJ.SKIPCHAR MAILOBJ.WINDOWOFFSET NSMAIL.HEADER.ORDER NSMAIL.NET.HINT
|
||||
NSMAILDEBUGFLG NSPRINT.WATCHERFLG NSWIZARDFLG \MAILOBJ.IMAGEFNS
|
||||
\NSFILING.ATTRIBUTES \NSMAIL.ATTRIBUTES)
|
||||
(FILES (SOURCE)
|
||||
LAFITE-DECLS LLNSDECLS)
|
||||
|
||||
(* ;; "LLNSDECLS to get NSADDRESS, needed by \NSMAIL.SIGNAL.ERROR")
|
||||
|
||||
(LOCALVARS . T))))
|
||||
|
||||
|
||||
|
||||
(* ;; "Stuff used by both NEWNSMAIL & OLDNSMAIL")
|
||||
(* ;; "Stuff used by both LAFITE-NEWNSMAIL & OLDNSMAIL")
|
||||
|
||||
|
||||
|
||||
@@ -61,8 +133,16 @@ RETURN to attempt retrieval anyway." V))))))
|
||||
)
|
||||
|
||||
(\NSMAIL.READ.STRING.AS.STREAM
|
||||
(LAMBDA (INSTREAM OUTSTREAM) (* bvm%: "30-Jul-84 16:13") (* ;; "Considers INSTREAM to be positioned at a sequence of unspecified, and reads it as if its datatype were string, and copies said bytes to OUTSTREAM") (PROG (LENGTH) (\WIN INSTREAM) (* ; "Skip sequence count") (COPYBYTES INSTREAM OUTSTREAM (SETQ LENGTH (\WIN INSTREAM))) (COND ((ODDP LENGTH) (\BIN INSTREAM)))))
|
||||
)
|
||||
[LAMBDA (INSTREAM OUTSTREAM) (* bvm%: "30-Jul-84 16:13")
|
||||
|
||||
(* ;; "Considers INSTREAM to be positioned at a sequence of unspecified, and reads it as if its datatype were string, and copies said bytes to OUTSTREAM")
|
||||
|
||||
(PROG (LENGTH)
|
||||
(\WIN INSTREAM) (* ; "Skip sequence count")
|
||||
(COPYBYTES INSTREAM OUTSTREAM (SETQ LENGTH (\WIN INSTREAM)))
|
||||
(COND
|
||||
((ODDP LENGTH)
|
||||
(\BIN INSTREAM])
|
||||
)
|
||||
|
||||
|
||||
@@ -72,8 +152,10 @@ RETURN to attempt retrieval anyway." V))))))
|
||||
(DEFINEQ
|
||||
|
||||
(\NSMAIL.COURIER.OPEN
|
||||
(LAMBDA (ADDRESS) (* ; "Edited 9-Sep-88 12:06 by bvm") (COURIER.OPEN ADDRESS NIL T (QUOTE NSMAIL) NIL (CONSTANT (LIST (QUOTE ERRORHANDLER) (FUNCTION \NSMAIL.ERRORHANDLER)))))
|
||||
)
|
||||
[LAMBDA (ADDRESS) (* ; "Edited 24-Feb-2024 11:52 by rmk")
|
||||
(* ; "Edited 9-Sep-88 12:06 by bvm")
|
||||
(COURIER.OPEN ADDRESS NIL T 'LAFITE-NSMAIL NIL (CONSTANT (LIST 'ERRORHANDLER
|
||||
(FUNCTION \NSMAIL.ERRORHANDLER])
|
||||
|
||||
(\NSMAIL.ERRORHANDLER
|
||||
(LAMBDA (STREAM ERRCODE) (* ; "Edited 9-Sep-88 12:35 by bvm") (* ;; "Called when SPP error occurs on NS mail courier connection STREAM. Fakes an error return from the courier.call.") (LET (POS) (if (AND (EQ ERRCODE (QUOTE STREAM.LOST)) (SETQ POS (STKPOS (FUNCTION COURIER.CALL)))) then (BLOCK 500) (RETFROM POS (QUOTE (ERROR STREAM.LOST)) T) else (\SPP.DEFAULT.ERRORHANDLER STREAM ERRCODE))))
|
||||
@@ -84,9 +166,9 @@ RETURN to attempt retrieval anyway." V))))))
|
||||
)
|
||||
)
|
||||
|
||||
(RPAQ? NSMAILDEBUGFLG)
|
||||
(RPAQ? NSMAILDEBUGFLG )
|
||||
|
||||
(RPAQ? NSMAIL.HEADER.ORDER (QUOTE (Date Sender From Subject In-Reply-to To cc Message-ID Reply-to)))
|
||||
(RPAQ? NSMAIL.HEADER.ORDER '(Date Sender From Subject In-Reply-to To cc Message-ID Reply-to))
|
||||
|
||||
|
||||
|
||||
@@ -181,23 +263,38 @@ RETURN to attempt retrieval anyway." V))))))
|
||||
)
|
||||
)
|
||||
|
||||
(ADDTOVAR FILING.TYPES (VIEWPOINT 4353) (RES 4428) (XEROX860 5120) (REFERENCE 4427) (MAILFOLDER 4417))
|
||||
(ADDTOVAR FILING.TYPES (VIEWPOINT 4353)
|
||||
(RES 4428)
|
||||
(XEROX860 5120)
|
||||
(REFERENCE 4427)
|
||||
(MAILFOLDER 4417))
|
||||
|
||||
(RPAQQ MAILOBJ.REFERENCE.FIELD (REFERENCE 4421 (NAMEDRECORD (FILE.ID (FILING . FILE.ID)) (SERVICE NSNAME) (ADDRESS NSADDRESS) (HOST STRING) (DIRECTORY STRING) (NAME STRING) (TYPE (FILING . ATTRIBUTE.TYPE)) (NIL UNSPECIFIED) (PAGES CARDINAL) (VERSION CARDINAL) (FLAGS CARDINAL))))
|
||||
(RPAQQ MAILOBJ.REFERENCE.FIELD
|
||||
(REFERENCE 4421 (NAMEDRECORD (FILE.ID (FILING . FILE.ID))
|
||||
(SERVICE NSNAME)
|
||||
(ADDRESS NSADDRESS)
|
||||
(HOST STRING)
|
||||
(DIRECTORY STRING)
|
||||
(NAME STRING)
|
||||
(TYPE (FILING . ATTRIBUTE.TYPE))
|
||||
(NIL UNSPECIFIED)
|
||||
(PAGES CARDINAL)
|
||||
(VERSION CARDINAL)
|
||||
(FLAGS CARDINAL))))
|
||||
|
||||
(RPAQ? MAILOBJ.WINDOWOFFSET 16)
|
||||
(RPAQ? MAILOBJ.WINDOWOFFSET 16)
|
||||
|
||||
(RPAQ? MAILOBJ.SKIPCHAR (CHARCODE "."))
|
||||
(RPAQ? MAILOBJ.SKIPCHAR (CHARCODE "."))
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(RECORD MAILOBJ (MAILOBJ.IMAGE MAILOBJ.BOX MAILOBJ.TYPE MAILOBJ.DATA MAILOBJ.ATTR.LENGTH MAILOBJ.START MAILOBJ.NAME MAILOBJ.EXPANDABLE . MAILOBJ.INFO)
|
||||
)
|
||||
(RECORD MAILOBJ (MAILOBJ.IMAGE MAILOBJ.BOX MAILOBJ.TYPE MAILOBJ.DATA MAILOBJ.ATTR.LENGTH
|
||||
MAILOBJ.START MAILOBJ.NAME MAILOBJ.EXPANDABLE . MAILOBJ.INFO))
|
||||
)
|
||||
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(RPAQQ \MAILOBJ.REFERENCE.LAST.FILED 8192)
|
||||
(RPAQQ \MAILOBJ.REFERENCE.LAST.FILED 8192)
|
||||
|
||||
|
||||
(CONSTANTS \MAILOBJ.REFERENCE.LAST.FILED)
|
||||
@@ -205,9 +302,11 @@ RETURN to attempt retrieval anyway." V))))))
|
||||
)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY
|
||||
|
||||
(\MAILOBJ.INIT)
|
||||
(\MAILOBJ.INIT)
|
||||
|
||||
(AND (EQ MAKESYSNAME :LYRIC) (FILESLOAD (SYSLOAD) NSRANDOM))
|
||||
(AND (EQ MAKESYSNAME :LYRIC)
|
||||
(FILESLOAD (SYSLOAD)
|
||||
NSRANDOM))
|
||||
)
|
||||
(DEFINEQ
|
||||
|
||||
@@ -217,7 +316,21 @@ RETURN to attempt retrieval anyway." V))))))
|
||||
)
|
||||
(DECLARE%: EVAL@COMPILE DOCOPY
|
||||
|
||||
(RPAQQ \NSMAIL.ATTRIBUTES ((From 4672 NAME.LIST) (Date 4673 TIME) (Reply-to 4674 NAME.LIST) (To 4676 NAME.LIST) (cc 4677 NAME.LIST) (Subject 9 STRING) (Message-ID 4693 MESSAGEID) (Sender 4705 NAME) (BodySize 16 LONGCARDINAL) (BodyType 17 LONGCARDINAL) (Note 4687 STRING) (OldLispFormatting 4910 STRING) (LispFormatting 4911 STRING) (In-Reply-to 4690 STRING)))
|
||||
(RPAQQ \NSMAIL.ATTRIBUTES
|
||||
((From 4672 NAME.LIST)
|
||||
(Date 4673 TIME)
|
||||
(Reply-to 4674 NAME.LIST)
|
||||
(To 4676 NAME.LIST)
|
||||
(cc 4677 NAME.LIST)
|
||||
(Subject 9 STRING)
|
||||
(Message-ID 4693 MESSAGEID)
|
||||
(Sender 4705 NAME)
|
||||
(BodySize 16 LONGCARDINAL)
|
||||
(BodyType 17 LONGCARDINAL)
|
||||
(Note 4687 STRING)
|
||||
(OldLispFormatting 4910 STRING)
|
||||
(LispFormatting 4911 STRING)
|
||||
(In-Reply-to 4690 STRING)))
|
||||
)
|
||||
|
||||
|
||||
@@ -259,32 +372,47 @@ RETURN to attempt retrieval anyway." V))))))
|
||||
)
|
||||
)
|
||||
|
||||
(FILESLOAD LAFITEMAIL)
|
||||
(FILESLOAD LAFITE-MAIL)
|
||||
|
||||
|
||||
|
||||
(* ; "for LAFITE.MAKE.PARSE.TABLE")
|
||||
|
||||
|
||||
(RPAQQ NSMAIL.PARSEFIELDS (("DATE:" LAFITE.READ.LINE.FOR.TOC Date) ("SUBJECT:" LAFITE.READ.LINE.FOR.TOC Subject) ("SENDER:" LAFITE.READ.NAME.FIELD Sender) ("FROM:" LAFITE.READ.NAME.FIELD From) ("REPLY-TO:" LAFITE.READ.NAME.FIELD Reply-to) ("IN-REPLY-TO:" LAFITE.READ.LINE.FOR.TOC In-Reply-to) ("TO:" LAFITE.READ.NAME.FIELD To) ("CC:" LAFITE.READ.NAME.FIELD cc) ("FORMAT:" LAFITE.READ.FORMAT) ("ATTACHED-REFERENCE:" LAFITE.READ.LINE.FOR.TOC REFERENCE) ("ATTACHED-FILE:" LAFITE.READ.LINE.FOR.TOC ATTACHMENT) ("Importance:" LAFITE.READ.LINE.FOR.TOC Importance) ("Sensitivity:" LAFITE.READ.LINE.FOR.TOC Sensitivity) ("Immutable:" LAFITE.READ.LINE.FOR.TOC Immutable)))
|
||||
(RPAQQ NSMAIL.PARSEFIELDS
|
||||
(("DATE:" LAFITE.READ.LINE.FOR.TOC Date)
|
||||
("SUBJECT:" LAFITE.READ.LINE.FOR.TOC Subject)
|
||||
("SENDER:" LAFITE.READ.NAME.FIELD Sender)
|
||||
("FROM:" LAFITE.READ.NAME.FIELD From)
|
||||
("REPLY-TO:" LAFITE.READ.NAME.FIELD Reply-to)
|
||||
("IN-REPLY-TO:" LAFITE.READ.LINE.FOR.TOC In-Reply-to)
|
||||
("TO:" LAFITE.READ.NAME.FIELD To)
|
||||
("CC:" LAFITE.READ.NAME.FIELD cc)
|
||||
("FORMAT:" LAFITE.READ.FORMAT)
|
||||
("ATTACHED-REFERENCE:" LAFITE.READ.LINE.FOR.TOC REFERENCE)
|
||||
("ATTACHED-FILE:" LAFITE.READ.LINE.FOR.TOC ATTACHMENT)
|
||||
("Importance:" LAFITE.READ.LINE.FOR.TOC Importance)
|
||||
("Sensitivity:" LAFITE.READ.LINE.FOR.TOC Sensitivity)
|
||||
("Immutable:" LAFITE.READ.LINE.FOR.TOC Immutable)))
|
||||
|
||||
(RPAQ \LAPARSE.NSMAIL (LAFITE.MAKE.PARSE.TABLE NSMAIL.PARSEFIELDS))
|
||||
(RPAQ \LAPARSE.NSMAIL (LAFITE.MAKE.PARSE.TABLE NSMAIL.PARSEFIELDS))
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS \LAPARSE.NSMAIL)
|
||||
)
|
||||
|
||||
(RPAQ? NSMAIL.NET.HINT)
|
||||
(RPAQ? NSMAIL.NET.HINT )
|
||||
|
||||
(RPAQ? *NSMAIL-MAX-NOTE-LENGTH* 8000)
|
||||
(RPAQ? *NSMAIL-MAX-NOTE-LENGTH* 8000)
|
||||
|
||||
(RPAQ? *NSMAIL-CACHE-TIMEOUT* 14400000)
|
||||
(RPAQ? *NSMAIL-CACHE-TIMEOUT* 14400000)
|
||||
|
||||
(RPAQ? *NSMAIL-GENEROUS-SELF-TEST* T)
|
||||
(RPAQ? *NSMAIL-GENEROUS-SELF-TEST* T)
|
||||
|
||||
(RPAQ? LAFITEDL.EXT "DL")
|
||||
(RPAQ? LAFITEDL.EXT "DL")
|
||||
|
||||
(CL:PROCLAIM (QUOTE (GLOBAL NSMAIL.NET.HINT *NSMAIL-MAX-NOTE-LENGTH* *NSMAIL-CACHE-TIMEOUT* *NSMAIL-GENEROUS-SELF-TEST*)))
|
||||
(CL:PROCLAIM '(GLOBAL NSMAIL.NET.HINT *NSMAIL-MAX-NOTE-LENGTH* *NSMAIL-CACHE-TIMEOUT*
|
||||
*NSMAIL-GENEROUS-SELF-TEST*))
|
||||
(DEFINEQ
|
||||
|
||||
(\NSMAIL.MESSAGE.P
|
||||
@@ -306,79 +434,100 @@ RETURN to attempt retrieval anyway." V))))))
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(RECORD NSMAILBOX (NSMAILSTREAM NSMAILENVTAIL NSMAILENVELOPES NSMAILLASTINDEX . NSMAILSTATE) (ACCESSFNS NSMAILBOX ((NSMAILSESSION (fetch STATESESSION of (fetch NSMAILSTATE of DATUM))) (NSMAILFIRSTINDEX (fetch STATEFIRSTNEW of (fetch NSMAILSTATE of DATUM)))))
|
||||
)
|
||||
(RECORD NSMAILBOX (NSMAILSTREAM NSMAILENVTAIL NSMAILENVELOPES NSMAILLASTINDEX . NSMAILSTATE)
|
||||
[ACCESSFNS NSMAILBOX ((NSMAILSESSION (fetch STATESESSION
|
||||
of (fetch NSMAILSTATE of DATUM)))
|
||||
(NSMAILFIRSTINDEX (fetch STATEFIRSTNEW
|
||||
of (fetch NSMAILSTATE of DATUM])
|
||||
|
||||
(RECORD NSMAILSTATE (STATESESSION STATEFIRSTNEW STATEOLDLAST STATENAME STATECREDENTIALS STATEADDRESS STATELASTERROR STATETIMER)
|
||||
)
|
||||
(RECORD NSMAILSTATE (STATESESSION STATEFIRSTNEW STATEOLDLAST STATENAME STATECREDENTIALS STATEADDRESS
|
||||
STATELASTERROR STATETIMER))
|
||||
|
||||
(RECORD NSMAILPARSE (NSPSUBJECT NSPRECIPIENTS NSPSTART NSPFORMATTED . NSPFIELDS))
|
||||
)
|
||||
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(RPAQQ \NSMAIL.SOCKET 26)
|
||||
(RPAQQ \NSMAIL.SOCKET 26)
|
||||
|
||||
(RPAQQ \SERIALIZED.FILE.VERSION 2)
|
||||
(RPAQQ \SERIALIZED.FILE.VERSION 2)
|
||||
|
||||
(RPAQQ \SERIALIZED.FILE.VERSIONS (2 3))
|
||||
(RPAQQ \SERIALIZED.FILE.VERSIONS (2 3))
|
||||
|
||||
(RPAQQ \NSMAIL.TEXT.BODYTYPE 2)
|
||||
(RPAQQ \NSMAIL.TEXT.BODYTYPE 2)
|
||||
|
||||
(RPAQQ \NSMAIL.EMPTY.BODYTYPE 4)
|
||||
(RPAQQ \NSMAIL.EMPTY.BODYTYPE 4)
|
||||
|
||||
(RPAQQ \NSMAIL.REFERENCE.BODYTYPE 4427)
|
||||
(RPAQQ \NSMAIL.REFERENCE.BODYTYPE 4427)
|
||||
|
||||
(RPAQQ MAX.BULK.SEGMENT.LENGTH 32768)
|
||||
(RPAQQ MAX.BULK.SEGMENT.LENGTH 32768)
|
||||
|
||||
|
||||
(CONSTANTS \NSMAIL.SOCKET \SERIALIZED.FILE.VERSION \SERIALIZED.FILE.VERSIONS \NSMAIL.TEXT.BODYTYPE \NSMAIL.EMPTY.BODYTYPE \NSMAIL.REFERENCE.BODYTYPE MAX.BULK.SEGMENT.LENGTH)
|
||||
(CONSTANTS \NSMAIL.SOCKET \SERIALIZED.FILE.VERSION \SERIALIZED.FILE.VERSIONS \NSMAIL.TEXT.BODYTYPE
|
||||
\NSMAIL.EMPTY.BODYTYPE \NSMAIL.REFERENCE.BODYTYPE MAX.BULK.SEGMENT.LENGTH)
|
||||
)
|
||||
|
||||
(DECLARE%: EVAL@COMPILE
|
||||
|
||||
(PUTPROPS \NSMAIL.ATTRIBUTE.TYPE MACRO (ARGS (COND ((CADR (ASSOC (CAR ARGS) \NSMAIL.ATTRIBUTES))) (T (ERROR "Unknown mail attribute" (CAR ARGS)) (QUOTE IGNOREMACRO)))))
|
||||
(PUTPROPS \NSMAIL.ATTRIBUTE.TYPE MACRO [ARGS (COND
|
||||
((CADR (ASSOC (CAR ARGS)
|
||||
\NSMAIL.ATTRIBUTES)))
|
||||
(T (ERROR "Unknown mail attribute" (CAR ARGS))
|
||||
'IGNOREMACRO])
|
||||
|
||||
(PUTPROPS \NSMAIL.WRITE.ATTRIBUTE MACRO (ARGS (LET ((INFO (CDR (ASSOC (CAR (CONSTANTEXPRESSIONP (CADR ARGS))) \NSMAIL.ATTRIBUTES)))) (COND (INFO (LIST (QUOTE \NSMAIL.WRITE.ATTRIBUTE.MACRO) (CAR ARGS) (CAR INFO) (CADDR ARGS) (KWOTE (CADR INFO)))) (T (QUOTE IGNOREMACRO))))))
|
||||
(PUTPROPS \NSMAIL.WRITE.ATTRIBUTE MACRO
|
||||
[ARGS (LET [(INFO (CDR (ASSOC (CAR (CONSTANTEXPRESSIONP (CADR ARGS)))
|
||||
\NSMAIL.ATTRIBUTES]
|
||||
(COND
|
||||
[INFO (LIST '\NSMAIL.WRITE.ATTRIBUTE.MACRO (CAR ARGS)
|
||||
(CAR INFO)
|
||||
(CADDR ARGS)
|
||||
(KWOTE (CADR INFO]
|
||||
(T 'IGNOREMACRO])
|
||||
|
||||
(PUTPROPS \NSMAIL.WRITE.ATTRIBUTE.MACRO MACRO (OPENLAMBDA (STREAM TYPENO VALUE VALUETYPE) (COURIER.WRITE STREAM TYPENO NIL (QUOTE LONGCARDINAL)) (COURIER.WRITE.SEQUENCE.UNSPECIFIED STREAM VALUE (QUOTE MAILTRANSPORT) VALUETYPE)))
|
||||
(PUTPROPS \NSMAIL.WRITE.ATTRIBUTE.MACRO MACRO (OPENLAMBDA (STREAM TYPENO VALUE VALUETYPE)
|
||||
(COURIER.WRITE STREAM TYPENO NIL 'LONGCARDINAL)
|
||||
(COURIER.WRITE.SEQUENCE.UNSPECIFIED STREAM VALUE
|
||||
'MAILTRANSPORT VALUETYPE)))
|
||||
)
|
||||
|
||||
|
||||
(PUTPROPS \NSMAIL.ATTRIBUTE.TYPE INFO NOEVAL)
|
||||
(PUTPROPS \NSMAIL.ATTRIBUTE.TYPE INFO NOEVAL)
|
||||
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS *NSMAIL-OP-VECTOR* DEFAULTICONFONT FILING.TYPES MAILOBJ.REFERENCE.FIELD MAILOBJ.SKIPCHAR MAILOBJ.WINDOWOFFSET NSMAIL.HEADER.ORDER NSMAIL.NET.HINT NSMAILDEBUGFLG NSPRINT.WATCHERFLG NSWIZARDFLG \MAILOBJ.IMAGEFNS \NSFILING.ATTRIBUTES \NSMAIL.ATTRIBUTES)
|
||||
(GLOBALVARS *NSMAIL-OP-VECTOR* DEFAULTICONFONT FILING.TYPES MAILOBJ.REFERENCE.FIELD MAILOBJ.SKIPCHAR
|
||||
MAILOBJ.WINDOWOFFSET NSMAIL.HEADER.ORDER NSMAIL.NET.HINT NSMAILDEBUGFLG NSPRINT.WATCHERFLG
|
||||
NSWIZARDFLG \MAILOBJ.IMAGEFNS \NSFILING.ATTRIBUTES \NSMAIL.ATTRIBUTES)
|
||||
)
|
||||
|
||||
|
||||
(FILESLOAD (SOURCE) LAFITEDECLS LLNSDECLS)
|
||||
(FILESLOAD (SOURCE)
|
||||
LAFITE-DECLS LLNSDECLS)
|
||||
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(LOCALVARS . T)
|
||||
)
|
||||
)
|
||||
(PUTPROPS NSMAIL COPYRIGHT ("Xerox Corporation" 1984 1985 1986 1987 1988 1989 1990 1992 1993))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (3699 7008 (\NSMAIL.LOGIN 3709 . 3935) (NS.FINDMAILBOXES 3937 . 4394) (
|
||||
\NSMAIL.MAKE.MAILSERVERS 4396 . 5190) (\NSMAIL.FIX.MAILBOX.LOCATIONS 5192 . 7006)) (7035 9116 (
|
||||
\NSMAIL.CHECK.SERIALIZED.VERSION 7045 . 7358) (\NSMAIL.READ.SERIALIZED.CONTENT 7360 . 8254) (
|
||||
\NSMAIL.DISCARD.SERIALIZED.CONTENT 8256 . 8703) (\NSMAIL.READ.STRING.AS.STREAM 8705 . 9114)) (9148
|
||||
10549 (\NSMAIL.COURIER.OPEN 9158 . 9361) (\NSMAIL.ERRORHANDLER 9363 . 9785) (\NSMAIL.SIGNAL.ERROR 9787
|
||||
. 10547)) (10747 16949 (\MAILOBJ.CREATE 10757 . 12982) (\MAILOBJ.TYPE.NAME 12984 . 13451) (
|
||||
\MAILOBJ.NS.TO.LISP.NAME 13453 . 14804) (\MAILOBJ.DISPLAY 14806 . 15126) (\MAILOBJ.GET 15128 . 15951)
|
||||
(\MAILOBJ.IMAGEBOX 15953 . 16081) (\MAILOBJ.PUT 16083 . 16669) (\MAILOBJ.INIT 16671 . 16947)) (16950
|
||||
31846 (\MAILOBJ.BUTTONEVENTFN 16960 . 19089) (\MAILOBJ.DO.COMMAND 19091 . 19338) (\MAILOBJ.HARDCOPY
|
||||
19340 . 21146) (\MAILOBJ.FB 21148 . 21362) (\MAILOBJ.PUT.FILE 21364 . 23029) (\MAILOBJ.VIEW 23031 .
|
||||
25968) (\MAILOBJ.MUNGE.NAME 25970 . 26234) (\MAILOBJ.COPY.BODY 26236 . 26550) (\MAILOBJ.EXPAND 26552
|
||||
. 28273) (\MAILOBJ.COPY.CHILD 28275 . 29632) (\MAILOBJ.COPY.SEQUENCE 29634 . 30002) (
|
||||
\MAILOBJ.EXTRACT.TEXT 30004 . 31065) (\MAILOBJ.PARSE.ATTRIBUTES 31067 . 31844)) (32756 33393 (
|
||||
\NSMAIL.WRITE.ATTRIBUTE 32766 . 33391)) (33818 40701 (\NSMAIL.PARSE.REFERENCE 33828 . 35746) (
|
||||
\NSMAIL.EXPAND.DL 35748 . 36815) (\NSMAIL.PARSE 36817 . 37078) (\NSMAIL.PARSE1 37080 . 38288) (
|
||||
NS.REMOVEDUPLICATES 38290 . 38428) (\NSMAIL.GUESS.FILE.TYPE 38430 . 38931) (
|
||||
COURIER.WRITE.STREAM.UNSPECIFIED 38933 . 40077) (\NSMAIL.SEND.STREAM.AS.STRING 40079 . 40699)) (41866
|
||||
46243 (\NSMAIL.MESSAGE.P 41876 . 42014) (\NSMAIL.MESSAGE.FROM.SELF.P 42016 . 43715) (
|
||||
\NSMAIL.MAKEANSWERFORM 43717 . 45341) (\NSMAIL.PRINT.NAMES 45343 . 46241)))))
|
||||
(FILEMAP (NIL (5263 8572 (\NSMAIL.LOGIN 5273 . 5499) (NS.FINDMAILBOXES 5501 . 5958) (
|
||||
\NSMAIL.MAKE.MAILSERVERS 5960 . 6754) (\NSMAIL.FIX.MAILBOX.LOCATIONS 6756 . 8570)) (8599 10821 (
|
||||
\NSMAIL.CHECK.SERIALIZED.VERSION 8609 . 8922) (\NSMAIL.READ.SERIALIZED.CONTENT 8924 . 9818) (
|
||||
\NSMAIL.DISCARD.SERIALIZED.CONTENT 9820 . 10267) (\NSMAIL.READ.STRING.AS.STREAM 10269 . 10819)) (10853
|
||||
12473 (\NSMAIL.COURIER.OPEN 10863 . 11285) (\NSMAIL.ERRORHANDLER 11287 . 11709) (\NSMAIL.SIGNAL.ERROR
|
||||
11711 . 12471)) (12673 18875 (\MAILOBJ.CREATE 12683 . 14908) (\MAILOBJ.TYPE.NAME 14910 . 15377) (
|
||||
\MAILOBJ.NS.TO.LISP.NAME 15379 . 16730) (\MAILOBJ.DISPLAY 16732 . 17052) (\MAILOBJ.GET 17054 . 17877)
|
||||
(\MAILOBJ.IMAGEBOX 17879 . 18007) (\MAILOBJ.PUT 18009 . 18595) (\MAILOBJ.INIT 18597 . 18873)) (18876
|
||||
33772 (\MAILOBJ.BUTTONEVENTFN 18886 . 21015) (\MAILOBJ.DO.COMMAND 21017 . 21264) (\MAILOBJ.HARDCOPY
|
||||
21266 . 23072) (\MAILOBJ.FB 23074 . 23288) (\MAILOBJ.PUT.FILE 23290 . 24955) (\MAILOBJ.VIEW 24957 .
|
||||
27894) (\MAILOBJ.MUNGE.NAME 27896 . 28160) (\MAILOBJ.COPY.BODY 28162 . 28476) (\MAILOBJ.EXPAND 28478
|
||||
. 30199) (\MAILOBJ.COPY.CHILD 30201 . 31558) (\MAILOBJ.COPY.SEQUENCE 31560 . 31928) (
|
||||
\MAILOBJ.EXTRACT.TEXT 31930 . 32991) (\MAILOBJ.PARSE.ATTRIBUTES 32993 . 33770)) (35145 35782 (
|
||||
\NSMAIL.WRITE.ATTRIBUTE 35155 . 35780)) (36322 43205 (\NSMAIL.PARSE.REFERENCE 36332 . 38250) (
|
||||
\NSMAIL.EXPAND.DL 38252 . 39319) (\NSMAIL.PARSE 39321 . 39582) (\NSMAIL.PARSE1 39584 . 40792) (
|
||||
NS.REMOVEDUPLICATES 40794 . 40932) (\NSMAIL.GUESS.FILE.TYPE 40934 . 41435) (
|
||||
COURIER.WRITE.STREAM.UNSPECIFIED 41437 . 42581) (\NSMAIL.SEND.STREAM.AS.STRING 42583 . 43203)) (44526
|
||||
48903 (\NSMAIL.MESSAGE.P 44536 . 44674) (\NSMAIL.MESSAGE.FROM.SELF.P 44676 . 46375) (
|
||||
\NSMAIL.MAKEANSWERFORM 46377 . 48001) (\NSMAIL.PRINT.NAMES 48003 . 48901)))))
|
||||
STOP
|
||||
BIN
library/lafite/LAFITE-NSMAIL.LCOM
Normal file
BIN
library/lafite/LAFITE-NSMAIL.LCOM
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user