Merge branch 'master' into Remake-CMLARITH-filemap
Signed-off-by: Matt Heffron <mattheffron475@gmail.com>
This commit is contained in:
4
.github/workflows/Dockerfile_medley
vendored
4
.github/workflows/Dockerfile_medley
vendored
@@ -57,8 +57,8 @@ RUN apt-get update \
|
||||
echo "x86_64"; \
|
||||
fi \
|
||||
) \
|
||||
&& deb="medley-full-${MEDLEY_RELEASE#medley-}" \
|
||||
&& deb=${deb}_${MAIKO_RELEASE#maiko-}-linux-${p}.deb \
|
||||
&& deb="medley-full-linux-${p}-${MEDLEY_RELEASE#medley-}" \
|
||||
&& deb=${deb}_${MAIKO_RELEASE#maiko-}.deb \
|
||||
&& apt-get install -y /tmp/${deb} \
|
||||
&& chown --recursive root:root /usr/local/interlisp \
|
||||
&& (if [ -n "$(which unminimize)" ]; then (yes | unminimize); fi)
|
||||
|
||||
4
.github/workflows/buildDocker.yml
vendored
4
.github/workflows/buildDocker.yml
vendored
@@ -160,7 +160,7 @@ jobs:
|
||||
- name: Get info about Miako and Medley releases
|
||||
id: release_info
|
||||
run: |
|
||||
regex="^[^0-9]*\([^_]*\)_\([^-]*-[^-]*\)-\([^-]*\)-\([^.]*\).*\$"
|
||||
regex="^medley-full-[^-]*-[^-]*-\([^_]*\)_\(.*\).deb\$"
|
||||
ls -1 release_debs | head -n 1 > debname.tmp
|
||||
medley_release="medley-$(sed -e "s/${regex}/\1/" debname.tmp)"
|
||||
maiko_release="maiko-$(sed -e "s/${regex}/\2/" debname.tmp)"
|
||||
@@ -168,6 +168,8 @@ jobs:
|
||||
echo "MEDLEY_RELEASE=${medley_release}" >> ${GITHUB_ENV}
|
||||
echo "MAIKO_RELEASE=${maiko_release}" >> ${GITHUB_ENV}
|
||||
|
||||
# regex="^[^0-9]*\([^_]*\)_\([^-]*-[^-]*\)-\([^-]*\)-\([^.]*\).*\$"
|
||||
|
||||
# Set repo env variables
|
||||
- name: Set repo/docker env variables
|
||||
id: repo_env
|
||||
|
||||
99
.github/workflows/buildLoadup.yml
vendored
99
.github/workflows/buildLoadup.yml
vendored
@@ -128,6 +128,8 @@ jobs:
|
||||
combined_release_tag: ${{ steps.job_outputs.outputs.COMBINED_RELEASE_TAG }}
|
||||
medley_release_tag: ${{ steps.job_outputs.outputs.MEDLEY_RELEASE_TAG }}
|
||||
medley_short_release_tag: ${{ steps.job_outputs.outputs.MEDLEY_SHORT_RELEASE_TAG }}
|
||||
debs_filename_base: ${{ steps.debs.outputs.DEBS_FILENAME_BASE }}
|
||||
maiko_release_tag: ${{ steps.job_outputs.outputs.MAIKO_RELEASE_TAG }}
|
||||
artifacts_filename_template: ${{ steps.job_outputs.outputs.ARTIFACTS_FILENAME_TEMPLATE }}
|
||||
release_url: ${{ steps.push.outputs.html_url }}
|
||||
|
||||
@@ -154,7 +156,7 @@ jobs:
|
||||
id: tag
|
||||
uses: ./../actions/release-tag-action
|
||||
|
||||
# Get Maiko release information, retrieves the name of the latest
|
||||
# Get Maiko release information, retrieves the name of the latest (draft)
|
||||
# release. Used to download the correct Maiko release
|
||||
# Find latest release (draft or normal)
|
||||
- name: Get maiko release information
|
||||
@@ -176,7 +178,6 @@ jobs:
|
||||
echo "maiko_tag=${tag}" >> ${GITHUB_OUTPUT}
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.MAIKO_TOKEN }}
|
||||
|
||||
# Setup environment variables & establish job outputs
|
||||
- name: Setup Environment Variables
|
||||
run: |
|
||||
@@ -198,6 +199,7 @@ jobs:
|
||||
echo "COMBINED_RELEASE_TAG=${COMBINED_RELEASE_TAG}" >> ${GITHUB_OUTPUT}
|
||||
echo "MEDLEY_RELEASE_TAG=${MEDLEY_RELEASE_TAG}" >> ${GITHUB_OUTPUT}
|
||||
echo "MEDLEY_SHORT_RELEASE_TAG=${MEDLEY_SHORT_RELEASE_TAG}" >> ${GITHUB_OUTPUT}
|
||||
echo "MAIKO_RELEASE_TAG=${MAIKO_RELEASE_TAG}" >> $GITHUB_OUTPUT;
|
||||
echo "ARTIFACTS_FILENAME_TEMPLATE=${ARTIFACTS_FILENAME_TEMPLATE}" >> ${GITHUB_OUTPUT}
|
||||
|
||||
# Setup some needed dirs in workspace
|
||||
@@ -337,6 +339,17 @@ jobs:
|
||||
omitNameDuringUpdate: true
|
||||
omitPrereleaseDuringUpdate: true
|
||||
|
||||
- name: Rename medley tar for the x86_64 platform
|
||||
run: |
|
||||
cd ${{ env.TARS_DIR }}
|
||||
mv medley-full-linux-x86_64-*.tgz medley.tgz
|
||||
|
||||
- name: Save medley tar for use in cygwin installers
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: medley-tar
|
||||
path: |
|
||||
${{ env.TARS_DIR }}/medley.tgz
|
||||
|
||||
|
||||
# JOB: macos_installer ##############################################################
|
||||
@@ -371,8 +384,7 @@ jobs:
|
||||
echo "MACOS_DIR=${MACOS_DIR}" >>${GITHUB_ENV}
|
||||
echo "ARTIFACTS_DIR=${MACOS_DIR}/artifacts" >>${GITHUB_ENV}
|
||||
echo "TARBALL_DIR=${MACOS_DIR}/tmp/tarballs" >>${GITHUB_ENV}
|
||||
echo "MEDLEY_RELEASE_TAG=${{ needs.loadup.outputs.medley_release_tag }}" \
|
||||
>>${GITHUB_ENV}
|
||||
echo "MEDLEY_RELEASE_TAG=${{ needs.loadup.outputs.medley_release_tag }}" >>${GITHUB_ENV}
|
||||
echo "ARTIFACTS_FILENAME_TEMPLATE=${{ needs.loadup.outputs.artifacts_filename_template }}" >>${GITHUB_ENV}
|
||||
|
||||
# Create tarball dir
|
||||
@@ -410,23 +422,23 @@ jobs:
|
||||
|
||||
|
||||
|
||||
# JOB: windows_installer #############################################################
|
||||
# JOB: cygwin_installer #############################################################
|
||||
|
||||
#
|
||||
# Create the Windows installer, push it up to the release on github and
|
||||
# update the downloads page on OIO
|
||||
#
|
||||
windows_installer:
|
||||
cygwin_installer:
|
||||
|
||||
runs-on: windows-latest
|
||||
runs-on: windows-2022
|
||||
|
||||
needs: [inputs, sentry, loadup]
|
||||
needs: [inputs, sentry, loadup, linux_installer]
|
||||
if: |
|
||||
needs.sentry.outputs.release_not_built == 'true'
|
||||
|| needs.inputs.outputs.force == 'true'
|
||||
|
||||
outputs:
|
||||
windows_installer_filename: ${{ steps.jobout.outputs.INSTALLER_FILENAME }}
|
||||
cygwin_installer: ${{ steps.compile_iss.outputs.CYGWIN_INSTALLER }}
|
||||
|
||||
steps:
|
||||
|
||||
@@ -446,21 +458,57 @@ jobs:
|
||||
echo "MEDLEY_SHORT_RELEASE_TAG=$msrt" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
|
||||
$aft="${{ needs.loadup.outputs.artifacts_filename_template }}"
|
||||
echo "ARTIFACTS_FILENAME_TEMPLATE=$aft" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
|
||||
$debs="${{ needs.loadup.outputs.debs_filename_base }}"
|
||||
echo "DEBS_FILENAME_BASE=$debs" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
|
||||
|
||||
# Retrieve medley tars from artifact store
|
||||
- name: Retrieve medley tar
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: medley-tar
|
||||
path: installers/cygwin/
|
||||
|
||||
# Download maiko cygwin build
|
||||
- name: Retrieve maiko cygwin build
|
||||
shell: powershell
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.MAIKO_TOKEN }}
|
||||
run: |
|
||||
gh release download ${{ needs.loadup.outputs.maiko_release_tag }} --repo interlisp/maiko --pattern ${{ needs.loadup.outputs.maiko_release_tag }}-cygwin.x86_64.tgz --output installers\cygwin\maiko-cygwin.x86_64.tgz
|
||||
|
||||
# Download cygwin installer to be included by medley.iss
|
||||
- name: Download cygwin installer
|
||||
id: cygwin
|
||||
shell: powershell
|
||||
run: |
|
||||
wget https://cygwin.com/setup-x86_64.exe -OutFile installers\cygwin\setup-x86_64.exe
|
||||
|
||||
# Download vnc viewer
|
||||
- name: Download vncviewer
|
||||
shell: powershell
|
||||
run: |
|
||||
$url = "https://online.interlisp.org/downloads/vncviewer64-1.12.0.exe"
|
||||
$output = "installers\win\vncviewer64-1.12.0.exe"
|
||||
(New-Object System.Net.WebClient).DownloadFile($url, $output)
|
||||
#- name: Download vncviewer
|
||||
# shell: powershell
|
||||
# run: |
|
||||
# $url = "https://sourceforge.net/projects/tigervnc/files/stable/1.12.0/vncviewer64-1.12.0.exe"
|
||||
# $output = "installers\win\vncviewer64-1.12.0.exe"
|
||||
# (New-Object System.Net.WebClient).DownloadFile($url, $output)
|
||||
|
||||
# Run iscc.exe to compile the installer
|
||||
- name: Compile medley.iss
|
||||
#- name: Compile medley.iss
|
||||
# shell: powershell
|
||||
# run: |
|
||||
# iscc installers\win\medley.iss
|
||||
# $filename="medley-install_${env:COMBINED_RELEASE_TAG}_x64.exe"
|
||||
# echo "INSTALLER_FILENAME=$filename" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
|
||||
|
||||
# Run iscc.exe to compile the installer
|
||||
- name: Compile cygwin_medley.iss
|
||||
id: compile_iss
|
||||
shell: powershell
|
||||
run: |
|
||||
iscc installers\win\medley.iss
|
||||
|
||||
$Env:CYGWIN_INSTALLER_BASE="medley-full-cygwin-x86_64-${env:COMBINED_RELEASE_TAG}"
|
||||
$CYGWIN_INSTALLER="${Env:CYGWIN_INSTALLER_BASE}.exe"
|
||||
echo "CYGWIN_INSTALLER=$CYGWIN_INSTALLER" | Out-File -FilePath $Env:GITHUB_ENV -Encoding utf8 -Append
|
||||
echo "CYGWIN_INSTALLER=$CYGWIN_INSTALLER" | Out-File -FilePath $Env:GITHUB_OUTPUT -Encoding utf8 -Append
|
||||
iscc installers\cygwin\medley.iss
|
||||
|
||||
# Upload windows installer to release
|
||||
- name: Upload windows installer to release
|
||||
@@ -468,7 +516,7 @@ jobs:
|
||||
uses: ncipollo/release-action@v1
|
||||
with:
|
||||
allowUpdates: true
|
||||
artifacts: installers/win/medley-*.exe
|
||||
artifacts: installers/cygwin/${{ env.CYGWIN_INSTALLER }}
|
||||
tag: ${{ env.MEDLEY_RELEASE_TAG }}
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
omitBodyDuringUpdate: true
|
||||
@@ -487,7 +535,7 @@ jobs:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs: [inputs, sentry, loadup, linux_installer, macos_installer, windows_installer]
|
||||
needs: [inputs, sentry, loadup, linux_installer, macos_installer, cygwin_installer]
|
||||
if: |
|
||||
needs.sentry.outputs.release_not_built == 'true'
|
||||
|| needs.inputs.outputs.force == 'true'
|
||||
@@ -503,6 +551,8 @@ jobs:
|
||||
echo "MEDLEY_RELEASE_TAG=${mrt}" >>${GITHUB_ENV}
|
||||
msrt="${{ needs.loadup.outputs.medley_short_release_tag }}"
|
||||
echo "MEDLEY_SHORT_RELEASE_TAG=${msrt}" >>${GITHUB_ENV}
|
||||
cyginst="${{ needs.cygwin_installer.outputs.cygwin_installer }}"
|
||||
echo "CYGWIN_INSTALLER=${cyginst}" >>${GITHUB_ENV}
|
||||
|
||||
# Checkout latest commit
|
||||
- name: Checkout Medley
|
||||
@@ -514,7 +564,7 @@ jobs:
|
||||
# So this will be the final update before creating downloads page
|
||||
# and we can use its url for the page
|
||||
- run: echo "placeholder" >placeholder.txt
|
||||
- name: Upload windows installer to release
|
||||
- name: Upload windows placeholder.txt to release
|
||||
id: pushph
|
||||
uses: ncipollo/release-action@v1
|
||||
with:
|
||||
@@ -552,6 +602,7 @@ jobs:
|
||||
-e "s/@@@MEDLEY.SHORT.RELEASE.TAG@@@/${MEDLEY_SHORT_RELEASE_TAG}/g" \
|
||||
-e "s/@@@COMBINED.RELEASE.TAG@@@/${COMBINED_RELEASE_TAG}/g" \
|
||||
-e "s~@@@DOWNLOAD_URL@@@~${download_url}~g" \
|
||||
-e "s~@@@CYGWIN.INSTALLER@@@~${CYGWIN_INSTALLER}~g" \
|
||||
< "${local_template}" > "${local_filename}"
|
||||
# Create sftp instruction file
|
||||
echo "-rm ${remote_filepath}.oldold" > batch
|
||||
@@ -566,6 +617,12 @@ jobs:
|
||||
env:
|
||||
SSH_KEY: ${{ secrets.OIO_SSH_KEY }}
|
||||
|
||||
# Remove placeholder.txt
|
||||
- name: Remove placeholder.txt
|
||||
run: |
|
||||
gh release delete-asset ${{ env.MEDLEY_RELEASE_TAG }} placeholder.txt --yes
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
|
||||
# JOB: complete #####################################################################
|
||||
|
||||
7
.github/workflows/buildReleaseInclDocker.yml
vendored
7
.github/workflows/buildReleaseInclDocker.yml
vendored
@@ -95,8 +95,7 @@ jobs:
|
||||
with:
|
||||
draft: ${{ needs.inputs.outputs.draft }}
|
||||
force: ${{ needs.inputs.outputs.force }}
|
||||
secrets:
|
||||
OIO_SSH_KEY: ${{ secrets.OIO_SSH_KEY }}
|
||||
secrets: inherit
|
||||
|
||||
|
||||
######################################################################################
|
||||
@@ -108,9 +107,7 @@ jobs:
|
||||
with:
|
||||
draft: ${{ needs.inputs.outputs.draft }}
|
||||
force: ${{ needs.inputs.outputs.force }}
|
||||
secrets:
|
||||
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
|
||||
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
|
||||
secrets: inherit
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "19-Jan-2023 12:44:20" {DSK}<home>frank>il>medley>gmedley>greetfiles>APPS-INIT.;9 21022
|
||||
(FILECREATED "16-Jun-2023 17:20:09" {DSK}<home>frank>il>medley>gmedley>greetfiles>APPS-INIT.;11 21130
|
||||
|
||||
:CHANGES-TO (VARS APPS-INITCOMS)
|
||||
(FNS Apps.DoInit)
|
||||
:CHANGES-TO (FNS Apps.DoInit)
|
||||
|
||||
:PREVIOUS-DATE "19-Jan-2023 11:57:40" {DSK}<home>frank>il>medley>gmedley>greetfiles>APPS-INIT.;8
|
||||
)
|
||||
:PREVIOUS-DATE "19-Jan-2023 12:44:20"
|
||||
{DSK}<home>frank>il>medley>gmedley>greetfiles>APPS-INIT.;10)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT APPS-INITCOMS)
|
||||
@@ -170,7 +169,11 @@
|
||||
|
||||
(* ;; " create the Documentation and ROOMS, Notecards Activation Buttons, if needed")
|
||||
|
||||
(Apps.CreateButtons T])
|
||||
(Apps.CreateButtons T)
|
||||
|
||||
(* ;; " Make sure Notecards doesn't try to load its HASH file in NC.PostGreet")
|
||||
|
||||
(SETTOPVAL '\NC.SourceAccessFlg NIL])
|
||||
|
||||
(Apps.CreateButtons
|
||||
[LAMBDA (DoDocsToo) (* ; "Edited 13-Dec-2022 12:51 by frank")
|
||||
@@ -373,8 +376,8 @@
|
||||
(BKSYSBUF " ")
|
||||
)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (1146 20888 (Apps.InitNotecards 1156 . 5018) (Apps.DoInit 5020 . 8119) (
|
||||
Apps.CreateButtons 8121 . 16945) (Apps.CreateLabel 16947 . 17757) (Apps.ActivateCLOS 17759 . 19108) (
|
||||
Apps.ActivateRooms 19110 . 19961) (Apps.ShowDoc 19963 . 20112) (XCL-USER::EXEC_INTERLISP 20114 . 20886
|
||||
(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
|
||||
)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
6
installers/cygwin/.gitignore
vendored
Normal file
6
installers/cygwin/.gitignore
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
medley*.exe
|
||||
medley*.tgz
|
||||
maiko*.tgz
|
||||
setup-x86_64.exe
|
||||
medley.bat
|
||||
|
||||
BIN
installers/cygwin/Medley.ico
Normal file
BIN
installers/cygwin/Medley.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 155 KiB |
165
installers/cygwin/editpath/EditPath.iss
Normal file
165
installers/cygwin/editpath/EditPath.iss
Normal file
@@ -0,0 +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;
|
||||
118
installers/cygwin/editpath/EditPath.md
Normal file
118
installers/cygwin/editpath/EditPath.md
Normal file
@@ -0,0 +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.
|
||||
3
installers/cygwin/editpath/README.TXT
Normal file
3
installers/cygwin/editpath/README.TXT
Normal file
@@ -0,0 +1,3 @@
|
||||
Editpath installed here is extracted from Release 1.04 from https://github.com/Bill-Stewart/PathMgr.
|
||||
|
||||
|
||||
BIN
installers/cygwin/editpath/i386/EditPath.exe
Normal file
BIN
installers/cygwin/editpath/i386/EditPath.exe
Normal file
Binary file not shown.
BIN
installers/cygwin/editpath/x86_64/EditPath.exe
Normal file
BIN
installers/cygwin/editpath/x86_64/EditPath.exe
Normal file
Binary file not shown.
128
installers/cygwin/makeflix.iss
Normal file
128
installers/cygwin/makeflix.iss
Normal file
@@ -0,0 +1,128 @@
|
||||
; -- makeflix.iss --
|
||||
; fgh 2016-08-19
|
||||
|
||||
#define x86_or_x64 "x86"
|
||||
#define version "1.0.1"
|
||||
|
||||
#if x86_or_x64 == "x86"
|
||||
#define exe_dir "Win32"
|
||||
#else
|
||||
#define exe_dir "x64"
|
||||
#endif
|
||||
|
||||
[Setup]
|
||||
ArchitecturesAllowed={#x86_or_x64}
|
||||
AppName=Makeflix
|
||||
AppVersion={#version}
|
||||
AppPublisher=Lellan, Inc.
|
||||
AppPublisherURL=http://www.lellan.com/
|
||||
AppCopyright=Copyright (C) 2012-2017 Lellan, Inc.
|
||||
DefaultDirName={pf}\Lellan\Makeflix
|
||||
DefaultGroupName=Lellan
|
||||
UninstallDisplayIcon={app}\makeflix.exe
|
||||
Compression=lzma2
|
||||
SolidCompression=yes
|
||||
; "ArchitecturesInstallIn64BitMode=x64" requests that the install be
|
||||
; done in "64-bit mode" on x64, meaning it should use the native
|
||||
; 64-bit Program Files directory and the 64-bit view of the registry.
|
||||
ArchitecturesInstallIn64BitMode=x64
|
||||
; Source Dir is lellan/toolchain/makeflix/windows
|
||||
SourceDir="..\"
|
||||
OutputDir="deploy"
|
||||
OutputBaseFilename="makeflix_v{#version}_{#x86_or_x64}"
|
||||
SetupIconFile="..\images\Lellan_Logo_20130221.ico"
|
||||
LicenseFile="..\deploy\EULA.rtf"
|
||||
DisableWelcomePage=no
|
||||
|
||||
[Files]
|
||||
Source: "makeflix\{#exe_dir}\Release\makeflix.exe"; DestDir: "{app}"; DestName: "makeflix.exe"; Flags: ignoreversion
|
||||
Source: "deploy\DLLs\{#x86_or_x64}\Qt5Core.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||
Source: "deploy\DLLs\{#x86_or_x64}\Qt5Gui.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||
Source: "deploy\DLLs\{#x86_or_x64}\Qt5Widgets.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||
Source: "deploy\DLLs\{#x86_or_x64}\Qt5Network.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||
Source: "deploy\DLLs\{#x86_or_x64}\platforms\qwindows.dll"; DestDir: "{app}\platforms"; Flags: ignoreversion
|
||||
Source: "deploy\gstreamer\{#x86_or_x64}\*"; DestDir: "{app}\gstreamer"; Flags: recursesubdirs ignoreversion
|
||||
Source: "deploy\vc_redist\vc_redist.{#x86_or_x64}.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall
|
||||
Source: "deploy\bonjour\Bonjour.{#x86_or_x64}.msi"; DestDir: "{tmp}" ; Flags: deleteafterinstall
|
||||
|
||||
Source: "..\deploy\Makeflix_Open_Source_Libraries.pdf"; DestDir: "{app}"
|
||||
|
||||
[Icons]
|
||||
Name: "{group}\Makeflix"; Filename: "{app}\makeflix.exe"
|
||||
Name: "{group}\Uninstall Makeflix"; Filename: "{uninstallexe}"
|
||||
|
||||
|
||||
[Run]
|
||||
#define VCmsg "Installing Microsoft Visual C++ Redistributable ..."
|
||||
Filename: "{tmp}\vc_redist{#x86_or_x64}.exe"; StatusMsg: "{#VCmsg}"; Check: not VCinstalled
|
||||
#define BonjourMsg "Installing Apple Bonjour support ..."
|
||||
Filename: "msiexec"; Parameters: "/i {tmp}\Bonjour.{#x86_or_x64}.msi"; StatusMsg: "{#BonjourMsg}"; Check: not BonjourInstalled
|
||||
|
||||
[Registry]
|
||||
Root: HKLM; Subkey: "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\makeflix.exe"; ValueType: string; ValueName: "(Default)"; ValueData: "{app}\makeflix.exe"; Flags: uninsdeletekey
|
||||
Root: HKLM; Subkey: "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\makeflix.exe"; ValueType: string; ValueName: "Path"; ValueData: "{app}\gstreamer\bin"; Flags: uninsdeletekey
|
||||
|
||||
[Code]
|
||||
function VCinstalled: Boolean;
|
||||
// By Michael Weiner <mailto:spam@cogit.net>
|
||||
// Function for Inno Setup Compiler
|
||||
// 13 November 2015
|
||||
// Modified by Frank G Halasz to handle WOW case
|
||||
// 23 August 2016
|
||||
// Returns True if Microsoft Visual C++ Redistributable is installed, otherwise False.
|
||||
// The programmer may set the year of redistributable to find; see below.
|
||||
var
|
||||
names: TArrayOfString;
|
||||
i: Integer;
|
||||
dName, key, year, platfm: String;
|
||||
begin
|
||||
// Year of redistributable to find; leave null to find installation for any year.
|
||||
year := '2015';
|
||||
Result := False;
|
||||
if Is64BitInstallMode then
|
||||
begin
|
||||
platfm := 'x64';
|
||||
key := 'Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall';
|
||||
end
|
||||
else if not IsWin64 then
|
||||
begin
|
||||
platfm := 'x86';
|
||||
key := 'Software\Microsoft\Windows\CurrentVersion\Uninstall';
|
||||
end
|
||||
else
|
||||
begin
|
||||
platfm := 'x86';
|
||||
key := 'Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall';
|
||||
end;
|
||||
// Get an array of all of the uninstall subkey names.
|
||||
if RegGetSubkeyNames(HKEY_LOCAL_MACHINE, key, names) then
|
||||
// Uninstall subkey names were found.
|
||||
begin
|
||||
i := 0
|
||||
while ((i < GetArrayLength(names)) and (Result = False)) do
|
||||
// The loop will end as soon as one instance of a Visual C++ redistributable is found.
|
||||
begin
|
||||
// For each uninstall subkey, look for a DisplayName value.
|
||||
// If not found, then the subkey name will be used instead.
|
||||
if not RegQueryStringValue(HKEY_LOCAL_MACHINE, key + '\' + names[i], 'DisplayName', dName) then
|
||||
dName := names[i];
|
||||
// See if the value contains both of the strings below.
|
||||
Result := (Pos(Trim('Visual C++ ' + year),dName) * Pos('Redistributable',dName) * Pos(platfm, dName) <> 0)
|
||||
i := i + 1;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
function BonjourInstalled: Boolean;
|
||||
// Returns True if Apple Bonjour is installed, otherwise False.
|
||||
// Ignores date/version of Bonjour.
|
||||
begin
|
||||
Result := False;
|
||||
// If this key exists, then
|
||||
// bonjour services must already be installed
|
||||
if RegKeyExists(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Services\Bonjour Service') then
|
||||
// Uninstall subkey names were found.
|
||||
begin
|
||||
Result := True;
|
||||
end;
|
||||
end;
|
||||
85
installers/cygwin/medley.iss
Normal file
85
installers/cygwin/medley.iss
Normal file
@@ -0,0 +1,85 @@
|
||||
;###############################################################################
|
||||
;#
|
||||
;# medley.iss - Inno Setup compiler script for creating a Windows
|
||||
;# installer for cygwin and Medley on cygwin
|
||||
;#
|
||||
;# 2023-06-03 Frank Halasz
|
||||
;#
|
||||
;# Copyright 2023 Interlisp.org
|
||||
;#
|
||||
;###############################################################################
|
||||
|
||||
#define x86_or_x64 "x64"
|
||||
#if GetEnv('COMBINED_RELEASE_TAG') != ""
|
||||
#define VERSION=GetEnv('COMBINED_RELEASE_TAG')
|
||||
#else
|
||||
#define VERSION="local"
|
||||
#endif
|
||||
|
||||
#if GetEnv('CYGWIN_INSTALLER_BASE') != ""
|
||||
#define OUTFILE=GetEnv('CYGWIN_INSTALLER_BASE')
|
||||
#else
|
||||
#define OUTFILE="medley-full-cygwin-x86_64-local"
|
||||
#endif
|
||||
|
||||
[Setup]
|
||||
PrivilegesRequired=lowest
|
||||
ArchitecturesAllowed={#x86_or_x64}
|
||||
AppName=Medley
|
||||
AppVersion={#version}
|
||||
AppPublisher=Interlisp.org
|
||||
AppPublisherURL=https://interlisp.org/
|
||||
AppCopyright=Copyright (C) 2023 Interlisp.org
|
||||
DefaultDirName={%USERPROFILE}\il
|
||||
DefaultGroupName=Medley
|
||||
Compression=lzma2
|
||||
SolidCompression=yes
|
||||
; "ArchitecturesInstallIn64BitMode=x64" requests that the install be
|
||||
; done in "64-bit mode" on x64, meaning it should use the native
|
||||
; 64-bit Program Files directory and the 64-bit view of the registry.
|
||||
ArchitecturesInstallIn64BitMode=x64
|
||||
OutputDir="."
|
||||
OutputBaseFilename={#OUTFILE}
|
||||
SetupIconFile="Medley.ico"
|
||||
DisableWelcomePage=no
|
||||
MissingRunOnceIdsWarning=no
|
||||
DisableProgramGroupPage=yes
|
||||
WizardImageFile=medley_logo.bmp
|
||||
WizardSmallImageFile=medley_logo_small.bmp
|
||||
WizardImageStretch=no
|
||||
UninstallDisplayIcon="{app}\Medley.ico"
|
||||
UninstallFilesDir={app}\uninstall
|
||||
UsePreviousAppDir=no
|
||||
|
||||
[Dirs]
|
||||
Name: "{app}\install"; Permissions: everyone-full
|
||||
Name: "{app}\uninstall"; Permissions: everyone-full
|
||||
Name: "{app}\cygwin"; Permissions: everyone-full
|
||||
|
||||
[Files]
|
||||
Source: "setup-x86_64.exe"; DestDir: "{app}\cygwin"; DestName: "setup-x86_64.exe"; Flags: ignoreversion
|
||||
Source: "maiko-cygwin.x86_64.tgz"; DestDir: "{app}\install"; DestName: "maiko-cygwin.x86_64.tgz"; Flags: ignoreversion
|
||||
Source: "medley.tgz"; DestDir: "{app}\install"; DestName: "medley.tgz"; Flags: ignoreversion
|
||||
Source: "..\win\editpath\x86_64\EditPath.exe"; DestDir: "{app}\uninstall"; DestName: "EditPath.exe"; Flags: ignoreversion
|
||||
Source: "Medley.ico"; DestDir: "{app}"; DestName: "Medley.ico"; Flags: ignoreversion
|
||||
|
||||
[Icons]
|
||||
Name: "{group}\Medley\Uninstall_Medley"; Filename: "{uninstallexe}"
|
||||
; Name: "{group}\Medley\Medley"; Filename: "powershell"; Parameters: "-NoExit -File {app}\medley.ps1 --help"; IconFilename: "{app}\Medley.ico"
|
||||
|
||||
[Run]
|
||||
Filename: "{app}\cygwin\setup-x86_64.exe"; Parameters: "--quiet-mode --no-admin --wait --no-shortcuts --no-write-registry --verbose --root {app} --site http://www.gtlib.gatech.edu/pub/cygwin/ --only-site --local-package-dir {app}\cygwin --packages nano,xdg-utils"; StatusMsg: "Installing Cygwin ..."
|
||||
Filename: "{app}\bin\bash"; Parameters: "-login -c 'sed -i -e s/^none/#none/ /etc/fstab && echo none / cygdrive binary,posix=0,user 0 0 >>/etc/fstab'"; Flags: runhidden
|
||||
Filename: "tar"; Parameters: "-x -z -C {app} -f {app}\install\medley.tgz"; Flags: runhidden; StatusMsg: "Installing Medley ..."
|
||||
Filename: "powershell"; Parameters: "remove-item -force -recurse {app}\maiko"; Flags: runhidden; StatusMsg: "Installing Maiko ..."
|
||||
Filename: "tar"; Parameters: "-x -z -C {app} -f {app}\install\maiko-cygwin.x86_64.tgz"; Flags: runhidden; StatusMsg: "Installing Maiko ..."
|
||||
; Recreate medley symbolic links (lost in tars)
|
||||
Filename: "{app}\bin\bash"; Parameters: "-login -c 'cd /medley/scripts/medley && ln -s medley.command medley.sh && cd ../.. && ln -s /medley/scripts/medley/medley.sh medley'"; Flags: runhidden
|
||||
; Create medley.bat
|
||||
Filename: "powershell"; Parameters: "write-output \""{app}\bin\bash -login -c '/medley/scripts/medley/medley.sh %*'\"" | out-file medley.bat -Encoding ascii"; WorkingDir: "{app}"; Flags: runhidden; StatusMsg: "Creating medley.bat ..."
|
||||
Filename: "{app}\uninstall\EditPath.exe"; Parameters: "--user --add {app}"; Flags: runhidden; StatusMsg: "Adding to PATH ..."
|
||||
Filename: "powershell"; Parameters: "remove-item -recurse -force {app}\install"; Flags: runhidden; StatusMsg: "Cleaning up ..."
|
||||
|
||||
[UninstallRun]
|
||||
Filename: "{app}\uninstall\EditPath.exe"; Parameters: "--user --remove {app}"; Flags: runhidden
|
||||
|
||||
BIN
installers/cygwin/medley_logo.bmp
Normal file
BIN
installers/cygwin/medley_logo.bmp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 53 KiB |
BIN
installers/cygwin/medley_logo.png
Normal file
BIN
installers/cygwin/medley_logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 10 KiB |
BIN
installers/cygwin/medley_logo_small.bmp
Normal file
BIN
installers/cygwin/medley_logo_small.bmp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 13 KiB |
@@ -38,6 +38,9 @@
|
||||
<p><a href="@@@DOWNLOAD_URL@@@/medley-full-wsl-aarch64-@@@COMBINED.RELEASE.TAG@@@.tgz">Release @@@MEDLEY.SHORT.RELEASE.TAG@@@ for ARM64 machines</a></p></li>
|
||||
</ul></li>
|
||||
</ul></li>
|
||||
<li><h2>WINDOWS 10/11 (Single install based on cygwin - Docker install deprecated)</h2>
|
||||
|
||||
<p><a href="@@@DOWNLOAD_URL@@@/@@@CYGWIN.INSTALLER@@@">Release @@@MEDLEY.SHORT.RELEASE.TAG@@@ for Windows x64 machines</a></p></li>
|
||||
<li><h2>macOS 11 (Big Sur) and later - for both Intel and Apple Silicon</h2>
|
||||
|
||||
<ul>
|
||||
@@ -48,8 +51,5 @@
|
||||
|
||||
<p><a href="@@@DOWNLOAD_URL@@@/medley-full-macos-universal-@@@COMBINED.RELEASE.TAG@@@.zip">Release @@@MEDLEY.SHORT.RELEASE.TAG@@@</a></p></li>
|
||||
</ul></li>
|
||||
<li><h2>WINDOWS 10/11 (Medley running within Cygwin)</h2>
|
||||
|
||||
<p>Not available</p></li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
|
||||
@@ -34,6 +34,10 @@
|
||||
|
||||
[Release @@@MEDLEY.SHORT.RELEASE.TAG@@@ for ARM64 machines](@@@DOWNLOAD_URL@@@/medley-full-wsl-aarch64-@@@COMBINED.RELEASE.TAG@@@.tgz)
|
||||
|
||||
* ## WINDOWS 10/11 (Single install based on cygwin - Docker install deprecated)
|
||||
|
||||
[Release @@@MEDLEY.SHORT.RELEASE.TAG@@@ for Windows x64 machines](@@@DOWNLOAD_URL@@@/@@@CYGWIN.INSTALLER@@@)
|
||||
|
||||
* ## macOS 11 (Big Sur) and later - for both Intel and Apple Silicon
|
||||
|
||||
* ### DMG Installer
|
||||
@@ -43,12 +47,3 @@
|
||||
* ### ZIP Installer
|
||||
|
||||
[Release @@@MEDLEY.SHORT.RELEASE.TAG@@@](@@@DOWNLOAD_URL@@@/medley-full-macos-universal-@@@COMBINED.RELEASE.TAG@@@.zip)
|
||||
|
||||
* ## WINDOWS 10/11 (Medley running within Cygwin)
|
||||
|
||||
Not available
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -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,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.
@@ -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,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))
|
||||
Binary file not shown.
Binary file not shown.
276
library/PDFSTREAM
Normal file
276
library/PDFSTREAM
Normal file
@@ -0,0 +1,276 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED " 1-Oct-2023 20:53:05" {WMEDLEY}<library>PDFSTREAM.;54 13917
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (FNS SEE-PDF)
|
||||
|
||||
:PREVIOUS-DATE " 1-Oct-2023 15:29:33" {WMEDLEY}<library>PDFSTREAM.;53)
|
||||
|
||||
|
||||
(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 'ps2pdf))
|
||||
(* ; "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)))
|
||||
|
||||
(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 'ps2pdf)
|
||||
|
||||
|
||||
|
||||
(* ; "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 (OR (ASSOC (OR PDFCONVERTER (MKATOM (UNIX-GETENV "MEDLEY-PDFCONVERTER")))
|
||||
PDF-CONVERTER-TEMPLATES))
|
||||
(ERROR "POSTSCRIPT-to-PDF converter is not specified"))
|
||||
(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"))
|
||||
(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 (OR PDFCONVERTER
|
||||
(MKATOM (UNIX-GETENV
|
||||
"MEDLEY-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")
|
||||
|
||||
(* ;; "Good for Mac, not sure about Windows etc.")
|
||||
|
||||
(ShellCommand (CONCAT "open -a Preview " (UNIX-FILE-NAME (PACKFILENAME 'BODY PDFFILE 'EXTENSION
|
||||
'PDF)
|
||||
'INPUT])
|
||||
)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (3078 5692 (PDFFILEP 3088 . 4002) (PDF.HARDCOPYW 4004 . 4602) (PDF.TEXT 4604 . 5321) (
|
||||
PDF.TEDIT 5323 . 5690)) (6136 13355 (OPEN-PDF-STREAM 6146 . 8324) (CLOSE-PDF-STREAM 8326 . 9613) (
|
||||
PS-TO-PDF 9615 . 13353)) (13356 13894 (SEE-PDF 13366 . 13892)))))
|
||||
STOP
|
||||
BIN
library/PDFSTREAM.LCOM
Normal file
BIN
library/PDFSTREAM.LCOM
Normal file
Binary file not shown.
@@ -1,28 +1,40 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "18-Jan-2023 20:36:10" {DSK}<home>frank>il>medley>gmedley>library>UNIXUTILS.;7 5091
|
||||
(FILECREATED " 8-Oct-2023 15:06:52" {DSK}<home>frank>il>medley>gmedley>library>UNIXUTILS.;15 14696
|
||||
|
||||
:CHANGES-TO (FNS ShellBrowser ShellBrowse ShellOpen)
|
||||
:CHANGES-TO (FNS ShellOpen UNIX-FILE-NAME ShellBrowser ShellBrowse ShellOpener)
|
||||
(VARS UNIXUTILSCOMS)
|
||||
(FUNCTIONS ShellWhich)
|
||||
|
||||
:PREVIOUS-DATE "18-Jan-2023 13:22:28" {DSK}<home>frank>il>medley>gmedley>greetfiles>UNIXUTILS.;1
|
||||
:PREVIOUS-DATE " 8-Oct-2023 02:35:47" {DSK}<home>frank>il>medley>gmedley>library>UNIXUTILS.;14
|
||||
)
|
||||
|
||||
|
||||
(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)
|
||||
(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)
|
||||
@@ -34,62 +46,56 @@
|
||||
|
||||
(CL:DEFUN ShellWhich (Cmd) (* ; "Edited 18-Jan-2023 13:19 by FGH")
|
||||
[CL:WITH-OPEN-STREAM (S (OPENSTREAM '{NODIRCORE} 'BOTH))
|
||||
(ShellCommand (CONCAT "which " Cmd)
|
||||
(ShellCommand (CONCAT "command -v " Cmd)
|
||||
S)
|
||||
(COND
|
||||
((EQ (GETEOFPTR S)
|
||||
0)
|
||||
NIL)
|
||||
(T (SETFILEPTR S 0)
|
||||
(MKSTRING (READ S])
|
||||
(RSTRING S])
|
||||
(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"])
|
||||
CMDPATH
|
||||
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.")
|
||||
|
||||
@@ -97,17 +103,189 @@
|
||||
(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")
|
||||
|
||||
(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))
|
||||
(UNIXFILE (UNIX-FILE-NAME FilenameOrURL 'INPUT T)))
|
||||
(if (NOT UNIXFILE)
|
||||
then (CONCAT "File not found: " FilenameOrURL)
|
||||
elseif (NOT (STREQUAL OPENER "true"))
|
||||
then (CL:WITH-OPEN-STREAM
|
||||
(SHELLSTREAM (OPENSTREAM (CONCAT "{CORE}SHELLOUT" (RAND))
|
||||
'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)))
|
||||
else (CONCAT "Unable to find a file opener to open: " FilenameOrURL])
|
||||
|
||||
(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 (764 1137 (ShellCommand 764 . 1137)) (1139 1538 (ShellWhich 1139 . 1538)) (1539 5068 (
|
||||
ShellBrowser 1549 . 4072) (ShellBrowse 4074 . 5066)))))
|
||||
(FILEMAP (NIL (1144 1517 (ShellCommand 1144 . 1517)) (1519 1916 (ShellWhich 1519 . 1916)) (1917 14618
|
||||
(ShellBrowser 1927 . 3675) (ShellBrowse 3677 . 4362) (ShellOpener 4364 . 6052) (ShellOpen 6054 . 9357)
|
||||
(PROCESS-COMMAND 9359 . 9972) (SLASHIT 9974 . 12016) (UNIX-FILE-NAME 12018 . 14616)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -1,10 +1,12 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "14-Jul-2022 16:55:53"
|
||||
{DSK}<users>kaplan>local>medley3.5>working-medley>library>tedit>TEDIT-WINDOW.;1 180402
|
||||
(FILECREATED "20-Oct-2023 21:46:58" {MEDLEY}<library>tedit>TEDIT-WINDOW.;7 180689
|
||||
|
||||
:PREVIOUS-DATE "14-Jul-2022 11:08:01"
|
||||
{DSK}<users>kaplan>local>medley3.5>working-medley>library>newtedit>TEDIT-WINDOW.;2)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (FNS TEDIT.DEACTIVATE.WINDOW)
|
||||
|
||||
:PREVIOUS-DATE "14-Jul-2022 16:55:53" {MEDLEY}<library>tedit>TEDIT-WINDOW.;5)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT TEDIT-WINDOWCOMS)
|
||||
@@ -1631,113 +1633,114 @@
|
||||
(DEFINEQ
|
||||
|
||||
(TEDIT.DEACTIVATE.WINDOW
|
||||
[LAMBDA (W FORCEFLG DISCONNECTONLYFLG) (* ; "Edited 16-Oct-2021 18:51 by rmk:")
|
||||
[LAMBDA (W FORCEFLG DISCONNECTONLYFLG) (* ; "Edited 20-Oct-2023 21:46 by rmk")
|
||||
(* ; "Edited 16-Oct-2021 18:51 by rmk:")
|
||||
|
||||
(* ;; "Deactivate the various button fns for this window")
|
||||
|
||||
(PROG [(TEXTOBJ (WINDOWPROP W 'TEXTOBJ] (* ;
|
||||
"Can't be a call to TEXTOBJ, since window may NOT have a textobj on it.")
|
||||
(replace (TEXTOBJ EDITFINISHEDFLG) of TEXTOBJ with T)
|
||||
[COND
|
||||
((AND TEXTOBJ (fetch (TEXTOBJ EDITOPACTIVE) of TEXTOBJ))
|
||||
|
||||
(* ;; "If something is going on, DON'T CLOSE THE WINDOW")
|
||||
|
||||
(TEDIT.PROMPTPRINT TEXTOBJ "Not closed; edit operation in progress" T)
|
||||
(RETURN 'DON'T))
|
||||
((AND TEXTOBJ (PROCESSP (WINDOWPROP W 'PROCESS))
|
||||
(NOT (fetch (TEXTOBJ EDITFINISHEDFLG) of TEXTOBJ))
|
||||
(NOT (fetch (TEXTOBJ TXTREADONLY) of TEXTOBJ))
|
||||
(NOT FORCEFLG)) (* ;
|
||||
"This is an un-quit TEdit window. Try to QUIT out of TEdit.")
|
||||
(COND
|
||||
((\TEDIT.QUIT W T))
|
||||
(T
|
||||
(* ;; "Always return DON'T: If we didn't quit, we don't want to close the window; if we did quit, the window is closed already, and will be reopened to reclose it.")
|
||||
|
||||
(RETURN 'DON'T]
|
||||
(COND
|
||||
([AND TEXTOBJ (OR FORCEFLG (fetch (TEXTOBJ EDITFINISHEDFLG) of TEXTOBJ)
|
||||
(fetch (TEXTOBJ TXTREADONLY) of TEXTOBJ)
|
||||
(NOT (PROCESSP (WINDOWPROP W 'PROCESS]
|
||||
(* ;
|
||||
"Only do this if it's a TEdit window, and has been QUIT out of.")
|
||||
(CL:WHEN TEXTOBJ
|
||||
(replace (TEXTOBJ EDITFINISHEDFLG) of TEXTOBJ with T)
|
||||
[COND
|
||||
((AND (fetch (TEXTOBJ PROMPTWINDOW) of TEXTOBJ)
|
||||
(OPENWP (fetch (TEXTOBJ PROMPTWINDOW) of TEXTOBJ)))
|
||||
(CLEARW (fetch (TEXTOBJ PROMPTWINDOW) of TEXTOBJ]
|
||||
(\SHOWSEL (fetch (TEXTOBJ SEL) of TEXTOBJ)
|
||||
NIL NIL) (* ;
|
||||
"Before the window is closed, make SURE that the caret is down, or the window will reappear.")
|
||||
((fetch (TEXTOBJ EDITOPACTIVE) of TEXTOBJ)
|
||||
|
||||
(* ;; "If something is going on, DON'T CLOSE THE WINDOW")
|
||||
|
||||
(TEDIT.PROMPTPRINT TEXTOBJ "Not closed; edit operation in progress" T)
|
||||
(RETURN 'DON'T))
|
||||
((AND (PROCESSP (WINDOWPROP W 'PROCESS))
|
||||
(NOT (fetch (TEXTOBJ EDITFINISHEDFLG) of TEXTOBJ))
|
||||
(NOT (fetch (TEXTOBJ TXTREADONLY) of TEXTOBJ))
|
||||
(NOT FORCEFLG)) (* ;
|
||||
"This is an un-quit TEdit window. Try to QUIT out of TEdit.")
|
||||
(COND
|
||||
((\TEDIT.QUIT W T))
|
||||
(T
|
||||
(* ;; "Always return DON'T: If we didn't quit, we don't want to close the window; if we did quit, the window is closed already, and will be reopened to reclose it.")
|
||||
|
||||
(RETURN 'DON'T]
|
||||
(COND
|
||||
((AND (\TEDIT.WINDOW.TITLE TEXTOBJ)
|
||||
(OPENWP (fetch (TEXTOBJ PROMPTWINDOW) of TEXTOBJ))
|
||||
(OPENWP W)
|
||||
(EQ W (CAR (fetch (TEXTOBJ \WINDOW) of TEXTOBJ)))
|
||||
(NOT DISCONNECTONLYFLG))
|
||||
(\TEDIT.WINDOW.TITLE TEXTOBJ "Edit Window [Inactive]")
|
||||
([OR FORCEFLG (fetch (TEXTOBJ EDITFINISHEDFLG) of TEXTOBJ)
|
||||
(fetch (TEXTOBJ TXTREADONLY) of TEXTOBJ)
|
||||
(NOT (PROCESSP (WINDOWPROP W 'PROCESS] (* ;
|
||||
"Only do this if it's a TEdit window, and has been QUIT out of.")
|
||||
[COND
|
||||
((AND (fetch (TEXTOBJ PROMPTWINDOW) of TEXTOBJ)
|
||||
(OPENWP (fetch (TEXTOBJ PROMPTWINDOW) of TEXTOBJ)))
|
||||
(CLEARW (fetch (TEXTOBJ PROMPTWINDOW) of TEXTOBJ]
|
||||
(\SHOWSEL (fetch (TEXTOBJ SEL) of TEXTOBJ)
|
||||
NIL NIL) (* ;
|
||||
"Before the window is closed, make SURE that the caret is down, or the window will reappear.")
|
||||
(COND
|
||||
((AND (\TEDIT.WINDOW.TITLE TEXTOBJ)
|
||||
(OPENWP (fetch (TEXTOBJ PROMPTWINDOW) of TEXTOBJ))
|
||||
(OPENWP W)
|
||||
(EQ W (CAR (fetch (TEXTOBJ \WINDOW) of TEXTOBJ)))
|
||||
(NOT DISCONNECTONLYFLG))
|
||||
(\TEDIT.WINDOW.TITLE TEXTOBJ "Edit Window [Inactive]")
|
||||
(* ;
|
||||
"Reset the window's title to a known 'inactive' value")
|
||||
))
|
||||
[COND
|
||||
((NOT DISCONNECTONLYFLG)
|
||||
(for PANE in (REVERSE (CDR (fetch (TEXTOBJ \WINDOW) of TEXTOBJ)))
|
||||
do
|
||||
(* ;; "Run thru any split-off sub-panes, and reattach them, so we get a whole window back before the end of the world.")
|
||||
))
|
||||
[COND
|
||||
((NOT DISCONNECTONLYFLG)
|
||||
(for PANE in (REVERSE (CDR (fetch (TEXTOBJ \WINDOW) of TEXTOBJ)))
|
||||
do
|
||||
(* ;; "Run thru any split-off sub-panes, and reattach them, so we get a whole window back before the end of the world.")
|
||||
|
||||
(\TEDIT.UNSPLITW PANE))
|
||||
(replace (TEXTOBJ \WINDOW) of TEXTOBJ with NIL)
|
||||
(COND
|
||||
((type? STREAM (fetch (TEXTOBJ TXTFILE) of TEXTOBJ))
|
||||
(\TEDIT.UNSPLITW PANE))
|
||||
(replace (TEXTOBJ \WINDOW) of TEXTOBJ with NIL)
|
||||
(COND
|
||||
((type? STREAM (fetch (TEXTOBJ TXTFILE) of TEXTOBJ))
|
||||
(* ;
|
||||
"Close the file that this window was open on.")
|
||||
(COND
|
||||
((NOT (WINDOWPROP W 'TEDIT-CLOSING-FILE T))
|
||||
(CLOSEF? (fetch (TEXTOBJ TXTFILE) of TEXTOBJ))
|
||||
(WINDOWPROP W 'TEDIT-CLOSING-FILE NIL]
|
||||
(WINDOWPROP W 'TEXTOBJ NIL) (* ;
|
||||
(COND
|
||||
((NOT (WINDOWPROP W 'TEDIT-CLOSING-FILE T))
|
||||
(CLOSEF? (fetch (TEXTOBJ TXTFILE) of TEXTOBJ))
|
||||
(WINDOWPROP W 'TEDIT-CLOSING-FILE NIL]
|
||||
(WINDOWPROP W 'TEXTOBJ NIL) (* ;
|
||||
"Detach the edit data structures from the window")
|
||||
(WINDOWPROP W 'TEXTSTREAM NIL)
|
||||
(WINDOWPROP W 'LINES NIL)
|
||||
(WINDOWPROP W 'THISLINE NIL)
|
||||
(WINDOWPROP W 'PROCESS.EXITFN NIL)
|
||||
(WINDOWPROP W 'PROCESS.IDLEFN NIL)
|
||||
(WINDOWPROP W 'CURSOROUTFN NIL)
|
||||
(WINDOWPROP W 'CURSORMOVEDFN NIL)
|
||||
(WINDOWPROP W 'BUTTONEVENTFN 'TOTOPW) (* ; "And the button functions")
|
||||
(WINDOWPROP W 'RIGHTBUTTONFN 'DOWINDOWCOM)
|
||||
(WINDOWDELPROP W 'CLOSEFN 'TEDIT.DEACTIVATE.WINDOW)
|
||||
(WINDOWPROP W 'SCROLLFN NIL)
|
||||
(WINDOWDELPROP W 'RESHAPEFN '\EDITRESHAPEFN)
|
||||
(AND (NOT DISCONNECTONLYFLG)
|
||||
(WINDOWPROP W 'PROCESS)
|
||||
(\TEDIT.INTERRUPT.SETUP (WINDOWPROP W 'PROCESS)
|
||||
T)) (* ;
|
||||
(WINDOWPROP W 'TEXTSTREAM NIL)
|
||||
(WINDOWPROP W 'LINES NIL)
|
||||
(WINDOWPROP W 'THISLINE NIL)
|
||||
(WINDOWPROP W 'PROCESS.EXITFN NIL)
|
||||
(WINDOWPROP W 'PROCESS.IDLEFN NIL)
|
||||
(WINDOWPROP W 'CURSOROUTFN NIL)
|
||||
(WINDOWPROP W 'CURSORMOVEDFN NIL)
|
||||
(WINDOWPROP W 'BUTTONEVENTFN 'TOTOPW) (* ; "And the button functions")
|
||||
(WINDOWPROP W 'RIGHTBUTTONFN 'DOWINDOWCOM)
|
||||
(WINDOWDELPROP W 'CLOSEFN 'TEDIT.DEACTIVATE.WINDOW)
|
||||
(WINDOWPROP W 'SCROLLFN NIL)
|
||||
(WINDOWDELPROP W 'RESHAPEFN '\EDITRESHAPEFN)
|
||||
(AND (NOT DISCONNECTONLYFLG)
|
||||
(WINDOWPROP W 'PROCESS)
|
||||
(\TEDIT.INTERRUPT.SETUP (WINDOWPROP W 'PROCESS)
|
||||
T)) (* ;
|
||||
"Make sure any disarmed interrupts are restored.")
|
||||
(for MENUW in (ATTACHEDWINDOWS W) when (AND (WINDOWPROP MENUW 'TEDITMENU)
|
||||
(WINDOWPROP MENUW 'TEXTOBJ))
|
||||
do (* ;
|
||||
(for MENUW in (ATTACHEDWINDOWS W) when (AND (WINDOWPROP MENUW 'TEDITMENU)
|
||||
(WINDOWPROP MENUW 'TEXTOBJ))
|
||||
do (* ;
|
||||
"Detach all the TEDITMENU windows that belong to this window.")
|
||||
(replace (TEXTOBJ EDITFINISHEDFLG) of (TEXTOBJ MENUW) with T)
|
||||
(replace (TEXTOBJ EDITFINISHEDFLG) of (TEXTOBJ MENUW) with T)
|
||||
(* ; "Mark it finished")
|
||||
(WINDOWPROP MENUW 'TEDITMENU NIL) (* ;
|
||||
(WINDOWPROP MENUW 'TEDITMENU NIL) (* ;
|
||||
"And mark it no longer a menu window")
|
||||
(GIVE.TTY.PROCESS MENUW) (* ;
|
||||
(GIVE.TTY.PROCESS MENUW) (* ;
|
||||
"Then give it a chance to kill itself off")
|
||||
(DISMISS 300))
|
||||
(COND
|
||||
((NOT DISCONNECTONLYFLG)
|
||||
(GIVE.TTY.PROCESS W)
|
||||
(DISMISS 300)))
|
||||
[replace (TEXTOBJ \WINDOW) of TEXTOBJ with (COND
|
||||
((LISTP (fetch (TEXTOBJ \WINDOW)
|
||||
of TEXTOBJ))
|
||||
(DISMISS 300))
|
||||
(COND
|
||||
((NOT DISCONNECTONLYFLG)
|
||||
(GIVE.TTY.PROCESS W)
|
||||
(DISMISS 300)))
|
||||
[replace (TEXTOBJ \WINDOW) of TEXTOBJ with (COND
|
||||
((LISTP (fetch (TEXTOBJ \WINDOW)
|
||||
of TEXTOBJ))
|
||||
(* ; "It's a list; remove this window")
|
||||
(DREMOVE W (fetch (TEXTOBJ \WINDOW)
|
||||
of TEXTOBJ]
|
||||
(DREMOVE W (fetch (TEXTOBJ \WINDOW)
|
||||
of TEXTOBJ]
|
||||
(* ;
|
||||
"Disconnect the window from the edit data structures as well.")
|
||||
])
|
||||
)))])
|
||||
|
||||
(\TEDIT.REPAINTFN
|
||||
[LAMBDA (W) (* ; "Edited 30-May-91 23:34 by jds")
|
||||
@@ -2726,25 +2729,25 @@
|
||||
(RPAQ? TEDIT.TITLED.ICON.TEMPLATE (CONS TEDITICON (CONS TEDITMASK (CONS TEDIT.ICON.TITLE.REGION NIL))
|
||||
))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (7116 90052 (TEDIT.CREATEW 7126 . 9899) (\TEDIT.CREATEW.FROM.REGION 9901 . 10881) (
|
||||
TEDIT.CURSORMOVEDFN 10883 . 20782) (TEDIT.CURSOROUTFN 20784 . 21327) (TEDIT.WINDOW.SETUP 21329 . 23154
|
||||
) (TEDIT.MINIMAL.WINDOW.SETUP 23156 . 30934) (\TEDIT.ACTIVE.WINDOWP 30936 . 31929) (
|
||||
\TEDIT.BUTTONEVENTFN 31931 . 55639) (\TEDIT.WINDOW.OPS 55641 . 58853) (\TEDIT.EXPANDFN 58855 . 59418)
|
||||
(\TEDIT.MAINW 59420 . 60717) (\TEDIT.PRIMARYW 60719 . 61880) (\TEDIT.COPYINSERTFN 61882 . 62678) (
|
||||
\TEDIT.NEWREGIONFN 62680 . 65196) (\TEDIT.SET.WINDOW.EXTENT 65198 . 70741) (\TEDIT.SHRINK.ICONCREATE
|
||||
70743 . 72944) (\TEDIT.SHRINKFN 72946 . 73505) (\TEDIT.SPLITW 73507 . 78972) (\TEDIT.UNSPLITW 78974 .
|
||||
83830) (\TEDIT.WINDOW.SETUP 83832 . 89655) (\SAFE.FIRST 89657 . 90050)) (91382 92293 (TEDITWINDOWP
|
||||
91392 . 92291)) (92330 95120 (TEDIT.GETINPUT 92340 . 94400) (\TEDIT.MAKEFILENAME 94402 . 95118)) (
|
||||
95169 101597 (TEDIT.PROMPTPRINT 95179 . 98114) (TEDIT.PROMPTFLASH 98116 . 100025) (
|
||||
\TEDIT.PROMPT.PAGEFULLFN 100027 . 101595)) (101832 105804 (TEXTSTREAM.TITLE 101842 . 102467) (
|
||||
\TEDIT.ORIGINAL.WINDOW.TITLE 102469 . 104391) (\TEDIT.WINDOW.TITLE 104393 . 105047) (
|
||||
\TEXTSTREAM.FILENAME 105049 . 105802)) (105847 147324 (TEDIT.DEACTIVATE.WINDOW 105857 . 112821) (
|
||||
\TEDIT.REPAINTFN 112823 . 115671) (\TEDIT.RESHAPEFN 115673 . 120517) (\TEDIT.SCROLLFN 120519 . 147322)
|
||||
) (147366 149497 (\TEDIT.PROCIDLEFN 147376 . 148671) (\TEDIT.PROCENTRYFN 148673 . 149118) (
|
||||
\TEDIT.PROCEXITFN 149120 . 149495)) (149576 160542 (\EDIT.DOWNCARET 149586 . 150255) (\EDIT.FLIPCARET
|
||||
150257 . 151776) (TEDIT.FLASHCARET 151778 . 153059) (\EDIT.UPCARET 153061 . 153486) (
|
||||
TEDIT.NORMALIZECARET 153488 . 159185) (\SETCARET 159187 . 160115) (\TEDIT.CARET 160117 . 160540)) (
|
||||
160576 174370 (TEDIT.ADD.MENUITEM 160586 . 162877) (TEDIT.DEFAULT.MENUFN 162879 . 171849) (
|
||||
TEDIT.REMOVE.MENUITEM 171851 . 172848) (\TEDIT.CREATEMENU 172850 . 173287) (\TEDIT.MENU.WHENHELDFN
|
||||
173289 . 174055) (\TEDIT.MENU.WHENSELECTEDFN 174057 . 174368)))))
|
||||
(FILEMAP (NIL (7098 90034 (TEDIT.CREATEW 7108 . 9881) (\TEDIT.CREATEW.FROM.REGION 9883 . 10863) (
|
||||
TEDIT.CURSORMOVEDFN 10865 . 20764) (TEDIT.CURSOROUTFN 20766 . 21309) (TEDIT.WINDOW.SETUP 21311 . 23136
|
||||
) (TEDIT.MINIMAL.WINDOW.SETUP 23138 . 30916) (\TEDIT.ACTIVE.WINDOWP 30918 . 31911) (
|
||||
\TEDIT.BUTTONEVENTFN 31913 . 55621) (\TEDIT.WINDOW.OPS 55623 . 58835) (\TEDIT.EXPANDFN 58837 . 59400)
|
||||
(\TEDIT.MAINW 59402 . 60699) (\TEDIT.PRIMARYW 60701 . 61862) (\TEDIT.COPYINSERTFN 61864 . 62660) (
|
||||
\TEDIT.NEWREGIONFN 62662 . 65178) (\TEDIT.SET.WINDOW.EXTENT 65180 . 70723) (\TEDIT.SHRINK.ICONCREATE
|
||||
70725 . 72926) (\TEDIT.SHRINKFN 72928 . 73487) (\TEDIT.SPLITW 73489 . 78954) (\TEDIT.UNSPLITW 78956 .
|
||||
83812) (\TEDIT.WINDOW.SETUP 83814 . 89637) (\SAFE.FIRST 89639 . 90032)) (91364 92275 (TEDITWINDOWP
|
||||
91374 . 92273)) (92312 95102 (TEDIT.GETINPUT 92322 . 94382) (\TEDIT.MAKEFILENAME 94384 . 95100)) (
|
||||
95151 101579 (TEDIT.PROMPTPRINT 95161 . 98096) (TEDIT.PROMPTFLASH 98098 . 100007) (
|
||||
\TEDIT.PROMPT.PAGEFULLFN 100009 . 101577)) (101814 105786 (TEXTSTREAM.TITLE 101824 . 102449) (
|
||||
\TEDIT.ORIGINAL.WINDOW.TITLE 102451 . 104373) (\TEDIT.WINDOW.TITLE 104375 . 105029) (
|
||||
\TEXTSTREAM.FILENAME 105031 . 105784)) (105829 147611 (TEDIT.DEACTIVATE.WINDOW 105839 . 113108) (
|
||||
\TEDIT.REPAINTFN 113110 . 115958) (\TEDIT.RESHAPEFN 115960 . 120804) (\TEDIT.SCROLLFN 120806 . 147609)
|
||||
) (147653 149784 (\TEDIT.PROCIDLEFN 147663 . 148958) (\TEDIT.PROCENTRYFN 148960 . 149405) (
|
||||
\TEDIT.PROCEXITFN 149407 . 149782)) (149863 160829 (\EDIT.DOWNCARET 149873 . 150542) (\EDIT.FLIPCARET
|
||||
150544 . 152063) (TEDIT.FLASHCARET 152065 . 153346) (\EDIT.UPCARET 153348 . 153773) (
|
||||
TEDIT.NORMALIZECARET 153775 . 159472) (\SETCARET 159474 . 160402) (\TEDIT.CARET 160404 . 160827)) (
|
||||
160863 174657 (TEDIT.ADD.MENUITEM 160873 . 163164) (TEDIT.DEFAULT.MENUFN 163166 . 172136) (
|
||||
TEDIT.REMOVE.MENUITEM 172138 . 173135) (\TEDIT.CREATEMENU 173137 . 173574) (\TEDIT.MENU.WHENHELDFN
|
||||
173576 . 174342) (\TEDIT.MENU.WHENSELECTEDFN 174344 . 174655)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
625
library/virtualkeyboards/DANDELIONKEYBOARDS
Normal file
625
library/virtualkeyboards/DANDELIONKEYBOARDS
Normal file
@@ -0,0 +1,625 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED " 6-Jul-2023 08:52:09" {WMEDLEY}<library>virtualkeyboards>DANDELIONKEYBOARDS.;3 33795
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS DANDELIONKEYBOARDSCOMS)
|
||||
|
||||
:PREVIOUS-DATE " 4-Jul-2023 23:18:05" {WMEDLEY}<library>virtualkeyboards>DANDELIONKEYBOARDS.;2
|
||||
)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT DANDELIONKEYBOARDSCOMS)
|
||||
|
||||
(RPAQQ DANDELIONKEYBOARDSCOMS ((ALISTS (VKBD.LOADED-KEYBOARDS DANDELION))))
|
||||
|
||||
(ADDTOVAR VKBD.LOADED-KEYBOARDS
|
||||
(DANDELION (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)))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL)))
|
||||
STOP
|
||||
624
library/virtualkeyboards/DORADOKEYBOARDS
Normal file
624
library/virtualkeyboards/DORADOKEYBOARDS
Normal file
@@ -0,0 +1,624 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED " 6-Jul-2023 08:52:15" {WMEDLEY}<library>virtualkeyboards>DORADOKEYBOARDS.;4 33578
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS DORADOKEYBOARDSCOMS)
|
||||
|
||||
:PREVIOUS-DATE " 4-Jul-2023 23:15:23" {WMEDLEY}<library>virtualkeyboards>DORADOKEYBOARDS.;2)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT DORADOKEYBOARDSCOMS)
|
||||
|
||||
(RPAQQ DORADOKEYBOARDSCOMS ((ALISTS (VKBD.LOADED-KEYBOARDS DORADO))))
|
||||
|
||||
(ADDTOVAR VKBD.LOADED-KEYBOARDS
|
||||
(DORADO (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)))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL)))
|
||||
STOP
|
||||
631
library/virtualkeyboards/DOVEKEYBOARDS
Normal file
631
library/virtualkeyboards/DOVEKEYBOARDS
Normal file
@@ -0,0 +1,631 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED " 6-Jul-2023 08:52:04" {WMEDLEY}<library>virtualkeyboards>DOVEKEYBOARDS.;3 33268
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS DOVEKEYBOARDSCOMS)
|
||||
|
||||
:PREVIOUS-DATE " 4-Jul-2023 23:19:33" {WMEDLEY}<library>virtualkeyboards>DOVEKEYBOARDS.;2)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT DOVEKEYBOARDSCOMS)
|
||||
|
||||
(RPAQQ DOVEKEYBOARDSCOMS ((ALISTS (VKBD.LOADED-KEYBOARDS DOVE))))
|
||||
|
||||
(ADDTOVAR VKBD.LOADED-KEYBOARDS
|
||||
(DOVE (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)))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL)))
|
||||
STOP
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,13 +1,16 @@
|
||||
(DEFINE-FILE-INFO READTABLE "INTERLISP" PACKAGE "INTERLISP")
|
||||
(FILECREATED "25-May-95 14:32:35" {DSK}<project>medley2.0>library>KEYBOARDEDITOR.;4 51139
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
changes to%: (FNS EDITKEYBOARD VKBD.EDIT.CREATE-DISPLAY)
|
||||
(FILECREATED " 6-Jul-2023 16:23:12" {WMEDLEY}<library>KEYBOARDEDITOR.;3 50717
|
||||
|
||||
previous date%: "25-May-95 11:35:16" {DSK}<project>medley2.0>library>KEYBOARDEDITOR.;2)
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (FNS VKBD.EDIT.CREATE-CHARACTERS-MENU)
|
||||
|
||||
:PREVIOUS-DATE "25-May-95 14:32:35" {WMEDLEY}<library>KEYBOARDEDITOR.;1)
|
||||
|
||||
|
||||
(* ; "
|
||||
Copyright (c) 1985, 1987, 1990, 1995 by Venue & Xerox Corporation. All rights reserved.
|
||||
Copyright (c) 1985, 1987, 1990, 1995 by Venue & Xerox Corporation.
|
||||
")
|
||||
|
||||
(PRETTYCOMPRINT KEYBOARDEDITORCOMS)
|
||||
@@ -15,14 +18,14 @@ Copyright (c) 1985, 1987, 1990, 1995 by Venue & Xerox Corporation. All rights r
|
||||
(RPAQQ KEYBOARDEDITORCOMS
|
||||
((FILES VIRTUALKEYBOARDS)
|
||||
(COMS
|
||||
(* ;; "Editor for Configurations -- the description of the physical key layout, which keys are assignable, etc.")
|
||||
(* ;; "Editor for Configurations -- the description of the physical key layout, which keys are assignable, etc.")
|
||||
|
||||
(FNS EDITCONFIGURATION VKBD.CONF.CHANGE-KEY-VALUE VKBD.CONF.DISPLAY-FIELD-VALUE
|
||||
VKBD.CONF.DISPLAY-INFO-KEYBOARD VKBD.CONF.DISPLAY-KEY-INFO
|
||||
VKBD.CONF.EDIT-DEFAULT-ASSIGNMENTS VKBD.CONF.ICONFN VKBD.CONF.PARSE-CONFIGURATION)
|
||||
(BITMAPS VKBD.CONF.ICON))
|
||||
|
||||
(* ;; "EEditor for keyboard layouts per se:")
|
||||
(* ;; "EEditor for keyboard layouts per se:")
|
||||
|
||||
(FNS EDITKEYBOARD VKBD.EDIT.ADD-SUBITEM-TO-BACKGROUND-MENU VKBD.EDIT.CREATE-COMMAND-MENU
|
||||
VKBD.EDIT.CREATE-NON-CHAR-ASSIGMENTS-MENU VKBD.EDIT-KEYBOARD-COMMAND
|
||||
@@ -459,7 +462,8 @@ Copyright (c) 1985, 1987, 1990, 1995 by Venue & Xerox Corporation. All rights r
|
||||
ITEMWIDTH _ 29])
|
||||
|
||||
(VKBD.EDIT.CREATE-CHARACTERS-MENU
|
||||
[LAMBDA (CHAR-SET-NUMBER FONT) (* sm "15-Aug-85 12:15")
|
||||
[LAMBDA (CHAR-SET-NUMBER FONT) (* ; "Edited 6-Jul-2023 16:23 by rmk")
|
||||
(* sm "15-Aug-85 12:15")
|
||||
(PROG (EXISTING-MENU-INFO NEW-MENU)
|
||||
[SETQ EXISTING-MENU-INFO (for CHARSET-FONT-MENU in VKBD.EDIT.CASH-MENUES
|
||||
thereis (AND (EQP (CAR CHARSET-FONT-MENU)
|
||||
@@ -468,21 +472,17 @@ Copyright (c) 1985, 1987, 1990, 1995 by Venue & Xerox Corporation. All rights r
|
||||
FONT]
|
||||
(if EXISTING-MENU-INFO
|
||||
then (RETURN (CADDR EXISTING-MENU-INFO)))
|
||||
(PRINTOUT PROMPTWINDOW T "Wait. Bitmaps for character set " (OCTALSTRING CHAR-SET-NUMBER)
|
||||
" are being retrieved. ")
|
||||
(PRINTOUT PROMPTWINDOW T "Retrieving bitmaps for character set " (OCTALSTRING
|
||||
CHAR-SET-NUMBER))
|
||||
(SETQ NEW-MENU (create MENU
|
||||
ITEMS _ (for I from 0 to 255 bind CODE bind ROTATED-I
|
||||
collect (PROGN (SETQ ROTATED-I (SUB1 (
|
||||
VKBD.EDIT.ROTATED-NUMBER
|
||||
(ADD1 I)
|
||||
16 16)))
|
||||
(LIST (GETCHARBITMAP (SETQ CODE
|
||||
(VKBD.PARSE-CHAR-CODE
|
||||
(LIST
|
||||
CHAR-SET-NUMBER
|
||||
ROTATED-I)))
|
||||
FONT)
|
||||
CODE)))
|
||||
collect (SETQ ROTATED-I (SUB1 (VKBD.EDIT.ROTATED-NUMBER
|
||||
(ADD1 I)
|
||||
16 16)))
|
||||
(SETQ CODE (LOGOR (LLSH CHAR-SET-NUMBER 8)
|
||||
I))
|
||||
(LIST (GETCHARBITMAP CODE FONT)
|
||||
CODE))
|
||||
MENUCOLUMNS _ 16
|
||||
CENTERFLG _ T
|
||||
ITEMHEIGHT _ 25
|
||||
@@ -717,16 +717,16 @@ Copyright (c) 1985, 1987, 1990, 1995 by Venue & Xerox Corporation. All rights r
|
||||
("Accented Characters" 241)))
|
||||
|
||||
(RPAQQ VKBD.EDIT.MENU-ITEMS (("CharSet" VKBD.EDIT.SWITCH-CHAR-SET-COMMAND "Pops up a menu of all possible character set number. Selecting one will switch the displayed character set."
|
||||
)
|
||||
("Stop" VKBD.EDIT.STOP-COMMAND
|
||||
)
|
||||
("Stop" VKBD.EDIT.STOP-COMMAND
|
||||
"Exit from the keyboard editor. Returns the new keyboard, but does not modify the original one."
|
||||
)
|
||||
("Quit" VKBD.EDIT.QUIT-COMMAND
|
||||
)
|
||||
("Quit" VKBD.EDIT.QUIT-COMMAND
|
||||
"Exit from the keyboard editor. Modifies the roriginal keyboard and returns it ."
|
||||
)
|
||||
("Define" VKBD.EDIT.DEFINE-COMMAND
|
||||
)
|
||||
("Define" VKBD.EDIT.DEFINE-COMMAND
|
||||
"Adds the edited keyboard in its current state to the set of known keyboards."
|
||||
)))
|
||||
)))
|
||||
|
||||
(RPAQQ VKBD.EDIT.NON-CHAR-ASSIGNMENTS (SHIFT CTRL META LOCK LOCKDOWN LOCKUP EVENT))
|
||||
|
||||
@@ -744,27 +744,26 @@ Copyright (c) 1985, 1987, 1990, 1995 by Venue & Xerox Corporation. All rights r
|
||||
VKBD.EDIT.MASK)
|
||||
)
|
||||
|
||||
(VKBD.EDIT.ADD-SUBITEM-TO-BACKGROUND-MENU (LIST "Edit" '(ADD.PROCESS '(
|
||||
VKBD.EDIT-KEYBOARD-COMMAND
|
||||
T))
|
||||
"Calls the keyboard editor. Will prompt for name for the new keyboard, and will use the default keyboard as the initial keyboard"
|
||||
VKBD.EDIT.BACKGROUND-MENU-SUBITEMS)
|
||||
(VKBD.EDIT.ADD-SUBITEM-TO-BACKGROUND-MENU (LIST "Edit" '(ADD.PROCESS '(VKBD.EDIT-KEYBOARD-COMMAND
|
||||
T))
|
||||
"Calls the keyboard editor. Will prompt for name for the new keyboard, and will use the default keyboard as the initial keyboard"
|
||||
VKBD.EDIT.BACKGROUND-MENU-SUBITEMS)
|
||||
"Keyboard")
|
||||
(PUTPROPS KEYBOARDEDITOR COPYRIGHT ("Venue & Xerox Corporation" 1985 1987 1990 1995))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (3451 17311 (EDITCONFIGURATION 3461 . 3784) (VKBD.CONF.CHANGE-KEY-VALUE 3786 . 8411) (
|
||||
VKBD.CONF.DISPLAY-FIELD-VALUE 8413 . 10186) (VKBD.CONF.DISPLAY-INFO-KEYBOARD 10188 . 12135) (
|
||||
VKBD.CONF.DISPLAY-KEY-INFO 12137 . 12894) (VKBD.CONF.EDIT-DEFAULT-ASSIGNMENTS 12896 . 14277) (
|
||||
VKBD.CONF.ICONFN 14279 . 15020) (VKBD.CONF.PARSE-CONFIGURATION 15022 . 17309)) (19637 42746 (
|
||||
EDITKEYBOARD 19647 . 21947) (VKBD.EDIT.ADD-SUBITEM-TO-BACKGROUND-MENU 21949 . 22875) (
|
||||
VKBD.EDIT.CREATE-COMMAND-MENU 22877 . 23227) (VKBD.EDIT.CREATE-NON-CHAR-ASSIGMENTS-MENU 23229 . 23692)
|
||||
(VKBD.EDIT-KEYBOARD-COMMAND 23694 . 25067) (VKBD.EDIT.ASSIGN-CHARACTER 25069 . 27743) (
|
||||
VKBD.EDIT.ASSIGN-NON-CHARACTER 27745 . 28363) (VKBD.EDIT.CREATE-CHARACTER-SETS-MENU 28365 . 29404) (
|
||||
VKBD.EDIT.CREATE-CHARACTERS-MENU 29406 . 31987) (VKBD.EDIT.CREATE-DISPLAY 31989 . 35222) (
|
||||
VKBD.EDIT.DEFINE-COMMAND 35224 . 35626) (VKBD.EDIT.DO-MENU-COMMAND 35628 . 35838) (VKBD.EDIT.ICONFN
|
||||
35840 . 36489) (VKBD.EDIT.INVERT-IF-LOCKED 36491 . 36924) (VKBD.EDIT.KEYBOARD-REPAINTFN 36926 . 37496)
|
||||
(VKBD.EDIT.LARGE-WINDOW-REPAINTFN 37498 . 38093) (VKBD.EDIT.MAKE-CURRENT-KEY 38095 . 40147) (
|
||||
VKBD.EDIT.QUIT-COMMAND 40149 . 40502) (VKBD.EDIT.STOP-COMMAND 40504 . 40730) (
|
||||
VKBD.EDIT.SWITCH-CHAR-SET-COMMAND 40732 . 41658) (VKBD.EDIT.SWITCH-CHARACTER-SET 41660 . 42443) (
|
||||
VKBD.EDIT.ROTATED-NUMBER 42445 . 42744)))))
|
||||
(FILEMAP (NIL (3425 17285 (EDITCONFIGURATION 3435 . 3758) (VKBD.CONF.CHANGE-KEY-VALUE 3760 . 8385) (
|
||||
VKBD.CONF.DISPLAY-FIELD-VALUE 8387 . 10160) (VKBD.CONF.DISPLAY-INFO-KEYBOARD 10162 . 12109) (
|
||||
VKBD.CONF.DISPLAY-KEY-INFO 12111 . 12868) (VKBD.CONF.EDIT-DEFAULT-ASSIGNMENTS 12870 . 14251) (
|
||||
VKBD.CONF.ICONFN 14253 . 14994) (VKBD.CONF.PARSE-CONFIGURATION 14996 . 17283)) (19611 42442 (
|
||||
EDITKEYBOARD 19621 . 21921) (VKBD.EDIT.ADD-SUBITEM-TO-BACKGROUND-MENU 21923 . 22849) (
|
||||
VKBD.EDIT.CREATE-COMMAND-MENU 22851 . 23201) (VKBD.EDIT.CREATE-NON-CHAR-ASSIGMENTS-MENU 23203 . 23666)
|
||||
(VKBD.EDIT-KEYBOARD-COMMAND 23668 . 25041) (VKBD.EDIT.ASSIGN-CHARACTER 25043 . 27717) (
|
||||
VKBD.EDIT.ASSIGN-NON-CHARACTER 27719 . 28337) (VKBD.EDIT.CREATE-CHARACTER-SETS-MENU 28339 . 29378) (
|
||||
VKBD.EDIT.CREATE-CHARACTERS-MENU 29380 . 31683) (VKBD.EDIT.CREATE-DISPLAY 31685 . 34918) (
|
||||
VKBD.EDIT.DEFINE-COMMAND 34920 . 35322) (VKBD.EDIT.DO-MENU-COMMAND 35324 . 35534) (VKBD.EDIT.ICONFN
|
||||
35536 . 36185) (VKBD.EDIT.INVERT-IF-LOCKED 36187 . 36620) (VKBD.EDIT.KEYBOARD-REPAINTFN 36622 . 37192)
|
||||
(VKBD.EDIT.LARGE-WINDOW-REPAINTFN 37194 . 37789) (VKBD.EDIT.MAKE-CURRENT-KEY 37791 . 39843) (
|
||||
VKBD.EDIT.QUIT-COMMAND 39845 . 40198) (VKBD.EDIT.STOP-COMMAND 40200 . 40426) (
|
||||
VKBD.EDIT.SWITCH-CHAR-SET-COMMAND 40428 . 41354) (VKBD.EDIT.SWITCH-CHARACTER-SET 41356 . 42139) (
|
||||
VKBD.EDIT.ROTATED-NUMBER 42141 . 42440)))))
|
||||
STOP
|
||||
BIN
library/virtualkeyboards/KEYBOARDEDITOR.LCOM
Normal file
BIN
library/virtualkeyboards/KEYBOARDEDITOR.LCOM
Normal file
Binary file not shown.
@@ -1,17 +1,17 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "IL" READTABLE "XCL" BASE 10)
|
||||
(FILECREATED "22-Dec-2018 22:58:47"
|
||||
|{DSK}<Users>kaplan>Local>medley3.5>lispcore>library>VIRTUALKEYBOARDS.;10| 141793
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "XCL" BASE 10)
|
||||
|
||||
|changes| |to:| (VARS VIRTUALKEYBOARDSCOMS VKBD.BACKGROUND-MENU-SUBITEMS
|
||||
VKBD.NON-CHAR-ASSIGNMENTS-LABELS VKBD.WINDOW-MENU-SUBITEMS VKBD.ICON
|
||||
VKBD.MASK MODEACTIONS)
|
||||
(RECORDS KEYBOARDCONFIGURATION VIRTUALKEYBOARD)
|
||||
(FILECREATED " 6-Jul-2023 15:55:10" |{WMEDLEY}<library>VIRTUALKEYBOARDS>VIRTUALKEYBOARDS.;16| 140655
|
||||
|
||||
|previous| |date:| "22-Dec-2018 22:52:44"
|
||||
|{DSK}<Users>kaplan>Local>medley3.5>lispcore>library>VIRTUALKEYBOARDS.;9|)
|
||||
:EDIT-BY |rmk|
|
||||
|
||||
:CHANGES-TO (VARS VIRTUALKEYBOARDSCOMS)
|
||||
(FNS VKBD.INIT VKBD.LOAD-KEYBOARD-FILE METASHIFT)
|
||||
|
||||
:PREVIOUS-DATE "28-Jun-2023 11:52:23" |{WMEDLEY}<library>virtualkeyboards>VIRTUALKEYBOARDS.;9|
|
||||
)
|
||||
|
||||
|
||||
; Copyright (c) 1985, 1986, 1987, 1988, 1990, 1992, 1993, 1995, 1996, 2017, 2018 by Venue & Xerox Corporation. All rights reserved.
|
||||
; Copyright (c) 1985-1988, 1990, 1992-1993, 1995-1996, 2017-2018 by Venue & Xerox Corporation.
|
||||
|
||||
(PRETTYCOMPRINT VIRTUALKEYBOARDSCOMS)
|
||||
|
||||
@@ -50,7 +50,8 @@
|
||||
UNDERLINE NOTUNDERLINE SUBSCRIPT SUPERSCRIPT SMALLER LARGER MARGINS NOTMARGINS
|
||||
LOOKS NOTLOOKS F11 NOTF11 F12 NOTF12))
|
||||
(RECORDS KEYBOARDCONFIGURATION VIRTUALKEYBOARD)
|
||||
(INITVARS (VKBD.KNOWN-KEYBOARDS NIL))
|
||||
(INITVARS (VKBD.LOADED-KEYBOARDS NIL)
|
||||
(VKBD.KNOWN-KEYBOARDS NIL))
|
||||
(FILES (SOURCE)
|
||||
KEYBOARDCONFIGS)
|
||||
(VARS VKBD.BACKGROUND-MENU-SUBITEMS VKBD.NON-CHAR-ASSIGNMENTS-LABELS
|
||||
@@ -60,6 +61,7 @@
|
||||
VKBD.KNOWN-KEYBOARDS VKBD.NON-CHAR-ASSIGNMENTS-LABELS VKBD.ICON VKBD.MASK
|
||||
CURRENTKEYBOARDCONFIG VKBD.CONFIGURATIONS VKBD.COMMONCODELABELS VKBD.COMMONKEYLABELS
|
||||
VKBD.COMMONDEFAULTASSIGNMENT)
|
||||
(INITVARS (CURRENTKEYBOARDCONFIG NIL))
|
||||
(COMS (DECLARE\: FIRST (P (MOVD? '\\KEYBOARDEVENTFN '\\OLDKEYBOARDEVENTFN)))
|
||||
(INITVARS (\\ORIGINALDEFAULTKEYACTION))
|
||||
(FNS VKBD.\\KEYBOARDEVENTFN VKBD.RESETKEYACTIONTABLES)
|
||||
@@ -75,11 +77,12 @@
|
||||
'DEFAULT)))
|
||||
(FNS FIXKEYBOARD FIXKEYBOARDCONFIG FIXKEYASSIGNMENTS)
|
||||
(DECLARE\: DONTEVAL@LOAD DOCOPY (P (VKBD.INIT)))
|
||||
(COMS (FNS METASHIFT)
|
||||
(* \;
|
||||
"Call new definition if the old one had been called")
|
||||
(P (AND (MEMB (MACHINETYPE)
|
||||
'(MAIKO DORADO))
|
||||
(COMS (P (MOVD? 'METASHIFT 'OLDMETASHIFT))
|
||||
(FNS METASHIFT)
|
||||
(* \;
|
||||
"Call new definition if the old one had been called")
|
||||
(P (AND (MEMB (KEYBOARDTYPE)
|
||||
'(X DORADO))
|
||||
(EQUAL (KEYACTION 'BLANK-BOTTOM)
|
||||
'(METADOWN . METAUP))
|
||||
(METASHIFT T))))
|
||||
@@ -217,61 +220,34 @@
|
||||
'DEFAULT)))))))
|
||||
|
||||
(VKBD.CREATE-KEYACTION-TABLE
|
||||
|
||||
(LAMBDA (NEW-KEYBOARD OLDTABLE) (* \; "Edited 29-Feb-96 12:32 by rmk")
|
||||
|
||||
(LAMBDA (NEW-KEYBOARD OLDTABLE) (* \; "Edited 28-Jun-2023 11:52 by rmk")
|
||||
(* \; "Edited 29-Feb-96 12:32 by rmk")
|
||||
(PROG (KEYBOARDNAME FOUND KEYACTION-TABLE CONFIG)
|
||||
|
||||
(CL:UNLESS (COND
|
||||
|
||||
((AND (ATOM NEW-KEYBOARD)
|
||||
|
||||
(SETQ FOUND (FINDVIRTUALKEYBOARD NEW-KEYBOARD)))
|
||||
|
||||
(SETQ NEW-KEYBOARD FOUND))
|
||||
|
||||
((MEMB NEW-KEYBOARD VKBD.KNOWN-KEYBOARDS)))
|
||||
|
||||
|
||||
|
||||
(* |;;| "Use FOUND to preserve NEW-KEYBOARD for error")
|
||||
|
||||
|
||||
(* |;;| "Use FOUND to preserve NEW-KEYBOARD for error")
|
||||
|
||||
(ERROR "INVALID KEYBOARD" NEW-KEYBOARD))
|
||||
|
||||
(SETQ KEYBOARDNAME (FETCH (VIRTUALKEYBOARD KEYBOARDNAME) OF NEW-KEYBOARD))
|
||||
|
||||
(COND
|
||||
|
||||
(OLDTABLE (SETQ KEYACTION-TABLE (RESETKEYACTION OLDTABLE)))
|
||||
|
||||
((SETQ KEYACTION-TABLE (GETPROP KEYBOARDNAME 'KEYACTIONTABLE))
|
||||
|
||||
(RETURN KEYACTION-TABLE))
|
||||
|
||||
(T (SETQ KEYACTION-TABLE (KEYACTIONTABLE))))
|
||||
|
||||
(SETQ NEW-KEYBOARD (VKBD.COMPLETE-KEYBOARD NEW-KEYBOARD))
|
||||
|
||||
(SETQ CONFIG (VKBD.GET-CONFIGURATION (FETCH (VIRTUALKEYBOARD KEYBOARDCONFIGURATION)
|
||||
|
||||
OF NEW-KEYBOARD)))
|
||||
|
||||
(FOR KEY-ASSIGNMENT IN (FETCH (VIRTUALKEYBOARD COMPLETEKEYASSIGNMENTS)
|
||||
|
||||
OF NEW-KEYBOARD) DO (OLDKEYACTION (CAR
|
||||
|
||||
KEY-ASSIGNMENT
|
||||
|
||||
)
|
||||
|
||||
(CDR KEY-ASSIGNMENT)
|
||||
|
||||
KEYACTION-TABLE))
|
||||
|
||||
OF NEW-KEYBOARD)))
|
||||
(FOR KEY-ASSIGNMENT IN (FETCH (VIRTUALKEYBOARD COMPLETEKEYASSIGNMENTS) OF NEW-KEYBOARD)
|
||||
DO (CL:UNLESS (MEMB (CAR KEY-ASSIGNMENT)
|
||||
'(31 86))
|
||||
(OLDKEYACTION (CAR KEY-ASSIGNMENT)
|
||||
(CDR KEY-ASSIGNMENT)
|
||||
KEYACTION-TABLE)))
|
||||
(PUTPROP KEYBOARDNAME 'KEYACTIONTABLE KEYACTION-TABLE)
|
||||
|
||||
(RETURN KEYACTION-TABLE))))
|
||||
|
||||
(vkbd.windowmenufn
|
||||
@@ -414,7 +390,9 @@
|
||||
(setq |BackgroundMenu| nil)))
|
||||
|
||||
(VKBD.INIT
|
||||
(LAMBDA NIL (* \; "Edited 14-Jun-2017 14:22 by kaplan")
|
||||
(LAMBDA NIL (* \; "Edited 6-Jul-2023 15:14 by rmk")
|
||||
(* \; "Edited 28-Jun-2023 10:40 by rmk")
|
||||
(* \; "Edited 14-Jun-2017 14:22 by kaplan")
|
||||
(* \; "Edited 16-Jun-92 11:14 by kaplan")
|
||||
|
||||
(* |;;| "Reads virtual keyboard file for current type (or default type), if it can be found. Keyboards that don't match current keyboard can be displayed but not installed (via PROCESS.KEYBOARD)")
|
||||
@@ -423,35 +401,22 @@
|
||||
(SETQ \\ORIGINALDEFAULTKEYACTION (KEYACTIONTABLE \\DEFAULTKEYACTION)))
|
||||
(SETQ VKBD.COMMONCODELABELS (FOR X IN VKBD.COMMONCHARLABELS
|
||||
COLLECT (IF (LISTP X)
|
||||
THEN (IF (SMALLP (CAR X))
|
||||
THEN X
|
||||
ELSE (LIST (CHARCODE.DECODE
|
||||
(CAR X))
|
||||
(CADR X)))
|
||||
ELSE (LIST (CHARCODE.DECODE X)
|
||||
X))))
|
||||
THEN (IF (SMALLP (CAR X))
|
||||
THEN X
|
||||
ELSE (LIST (CHARCODE.DECODE (CAR X))
|
||||
(CADR X)))
|
||||
ELSE (LIST (CHARCODE.DECODE X)
|
||||
X))))
|
||||
(VKBD.ADD-ITEM-TO-BACKGROUND-MENU "Keyboard" ''(SWITCHKEYBOARDS T NIL)
|
||||
"Displays a menu for switching keyboards" VKBD.BACKGROUND-MENU-SUBITEMS)
|
||||
(VKBD.WINDOWMENUINIT)
|
||||
(LET (FILE (KT (KEYBOARDTYPE)))
|
||||
(LET ((KT (KEYBOARDTYPE)))
|
||||
(SETQ CURRENTKEYBOARDCONFIG (VKBD.GET-CONFIGURATION KT))
|
||||
(COND
|
||||
((SETQ FILE (COND
|
||||
((AND KT (FINDFILE (PACK* KT "KEYBOARDS")
|
||||
T)))
|
||||
(T (FINDFILE (PACK* DEFAULTVIRTUALKEYBOARDTYPE "KEYBOARDS")
|
||||
T))))
|
||||
(VKBD.LOAD-KEYBOARD-FILE FILE)
|
||||
(CL:WHEN (VKBD.LOAD-KEYBOARD-FILE KT)
|
||||
|
||||
(* |;;| "Loading a keyboard file may change our notion of KEYBOARDTYPE, because of new coercion paths. The default keyboard will be added for the new type")
|
||||
|
||||
(VKBD.ADD-DEFAULT-KEYBOARD))
|
||||
(T
|
||||
(* |;;| "Special printing here to avoid file-not-found error in case where user calls VKBD.LOAD-KEYBOARD-FILE directly")
|
||||
|
||||
(PROMPTPRINT "Note: virtual keyboard file for type " (OR (KEYBOARDTYPE)
|
||||
DEFAULTVIRTUALKEYBOARDTYPE)
|
||||
" keyboards not found"))))))
|
||||
(VKBD.ADD-DEFAULT-KEYBOARD)))))
|
||||
|
||||
(VKBD.CREATE-DEFAULT-KEYBOARD
|
||||
|
||||
@@ -474,9 +439,10 @@
|
||||
OF CONFIGURATION)))))
|
||||
|
||||
(VKBD.ADD-DEFAULT-KEYBOARD
|
||||
(LAMBDA (KEYBOARDTYPE) (* \; "Edited 23-May-95 17:04 by rmk:")
|
||||
(LAMBDA (KEYBOARDTYPE) (* \; "Edited 28-Jun-2023 10:45 by rmk")
|
||||
(* \; "Edited 23-May-95 17:04 by rmk:")
|
||||
|
||||
(* |;;;| "It is useful practice to be able to switch back to the original key assignments. Thus the program is adding one special keyboard with the name DEFAULT which is the current keyboardtype's default keyboard.")
|
||||
(* |;;;| "It is useful practice to be able to switch back to the original key assignments. Thus the program is adding one special keyboard with the name DEFAULT which is the current keyboardtype's default keyboard.")
|
||||
|
||||
(SETQ KEYBOARDTYPE (OR KEYBOARDTYPE (KEYBOARDTYPE)))
|
||||
(BIND DEFAULT WHILE (SETQ DEFAULT (FINDVIRTUALKEYBOARD 'DEFAULT KEYBOARDTYPE))
|
||||
@@ -504,114 +470,55 @@
|
||||
THEN (VKBD.LOAD-KEYBOARD-FILE F REDEFINE? DELETE-FIRST? T)))))
|
||||
|
||||
(VKBD.LOAD-KEYBOARD-FILE
|
||||
(LAMBDA (KEYBOARDTYPE REDEFINE? DELETE-CURRENT-DEFINITIONS?)
|
||||
(* \; "Edited 6-Jul-2023 15:11 by rmk")
|
||||
(* \; "Edited 4-Jul-2023 23:22 by rmk")
|
||||
(CL:UNLESS KEYBOARDTYPE (SETQ KEYBOARDTYPE DEFAULTVIRTUALKEYBOARDTYPE))
|
||||
|
||||
(LAMBDA (FILENAME REDEFINE? DELETE-CURRENT-DEFINITIONS? PROMPTPRINT)
|
||||
(* |;;| "Returns T if keyboards of type KEYBOARDTYPE found. Prints prompt warning and returns NIL if not found.")
|
||||
|
||||
(* \; "Edited 4-Mar-96 10:53 by rmk")
|
||||
(* |;;| "Note: Can't switch to READFILE, since it uses OLD-INTERLISP readtable which doesn't honor vertical bars around numeric atoms.")
|
||||
|
||||
(LET (FILE (VKBDDIRS (CONS (MEDLEYDIR "library/virtualkeyboards/")
|
||||
LISPUSERSDIRECTORIES))
|
||||
(NEWKEYBOARDS (CDR (ASSOC KEYBOARDTYPE VKBD.LOADED-KEYBOARDS))))
|
||||
(CL:UNLESS NEWKEYBOARDS
|
||||
|
||||
(* |;;| "If keyboards of type KEYBOARDTYPE have not previously been loaded, we look for a file <KEYBOARDTYPE>KEYBOARDS (e.g. XKEYBOARDS, SDLKEYBOARDS), defaulting to the directory that VIRTUALKEYBOARDS is coming from. It is assumed that that file will add the desired keyboards to VKBD.LOADED-KEYBOARDS,")
|
||||
|
||||
(* |;;| "Note: Can't switch to READFILE, since it uses OLD-INTERLISP readtable which doesn't honor vertical bars around numeric atoms.")
|
||||
(CL:WHEN (SETQ FILE (FINDFILE (PACK* KEYBOARDTYPE "KEYBOARDS")
|
||||
T VKBDDIRS))
|
||||
(LOAD FILE T)
|
||||
(SETQ NEWKEYBOARDS (CDR (ASSOC KEYBOARDTYPE VKBD.LOADED-KEYBOARDS)))))
|
||||
(|if| NEWKEYBOARDS
|
||||
|then| (COND
|
||||
(DELETE-CURRENT-DEFINITIONS? (SETQ VKBD.KNOWN-KEYBOARDS NEWKEYBOARDS)
|
||||
(VKBD.ADD-DEFAULT-KEYBOARD))
|
||||
(T (FOR NEWKEYBOARD KN KC IN NEWKEYBOARDS
|
||||
DO
|
||||
(* |;;|
|
||||
"To make sure that COMPLETEDASSIGNMENTS cell (or any other new cells) exist--backward compatibility")
|
||||
|
||||
(SETQ NEWKEYBOARD (CREATE VIRTUALKEYBOARD USING NEWKEYBOARD))
|
||||
(SETQ KN (FETCH KEYBOARDNAME OF NEWKEYBOARD))
|
||||
(SETQ KC (FETCH KEYBOARDCONFIGURATION OF NEWKEYBOARD))
|
||||
(FOR TAIL OLDKEYBOARD ON VKBD.KNOWN-KEYBOARDS
|
||||
WHEN (AND (EQ KN (FETCH KEYBOARDNAME OF (SETQ OLDKEYBOARD
|
||||
(CAR TAIL))))
|
||||
(EQ KC (FETCH KEYBOARDCONFIGURATION OF OLDKEYBOARD)))
|
||||
DO
|
||||
|
||||
(* |;;| "If REDEFINE?, then replace one with same name and configuration. Otherwise, keep the old one instead of installing the new one.")
|
||||
|
||||
(LET ((NEWKEYBOARDS (CL:WITH-OPEN-FILE (STREAM FILENAME :DIRECTION :INPUT)
|
||||
|
||||
(BIND KB DATE (*PACKAGE* _ *INTERLISP-PACKAGE*)
|
||||
|
||||
(RDTBL _ (FIND-READTABLE "INTERLISP"))
|
||||
|
||||
FIRST (SETQ DATE (READ STREAM RDTBL))
|
||||
|
||||
(CL:UNLESS (LISTP DATE)
|
||||
|
||||
(CL:WHEN (STRINGP DATE)
|
||||
|
||||
(SETQ DATE (CONCAT "Keyboards from " (FULLNAME STREAM
|
||||
|
||||
)
|
||||
|
||||
" [" DATE "]"))
|
||||
|
||||
(IF PROMPTPRINT
|
||||
|
||||
THEN (PROMPTPRINT DATE)
|
||||
|
||||
ELSE (PRINTOUT T DATE T)))
|
||||
|
||||
(SETQ DATE NIL)) WHILE (SKIPSEPRCODES STREAM RDTBL)
|
||||
|
||||
UNTIL (EQ 'STOP (SETQ KB (READ STREAM RDTBL))) COLLECT
|
||||
|
||||
KB
|
||||
|
||||
FINALLY (CL:WHEN DATE
|
||||
|
||||
|
||||
|
||||
(* |;;|
|
||||
|
||||
"Was a LISTP date, must have been a keyboard")
|
||||
|
||||
|
||||
|
||||
(PUSH DATE $$VAL))))))
|
||||
|
||||
(COND
|
||||
|
||||
(DELETE-CURRENT-DEFINITIONS? (SETQ VKBD.KNOWN-KEYBOARDS NEWKEYBOARDS)
|
||||
|
||||
(VKBD.ADD-DEFAULT-KEYBOARD))
|
||||
|
||||
(T (FOR NEWKEYBOARD KN KC IN NEWKEYBOARDS
|
||||
|
||||
DO
|
||||
|
||||
|
||||
|
||||
(* |;;|
|
||||
|
||||
"To make sure that COMPLETEDASSIGNMENTS cell (or any other new cells) exist--backward compatibility")
|
||||
|
||||
|
||||
|
||||
(SETQ NEWKEYBOARD (CREATE VIRTUALKEYBOARD USING NEWKEYBOARD))
|
||||
|
||||
(SETQ KN (FETCH KEYBOARDNAME OF NEWKEYBOARD))
|
||||
|
||||
(SETQ KC (FETCH KEYBOARDCONFIGURATION OF NEWKEYBOARD))
|
||||
|
||||
(FOR TAIL OLDKEYBOARD ON VKBD.KNOWN-KEYBOARDS
|
||||
|
||||
WHEN (AND (EQ KN (FETCH KEYBOARDNAME OF (SETQ OLDKEYBOARD
|
||||
|
||||
(CAR TAIL))))
|
||||
|
||||
(EQ KC (FETCH KEYBOARDCONFIGURATION OF OLDKEYBOARD))
|
||||
|
||||
) DO
|
||||
|
||||
|
||||
|
||||
(* |;;| "If REDEFINE?, then replace one with same name and configuration. Otherwise, keep the old one instead of installing the new one.")
|
||||
|
||||
|
||||
|
||||
(COND
|
||||
|
||||
(REDEFINE? (RPLACA TAIL NEWKEYBOARD))
|
||||
|
||||
(T (RETURN))) FINALLY (SETQ
|
||||
|
||||
VKBD.KNOWN-KEYBOARDS
|
||||
|
||||
(NCONC1
|
||||
|
||||
VKBD.KNOWN-KEYBOARDS
|
||||
|
||||
NEWKEYBOARD))))
|
||||
|
||||
)))))
|
||||
(COND
|
||||
(REDEFINE? (RPLACA TAIL NEWKEYBOARD))
|
||||
(T (RETURN))) FINALLY (SETQ VKBD.KNOWN-KEYBOARDS
|
||||
(NCONC1 VKBD.KNOWN-KEYBOARDS
|
||||
NEWKEYBOARD))))))
|
||||
T
|
||||
|else| (PROMPTPRINT "Note: Can't find virtual keyboard file for " KEYBOARDTYPE
|
||||
" keyboards")
|
||||
NIL))))
|
||||
|
||||
(vkbd.store-file-command
|
||||
(lambda (f) (* \; "Edited 15-Dec-87 16:31 by Snow")
|
||||
@@ -2412,29 +2319,29 @@
|
||||
(NOTF12 621))
|
||||
(DECLARE\: EVAL@COMPILE
|
||||
|
||||
(RECORD KEYBOARDCONFIGURATION (CONFIGURATIONNAME KBCDUMMY1 KEYREGIONS KBCDUMMY2 DEFAULTASSIGNMENT
|
||||
KEYNAMESMAPPING KEYBOARDTYPE KEYLABELS KEYLABELSFONT
|
||||
BACKGROUNDSHADE KEYBOARDDISPLAYFONT CHARLABELS)
|
||||
(RECORD KEYBOARDCONFIGURATION (CONFIGURATIONNAME KBCDUMMY1 KEYREGIONS KBCDUMMY2 DEFAULTASSIGNMENT
|
||||
KEYNAMESMAPPING KEYBOARDTYPE KEYLABELS KEYLABELSFONT
|
||||
BACKGROUNDSHADE KEYBOARDDISPLAYFONT CHARLABELS)
|
||||
|
||||
(* |;;| "Dummy fields so length test still works")
|
||||
(* |;;| "Dummy fields so length test still works")
|
||||
|
||||
(TYPE? (EQLENGTH DATUM (CONSTANT (LENGTH (RECORDFIELDNAMES
|
||||
|
||||
'
|
||||
KEYBOARDCONFIGURATION
|
||||
)))))
|
||||
KEYBOARDTYPE _ (KEYBOARDTYPE)
|
||||
KEYLABELSFONT _ DEFAULTKEYBOARDLABELSFONT BACKGROUNDSHADE _ 23130
|
||||
KEYBOARDDISPLAYFONT _ DEFAULTKEYBOARDDISPLAYFONT)
|
||||
(TYPE? (EQLENGTH DATUM (CONSTANT (LENGTH (RECORDFIELDNAMES
|
||||
'KEYBOARDCONFIGURATION)
|
||||
))))
|
||||
KEYBOARDTYPE _ (KEYBOARDTYPE)
|
||||
KEYLABELSFONT _ DEFAULTKEYBOARDLABELSFONT BACKGROUNDSHADE _ 23130
|
||||
KEYBOARDDISPLAYFONT _ DEFAULTKEYBOARDDISPLAYFONT)
|
||||
|
||||
(RECORD VIRTUALKEYBOARD (KEYBOARDNAME KEYASSIGNMENTS KEYBOARDCONFIGURATION KEYBOARDDISPLAYFONT)
|
||||
(HASHLINK VIRTUALKEYBOARD (COMPLETEKEYASSIGNMENTS VKBDHASHARRAY 20)))
|
||||
(HASHLINK VIRTUALKEYBOARD (COMPLETEKEYASSIGNMENTS VKBDHASHARRAY 20)))
|
||||
)
|
||||
|
||||
(DECLARE\: EVAL@COMPILE (GLOBALVARS VKBDHASHARRAY))
|
||||
|
||||
(SETUPHASHARRAY 'VKBDHASHARRAY 20)
|
||||
|
||||
(RPAQ? VKBD.LOADED-KEYBOARDS NIL)
|
||||
|
||||
(RPAQ? VKBD.KNOWN-KEYBOARDS NIL)
|
||||
|
||||
(FILESLOAD (SOURCE)
|
||||
@@ -2485,11 +2392,11 @@
|
||||
)))))
|
||||
|
||||
(RPAQQ VKBD.NON-CHAR-ASSIGNMENTS-LABELS ((SHIFT SHIFT)
|
||||
(CTRL CTRL)
|
||||
(META META)
|
||||
(LOCK LOCK)
|
||||
(LOCKUP LOCKUP)
|
||||
(LOCKDOWN LOCKDOWN)))
|
||||
(CTRL CTRL)
|
||||
(META META)
|
||||
(LOCK LOCK)
|
||||
(LOCKUP LOCKUP)
|
||||
(LOCKDOWN LOCKDOWN)))
|
||||
|
||||
(RPAQQ VKBD.WINDOW-MENU-SUBITEMS
|
||||
(SUBITEMS ("Switch keyboard" (FUNCTION (LAMBDA (W)
|
||||
@@ -2549,6 +2456,8 @@
|
||||
VKBD.NON-CHAR-ASSIGNMENTS-LABELS VKBD.ICON VKBD.MASK CURRENTKEYBOARDCONFIG VKBD.CONFIGURATIONS
|
||||
VKBD.COMMONCODELABELS VKBD.COMMONKEYLABELS VKBD.COMMONDEFAULTASSIGNMENT)
|
||||
)
|
||||
|
||||
(RPAQ? CURRENTKEYBOARDCONFIG NIL)
|
||||
(DECLARE\: FIRST
|
||||
|
||||
(MOVD? '\\KEYBOARDEVENTFN '\\OLDKEYBOARDEVENTFN)
|
||||
@@ -2858,18 +2767,18 @@
|
||||
|
||||
(RPAQ? MODEKEYS )
|
||||
|
||||
(RPAQQ MODEACTIONS (EVENT CTRLUP CTRLDOWN 1SHIFTUP 1SHIFTDOWN 2SHIFTUP 2SHIFTDOWN LOCKUP LOCKDOWN
|
||||
LOCKTOGGLE METAUP METADOWN FONTUP FONTDOWN FONTTOGGLE USERMODE1UP
|
||||
USERMODE1DOWN USERMODE1TOGGLE USERMODE2UP USERMODE2DOWN USERMODE2TOGGLE
|
||||
USERMODE3UP USERMODE3DOWN USERMODE3TOGGLE))
|
||||
(RPAQQ MODEACTIONS (EVENT CTRLUP CTRLDOWN 1SHIFTUP 1SHIFTDOWN 2SHIFTUP 2SHIFTDOWN LOCKUP LOCKDOWN
|
||||
LOCKTOGGLE METAUP METADOWN FONTUP FONTDOWN FONTTOGGLE USERMODE1UP
|
||||
USERMODE1DOWN USERMODE1TOGGLE USERMODE2UP USERMODE2DOWN USERMODE2TOGGLE
|
||||
USERMODE3UP USERMODE3DOWN USERMODE3TOGGLE))
|
||||
(DECLARE\: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS MODEKEYS MODEACTIONS)
|
||||
)
|
||||
|
||||
(ADDTOVAR BREAKRESETFORMS ((LAMBDA (K)
|
||||
(PROCESS.KEYBOARD NIL K))
|
||||
'DEFAULT))
|
||||
(PROCESS.KEYBOARD NIL K))
|
||||
'DEFAULT))
|
||||
(DEFINEQ
|
||||
|
||||
(FIXKEYBOARD
|
||||
@@ -3390,12 +3299,15 @@
|
||||
|
||||
(VKBD.INIT)
|
||||
)
|
||||
|
||||
(MOVD? 'METASHIFT 'OLDMETASHIFT)
|
||||
(DEFINEQ
|
||||
|
||||
(METASHIFT
|
||||
(LAMBDA FLG (* \; "Edited 16-Jun-92 08:44 by rmk:")
|
||||
(LAMBDA FLG (* \; "Edited 6-Jul-2023 09:21 by rmk")
|
||||
(* \; "Edited 16-Jun-92 08:44 by rmk:")
|
||||
|
||||
(* |;;| "Sets interpretation of swat key to first arg, where T means meta-shift, NIL means original setting. Returns previous setting. This differs from LLKEY version in that it changes the \\DORADOKEYACTIONS and \\DEFAULTKEYACTION table to insure that the metashift remains in effect across keyboard switches.")
|
||||
(* |;;| "Sets interpretation of swat key to first arg, where T means meta-shift, NIL means original setting. Returns previous setting. This differs from LLKEY version in that it changes the \\DORADOKEYACTIONS and \\DEFAULTKEYACTION table to insure that the metashift remains in effect across keyboard switches.")
|
||||
|
||||
(PROG* ((METASTATUS '(METADOWN . METAUP))
|
||||
(ARGUMENT (AND (IGREATERP FLG 0)
|
||||
@@ -3408,19 +3320,19 @@
|
||||
OLDSETTING)
|
||||
(SETQ OLDSETTING (KEYACTION 'BLANK-BOTTOM ARGUMENT))
|
||||
|
||||
(* |;;|
|
||||
"Update \\doradokeyactions table so we don't lose the change when we repalce the keyaction table.")
|
||||
(* |;;|
|
||||
"Update \\doradokeyactions table so we don't lose the change when we repalce the keyaction table.")
|
||||
|
||||
(AND (EQ (MACHINETYPE)
|
||||
'DORADO)
|
||||
(COND
|
||||
(ARGUMENT (PUTASSOC 'BLANK-BOTTOM ARGUMENT \\DORADOKEYACTIONS)
|
||||
(KEYACTION 'BLANK-BOTTOM ARGUMENT \\DEFAULTKEYACTION))
|
||||
(T (SETQ \\DORADOKEYACTIONS (|for| X |in| \\DORADOKEYACTIONS
|
||||
|join| (AND (NEQ (CAR X)
|
||||
'BLANK-BOTTOM)
|
||||
(LIST X))))
|
||||
(KEYACTION 'BLANK-BOTTOM NIL \\DEFAULTKEYACTION))))
|
||||
(CL:WHEN (EQ (KEYBOARDTYPE)
|
||||
'DORADO)
|
||||
(COND
|
||||
(ARGUMENT (PUTASSOC 'BLANK-BOTTOM ARGUMENT \\DORADOKEYACTIONS)
|
||||
(KEYACTION 'BLANK-BOTTOM ARGUMENT \\DEFAULTKEYACTION))
|
||||
(T (SETQ \\DORADOKEYACTIONS (|for| X |in| \\DORADOKEYACTIONS
|
||||
|join| (AND (NEQ (CAR X)
|
||||
'BLANK-BOTTOM)
|
||||
(LIST X))))
|
||||
(KEYACTION 'BLANK-BOTTOM NIL \\DEFAULTKEYACTION))))
|
||||
(RETURN (COND
|
||||
((EQUAL OLDSETTING METASTATUS)
|
||||
T)
|
||||
@@ -3432,8 +3344,8 @@
|
||||
(* \; "Call new definition if the old one had been called")
|
||||
|
||||
|
||||
(AND (MEMB (MACHINETYPE)
|
||||
'(MAIKO DORADO))
|
||||
(AND (MEMB (KEYBOARDTYPE)
|
||||
'(X DORADO))
|
||||
(EQUAL (KEYACTION 'BLANK-BOTTOM)
|
||||
'(METADOWN . METAUP))
|
||||
(METASHIFT T))
|
||||
@@ -3450,38 +3362,38 @@
|
||||
(PUTPROPS VIRTUALKEYBOARDS COPYRIGHT ("Venue & Xerox Corporation" 1985 1986 1987 1988 1990 1992 1993
|
||||
1995 1996 2017 2018))
|
||||
(DECLARE\: DONTCOPY
|
||||
(FILEMAP (NIL (5486 14142 (FINDVIRTUALKEYBOARD 5496 . 8650) (PROCESS.KEYBOARD 8652 . 11328) (
|
||||
VKBD.CREATE-KEYACTION-TABLE 11330 . 13246) (VKBD.WINDOWMENUFN 13248 . 13515) (VKBD.WINDOWMENUINIT
|
||||
13517 . 14140)) (14143 19504 (LOADKEYBOARDDISPLAYFONTS 14153 . 19502)) (19613 20837 (DEFINEKEYBOARD
|
||||
19623 . 20835)) (20838 25256 (VKBD.ADD-ITEM-TO-BACKGROUND-MENU 20848 . 21256) (VKBD.INIT 21258 . 23796
|
||||
) (VKBD.CREATE-DEFAULT-KEYBOARD 23798 . 24390) (VKBD.ADD-DEFAULT-KEYBOARD 24392 . 25254)) (25257 31597
|
||||
(VKBD.LOAD-FILE-COMMAND 25267 . 25721) (VKBD.LOAD-KEYBOARD-FILE 25723 . 29558) (
|
||||
VKBD.STORE-FILE-COMMAND 29560 . 29901) (VKBD.STORE-KEYBOARD-FILE 29903 . 31595)) (31598 40899 (
|
||||
SWITCHKEYBOARDS 31608 . 33086) (VKBD.POP-MENU-AND-SWITCH-KEYBOARDS 33088 . 33458) (
|
||||
VKBD.POP-UP-KEYBOARDS-MENU 33460 . 34842) (VKBD.GET-CONFIGURATION 34844 . 35762) (
|
||||
VKBD.SUBCONFIGURATION 35764 . 40897)) (40900 81185 (VKBD.BUTTONEVENTFN 40910 . 43817) (
|
||||
VKBD.CENTER-BITMAP-IN-REGION 43819 . 45343) (VKBD.CLEAR-KEY-DISPLAY 45345 . 47476) (
|
||||
VKBD.CREATE-KEYBOARD-BITMAP 47478 . 49522) (VKBD.CREATE-KEYBOARD-DISPLAY 49524 . 52653) (
|
||||
VKBD.CURSORMOVEDFN 52655 . 54559) (VKBD.DISPLAY-CHARACTER 54561 . 56519) (VKBD.DISPLAY-EMPTY-KEY-CAP
|
||||
56521 . 67059) (VKBD.DISPLAY-KEY 67061 . 70268) (VKBD.DISPLAY-KEY-CHARACTERS 70270 . 71463) (
|
||||
VKBD.DRAW-KEY-CAPS 71465 . 73653) (VKBD.ERASE-FRAME 73655 . 73978) (VKBD.EXTEND-REGION 73980 . 74569)
|
||||
(VKBD.GET-KEY-AND-REGIONS-OF-CURSOR-POSITION 74571 . 75186) (VKBD.GET-KEY-REGIONS 75188 . 75444) (
|
||||
VKBD.INVERT-KEY 75446 . 75736) (VKBD.INVERT-REGION 75738 . 76429) (VKBD.KEYBOARD-WINDOW-REPAINTFN
|
||||
76431 . 78388) (VKBD.LOWER-HALF-REGION 78390 . 78790) (VKBD.POSITION-IS-IN-KEY-REGION 78792 . 79076) (
|
||||
VKBD.REMOVE-KEYBOARD-COMMAND 79078 . 79535) (VKBD.UNION-REGIONS 79537 . 80682) (VKBD.UPPER-HALF-REGION
|
||||
80684 . 81183)) (81186 100744 (VKBD.KEY-ASSOC 81196 . 81696) (VKBD.CHAR-ASSIGNMENTP 81698 . 81862) (
|
||||
VKBD.COMPLETE-KEYBOARD 81864 . 84523) (VKBD.CTRL-ASSIGNMENTP 84525 . 84768) (VKBD.EVENT-ASSIGNMENTP
|
||||
84770 . 85010) (VKBD.META-ASSIGNMENTP 85012 . 85255) (VKBD.FRAME-KEY 85257 . 87134) (
|
||||
VKBD.GET-CURRENT-KEY-ASSIGNMENT 87136 . 87505) (VKBD.GET-NON-CHAR-LABEL 87507 . 88162) (VKBD.ICONFN
|
||||
88164 . 88900) (VKBD.INVERT-LOCK-KEYS 88902 . 89580) (VKBD.INVERT-SHIFT-KEYS 89582 . 90264) (
|
||||
VKBD.TRANSLATE-KEY-ID 90266 . 90945) (VKBD.KEY-ID-TO-KEY-NAMES 90947 . 91433) (
|
||||
VKBD.KEYBOARD-IS-KEYBOARDTYPE-KEYBOARD 91435 . 92033) (VKBD.LOCK-ASSIGNMENTP 92035 . 92482) (
|
||||
VKBD.LOCK-KEYP 92484 . 92802) (VKBD.LOCK/NOLOCK 92804 . 92963) (VKBD.LOCKDOWN-ASSIGNMENTP 92965 .
|
||||
93259) (VKBD.LOCKUP-ASSIGNMENTP 93261 . 93551) (VKBD.PARSE-CHAR-CODE 93553 . 94052) (
|
||||
VKBD.PARSE-KEY-ASSIGNMENT 94054 . 97510) (VKBD.RESET-KEYBOARD-WINDOW 97512 . 98105) (
|
||||
VKBD.SEND-CHARACTER 98107 . 99616) (VKBD.SHIFT-ASSIGNMENTP 99618 . 100012) (VKBD.SHIFTED-CHAR 100014
|
||||
. 100172) (VKBD.UNDEFINE-KEYBOARD 100174 . 100581) (VKBD.UNSHIFTED-CHAR 100583 . 100742)) (113812
|
||||
116258 (VKBD.\\KEYBOARDEVENTFN 113822 . 115025) (VKBD.RESETKEYACTIONTABLES 115027 . 116256)) (116364
|
||||
122515 (NEWKEYACTION 116374 . 122513)) (123170 139358 (FIXKEYBOARD 123180 . 124300) (FIXKEYBOARDCONFIG
|
||||
124302 . 131526) (FIXKEYASSIGNMENTS 131528 . 139356)) (139411 141267 (METASHIFT 139421 . 141265)))))
|
||||
(FILEMAP (NIL (5390 13914 (FINDVIRTUALKEYBOARD 5400 . 8554) (PROCESS.KEYBOARD 8556 . 11232) (
|
||||
VKBD.CREATE-KEYACTION-TABLE 11234 . 13018) (VKBD.WINDOWMENUFN 13020 . 13287) (VKBD.WINDOWMENUINIT
|
||||
13289 . 13912)) (13915 19276 (LOADKEYBOARDDISPLAYFONTS 13925 . 19274)) (19385 20609 (DEFINEKEYBOARD
|
||||
19395 . 20607)) (20610 24555 (VKBD.ADD-ITEM-TO-BACKGROUND-MENU 20620 . 21028) (VKBD.INIT 21030 . 22982
|
||||
) (VKBD.CREATE-DEFAULT-KEYBOARD 22984 . 23576) (VKBD.ADD-DEFAULT-KEYBOARD 23578 . 24553)) (24556 30484
|
||||
(VKBD.LOAD-FILE-COMMAND 24566 . 25020) (VKBD.LOAD-KEYBOARD-FILE 25022 . 28445) (
|
||||
VKBD.STORE-FILE-COMMAND 28447 . 28788) (VKBD.STORE-KEYBOARD-FILE 28790 . 30482)) (30485 39786 (
|
||||
SWITCHKEYBOARDS 30495 . 31973) (VKBD.POP-MENU-AND-SWITCH-KEYBOARDS 31975 . 32345) (
|
||||
VKBD.POP-UP-KEYBOARDS-MENU 32347 . 33729) (VKBD.GET-CONFIGURATION 33731 . 34649) (
|
||||
VKBD.SUBCONFIGURATION 34651 . 39784)) (39787 80072 (VKBD.BUTTONEVENTFN 39797 . 42704) (
|
||||
VKBD.CENTER-BITMAP-IN-REGION 42706 . 44230) (VKBD.CLEAR-KEY-DISPLAY 44232 . 46363) (
|
||||
VKBD.CREATE-KEYBOARD-BITMAP 46365 . 48409) (VKBD.CREATE-KEYBOARD-DISPLAY 48411 . 51540) (
|
||||
VKBD.CURSORMOVEDFN 51542 . 53446) (VKBD.DISPLAY-CHARACTER 53448 . 55406) (VKBD.DISPLAY-EMPTY-KEY-CAP
|
||||
55408 . 65946) (VKBD.DISPLAY-KEY 65948 . 69155) (VKBD.DISPLAY-KEY-CHARACTERS 69157 . 70350) (
|
||||
VKBD.DRAW-KEY-CAPS 70352 . 72540) (VKBD.ERASE-FRAME 72542 . 72865) (VKBD.EXTEND-REGION 72867 . 73456)
|
||||
(VKBD.GET-KEY-AND-REGIONS-OF-CURSOR-POSITION 73458 . 74073) (VKBD.GET-KEY-REGIONS 74075 . 74331) (
|
||||
VKBD.INVERT-KEY 74333 . 74623) (VKBD.INVERT-REGION 74625 . 75316) (VKBD.KEYBOARD-WINDOW-REPAINTFN
|
||||
75318 . 77275) (VKBD.LOWER-HALF-REGION 77277 . 77677) (VKBD.POSITION-IS-IN-KEY-REGION 77679 . 77963) (
|
||||
VKBD.REMOVE-KEYBOARD-COMMAND 77965 . 78422) (VKBD.UNION-REGIONS 78424 . 79569) (VKBD.UPPER-HALF-REGION
|
||||
79571 . 80070)) (80073 99631 (VKBD.KEY-ASSOC 80083 . 80583) (VKBD.CHAR-ASSIGNMENTP 80585 . 80749) (
|
||||
VKBD.COMPLETE-KEYBOARD 80751 . 83410) (VKBD.CTRL-ASSIGNMENTP 83412 . 83655) (VKBD.EVENT-ASSIGNMENTP
|
||||
83657 . 83897) (VKBD.META-ASSIGNMENTP 83899 . 84142) (VKBD.FRAME-KEY 84144 . 86021) (
|
||||
VKBD.GET-CURRENT-KEY-ASSIGNMENT 86023 . 86392) (VKBD.GET-NON-CHAR-LABEL 86394 . 87049) (VKBD.ICONFN
|
||||
87051 . 87787) (VKBD.INVERT-LOCK-KEYS 87789 . 88467) (VKBD.INVERT-SHIFT-KEYS 88469 . 89151) (
|
||||
VKBD.TRANSLATE-KEY-ID 89153 . 89832) (VKBD.KEY-ID-TO-KEY-NAMES 89834 . 90320) (
|
||||
VKBD.KEYBOARD-IS-KEYBOARDTYPE-KEYBOARD 90322 . 90920) (VKBD.LOCK-ASSIGNMENTP 90922 . 91369) (
|
||||
VKBD.LOCK-KEYP 91371 . 91689) (VKBD.LOCK/NOLOCK 91691 . 91850) (VKBD.LOCKDOWN-ASSIGNMENTP 91852 .
|
||||
92146) (VKBD.LOCKUP-ASSIGNMENTP 92148 . 92438) (VKBD.PARSE-CHAR-CODE 92440 . 92939) (
|
||||
VKBD.PARSE-KEY-ASSIGNMENT 92941 . 96397) (VKBD.RESET-KEYBOARD-WINDOW 96399 . 96992) (
|
||||
VKBD.SEND-CHARACTER 96994 . 98503) (VKBD.SHIFT-ASSIGNMENTP 98505 . 98899) (VKBD.SHIFTED-CHAR 98901 .
|
||||
99059) (VKBD.UNDEFINE-KEYBOARD 99061 . 99468) (VKBD.UNSHIFTED-CHAR 99470 . 99629)) (112553 114999 (
|
||||
VKBD.\\KEYBOARDEVENTFN 112563 . 113766) (VKBD.RESETKEYACTIONTABLES 113768 . 114997)) (115105 121256 (
|
||||
NEWKEYACTION 115115 . 121254)) (121893 138081 (FIXKEYBOARD 121903 . 123023) (FIXKEYBOARDCONFIG 123025
|
||||
. 130249) (FIXKEYASSIGNMENTS 130251 . 138079)) (138168 140132 (METASHIFT 138178 . 140130)))))
|
||||
STOP
|
||||
BIN
library/virtualkeyboards/VIRTUALKEYBOARDS.LCOM
Normal file
BIN
library/virtualkeyboards/VIRTUALKEYBOARDS.LCOM
Normal file
Binary file not shown.
BIN
library/virtualkeyboards/XKEYBOARDS
Normal file
BIN
library/virtualkeyboards/XKEYBOARDS
Normal file
Binary file not shown.
Binary file not shown.
@@ -1,27 +1,26 @@
|
||||
(DEFINE-FILE-INFO READTABLE "INTERLISP" PACKAGE "INTERLISP")
|
||||
(FILECREATED "11-Dec-87 14:48:16" {DSK}<XAVIER>COMMON-MAKE.;5 15290
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
changes to%: (VARS COMMON-MAKECOMS)
|
||||
(FNS COMMON-FILE-COMMAND COMMON-MAKEFILE)
|
||||
(PROPS (COMMON-MAKE MAKEFILE-ENVIRONMENT))
|
||||
(FILECREATED "13-Oct-2023 16:40:48" {LU}COMMON-MAKE.;2 14315
|
||||
|
||||
previous date%: "11-Dec-87 12:53:46" {DSK}<XAVIER>COMMON-MAKE.;1)
|
||||
:EDIT-BY "mth"
|
||||
|
||||
:CHANGES-TO (VARS COMMON-MAKECOMS)
|
||||
|
||||
:PREVIOUS-DATE "11-Dec-87 14:48:16" {LU}COMMON-MAKE.;1)
|
||||
|
||||
(* "
|
||||
Copyright (c) 1987 by Unisys Corp.. All rights reserved.
|
||||
")
|
||||
|
||||
(PRETTYCOMPRINT COMMON-MAKECOMS)
|
||||
|
||||
(RPAQQ COMMON-MAKECOMS ((* FUNCTIONS TO HANDLE WRITING STANDARD COMMONLISP SOURCE FILES)
|
||||
(RPAQQ COMMON-MAKECOMS [
|
||||
(* ;; "FUNCTIONS TO HANDLE WRITING STANDARD COMMONLISP SOURCE FILES")
|
||||
|
||||
(FNS COMMON-FILE-COMMAND COMMON-MAKEFILE)
|
||||
(PROP MAKEFILE-ENVIRONMENT COMMON-MAKE)
|
||||
(EDITHIST COMMON-MAKE)))
|
||||
(DECLARE%: DONTCOPY (ALISTS (EDITHISTALIST COMMON-MAKE])
|
||||
|
||||
|
||||
|
||||
(* FUNCTIONS TO HANDLE WRITING STANDARD COMMONLISP SOURCE FILES)
|
||||
(* ;; "FUNCTIONS TO HANDLE WRITING STANDARD COMMONLISP SOURCE FILES")
|
||||
|
||||
(DEFINEQ
|
||||
|
||||
@@ -227,30 +226,20 @@ Copyright (c) 1987 by Unisys Corp.. All rights reserved.
|
||||
(CLOSEF *STANDARD-OUTPUT*])
|
||||
)
|
||||
|
||||
(PUTPROPS COMMON-MAKE MAKEFILE-ENVIRONMENT (:READTABLE "INTERLISP" :PACKAGE "INTERLISP"))
|
||||
(PUTPROPS COMMON-MAKE MAKEFILE-ENVIRONMENT (:READTABLE "INTERLISP" :PACKAGE "INTERLISP"))
|
||||
(DECLARE%: DONTCOPY
|
||||
|
||||
(ADDTOVAR EDITHISTALIST (COMMON-MAKE ("11-Dec-87 12:54:22" DJVB {DSK}<XAVIER>COMMON-MAKE.;1
|
||||
(COMMON-FILE-COMMAND COMMON-MAKEFILE))
|
||||
("11-Dec-87 13:35:35" DJVB {DSK}<XAVIER>COMMON-MAKE.;2 (
|
||||
COMMON-FILE-COMMAND
|
||||
|
||||
COMMON-MAKEFILE
|
||||
)
|
||||
(GETTING DETAILS RIGHT))
|
||||
("11-Dec-87 13:40:48" DJVB {DSK}<XAVIER>COMMON-MAKE.;3 (
|
||||
COMMON-FILE-COMMAND
|
||||
))
|
||||
("11-Dec-87 14:09:04" DJVB {DSK}<XAVIER>COMMON-MAKE.;4 (
|
||||
COMMON-FILE-COMMAND
|
||||
))
|
||||
("11-Dec-87 14:48:44" DJVB {DSK}<XAVIER>COMMON-MAKE.;5 (
|
||||
COMMON-FILE-COMMAND
|
||||
)
|
||||
(FIXED FILE COMMENTS AND CL:DEFVAR ET AL))))
|
||||
(ADDTOVAR EDITHISTALIST
|
||||
(COMMON-MAKE ("11-Dec-87 12:54:22" DJVB {DSK}<XAVIER>COMMON-MAKE.;1 (COMMON-FILE-COMMAND
|
||||
COMMON-MAKEFILE))
|
||||
("11-Dec-87 13:35:35" DJVB {DSK}<XAVIER>COMMON-MAKE.;2 (COMMON-FILE-COMMAND
|
||||
COMMON-MAKEFILE)
|
||||
(GETTING DETAILS RIGHT))
|
||||
("11-Dec-87 13:40:48" DJVB {DSK}<XAVIER>COMMON-MAKE.;3 (COMMON-FILE-COMMAND))
|
||||
("11-Dec-87 14:09:04" DJVB {DSK}<XAVIER>COMMON-MAKE.;4 (COMMON-FILE-COMMAND))
|
||||
("11-Dec-87 14:48:44" DJVB {DSK}<XAVIER>COMMON-MAKE.;5 (COMMON-FILE-COMMAND)
|
||||
(FIXED FILE COMMENTS AND CL:DEFVAR ET AL))))
|
||||
)
|
||||
(PUTPROPS COMMON-MAKE COPYRIGHT ("Unisys Corp." 1987))
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (829 13460 (COMMON-FILE-COMMAND 839 . 9055) (COMMON-MAKEFILE 9057 . 13458)))))
|
||||
(FILEMAP (NIL (722 13353 (COMMON-FILE-COMMAND 732 . 8948) (COMMON-MAKEFILE 8950 . 13351)))))
|
||||
STOP
|
||||
ÿ
|
||||
BIN
lispusers/COMMON-MAKE.LCOM
Normal file
BIN
lispusers/COMMON-MAKE.LCOM
Normal file
Binary file not shown.
359
lispusers/GITFNS
359
lispusers/GITFNS
@@ -1,10 +1,12 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "30-Mar-2023 09:08:48" {WMEDLEY}<lispusers>GITFNS.;469 119763
|
||||
(FILECREATED " 1-Oct-2023 19:33:26" {WMEDLEY}<lispusers>GITFNS.;489 124166
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (FNS GIT-MAKE-PROJECT)
|
||||
|
||||
:PREVIOUS-DATE "11-Mar-2023 23:12:35" {WMEDLEY}<lispusers>GITFNS.;468)
|
||||
:PREVIOUS-DATE " 1-Oct-2023 19:27:42" {WMEDLEY}<lispusers>GITFNS.;488)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT GITFNSCOMS)
|
||||
@@ -14,7 +16,7 @@
|
||||
(* ;; "Set up")
|
||||
|
||||
(FILES (SYSLOAD FROM LISPUSERS)
|
||||
COMPAREDIRECTORIES COMPARESOURCES COMPARETEXT PSEUDOHOSTS)
|
||||
COMPAREDIRECTORIES COMPARESOURCES COMPARETEXT PSEUDOHOSTS UNIXUTILS)
|
||||
|
||||
(* ;; "")
|
||||
|
||||
@@ -47,6 +49,7 @@
|
||||
(INITVARS (GIT-MERGE-COMPARES T)
|
||||
(GIT-CDBROWSER-SEPARATE-DIRECTIONS T))
|
||||
(COMMANDS gwc bbc prc cob b? cdg cdw)
|
||||
(FNS PRC-COMMAND)
|
||||
|
||||
(* ;; "")
|
||||
|
||||
@@ -65,7 +68,7 @@
|
||||
|
||||
(FNS GIT-COMMIT GIT-PUSH GIT-PULL GIT-APPROVAL GIT-GET-FILE GIT-FILE-EXISTS?
|
||||
GIT-REMOTE-UPDATE GIT-REMOTE-ADD GIT-FILE-DATE GIT-FILE-HISTORY GIT-PRINT-FILE-HISTORY
|
||||
GIT-FETCH)
|
||||
GIT-FETCH GIT-PR-BRANCHES)
|
||||
|
||||
(* ;; "Differences")
|
||||
|
||||
@@ -77,8 +80,8 @@
|
||||
(* ;; "Branches")
|
||||
|
||||
(FNS GIT-BRANCH-NUM GIT-CHECKOUT GIT-WHICH-BRANCH GIT-MAKE-BRANCH GIT-BRANCHES
|
||||
GIT-BRANCH-EXISTS? GIT-PICK-BRANCH GIT-PRC-MENU GIT-PULL-REQUESTS GIT-SHORT-BRANCH-NAME
|
||||
GIT-LONG-NAME)
|
||||
GIT-BRANCH-EXISTS? GIT-PICK-BRANCH GIT-BRANCH-MENU GIT-PULL-REQUESTS
|
||||
GIT-SHORT-BRANCH-NAME GIT-LONG-NAME GIT-PRC-BRANCHES)
|
||||
|
||||
(* ;; "My branches")
|
||||
|
||||
@@ -98,7 +101,7 @@
|
||||
|
||||
(FNS GIT-GET-DIFFERENT-FILES GIT-BRANCHES-COMPARE-DIRECTORIES GIT-WORKING-COMPARE-DIRECTORIES
|
||||
GIT-COMPARE-WORKTREE GITCDOBJBUTTONFN GIT-CD-LABELFN GIT-CD-MENUFN
|
||||
GIT-WORKING-COMPARE-FILES GIT-BRANCHES-COMPARE-FILES)
|
||||
GIT-WORKING-COMPARE-FILES GIT-BRANCHES-COMPARE-FILES GIT-PR-COMPARE)
|
||||
(INITVARS (FROMGITN 0))
|
||||
|
||||
(* ;; "")
|
||||
@@ -106,8 +109,8 @@
|
||||
|
||||
(* ;; "Utilities")
|
||||
|
||||
(FNS CDGITDIR GIT-COMMAND GITORIGIN GIT-INITIALS GIT-COMMAND-TO-FILE PROCESS-COMMAND
|
||||
GIT-RESULT-TO-LINES STRIPLOCAL)
|
||||
(FNS CDGITDIR GIT-COMMAND GITORIGIN GIT-INITIALS GIT-COMMAND-TO-FILE GIT-RESULT-TO-LINES
|
||||
STRIPLOCAL)
|
||||
(PROPS (GITFNS FILETYPE))))
|
||||
|
||||
|
||||
@@ -116,7 +119,7 @@
|
||||
|
||||
|
||||
(FILESLOAD (SYSLOAD FROM LISPUSERS)
|
||||
COMPAREDIRECTORIES COMPARESOURCES COMPARETEXT PSEUDOHOSTS)
|
||||
COMPAREDIRECTORIES COMPARESOURCES COMPARETEXT PSEUDOHOSTS UNIXUTILS)
|
||||
|
||||
|
||||
|
||||
@@ -130,15 +133,15 @@
|
||||
(DEFINEQ
|
||||
|
||||
(GIT-CLONEP
|
||||
[LAMBDA (HOST/DIR NOERROR CHECKANCESTORS) (* ; "Edited 12-May-2022 11:44 by rmk")
|
||||
[LAMBDA (HOST/DIR NOERROR CHECKANCESTORS) (* ; "Edited 1-Oct-2023 18:09 by rmk")
|
||||
(* ; "Edited 12-May-2022 11:44 by rmk")
|
||||
(* ; "Edited 8-May-2022 16:24 by rmk")
|
||||
|
||||
(* ;; "If CHECKANCESTORS, looks back up the directory chain to see if perhaps the .git is somewhere higher up.")
|
||||
|
||||
(IF [AND HOST/DIR (LET ((D (SLASHIT (TRUEFILENAME (PACKFILENAME.STRING 'BODY HOST/DIR
|
||||
(IF [AND HOST/DIR (LET [(D (SLASHIT (TRUEFILENAME (PACKFILENAME.STRING 'BODY HOST/DIR
|
||||
'HOST
|
||||
'DSK))
|
||||
T)))
|
||||
'DSK]
|
||||
(IF (DIRECTORYNAMEP (CONCAT D "/.git/"))
|
||||
THEN D
|
||||
ELSEIF (AND CHECKANCESTORS (FIND-ANCESTOR-DIRECTORY
|
||||
@@ -164,6 +167,7 @@
|
||||
|
||||
(GIT-MAKE-PROJECT
|
||||
[LAMBDA (PROJECTNAME CLONEPATH WORKINGPATH EXCLUSIONS DEFAULTSUBDIRS)
|
||||
(* ; "Edited 1-Oct-2023 19:33 by rmk")
|
||||
(* ; "Edited 30-Mar-2023 09:06 by rmk")
|
||||
(* ; "Edited 5-Feb-2023 12:43 by rmk")
|
||||
(* ; "Edited 1-Feb-2023 16:55 by rmk")
|
||||
@@ -205,7 +209,7 @@
|
||||
(GIT-CLONEP (MEDLEYDIR (L-CASE PROJECTNAME)
|
||||
NIL NIL T)
|
||||
T)
|
||||
(GIT-CLONEP (MEDLEYDIR (CONCAT "../" PROJECTNAME)
|
||||
(GIT-CLONEP (MEDLEYDIR (CONCAT "../" (L-CASE PROJECTNAME))
|
||||
NIL NIL T)
|
||||
T)
|
||||
(GIT-CLONEP (DIRECTORYNAME (CONCAT MEDLEYDIR "../git-" (L-CASE
|
||||
@@ -216,12 +220,11 @@
|
||||
(ERROR (CONCAT "Can't find a clone directory for " PROJECTNAME))
|
||||
(PRINTOUT T "Note: Can't find a clone directory for "
|
||||
PROJECTNAME T)))
|
||||
elseif (GIT-CLONEP (SLASHIT (PACKFILENAME 'HOST 'DSK 'DIRECTORY
|
||||
elseif (GIT-CLONEP [SLASHIT (PACKFILENAME 'HOST 'DSK 'DIRECTORY
|
||||
(UNPACKFILENAME.STRING (TRUEFILENAME
|
||||
CLONEPATH)
|
||||
'DIRECTORY
|
||||
'RETURN))
|
||||
T)
|
||||
'RETURN]
|
||||
T T)
|
||||
else (ERROR (CONCAT "Can't find the clone directory " CLONEPATH " for "
|
||||
PROJECTNAME]
|
||||
@@ -262,7 +265,7 @@
|
||||
(DIRECTORYNAME (TRUEFILENAME WORKINGPATH)
|
||||
T)))
|
||||
[SETQ WORKINGPATH (if WP
|
||||
then (UNSLASHIT WP T)
|
||||
then (UNSLASHIT WP)
|
||||
elseif WORKINGPATH
|
||||
then (ERROR (CONCAT "Can't find the working directory "
|
||||
(AND (EQ WORKINGPATH T)
|
||||
@@ -314,7 +317,8 @@
|
||||
PROJECT))])
|
||||
|
||||
(GIT-PUT-PROJECT-FIELD
|
||||
[LAMBDA (PROJECT FIELD NEWVALUE) (* ; "Edited 11-Mar-2023 23:00 by rmk")
|
||||
[LAMBDA (PROJECT FIELD NEWVALUE) (* ; "Edited 10-Jun-2023 21:48 by rmk")
|
||||
(* ; "Edited 11-Mar-2023 23:00 by rmk")
|
||||
(* ; "Edited 7-Jul-2022 11:25 by rmk")
|
||||
(* ; "Edited 13-May-2022 10:40 by rmk")
|
||||
(* ; "Edited 9-May-2022 20:02 by rmk")
|
||||
@@ -322,24 +326,17 @@
|
||||
|
||||
(* ;; "Replaces the value of a project field with NEWVALUE. The project record is DONTCOPY, to avoid potential name conflicts, so this provides a functional interface. One use: augment EXCLUSIONS with a list of temporary debug and testing files that you don't want to see in the various file listings")
|
||||
|
||||
(CL:WHEN (SETQ PROJECT (IF (TYPE? GIT-PROJECT PROJECT)
|
||||
THEN PROJECT
|
||||
ELSEIF (CDR (ASSOC (OR (U-CASE PROJECT)
|
||||
GIT-DEFAULT-PROJECT)
|
||||
GIT-PROJECTS))
|
||||
ELSEIF NOERROR
|
||||
THEN NIL
|
||||
ELSE (ERROR "NOT A GIT-PROJECT" PROJECT)))
|
||||
(SELECTQ FIELD
|
||||
(PROJECTNAME (REPLACE PROJECTNAME OF PROJECT WITH NEWVALUE))
|
||||
(WHOST (REPLACE WHOST OF PROJECT WITH NEWVALUE))
|
||||
(GITHOST (REPLACE GITHOST OF PROJECT WITH NEWVALUE))
|
||||
(EXCLUSIONS (REPLACE EXCLUSIONS OF PROJECT WITH NEWVALUE))
|
||||
(DEFAULTSUBDIRS
|
||||
(REPLACE DEFAULTSUBDIRS OF PROJECT WITH NEWVALUE))
|
||||
(CLONEPATH (REPLACE CLONEPATH OF PROJECT WITH NEWVALUE))
|
||||
(MAINBRANCH (REPLACE MAINBRANCH OF PROJECT WITH NEWVALUE))
|
||||
PROJECT))])
|
||||
(SETQ PROJECT (GIT-GET-PROJECT PROJECT))
|
||||
(SELECTQ FIELD
|
||||
(PROJECTNAME (REPLACE PROJECTNAME OF PROJECT WITH NEWVALUE))
|
||||
(WHOST (REPLACE WHOST OF PROJECT WITH NEWVALUE))
|
||||
(GITHOST (REPLACE GITHOST OF PROJECT WITH NEWVALUE))
|
||||
(EXCLUSIONS (REPLACE EXCLUSIONS OF PROJECT WITH NEWVALUE))
|
||||
(DEFAULTSUBDIRS
|
||||
(REPLACE DEFAULTSUBDIRS OF PROJECT WITH NEWVALUE))
|
||||
(CLONEPATH (REPLACE CLONEPATH OF PROJECT WITH NEWVALUE))
|
||||
(MAINBRANCH (REPLACE MAINBRANCH OF PROJECT WITH NEWVALUE))
|
||||
PROJECT])
|
||||
|
||||
(GIT-PROJECT-PATH
|
||||
[LAMBDA (PROJECTNAME PROJECTPATH) (* ; "Edited 8-May-2022 15:10 by rmk")
|
||||
@@ -478,29 +475,7 @@
|
||||
|
||||
(* ;; "Compares REMOTEBRANCH against the main orign branch, for pull-request assessment")
|
||||
|
||||
(LET ((RB REMOTEBRANCH)
|
||||
(DR DRAFTS)
|
||||
(PRS))
|
||||
(IF PROJECT
|
||||
THEN (SETQ PROJECT (GIT-GET-PROJECT PROJECT))
|
||||
ELSEIF (GIT-GET-PROJECT RB NIL T)
|
||||
THEN (SETQ PROJECT RB)
|
||||
(SETQ RB NIL)
|
||||
ELSEIF (GIT-GET-PROJECT DRAFTS NIL T)
|
||||
THEN (SETQ PROJECT DRAFTS)
|
||||
(SETQ DRFTS NIL))
|
||||
(CL:WHEN (MEMB (U-CASE RB)
|
||||
'(DRAFT DRAFTS))
|
||||
(SETQ RB NIL)
|
||||
(SETQ DR T))
|
||||
(GIT-FETCH PROJECT)
|
||||
(SETQ PRS (GIT-PULL-REQUESTS T DR PROJECT))
|
||||
(IF PRS
|
||||
THEN (CL:WHEN (OR RB (SETQ RB (GIT-PICK-BRANCH (GIT-PRC-MENU DR PROJECT PRS)
|
||||
"Pull requests")))
|
||||
(GIT-BRANCHES-COMPARE-DIRECTORIES (GIT-MAINBRANCH PROJECT)
|
||||
RB NIL PROJECT))
|
||||
ELSE "No open pull requests")))
|
||||
(PRC-COMMAND REMOTEBRANCH DRAFTS PROJECT))
|
||||
|
||||
(DEFCOMMAND cob (BRANCH NEXTTITLESTRING PROJECT)
|
||||
|
||||
@@ -553,6 +528,46 @@
|
||||
(SLASHIT (/CNDIR (CONCAT (GIT-GET-PROJECT PROJECT 'WHOST)
|
||||
(OR SUBDIR "")))
|
||||
T))
|
||||
(DEFINEQ
|
||||
|
||||
(PRC-COMMAND
|
||||
[LAMBDA (REMOTEBRANCH DRAFTS PROJECT) (* ; "Edited 28-Jul-2023 09:03 by rmk")
|
||||
(LET (PRS PRMENU)
|
||||
(IF PROJECT
|
||||
THEN (SETQ PROJECT (GIT-GET-PROJECT PROJECT))
|
||||
ELSEIF (GIT-GET-PROJECT REMOTEBRANCH NIL T)
|
||||
THEN (SETQ PROJECT REMOTEBRANCH)
|
||||
(SETQ REMOTEBRANCH NIL)
|
||||
ELSEIF (GIT-GET-PROJECT DRAFTS NIL T)
|
||||
THEN (SETQ PROJECT DRAFTS)
|
||||
(SETQ DRAFTS NIL))
|
||||
(CL:WHEN (MEMB (U-CASE REMOTEBRANCH)
|
||||
'(DRAFT DRAFTS))
|
||||
(SETQ REMOTEBRANCH NIL)
|
||||
(SETQ DRAFTS T))
|
||||
(GIT-FETCH PROJECT)
|
||||
(SETQ PRS (GIT-PULL-REQUESTS T DRAFTS PROJECT))
|
||||
(CL:WHEN (AND REMOTEBRANCH (NEQ REMOTEBRANCH 'PinMenu))
|
||||
(for PR in PRS when (OR (STRPOS REMOTEBRANCH (fetch PRDESCRIPTION of PR)
|
||||
NIL NIL NIL NIL FILEDIRCASEARRAY)
|
||||
(STRPOS REMOTEBRANCH (fetch PRNAME of PR)
|
||||
NIL NIL NIL NIL FILEDIRCASEARRAY)) collect PR
|
||||
finally (CL:WHEN $$VAL (SETQ PRS $$VAL))
|
||||
(SETQ REMOTEBRANCH NIL)))
|
||||
(IF PRS
|
||||
THEN (CL:UNLESS REMOTEBRANCH
|
||||
(SETQ PRS (GIT-PRC-BRANCHES DRAFTS PROJECT PRS))
|
||||
(SETQ PRMENU (GIT-BRANCH-MENU PRS (CONCAT (LENGTH PRS)
|
||||
" pull requests")
|
||||
NIL))
|
||||
(SETQ REMOTEBRANCH (MENU PRMENU)))
|
||||
(if (EQ 'PinMenu REMOTEBRANCH)
|
||||
then (ADDMENU (GIT-BRANCH-MENU PRS (CONCAT (LENGTH PRS)
|
||||
" pull requests")))
|
||||
elseif REMOTEBRANCH
|
||||
then (GIT-PR-COMPARE REMOTEBRANCH PROJECT))
|
||||
ELSE "No open pull requests"])
|
||||
)
|
||||
|
||||
|
||||
|
||||
@@ -1004,6 +1019,35 @@
|
||||
(GIT-FETCH
|
||||
[LAMBDA (PROJECT) (* ; "Edited 8-Jul-2022 10:32 by rmk")
|
||||
(GIT-COMMAND "git fetch" T NIL PROJECT])
|
||||
|
||||
(GIT-PR-BRANCHES
|
||||
[LAMBDA (DRAFT PROJECT PRS) (* ; "Edited 8-Aug-2022 18:15 by rmk")
|
||||
(* ; "Edited 4-Aug-2022 18:55 by rmk")
|
||||
(* ; "Edited 9-Jul-2022 19:01 by rmk")
|
||||
(* ; "Edited 16-May-2022 19:44 by rmk")
|
||||
(CL:UNLESS PRS
|
||||
(SETQ PRS (GIT-PULL-REQUESTS T DRAFT PROJECT)))
|
||||
(CL:WHEN PRS
|
||||
(LET ((RELATIONS (GIT-BRANCH-RELATIONS (FOR PR IN PRS COLLECT (GITORIGIN (CADDR PR)))
|
||||
NIL T PROJECT)))
|
||||
(SORT [FOR PR REL LABEL PRNAME (SUPERSETS _ (CAR RELATIONS))
|
||||
(EQUALS _ (CADR RELATIONS)) IN PRS
|
||||
COLLECT (SETQ PRNAME (fetch PRNAME of PR))
|
||||
(SETQ LABEL (CONCAT "#" (fetch (PULLREQUEST PRNUMBER) of PR)
|
||||
" "
|
||||
(IF [SETQ REL (CAR (CDR (SASSOC PRNAME SUPERSETS]
|
||||
THEN (CONCAT PRNAME " > " REL)
|
||||
ELSEIF [SETQ REL (CAR (CDR (SASSOC PRNAME EQUALS]
|
||||
THEN (CONCAT PRNAME " = " REL)
|
||||
ELSE PRNAME)))
|
||||
(LIST (CL:IF (EQ 'DRAFT (FETCH PRSTATUS OF PR))
|
||||
(CONCAT LABEL " (draft)")
|
||||
LABEL)
|
||||
(GITORIGIN PRNAME)
|
||||
(CONCAT " " (FETCH PRDESCRIPTION OF PR)
|
||||
" #"
|
||||
(FETCH PRNUMBER OF PR]
|
||||
T)))])
|
||||
)
|
||||
|
||||
|
||||
@@ -1321,41 +1365,24 @@
|
||||
THEN (ERROR "Unknown branch" BRANCH])
|
||||
|
||||
(GIT-PICK-BRANCH
|
||||
[LAMBDA (BRANCHES TITLE) (* ; "Edited 18-May-2022 13:44 by rmk")
|
||||
(CL:WHEN (MKLIST BRANCHES)
|
||||
(MENU (CREATE MENU
|
||||
TITLE _ (OR TITLE 'Branches)
|
||||
ITEMS _ BRANCHES
|
||||
MENUFONT _ DEFAULTFONT)))])
|
||||
[LAMBDA (BRANCHES TITLE) (* ; "Edited 6-Jul-2023 22:31 by rmk")
|
||||
(* ; "Edited 30-Jun-2023 16:58 by rmk")
|
||||
(* ; "Edited 18-May-2022 13:44 by rmk")
|
||||
(MENU (GIT-BRANCH-MENU BRANCHES (OR TITLE (CONCAT (LENGTH BRANCHES)
|
||||
" branches"])
|
||||
|
||||
(GIT-PRC-MENU
|
||||
[LAMBDA (DRAFT PROJECT PRS) (* ; "Edited 8-Aug-2022 18:15 by rmk")
|
||||
(* ; "Edited 4-Aug-2022 18:55 by rmk")
|
||||
(* ; "Edited 9-Jul-2022 19:01 by rmk")
|
||||
(* ; "Edited 16-May-2022 19:44 by rmk")
|
||||
(CL:UNLESS PRS
|
||||
(SETQ PRS (GIT-PULL-REQUESTS T DRAFT PROJECT)))
|
||||
(CL:WHEN PRS
|
||||
(LET ((RELATIONS (GIT-BRANCH-RELATIONS (FOR PR IN PRS COLLECT (GITORIGIN (CADDR PR)))
|
||||
NIL T PROJECT)))
|
||||
(SORT [FOR PR REL LABEL PRNAME (SUPERSETS _ (CAR RELATIONS))
|
||||
(EQUALS _ (CADR RELATIONS)) IN PRS
|
||||
COLLECT (SETQ PRNAME (fetch PRNAME of PR))
|
||||
(SETQ LABEL (CONCAT "#" (fetch (PULLREQUEST PRNUMBER) of PR)
|
||||
" "
|
||||
(IF [SETQ REL (CAR (CDR (SASSOC PRNAME SUPERSETS]
|
||||
THEN (CONCAT PRNAME " > " REL)
|
||||
ELSEIF [SETQ REL (CAR (CDR (SASSOC PRNAME EQUALS]
|
||||
THEN (CONCAT PRNAME " = " REL)
|
||||
ELSE PRNAME)))
|
||||
(LIST (CL:IF (EQ 'DRAFT (FETCH PRSTATUS OF PR))
|
||||
(CONCAT LABEL " (draft)")
|
||||
LABEL)
|
||||
(GITORIGIN PRNAME)
|
||||
(CONCAT " " (FETCH PRDESCRIPTION OF PR)
|
||||
" #"
|
||||
(FETCH PRNUMBER OF PR]
|
||||
T)))])
|
||||
(GIT-BRANCH-MENU
|
||||
[LAMBDA (BRANCHES TITLE PIN?) (* ; "Edited 6-Jul-2023 22:31 by rmk")
|
||||
(* ; "Edited 30-Jun-2023 16:58 by rmk")
|
||||
(* ; "Edited 18-May-2022 13:44 by rmk")
|
||||
(CL:WHEN (SETQ BRANCHES (MKLIST BRANCHES))
|
||||
(CL:WHEN PIN?
|
||||
[SETQ BRANCHES (APPEND BRANCHES '((" Pin menu" 'PinMenu])
|
||||
(CREATE MENU
|
||||
TITLE _ (OR TITLE (CONCAT (LENGTH BRANCHES)
|
||||
" branches"))
|
||||
ITEMS _ BRANCHES
|
||||
MENUFONT _ DEFAULTFONT))])
|
||||
|
||||
(GIT-PULL-REQUESTS
|
||||
[LAMBDA (ALLINFO INCLUDEDRAFTS PROJECT) (* ; "Edited 8-Aug-2022 13:12 by rmk")
|
||||
@@ -1402,6 +1429,35 @@
|
||||
(* ;; "Allows short-hand reference to branch: rmk40 will return rmk40--xyz")
|
||||
|
||||
(FIND B IN (GIT-BRANCHES WHERE PROJECT EXCLUDEMERGED) SUCHTHAT (STRPOS BRANCH B])
|
||||
|
||||
(GIT-PRC-BRANCHES
|
||||
[LAMBDA (DRAFT PROJECT PRS) (* ; "Edited 8-Aug-2022 18:15 by rmk")
|
||||
(* ; "Edited 4-Aug-2022 18:55 by rmk")
|
||||
(* ; "Edited 9-Jul-2022 19:01 by rmk")
|
||||
(* ; "Edited 16-May-2022 19:44 by rmk")
|
||||
(CL:UNLESS PRS
|
||||
(SETQ PRS (GIT-PULL-REQUESTS T DRAFT PROJECT)))
|
||||
(CL:WHEN PRS
|
||||
(LET ((RELATIONS (GIT-BRANCH-RELATIONS (FOR PR IN PRS COLLECT (GITORIGIN (CADDR PR)))
|
||||
NIL T PROJECT)))
|
||||
(SORT [FOR PR REL LABEL PRNAME (SUPERSETS _ (CAR RELATIONS))
|
||||
(EQUALS _ (CADR RELATIONS)) IN PRS
|
||||
COLLECT (SETQ PRNAME (fetch PRNAME of PR))
|
||||
(SETQ LABEL (CONCAT "#" (fetch (PULLREQUEST PRNUMBER) of PR)
|
||||
" "
|
||||
(IF [SETQ REL (CAR (CDR (SASSOC PRNAME SUPERSETS]
|
||||
THEN (CONCAT PRNAME " > " REL)
|
||||
ELSEIF [SETQ REL (CAR (CDR (SASSOC PRNAME EQUALS]
|
||||
THEN (CONCAT PRNAME " = " REL)
|
||||
ELSE PRNAME)))
|
||||
(LIST (CL:IF (EQ 'DRAFT (FETCH PRSTATUS OF PR))
|
||||
(CONCAT LABEL " (draft)")
|
||||
LABEL)
|
||||
(GITORIGIN PRNAME)
|
||||
(CONCAT " " (FETCH PRDESCRIPTION OF PR)
|
||||
" #"
|
||||
(FETCH PRNUMBER OF PR]
|
||||
T)))])
|
||||
)
|
||||
|
||||
|
||||
@@ -1664,7 +1720,9 @@
|
||||
(LIST DIR1 DIR2 MAPPINGS))])
|
||||
|
||||
(GIT-BRANCHES-COMPARE-DIRECTORIES
|
||||
[LAMBDA (BRANCH1 BRANCH2 LOCAL PROJECT) (* ; "Edited 12-Sep-2022 14:41 by rmk")
|
||||
[LAMBDA (BRANCH1 BRANCH2 LOCAL PROJECT) (* ; "Edited 26-Sep-2023 22:40 by rmk")
|
||||
(* ; "Edited 10-Jun-2023 17:28 by rmk")
|
||||
(* ; "Edited 12-Sep-2022 14:41 by rmk")
|
||||
(* ; "Edited 20-Jul-2022 21:18 by rmk")
|
||||
(* ; "Edited 22-May-2022 22:47 by rmk")
|
||||
(* ; "Edited 9-May-2022 15:14 by rmk")
|
||||
@@ -1683,10 +1741,11 @@
|
||||
(SETQ MAPPINGS (CADDR DIRS))
|
||||
(IF DIRS
|
||||
THEN (TERPRI T)
|
||||
(SETQ CDVALUE (COMPAREDIRECTORIES (CAR DIRS)
|
||||
[SETQ CDVALUE (COMPAREDIRECTORIES (CAR DIRS)
|
||||
(CADR DIRS)
|
||||
'(> < ~= -* *-)
|
||||
'*>*.*))
|
||||
'*>*.*
|
||||
(GIT-GET-PROJECT PROJECT 'EXCLUSIONS]
|
||||
|
||||
(* ;; "We know that both sides come from Unix/unversioned, even if they have been copied into versioned FROMGIT, so we make a pass to remove the misleading versions.")
|
||||
|
||||
@@ -1733,10 +1792,9 @@
|
||||
(TERPRI T)
|
||||
(IF (FETCH (CDVALUE CDENTRIES) OF CDVALUE)
|
||||
THEN (SETQ LAST-BRANCH-CDVALUE CDVALUE)
|
||||
(CDBROWSER CDVALUE (CONCAT "Comparing " (L-CASE (FETCH PROJECTNAME
|
||||
OF PROJECT)
|
||||
T)
|
||||
" " SHORT1 " and " SHORT2 " "
|
||||
(CDBROWSER CDVALUE (CONCAT (L-CASE (FETCH PROJECTNAME OF PROJECT)
|
||||
T)
|
||||
" " SHORT1 " vs " SHORT2 " "
|
||||
(LENGTH (FETCH (CDVALUE CDENTRIES) OF CDVALUE))
|
||||
" files")
|
||||
(LIST SHORT1 SHORT2)
|
||||
@@ -1754,6 +1812,12 @@
|
||||
(GIT-WORKING-COMPARE-DIRECTORIES
|
||||
[LAMBDA (SUBDIRS SELECT EXCLUDEDFILES FIXDIRECTORYDATES UPDATE PROJECT)
|
||||
|
||||
(* ;; "Edited 26-Sep-2023 22:41 by rmk")
|
||||
|
||||
(* ;; "Edited 17-Jun-2023 22:54 by rmk")
|
||||
|
||||
(* ;; "Edited 10-Jun-2023 21:32 by rmk")
|
||||
|
||||
(* ;; "Edited 20-Jul-2022 21:18 by rmk")
|
||||
|
||||
(* ;; "Edited 25-Jun-2022 21:37 by rmk")
|
||||
@@ -1793,7 +1857,13 @@
|
||||
(GITSUBDIR SUBDIR T PROJECT)
|
||||
(OR SELECT '(> < ~= -* *-))
|
||||
NIL
|
||||
(FETCH EXCLUSIONS OF PROJECT)
|
||||
(for E DPOS in (GIT-GET-PROJECT PROJECT 'EXCLUSIONS)
|
||||
collect (SETQ DPOS (STRPOS SUBDIR (FILENAMEFIELD E
|
||||
'DIRECTORY)
|
||||
1 NIL T T FILEDIRCASEARRAY))
|
||||
(CL:IF DPOS
|
||||
(SUBSTRING E (ADD1 DPOS))
|
||||
E))
|
||||
NIL NIL NIL FIXDIRECTORYDATES))
|
||||
[FOR CDE IN (FETCH CDENTRIES OF CDVAL)
|
||||
DO (CL:WHEN (FETCH INFO1 OF CDE)
|
||||
@@ -1812,9 +1882,8 @@
|
||||
(SETQ $$VAL (CDMERGE $$VAL))
|
||||
[SETQ SUBDIRS (CONCATLIST (FOR SUBDIR IN SUBDIRS COLLECT (CONCAT SUBDIR " "])
|
||||
[FOR CDVAL TITLE IN $$VAL AS SUBDIR INSIDE SUBDIRS
|
||||
DO (SETQ TITLE (CONCAT "Comparing " WPROJ " and " BRANCH2 " " SUBDIR
|
||||
" " (LENGTH (fetch (CDVALUE CDENTRIES)
|
||||
of CDVAL))
|
||||
DO (SETQ TITLE (CONCAT WPROJ " vs. " BRANCH2 " " SUBDIR " "
|
||||
(LENGTH (fetch (CDVALUE CDENTRIES) of CDVAL))
|
||||
" files"))
|
||||
[CDBROWSER CDVAL TITLE `(,WPROJ ,BRANCH2)
|
||||
`(BRANCH1 ,WPROJ BRANCH2 ,BRANCH2 SUBDIR ,SUBDIR LABELFN
|
||||
@@ -2067,6 +2136,11 @@
|
||||
" " FILE)
|
||||
(CONCAT (GIT-SHORT-BRANCH-NAME BRANCH2)
|
||||
" " FILE])
|
||||
|
||||
(GIT-PR-COMPARE
|
||||
[LAMBDA (RB PROJECT) (* ; "Edited 6-Jul-2023 22:22 by rmk")
|
||||
(GIT-BRANCHES-COMPARE-DIRECTORIES (GIT-MAINBRANCH PROJECT)
|
||||
RB NIL PROJECT])
|
||||
)
|
||||
|
||||
(RPAQ? FROMGITN 0)
|
||||
@@ -2083,11 +2157,13 @@
|
||||
(DEFINEQ
|
||||
|
||||
(CDGITDIR
|
||||
[LAMBDA (PROJECT) (* ; "Edited 8-Jul-2022 10:34 by rmk")
|
||||
[LAMBDA (PROJECT) (* ; "Edited 23-Sep-2023 13:01 by rmk")
|
||||
(* ; "Edited 8-Jul-2022 10:34 by rmk")
|
||||
(* ; "Edited 7-Jul-2022 09:36 by rmk")
|
||||
(* ; "Edited 7-May-2022 22:41 by rmk")
|
||||
(* ; "Edited 2-Nov-2021 21:12 by rmk:")
|
||||
(CONCAT "cd " [SLASHIT (STRIPHOST (TRUEFILENAME (FETCH GITHOST OF PROJECT]
|
||||
(CONCAT "cd " (SLASHIT (TRUEFILENAME (FETCH GITHOST OF PROJECT))
|
||||
NIL T)
|
||||
" && "])
|
||||
|
||||
(GIT-COMMAND
|
||||
@@ -2198,16 +2274,6 @@
|
||||
(ERROR (CONCAT "Command failed: " CMD)))
|
||||
NIL])
|
||||
|
||||
(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])
|
||||
|
||||
(GIT-RESULT-TO-LINES
|
||||
[LAMBDA (FILE ALL) (* ; "Edited 16-Jul-2022 22:21 by rmk")
|
||||
|
||||
@@ -2234,32 +2300,33 @@
|
||||
|
||||
(PUTPROPS GITFNS FILETYPE :TCOMPL)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (3979 20805 (GIT-CLONEP 3989 . 5252) (GIT-INIT 5254 . 5884) (GIT-MAKE-PROJECT 5886 .
|
||||
13487) (GIT-GET-PROJECT 13489 . 15414) (GIT-PUT-PROJECT-FIELD 15416 . 17433) (GIT-PROJECT-PATH 17435
|
||||
. 18479) (FIND-ANCESTOR-DIRECTORY 18481 . 18830) (GIT-FIND-CLONE 18832 . 19913) (GIT-MAINBRANCH 19915
|
||||
. 20310) (GIT-MAINBRANCH? 20312 . 20803)) (27232 30020 (ALLSUBDIRS 27242 . 28528) (MEDLEYSUBDIRS
|
||||
28530 . 29223) (GITSUBDIRS 29225 . 30018)) (30021 34811 (TOGIT 30031 . 31437) (FROMGIT 31439 . 32420)
|
||||
(GIT-DELETE-FILE 32422 . 33268) (MYMEDLEY-DELETE-FILES 33270 . 34809)) (34812 37815 (MYMEDLEYSUBDIR
|
||||
34822 . 35278) (GITSUBDIR 35280 . 35723) (STRIPDIR 35725 . 36096) (STRIPHOST 36098 . 36338) (STRIPNAME
|
||||
36340 . 37093) (STRIPWHERE 37095 . 37813)) (37816 39718 (GFILE4MFILE 37826 . 38189) (MFILE4GFILE
|
||||
38191 . 38760) (GIT-REPO-FILENAME 38762 . 39716)) (39767 49589 (GIT-COMMIT 39777 . 40603) (GIT-PUSH
|
||||
40605 . 41249) (GIT-PULL 41251 . 41863) (GIT-APPROVAL 41865 . 42214) (GIT-GET-FILE 42216 . 44181) (
|
||||
GIT-FILE-EXISTS? 44183 . 44457) (GIT-REMOTE-UPDATE 44459 . 45183) (GIT-REMOTE-ADD 45185 . 45492) (
|
||||
GIT-FILE-DATE 45494 . 46425) (GIT-FILE-HISTORY 46427 . 48361) (GIT-PRINT-FILE-HISTORY 48363 . 49413) (
|
||||
GIT-FETCH 49415 . 49587)) (49619 60212 (GIT-BRANCH-DIFF 49629 . 55969) (GIT-COMMIT-DIFFS 55971 . 56524
|
||||
) (GIT-BRANCH-RELATIONS 56526 . 60210)) (60257 72489 (GIT-BRANCH-NUM 60267 . 60840) (GIT-CHECKOUT
|
||||
60842 . 61901) (GIT-WHICH-BRANCH 61903 . 62201) (GIT-MAKE-BRANCH 62203 . 64416) (GIT-BRANCHES 64418 .
|
||||
66686) (GIT-BRANCH-EXISTS? 66688 . 67392) (GIT-PICK-BRANCH 67394 . 67722) (GIT-PRC-MENU 67724 . 69727)
|
||||
(GIT-PULL-REQUESTS 69729 . 71875) (GIT-SHORT-BRANCH-NAME 71877 . 72168) (GIT-LONG-NAME 72170 . 72487)
|
||||
) (72519 75854 (GIT-MY-CURRENT-BRANCH 72529 . 72899) (GIT-MY-BRANCHP 72901 . 73406) (
|
||||
GIT-MY-NEXT-BRANCH 73408 . 73902) (GIT-MY-BRANCHES 73904 . 75852)) (75900 79852 (GIT-ADD-WORKTREE
|
||||
75910 . 77394) (GIT-REMOVE-WORKTREE 77396 . 78326) (GIT-LIST-WORKTREES 78328 . 79132) (WORKTREEDIR
|
||||
79134 . 79850)) (79900 111109 (GIT-GET-DIFFERENT-FILES 79910 . 86334) (
|
||||
GIT-BRANCHES-COMPARE-DIRECTORIES 86336 . 92493) (GIT-WORKING-COMPARE-DIRECTORIES 92495 . 97321) (
|
||||
GIT-COMPARE-WORKTREE 97323 . 101301) (GITCDOBJBUTTONFN 101303 . 105793) (GIT-CD-LABELFN 105795 .
|
||||
106877) (GIT-CD-MENUFN 106879 . 109319) (GIT-WORKING-COMPARE-FILES 109321 . 109941) (
|
||||
GIT-BRANCHES-COMPARE-FILES 109943 . 111107)) (111179 119696 (CDGITDIR 111189 . 111749) (GIT-COMMAND
|
||||
111751 . 113309) (GITORIGIN 113311 . 114008) (GIT-INITIALS 114010 . 114314) (GIT-COMMAND-TO-FILE
|
||||
114316 . 117805) (PROCESS-COMMAND 117807 . 118420) (GIT-RESULT-TO-LINES 118422 . 119029) (STRIPLOCAL
|
||||
119031 . 119694)))))
|
||||
(FILEMAP (NIL (4081 20660 (GIT-CLONEP 4091 . 5419) (GIT-INIT 5421 . 6051) (GIT-MAKE-PROJECT 6053 .
|
||||
13718) (GIT-GET-PROJECT 13720 . 15645) (GIT-PUT-PROJECT-FIELD 15647 . 17288) (GIT-PROJECT-PATH 17290
|
||||
. 18334) (FIND-ANCESTOR-DIRECTORY 18336 . 18685) (GIT-FIND-CLONE 18687 . 19768) (GIT-MAINBRANCH 19770
|
||||
. 20165) (GIT-MAINBRANCH? 20167 . 20658)) (26068 28195 (PRC-COMMAND 26078 . 28193)) (28251 31039 (
|
||||
ALLSUBDIRS 28261 . 29547) (MEDLEYSUBDIRS 29549 . 30242) (GITSUBDIRS 30244 . 31037)) (31040 35830 (
|
||||
TOGIT 31050 . 32456) (FROMGIT 32458 . 33439) (GIT-DELETE-FILE 33441 . 34287) (MYMEDLEY-DELETE-FILES
|
||||
34289 . 35828)) (35831 38834 (MYMEDLEYSUBDIR 35841 . 36297) (GITSUBDIR 36299 . 36742) (STRIPDIR 36744
|
||||
. 37115) (STRIPHOST 37117 . 37357) (STRIPNAME 37359 . 38112) (STRIPWHERE 38114 . 38832)) (38835 40737
|
||||
(GFILE4MFILE 38845 . 39208) (MFILE4GFILE 39210 . 39779) (GIT-REPO-FILENAME 39781 . 40735)) (40786
|
||||
52616 (GIT-COMMIT 40796 . 41622) (GIT-PUSH 41624 . 42268) (GIT-PULL 42270 . 42882) (GIT-APPROVAL 42884
|
||||
. 43233) (GIT-GET-FILE 43235 . 45200) (GIT-FILE-EXISTS? 45202 . 45476) (GIT-REMOTE-UPDATE 45478 .
|
||||
46202) (GIT-REMOTE-ADD 46204 . 46511) (GIT-FILE-DATE 46513 . 47444) (GIT-FILE-HISTORY 47446 . 49380) (
|
||||
GIT-PRINT-FILE-HISTORY 49382 . 50432) (GIT-FETCH 50434 . 50606) (GIT-PR-BRANCHES 50608 . 52614)) (
|
||||
52646 63239 (GIT-BRANCH-DIFF 52656 . 58996) (GIT-COMMIT-DIFFS 58998 . 59551) (GIT-BRANCH-RELATIONS
|
||||
59553 . 63237)) (63284 76387 (GIT-BRANCH-NUM 63294 . 63867) (GIT-CHECKOUT 63869 . 64928) (
|
||||
GIT-WHICH-BRANCH 64930 . 65228) (GIT-MAKE-BRANCH 65230 . 67443) (GIT-BRANCHES 67445 . 69713) (
|
||||
GIT-BRANCH-EXISTS? 69715 . 70419) (GIT-PICK-BRANCH 70421 . 70911) (GIT-BRANCH-MENU 70913 . 71616) (
|
||||
GIT-PULL-REQUESTS 71618 . 73764) (GIT-SHORT-BRANCH-NAME 73766 . 74057) (GIT-LONG-NAME 74059 . 74376) (
|
||||
GIT-PRC-BRANCHES 74378 . 76385)) (76417 79752 (GIT-MY-CURRENT-BRANCH 76427 . 76797) (GIT-MY-BRANCHP
|
||||
76799 . 77304) (GIT-MY-NEXT-BRANCH 77306 . 77800) (GIT-MY-BRANCHES 77802 . 79750)) (79798 83750 (
|
||||
GIT-ADD-WORKTREE 79808 . 81292) (GIT-REMOVE-WORKTREE 81294 . 82224) (GIT-LIST-WORKTREES 82226 . 83030)
|
||||
(WORKTREEDIR 83032 . 83748)) (83798 116000 (GIT-GET-DIFFERENT-FILES 83808 . 90232) (
|
||||
GIT-BRANCHES-COMPARE-DIRECTORIES 90234 . 96585) (GIT-WORKING-COMPARE-DIRECTORIES 96587 . 101983) (
|
||||
GIT-COMPARE-WORKTREE 101985 . 105963) (GITCDOBJBUTTONFN 105965 . 110455) (GIT-CD-LABELFN 110457 .
|
||||
111539) (GIT-CD-MENUFN 111541 . 113981) (GIT-WORKING-COMPARE-FILES 113983 . 114603) (
|
||||
GIT-BRANCHES-COMPARE-FILES 114605 . 115769) (GIT-PR-COMPARE 115771 . 115998)) (116070 124099 (CDGITDIR
|
||||
116080 . 116767) (GIT-COMMAND 116769 . 118327) (GITORIGIN 118329 . 119026) (GIT-INITIALS 119028 .
|
||||
119332) (GIT-COMMAND-TO-FILE 119334 . 122823) (GIT-RESULT-TO-LINES 122825 . 123432) (STRIPLOCAL 123434
|
||||
. 124097)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
@@ -15,7 +15,7 @@ where
|
||||
CLONEPATH specifies the local path to the clone
|
||||
e.g. {dsk}<users>...>git-medley
|
||||
WORKINGPATH is optionally the local path to a corresponding Medley-residential working directory (e.g. {dsk}<users>...>working-medley>)
|
||||
When the project has a working path:
|
||||
When the project has a WORKINGPATH:
|
||||
EXCLUSIONS is a list of files and directories to be excluded from comparisons (including what its .gitignore specifies)
|
||||
DEFAULTSUBDIRS is a list of subdirectories to be use in working-path comparisons when directories are not otherwise specified.
|
||||
For convenience, if CLONEPATH is NIL or T (and not a path), then a sequence of probes based on PROJECTNAME attempts to find a clone directory (with a .git subdirectory):
|
||||
@@ -76,73 +76,13 @@ In addition to the commands for comparing and viewing files, the menu for this b
|
||||
If the master/main branch is the current branch then the menu has no commands to change the clone directory. The browser will show those files that have been updated from a recent merge, and they can individually be copied from the git branch to realign the two source trees with incremented Medley version numbers. If the comparison is with a different branch, say the user's current staging branch, copying files from the working Medley to the git clone or deleting git files will set git up for future commits.
|
||||
Note that the menu item for deleting Medley files will cause all versions to be removed, not just the latest one, to avoid the possibility that an earlier one is revealed. Deletion for Medley files is also accomplished by renaming to a {Wprojectname}<deleted> subdirectory so that they can be recovered if a deletion is in error. Files in the git-clone are removed from the file system immediately, since git provides its own recovery mechanism for those files.
|
||||
GITFNS does not (yet?) include functions for commits, pushes, or merge for updating the remote repository. Those have to be done outside of Medley through the usual github interfaces, as guided by the information provided by the comparisons.
|
||||
| ||||