Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PSEUDOHOSTS: Optional argument to PSEUDOHOST creates a specialized cd command #1999

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 38 additions & 22 deletions library/PSEUDOHOSTS
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)

(FILECREATED "31-Dec-2024 11:45:23" {WMEDLEY}<library>PSEUDOHOSTS.;177 29713
(FILECREATED " 2-Feb-2025 11:14:36" {WMEDLEY}<library>PSEUDOHOSTS.;181 30614

:EDIT-BY rmk

:CHANGES-TO (FNS TRUEDEVICE)
:CHANGES-TO (FNS PSEUDOHOST TRUEFILENAME)

:PREVIOUS-DATE "25-Dec-2024 07:38:10" {WMEDLEY}<library>PSEUDOHOSTS.;176)
:PREVIOUS-DATE "30-Jan-2025 23:33:12" {WMEDLEY}<library>PSEUDOHOSTS.;178)


(PRETTYCOMPRINT PSEUDOHOSTSCOMS)
Expand Down Expand Up @@ -39,7 +39,11 @@
(DEFINEQ

(PSEUDOHOST
[LAMBDA (HOST PREFIX)
[LAMBDA (HOST PREFIX CDSUFFIX NOERROR)

(* ;; "Edited 2-Feb-2025 10:05 by rmk")

(* ;; "Edited 30-Jan-2025 23:32 by rmk")

(* ;; "Edited 2-Nov-2023 10:53 by rmk")

Expand All @@ -60,8 +64,10 @@
(CHARCODE }))
(SETQ HOST (SUBSTRING HOST 1 -2)))
(SETQ HOST (U-CASE (MKATOM HOST)))
[if PREFIX
then (SETQ PREFIX (TRUEFILENAME PREFIX))
(if PREFIX
then (CL:UNLESS (SETQ PREFIX (TRUEFILENAME PREFIX NOERROR))
(RETFROM (FUNCTION PSEUDOHOST)
NIL))
(CL:WHEN (PSEUDOHOSTP HOST) (* ;
 "Redefining: first clear out the previous one")
(PSEUDOHOST HOST NIL))
Expand All @@ -88,6 +94,8 @@
(UNIX (SETQ PREFIX (SLASHIT PREFIX)))
NIL)
(SETQ TARGETDEVICE (OR (\GETDEVICEFROMHOSTNAME TARGETHOST)
(AND NOERROR (RETFROM (FUNCTION PSEUDOHOST)
NIL))
(ERROR "UNKNOWN TARGET HOST" TARGETHOST)))

(* ;; "Save the last directory marker to pack on if needed.")
Expand Down Expand Up @@ -133,8 +141,14 @@
(DREMOVE (ASSOC PREFIX DATUM)
DATUM)))
(SETQ \FILEDEVICES (DREMOVE PHHOST \FILEDEVICES))
(\DEFINEDEVICE HOST NIL))]
HOST])
(\DEFINEDEVICE HOST NIL)))
elseif NOERROR
else (ERROR (CONCAT "PREFIX FOR PSEUDOHOST " HOST " NOT FOUND")))
(CL:WHEN (AND PREFIX CDSUFFIX)
(CDPSEUDO HOST CDSUFFIX))
(CL:WHEN PREFIX (* ;
 "If no prefix, we didn't get a pseudohost")
HOST)])

(PSEUDOHOSTP
[LAMBDA (HOST) (* ; "Edited 16-Dec-2024 21:15 by rmk")
Expand Down Expand Up @@ -183,7 +197,8 @@
else DEV])

(TRUEFILENAME
[LAMBDA (FILE) (* ; "Edited 1-Oct-2023 20:16 by rmk")
[LAMBDA (FILE NOERROR) (* ; "Edited 2-Feb-2025 09:12 by rmk")
(* ; "Edited 1-Oct-2023 20:16 by rmk")
(* ; "Edited 26-Jul-2023 07:53 by rmk")
(* ; "Edited 26-Jan-2022 23:33 by rmk")
(* ; "Edited 25-Jan-2022 08:47 by rmk")
Expand All @@ -195,10 +210,11 @@
FILE))
(SETQ DEVICE (FETCH (STREAM DEVICE) OF FILE))
ELSE (SETQ FILENAME (\ADD.CONNECTED.DIR FILE))
(SETQ DEVICE (\GETDEVICEFROMNAME FILENAME)))
(CL:IF (TYPE? PHDEVICE DEVICE)
(EXPAND.PH FILENAME DEVICE)
FILENAME)])
(SETQ DEVICE (\GETDEVICEFROMNAME FILENAME NOERROR)))
(CL:WHEN DEVICE
(CL:IF (TYPE? PHDEVICE DEVICE)
(EXPAND.PH FILENAME DEVICE)
FILENAME))])

(PSEUDOFILENAME
[LAMBDA (FILE) (* ; "Edited 26-Jul-2023 12:34 by rmk")
Expand Down Expand Up @@ -562,13 +578,13 @@
EXPORTS.ALL)
)
(DECLARE%: DONTCOPY
(FILEMAP (NIL (1318 12059 (PSEUDOHOST 1328 . 7036) (PSEUDOHOSTP 7038 . 7867) (PSEUDOHOSTS 7869 . 8230)
(TARGETHOST 8232 . 9101) (TRUEDEVICE 9103 . 10059) (TRUEFILENAME 10061 . 11186) (PSEUDOFILENAME 11188
. 12057)) (12087 18102 (EXPAND.PH 12097 . 13350) (CONTRACT.PH 13352 . 16063) (UNSLASHIT 16065 . 17811
) (GETHOSTINFO.PH 17813 . 18100)) (18103 19004 (CDPSEUDO 18113 . 19002)) (19005 27025 (OPENFILE.PH
19015 . 20088) (GETFILENAME.PH 20090 . 20379) (DIRECTORYNAMEP.PH 20381 . 21005) (CLOSEFILE.PH 21007 .
21474) (REOPENFILE.PH 21476 . 22041) (DELETEFILE.PH 22043 . 22327) (OPENP.PH 22329 . 22624) (
UNREGISTERFILE.PH 22626 . 23168) (REGISTERFILE.PH 23170 . 23704) (GENERATEFILES.PH 23706 . 24750) (
GETFILEINFO.PH 24752 . 25054) (SETFILEINFO.PH 25056 . 25255) (NEXTFILEFN.PH 25257 . 25803) (
FILEINFOFN.PH 25805 . 26080) (RENAMEFILE.PH 26082 . 27023)))))
(FILEMAP (NIL (1331 12960 (PSEUDOHOST 1341 . 7775) (PSEUDOHOSTP 7777 . 8606) (PSEUDOHOSTS 8608 . 8969)
(TARGETHOST 8971 . 9840) (TRUEDEVICE 9842 . 10798) (TRUEFILENAME 10800 . 12087) (PSEUDOFILENAME 12089
. 12958)) (12988 19003 (EXPAND.PH 12998 . 14251) (CONTRACT.PH 14253 . 16964) (UNSLASHIT 16966 . 18712
) (GETHOSTINFO.PH 18714 . 19001)) (19004 19905 (CDPSEUDO 19014 . 19903)) (19906 27926 (OPENFILE.PH
19916 . 20989) (GETFILENAME.PH 20991 . 21280) (DIRECTORYNAMEP.PH 21282 . 21906) (CLOSEFILE.PH 21908 .
22375) (REOPENFILE.PH 22377 . 22942) (DELETEFILE.PH 22944 . 23228) (OPENP.PH 23230 . 23525) (
UNREGISTERFILE.PH 23527 . 24069) (REGISTERFILE.PH 24071 . 24605) (GENERATEFILES.PH 24607 . 25651) (
GETFILEINFO.PH 25653 . 25955) (SETFILEINFO.PH 25957 . 26156) (NEXTFILEFN.PH 26158 . 26704) (
FILEINFOFN.PH 26706 . 26981) (RENAMEFILE.PH 26983 . 27924)))))
STOP
Binary file modified library/PSEUDOHOSTS.LCOM
Binary file not shown.
Binary file modified library/PSEUDOHOSTS.TEDIT
Binary file not shown.