home *** CD-ROM | disk | FTP | other *** search
Emacs Compiled Lisp | 1994-04-10 | 10.9 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: Emacs Compiled Lisp
(other/emacsCompiledLisp).
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
1%
| dexvert
| Emacs Compiled Lisp (other/emacsCompiledLisp)
| magic
| Unsupported |
100%
| file
| Emacs/XEmacs v19 byte-compiled Lisp data
| default
| |
99%
| file
| data
| default
| |
100%
| TrID
| Emacs/XEmacs byte-compiled Lisp (generic)
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 3b 45 4c 43 13 00 00 00 | 0a 3b 3b 3b 20 63 6f 6d |;ELC....|.;;; com|
|00000010| 70 69 6c 65 64 20 62 79 | 20 6c 69 62 65 72 74 65 |piled by| liberte|
|00000020| 40 63 68 75 72 63 68 79 | 2e 67 6e 75 2e 61 69 2e |@churchy|.gnu.ai.|
|00000030| 6d 69 74 2e 65 64 75 20 | 6f 6e 20 53 61 74 20 41 |mit.edu |on Sat A|
|00000040| 70 72 20 20 39 20 31 38 | 3a 32 39 3a 33 31 20 31 |pr 9 18|:29:31 1|
|00000050| 39 39 34 0a 3b 3b 3b 20 | 66 72 6f 6d 20 66 69 6c |994.;;; |from fil|
|00000060| 65 20 2f 67 64 2f 67 6e | 75 2f 65 6d 61 63 73 2f |e /gd/gn|u/emacs/|
|00000070| 31 39 2e 30 2f 6c 69 73 | 70 2f 63 75 73 74 2d 70 |19.0/lis|p/cust-p|
|00000080| 72 69 6e 74 2e 65 6c 0a | 3b 3b 3b 20 65 6d 61 63 |rint.el.|;;; emac|
|00000090| 73 20 76 65 72 73 69 6f | 6e 20 31 39 2e 32 32 2e |s versio|n 19.22.|
|000000a0| 39 33 2e 0a 3b 3b 3b 20 | 62 79 74 65 63 6f 6d 70 |93..;;; |bytecomp|
|000000b0| 20 76 65 72 73 69 6f 6e | 20 46 53 46 20 32 2e 31 | version| FSF 2.1|
|000000c0| 30 0a 3b 3b 3b 20 6f 70 | 74 69 6d 69 7a 61 74 69 |0.;;; op|timizati|
|000000d0| 6f 6e 20 69 73 20 6f 6e | 2e 0a 3b 3b 3b 20 74 68 |on is on|..;;; th|
|000000e0| 69 73 20 66 69 6c 65 20 | 75 73 65 73 20 6f 70 63 |is file |uses opc|
|000000f0| 6f 64 65 73 20 77 68 69 | 63 68 20 64 6f 20 6e 6f |odes whi|ch do no|
|00000100| 74 20 65 78 69 73 74 20 | 69 6e 20 45 6d 61 63 73 |t exist |in Emacs|
|00000110| 20 31 38 2e 0a 0a 28 69 | 66 20 28 61 6e 64 20 28 | 18...(i|f (and (|
|00000120| 62 6f 75 6e 64 70 20 27 | 65 6d 61 63 73 2d 76 65 |boundp '|emacs-ve|
|00000130| 72 73 69 6f 6e 29 0a 09 | 20 28 6f 72 20 28 61 6e |rsion)..| (or (an|
|00000140| 64 20 28 62 6f 75 6e 64 | 70 20 27 65 70 6f 63 68 |d (bound|p 'epoch|
|00000150| 3a 3a 76 65 72 73 69 6f | 6e 29 20 65 70 6f 63 68 |::versio|n) epoch|
|00000160| 3a 3a 76 65 72 73 69 6f | 6e 29 0a 09 20 20 20 20 |::versio|n).. |
|00000170| 20 28 73 74 72 69 6e 67 | 2d 6c 65 73 73 70 20 65 | (string|-lessp e|
|00000180| 6d 61 63 73 2d 76 65 72 | 73 69 6f 6e 20 22 31 39 |macs-ver|sion "19|
|00000190| 22 29 29 29 0a 20 20 20 | 20 28 65 72 72 6f 72 20 |"))). | (error |
|000001a0| 22 60 2f 67 64 2f 67 6e | 75 2f 65 6d 61 63 73 2f |"`/gd/gn|u/emacs/|
|000001b0| 31 39 2e 30 2f 6c 69 73 | 70 2f 63 75 73 74 2d 70 |19.0/lis|p/cust-p|
|000001c0| 72 69 6e 74 2e 65 6c 27 | 20 77 61 73 20 63 6f 6d |rint.el'| was com|
|000001d0| 70 69 6c 65 64 20 66 6f | 72 20 45 6d 61 63 73 20 |piled fo|r Emacs |
|000001e0| 31 39 22 29 29 0a 0a 28 | 62 79 74 65 2d 63 6f 64 |19"))..(|byte-cod|
|000001f0| 65 20 22 c0 c1 21 88 c2 | c3 21 84 0e 00 c3 c4 4d |e "..!..|.!.....M|
|00000200| 88 c0 87 22 20 5b 72 65 | 71 75 69 72 65 20 62 61 |..." [re|quire ba|
|00000210| 63 6b 71 75 6f 74 65 20 | 66 62 6f 75 6e 64 70 20 |ckquote |fboundp |
|00000220| 64 65 66 61 6c 69 61 73 | 20 66 73 65 74 5d 20 32 |defalias| fset] 2|
|00000230| 29 0a 28 64 65 66 76 61 | 72 20 70 72 69 6e 74 2d |).(defva|r print-|
|00000240| 6c 65 76 65 6c 20 6e 69 | 6c 20 22 5c 0a 2a 43 6f |level ni|l "\.*Co|
|00000250| 6e 74 72 6f 6c 73 20 68 | 6f 77 20 6d 61 6e 79 20 |ntrols h|ow many |
|00000260| 6c 65 76 65 6c 73 20 64 | 65 65 70 20 61 20 6e 65 |levels d|eep a ne|
|00000270| 73 74 65 64 20 64 61 74 | 61 20 6f 62 6a 65 63 74 |sted dat|a object|
|00000280| 20 77 69 6c 6c 20 70 72 | 69 6e 74 2e 20 20 0a 0a | will pr|int. ..|
|00000290| 49 66 20 6e 69 6c 2c 20 | 70 72 69 6e 74 69 6e 67 |If nil, |printing|
|000002a0| 20 70 72 6f 63 65 65 64 | 73 20 72 65 63 75 72 73 | proceed|s recurs|
|000002b0| 69 76 65 6c 79 20 61 6e | 64 20 6d 61 79 20 6c 65 |ively an|d may le|
|000002c0| 61 64 20 74 6f 0a 6d 61 | 78 2d 6c 69 73 70 2d 65 |ad to.ma|x-lisp-e|
|000002d0| 76 61 6c 2d 64 65 70 74 | 68 20 62 65 69 6e 67 20 |val-dept|h being |
|000002e0| 65 78 63 65 65 64 65 64 | 20 6f 72 20 61 6e 20 65 |exceeded| or an e|
|000002f0| 72 72 6f 72 20 6d 61 79 | 20 6f 63 63 75 72 3a 0a |rror may| occur:.|
|00000300| 60 41 70 70 61 72 65 6e | 74 6c 79 20 63 69 72 63 |`Apparen|tly circ|
|00000310| 75 6c 61 72 20 73 74 72 | 75 63 74 75 72 65 20 62 |ular str|ucture b|
|00000320| 65 69 6e 67 20 70 72 69 | 6e 74 65 64 2e 27 0a 41 |eing pri|nted.'.A|
|00000330| 6c 73 6f 20 73 65 65 20 | 60 70 72 69 6e 74 2d 6c |lso see |`print-l|
|00000340| 65 6e 67 74 68 27 20 61 | 6e 64 20 60 70 72 69 6e |ength' a|nd `prin|
|00000350| 74 2d 63 69 72 63 6c 65 | 27 2e 0a 0a 49 66 20 6e |t-circle|'...If n|
|00000360| 6f 6e 2d 6e 69 6c 2c 20 | 63 6f 6d 70 6f 6e 65 6e |on-nil, |componen|
|00000370| 74 73 20 61 74 20 6c 65 | 76 65 6c 73 20 65 71 75 |ts at le|vels equ|
|00000380| 61 6c 20 74 6f 20 6f 72 | 20 67 72 65 61 74 65 72 |al to or| greater|
|00000390| 20 74 68 61 6e 20 60 70 | 72 69 6e 74 2d 6c 65 76 | than `p|rint-lev|
|000003a0| 65 6c 27 0a 61 72 65 20 | 70 72 69 6e 74 65 64 20 |el'.are |printed |
|000003b0| 73 69 6d 70 6c 79 20 61 | 73 20 60 23 27 2e 20 20 |simply a|s `#'. |
|000003c0| 54 68 65 20 6f 62 6a 65 | 63 74 20 74 6f 20 62 65 |The obje|ct to be|
|000003d0| 20 70 72 69 6e 74 65 64 | 20 69 73 20 61 74 20 6c | printed| is at l|
|000003e0| 65 76 65 6c 20 30 2c 0a | 61 6e 64 20 69 66 20 74 |evel 0,.|and if t|
|000003f0| 68 65 20 6f 62 6a 65 63 | 74 20 69 73 20 61 20 6c |he objec|t is a l|
|00000400| 69 73 74 20 6f 72 20 76 | 65 63 74 6f 72 2c 20 69 |ist or v|ector, i|
|00000410| 74 73 20 74 6f 70 2d 6c | 65 76 65 6c 20 63 6f 6d |ts top-l|evel com|
|00000420| 70 6f 6e 65 6e 74 73 20 | 61 72 65 20 61 74 0a 6c |ponents |are at.l|
|00000430| 65 76 65 6c 20 31 2e 22 | 29 0a 28 64 65 66 76 61 |evel 1."|).(defva|
|00000440| 72 20 70 72 69 6e 74 2d | 63 69 72 63 6c 65 20 6e |r print-|circle n|
|00000450| 69 6c 20 22 5c 0a 2a 43 | 6f 6e 74 72 6f 6c 73 20 |il "\.*C|ontrols |
|00000460| 74 68 65 20 70 72 69 6e | 74 69 6e 67 20 6f 66 20 |the prin|ting of |
|00000470| 72 65 63 75 72 73 69 76 | 65 20 73 74 72 75 63 74 |recursiv|e struct|
|00000480| 75 72 65 73 2e 20 20 0a | 0a 49 66 20 6e 69 6c 2c |ures. .|.If nil,|
|00000490| 20 70 72 69 6e 74 69 6e | 67 20 70 72 6f 63 65 65 | printin|g procee|
|000004a0| 64 73 20 72 65 63 75 72 | 73 69 76 65 6c 79 20 61 |ds recur|sively a|
|000004b0| 6e 64 20 6d 61 79 20 6c | 65 61 64 20 74 6f 0a 60 |nd may l|ead to.`|
|000004c0| 6d 61 78 2d 6c 69 73 70 | 2d 65 76 61 6c 2d 64 65 |max-lisp|-eval-de|
|000004d0| 70 74 68 27 20 62 65 69 | 6e 67 20 65 78 63 65 65 |pth' bei|ng excee|
|000004e0| 64 65 64 20 6f 72 20 61 | 6e 20 65 72 72 6f 72 20 |ded or a|n error |
|000004f0| 6d 61 79 20 6f 63 63 75 | 72 3a 0a 5c 22 41 70 70 |may occu|r:.\"App|
|00000500| 61 72 65 6e 74 6c 79 20 | 63 69 72 63 75 6c 61 72 |arently |circular|
|00000510| 20 73 74 72 75 63 74 75 | 72 65 20 62 65 69 6e 67 | structu|re being|
|00000520| 20 70 72 69 6e 74 65 64 | 2e 5c 22 20 20 41 6c 73 | printed|.\" Als|
|00000530| 6f 20 73 65 65 0a 60 70 | 72 69 6e 74 2d 6c 65 6e |o see.`p|rint-len|
|00000540| 67 74 68 27 20 61 6e 64 | 20 60 70 72 69 6e 74 2d |gth' and| `print-|
|00000550| 6c 65 76 65 6c 27 2e 0a | 0a 49 66 20 6e 6f 6e 2d |level'..|.If non-|
|00000560| 6e 69 6c 2c 20 73 68 61 | 72 65 64 20 73 75 62 73 |nil, sha|red subs|
|00000570| 74 72 75 63 74 75 72 65 | 73 20 61 6e 79 77 68 65 |tructure|s anywhe|
|00000580| 72 65 20 69 6e 20 74 68 | 65 20 73 74 72 75 63 74 |re in th|e struct|
|00000590| 75 72 65 20 61 72 65 20 | 70 72 69 6e 74 65 64 0a |ure are |printed.|
|000005a0| 77 69 74 68 20 60 23 4e | 3d 27 20 62 65 66 6f 72 |with `#N|=' befor|
|000005b0| 65 20 74 68 65 20 66 69 | 72 73 74 20 6f 63 63 75 |e the fi|rst occu|
|000005c0| 72 72 65 6e 63 65 20 28 | 69 6e 20 74 68 65 20 6f |rrence (|in the o|
|000005d0| 72 64 65 72 20 6f 66 20 | 74 68 65 20 70 72 69 6e |rder of |the prin|
|000005e0| 74 0a 72 65 70 72 65 73 | 65 6e 74 61 74 69 6f 6e |t.repres|entation|
|000005f0| 29 20 61 6e 64 20 60 23 | 4e 23 27 20 69 6e 20 70 |) and `#|N#' in p|
|00000600| 6c 61 63 65 20 6f 66 20 | 65 61 63 68 20 73 75 62 |lace of |each sub|
|00000610| 73 65 71 75 65 6e 74 20 | 6f 63 63 75 72 72 65 6e |sequent |occurren|
|00000620| 63 65 2c 0a 77 68 65 72 | 65 20 4e 20 69 73 20 61 |ce,.wher|e N is a|
|00000630| 20 70 6f 73 69 74 69 76 | 65 20 64 65 63 69 6d 61 | positiv|e decima|
|00000640| 6c 20 69 6e 74 65 67 65 | 72 2e 0a 0a 54 68 65 72 |l intege|r...Ther|
|00000650| 65 20 69 73 20 6e 6f 20 | 77 61 79 20 74 6f 20 72 |e is no |way to r|
|00000660| 65 61 64 20 74 68 69 73 | 20 72 65 70 72 65 73 65 |ead this| represe|
|00000670| 6e 74 61 74 69 6f 6e 20 | 69 6e 20 73 74 61 6e 64 |ntation |in stand|
|00000680| 61 72 64 20 45 6d 61 63 | 73 2c 0a 62 75 74 20 69 |ard Emac|s,.but i|
|00000690| 66 20 79 6f 75 20 6e 65 | 65 64 20 74 6f 20 64 6f |f you ne|ed to do|
|000006a0| 20 73 6f 2c 20 74 72 79 | 20 74 68 65 20 63 6c 2d | so, try| the cl-|
|000006b0| 72 65 61 64 2e 65 6c 20 | 70 61 63 6b 61 67 65 2e |read.el |package.|
|000006c0| 22 29 0a 28 64 65 66 76 | 61 72 20 63 75 73 74 6f |").(defv|ar custo|
|000006d0| 6d 2d 70 72 69 6e 74 2d | 76 65 63 74 6f 72 73 20 |m-print-|vectors |
|000006e0| 6e 69 6c 20 22 5c 0a 2a | 4e 6f 6e 2d 6e 69 6c 20 |nil "\.*|Non-nil |
|000006f0| 69 66 20 70 72 69 6e 74 | 69 6e 67 20 6f 66 20 76 |if print|ing of v|
|00000700| 65 63 74 6f 72 73 20 73 | 68 6f 75 6c 64 20 6f 62 |ectors s|hould ob|
|00000710| 65 79 20 70 72 69 6e 74 | 2d 6c 65 76 65 6c 20 61 |ey print|-level a|
|00000720| 6e 64 20 70 72 69 6e 74 | 2d 6c 65 6e 67 74 68 2e |nd print|-length.|
|00000730| 0a 0a 46 6f 72 20 45 6d | 61 63 73 20 31 38 2c 20 |..For Em|acs 18, |
|00000740| 73 65 74 74 69 6e 67 20 | 70 72 69 6e 74 2d 6c 65 |setting |print-le|
|00000750| 76 65 6c 2c 20 6f 72 20 | 61 64 64 69 6e 67 20 63 |vel, or |adding c|
|00000760| 75 73 74 6f 6d 20 70 72 | 69 6e 74 20 6c 69 73 74 |ustom pr|int list|
|00000770| 20 6f 72 0a 76 65 63 74 | 6f 72 20 68 61 6e 64 6c | or.vect|or handl|
|00000780| 69 6e 67 20 77 69 6c 6c | 20 6d 61 6b 65 20 74 68 |ing will| make th|
|00000790| 69 73 20 68 61 70 70 65 | 6e 20 61 6e 79 77 61 79 |is happe|n anyway|
|000007a0| 2e 20 20 45 6d 61 63 73 | 20 31 39 20 6f 62 65 79 |. Emacs| 19 obey|
|000007b0| 73 0a 70 72 69 6e 74 2d | 6c 65 76 65 6c 2c 20 62 |s.print-|level, b|
|000007c0| 75 74 20 6e 6f 74 20 66 | 6f 72 20 76 65 63 74 6f |ut not f|or vecto|
|000007d0| 72 73 2e 22 29 0a 28 64 | 65 66 63 6f 6e 73 74 20 |rs.").(d|efconst |
|000007e0| 63 75 73 74 6f 6d 2d 70 | 72 69 6e 74 65 72 73 20 |custom-p|rinters |
|000007f0| 6e 69 6c 20 22 5c 0a 41 | 6e 20 61 6c 69 73 74 20 |nil "\.A|n alist |
|00000800| 66 6f 72 20 63 75 73 74 | 6f 6d 20 70 72 69 6e 74 |for cust|om print|
|00000810| 69 6e 67 20 6f 66 20 61 | 6e 79 20 74 79 70 65 2e |ing of a|ny type.|
|00000820| 0a 50 61 69 72 73 20 61 | 72 65 20 6f 66 20 74 68 |.Pairs a|re of th|
|00000830| 65 20 66 6f 72 6d 20 28 | 50 52 45 44 49 43 41 54 |e form (|PREDICAT|
|00000840| 45 20 2e 20 50 52 49 4e | 54 45 52 29 2e 20 20 49 |E . PRIN|TER). I|
|00000850| 66 20 50 52 45 44 49 43 | 41 54 45 20 69 73 20 74 |f PREDIC|ATE is t|
|00000860| 72 75 65 0a 66 6f 72 20 | 61 6e 20 6f 62 6a 65 63 |rue.for |an objec|
|00000870| 74 2c 20 74 68 65 6e 20 | 50 52 49 4e 54 45 52 20 |t, then |PRINTER |
|00000880| 69 73 20 63 61 6c 6c 65 | 64 20 77 69 74 68 20 74 |is calle|d with t|
|00000890| 68 65 20 6f 62 6a 65 63 | 74 2e 0a 50 52 49 4e 54 |he objec|t..PRINT|
|000008a0| 45 52 20 73 68 6f 75 6c | 64 20 70 72 69 6e 74 20 |ER shoul|d print |
|000008b0| 74 6f 20 60 73 74 61 6e | 64 61 72 64 2d 6f 75 74 |to `stan|dard-out|
|000008c0| 70 75 74 27 20 75 73 69 | 6e 67 20 63 75 73 74 2d |put' usi|ng cust-|
|000008d0| 70 72 69 6e 74 2d 6f 72 | 69 67 69 6e 61 6c 2d 70 |print-or|iginal-p|
|000008e0| 72 69 6e 63 0a 69 66 20 | 74 68 65 20 73 74 61 6e |rinc.if |the stan|
|000008f0| 64 61 72 64 20 70 72 69 | 6e 74 65 72 20 69 73 20 |dard pri|nter is |
|00000900| 73 75 66 66 69 63 69 65 | 6e 74 2c 20 6f 72 20 63 |sufficie|nt, or c|
|00000910| 75 73 74 2d 70 72 69 6e | 74 2d 70 72 69 6e 20 66 |ust-prin|t-prin f|
|00000920| 6f 72 20 63 6f 6d 70 6c | 65 78 20 74 68 69 6e 67 |or compl|ex thing|
|00000930| 73 2e 0a 54 68 65 20 50 | 52 49 4e 54 45 52 20 73 |s..The P|RINTER s|
|00000940| 68 6f 75 6c 64 20 72 65 | 74 75 72 6e 20 74 68 65 |hould re|turn the|
|00000950| 20 6f 62 6a 65 63 74 20 | 62 65 69 6e 67 20 70 72 | object |being pr|
|00000960| 69 6e 74 65 64 2e 0a 0a | 44 6f 6e 27 74 20 6d 6f |inted...|Don't mo|
|00000970| 64 69 66 79 20 74 68 69 | 73 20 76 61 72 69 61 62 |dify thi|s variab|
|00000980| 6c 65 20 64 69 72 65 63 | 74 6c 79 2e 20 20 55 73 |le direc|tly. Us|
|00000990| 65 20 60 61 64 64 2d 63 | 75 73 74 6f 6d 2d 70 72 |e `add-c|ustom-pr|
|000009a0| 69 6e 74 65 72 27 20 61 | 6e 64 0a 60 64 65 6c 65 |inter' a|nd.`dele|
|000009b0| 74 65 2d 63 75 73 74 6f | 6d 2d 70 72 69 6e 74 65 |te-custo|m-printe|
|000009c0| 72 27 22 29 0a 28 64 65 | 66 61 6c 69 61 73 20 27 |r'").(de|falias '|
|000009d0| 61 64 64 2d 63 75 73 74 | 6f 6d 2d 70 72 69 6e 74 |add-cust|om-print|
|000009e0| 65 72 20 23 5b 28 70 72 | 65 64 20 70 72 69 6e 74 |er #[(pr|ed print|
|000009f0| 65 72 29 20 22 08 09 42 | c2 08 0b 9e 0b 5c 22 42 |er) "..B|.....\"B|
|00000a00| 13 c4 20 87 22 20 5b 70 | 72 65 64 20 70 72 69 6e |.. ." [p|red prin|
|00000a10| 74 65 72 20 64 65 6c 71 | 20 63 75 73 74 6f 6d 2d |ter delq| custom-|
|00000a20| 70 72 69 6e 74 65 72 73 | 20 63 75 73 74 2d 70 72 |printers| cust-pr|
|00000a30| 69 6e 74 2d 75 70 64 61 | 74 65 2d 63 75 73 74 6f |int-upda|te-custo|
|00000a40| 6d 2d 70 72 69 6e 74 65 | 72 73 5d 20 34 20 22 5c |m-printe|rs] 4 "\|
|00000a50| 0a 41 64 64 20 61 20 70 | 61 69 72 20 6f 66 20 50 |.Add a p|air of P|
|00000a60| 52 45 44 49 43 41 54 45 | 20 61 6e 64 20 50 52 49 |REDICATE| and PRI|
|00000a70| 4e 54 45 52 20 74 6f 20 | 60 63 75 73 74 6f 6d 2d |NTER to |`custom-|
|00000a80| 70 72 69 6e 74 65 72 73 | 27 2e 0a 41 6e 79 20 70 |printers|'..Any p|
|00000a90| 61 69 72 20 74 68 61 74 | 20 68 61 73 20 74 68 65 |air that| has the|
|00000aa0| 20 73 61 6d 65 20 50 52 | 45 44 49 43 41 54 45 20 | same PR|EDICATE |
|00000ab0| 69 73 20 66 69 72 73 74 | 20 72 65 6d 6f 76 65 64 |is first| removed|
|00000ac0| 2e 22 5d 29 0a 28 64 65 | 66 61 6c 69 61 73 20 27 |."]).(de|falias '|
|00000ad0| 64 65 6c 65 74 65 2d 63 | 75 73 74 6f 6d 2d 70 72 |delete-c|ustom-pr|
|00000ae0| 69 6e 74 65 72 20 23 5b | 28 70 72 65 64 29 20 22 |inter #[|(pred) "|
|00000af0| c0 09 5c 6e 9e 5c 6e 5c | 22 12 c3 20 87 22 20 5b |..\n.\n\|".. ." [|
|00000b00| 64 65 6c 71 20 70 72 65 | 64 20 63 75 73 74 6f 6d |delq pre|d custom|
|00000b10| 2d 70 72 69 6e 74 65 72 | 73 20 63 75 73 74 2d 70 |-printer|s cust-p|
|00000b20| 72 69 6e 74 2d 75 70 64 | 61 74 65 2d 63 75 73 74 |rint-upd|ate-cust|
|00000b30| 6f 6d 2d 70 72 69 6e 74 | 65 72 73 5d 20 33 20 22 |om-print|ers] 3 "|
|00000b40| 5c 0a 44 65 6c 65 74 65 | 20 74 68 65 20 63 75 73 |\.Delete| the cus|
|00000b50| 74 6f 6d 20 70 72 69 6e | 74 65 72 20 61 73 73 6f |tom prin|ter asso|
|00000b60| 63 69 61 74 65 64 20 77 | 69 74 68 20 50 52 45 44 |ciated w|ith PRED|
|00000b70| 49 43 41 54 45 2e 22 5d | 29 0a 28 62 79 74 65 2d |ICATE."]|).(byte-|
|00000b80| 63 6f 64 65 20 22 c0 c1 | c2 5c 22 88 c0 c3 c4 5c |code "..|.\"....\|
|00000b90| 22 88 c0 c5 c6 5c 22 88 | c0 c7 c8 5c 22 88 c9 ca |"....\".|...\"...|
|00000ba0| 21 84 1f 00 cb c5 cc 5c | 22 88 c0 87 22 20 5b 64 |!......\|"..." [d|
|00000bb0| 65 66 61 6c 69 61 73 20 | 63 75 73 74 2d 70 72 69 |efalias |cust-pri|
|00000bc0| 6e 74 2d 75 73 65 2d 63 | 75 73 74 6f 6d 2d 70 72 |nt-use-c|ustom-pr|
|00000bd0| 69 6e 74 65 72 20 28 6c | 61 6d 62 64 61 20 28 6f |inter (l|ambda (o|
|00000be0| 62 6a 65 63 74 29 29 20 | 63 75 73 74 2d 70 72 69 |bject)) |cust-pri|
|00000bf0| 6e 74 2d 75 70 64 61 74 | 65 2d 63 75 73 74 6f 6d |nt-updat|e-custom|
|00000c00| 2d 70 72 69 6e 74 65 72 | 73 20 23 5b 6e 69 6c 20 |-printer|s #[nil |
|00000c10| 22 c0 c1 c2 c3 c4 c5 c6 | c7 0e 08 5c 22 c9 5c 22 |".......|...\".\"|
|00000c20| 42 45 5c 22 87 22 20 5b | 64 65 66 61 6c 69 61 73 |BE\"." [|defalias|
|00000c30| 20 63 75 73 74 2d 70 72 | 69 6e 74 2d 75 73 65 2d | cust-pr|int-use-|
|00000c40| 63 75 73 74 6f 6d 2d 70 | 72 69 6e 74 65 72 20 6c |custom-p|rinter l|
|00000c50| 61 6d 62 64 61 20 28 6f | 62 6a 65 63 74 29 20 63 |ambda (o|bject) c|
|00000c60| 6f 6e 64 20 61 70 70 65 | 6e 64 20 6d 61 70 63 61 |ond appe|nd mapca|
|00000c70| 72 20 23 5b 28 70 61 69 | 72 29 20 22 08 40 c1 42 |r #[(pai|r) ".@.B|
|00000c80| 08 41 c2 42 44 87 22 20 | 5b 70 61 69 72 20 28 6f |.A.BD." |[pair (o|
|00000c90| 62 6a 65 63 74 29 20 28 | 6f 62 6a 65 63 74 29 5d |bject) (|object)]|
|00000ca0| 20 33 5d 20 63 75 73 74 | 6f 6d 2d 70 72 69 6e 74 | 3] cust|om-print|
|00000cb0| 65 72 73 20 28 28 74 20 | 6e 69 6c 29 29 5d 20 39 |ers ((t |nil))] 9|
|00000cc0| 5d 20 63 75 73 74 2d 70 | 72 69 6e 74 2d 73 65 74 |] cust-p|rint-set|
|00000cd0| 2d 66 75 6e 63 74 69 6f | 6e 2d 63 65 6c 6c 20 23 |-functio|n-cell #|
|00000ce0| 5b 28 73 79 6d 62 6f 6c | 2d 70 61 69 72 29 20 22 |[(symbol|-pair) "|
|00000cf0| c0 09 40 09 41 40 4b 5c | 22 87 22 20 5b 64 65 66 |..@.A@K\|"." [def|
|00000d00| 61 6c 69 61 73 20 73 79 | 6d 62 6f 6c 2d 70 61 69 |alias sy|mbol-pai|
|00000d10| 72 5d 20 33 5d 20 63 75 | 73 74 2d 70 72 69 6e 74 |r] 3] cu|st-print|
|00000d20| 2d 6f 72 69 67 69 6e 61 | 6c 2d 70 72 69 6e 63 20 |-origina|l-princ |
|00000d30| 28 6c 61 6d 62 64 61 20 | 28 6f 62 6a 65 63 74 20 |(lambda |(object |
|00000d40| 26 6f 70 74 69 6f 6e 61 | 6c 20 73 74 72 65 61 6d |&optiona|l stream|
|00000d50| 29 29 20 66 62 6f 75 6e | 64 70 20 63 75 73 74 2d |)) fboun|dp cust-|
|00000d60| 70 72 69 6e 74 2d 6f 72 | 69 67 69 6e 61 6c 2d 70 |print-or|iginal-p|
|00000d70| 72 69 6e 31 20 6d 61 70 | 63 61 72 20 28 28 63 75 |rin1 map|car ((cu|
|00000d80| 73 74 2d 70 72 69 6e 74 | 2d 6f 72 69 67 69 6e 61 |st-print|-origina|
|00000d90| 6c 2d 70 72 69 6e 31 20 | 70 72 69 6e 31 29 20 28 |l-prin1 |prin1) (|
|00000da0| 63 75 73 74 2d 70 72 69 | 6e 74 2d 6f 72 69 67 69 |cust-pri|nt-origi|
|00000db0| 6e 61 6c 2d 70 72 69 6e | 63 20 70 72 69 6e 63 29 |nal-prin|c princ)|
|00000dc0| 20 28 63 75 73 74 2d 70 | 72 69 6e 74 2d 6f 72 69 | (cust-p|rint-ori|
|00000dd0| 67 69 6e 61 6c 2d 70 72 | 69 6e 74 20 70 72 69 6e |ginal-pr|int prin|
|00000de0| 74 29 20 28 63 75 73 74 | 2d 70 72 69 6e 74 2d 6f |t) (cust|-print-o|
|00000df0| 72 69 67 69 6e 61 6c 2d | 70 72 69 6e 31 2d 74 6f |riginal-|prin1-to|
|00000e00| 2d 73 74 72 69 6e 67 20 | 70 72 69 6e 31 2d 74 6f |-string |prin1-to|
|00000e10| 2d 73 74 72 69 6e 67 29 | 20 28 63 75 73 74 2d 70 |-string)| (cust-p|
|00000e20| 72 69 6e 74 2d 6f 72 69 | 67 69 6e 61 6c 2d 66 6f |rint-ori|ginal-fo|
|00000e30| 72 6d 61 74 20 66 6f 72 | 6d 61 74 29 20 28 63 75 |rmat for|mat) (cu|
|00000e40| 73 74 2d 70 72 69 6e 74 | 2d 6f 72 69 67 69 6e 61 |st-print|-origina|
|00000e50| 6c 2d 6d 65 73 73 61 67 | 65 20 6d 65 73 73 61 67 |l-messag|e messag|
|00000e60| 65 29 20 28 63 75 73 74 | 2d 70 72 69 6e 74 2d 6f |e) (cust|-print-o|
|00000e70| 72 69 67 69 6e 61 6c 2d | 65 72 72 6f 72 20 65 72 |riginal-|error er|
|00000e80| 72 6f 72 29 29 5d 20 33 | 29 0a 28 64 65 66 61 6c |ror))] 3|).(defal|
|00000e90| 69 61 73 20 27 63 75 73 | 74 6f 6d 2d 70 72 69 6e |ias 'cus|tom-prin|
|00000ea0| 74 2d 69 6e 73 74 61 6c | 6c 20 23 5b 6e 69 6c 20 |t-instal|l #[nil |
|00000eb0| 22 c0 c1 c2 5c 22 88 c3 | 87 22 20 5b 6d 61 70 63 |"...\"..|." [mapc|
|00000ec0| 61 72 20 63 75 73 74 2d | 70 72 69 6e 74 2d 73 65 |ar cust-|print-se|
|00000ed0| 74 2d 66 75 6e 63 74 69 | 6f 6e 2d 63 65 6c 6c 20 |t-functi|on-cell |
|00000ee0| 28 28 70 72 69 6e 31 20 | 63 75 73 74 6f 6d 2d 70 |((prin1 |custom-p|
|00000ef0| 72 69 6e 31 29 20 28 70 | 72 69 6e 63 20 63 75 73 |rin1) (p|rinc cus|
|00000f00| 74 6f 6d 2d 70 72 69 6e | 63 29 20 28 70 72 69 6e |tom-prin|c) (prin|
|00000f10| 74 20 63 75 73 74 6f 6d | 2d 70 72 69 6e 74 29 20 |t custom|-print) |
|00000f20| 28 70 72 69 6e 31 2d 74 | 6f 2d 73 74 72 69 6e 67 |(prin1-t|o-string|
|00000f30| 20 63 75 73 74 6f 6d 2d | 70 72 69 6e 31 2d 74 6f | custom-|prin1-to|
|00000f40| 2d 73 74 72 69 6e 67 29 | 20 28 66 6f 72 6d 61 74 |-string)| (format|
|00000f50| 20 63 75 73 74 6f 6d 2d | 66 6f 72 6d 61 74 29 20 | custom-|format) |
|00000f60| 28 6d 65 73 73 61 67 65 | 20 63 75 73 74 6f 6d 2d |(message| custom-|
|00000f70| 6d 65 73 73 61 67 65 29 | 20 28 65 72 72 6f 72 20 |message)| (error |
|00000f80| 63 75 73 74 6f 6d 2d 65 | 72 72 6f 72 29 29 20 74 |custom-e|rror)) t|
|00000f90| 5d 20 33 20 22 5c 0a 52 | 65 70 6c 61 63 65 20 70 |] 3 "\.R|eplace p|
|00000fa0| 72 69 6e 74 20 66 75 6e | 63 74 69 6f 6e 73 20 77 |rint fun|ctions w|
|00000fb0| 69 74 68 20 67 65 6e 65 | 72 61 6c 2c 20 63 75 73 |ith gene|ral, cus|
|00000fc0| 74 6f 6d 69 7a 61 62 6c | 65 2c 20 4c 69 73 70 20 |tomizabl|e, Lisp |
|00000fd0| 76 65 72 73 69 6f 6e 73 | 2e 0a 54 68 65 20 65 6d |versions|..The em|
|00000fe0| 61 63 73 20 73 75 62 72 | 6f 75 74 69 6e 65 73 20 |acs subr|outines |
|00000ff0| 61 72 65 20 73 61 76 65 | 64 20 61 77 61 79 2c 20 |are save|d away, |
|00001000| 61 6e 64 20 79 6f 75 20 | 63 61 6e 20 72 65 69 6e |and you |can rein|
|00001010| 73 74 61 6c 6c 20 74 68 | 65 6d 0a 62 79 20 72 75 |stall th|em.by ru|
|00001020| 6e 6e 69 6e 67 20 60 63 | 75 73 74 6f 6d 2d 70 72 |nning `c|ustom-pr|
|00001030| 69 6e 74 2d 75 6e 69 6e | 73 74 61 6c 6c 27 2e 22 |int-unin|stall'."|
|00001040| 20 6e 69 6c 5d 29 0a 28 | 64 65 66 61 6c 69 61 73 | nil]).(|defalias|
|00001050| 20 27 63 75 73 74 6f 6d | 2d 70 72 69 6e 74 2d 75 | 'custom|-print-u|
|00001060| 6e 69 6e 73 74 61 6c 6c | 20 23 5b 6e 69 6c 20 22 |ninstall| #[nil "|
|00001070| c0 c1 c2 5c 22 88 c3 87 | 22 20 5b 6d 61 70 63 61 |...\"...|" [mapca|
|00001080| 72 20 63 75 73 74 2d 70 | 72 69 6e 74 2d 73 65 74 |r cust-p|rint-set|
|00001090| 2d 66 75 6e 63 74 69 6f | 6e 2d 63 65 6c 6c 20 28 |-functio|n-cell (|
|000010a0| 28 70 72 69 6e 31 20 63 | 75 73 74 2d 70 72 69 6e |(prin1 c|ust-prin|
|000010b0| 74 2d 6f 72 69 67 69 6e | 61 6c 2d 70 72 69 6e 31 |t-origin|al-prin1|
|000010c0| 29 20 28 70 72 69 6e 63 | 20 63 75 73 74 2d 70 72 |) (princ| cust-pr|
|000010d0| 69 6e 74 2d 6f 72 69 67 | 69 6e 61 6c 2d 70 72 69 |int-orig|inal-pri|
|000010e0| 6e 63 29 20 28 70 72 69 | 6e 74 20 63 75 73 74 2d |nc) (pri|nt cust-|
|000010f0| 70 72 69 6e 74 2d 6f 72 | 69 67 69 6e 61 6c 2d 70 |print-or|iginal-p|
|00001100| 72 69 6e 74 29 20 28 70 | 72 69 6e 31 2d 74 6f 2d |rint) (p|rin1-to-|
|00001110| 73 74 72 69 6e 67 20 63 | 75 73 74 2d 70 72 69 6e |string c|ust-prin|
|00001120| 74 2d 6f 72 69 67 69 6e | 61 6c 2d 70 72 69 6e 31 |t-origin|al-prin1|
|00001130| 2d 74 6f 2d 73 74 72 69 | 6e 67 29 20 28 66 6f 72 |-to-stri|ng) (for|
|00001140| 6d 61 74 20 63 75 73 74 | 2d 70 72 69 6e 74 2d 6f |mat cust|-print-o|
|00001150| 72 69 67 69 6e 61 6c 2d | 66 6f 72 6d 61 74 29 20 |riginal-|format) |
|00001160| 28 6d 65 73 73 61 67 65 | 20 63 75 73 74 2d 70 72 |(message| cust-pr|
|00001170| 69 6e 74 2d 6f 72 69 67 | 69 6e 61 6c 2d 6d 65 73 |int-orig|inal-mes|
|00001180| 73 61 67 65 29 20 28 65 | 72 72 6f 72 20 63 75 73 |sage) (e|rror cus|
|00001190| 74 2d 70 72 69 6e 74 2d | 6f 72 69 67 69 6e 61 6c |t-print-|original|
|000011a0| 2d 65 72 72 6f 72 29 29 | 20 74 5d 20 33 20 22 5c |-error))| t] 3 "\|
|000011b0| 0a 52 65 73 65 74 20 70 | 72 69 6e 74 20 66 75 6e |.Reset p|rint fun|
|000011c0| 63 74 69 6f 6e 73 20 74 | 6f 20 74 68 65 69 72 20 |ctions t|o their |
|000011d0| 65 6d 61 63 73 20 73 75 | 62 72 6f 75 74 69 6e 65 |emacs su|broutine|
|000011e0| 73 2e 22 20 6e 69 6c 5d | 29 0a 28 64 65 66 61 6c |s." nil]|).(defal|
|000011f0| 69 61 73 20 28 71 75 6f | 74 65 20 63 75 73 74 6f |ias (quo|te custo|
|00001200| 6d 2d 70 72 69 6e 74 2d | 66 75 6e 63 73 2d 69 6e |m-print-|funcs-in|
|00001210| 73 74 61 6c 6c 65 64 2d | 70 29 20 28 71 75 6f 74 |stalled-|p) (quot|
|00001220| 65 20 63 75 73 74 6f 6d | 2d 70 72 69 6e 74 2d 69 |e custom|-print-i|
|00001230| 6e 73 74 61 6c 6c 65 64 | 2d 70 29 29 0a 28 64 65 |nstalled|-p)).(de|
|00001240| 66 61 6c 69 61 73 20 27 | 63 75 73 74 6f 6d 2d 70 |falias '|custom-p|
|00001250| 72 69 6e 74 2d 69 6e 73 | 74 61 6c 6c 65 64 2d 70 |rint-ins|talled-p|
|00001260| 20 23 5b 6e 69 6c 20 22 | c0 4b c1 4b 3d 87 22 20 | #[nil "|.K.K=." |
|00001270| 5b 63 75 73 74 6f 6d 2d | 70 72 69 6e 31 20 70 72 |[custom-|prin1 pr|
|00001280| 69 6e 31 5d 20 32 20 22 | 5c 0a 52 65 74 75 72 6e |in1] 2 "|\.Return|
|00001290| 20 74 20 69 66 20 63 75 | 73 74 6f 6d 2d 70 72 69 | t if cu|stom-pri|
|000012a0| 6e 74 20 69 73 20 63 75 | 72 72 65 6e 74 6c 79 20 |nt is cu|rrently |
|000012b0| 69 6e 73 74 61 6c 6c 65 | 64 2c 20 6e 69 6c 20 6f |installe|d, nil o|
|000012c0| 74 68 65 72 77 69 73 65 | 2e 22 5d 29 0a 28 62 79 |therwise|."]).(by|
|000012d0| 74 65 2d 63 6f 64 65 20 | 22 c0 c1 c2 c3 23 88 c0 |te-code |"....#..|
|000012e0| c4 c2 c5 23 88 c6 c1 c4 | 5c 22 87 22 20 5b 70 75 |...#....|\"." [pu|
|000012f0| 74 20 77 69 74 68 2d 63 | 75 73 74 6f 6d 2d 70 72 |t with-c|ustom-pr|
|00001300| 69 6e 74 2d 66 75 6e 63 | 73 20 65 64 65 62 75 67 |int-func|s edebug|
|00001310| 2d 66 6f 72 6d 2d 73 70 | 65 63 20 28 62 6f 64 79 |-form-sp|ec (body|
|00001320| 29 20 77 69 74 68 2d 63 | 75 73 74 6f 6d 2d 70 72 |) with-c|ustom-pr|
|00001330| 69 6e 74 20 28 62 6f 64 | 79 29 20 64 65 66 61 6c |int (bod|y) defal|
|00001340| 69 61 73 5d 20 34 29 0a | 28 64 65 66 61 6c 69 61 |ias] 4).|(defalia|
|00001350| 73 20 27 77 69 74 68 2d | 63 75 73 74 6f 6d 2d 70 |s 'with-|custom-p|
|00001360| 72 69 6e 74 20 27 28 6d | 61 63 72 6f 20 2e 20 23 |rint '(m|acro . #|
|00001370| 5b 28 26 72 65 73 74 20 | 62 6f 64 79 29 20 22 c0 |[(&rest |body) ".|
|00001380| c1 c2 0b 42 42 c4 42 42 | 87 22 20 5b 75 6e 77 69 |...BB.BB|." [unwi|
|00001390| 6e 64 2d 70 72 6f 74 65 | 63 74 20 70 72 6f 67 6e |nd-prote|ct progn|
|000013a0| 20 28 63 75 73 74 6f 6d | 2d 70 72 69 6e 74 2d 69 | (custom|-print-i|
|000013b0| 6e 73 74 61 6c 6c 29 20 | 62 6f 64 79 20 28 28 63 |nstall) |body ((c|
|000013c0| 75 73 74 6f 6d 2d 70 72 | 69 6e 74 2d 75 6e 69 6e |ustom-pr|int-unin|
|000013d0| 73 74 61 6c 6c 29 29 5d | 20 34 20 22 5c 0a 54 65 |stall))]| 4 "\.Te|
|000013e0| 6d 70 6f 72 61 72 69 6c | 79 20 69 6e 73 74 61 6c |mporaril|y instal|
|000013f0| 6c 20 74 68 65 20 63 75 | 73 74 6f 6d 20 70 72 69 |l the cu|stom pri|
|00001400| 6e 74 20 70 61 63 6b 61 | 67 65 20 77 68 69 6c 65 |nt packa|ge while|
|00001410| 20 65 78 65 63 75 74 69 | 6e 67 20 42 4f 44 59 2e | executi|ng BODY.|
|00001420| 22 5d 29 29 0a 28 64 65 | 66 61 6c 69 61 73 20 27 |"])).(de|falias '|
|00001430| 63 75 73 74 6f 6d 2d 70 | 72 69 6e 31 20 23 5b 28 |custom-p|rin1 #[(|
|00001440| 6f 62 6a 65 63 74 20 26 | 6f 70 74 69 6f 6e 61 6c |object &|optional|
|00001450| 20 73 74 72 65 61 6d 29 | 20 22 c0 09 5c 6e c3 23 | stream)| "..\n.#|
|00001460| 87 22 20 5b 63 75 73 74 | 2d 70 72 69 6e 74 2d 74 |." [cust|-print-t|
|00001470| 6f 70 2d 6c 65 76 65 6c | 20 6f 62 6a 65 63 74 20 |op-level| object |
|00001480| 73 74 72 65 61 6d 20 63 | 75 73 74 2d 70 72 69 6e |stream c|ust-prin|
|00001490| 74 2d 6f 72 69 67 69 6e | 61 6c 2d 70 72 69 6e 31 |t-origin|al-prin1|
|000014a0| 5d 20 34 20 22 5c 0a 4f | 75 74 70 75 74 20 74 68 |] 4 "\.O|utput th|
|000014b0| 65 20 70 72 69 6e 74 65 | 64 20 72 65 70 72 65 73 |e printe|d repres|
|000014c0| 65 6e 74 61 74 69 6f 6e | 20 6f 66 20 4f 42 4a 45 |entation| of OBJE|
|000014d0| 43 54 2c 20 61 6e 79 20 | 4c 69 73 70 20 6f 62 6a |CT, any |Lisp obj|
|000014e0| 65 63 74 2e 0a 51 75 6f | 74 69 6e 67 20 63 68 61 |ect..Quo|ting cha|
|000014f0| 72 61 63 74 65 72 73 20 | 61 72 65 20 70 72 69 6e |racters |are prin|
|00001500| 74 65 64 20 77 68 65 6e | 20 6e 65 65 64 65 64 20 |ted when| needed |
|00001510| 74 6f 20 6d 61 6b 65 20 | 6f 75 74 70 75 74 20 74 |to make |output t|
|00001520| 68 61 74 20 60 72 65 61 | 64 27 0a 63 61 6e 20 68 |hat `rea|d'.can h|
|00001530| 61 6e 64 6c 65 2c 20 77 | 68 65 6e 65 76 65 72 20 |andle, w|henever |
|00001540| 74 68 69 73 20 69 73 20 | 70 6f 73 73 69 62 6c 65 |this is |possible|
|00001550| 2e 0a 4f 75 74 70 75 74 | 20 73 74 72 65 61 6d 20 |..Output| stream |
|00001560| 69 73 20 53 54 52 45 41 | 4d 2c 20 6f 72 20 76 61 |is STREA|M, or va|
|00001570| 6c 75 65 20 6f 66 20 60 | 73 74 61 6e 64 61 72 64 |lue of `|standard|
|00001580| 2d 6f 75 74 70 75 74 27 | 20 28 77 68 69 63 68 20 |-output'| (which |
|00001590| 73 65 65 29 2e 0a 0a 54 | 68 69 73 20 69 73 20 74 |see)...T|his is t|
|000015a0| 68 65 20 63 75 73 74 6f | 6d 2d 70 72 69 6e 74 20 |he custo|m-print |
|000015b0| 72 65 70 6c 61 63 65 6d | 65 6e 74 20 66 6f 72 20 |replacem|ent for |
|000015c0| 74 68 65 20 73 74 61 6e | 64 61 72 64 20 60 70 72 |the stan|dard `pr|
|000015d0| 69 6e 31 27 2e 20 20 49 | 74 0a 75 73 65 73 20 74 |in1'. I|t.uses t|
|000015e0| 68 65 20 61 70 70 72 6f | 70 72 69 61 74 65 20 70 |he appro|priate p|
|000015f0| 72 69 6e 74 65 72 20 64 | 65 70 65 6e 64 69 6e 67 |rinter d|epending|
|00001600| 20 6f 6e 20 74 68 65 20 | 76 61 6c 75 65 73 20 6f | on the |values o|
|00001610| 66 20 60 70 72 69 6e 74 | 2d 6c 65 76 65 6c 27 0a |f `print|-level'.|
|00001620| 61 6e 64 20 60 70 72 69 | 6e 74 2d 63 69 72 63 6c |and `pri|nt-circl|
|00001630| 65 27 20 28 77 68 69 63 | 68 20 73 65 65 29 2e 22 |e' (whic|h see)."|
|00001640| 5d 29 0a 28 64 65 66 61 | 6c 69 61 73 20 27 63 75 |]).(defa|lias 'cu|
|00001650| 73 74 6f 6d 2d 70 72 69 | 6e 63 20 23 5b 28 6f 62 |stom-pri|nc #[(ob|
|00001660| 6a 65 63 74 20 26 6f 70 | 74 69 6f 6e 61 6c 20 73 |ject &op|tional s|
|00001670| 74 72 65 61 6d 29 20 22 | c0 09 5c 6e c3 23 87 22 |tream) "|..\n.#."|
|00001680| 20 5b 63 75 73 74 2d 70 | 72 69 6e 74 2d 74 6f 70 | [cust-p|rint-top|
|00001690| 2d 6c 65 76 65 6c 20 6f | 62 6a 65 63 74 20 73 74 |-level o|bject st|
|000016a0| 72 65 61 6d 20 63 75 73 | 74 2d 70 72 69 6e 74 2d |ream cus|t-print-|
|000016b0| 6f 72 69 67 69 6e 61 6c | 2d 70 72 69 6e 63 5d 20 |original|-princ] |
|000016c0| 34 20 22 5c 0a 4f 75 74 | 70 75 74 20 74 68 65 20 |4 "\.Out|put the |
|000016d0| 70 72 69 6e 74 65 64 20 | 72 65 70 72 65 73 65 6e |printed |represen|
|000016e0| 74 61 74 69 6f 6e 20 6f | 66 20 4f 42 4a 45 43 54 |tation o|f OBJECT|
|000016f0| 2c 20 61 6e 79 20 4c 69 | 73 70 20 6f 62 6a 65 63 |, any Li|sp objec|
|00001700| 74 2e 0a 4e 6f 20 71 75 | 6f 74 69 6e 67 20 63 68 |t..No qu|oting ch|
|00001710| 61 72 61 63 74 65 72 73 | 20 61 72 65 20 75 73 65 |aracters| are use|
|00001720| 64 3b 20 6e 6f 20 64 65 | 6c 69 6d 69 74 65 72 73 |d; no de|limiters|
|00001730| 20 61 72 65 20 70 72 69 | 6e 74 65 64 20 61 72 6f | are pri|nted aro|
|00001740| 75 6e 64 0a 74 68 65 20 | 63 6f 6e 74 65 6e 74 73 |und.the |contents|
|00001750| 20 6f 66 20 73 74 72 69 | 6e 67 73 2e 0a 4f 75 74 | of stri|ngs..Out|
|00001760| 70 75 74 20 73 74 72 65 | 61 6d 20 69 73 20 53 54 |put stre|am is ST|
|00001770| 52 45 41 4d 2c 20 6f 72 | 20 76 61 6c 75 65 20 6f |REAM, or| value o|
|00001780| 66 20 60 73 74 61 6e 64 | 61 72 64 2d 6f 75 74 70 |f `stand|ard-outp|
|00001790| 75 74 27 20 28 77 68 69 | 63 68 20 73 65 65 29 2e |ut' (whi|ch see).|
|000017a0| 0a 0a 54 68 69 73 20 69 | 73 20 74 68 65 20 63 75 |..This i|s the cu|
|000017b0| 73 74 6f 6d 2d 70 72 69 | 6e 74 20 72 65 70 6c 61 |stom-pri|nt repla|
|000017c0| 63 65 6d 65 6e 74 20 66 | 6f 72 20 74 68 65 20 73 |cement f|or the s|
|000017d0| 74 61 6e 64 61 72 64 20 | 60 70 72 69 6e 63 27 2e |tandard |`princ'.|
|000017e0| 22 5d 29 0a 28 64 65 66 | 61 6c 69 61 73 20 27 63 |"]).(def|alias 'c|
|000017f0| 75 73 74 6f 6d 2d 70 72 | 69 6e 31 2d 74 6f 2d 73 |ustom-pr|in1-to-s|
|00001800| 74 72 69 6e 67 20 23 5b | 28 6f 62 6a 65 63 74 29 |tring #[|(object)|
|00001810| 20 22 c0 c1 21 1a 8a 5c | 6e 71 88 c3 20 88 29 c4 | "..!..\|nq.. .).|
|00001820| 0d 5c 6e 5c 22 88 8a 5c | 6e 71 88 c6 20 2a 87 22 |.\n\"..\|nq.. *."|
|00001830| 20 5b 67 65 74 2d 62 75 | 66 66 65 72 2d 63 72 65 | [get-bu|ffer-cre|
|00001840| 61 74 65 20 22 20 2a 63 | 75 73 74 6f 6d 2d 70 72 |ate " *c|ustom-pr|
|00001850| 69 6e 74 2d 74 65 6d 70 | 2a 22 20 62 75 66 20 65 |int-temp|*" buf e|
|00001860| 72 61 73 65 2d 62 75 66 | 66 65 72 20 63 75 73 74 |rase-buf|fer cust|
|00001870| 6f 6d 2d 70 72 69 6e 31 | 20 6f 62 6a 65 63 74 20 |om-prin1| object |
|00001880| 62 75 66 66 65 72 2d 73 | 74 72 69 6e 67 5d 20 33 |buffer-s|tring] 3|
|00001890| 20 22 5c 0a 52 65 74 75 | 72 6e 20 61 20 73 74 72 | "\.Retu|rn a str|
|000018a0| 69 6e 67 20 63 6f 6e 74 | 61 69 6e 69 6e 67 20 74 |ing cont|aining t|
|000018b0| 68 65 20 70 72 69 6e 74 | 65 64 20 72 65 70 72 65 |he print|ed repre|
|000018c0| 73 65 6e 74 61 74 69 6f | 6e 20 6f 66 20 4f 42 4a |sentatio|n of OBJ|
|000018d0| 45 43 54 2c 0a 61 6e 79 | 20 4c 69 73 70 20 6f 62 |ECT,.any| Lisp ob|
|000018e0| 6a 65 63 74 2e 20 20 51 | 75 6f 74 69 6e 67 20 63 |ject. Q|uoting c|
|000018f0| 68 61 72 61 63 74 65 72 | 73 20 61 72 65 20 75 73 |haracter|s are us|
|00001900| 65 64 20 77 68 65 6e 20 | 6e 65 65 64 65 64 20 74 |ed when |needed t|
|00001910| 6f 20 6d 61 6b 65 20 6f | 75 74 70 75 74 0a 74 68 |o make o|utput.th|
|00001920| 61 74 20 60 72 65 61 64 | 27 20 63 61 6e 20 68 61 |at `read|' can ha|
|00001930| 6e 64 6c 65 2c 20 77 68 | 65 6e 65 76 65 72 20 74 |ndle, wh|enever t|
|00001940| 68 69 73 20 69 73 20 70 | 6f 73 73 69 62 6c 65 2e |his is p|ossible.|
|00001950| 0a 0a 54 68 69 73 20 69 | 73 20 74 68 65 20 63 75 |..This i|s the cu|
|00001960| 73 74 6f 6d 2d 70 72 69 | 6e 74 20 72 65 70 6c 61 |stom-pri|nt repla|
|00001970| 63 65 6d 65 6e 74 20 66 | 6f 72 20 74 68 65 20 73 |cement f|or the s|
|00001980| 74 61 6e 64 61 72 64 20 | 60 70 72 69 6e 31 2d 74 |tandard |`prin1-t|
|00001990| 6f 2d 73 74 72 69 6e 67 | 27 2e 22 5d 29 0a 28 64 |o-string|'."]).(d|
|000019a0| 65 66 61 6c 69 61 73 20 | 27 63 75 73 74 6f 6d 2d |efalias |'custom-|
|000019b0| 70 72 69 6e 74 20 23 5b | 28 6f 62 6a 65 63 74 20 |print #[|(object |
|000019c0| 26 6f 70 74 69 6f 6e 61 | 6c 20 73 74 72 65 61 6d |&optiona|l stream|
|000019d0| 29 20 22 c0 c1 5c 6e 5c | 22 88 c3 5c 66 5c 6e 5c |) "..\n\|"..\f\n\|
|000019e0| 22 88 c0 c1 5c 6e 5c 22 | 87 22 20 5b 63 75 73 74 |"...\n\"|." [cust|
|000019f0| 2d 70 72 69 6e 74 2d 6f | 72 69 67 69 6e 61 6c 2d |-print-o|riginal-|
|00001a00| 70 72 69 6e 63 20 22 5c | 6e 22 20 73 74 72 65 61 |princ "\|n" strea|
|00001a10| 6d 20 63 75 73 74 6f 6d | 2d 70 72 69 6e 31 20 6f |m custom|-prin1 o|
|00001a20| 62 6a 65 63 74 5d 20 33 | 20 22 5c 0a 4f 75 74 70 |bject] 3| "\.Outp|
|00001a30| 75 74 20 74 68 65 20 70 | 72 69 6e 74 65 64 20 72 |ut the p|rinted r|
|00001a40| 65 70 72 65 73 65 6e 74 | 61 74 69 6f 6e 20 6f 66 |epresent|ation of|
|00001a50| 20 4f 42 4a 45 43 54 2c | 20 77 69 74 68 20 6e 65 | OBJECT,| with ne|
|00001a60| 77 6c 69 6e 65 73 20 61 | 72 6f 75 6e 64 20 69 74 |wlines a|round it|
|00001a70| 2e 0a 51 75 6f 74 69 6e | 67 20 63 68 61 72 61 63 |..Quotin|g charac|
|00001a80| 74 65 72 73 20 61 72 65 | 20 70 72 69 6e 74 65 64 |ters are| printed|
|00001a90| 20 77 68 65 6e 20 6e 65 | 65 64 65 64 20 74 6f 20 | when ne|eded to |
|00001aa0| 6d 61 6b 65 20 6f 75 74 | 70 75 74 20 74 68 61 74 |make out|put that|
|00001ab0| 20 60 72 65 61 64 27 0a | 63 61 6e 20 68 61 6e 64 | `read'.|can hand|
|00001ac0| 6c 65 2c 20 77 68 65 6e | 65 76 65 72 20 74 68 69 |le, when|ever thi|
|00001ad0| 73 20 69 73 20 70 6f 73 | 73 69 62 6c 65 2e 0a 4f |s is pos|sible..O|
|00001ae0| 75 74 70 75 74 20 73 74 | 72 65 61 6d 20 69 73 20 |utput st|ream is |
|00001af0| 53 54 52 45 41 4d 2c 20 | 6f 72 20 76 61 6c 75 65 |STREAM, |or value|
|00001b00| 20 6f 66 20 60 73 74 61 | 6e 64 61 72 64 2d 6f 75 | of `sta|ndard-ou|
|00001b10| 74 70 75 74 27 20 28 77 | 68 69 63 68 20 73 65 65 |tput' (w|hich see|
|00001b20| 29 2e 0a 0a 54 68 69 73 | 20 69 73 20 74 68 65 20 |)...This| is the |
|00001b30| 63 75 73 74 6f 6d 2d 70 | 72 69 6e 74 20 72 65 70 |custom-p|rint rep|
|00001b40| 6c 61 63 65 6d 65 6e 74 | 20 66 6f 72 20 74 68 65 |lacement| for the|
|00001b50| 20 73 74 61 6e 64 61 72 | 64 20 60 70 72 69 6e 74 | standar|d `print|
|00001b60| 27 2e 22 5d 29 0a 28 64 | 65 66 61 6c 69 61 73 20 |'."]).(d|efalias |
|00001b70| 27 63 75 73 74 6f 6d 2d | 66 6f 72 6d 61 74 20 23 |'custom-|format #|
|00001b80| 5b 28 66 6d 74 20 26 72 | 65 73 74 20 61 72 67 73 |[(fmt &r|est args|
|00001b90| 29 20 22 c0 c1 5c 6e c3 | c4 0d 5c 22 23 87 22 20 |) "..\n.|..\"#." |
|00001ba0| 5b 61 70 70 6c 79 20 63 | 75 73 74 2d 70 72 69 6e |[apply c|ust-prin|
|00001bb0| 74 2d 6f 72 69 67 69 6e | 61 6c 2d 66 6f 72 6d 61 |t-origin|al-forma|
|00001bc0| 74 20 66 6d 74 20 6d 61 | 70 63 61 72 20 23 5b 28 |t fmt ma|pcar #[(|
|00001bd0| 61 72 67 29 20 22 08 3c | 84 10 00 c1 08 21 84 10 |arg) ".<|.....!..|
|00001be0| 00 08 39 83 14 00 c2 08 | 21 87 08 87 22 20 5b 61 |..9.....|!..." [a|
|00001bf0| 72 67 20 76 65 63 74 6f | 72 70 20 63 75 73 74 6f |rg vecto|rp custo|
|00001c00| 6d 2d 70 72 69 6e 31 2d | 74 6f 2d 73 74 72 69 6e |m-prin1-|to-strin|
|00001c10| 67 5d 20 32 5d 20 61 72 | 67 73 5d 20 36 20 22 5c |g] 2] ar|gs] 6 "\|
|00001c20| 0a 46 6f 72 6d 61 74 20 | 61 20 73 74 72 69 6e 67 |.Format |a string|
|00001c30| 20 6f 75 74 20 6f 66 20 | 61 20 63 6f 6e 74 72 6f | out of |a contro|
|00001c40| 6c 2d 73 74 72 69 6e 67 | 20 61 6e 64 20 61 72 67 |l-string| and arg|
|00001c50| 75 6d 65 6e 74 73 2e 20 | 20 0a 54 68 65 20 66 69 |uments. | .The fi|
|00001c60| 72 73 74 20 61 72 67 75 | 6d 65 6e 74 20 69 73 20 |rst argu|ment is |
|00001c70| 61 20 63 6f 6e 74 72 6f | 6c 20 73 74 72 69 6e 67 |a contro|l string|
|00001c80| 2e 20 20 49 74 2c 20 61 | 6e 64 20 73 75 62 73 65 |. It, a|nd subse|
|00001c90| 71 75 65 6e 74 20 61 72 | 67 75 6d 65 6e 74 73 0a |quent ar|guments.|
|00001ca0| 73 75 62 73 74 69 74 75 | 74 65 64 20 69 6e 74 6f |substitu|ted into|
|00001cb0| 20 69 74 2c 20 62 65 63 | 6f 6d 65 20 74 68 65 20 | it, bec|ome the |
|00001cc0| 76 61 6c 75 65 2c 20 77 | 68 69 63 68 20 69 73 20 |value, w|hich is |
|00001cd0| 61 20 73 74 72 69 6e 67 | 2e 0a 49 74 20 6d 61 79 |a string|..It may|
|00001ce0| 20 63 6f 6e 74 61 69 6e | 20 25 73 20 6f 72 20 25 | contain| %s or %|
|00001cf0| 64 20 6f 72 20 25 63 20 | 74 6f 20 73 75 62 73 74 |d or %c |to subst|
|00001d00| 69 74 75 74 65 20 73 75 | 63 63 65 73 73 69 76 65 |itute su|ccessive|
|00001d10| 20 66 6f 6c 6c 6f 77 69 | 6e 67 20 61 72 67 75 6d | followi|ng argum|
|00001d20| 65 6e 74 73 2e 0a 25 73 | 20 6d 65 61 6e 73 20 70 |ents..%s| means p|
|00001d30| 72 69 6e 74 20 61 6e 20 | 61 72 67 75 6d 65 6e 74 |rint an |argument|
|00001d40| 20 61 73 20 61 20 73 74 | 72 69 6e 67 2c 20 25 64 | as a st|ring, %d|
|00001d50| 20 6d 65 61 6e 73 20 70 | 72 69 6e 74 20 61 73 20 | means p|rint as |
|00001d60| 6e 75 6d 62 65 72 20 69 | 6e 20 64 65 63 69 6d 61 |number i|n decima|
|00001d70| 6c 2c 0a 25 63 20 6d 65 | 61 6e 73 20 70 72 69 6e |l,.%c me|ans prin|
|00001d80| 74 20 61 20 6e 75 6d 62 | 65 72 20 61 73 20 61 20 |t a numb|er as a |
|00001d90| 73 69 6e 67 6c 65 20 63 | 68 61 72 61 63 74 65 72 |single c|haracter|
|00001da0| 2e 0a 54 68 65 20 61 72 | 67 75 6d 65 6e 74 20 75 |..The ar|gument u|
|00001db0| 73 65 64 20 62 79 20 25 | 73 20 6d 75 73 74 20 62 |sed by %|s must b|
|00001dc0| 65 20 61 20 73 74 72 69 | 6e 67 20 6f 72 20 61 20 |e a stri|ng or a |
|00001dd0| 73 79 6d 62 6f 6c 3b 0a | 74 68 65 20 61 72 67 75 |symbol;.|the argu|
|00001de0| 6d 65 6e 74 20 75 73 65 | 64 20 62 79 20 25 64 2c |ment use|d by %d,|
|00001df0| 20 25 62 2c 20 25 6f 2c | 20 25 78 20 6f 72 20 25 | %b, %o,| %x or %|
|00001e00| 63 20 6d 75 73 74 20 62 | 65 20 61 20 6e 75 6d 62 |c must b|e a numb|
|00001e10| 65 72 2e 0a 0a 54 68 69 | 73 20 69 73 20 74 68 65 |er...Thi|s is the|
|00001e20| 20 63 75 73 74 6f 6d 2d | 70 72 69 6e 74 20 72 65 | custom-|print re|
|00001e30| 70 6c 61 63 65 6d 65 6e | 74 20 66 6f 72 20 74 68 |placemen|t for th|
|00001e40| 65 20 73 74 61 6e 64 61 | 72 64 20 60 66 6f 72 6d |e standa|rd `form|
|00001e50| 61 74 27 2e 20 20 49 74 | 0a 63 61 6c 6c 73 20 74 |at'. It|.calls t|
|00001e60| 68 65 20 65 6d 61 63 73 | 20 60 66 6f 72 6d 61 74 |he emacs| `format|
|00001e70| 27 20 61 66 74 65 72 20 | 66 69 72 73 74 20 6d 61 |' after |first ma|
|00001e80| 6b 69 6e 67 20 73 74 72 | 69 6e 67 73 20 66 6f 72 |king str|ings for|
|00001e90| 20 6c 69 73 74 2c 0a 76 | 65 63 74 6f 72 2c 20 6f | list,.v|ector, o|
|00001ea0| 72 20 73 79 6d 62 6f 6c | 20 61 72 67 73 2e 20 20 |r symbol| args. |
|00001eb0| 54 68 65 20 66 6f 72 6d | 61 74 20 73 70 65 63 69 |The form|at speci|
|00001ec0| 66 69 63 61 74 69 6f 6e | 20 66 6f 72 20 73 75 63 |fication| for suc|
|00001ed0| 68 20 61 72 67 73 20 73 | 68 6f 75 6c 64 0a 62 65 |h args s|hould.be|
|00001ee0| 20 60 25 73 27 20 69 6e | 20 61 6e 79 20 63 61 73 | `%s' in| any cas|
|00001ef0| 65 2c 20 73 6f 20 61 20 | 73 74 72 69 6e 67 20 61 |e, so a |string a|
|00001f00| 72 67 75 6d 65 6e 74 20 | 77 69 6c 6c 20 61 6c 73 |rgument |will als|
|00001f10| 6f 20 77 6f 72 6b 2e 20 | 20 54 68 65 20 73 74 72 |o work. | The str|
|00001f20| 69 6e 67 0a 69 73 20 67 | 65 6e 65 72 61 74 65 64 |ing.is g|enerated|
|00001f30| 20 77 69 74 68 20 60 63 | 75 73 74 6f 6d 2d 70 72 | with `c|ustom-pr|
|00001f40| 69 6e 31 2d 74 6f 2d 73 | 74 72 69 6e 67 27 2c 20 |in1-to-s|tring', |
|00001f50| 77 68 69 63 68 20 71 75 | 6f 74 65 73 20 71 75 6f |which qu|otes quo|
|00001f60| 74 61 62 6c 65 0a 63 68 | 61 72 61 63 74 65 72 73 |table.ch|aracters|
|00001f70| 2e 22 5d 29 0a 28 64 65 | 66 61 6c 69 61 73 20 27 |."]).(de|falias '|
|00001f80| 63 75 73 74 6f 6d 2d 6d | 65 73 73 61 67 65 20 23 |custom-m|essage #|
|00001f90| 5b 28 66 6d 74 20 26 72 | 65 73 74 20 61 72 67 73 |[(fmt &r|est args|
|00001fa0| 29 20 22 c0 c1 5c 6e c3 | c4 0d 5c 22 23 87 22 20 |) "..\n.|..\"#." |
|00001fb0| 5b 61 70 70 6c 79 20 63 | 75 73 74 2d 70 72 69 6e |[apply c|ust-prin|
|00001fc0| 74 2d 6f 72 69 67 69 6e | 61 6c 2d 6d 65 73 73 61 |t-origin|al-messa|
|00001fd0| 67 65 20 66 6d 74 20 6d | 61 70 63 61 72 20 23 5b |ge fmt m|apcar #[|
|00001fe0| 28 61 72 67 29 20 22 08 | 3c 84 10 00 c1 08 21 84 |(arg) ".|<.....!.|
|00001ff0| 10 00 08 39 83 14 00 c2 | 08 21 87 08 87 22 20 5b |...9....|.!..." [|
|00002000| 61 72 67 20 76 65 63 74 | 6f 72 70 20 63 75 73 74 |arg vect|orp cust|
|00002010| 6f 6d 2d 70 72 69 6e 31 | 2d 74 6f 2d 73 74 72 69 |om-prin1|-to-stri|
|00002020| 6e 67 5d 20 32 5d 20 61 | 72 67 73 5d 20 36 20 22 |ng] 2] a|rgs] 6 "|
|00002030| 5c 0a 50 72 69 6e 74 20 | 61 20 6f 6e 65 2d 6c 69 |\.Print |a one-li|
|00002040| 6e 65 20 6d 65 73 73 61 | 67 65 20 61 74 20 74 68 |ne messa|ge at th|
|00002050| 65 20 62 6f 74 74 6f 6d | 20 6f 66 20 74 68 65 20 |e bottom| of the |
|00002060| 73 63 72 65 65 6e 2e 0a | 54 68 65 20 66 69 72 73 |screen..|The firs|
|00002070| 74 20 61 72 67 75 6d 65 | 6e 74 20 69 73 20 61 20 |t argume|nt is a |
|00002080| 63 6f 6e 74 72 6f 6c 20 | 73 74 72 69 6e 67 2e 0a |control |string..|
|00002090| 49 74 20 6d 61 79 20 63 | 6f 6e 74 61 69 6e 20 25 |It may c|ontain %|
|000020a0| 73 20 6f 72 20 25 64 20 | 6f 72 20 25 63 20 74 6f |s or %d |or %c to|
|000020b0| 20 70 72 69 6e 74 20 73 | 75 63 63 65 73 73 69 76 | print s|uccessiv|
|000020c0| 65 20 66 6f 6c 6c 6f 77 | 69 6e 67 20 61 72 67 75 |e follow|ing argu|
|000020d0| 6d 65 6e 74 73 2e 0a 25 | 73 20 6d 65 61 6e 73 20 |ments..%|s means |
|000020e0| 70 72 69 6e 74 20 61 6e | 20 61 72 67 75 6d 65 6e |print an| argumen|
|000020f0| 74 20 61 73 20 61 20 73 | 74 72 69 6e 67 2c 20 25 |t as a s|tring, %|
|00002100| 64 20 6d 65 61 6e 73 20 | 70 72 69 6e 74 20 61 73 |d means |print as|
|00002110| 20 6e 75 6d 62 65 72 20 | 69 6e 20 64 65 63 69 6d | number |in decim|
|00002120| 61 6c 2c 0a 25 63 20 6d | 65 61 6e 73 20 70 72 69 |al,.%c m|eans pri|
|00002130| 6e 74 20 61 20 6e 75 6d | 62 65 72 20 61 73 20 61 |nt a num|ber as a|
|00002140| 20 73 69 6e 67 6c 65 20 | 63 68 61 72 61 63 74 65 | single |characte|
|00002150| 72 2e 0a 54 68 65 20 61 | 72 67 75 6d 65 6e 74 20 |r..The a|rgument |
|00002160| 75 73 65 64 20 62 79 20 | 25 73 20 6d 75 73 74 20 |used by |%s must |
|00002170| 62 65 20 61 20 73 74 72 | 69 6e 67 20 6f 72 20 61 |be a str|ing or a|
|00002180| 20 73 79 6d 62 6f 6c 3b | 0a 74 68 65 20 61 72 67 | symbol;|.the arg|
|00002190| 75 6d 65 6e 74 20 75 73 | 65 64 20 62 79 20 25 64 |ument us|ed by %d|
|000021a0| 20 6f 72 20 25 63 20 6d | 75 73 74 20 62 65 20 61 | or %c m|ust be a|
|000021b0| 20 6e 75 6d 62 65 72 2e | 0a 0a 54 68 69 73 20 69 | number.|..This i|
|000021c0| 73 20 74 68 65 20 63 75 | 73 74 6f 6d 2d 70 72 69 |s the cu|stom-pri|
|000021d0| 6e 74 20 72 65 70 6c 61 | 63 65 6d 65 6e 74 20 66 |nt repla|cement f|
|000021e0| 6f 72 20 74 68 65 20 73 | 74 61 6e 64 61 72 64 20 |or the s|tandard |
|000021f0| 60 6d 65 73 73 61 67 65 | 27 2e 0a 53 65 65 20 60 |`message|'..See `|
|00002200| 63 75 73 74 6f 6d 2d 66 | 6f 72 6d 61 74 27 20 66 |custom-f|ormat' f|
|00002210| 6f 72 20 74 68 65 20 64 | 65 74 61 69 6c 73 2e 22 |or the d|etails."|
|00002220| 5d 29 0a 28 64 65 66 61 | 6c 69 61 73 20 27 63 75 |]).(defa|lias 'cu|
|00002230| 73 74 6f 6d 2d 65 72 72 | 6f 72 20 23 5b 28 66 6d |stom-err|or #[(fm|
|00002240| 74 20 26 72 65 73 74 20 | 61 72 67 73 29 20 22 c0 |t &rest |args) ".|
|00002250| c1 c2 c3 5c 66 0d 23 43 | 5c 22 87 22 20 5b 73 69 |...\f.#C|\"." [si|
|00002260| 67 6e 61 6c 20 65 72 72 | 6f 72 20 61 70 70 6c 79 |gnal err|or apply|
|00002270| 20 63 75 73 74 6f 6d 2d | 66 6f 72 6d 61 74 20 66 | custom-|format f|
|00002280| 6d 74 20 61 72 67 73 5d | 20 36 20 22 5c 0a 53 69 |mt args]| 6 "\.Si|
|00002290| 67 6e 61 6c 20 61 6e 20 | 65 72 72 6f 72 2c 20 6d |gnal an |error, m|
|000022a0| 61 6b 69 6e 67 20 65 72 | 72 6f 72 20 6d 65 73 73 |aking er|ror mess|
|000022b0| 61 67 65 20 62 79 20 70 | 61 73 73 69 6e 67 20 61 |age by p|assing a|
|000022c0| 6c 6c 20 61 72 67 73 20 | 74 6f 20 60 66 6f 72 6d |ll args |to `form|
|000022d0| 61 74 27 2e 0a 0a 54 68 | 69 73 20 69 73 20 74 68 |at'...Th|is is th|
|000022e0| 65 20 63 75 73 74 6f 6d | 2d 70 72 69 6e 74 20 72 |e custom|-print r|
|000022f0| 65 70 6c 61 63 65 6d 65 | 6e 74 20 66 6f 72 20 74 |eplaceme|nt for t|
|00002300| 68 65 20 73 74 61 6e 64 | 61 72 64 20 60 65 72 72 |he stand|ard `err|
|00002310| 6f 72 27 2e 0a 53 65 65 | 20 60 63 75 73 74 6f 6d |or'..See| `custom|
|00002320| 2d 66 6f 72 6d 61 74 27 | 20 66 6f 72 20 74 68 65 |-format'| for the|
|00002330| 20 64 65 74 61 69 6c 73 | 2e 22 5d 29 0a 28 62 79 | details|."]).(by|
|00002340| 74 65 2d 63 6f 64 65 20 | 22 c0 c1 c2 5c 22 88 c0 |te-code |"...\"..|
|00002350| c3 c4 5c 22 88 c0 c5 c6 | 5c 22 88 c0 c7 c8 5c 22 |..\"....|\"....\"|
|00002360| 88 c0 c9 ca 5c 22 88 c0 | cb cc 5c 22 88 c0 cd ce |....\"..|..\"....|
|00002370| 5c 22 88 c0 cf d0 5c 22 | 88 c0 d1 d2 5c 22 88 c0 |\"....\"|....\"..|
|00002380| d3 d4 5c 22 88 d5 d6 21 | 87 22 20 5b 64 65 66 61 |..\"...!|." [defa|
|00002390| 6c 69 61 73 20 63 75 73 | 74 2d 70 72 69 6e 74 2d |lias cus|t-print-|
|000023a0| 6f 72 69 67 69 6e 61 6c | 2d 70 72 69 6e 74 65 72 |original|-printer|
|000023b0| 20 28 6c 61 6d 62 64 61 | 20 28 6f 62 6a 65 63 74 | (lambda| (object|
|000023c0| 29 29 20 63 75 73 74 2d | 70 72 69 6e 74 2d 6c 6f |)) cust-|print-lo|
|000023d0| 77 2d 6c 65 76 65 6c 2d | 70 72 69 6e 20 28 6c 61 |w-level-|prin (la|
|000023e0| 6d 62 64 61 20 28 6f 62 | 6a 65 63 74 29 29 20 63 |mbda (ob|ject)) c|
|000023f0| 75 73 74 2d 70 72 69 6e | 74 2d 70 72 69 6e 20 28 |ust-prin|t-prin (|
|00002400| 6c 61 6d 62 64 61 20 28 | 6f 62 6a 65 63 74 29 29 |lambda (|object))|
|00002410| 20 63 75 73 74 2d 70 72 | 69 6e 74 2d 74 6f 70 2d | cust-pr|int-top-|
|00002420| 6c 65 76 65 6c 20 23 5b | 28 6f 62 6a 65 63 74 20 |level #[|(object |
|00002430| 73 74 72 65 61 6d 20 65 | 6d 61 63 73 2d 70 72 69 |stream e|macs-pri|
|00002440| 6e 74 65 72 29 20 22 08 | 86 05 00 09 5c 6e 85 5c |nter) ".|....\n.\|
|00002450| 66 00 c3 5c 66 21 0d 86 | 11 00 c6 1e 07 1e 08 19 |f..\f!..|........|
|00002460| c9 ca 0e 0b 5c 22 88 c9 | cc 0e 0d 84 3a 00 0e 08 |....\"..|....:...|
|00002470| 84 3a 00 0d 84 3a 00 0e | 0e 83 3e 00 0d 84 3a 00 |.:...:..|..>...:.|
|00002480| 0e 0f 83 3e 00 d0 82 3f | 00 ca 5c 22 88 c9 d1 0e |...>...?|..\"....|
|00002490| 08 83 4c 00 d2 82 4d 00 | cc 5c 22 88 d1 5c 66 21 |..L...M.|.\"..\f!|
|000024a0| 88 5c 66 2b 87 22 20 5b | 73 74 72 65 61 6d 20 73 |.\f+." [|stream s|
|000024b0| 74 61 6e 64 61 72 64 2d | 6f 75 74 70 75 74 20 70 |tandard-|output p|
|000024c0| 72 69 6e 74 2d 63 69 72 | 63 6c 65 20 63 75 73 74 |rint-cir|cle cust|
|000024d0| 2d 70 72 69 6e 74 2d 70 | 72 65 70 72 6f 63 65 73 |-print-p|reproces|
|000024e0| 73 2d 63 69 72 63 6c 65 | 2d 74 72 65 65 20 6f 62 |s-circle|-tree ob|
|000024f0| 6a 65 63 74 20 70 72 69 | 6e 74 2d 6c 65 76 65 6c |ject pri|nt-level|
|00002500| 20 2d 31 20 63 75 73 74 | 2d 70 72 69 6e 74 2d 63 | -1 cust|-print-c|
|00002510| 75 72 72 65 6e 74 2d 6c | 65 76 65 6c 20 63 69 72 |urrent-l|evel cir|
|00002520| 63 6c 65 2d 74 61 62 6c | 65 20 64 65 66 61 6c 69 |cle-tabl|e defali|
|00002530| 61 73 20 63 75 73 74 2d | 70 72 69 6e 74 2d 6f 72 |as cust-|print-or|
|00002540| 69 67 69 6e 61 6c 2d 70 | 72 69 6e 74 65 72 20 65 |iginal-p|rinter e|
|00002550| 6d 61 63 73 2d 70 72 69 | 6e 74 65 72 20 63 75 73 |macs-pri|nter cus|
|00002560| 74 2d 70 72 69 6e 74 2d | 6c 6f 77 2d 6c 65 76 65 |t-print-|low-leve|
|00002570| 6c 2d 70 72 69 6e 20 63 | 75 73 74 6f 6d 2d 70 72 |l-prin c|ustom-pr|
|00002580| 69 6e 74 65 72 73 20 63 | 75 73 74 6f 6d 2d 70 72 |inters c|ustom-pr|
|00002590| 69 6e 74 2d 76 65 63 74 | 6f 72 73 20 70 72 69 6e |int-vect|ors prin|
|000025a0| 74 2d 6c 65 6e 67 74 68 | 20 63 75 73 74 2d 70 72 |t-length| cust-pr|
|000025b0| 69 6e 74 2d 70 72 69 6e | 74 2d 6f 62 6a 65 63 74 |int-prin|t-object|
|000025c0| 20 63 75 73 74 2d 70 72 | 69 6e 74 2d 70 72 69 6e | cust-pr|int-prin|
|000025d0| 20 63 75 73 74 2d 70 72 | 69 6e 74 2d 70 72 69 6e | cust-pr|int-prin|
|000025e0| 74 2d 63 69 72 63 75 6c | 61 72 5d 20 33 5d 20 63 |t-circul|ar] 3] c|
|000025f0| 75 73 74 2d 70 72 69 6e | 74 2d 70 72 69 6e 74 2d |ust-prin|t-print-|
|00002600| 6f 62 6a 65 63 74 20 23 | 5b 28 6f 62 6a 65 63 74 |object #|[(object|
|00002610| 29 20 22 08 84 08 00 c1 | 08 21 87 c2 08 21 83 10 |) ".....|.!...!..|
|00002620| 00 08 87 08 3a 83 19 00 | c3 08 21 87 c4 08 21 83 |....:...|..!...!.|
|00002630| 23 00 c5 08 21 87 c1 08 | 21 87 22 20 5b 6f 62 6a |#...!...|!." [obj|
|00002640| 65 63 74 20 63 75 73 74 | 2d 70 72 69 6e 74 2d 6f |ect cust|-print-o|
|00002650| 72 69 67 69 6e 61 6c 2d | 70 72 69 6e 74 65 72 20 |riginal-|printer |
|00002660| 63 75 73 74 2d 70 72 69 | 6e 74 2d 75 73 65 2d 63 |cust-pri|nt-use-c|
|00002670| 75 73 74 6f 6d 2d 70 72 | 69 6e 74 65 72 20 63 75 |ustom-pr|inter cu|
|00002680| 73 74 2d 70 72 69 6e 74 | 2d 6c 69 73 74 20 76 65 |st-print|-list ve|
|00002690| 63 74 6f 72 70 20 63 75 | 73 74 2d 70 72 69 6e 74 |ctorp cu|st-print|
|000026a0| 2d 76 65 63 74 6f 72 5d | 20 32 5d 20 63 75 73 74 |-vector]| 2] cust|
|000026b0| 2d 70 72 69 6e 74 2d 70 | 72 69 6e 74 2d 63 69 72 |-print-p|rint-cir|
|000026c0| 63 75 6c 61 72 20 23 5b | 28 6f 62 6a 65 63 74 29 |cular #[|(object)|
|000026d0| 20 22 08 09 9e 89 1a 83 | 38 00 5c 6e 41 89 1b c4 | "......|8.\nA...|
|000026e0| 56 83 1f 00 c5 c6 21 88 | c5 0b 21 88 c5 c6 21 82 |V.....!.|..!...!.|
|000026f0| 34 00 5c 6e 0b 5b a1 88 | c5 c6 21 88 c5 0b 5b 21 |4.\n.[..|..!...[!|
|00002700| 88 c5 c7 21 88 c8 08 21 | 29 82 3b 00 c8 08 21 29 |...!...!|).;...!)|
|00002710| 87 22 20 5b 6f 62 6a 65 | 63 74 20 63 69 72 63 6c |." [obje|ct circl|
|00002720| 65 2d 74 61 62 6c 65 20 | 74 61 67 20 69 64 20 30 |e-table |tag id 0|
|00002730| 20 63 75 73 74 2d 70 72 | 69 6e 74 2d 6f 72 69 67 | cust-pr|int-orig|
|00002740| 69 6e 61 6c 2d 70 72 69 | 6e 63 20 22 23 22 20 22 |inal-pri|nc "#" "|
|00002750| 3d 22 20 63 75 73 74 2d | 70 72 69 6e 74 2d 6c 6f |=" cust-|print-lo|
|00002760| 77 2d 6c 65 76 65 6c 2d | 70 72 69 6e 5d 20 33 5d |w-level-|prin] 3]|
|00002770| 20 63 75 73 74 2d 70 72 | 69 6e 74 2d 6c 69 73 74 | cust-pr|int-list|
|00002780| 20 23 5b 28 6c 69 73 74 | 29 20 22 08 c1 55 83 0d | #[(list|) "..U..|
|00002790| 00 c2 c3 21 88 82 8d 00 | 08 53 18 c2 c4 21 88 0d |...!....|.S...!..|
|000027a0| 86 19 00 c1 1e 06 c7 0e | 08 40 21 88 0e 08 41 89 |........|.@!...A.|
|000027b0| 16 08 83 2e 00 c2 c9 21 | 88 0e 06 53 16 06 0e 08 |.......!|...S....|
|000027c0| 83 78 00 0e 06 c1 55 84 | 78 00 0e 08 3c 83 5b 00 |.x....U.|x...<.[.|
|000027d0| 0e 08 0e 5c 6e 9e 84 5b | 00 c7 0e 08 40 21 88 0e |...\n..[|....@!..|
|000027e0| 08 41 16 08 82 67 00 c2 | cb 21 88 c7 0e 08 21 88 |.A...g..|.!....!.|
|000027f0| cc 16 08 0e 06 53 16 06 | 0e 08 83 33 00 c2 c9 21 |.....S..|...3...!|
|00002800| 88 82 33 00 0e 08 83 88 | 00 0e 06 c1 55 83 88 00 |..3.....|....U...|
|00002810| c2 cd 21 88 c2 ce 21 88 | 2a 0e 08 87 22 20 5b 63 |..!...!.|*..." [c|
|00002820| 75 73 74 2d 70 72 69 6e | 74 2d 63 75 72 72 65 6e |ust-prin|t-curren|
|00002830| 74 2d 6c 65 76 65 6c 20 | 30 20 63 75 73 74 2d 70 |t-level |0 cust-p|
|00002840| 72 69 6e 74 2d 6f 72 69 | 67 69 6e 61 6c 2d 70 72 |rint-ori|ginal-pr|
|00002850| 69 6e 63 20 22 23 22 20 | 22 28 22 20 70 72 69 6e |inc "#" |"(" prin|
|00002860| 74 2d 6c 65 6e 67 74 68 | 20 6c 65 6e 67 74 68 20 |t-length| length |
|00002870| 63 75 73 74 2d 70 72 69 | 6e 74 2d 70 72 69 6e 20 |cust-pri|nt-prin |
|00002880| 6c 69 73 74 20 22 20 22 | 20 63 69 72 63 6c 65 2d |list " "| circle-|
|00002890| 74 61 62 6c 65 20 22 2e | 20 22 20 6e 69 6c 20 22 |table ".| " nil "|
|000028a0| 2e 2e 2e 22 20 22 29 22 | 5d 20 33 5d 20 63 75 73 |..." ")"|] 3] cus|
|000028b0| 74 2d 70 72 69 6e 74 2d | 76 65 63 74 6f 72 20 23 |t-print-|vector #|
|000028c0| 5b 28 76 65 63 74 6f 72 | 29 20 22 08 c1 55 83 0d |[(vector|) "..U..|
|000028d0| 00 c2 c3 21 88 82 56 00 | 08 53 c1 5c 66 47 1d 1e |...!..V.|.S.\fG..|
|000028e0| 06 18 c2 c7 21 88 0e 08 | 83 24 00 0e 08 0d 5e 15 |....!...|.$....^.|
|000028f0| 0e 06 0d 57 83 45 00 c9 | 5c 66 0e 06 48 21 88 0e |...W.E..|\f..H!..|
|00002900| 06 54 89 16 06 5c 66 47 | 57 83 24 00 c2 ca 21 88 |.T...\fG|W.$...!.|
|00002910| 82 24 00 0e 06 5c 66 47 | 57 83 51 00 c2 cb 21 88 |.$...\fG|W.Q...!.|
|00002920| c2 cc 21 88 2b 5c 66 87 | 22 20 5b 63 75 73 74 2d |..!.+\f.|" [cust-|
|00002930| 70 72 69 6e 74 2d 63 75 | 72 72 65 6e 74 2d 6c 65 |print-cu|rrent-le|
|00002940| 76 65 6c 20 30 20 63 75 | 73 74 2d 70 72 69 6e 74 |vel 0 cu|st-print|
|00002950| 2d 6f 72 69 67 69 6e 61 | 6c 2d 70 72 69 6e 63 20 |-origina|l-princ |
|00002960| 22 23 22 20 76 65 63 74 | 6f 72 20 6c 65 6e 20 69 |"#" vect|or len i|
|00002970| 20 22 5b 22 20 70 72 69 | 6e 74 2d 6c 65 6e 67 74 | "[" pri|nt-lengt|
|00002980| 68 20 63 75 73 74 2d 70 | 72 69 6e 74 2d 70 72 69 |h cust-p|rint-pri|
|00002990| 6e 20 22 20 22 20 22 2e | 2e 2e 22 20 22 5d 22 5d |n " " ".|.." "]"]|
|000029a0| 20 34 5d 20 63 75 73 74 | 2d 70 72 69 6e 74 2d 70 | 4] cust|-print-p|
|000029b0| 72 65 70 72 6f 63 65 73 | 73 2d 63 69 72 63 6c 65 |reproces|s-circle|
|000029c0| 2d 74 72 65 65 20 23 5b | 28 6f 62 6a 65 63 74 29 |-tree #[|(object)|
|000029d0| 20 22 c0 43 19 c2 0b 21 | 88 09 89 41 9f a1 88 09 | ".C...!|...A....|
|000029e0| c4 1d 1e 06 0e 06 41 83 | 3e 00 0e 06 41 40 89 1e |......A.|>...A@..|
|000029f0| 07 41 83 33 00 0e 07 0d | a1 88 0d 53 15 0e 06 41 |.A.3....|...S...A|
|00002a00| 16 06 82 3a 00 0e 06 89 | 41 41 a1 88 29 82 12 00 |...:....|AA..)...|
|00002a10| 2a 09 41 29 87 22 20 5b | 6e 69 6c 20 63 69 72 63 |*.A)." [|nil circ|
|00002a20| 6c 65 2d 74 61 62 6c 65 | 20 63 75 73 74 2d 70 72 |le-table| cust-pr|
|00002a30| 69 6e 74 2d 77 61 6c 6b | 2d 63 69 72 63 6c 65 2d |int-walk|-circle-|
|00002a40| 74 72 65 65 20 6f 62 6a | 65 63 74 20 2d 31 20 69 |tree obj|ect -1 i|
|00002a50| 64 20 72 65 73 74 20 74 | 61 67 5d 20 33 5d 20 63 |d rest t|ag] 3] c|
|00002a60| 75 73 74 2d 70 72 69 6e | 74 2d 77 61 6c 6b 2d 63 |ust-prin|t-walk-c|
|00002a70| 69 72 63 6c 65 2d 74 72 | 65 65 20 23 5b 28 6f 62 |ircle-tr|ee #[(ob|
|00002a80| 6a 65 63 74 29 20 22 c0 | 89 19 1a 0b 85 81 00 0b |ject) ".|........|
|00002a90| a7 86 19 00 0b 39 85 19 | 00 0b c4 c5 0b 21 21 3d |.....9..|.....!!=|
|00002aa0| 89 12 3f 85 24 00 0b 0e | 06 41 9e 89 11 83 30 00 |..?.$...|.A....0.|
|00002ab0| 09 c7 a1 88 82 3e 00 5c | 6e 84 3e 00 0e 06 0b 43 |.....>.\|n.>....C|
|00002ac0| 0e 06 41 42 a1 88 09 83 | 46 00 c0 82 7b 00 0b 3a |..AB....|F...{..:|
|00002ad0| 83 55 00 c8 0b 40 21 88 | 0b 41 82 7b 00 c9 0b 21 |.U...@!.|.A.{...!|
|00002ae0| 85 7b 00 0b 47 ca 1e 0b | 1e 5c 66 0e 0b 0e 5c 66 |.{..G...|.\f...\f|
|00002af0| 57 85 7a 00 c8 0b 0e 0b | 48 21 88 0e 0b 54 89 16 |W.z.....|H!...T..|
|00002b00| 0b 82 64 00 2a 89 13 84 | 08 00 c0 2a 87 22 20 5b |..d.*...|...*." [|
|00002b10| 6e 69 6c 20 74 61 67 20 | 72 65 61 64 2d 65 71 75 |nil tag |read-equ|
|00002b20| 69 76 61 6c 65 6e 74 2d | 70 20 6f 62 6a 65 63 74 |ivalent-|p object|
|00002b30| 20 69 6e 74 65 72 6e 2d | 73 6f 66 74 20 73 79 6d | intern-|soft sym|
|00002b40| 62 6f 6c 2d 6e 61 6d 65 | 20 63 69 72 63 6c 65 2d |bol-name| circle-|
|00002b50| 74 61 62 6c 65 20 74 20 | 63 75 73 74 2d 70 72 69 |table t |cust-pri|
|00002b60| 6e 74 2d 77 61 6c 6b 2d | 63 69 72 63 6c 65 2d 74 |nt-walk-|circle-t|
|00002b70| 72 65 65 20 76 65 63 74 | 6f 72 70 20 30 20 6a 20 |ree vect|orp 0 j |
|00002b80| 69 5d 20 35 5d 20 70 72 | 6f 76 69 64 65 20 63 75 |i] 5] pr|ovide cu|
|00002b90| 73 74 2d 70 72 69 6e 74 | 5d 20 33 29 0a |st-print|] 3). |
+--------+-------------------------+-------------------------+--------+--------+