home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 2: Applications / Linux Cubed Series 2 - Applications.iso / editors / emacs / xemacs / xemacs-1.006 / xemacs-1 / lib / xemacs-19.13 / lisp / hyperbole / hpath.elc < prev    next >
Emacs Compiled Lisp  |  1995-08-29  |  14.3 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.

ConfidenceProgramDetectionMatch TypeSupport
1% dexvert Emacs Compiled Lisp (other/emacsCompiledLisp) magic Unsupported
1% dexvert Combustion 2 Particle Library (other/combustion2ParticleLibrary) ext Unsupported
100% file Emacs/XEmacs v19 byte-compiled Lisp data default
99% file data default
100% TrID Emacs/XEmacs byte-compiled Lisp (generic) default
100% xdgMime text/x-emacs-lisp default (weak)



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 63 74 68 6f 6d 70 40 |piled by| cthomp@|
|00000020| 77 69 6c 6c 6f 77 2e 63 | 73 2e 75 69 75 63 2e 65 |willow.c|s.uiuc.e|
|00000030| 64 75 20 6f 6e 20 54 75 | 65 20 41 75 67 20 32 39 |du on Tu|e Aug 29|
|00000040| 20 31 34 3a 35 32 3a 31 | 35 20 31 39 39 35 0a 3b | 14:52:1|5 1995.;|
|00000050| 3b 3b 20 66 72 6f 6d 20 | 66 69 6c 65 20 2f 65 78 |;; from |file /ex|
|00000060| 70 6f 72 74 2f 77 69 6c | 6c 6f 77 33 2f 78 65 6d |port/wil|low3/xem|
|00000070| 61 63 73 2d 31 39 2e 31 | 33 2d 72 65 6c 65 61 73 |acs-19.1|3-releas|
|00000080| 65 2f 65 64 69 74 6f 72 | 2f 6c 69 73 70 2f 68 79 |e/editor|/lisp/hy|
|00000090| 70 65 72 62 6f 6c 65 2f | 68 70 61 74 68 2e 65 6c |perbole/|hpath.el|
|000000a0| 0a 3b 3b 3b 20 65 6d 61 | 63 73 20 76 65 72 73 69 |.;;; ema|cs versi|
|000000b0| 6f 6e 20 31 39 2e 31 33 | 20 58 45 6d 61 63 73 20 |on 19.13| XEmacs |
|000000c0| 4c 75 63 69 64 2e 0a 3b | 3b 3b 20 62 79 74 65 63 |Lucid..;|;; bytec|
|000000d0| 6f 6d 70 20 76 65 72 73 | 69 6f 6e 20 32 2e 32 35 |omp vers|ion 2.25|
|000000e0| 3b 20 31 2d 53 65 70 2d | 39 34 2e 0a 3b 3b 3b 20 |; 1-Sep-|94..;;; |
|000000f0| 6f 70 74 69 6d 69 7a 61 | 74 69 6f 6e 20 69 73 20 |optimiza|tion is |
|00000100| 6f 6e 2e 0a 3b 3b 3b 20 | 74 68 69 73 20 66 69 6c |on..;;; |this fil|
|00000110| 65 20 75 73 65 73 20 6f | 70 63 6f 64 65 73 20 77 |e uses o|pcodes w|
|00000120| 68 69 63 68 20 64 6f 20 | 6e 6f 74 20 65 78 69 73 |hich do |not exis|
|00000130| 74 20 69 6e 20 45 6d 61 | 63 73 20 31 38 2e 0a 0a |t in Ema|cs 18...|
|00000140| 28 69 66 20 28 61 6e 64 | 20 28 62 6f 75 6e 64 70 |(if (and| (boundp|
|00000150| 20 27 65 6d 61 63 73 2d | 76 65 72 73 69 6f 6e 29 | 'emacs-|version)|
|00000160| 0a 09 20 28 6f 72 20 28 | 61 6e 64 20 28 62 6f 75 |.. (or (|and (bou|
|00000170| 6e 64 70 20 27 65 70 6f | 63 68 3a 3a 76 65 72 73 |ndp 'epo|ch::vers|
|00000180| 69 6f 6e 29 20 65 70 6f | 63 68 3a 3a 76 65 72 73 |ion) epo|ch::vers|
|00000190| 69 6f 6e 29 0a 09 20 20 | 20 20 20 28 73 74 72 69 |ion).. | (stri|
|000001a0| 6e 67 2d 6c 65 73 73 70 | 20 65 6d 61 63 73 2d 76 |ng-lessp| emacs-v|
|000001b0| 65 72 73 69 6f 6e 20 22 | 31 39 22 29 29 29 0a 20 |ersion "|19"))). |
|000001c0| 20 20 20 28 65 72 72 6f | 72 20 22 54 68 69 73 20 | (erro|r "This |
|000001d0| 66 69 6c 65 20 77 61 73 | 20 63 6f 6d 70 69 6c 65 |file was| compile|
|000001e0| 64 20 66 6f 72 20 45 6d | 61 63 73 20 31 39 2e 22 |d for Em|acs 19."|
|000001f0| 29 29 0a 0a 28 64 65 66 | 76 61 72 20 68 70 61 74 |))..(def|var hpat|
|00000200| 68 3a 72 66 63 20 22 2f | 61 6e 6f 6e 79 6d 6f 75 |h:rfc "/|anonymou|
|00000210| 73 40 64 73 2e 69 6e 74 | 65 72 6e 69 63 2e 6e 65 |s@ds.int|ernic.ne|
|00000220| 74 3a 72 66 63 2f 72 66 | 63 25 73 2e 74 78 74 22 |t:rfc/rf|c%s.txt"|
|00000230| 20 22 5c 0a 2a 53 74 72 | 69 6e 67 20 74 6f 20 62 | "\.*Str|ing to b|
|00000240| 65 20 75 73 65 64 20 69 | 6e 20 74 68 65 20 63 61 |e used i|n the ca|
|00000250| 6c 6c 3a 20 28 68 70 61 | 74 68 3a 72 66 63 20 72 |ll: (hpa|th:rfc r|
|00000260| 66 63 2d 6e 75 6d 29 0a | 74 6f 20 63 72 65 61 74 |fc-num).|to creat|
|00000270| 65 20 61 6e 20 70 61 74 | 68 20 74 6f 20 74 68 65 |e an pat|h to the|
|00000280| 20 52 46 43 20 64 6f 63 | 75 6d 65 6e 74 20 66 6f | RFC doc|ument fo|
|00000290| 72 20 27 72 66 63 2d 6e | 75 6d 27 2e 22 29 0a 28 |r 'rfc-n|um'.").(|
|000002a0| 64 65 66 76 61 72 20 68 | 70 61 74 68 3a 74 6d 70 |defvar h|path:tmp|
|000002b0| 2d 70 72 65 66 69 78 20 | 22 2f 74 6d 70 2f 72 65 |-prefix |"/tmp/re|
|000002c0| 6d 6f 74 65 2d 22 20 22 | 5c 0a 2a 50 61 74 68 6e |mote-" "|\.*Pathn|
|000002d0| 61 6d 65 20 70 72 65 66 | 69 78 20 74 6f 20 61 74 |ame pref|ix to at|
|000002e0| 74 61 63 68 20 74 6f 20 | 72 65 6d 6f 74 65 20 66 |tach to |remote f|
|000002f0| 69 6c 65 73 20 63 6f 70 | 69 65 64 20 6c 6f 63 61 |iles cop|ied loca|
|00000300| 6c 6c 79 20 66 6f 72 20 | 75 73 65 20 77 69 74 68 |lly for |use with|
|00000310| 20 65 78 74 65 72 6e 61 | 6c 20 76 69 65 77 65 72 | externa|l viewer|
|00000320| 73 2e 22 29 0a 28 66 73 | 65 74 20 27 68 70 61 74 |s.").(fs|et 'hpat|
|00000330| 68 3a 61 62 73 6f 6c 75 | 74 65 2d 74 6f 20 23 5b |h:absolu|te-to #[|
|00000340| 28 70 61 74 68 20 26 6f | 70 74 69 6f 6e 61 6c 20 |(path &o|ptional |
|00000350| 64 65 66 61 75 6c 74 2d | 64 69 72 73 29 20 22 08 |default-|dirs) ".|
|00000360| 3b ab 87 c1 08 c2 c3 23 | ac 82 08 87 0c ac 87 0d |;......#|........|
|00000370| c2 42 89 14 aa 90 0c 3b | ab 87 0c c2 42 89 14 aa |.B.....;|....B...|
|00000380| 85 0c 3c ac 85 c2 ac 82 | 08 87 c2 89 1e 06 1e 07 |..<.....|........|
|00000390| 0c ab a1 0e 07 ac 9d c8 | c9 0c 40 21 21 16 06 c8 |........|..@!!...|
|000003a0| 08 0e 06 5c 22 16 07 0c | 41 14 ca 0e 07 21 ac 61 |...\"...|A....!.a|
|000003b0| c2 16 07 aa 5c 5c 0e 07 | ae 81 08 2a 87 22 20 5b |....\\..|...*." [|
|000003c0| 70 61 74 68 20 68 70 61 | 74 68 3a 69 73 2d 70 20 |path hpa|th:is-p |
|000003d0| 6e 69 6c 20 74 20 64 65 | 66 61 75 6c 74 2d 64 69 |nil t de|fault-di|
|000003e0| 72 73 20 64 65 66 61 75 | 6c 74 2d 64 69 72 65 63 |rs defau|lt-direc|
|000003f0| 74 6f 72 79 20 64 69 72 | 20 72 74 6e 20 65 78 70 |tory dir| rtn exp|
|00000400| 61 6e 64 2d 66 69 6c 65 | 2d 6e 61 6d 65 20 66 69 |and-file|-name fi|
|00000410| 6c 65 2d 6e 61 6d 65 2d | 61 73 2d 64 69 72 65 63 |le-name-|as-direc|
|00000420| 74 6f 72 79 20 66 69 6c | 65 2d 65 78 69 73 74 73 |tory fil|e-exists|
|00000430| 2d 70 5d 20 34 20 22 5c | 0a 52 65 74 75 72 6e 73 |-p] 4 "\|.Returns|
|00000440| 20 50 41 54 48 20 61 73 | 20 61 6e 20 61 62 73 6f | PATH as| an abso|
|00000450| 6c 75 74 65 20 70 61 74 | 68 20 72 65 6c 61 74 69 |lute pat|h relati|
|00000460| 76 65 20 74 6f 20 6f 6e | 65 20 64 69 72 65 63 74 |ve to on|e direct|
|00000470| 6f 72 79 20 66 72 6f 6d | 20 6f 70 74 69 6f 6e 61 |ory from| optiona|
|00000480| 6c 20 44 45 46 41 55 4c | 54 2d 44 49 52 53 20 6f |l DEFAUL|T-DIRS o|
|00000490| 72 20 27 64 65 66 61 75 | 6c 74 2d 64 69 72 65 63 |r 'defau|lt-direc|
|000004a0| 74 6f 72 79 27 2e 0a 52 | 65 74 75 72 6e 73 20 50 |tory'..R|eturns P|
|000004b0| 41 54 48 20 75 6e 63 68 | 61 6e 67 65 64 20 77 68 |ATH unch|anged wh|
|000004c0| 65 6e 20 69 74 20 69 73 | 20 6e 6f 74 20 61 20 76 |en it is| not a v|
|000004d0| 61 6c 69 64 20 70 61 74 | 68 20 6f 72 20 77 68 65 |alid pat|h or whe|
|000004e0| 6e 20 44 45 46 41 55 4c | 54 2d 44 49 52 53 0a 69 |n DEFAUL|T-DIRS.i|
|000004f0| 73 20 69 6e 76 61 6c 69 | 64 2e 20 20 44 45 46 41 |s invali|d. DEFA|
|00000500| 55 4c 54 2d 44 49 52 53 | 20 77 68 65 6e 20 6e 6f |ULT-DIRS| when no|
|00000510| 6e 2d 6e 69 6c 20 6d 61 | 79 20 62 65 20 61 20 73 |n-nil ma|y be a s|
|00000520| 69 6e 67 6c 65 20 64 69 | 72 65 63 74 6f 72 79 20 |ingle di|rectory |
|00000530| 6f 72 20 61 20 6c 69 73 | 74 20 6f 66 0a 64 69 72 |or a lis|t of.dir|
|00000540| 65 63 74 6f 72 69 65 73 | 2e 20 20 54 68 65 20 66 |ectories|. The f|
|00000550| 69 72 73 74 20 6f 6e 65 | 20 69 6e 20 77 68 69 63 |irst one| in whic|
|00000560| 68 20 50 41 54 48 20 69 | 73 20 66 6f 75 6e 64 20 |h PATH i|s found |
|00000570| 69 73 20 75 73 65 64 2e | 22 5d 29 0a 28 66 73 65 |is used.|"]).(fse|
|00000580| 74 20 27 68 70 61 74 68 | 3a 61 6e 67 65 2d 66 74 |t 'hpath|:ange-ft|
|00000590| 70 2d 61 74 2d 70 20 23 | 5b 6e 69 6c 20 22 c0 20 |p-at-p #|[nil ". |
|000005a0| 85 93 00 c1 20 c2 1b 1c | 8a c5 c2 78 88 c6 20 ab |.... ...|...x.. .|
|000005b0| ad c7 94 c7 95 7b c8 98 | ad f1 c9 ca 94 ab 87 ca |.....{..|........|
|000005c0| 94 ca 95 7b aa 83 0c cb | 50 cc cd 94 cd 95 7b 21 |...{....|P.....{!|
|000005d0| ce cf 94 ad 85 cf 94 cf | 95 7b b0 05 aa cd d0 d1 |........|.{......|
|000005e0| 21 ab 87 d2 94 d2 95 7b | aa c1 d0 d3 21 ab 8a c9 |!......{|....!...|
|000005f0| 0c d2 94 d2 95 7b 51 aa | b2 d0 d4 21 ab 9a c7 94 |.....{Q.|...!....|
|00000600| c7 95 7b 89 13 ab 91 d5 | d6 ca 94 ca 95 7b 5c 22 |..{.....|.....{\"|
|00000610| ab 87 c9 0c cb 0b 52 aa | 93 d0 d7 21 ad 8e c7 94 |......R.|...!....|
|00000620| c7 95 7b 89 13 ad 85 c9 | 0c cb 0b 52 29 13 cc 0b |..{.....|...R)...|
|00000630| 21 2a 87 22 20 5b 68 70 | 61 74 68 3a 61 6e 67 65 |!*." [hp|ath:ange|
|00000640| 2d 66 74 70 2d 61 76 61 | 69 6c 61 62 6c 65 2d 70 |-ftp-ava|ilable-p|
|00000650| 20 68 70 61 74 68 3a 61 | 6e 67 65 2d 66 74 70 2d | hpath:a|nge-ftp-|
|00000660| 64 65 66 61 75 6c 74 2d | 75 73 65 72 20 6e 69 6c |default-|user nil|
|00000670| 20 70 61 74 68 20 75 73 | 65 72 20 22 5e 5b 20 09 | path us|er "^[ .|
|00000680| 5c 6e 5c 22 60 27 28 7b | 3c 22 20 68 70 61 74 68 |\n\"`'({|<" hpath|
|00000690| 3a 75 72 6c 2d 61 74 2d | 70 20 31 20 22 66 74 70 |:url-at-|p 1 "ftp|
|000006a0| 22 20 22 2f 22 20 32 20 | 22 40 22 20 68 70 61 74 |" "/" 2 |"@" hpat|
|000006b0| 68 3a 64 65 6c 65 74 65 | 2d 74 72 61 69 6c 65 72 |h:delete|-trailer|
|000006c0| 20 33 20 22 3a 22 20 35 | 20 6c 6f 6f 6b 69 6e 67 | 3 ":" 5| looking|
|000006d0| 2d 61 74 20 22 2f 3f 5b | 5e 2f 3a 40 20 09 5c 6e |-at "/?[|^/:@ .\n|
|000006e0| 0d 5c 22 60 27 5d 2b 40 | 5b 5e 2f 3a 40 20 09 5c |.\"`']+@|[^/:@ .\|
|000006f0| 6e 0d 5c 22 60 27 5d 2b | 3a 5b 5e 5d 40 20 09 5c |n.\"`']+|:[^]@ .\|
|00000700| 6e 0d 5c 22 60 27 29 7d | 5d 2a 22 20 30 20 22 40 |n.\"`')}|]*" 0 "@|
|00000710| 5b 5e 2f 3a 40 20 09 5c | 6e 0d 5c 22 60 27 5d 2b |[^/:@ .\|n.\"`']+|
|00000720| 3a 5b 5e 5d 40 20 09 5c | 6e 0d 5c 22 60 27 29 7d |:[^]@ .\|n.\"`')}|
|00000730| 5d 2a 22 20 22 2f 3f 5c | 5c 28 5c 5c 28 5b 5e 2f |]*" "/?\|\(\\([^/|
|00000740| 3a 40 20 09 5c 6e 0d 5c | 22 60 27 5d 2b 5c 5c 29 |:@ .\n.\|"`']+\\)|
|00000750| 3a 5b 5e 5d 40 3a 2c 20 | 09 5c 6e 0d 5c 22 60 27 |:[^]@:, |.\n.\"`'|
|00000760| 29 7d 5d 2a 5c 5c 29 5b | 5d 20 09 5c 6e 0d 2c 2e |)}]*\\)[|] .\n.,.|
|00000770| 5c 22 60 27 29 7d 5d 22 | 20 73 74 72 69 6e 67 2d |\"`')}]"| string-|
|00000780| 6d 61 74 63 68 20 22 5b | 5e 2e 5d 5c 5c 2e 5b 5e |match "[|^.]\\.[^|
|00000790| 2e 5d 22 20 22 2f 5c 5c | 28 5b 5e 2f 3a 40 20 09 |.]" "/\\|([^/:@ .|
|000007a0| 5c 6e 0d 5c 22 60 27 5d | 2b 3a 5b 5e 5d 40 3a 2c |\n.\"`']|+:[^]@:,|
|000007b0| 20 09 5c 6e 0d 5c 22 60 | 27 29 7d 5d 2a 5c 5c 29 | .\n.\"`|')}]*\\)|
|000007c0| 22 5d 20 36 20 22 5c 0a | 52 65 74 75 72 6e 73 20 |"] 6 "\.|Returns |
|000007d0| 61 6e 20 61 6e 67 65 2d | 66 74 70 20 70 61 74 68 |an ange-|ftp path|
|000007e0| 6e 61 6d 65 20 74 68 61 | 74 20 70 6f 69 6e 74 20 |name tha|t point |
|000007f0| 69 73 20 77 69 74 68 69 | 6e 20 6f 72 20 6e 69 6c |is withi|n or nil|
|00000800| 2e 0a 53 65 65 20 74 68 | 65 20 27 61 6e 67 65 2d |..See th|e 'ange-|
|00000810| 66 74 70 27 20 6f 72 20 | 27 65 66 73 27 20 45 6c |ftp' or |'efs' El|
|00000820| 69 73 70 20 70 61 63 6b | 61 67 65 73 20 66 6f 72 |isp pack|ages for|
|00000830| 20 70 61 74 68 6e 61 6d | 65 20 66 6f 72 6d 61 74 | pathnam|e format|
|00000840| 20 64 65 74 61 69 6c 73 | 2e 0a 41 6c 77 61 79 73 | details|..Always|
|00000850| 20 72 65 74 75 72 6e 73 | 20 6e 69 6c 20 69 66 20 | returns| nil if |
|00000860| 28 68 70 61 74 68 3a 61 | 6e 67 65 2d 66 74 70 2d |(hpath:a|nge-ftp-|
|00000870| 61 76 61 69 6c 61 62 6c | 65 2d 70 29 20 72 65 74 |availabl|e-p) ret|
|00000880| 75 72 6e 73 20 6e 69 6c | 2e 22 5d 29 0a 28 66 73 |urns nil|."]).(fs|
|00000890| 65 74 20 27 68 70 61 74 | 68 3a 61 6e 67 65 2d 66 |et 'hpat|h:ange-f|
|000008a0| 74 70 2d 70 20 23 5b 28 | 70 61 74 68 29 20 22 08 |tp-p #[(|path) ".|
|000008b0| 3b 85 b3 00 c1 c2 21 ac | 86 c1 c3 21 85 b3 00 c4 |;.....!.|...!....|
|000008c0| 20 c5 1e 06 1e 07 c8 08 | 21 ab b3 08 c9 94 c9 95 | .......|!.......|
|000008d0| 4f ca 98 85 ac 00 cb cc | 94 ab 88 08 cc 94 cc 95 |O.......|........|
|000008e0| 4f aa 84 0e 07 cd 50 ce | 08 cf 94 cf 95 4f 21 d0 |O.....P.|.....O!.|
|000008f0| d1 94 ad 86 08 d1 94 d1 | 95 4f b0 05 aa dd d2 d3 |........|.O......|
|00000900| 08 5c 22 ab 88 08 d4 94 | d4 95 4f aa cf d2 d5 08 |.\".....|..O.....|
|00000910| 5c 22 ab 8c cb 0e 07 08 | d4 94 d4 95 4f 51 aa bd |\"......|....OQ..|
|00000920| d2 d6 08 5c 22 ab 9f 08 | c9 94 c9 95 4f 89 16 06 |...\"...|....O...|
|00000930| ab 94 d2 d7 08 cc 94 cc | 95 4f 5c 22 ab 89 cb 0e |........|.O\"....|
|00000940| 07 cd 0e 06 52 aa 98 d2 | d8 08 5c 22 ad 92 08 c9 |....R...|..\"....|
|00000950| 94 c9 95 4f 89 16 06 ad | 87 cb 0e 07 cd 0e 06 52 |...O....|.......R|
|00000960| 16 06 ce 0e 06 21 2a 87 | 22 20 5b 70 61 74 68 20 |.....!*.|" [path |
|00000970| 66 65 61 74 75 72 65 70 | 20 61 6e 67 65 2d 66 74 |featurep| ange-ft|
|00000980| 70 20 65 66 73 20 68 70 | 61 74 68 3a 61 6e 67 65 |p efs hp|ath:ange|
|00000990| 2d 66 74 70 2d 64 65 66 | 61 75 6c 74 2d 75 73 65 |-ftp-def|ault-use|
|000009a0| 72 20 6e 69 6c 20 72 65 | 73 75 6c 74 20 75 73 65 |r nil re|sult use|
|000009b0| 72 20 68 70 61 74 68 3a | 75 72 6c 2d 70 20 31 20 |r hpath:|url-p 1 |
|000009c0| 22 66 74 70 22 20 22 2f | 22 20 32 20 22 40 22 20 |"ftp" "/|" 2 "@" |
|000009d0| 68 70 61 74 68 3a 64 65 | 6c 65 74 65 2d 74 72 61 |hpath:de|lete-tra|
|000009e0| 69 6c 65 72 20 33 20 22 | 3a 22 20 35 20 73 74 72 |iler 3 "|:" 5 str|
|000009f0| 69 6e 67 2d 6d 61 74 63 | 68 20 22 2f 3f 5b 5e 2f |ing-matc|h "/?[^/|
|00000a00| 3a 40 20 09 5c 6e 0d 5c | 22 60 27 5d 2b 40 5b 5e |:@ .\n.\|"`']+@[^|
|00000a10| 2f 3a 40 20 09 5c 6e 0d | 5c 22 60 27 5d 2b 3a 5b |/:@ .\n.|\"`']+:[|
|00000a20| 5e 5d 40 20 09 5c 6e 0d | 5c 22 60 27 29 7d 5d 2a |^]@ .\n.|\"`')}]*|
|00000a30| 22 20 30 20 22 40 5b 5e | 2f 3a 40 20 09 5c 6e 0d |" 0 "@[^|/:@ .\n.|
|00000a40| 5c 22 60 27 5d 2b 3a 5b | 5e 5d 40 20 09 5c 6e 0d |\"`']+:[|^]@ .\n.|
|00000a50| 5c 22 60 27 29 7d 5d 2a | 22 20 22 2f 3f 5c 5c 28 |\"`')}]*|" "/?\\(|
|00000a60| 5c 5c 28 5b 5e 2f 3a 40 | 20 09 5c 6e 0d 5c 22 60 |\\([^/:@| .\n.\"`|
|00000a70| 27 5d 2b 5c 5c 29 3a 5b | 5e 5d 40 3a 2c 20 09 5c |']+\\):[|^]@:, .\|
|00000a80| 6e 0d 5c 22 60 27 29 7d | 5d 2a 5c 5c 29 22 20 22 |n.\"`')}|]*\\)" "|
|00000a90| 5b 5e 2e 5d 5c 5c 2e 5b | 5e 2e 5d 22 20 22 2f 5c |[^.]\\.[|^.]" "/\|
|00000aa0| 5c 28 5b 5e 2f 3a 40 20 | 09 5c 6e 0d 5c 22 60 27 |\([^/:@ |.\n.\"`'|
|00000ab0| 5d 2b 3a 5b 5e 5d 40 3a | 2c 20 09 5c 6e 0d 5c 22 |]+:[^]@:|, .\n.\"|
|00000ac0| 60 27 29 7d 5d 2a 5c 5c | 29 22 5d 20 37 20 22 5c |`')}]*\\|)"] 7 "\|
|00000ad0| 0a 52 65 74 75 72 6e 73 | 20 6e 6f 6e 2d 6e 69 6c |.Returns| non-nil|
|00000ae0| 20 69 66 66 20 50 41 54 | 48 20 69 73 20 61 6e 20 | iff PAT|H is an |
|00000af0| 61 6e 67 65 2d 66 74 70 | 20 70 61 74 68 6e 61 6d |ange-ftp| pathnam|
|00000b00| 65 2e 0a 53 65 65 20 74 | 68 65 20 27 61 6e 67 65 |e..See t|he 'ange|
|00000b10| 2d 66 74 70 27 20 6f 72 | 20 27 65 66 73 27 20 45 |-ftp' or| 'efs' E|
|00000b20| 6c 69 73 70 20 70 61 63 | 6b 61 67 65 20 66 6f 72 |lisp pac|kage for|
|00000b30| 20 70 61 74 68 6e 61 6d | 65 20 66 6f 72 6d 61 74 | pathnam|e format|
|00000b40| 20 64 65 74 61 69 6c 73 | 2e 0a 41 6c 77 61 79 73 | details|..Always|
|00000b50| 20 72 65 74 75 72 6e 73 | 20 6e 69 6c 20 69 66 20 | returns| nil if |
|00000b60| 28 68 70 61 74 68 3a 61 | 6e 67 65 2d 66 74 70 2d |(hpath:a|nge-ftp-|
|00000b70| 61 76 61 69 6c 61 62 6c | 65 2d 70 29 20 72 65 74 |availabl|e-p) ret|
|00000b80| 75 72 6e 73 20 6e 69 6c | 2e 22 5d 29 0a 28 66 73 |urns nil|."]).(fs|
|00000b90| 65 74 20 27 68 70 61 74 | 68 3a 61 74 2d 70 20 23 |et 'hpat|h:at-p #|
|00000ba0| 5b 28 26 6f 70 74 69 6f | 6e 61 6c 20 74 79 70 65 |[(&optio|nal type|
|00000bb0| 20 6e 6f 6e 2d 65 78 69 | 73 74 29 20 22 c0 c1 c2 | non-exi|st) "...|
|00000bc0| c3 c4 c5 24 21 ae a0 c6 | 20 ae 9c c7 20 ab 82 c4 |...$!...| ... ...|
|00000bd0| 87 c0 c1 c8 89 5c 22 ae | 8a c1 c9 ca 5c 22 ae 84 |.....\".|....\"..|
|00000be0| c1 cb cc 5c 22 0e 0d 0e | 0e 23 87 22 20 5b 68 70 |...\"...|.#." [hp|
|00000bf0| 61 74 68 3a 69 73 2d 70 | 20 68 61 72 67 73 3a 64 |ath:is-p| hargs:d|
|00000c00| 65 6c 69 6d 69 74 65 64 | 20 22 66 69 6c 65 3a 2f |elimited| "file:/|
|00000c10| 2f 6c 6f 63 61 6c 68 6f | 73 74 22 20 22 5b 20 09 |/localho|st" "[ .|
|00000c20| 5c 6e 0d 5c 22 27 7d 5d | 22 20 6e 69 6c 20 74 20 |\n.\"'}]|" nil t |
|00000c30| 68 70 61 74 68 3a 61 6e | 67 65 2d 66 74 70 2d 61 |hpath:an|ge-ftp-a|
|00000c40| 74 2d 70 20 68 70 61 74 | 68 3a 77 77 77 2d 61 74 |t-p hpat|h:www-at|
|00000c50| 2d 70 20 22 5c 22 22 20 | 22 60 22 20 22 27 22 20 |-p "\"" |"`" "'" |
|00000c60| 22 40 66 69 6c 65 7b 22 | 20 22 7d 22 20 74 79 70 |"@file{"| "}" typ|
|00000c70| 65 20 6e 6f 6e 2d 65 78 | 69 73 74 5d 20 36 20 22 |e non-ex|ist] 6 "|
|00000c80| 5c 0a 52 65 74 75 72 6e | 73 20 64 65 6c 69 6d 69 |\.Return|s delimi|
|00000c90| 74 65 64 20 70 61 74 68 | 20 6f 72 20 6e 6f 6e 2d |ted path| or non-|
|00000ca0| 64 65 6c 69 6d 69 74 65 | 64 20 61 6e 67 65 2d 66 |delimite|d ange-f|
|00000cb0| 74 70 20 70 61 74 68 20 | 61 74 20 70 6f 69 6e 74 |tp path |at point|
|00000cc0| 2c 20 69 66 20 61 6e 79 | 2e 0a 57 6f 72 6c 64 20 |, if any|..World |
|00000cd0| 77 69 64 65 20 77 65 62 | 20 75 72 6c 73 20 61 72 |wide web| urls ar|
|00000ce0| 65 20 74 72 65 61 74 65 | 64 20 61 73 20 6e 6f 6e |e treate|d as non|
|00000cf0| 2d 70 61 74 68 73 20 73 | 6f 20 74 68 65 79 20 61 |-paths s|o they a|
|00000d00| 72 65 20 68 61 6e 64 6c | 65 64 20 65 6c 73 65 77 |re handl|ed elsew|
|00000d10| 68 65 72 65 2e 0a 44 65 | 6c 69 6d 69 74 65 72 73 |here..De|limiters|
|00000d20| 20 6d 61 79 20 62 65 3a | 20 20 64 6f 75 62 6c 65 | may be:| double|
|00000d30| 20 71 75 6f 74 65 73 2c | 20 6f 70 65 6e 20 61 6e | quotes,| open an|
|00000d40| 64 20 63 6c 6f 73 65 20 | 73 69 6e 67 6c 65 20 71 |d close |single q|
|00000d50| 75 6f 74 65 2c 20 6f 72 | 0a 54 65 78 69 6e 66 6f |uote, or|.Texinfo|
|00000d60| 20 66 69 6c 65 20 72 65 | 66 65 72 65 6e 63 65 73 | file re|ferences|
|00000d70| 2e 0a 49 66 20 6f 70 74 | 69 6f 6e 61 6c 20 54 59 |..If opt|ional TY|
|00000d80| 50 45 20 69 73 20 74 68 | 65 20 73 79 6d 62 6f 6c |PE is th|e symbol|
|00000d90| 20 27 66 69 6c 65 20 6f | 72 20 27 64 69 72 65 63 | 'file o|r 'direc|
|00000da0| 74 6f 72 79 2c 20 74 68 | 65 6e 20 6f 6e 6c 79 20 |tory, th|en only |
|00000db0| 74 68 61 74 20 70 61 74 | 68 20 74 79 70 65 20 69 |that pat|h type i|
|00000dc0| 73 0a 61 63 63 65 70 74 | 65 64 20 61 73 20 61 20 |s.accept|ed as a |
|00000dd0| 6d 61 74 63 68 2e 20 20 | 4f 6e 6c 79 20 6c 6f 63 |match. |Only loc|
|00000de0| 61 6c 6c 79 20 72 65 61 | 63 68 61 62 6c 65 20 70 |ally rea|chable p|
|00000df0| 61 74 68 73 20 61 72 65 | 20 63 68 65 63 6b 65 64 |aths are| checked|
|00000e00| 20 66 6f 72 20 65 78 69 | 73 74 65 6e 63 65 2e 0a | for exi|stence..|
|00000e10| 57 69 74 68 20 6f 70 74 | 69 6f 6e 61 6c 20 4e 4f |With opt|ional NO|
|00000e20| 4e 2d 45 58 49 53 54 2c | 20 6e 6f 6e 65 78 69 73 |N-EXIST,| nonexis|
|00000e30| 74 65 6e 74 20 6c 6f 63 | 61 6c 20 70 61 74 68 73 |tent loc|al paths|
|00000e40| 20 61 72 65 20 61 6c 6c | 6f 77 65 64 2e 0a 41 62 | are all|owed..Ab|
|00000e50| 73 6f 6c 75 74 65 20 70 | 61 74 68 6e 61 6d 65 73 |solute p|athnames|
|00000e60| 20 6d 75 73 74 20 62 65 | 67 69 6e 20 77 69 74 68 | must be|gin with|
|00000e70| 20 61 20 27 2f 27 20 6f | 72 20 27 7e 27 2e 20 20 | a '/' o|r '~'. |
|00000e80| 52 65 6c 61 74 69 76 65 | 20 70 61 74 68 6e 61 6d |Relative| pathnam|
|00000e90| 65 73 0a 6d 75 73 74 20 | 62 65 67 69 6e 20 77 69 |es.must |begin wi|
|00000ea0| 74 68 20 61 20 27 2e 2f | 27 20 6f 72 20 27 2e 2e |th a './|' or '..|
|00000eb0| 2f 27 20 74 6f 20 62 65 | 20 72 65 63 6f 67 6e 69 |/' to be| recogni|
|00000ec0| 7a 65 64 2e 22 5d 29 0a | 28 66 73 65 74 20 27 68 |zed."]).|(fset 'h|
|00000ed0| 70 61 74 68 3a 66 69 6e | 64 20 23 5b 28 66 69 6c |path:fin|d #[(fil|
|00000ee0| 65 6e 61 6d 65 20 26 6f | 70 74 69 6f 6e 61 6c 20 |ename &o|ptional |
|00000ef0| 6f 74 68 65 72 2d 77 69 | 6e 64 6f 77 2d 70 29 20 |other-wi|ndow-p) |
|00000f00| 22 c0 19 c2 0b 0c 5c 22 | ab 8a 0c c5 48 11 0c c5 |".....\"|....H...|
|00000f10| 95 c0 4f 14 c6 0c 21 14 | 09 ab a6 09 c7 3d ab 88 |..O...!.|.....=..|
|00000f20| 0e 08 c9 0c 5c 22 88 aa | 96 09 ca 3d ab 88 0e 08 |....\"..|...=....|
|00000f30| cb 0c 5c 22 88 aa 89 09 | cc 3d ab 84 cd 0c 21 88 |..\"....|.=....!.|
|00000f40| c0 aa b4 ce 0c 21 89 1e | 0f 3b ab 8a 0e 08 cb 0e |.....!..|.;......|
|00000f50| 0f 5c 22 88 c0 aa a0 d0 | 0e 0f 21 ab 88 0e 0f 0c |.\".....|..!.....|
|00000f60| 21 88 c0 aa 92 d1 0c 21 | 88 0e 12 ab 83 d3 aa 81 |!......!|........|
|00000f70| d4 d5 0c 21 21 88 d6 29 | 29 87 22 20 5b 6e 69 6c |...!!..)|)." [nil|
|00000f80| 20 6d 6f 64 69 66 69 65 | 72 20 73 74 72 69 6e 67 | modifie|r string|
|00000f90| 2d 6d 61 74 63 68 20 68 | 70 61 74 68 3a 70 72 65 |-match h|path:pre|
|00000fa0| 66 69 78 2d 72 65 67 65 | 78 70 20 66 69 6c 65 6e |fix-rege|xp filen|
|00000fb0| 61 6d 65 20 30 20 68 70 | 61 74 68 3a 73 75 62 73 |ame 0 hp|ath:subs|
|00000fc0| 74 69 74 75 74 65 2d 76 | 61 6c 75 65 20 33 33 20 |titute-v|alue 33 |
|00000fd0| 68 72 75 6c 65 3a 61 63 | 74 69 6f 6e 20 65 78 65 |hrule:ac|tion exe|
|00000fe0| 63 2d 73 68 65 6c 6c 2d | 63 6d 64 20 33 38 20 65 |c-shell-|cmd 38 e|
|00000ff0| 78 65 63 2d 77 69 6e 64 | 6f 77 2d 63 6d 64 20 34 |xec-wind|ow-cmd 4|
|00001000| 35 20 6c 6f 61 64 20 68 | 70 61 74 68 3a 66 69 6e |5 load h|path:fin|
|00001010| 64 2d 70 72 6f 67 72 61 | 6d 20 66 69 6e 64 2d 70 |d-progra|m find-p|
|00001020| 72 6f 67 72 61 6d 20 68 | 79 70 62 3a 66 75 6e 63 |rogram h|ypb:func|
|00001030| 74 69 6f 6e 70 20 68 70 | 61 74 68 3a 76 61 6c 69 |tionp hp|ath:vali|
|00001040| 64 61 74 65 20 6f 74 68 | 65 72 2d 77 69 6e 64 6f |date oth|er-windo|
|00001050| 77 2d 70 20 73 77 69 74 | 63 68 2d 74 6f 2d 62 75 |w-p swit|ch-to-bu|
|00001060| 66 66 65 72 2d 6f 74 68 | 65 72 2d 77 69 6e 64 6f |ffer-oth|er-windo|
|00001070| 77 20 73 77 69 74 63 68 | 2d 74 6f 2d 62 75 66 66 |w switch|-to-buff|
|00001080| 65 72 20 66 69 6e 64 2d | 66 69 6c 65 2d 6e 6f 73 |er find-|file-nos|
|00001090| 65 6c 65 63 74 20 74 5d | 20 34 20 22 5c 0a 45 64 |elect t]| 4 "\.Ed|
|000010a0| 69 74 20 66 69 6c 65 20 | 46 49 4c 45 4e 41 4d 45 |it file |FILENAME|
|000010b0| 20 75 73 69 6e 67 20 70 | 72 6f 67 72 61 6d 20 66 | using p|rogram f|
|000010c0| 72 6f 6d 20 68 70 61 74 | 68 3a 66 69 6e 64 2d 61 |rom hpat|h:find-a|
|000010d0| 6c 69 73 74 20 69 66 20 | 61 76 61 69 6c 61 62 6c |list if |availabl|
|000010e0| 65 2e 0a 4f 74 68 65 72 | 77 69 73 65 2c 20 73 77 |e..Other|wise, sw|
|000010f0| 69 74 63 68 20 74 6f 20 | 61 20 62 75 66 66 65 72 |itch to |a buffer|
|00001100| 20 76 69 73 69 74 69 6e | 67 20 66 69 6c 65 20 46 | visitin|g file F|
|00001110| 49 4c 45 4e 41 4d 45 2c | 20 63 72 65 61 74 69 6e |ILENAME,| creatin|
|00001120| 67 20 6f 6e 65 20 69 66 | 20 6e 6f 6e 65 0a 61 6c |g one if| none.al|
|00001130| 72 65 61 64 79 20 65 78 | 69 73 74 73 2e 0a 0a 46 |ready ex|ists...F|
|00001140| 49 4c 45 4e 41 4d 45 20 | 6d 61 79 20 73 74 61 72 |ILENAME |may star|
|00001150| 74 20 77 69 74 68 20 61 | 20 73 70 65 63 69 61 6c |t with a| special|
|00001160| 20 70 72 65 66 69 78 20 | 63 68 61 72 61 63 74 65 | prefix |characte|
|00001170| 72 20 77 68 69 63 68 20 | 69 73 0a 68 61 6e 64 6c |r which |is.handl|
|00001180| 65 64 20 61 73 20 66 6f | 6c 6c 6f 77 73 3a 0a 20 |ed as fo|llows:. |
|00001190| 20 21 66 69 6c 65 6e 61 | 6d 65 20 20 2d 20 65 78 | !filena|me - ex|
|000011a0| 65 63 75 74 65 20 61 73 | 20 61 20 6e 6f 6e 2d 77 |ecute as| a non-w|
|000011b0| 69 6e 64 6f 77 65 64 20 | 70 72 6f 67 72 61 6d 20 |indowed |program |
|000011c0| 77 69 74 68 69 6e 20 61 | 20 73 68 65 6c 6c 3b 0a |within a| shell;.|
|000011d0| 20 20 26 66 69 6c 65 6e | 61 6d 65 20 20 2d 20 65 | &filen|ame - e|
|000011e0| 78 65 63 75 74 65 20 61 | 73 20 61 20 77 69 6e 64 |xecute a|s a wind|
|000011f0| 6f 77 65 64 20 70 72 6f | 67 72 61 6d 3b 0a 20 20 |owed pro|gram;. |
|00001200| 2d 66 69 6c 65 6e 61 6d | 65 20 20 2d 20 6c 6f 61 |-filenam|e - loa|
|00001210| 64 20 61 73 20 61 6e 20 | 45 6d 61 63 73 20 4c 69 |d as an |Emacs Li|
|00001220| 73 70 20 70 72 6f 67 72 | 61 6d 2e 0a 0a 52 65 74 |sp progr|am...Ret|
|00001230| 75 72 6e 20 6e 6f 6e 2d | 6e 69 6c 20 69 66 66 20 |urn non-|nil iff |
|00001240| 66 69 6c 65 20 69 73 20 | 64 69 73 70 6c 61 79 65 |file is |displaye|
|00001250| 64 20 77 69 74 68 69 6e | 20 61 20 62 75 66 66 65 |d within| a buffe|
|00001260| 72 20 28 6e 6f 74 20 77 | 69 74 68 20 61 6e 20 65 |r (not w|ith an e|
|00001270| 78 74 65 72 6e 61 6c 0a | 70 72 6f 67 72 61 6d 29 |xternal.|program)|
|00001280| 2e 22 20 22 46 46 69 6e | 64 20 66 69 6c 65 3a 20 |." "FFin|d file: |
|00001290| 22 5d 29 0a 28 66 73 65 | 74 20 27 68 70 61 74 68 |"]).(fse|t 'hpath|
|000012a0| 3a 66 69 6e 64 2d 6f 74 | 68 65 72 2d 77 69 6e 64 |:find-ot|her-wind|
|000012b0| 6f 77 20 23 5b 28 66 69 | 6c 65 6e 61 6d 65 29 20 |ow #[(fi|lename) |
|000012c0| 22 c0 09 c2 5c 22 87 22 | 20 5b 68 70 61 74 68 3a |"...\"."| [hpath:|
|000012d0| 66 69 6e 64 20 66 69 6c | 65 6e 61 6d 65 20 74 5d |find fil|ename t]|
|000012e0| 20 33 20 22 5c 0a 45 64 | 69 74 20 66 69 6c 65 20 | 3 "\.Ed|it file |
|000012f0| 46 49 4c 45 4e 41 4d 45 | 2c 20 69 6e 20 61 6e 6f |FILENAME|, in ano|
|00001300| 74 68 65 72 20 77 69 6e | 64 6f 77 20 6f 72 20 75 |ther win|dow or u|
|00001310| 73 69 6e 67 20 70 72 6f | 67 72 61 6d 20 66 72 6f |sing pro|gram fro|
|00001320| 6d 20 68 70 61 74 68 3a | 66 69 6e 64 2d 61 6c 69 |m hpath:|find-ali|
|00001330| 73 74 2e 0a 4d 61 79 20 | 63 72 65 61 74 65 20 61 |st..May |create a|
|00001340| 20 6e 65 77 20 77 69 6e | 64 6f 77 2c 20 6f 72 20 | new win|dow, or |
|00001350| 72 65 75 73 65 20 61 6e | 20 65 78 69 73 74 69 6e |reuse an| existin|
|00001360| 67 20 6f 6e 65 3b 20 73 | 65 65 20 74 68 65 20 66 |g one; s|ee the f|
|00001370| 75 6e 63 74 69 6f 6e 20 | 64 69 73 70 6c 61 79 2d |unction |display-|
|00001380| 62 75 66 66 65 72 2e 0a | 0a 41 6c 74 65 72 6e 61 |buffer..|.Alterna|
|00001390| 74 69 76 65 6c 79 2c 20 | 46 49 4c 45 4e 41 4d 45 |tively, |FILENAME|
|000013a0| 20 6d 61 79 20 73 74 61 | 72 74 20 77 69 74 68 20 | may sta|rt with |
|000013b0| 61 20 70 72 65 66 69 78 | 20 63 68 61 72 61 63 74 |a prefix| charact|
|000013c0| 65 72 20 74 6f 20 69 6e | 64 69 63 61 74 65 20 73 |er to in|dicate s|
|000013d0| 70 65 63 69 61 6c 0a 68 | 61 6e 64 6c 69 6e 67 2e |pecial.h|andling.|
|000013e0| 20 20 53 65 65 20 64 6f | 63 75 6d 65 6e 74 61 74 | See do|cumentat|
|000013f0| 69 6f 6e 20 6f 66 20 60 | 68 70 61 74 68 3a 66 69 |ion of `|hpath:fi|
|00001400| 6e 64 27 20 66 6f 72 20 | 64 65 74 61 69 6c 73 2e |nd' for |details.|
|00001410| 0a 0a 52 65 74 75 72 6e | 20 6e 6f 6e 2d 6e 69 6c |..Return| non-nil|
|00001420| 20 69 66 66 20 66 69 6c | 65 20 69 73 20 64 69 73 | iff fil|e is dis|
|00001430| 70 6c 61 79 65 64 20 77 | 69 74 68 69 6e 20 61 20 |played w|ithin a |
|00001440| 62 75 66 66 65 72 2e 22 | 20 22 46 46 69 6e 64 20 |buffer."| "FFind |
|00001450| 66 69 6c 65 20 69 6e 20 | 6f 74 68 65 72 20 77 69 |file in |other wi|
|00001460| 6e 64 6f 77 3a 20 22 5d | 29 0a 28 66 73 65 74 20 |ndow: "]|).(fset |
|00001470| 27 68 70 61 74 68 3a 69 | 73 2d 70 20 23 5b 28 70 |'hpath:i|s-p #[(p|
|00001480| 61 74 68 20 26 6f 70 74 | 69 6f 6e 61 6c 20 74 79 |ath &opt|ional ty|
|00001490| 70 65 20 6e 6f 6e 2d 65 | 78 69 73 74 29 20 22 08 |pe non-e|xist) ".|
|000014a0| 19 08 3b 85 d5 00 c2 c3 | 08 5c 22 ab 89 08 c4 89 |..;.....|.\".....|
|000014b0| 94 4f 89 10 aa 81 c5 85 | d5 00 c2 0e 06 08 5c 22 |.O......|......\"|
|000014c0| ab 89 08 c4 95 c7 4f 89 | 10 aa 81 c5 85 d5 00 08 |......O.|........|
|000014d0| c8 98 ae 84 c2 c9 08 5c | 22 3f 85 d5 00 ca cb 08 |.......\|"?......|
|000014e0| 21 21 89 10 85 d5 00 c2 | cc 08 5c 22 ab 87 c2 cd |!!......|..\"....|
|000014f0| 08 5c 22 85 d5 00 c2 ce | 08 5c 22 ab 87 cf 08 21 |.\".....|.\"....!|
|00001500| 89 10 aa 81 c5 ad f3 c2 | d0 08 5c 22 3f ad ec d1 |........|..\"?...|
|00001510| 08 21 ab 86 c2 d2 08 5c | 22 ad e1 c2 d3 08 5c 22 |.!.....\|".....\"|
|00001520| 89 1e 14 ab 9d 0e 15 d6 | 3d ab 89 08 d7 c7 4f d8 |........|=.....O.|
|00001530| 98 3f aa c5 0e 15 d9 3d | ab c1 08 d7 c7 4f d8 98 |.?.....=|.....O..|
|00001540| aa b7 0e 1a ab 96 c2 cc | 08 5c 22 ac 95 db 08 21 |........|.\"....!|
|00001550| ac 90 dc 08 21 ac 8b c2 | dd 08 5c 22 ab 85 dc 08 |....!...|..\"....|
|00001560| 21 ad 9b 0e 15 d6 3d ab | 86 de 08 21 3f aa 8c 0e |!.....=.|...!?...|
|00001570| 15 d9 3d ab 85 de 08 21 | aa 81 c5 ad 81 09 29 29 |..=....!|......))|
|00001580| 87 22 20 5b 70 61 74 68 | 20 6f 72 69 67 2d 70 61 |." [path| orig-pa|
|00001590| 74 68 20 73 74 72 69 6e | 67 2d 6d 61 74 63 68 20 |th strin|g-match |
|000015a0| 22 5b 20 09 5c 6e 0d 5d | 2a 2c 22 20 30 20 74 20 |"[ .\n.]|*," 0 t |
|000015b0| 68 70 61 74 68 3a 70 72 | 65 66 69 78 2d 72 65 67 |hpath:pr|efix-reg|
|000015c0| 65 78 70 20 6e 69 6c 20 | 22 22 20 22 5c 5c 60 5c |exp nil |"" "\\`\|
|000015d0| 5c 73 20 5c 5c 7c 5c 5c | 73 20 5c 5c 27 22 20 68 |\s \\|\\|s \\'" h|
|000015e0| 62 75 74 3a 6b 65 79 2d | 74 6f 2d 6c 61 62 65 6c |but:key-|to-label|
|000015f0| 20 68 62 75 74 3a 6c 61 | 62 65 6c 2d 74 6f 2d 6b | hbut:la|bel-to-k|
|00001600| 65 79 20 22 5b 28 29 5d | 22 20 22 5c 5c 60 28 5b |ey "[()]|" "\\`([|
|00001610| 5e 20 09 5c 6e 0d 29 5d | 2b 29 5b 20 2a 41 2d 5a |^ .\n.)]|+)[ *A-Z|
|00001620| 61 2d 7a 30 2d 39 5d 22 | 20 22 5c 5c 24 7b 5b 5e |a-z0-9]"| "\\${[^|
|00001630| 7d 5d 2b 7d 22 20 68 70 | 61 74 68 3a 73 75 62 73 |}]+}" hp|ath:subs|
|00001640| 74 69 74 75 74 65 2d 76 | 61 6c 75 65 20 22 5b 09 |titute-v|alue "[.|
|00001650| 5c 6e 0d 5c 22 60 27 7b | 7d 7c 5c 5c 5d 22 20 68 |\n.\"`'{|}|\\]" h|
|00001660| 70 61 74 68 3a 77 77 77 | 2d 70 20 22 5e 66 74 70 |path:www|-p "^ftp|
|00001670| 3a 22 20 22 40 2e 2b 3a | 5c 5c 7c 5e 2f 2e 2b 3a |:" "@.+:|\\|^/.+:|
|00001680| 5c 5c 7c 2e 2b 3a 2f 22 | 20 72 65 6d 6f 74 65 2d |\\|.+:/"| remote-|
|00001690| 70 61 74 68 20 74 79 70 | 65 20 66 69 6c 65 20 2d |path typ|e file -|
|000016a0| 31 20 22 2f 22 20 64 69 | 72 65 63 74 6f 72 79 20 |1 "/" di|rectory |
|000016b0| 6e 6f 6e 2d 65 78 69 73 | 74 20 68 70 61 74 68 3a |non-exis|t hpath:|
|000016c0| 61 6e 67 65 2d 66 74 70 | 2d 70 20 66 69 6c 65 2d |ange-ftp|-p file-|
|000016d0| 65 78 69 73 74 73 2d 70 | 20 22 20 22 20 66 69 6c |exists-p| " " fil|
|000016e0| 65 2d 64 69 72 65 63 74 | 6f 72 79 2d 70 5d 20 34 |e-direct|ory-p] 4|
|000016f0| 20 22 5c 0a 52 65 74 75 | 72 6e 73 20 50 41 54 48 | "\.Retu|rns PATH|
|00001700| 20 69 66 20 50 41 54 48 | 20 69 73 20 61 20 55 6e | if PATH| is a Un|
|00001710| 69 78 20 70 61 74 68 2c | 20 65 6c 73 65 20 6e 69 |ix path,| else ni|
|00001720| 6c 2e 0a 49 66 20 6f 70 | 74 69 6f 6e 61 6c 20 54 |l..If op|tional T|
|00001730| 59 50 45 20 69 73 20 74 | 68 65 20 73 79 6d 62 6f |YPE is t|he symbo|
|00001740| 6c 20 27 66 69 6c 65 20 | 6f 72 20 27 64 69 72 65 |l 'file |or 'dire|
|00001750| 63 74 6f 72 79 2c 20 74 | 68 65 6e 20 6f 6e 6c 79 |ctory, t|hen only|
|00001760| 20 74 68 61 74 20 70 61 | 74 68 20 74 79 70 65 0a | that pa|th type.|
|00001770| 69 73 20 61 63 63 65 70 | 74 65 64 20 61 73 20 61 |is accep|ted as a|
|00001780| 20 6d 61 74 63 68 2e 20 | 20 54 68 65 20 65 78 69 | match. | The exi|
|00001790| 73 74 65 6e 63 65 20 6f | 66 20 74 68 65 20 70 61 |stence o|f the pa|
|000017a0| 74 68 20 69 73 20 63 68 | 65 63 6b 65 64 20 6f 6e |th is ch|ecked on|
|000017b0| 6c 79 20 66 6f 72 0a 6c | 6f 63 61 6c 6c 79 20 72 |ly for.l|ocally r|
|000017c0| 65 61 63 68 61 62 6c 65 | 20 70 61 74 68 73 20 28 |eachable| paths (|
|000017d0| 49 6e 66 6f 20 70 61 74 | 68 73 20 61 72 65 20 6e |Info pat|hs are n|
|000017e0| 6f 74 20 63 68 65 63 6b | 65 64 29 2e 20 20 53 69 |ot check|ed). Si|
|000017f0| 6e 67 6c 65 20 73 70 61 | 63 65 73 20 61 72 65 0a |ngle spa|ces are.|
|00001800| 70 65 72 6d 69 74 74 65 | 64 20 69 6e 20 6d 69 64 |permitte|d in mid|
|00001810| 64 6c 65 20 6f 66 20 65 | 78 69 73 74 69 6e 67 20 |dle of e|xisting |
|00001820| 70 61 74 68 6e 61 6d 65 | 73 2c 20 62 75 74 20 6e |pathname|s, but n|
|00001830| 6f 74 20 61 74 20 74 68 | 65 20 73 74 61 72 74 20 |ot at th|e start |
|00001840| 6f 72 20 65 6e 64 2e 20 | 20 54 61 62 73 0a 61 6e |or end. | Tabs.an|
|00001850| 64 20 6e 65 77 6c 69 6e | 65 73 20 61 72 65 20 63 |d newlin|es are c|
|00001860| 6f 6e 76 65 72 74 65 64 | 20 74 6f 20 73 70 61 63 |onverted| to spac|
|00001870| 65 20 62 65 66 6f 72 65 | 20 74 68 65 20 70 61 74 |e before| the pat|
|00001880| 68 6e 61 6d 65 20 69 73 | 20 63 68 65 63 6b 65 64 |hname is| checked|
|00001890| 2c 20 74 68 69 73 0a 6e | 6f 72 6d 61 6c 69 7a 65 |, this.n|ormalize|
|000018a0| 64 20 70 61 74 68 20 66 | 6f 72 6d 20 69 73 20 77 |d path f|orm is w|
|000018b0| 68 61 74 20 69 73 20 72 | 65 74 75 72 6e 65 64 20 |hat is r|eturned |
|000018c0| 66 6f 72 20 50 41 54 48 | 2e 20 20 57 69 74 68 20 |for PATH|. With |
|000018d0| 6f 70 74 69 6f 6e 61 6c | 20 4e 4f 4e 2d 45 58 49 |optional| NON-EXI|
|000018e0| 53 54 2c 0a 6e 6f 6e 65 | 78 69 73 74 65 6e 74 20 |ST,.none|xistent |
|000018f0| 6c 6f 63 61 6c 20 70 61 | 74 68 73 20 61 72 65 20 |local pa|ths are |
|00001900| 61 6c 6c 6f 77 65 64 2e | 22 5d 29 0a 28 66 73 65 |allowed.|"]).(fse|
|00001910| 74 20 27 68 70 61 74 68 | 3a 72 65 6c 61 74 69 76 |t 'hpath|:relativ|
|00001920| 65 2d 74 6f 20 23 5b 28 | 70 61 74 68 20 26 6f 70 |e-to #[(|path &op|
|00001930| 74 69 6f 6e 61 6c 20 64 | 65 66 61 75 6c 74 2d 64 |tional d|efault-d|
|00001940| 69 72 29 20 22 08 3b ab | 85 c1 08 21 ac 82 08 87 |ir) ".;.|...!....|
|00001950| c2 c3 0c ae 81 0d 21 21 | 14 c2 08 21 89 10 ad e3 |......!!|...!....|
|00001960| 0c ad e0 0c c6 98 ab 82 | 08 87 08 47 0c 47 5e 1e |........|...G.G^.|
|00001970| 07 08 c8 0e 07 4f 0c 98 | ab 89 c9 08 0e 07 ca 4f |.....O..|.......O|
|00001980| 50 aa bf cb cc 0c 21 21 | 14 08 47 0c 47 5e 16 07 |P.....!!|..G.G^..|
|00001990| 08 c8 0e 07 4f 0c 98 ab | 89 cd 08 0e 07 ca 4f 50 |....O...|......OP|
|000019a0| aa a0 cb cc 0c 21 21 14 | 08 47 0c 47 5e 16 07 08 |.....!!.|.G.G^...|
|000019b0| c8 0e 07 4f 0c 98 ab 89 | ce 08 0e 07 ca 4f 50 aa |...O....|.....OP.|
|000019c0| 81 08 29 87 22 20 5b 70 | 61 74 68 20 68 70 61 74 |..)." [p|ath hpat|
|000019d0| 68 3a 69 73 2d 70 20 65 | 78 70 61 6e 64 2d 66 69 |h:is-p e|xpand-fi|
|000019e0| 6c 65 2d 6e 61 6d 65 20 | 66 69 6c 65 2d 6e 61 6d |le-name |file-nam|
|000019f0| 65 2d 61 73 2d 64 69 72 | 65 63 74 6f 72 79 20 64 |e-as-dir|ectory d|
|00001a00| 65 66 61 75 6c 74 2d 64 | 69 72 20 64 65 66 61 75 |efault-d|ir defau|
|00001a10| 6c 74 2d 64 69 72 65 63 | 74 6f 72 79 20 22 2f 22 |lt-direc|tory "/"|
|00001a20| 20 65 6e 64 2d 64 69 72 | 20 30 20 22 2e 2f 22 20 | end-dir| 0 "./" |
|00001a30| 6e 69 6c 20 66 69 6c 65 | 2d 6e 61 6d 65 2d 64 69 |nil file|-name-di|
|00001a40| 72 65 63 74 6f 72 79 20 | 64 69 72 65 63 74 6f 72 |rectory |director|
|00001a50| 79 2d 66 69 6c 65 2d 6e | 61 6d 65 20 22 2e 2e 2f |y-file-n|ame "../|
|00001a60| 22 20 22 2e 2e 2f 2e 2e | 2f 22 5d 20 35 20 22 5c |" "../..|/"] 5 "\|
|00001a70| 0a 52 65 74 75 72 6e 73 | 20 50 41 54 48 20 72 65 |.Returns| PATH re|
|00001a80| 6c 61 74 69 76 65 20 74 | 6f 20 6f 70 74 69 6f 6e |lative t|o option|
|00001a90| 61 6c 20 44 45 46 41 55 | 4c 54 2d 44 49 52 20 6f |al DEFAU|LT-DIR o|
|00001aa0| 72 20 27 64 65 66 61 75 | 6c 74 2d 64 69 72 65 63 |r 'defau|lt-direc|
|00001ab0| 74 6f 72 79 27 2e 0a 52 | 65 74 75 72 6e 73 20 50 |tory'..R|eturns P|
|00001ac0| 41 54 48 20 75 6e 63 68 | 61 6e 67 65 64 20 77 68 |ATH unch|anged wh|
|00001ad0| 65 6e 20 69 74 20 69 73 | 20 6e 6f 74 20 61 20 76 |en it is| not a v|
|00001ae0| 61 6c 69 64 20 70 61 74 | 68 2e 22 5d 29 0a 28 66 |alid pat|h."]).(f|
|00001af0| 73 65 74 20 27 68 70 61 | 74 68 3a 72 66 63 20 23 |set 'hpa|th:rfc #|
|00001b00| 5b 28 72 66 63 2d 6e 75 | 6d 29 20 22 c0 09 5c 6e |[(rfc-nu|m) "..\n|
|00001b10| 5c 22 87 22 20 5b 66 6f | 72 6d 61 74 20 68 70 61 |\"." [fo|rmat hpa|
|00001b20| 74 68 3a 72 66 63 20 72 | 66 63 2d 6e 75 6d 5d 20 |th:rfc r|fc-num] |
|00001b30| 33 20 22 5c 0a 52 65 74 | 75 72 6e 20 70 61 74 68 |3 "\.Ret|urn path|
|00001b40| 6e 61 6d 65 20 74 6f 20 | 74 65 78 74 75 61 6c 20 |name to |textual |
|00001b50| 72 66 63 20 64 6f 63 75 | 6d 65 6e 74 20 69 6e 64 |rfc docu|ment ind|
|00001b60| 65 78 65 64 20 62 79 20 | 52 46 43 2d 4e 55 4d 2e |exed by |RFC-NUM.|
|00001b70| 0a 53 65 65 20 74 68 65 | 20 64 6f 63 75 6d 65 6e |.See the| documen|
|00001b80| 74 61 74 69 6f 6e 20 6f | 66 20 74 68 65 20 27 68 |tation o|f the 'h|
|00001b90| 70 61 74 68 3a 72 66 63 | 27 20 76 61 72 69 61 62 |path:rfc|' variab|
|00001ba0| 6c 65 2e 22 5d 29 0a 28 | 66 73 65 74 20 27 68 70 |le."]).(|fset 'hp|
|00001bb0| 61 74 68 3a 73 75 62 73 | 74 69 74 75 74 65 2d 76 |ath:subs|titute-v|
|00001bc0| 61 6c 75 65 20 23 5b 28 | 70 61 74 68 29 20 22 c0 |alue #[(|path) ".|
|00001bd0| c1 c2 0b c4 c5 24 21 87 | 22 20 5b 73 75 62 73 74 |.....$!.|" [subst|
|00001be0| 69 74 75 74 65 2d 69 6e | 2d 66 69 6c 65 2d 6e 61 |itute-in|-file-na|
|00001bf0| 6d 65 20 68 79 70 62 3a | 72 65 70 6c 61 63 65 2d |me hypb:|replace-|
|00001c00| 6d 61 74 63 68 2d 73 74 | 72 69 6e 67 20 22 5c 5c |match-st|ring "\\|
|00001c10| 24 7b 5b 5e 7d 5d 2b 7d | 22 20 70 61 74 68 20 23 |${[^}]+}|" path #|
|00001c20| 5b 28 73 74 72 29 20 22 | 08 09 5c 6e 4f 1b 08 09 |[(str) "|..\nO...|
|00001c30| c4 5c 5c 5c 6e 53 4f 1d | 08 5c 6e c6 4f 1e 07 c8 |.\\\nSO.|.\n.O...|
|00001c40| 0d 21 1e 09 ca 0e 07 21 | ab 87 0e 07 cb c6 4f 16 |.!.....!|......O.|
|00001c50| 07 0e 09 ab 8f cc 0e 09 | 21 ab 89 cd ce 0d 0e 07 |........|!.......|
|00001c60| 5c 22 21 aa 81 0b 2c 87 | 22 20 5b 70 61 74 68 20 |\"!...,.|" [path |
|00001c70| 6d 61 74 63 68 20 73 74 | 61 72 74 20 76 61 72 2d |match st|art var-|
|00001c80| 67 72 6f 75 70 20 32 20 | 76 61 72 2d 6e 61 6d 65 |group 2 |var-name|
|00001c90| 20 6e 69 6c 20 72 65 73 | 74 2d 6f 66 2d 70 61 74 | nil res|t-of-pat|
|00001ca0| 68 20 69 6e 74 65 72 6e | 2d 73 6f 66 74 20 73 79 |h intern|-soft sy|
|00001cb0| 6d 20 66 69 6c 65 2d 6e | 61 6d 65 2d 61 62 73 6f |m file-n|ame-abso|
|00001cc0| 6c 75 74 65 2d 70 20 31 | 20 62 6f 75 6e 64 70 20 |lute-p 1| boundp |
|00001cd0| 64 69 72 65 63 74 6f 72 | 79 2d 66 69 6c 65 2d 6e |director|y-file-n|
|00001ce0| 61 6d 65 20 68 70 61 74 | 68 3a 73 75 62 73 74 69 |ame hpat|h:substi|
|00001cf0| 74 75 74 65 2d 64 69 72 | 5d 20 34 5d 20 74 5d 20 |tute-dir|] 4] t] |
|00001d00| 36 20 22 5c 0a 53 75 62 | 73 74 69 74 75 74 65 73 |6 "\.Sub|stitutes|
|00001d10| 20 6d 61 74 63 68 69 6e | 67 20 76 61 6c 75 65 20 | matchin|g value |
|00001d20| 66 6f 72 20 45 6d 61 63 | 73 20 4c 69 73 70 20 76 |for Emac|s Lisp v|
|00001d30| 61 72 69 61 62 6c 65 73 | 20 61 6e 64 20 65 6e 76 |ariables| and env|
|00001d40| 69 72 6f 6e 6d 65 6e 74 | 20 76 61 72 69 61 62 6c |ironment| variabl|
|00001d50| 65 73 20 69 6e 20 50 41 | 54 48 2e 0a 52 65 74 75 |es in PA|TH..Retu|
|00001d60| 72 6e 73 20 70 61 74 68 | 20 77 69 74 68 20 76 61 |rns path| with va|
|00001d70| 72 69 61 62 6c 65 20 76 | 61 6c 75 65 73 20 73 75 |riable v|alues su|
|00001d80| 62 73 74 69 74 75 74 65 | 64 2e 22 5d 29 0a 28 66 |bstitute|d."]).(f|
|00001d90| 73 65 74 20 27 68 70 61 | 74 68 3a 73 75 62 73 74 |set 'hpa|th:subst|
|00001da0| 69 74 75 74 65 2d 76 61 | 72 20 23 5b 28 70 61 74 |itute-va|r #[(pat|
|00001db0| 68 29 20 22 08 3b ab 8b | c1 c2 08 5c 22 ab 85 c3 |h) ".;..|...\"...|
|00001dc0| 08 21 ac 82 08 87 c4 08 | 21 10 c5 0e 06 c5 89 89 |.!......|!.......|
|00001dd0| 1e 07 1e 08 1e 09 1e 5c | 6e 1e 0b 0e 5c 6e ab e3 |.......\|n...\n..|
|00001de0| 0e 0b ac df 0e 5c 6e 40 | 16 08 0e 5c 6e 41 16 5c |.....\n@|...\nA.\|
|00001df0| 6e cc 0e 08 21 ab 68 0e | 08 4a 89 16 07 3b ab 92 |n...!.h.|.J...;..|
|00001e00| cd 0e 08 0e 07 08 23 89 | 16 09 ab 53 0e 09 16 0b |......#.|...S....|
|00001e10| aa 4d 0e 07 ab 49 0e 07 | 3c ab a3 0e 07 ab 40 0e |.M...I..|<.....@.|
|00001e20| 0b ac 3c cd 0e 08 0e 07 | 40 08 23 89 16 09 ab 84 |..<.....|@.#.....|
|00001e30| 0e 09 16 0b 0e 07 41 89 | 16 07 ac 63 aa 21 ce cf |......A.|...c.!..|
|00001e40| 0e 08 5c 22 88 aa 19 0e | 0b ae 81 08 2d 87 22 20 |..\"....|....-." |
|00001e50| 5b 70 61 74 68 20 73 74 | 72 69 6e 67 2d 6d 61 74 |[path st|ring-mat|
|00001e60| 63 68 20 22 2f 22 20 68 | 70 61 74 68 3a 69 73 2d |ch "/" h|path:is-|
|00001e70| 70 20 68 70 61 74 68 3a | 73 79 6d 6c 69 6e 6b 2d |p hpath:|symlink-|
|00001e80| 72 65 66 65 72 65 6e 74 | 20 6e 69 6c 20 68 70 61 |referent| nil hpa|
|00001e90| 74 68 3a 76 61 72 69 61 | 62 6c 65 73 20 76 61 6c |th:varia|bles val|
|00001ea0| 20 76 61 72 20 72 65 73 | 75 6c 74 20 76 61 72 73 | var res|ult vars|
|00001eb0| 20 6e 65 77 2d 70 61 74 | 68 20 62 6f 75 6e 64 70 | new-pat|h boundp|
|00001ec0| 20 68 70 61 74 68 3a 73 | 75 62 73 74 69 74 75 74 | hpath:s|ubstitut|
|00001ed0| 65 2d 76 61 72 2d 6e 61 | 6d 65 20 65 72 72 6f 72 |e-var-na|me error|
|00001ee0| 20 22 28 68 70 61 74 68 | 3a 73 75 62 73 74 69 74 | "(hpath|:substit|
|00001ef0| 75 74 65 2d 76 61 72 29 | 3a 20 27 25 73 27 20 68 |ute-var)|: '%s' h|
|00001f00| 61 73 20 69 6e 76 61 6c | 69 64 20 76 61 6c 75 65 |as inval|id value|
|00001f10| 20 66 6f 72 20 68 70 61 | 74 68 3a 76 61 72 69 61 | for hpa|th:varia|
|00001f20| 62 6c 65 73 22 5d 20 36 | 20 22 5c 0a 52 65 70 6c |bles"] 6| "\.Repl|
|00001f30| 61 63 65 73 20 75 70 20 | 74 6f 20 6f 6e 65 20 6d |aces up |to one m|
|00001f40| 61 74 63 68 20 69 6e 20 | 50 41 54 48 20 77 69 74 |atch in |PATH wit|
|00001f50| 68 20 66 69 72 73 74 20 | 6d 61 74 63 68 69 6e 67 |h first |matching|
|00001f60| 20 76 61 72 69 61 62 6c | 65 20 66 72 6f 6d 20 27 | variabl|e from '|
|00001f70| 68 70 61 74 68 3a 76 61 | 72 69 61 62 6c 65 73 27 |hpath:va|riables'|
|00001f80| 2e 22 5d 29 0a 28 66 73 | 65 74 20 27 68 70 61 74 |."]).(fs|et 'hpat|
|00001f90| 68 3a 73 79 6d 6c 69 6e | 6b 2d 72 65 66 65 72 65 |h:symlin|k-refere|
|00001fa0| 6e 74 20 23 5b 28 6c 69 | 6e 6b 6e 61 6d 65 29 20 |nt #[(li|nkname) |
|00001fb0| 22 08 3b ad 86 c1 08 21 | ae 81 08 87 22 20 5b 6c |".;....!|...." [l|
|00001fc0| 69 6e 6b 6e 61 6d 65 20 | 66 69 6c 65 2d 73 79 6d |inkname |file-sym|
|00001fd0| 6c 69 6e 6b 2d 70 5d 20 | 32 20 22 5c 0a 52 65 74 |link-p] |2 "\.Ret|
|00001fe0| 75 72 6e 73 20 65 78 70 | 61 6e 64 65 64 20 66 69 |urns exp|anded fi|
|00001ff0| 6c 65 20 6f 72 20 64 69 | 72 65 63 74 6f 72 79 20 |le or di|rectory |
|00002000| 72 65 66 65 72 65 6e 74 | 20 6f 66 20 4c 49 4e 4b |referent| of LINK|
|00002010| 4e 41 4d 45 2e 0a 4c 49 | 4e 4b 4e 41 4d 45 20 73 |NAME..LI|NKNAME s|
|00002020| 68 6f 75 6c 64 20 6e 6f | 74 20 65 6e 64 20 77 69 |hould no|t end wi|
|00002030| 74 68 20 61 20 64 69 72 | 65 63 74 6f 72 79 20 64 |th a dir|ectory d|
|00002040| 65 6c 69 6d 69 74 65 72 | 2e 0a 52 65 74 75 72 6e |elimiter|..Return|
|00002050| 73 20 6e 69 6c 20 69 66 | 20 4c 49 4e 4b 4e 41 4d |s nil if| LINKNAM|
|00002060| 45 20 69 73 20 6e 6f 74 | 20 61 20 73 74 72 69 6e |E is not| a strin|
|00002070| 67 2e 0a 52 65 74 75 72 | 6e 73 20 4c 49 4e 4b 4e |g..Retur|ns LINKN|
|00002080| 41 4d 45 20 75 6e 63 68 | 61 6e 67 65 64 20 69 66 |AME unch|anged if|
|00002090| 20 69 74 20 69 73 20 6e | 6f 74 20 61 20 73 79 6d | it is n|ot a sym|
|000020a0| 62 6f 6c 69 63 20 6c 69 | 6e 6b 20 62 75 74 20 69 |bolic li|nk but i|
|000020b0| 73 20 61 20 70 61 74 68 | 6e 61 6d 65 2e 22 5d 29 |s a path|name."])|
|000020c0| 0a 28 66 73 65 74 20 27 | 68 70 61 74 68 3a 73 79 |.(fset '|hpath:sy|
|000020d0| 6d 6c 69 6e 6b 2d 65 78 | 70 61 6e 64 20 23 5b 28 |mlink-ex|pand #[(|
|000020e0| 72 65 66 65 72 65 6e 74 | 20 64 69 72 6e 61 6d 65 |referent| dirname|
|000020f0| 29 20 22 c0 09 1a 1b c4 | c5 0e 06 5c 22 ab 9c c7 |) ".....|...\"...|
|00002100| 0e 06 c8 94 c8 95 4f 21 | 13 0e 06 c9 89 94 4f 0b |......O!|......O.|
|00002110| 0e 06 c9 95 c0 4f 51 16 | 06 aa 5d c4 ca 0e 06 5c |.....OQ.|..]....\|
|00002120| 22 89 1e 0b ab 9a 0e 0b | c9 55 ab 94 c4 cc 09 5c |".......|.U.....\|
|00002130| 22 ad 85 09 c9 89 95 4f | cd 0e 06 c8 c0 4f 51 16 |"......O|.....OQ.|
|00002140| 06 29 c4 ce 0e 06 5c 22 | ab c2 c4 cf 0e 06 5c 22 |.)....\"|......\"|
|00002150| ab 8a 0e 06 c8 95 c0 4f | 16 06 aa 6f c4 d0 0e 06 |.......O|...o....|
|00002160| 5c 22 ab 92 d1 d2 5c 6e | 21 21 89 12 0e 06 c9 95 |\"....\n|!!......|
|00002170| c0 4f 50 16 06 aa 67 c4 | d3 0e 06 5c 22 ab 48 0e |.OP...g.|...\".H.|
|00002180| 06 c9 89 94 4f 0e 06 c9 | 95 c0 4f 50 16 06 aa 68 |....O...|..OP...h|
|00002190| 0e 06 c9 48 d4 55 ac 8f | 0e 06 c9 48 d5 55 ac 87 |...H.U..|...H.U..|
|000021a0| d6 0e 06 09 5c 22 16 06 | 2a 0e 06 87 22 20 5b 6e |....\"..|*..." [n|
|000021b0| 69 6c 20 64 69 72 6e 61 | 6d 65 20 64 69 72 20 76 |il dirna|me dir v|
|000021c0| 61 72 2d 6c 69 6e 6b 20 | 73 74 72 69 6e 67 2d 6d |ar-link |string-m|
|000021d0| 61 74 63 68 20 22 5c 5c | 24 28 5c 5c 28 5b 5e 29 |atch "\\|$(\\([^)|
|000021e0| 5d 2a 5c 5c 29 29 22 20 | 72 65 66 65 72 65 6e 74 |]*\\))" |referent|
|000021f0| 20 67 65 74 65 6e 76 20 | 31 20 30 20 22 60 6e 6f | getenv |1 0 "`no|
|00002200| 64 65 5f 64 61 74 61 22 | 20 6e 64 2d 61 62 62 72 |de_data"| nd-abbr|
|00002210| 65 76 20 22 5e 2f 2f 5b | 5e 2f 5d 2b 22 20 22 2f |ev "^//[|^/]+" "/|
|00002220| 73 79 73 2f 22 20 22 5c | 5c 28 5e 5c 5c 7c 2f 5c |sys/" "\|\(^\\|/\|
|00002230| 5c 29 5c 5c 2e 5c 5c 2e | 5c 5c 28 2f 5c 5c 7c 24 |\)\\.\\.|\\(/\\|$|
|00002240| 5c 5c 29 22 20 22 5e 5c | 5c 28 2f 2f 5c 5c 2e 5c |\\)" "^\|\(//\\.\|
|00002250| 5c 2e 5c 5c 7c 2f 5c 5c | 2e 5c 5c 2e 5c 5c 29 5c |\.\\|/\\|.\\.\\)\|
|00002260| 5c 28 2f 5c 5c 7c 24 5c | 5c 29 22 20 22 5e 5c 5c |\(/\\|$\|\)" "^\\|
|00002270| 2e 5c 5c 2e 5c 5c 28 2f | 5c 5c 7c 24 5c 5c 29 22 |.\\.\\(/|\\|$\\)"|
|00002280| 20 66 69 6c 65 2d 6e 61 | 6d 65 2d 64 69 72 65 63 | file-na|me-direc|
|00002290| 74 6f 72 79 20 64 69 72 | 65 63 74 6f 72 79 2d 66 |tory dir|ectory-f|
|000022a0| 69 6c 65 2d 6e 61 6d 65 | 20 22 5b 5e 2f 5d 2b 2f |ile-name| "[^/]+/|
|000022b0| 5c 5c 2e 5c 5c 2e 2f 22 | 20 31 32 36 20 34 37 20 |\\.\\./"| 126 47 |
|000022c0| 65 78 70 61 6e 64 2d 66 | 69 6c 65 2d 6e 61 6d 65 |expand-f|ile-name|
|000022d0| 5d 20 36 20 22 5c 0a 52 | 65 74 75 72 6e 73 20 65 |] 6 "\.R|eturns e|
|000022e0| 78 70 61 6e 64 65 64 20 | 66 69 6c 65 20 6f 72 20 |xpanded |file or |
|000022f0| 64 69 72 65 63 74 6f 72 | 79 20 52 45 46 45 52 45 |director|y REFERE|
|00002300| 4e 54 20 72 65 6c 61 74 | 69 76 65 20 74 6f 20 44 |NT relat|ive to D|
|00002310| 49 52 4e 41 4d 45 2e 22 | 5d 29 0a 28 66 73 65 74 |IRNAME."|]).(fset|
|00002320| 20 27 68 70 61 74 68 3a | 76 61 6c 69 64 61 74 65 | 'hpath:|validate|
|00002330| 20 23 5b 28 70 61 74 68 | 29 20 22 08 3b ac 85 c1 | #[(path|) ".;...|
|00002340| c2 08 5c 22 87 c3 c4 08 | 5c 22 ac 8f c5 08 21 ac |..\"....|\"....!.|
|00002350| 8a c6 08 21 ac 87 c7 08 | 21 ab 82 08 87 c1 c8 08 |...!....|!.......|
|00002360| 5c 22 87 22 20 5b 70 61 | 74 68 20 65 72 72 6f 72 |\"." [pa|th error|
|00002370| 20 22 28 68 70 61 74 68 | 3a 76 61 6c 69 64 61 74 | "(hpath|:validat|
|00002380| 65 29 3a 20 5c 22 25 73 | 5c 22 20 69 73 20 6e 6f |e): \"%s|\" is no|
|00002390| 74 20 61 20 70 61 74 68 | 6e 61 6d 65 2e 22 20 73 |t a path|name." s|
|000023a0| 74 72 69 6e 67 2d 6d 61 | 74 63 68 20 22 5b 28 29 |tring-ma|tch "[()|
|000023b0| 5d 22 20 68 70 61 74 68 | 3a 61 6e 67 65 2d 66 74 |]" hpath|:ange-ft|
|000023c0| 70 2d 70 20 68 70 61 74 | 68 3a 77 77 77 2d 70 20 |p-p hpat|h:www-p |
|000023d0| 66 69 6c 65 2d 72 65 61 | 64 61 62 6c 65 2d 70 20 |file-rea|dable-p |
|000023e0| 22 28 68 70 61 74 68 3a | 76 61 6c 69 64 61 74 65 |"(hpath:|validate|
|000023f0| 29 3a 20 5c 22 25 73 5c | 22 20 69 73 20 6e 6f 74 |): \"%s\|" is not|
|00002400| 20 72 65 61 64 61 62 6c | 65 2e 22 5d 20 33 20 22 | readabl|e."] 3 "|
|00002410| 5c 0a 52 65 74 75 72 6e | 73 20 50 41 54 48 20 69 |\.Return|s PATH i|
|00002420| 66 20 50 41 54 48 20 69 | 73 20 61 20 76 61 6c 69 |f PATH i|s a vali|
|00002430| 64 2c 20 72 65 61 64 61 | 62 6c 65 20 70 61 74 68 |d, reada|ble path|
|00002440| 2c 20 65 6c 73 65 20 73 | 69 67 6e 61 6c 73 20 65 |, else s|ignals e|
|00002450| 72 72 6f 72 2e 0a 49 6e | 66 6f 20 61 6e 64 20 61 |rror..In|fo and a|
|00002460| 6e 67 65 2d 66 74 70 20 | 72 65 6d 6f 74 65 20 70 |nge-ftp |remote p|
|00002470| 61 74 68 6e 61 6d 65 73 | 20 61 72 65 20 63 6f 6e |athnames| are con|
|00002480| 73 69 64 65 72 65 64 20 | 72 65 61 64 61 62 6c 65 |sidered |readable|
|00002490| 20 77 69 74 68 6f 75 74 | 20 61 6e 79 0a 76 61 6c | without| any.val|
|000024a0| 69 64 61 74 69 6f 6e 20 | 63 68 65 63 6b 73 2e 0a |idation |checks..|
|000024b0| 44 65 66 61 75 6c 74 2d | 64 69 72 65 63 74 6f 72 |Default-|director|
|000024c0| 79 20 73 68 6f 75 6c 64 | 20 62 65 20 65 71 75 61 |y should| be equa|
|000024d0| 6c 20 74 6f 20 63 75 72 | 72 65 6e 74 20 48 79 70 |l to cur|rent Hyp|
|000024e0| 65 72 62 6f 6c 65 20 62 | 75 74 74 6f 6e 20 73 6f |erbole b|utton so|
|000024f0| 75 72 63 65 0a 64 69 72 | 65 63 74 6f 72 79 20 77 |urce.dir|ectory w|
|00002500| 68 65 6e 20 63 61 6c 6c | 65 64 2c 20 73 6f 20 74 |hen call|ed, so t|
|00002510| 68 61 74 20 50 41 54 48 | 20 69 73 20 65 78 70 61 |hat PATH| is expa|
|00002520| 6e 64 65 64 20 72 65 6c | 61 74 69 76 65 20 74 6f |nded rel|ative to|
|00002530| 20 69 74 2e 22 5d 29 0a | 28 66 73 65 74 20 27 68 | it."]).|(fset 'h|
|00002540| 70 61 74 68 3a 75 72 6c | 2d 61 74 2d 70 20 23 5b |path:url|-at-p #[|
|00002550| 6e 69 6c 20 22 c0 c1 21 | ad 8e 8a c2 95 62 88 c3 |nil "..!|.....b..|
|00002560| c4 78 88 c2 94 60 7b 29 | 87 22 20 5b 6c 6f 6f 6b |.x...`{)|." [look|
|00002570| 69 6e 67 2d 61 74 20 22 | 5c 5c 28 5b 61 2d 7a 41 |ing-at "|\\([a-zA|
|00002580| 2d 5a 5d 5b 61 2d 7a 41 | 2d 5a 5d 2b 5c 5c 29 3a |-Z][a-zA|-Z]+\\):|
|00002590| 2f 2f 3f 5c 5c 28 5b 5e | 40 2f 3a 20 09 5c 6e 0d |//?\\([^|@/: .\n.|
|000025a0| 5d 2b 40 5c 5c 29 3f 5c | 5c 28 5b 5e 2f 3a 40 20 |]+@\\)?\|\([^/:@ |
|000025b0| 09 5c 6e 0d 5c 22 60 27 | 5d 2b 5c 5c 29 5c 5c 28 |.\n.\"`'|]+\\)\\(|
|000025c0| 3a 5b 30 2d 39 5d 2b 5c | 5c 29 3f 2f 3f 5c 5c 28 |:[0-9]+\|\)?/?\\(|
|000025d0| 5b 2f 7e 5d 5b 5e 5d 40 | 20 09 5c 6e 0d 5c 22 60 |[/~][^]@| .\n.\"`|
|000025e0| 27 29 7d 3e 5d 2a 5c 5c | 29 3f 22 20 30 20 22 2e |')}>]*\\|)?" 0 ".|
|000025f0| 3f 23 21 2a 28 29 22 20 | 6e 69 6c 5d 20 32 20 22 |?#!*()" |nil] 2 "|
|00002600| 5c 0a 52 65 74 75 72 6e | 20 77 6f 72 6c 64 2d 77 |\.Return| world-w|
|00002610| 69 64 65 2d 77 65 62 20 | 75 6e 69 76 65 72 73 61 |ide-web |universa|
|00002620| 6c 20 72 65 73 6f 75 72 | 63 65 20 6c 6f 63 61 74 |l resour|ce locat|
|00002630| 6f 72 20 28 75 72 6c 29 | 20 74 68 61 74 20 70 6f |or (url)| that po|
|00002640| 69 6e 74 20 69 6d 6d 65 | 64 69 61 74 65 6c 79 20 |int imme|diately |
|00002650| 70 72 65 63 65 64 65 73 | 20 6f 72 20 6e 69 6c 2e |precedes| or nil.|
|00002660| 0a 55 73 65 20 62 75 66 | 66 65 72 2d 73 75 62 73 |.Use buf|fer-subs|
|00002670| 74 72 69 6e 67 20 77 69 | 74 68 20 6d 61 74 63 68 |tring wi|th match|
|00002680| 2d 62 65 67 69 6e 6e 69 | 6e 67 20 61 6e 64 20 6d |-beginni|ng and m|
|00002690| 61 74 63 68 2d 65 6e 64 | 20 6f 6e 20 74 68 65 20 |atch-end| on the |
|000026a0| 66 6f 6c 6c 6f 77 69 6e | 67 0a 67 72 6f 75 70 69 |followin|g.groupi|
|000026b0| 6e 67 73 3a 0a 20 20 31 | 20 3d 20 61 63 63 65 73 |ngs:. 1| = acces|
|000026c0| 73 20 70 72 6f 74 6f 63 | 6f 6c 0a 20 20 32 20 3d |s protoc|ol. 2 =|
|000026d0| 20 6f 70 74 69 6f 6e 61 | 6c 20 75 73 65 72 6e 61 | optiona|l userna|
|000026e0| 6d 65 0a 20 20 33 20 3d | 20 68 6f 73 74 20 61 6e |me. 3 =| host an|
|000026f0| 64 20 64 6f 6d 61 69 6e | 20 74 6f 20 63 6f 6e 6e |d domain| to conn|
|00002700| 65 63 74 20 74 6f 0a 20 | 20 34 20 3d 20 6f 70 74 |ect to. | 4 = opt|
|00002710| 69 6f 6e 61 6c 20 70 6f | 72 74 20 6e 75 6d 62 65 |ional po|rt numbe|
|00002720| 72 20 74 6f 20 75 73 65 | 0a 20 20 35 20 3d 20 70 |r to use|. 5 = p|
|00002730| 61 74 68 6e 61 6d 65 20 | 74 6f 20 61 63 63 65 73 |athname |to acces|
|00002740| 73 2e 22 5d 29 0a 28 66 | 73 65 74 20 27 68 70 61 |s."]).(f|set 'hpa|
|00002750| 74 68 3a 75 72 6c 2d 70 | 20 23 5b 28 6f 62 6a 29 |th:url-p| #[(obj)|
|00002760| 20 22 08 3b ad 87 c1 c2 | 08 5c 22 ad 81 c3 87 22 | ".;....|.\"...."|
|00002770| 20 5b 6f 62 6a 20 73 74 | 72 69 6e 67 2d 6d 61 74 | [obj st|ring-mat|
|00002780| 63 68 20 22 5c 5c 60 3c | 3f 5c 5c 28 5b 61 2d 7a |ch "\\`<|?\\([a-z|
|00002790| 41 2d 5a 5d 5b 61 2d 7a | 41 2d 5a 5d 2b 5c 5c 29 |A-Z][a-z|A-Z]+\\)|
|000027a0| 3a 2f 2f 3f 5c 5c 28 5b | 5e 40 2f 3a 20 09 5c 6e |://?\\([|^@/: .\n|
|000027b0| 0d 5d 2b 40 5c 5c 29 3f | 5c 5c 28 5b 5e 2f 3a 40 |.]+@\\)?|\\([^/:@|
|000027c0| 20 09 5c 6e 0d 5c 22 60 | 27 5d 2b 5c 5c 29 5c 5c | .\n.\"`|']+\\)\\|
|000027d0| 28 3a 5b 30 2d 39 5d 2b | 5c 5c 29 3f 2f 3f 5c 5c |(:[0-9]+|\\)?/?\\|
|000027e0| 28 5b 2f 7e 5d 5b 5e 5d | 40 20 09 5c 6e 0d 5c 22 |([/~][^]|@ .\n.\"|
|000027f0| 60 27 29 7d 3e 5d 2a 5c | 5c 29 3f 3e 3f 5c 5c 27 |`')}>]*\|\)?>?\\'|
|00002800| 22 20 74 5d 20 33 20 22 | 5c 0a 52 65 74 75 72 6e |" t] 3 "|\.Return|
|00002810| 20 74 20 69 66 20 4f 42 | 4a 20 69 73 20 61 20 77 | t if OB|J is a w|
|00002820| 6f 72 6c 64 2d 77 69 64 | 65 2d 77 65 62 20 75 6e |orld-wid|e-web un|
|00002830| 69 76 65 72 73 61 6c 20 | 72 65 73 6f 75 72 63 65 |iversal |resource|
|00002840| 20 6c 6f 63 61 74 6f 72 | 20 28 75 72 6c 29 20 73 | locator| (url) s|
|00002850| 74 72 69 6e 67 2c 20 65 | 6c 73 65 20 6e 69 6c 2e |tring, e|lse nil.|
|00002860| 0a 55 73 65 20 73 74 72 | 69 6e 67 2d 6d 61 74 63 |.Use str|ing-matc|
|00002870| 68 20 77 69 74 68 20 6d | 61 74 63 68 2d 62 65 67 |h with m|atch-beg|
|00002880| 69 6e 6e 69 6e 67 20 61 | 6e 64 20 6d 61 74 63 68 |inning a|nd match|
|00002890| 2d 65 6e 64 20 6f 6e 20 | 74 68 65 20 66 6f 6c 6c |-end on |the foll|
|000028a0| 6f 77 69 6e 67 20 67 72 | 6f 75 70 69 6e 67 73 3a |owing gr|oupings:|
|000028b0| 0a 20 20 31 20 3d 20 61 | 63 63 65 73 73 20 70 72 |. 1 = a|ccess pr|
|000028c0| 6f 74 6f 63 6f 6c 0a 20 | 20 32 20 3d 20 6f 70 74 |otocol. | 2 = opt|
|000028d0| 69 6f 6e 61 6c 20 75 73 | 65 72 6e 61 6d 65 0a 20 |ional us|ername. |
|000028e0| 20 33 20 3d 20 68 6f 73 | 74 20 61 6e 64 20 64 6f | 3 = hos|t and do|
|000028f0| 6d 61 69 6e 20 74 6f 20 | 63 6f 6e 6e 65 63 74 20 |main to |connect |
|00002900| 74 6f 0a 20 20 34 20 3d | 20 6f 70 74 69 6f 6e 61 |to. 4 =| optiona|
|00002910| 6c 20 70 6f 72 74 20 6e | 75 6d 62 65 72 20 74 6f |l port n|umber to|
|00002920| 20 75 73 65 0a 20 20 35 | 20 3d 20 70 61 74 68 6e | use. 5| = pathn|
|00002930| 61 6d 65 20 74 6f 20 61 | 63 63 65 73 73 2e 22 5d |ame to a|ccess."]|
|00002940| 29 0a 28 66 73 65 74 20 | 27 68 70 61 74 68 3a 77 |).(fset |'hpath:w|
|00002950| 77 77 2d 61 74 2d 70 20 | 23 5b 28 26 6f 70 74 69 |ww-at-p |#[(&opti|
|00002960| 6f 6e 61 6c 20 69 6e 63 | 6c 75 64 65 2d 73 74 61 |onal inc|lude-sta|
|00002970| 72 74 2d 61 6e 64 2d 65 | 6e 64 2d 70 29 20 22 8a |rt-and-e|nd-p) ".|
|00002980| c0 c1 78 88 5c 6e ac 84 | c3 20 aa 8e c3 20 ad 8a |..x.\n..|. ... ..|
|00002990| c4 94 c4 95 7b c4 94 c4 | 95 45 29 87 22 20 5b 22 |....{...|.E)." ["|
|000029a0| 5e 5b 20 09 5c 6e 5c 22 | 60 27 28 7b 3c 22 20 6e |^[ .\n\"|`'({<" n|
|000029b0| 69 6c 20 69 6e 63 6c 75 | 64 65 2d 73 74 61 72 74 |il inclu|de-start|
|000029c0| 2d 61 6e 64 2d 65 6e 64 | 2d 70 20 68 70 61 74 68 |-and-end|-p hpath|
|000029d0| 3a 75 72 6c 2d 61 74 2d | 70 20 30 5d 20 33 20 22 |:url-at-|p 0] 3 "|
|000029e0| 5c 0a 52 65 74 75 72 6e | 73 20 61 20 77 6f 72 6c |\.Return|s a worl|
|000029f0| 64 2d 77 69 64 65 2d 77 | 65 62 20 6c 69 6e 6b 20 |d-wide-w|eb link |
|00002a00| 72 65 66 65 72 65 6e 63 | 65 20 74 68 61 74 20 70 |referenc|e that p|
|00002a10| 6f 69 6e 74 20 69 73 20 | 77 69 74 68 69 6e 20 6f |oint is |within o|
|00002a20| 72 20 6e 69 6c 2e 0a 57 | 69 74 68 20 6f 70 74 69 |r nil..W|ith opti|
|00002a30| 6f 6e 61 6c 20 49 4e 43 | 4c 55 44 45 2d 53 54 41 |onal INC|LUDE-STA|
|00002a40| 52 54 2d 41 4e 44 2d 45 | 4e 44 2d 50 20 6e 6f 6e |RT-AND-E|ND-P non|
|00002a50| 2d 6e 69 6c 2c 20 72 65 | 74 75 72 6e 73 20 6c 69 |-nil, re|turns li|
|00002a60| 73 74 20 6f 66 3a 0a 20 | 20 28 6c 69 6e 6b 2d 73 |st of:. | (link-s|
|00002a70| 74 72 69 6e 67 20 62 65 | 67 69 6e 2d 70 6f 73 69 |tring be|gin-posi|
|00002a80| 74 69 6f 6e 20 65 6e 64 | 2d 70 6f 73 69 74 69 6f |tion end|-positio|
|00002a90| 6e 29 2e 22 5d 29 0a 28 | 66 73 65 74 20 27 68 70 |n)."]).(|fset 'hp|
|00002aa0| 61 74 68 3a 77 77 77 2d | 70 20 23 5b 28 70 61 74 |ath:www-|p #[(pat|
|00002ab0| 68 29 20 22 08 3b ad 86 | c1 08 21 ad 81 08 87 22 |h) ".;..|..!...."|
|00002ac0| 20 5b 70 61 74 68 20 68 | 70 61 74 68 3a 75 72 6c | [path h|path:url|
|00002ad0| 2d 70 5d 20 32 20 22 5c | 0a 52 65 74 75 72 6e 73 |-p] 2 "\|.Returns|
|00002ae0| 20 6e 6f 6e 2d 6e 69 6c | 20 69 66 66 20 50 41 54 | non-nil| iff PAT|
|00002af0| 48 20 69 73 20 61 20 77 | 6f 72 6c 64 2d 77 69 64 |H is a w|orld-wid|
|00002b00| 65 2d 77 65 62 20 6c 69 | 6e 6b 20 72 65 66 65 72 |e-web li|nk refer|
|00002b10| 65 6e 63 65 2e 22 5d 29 | 0a 28 66 73 65 74 20 27 |ence."])|.(fset '|
|00002b20| 68 70 61 74 68 3a 61 6e | 67 65 2d 66 74 70 2d 61 |hpath:an|ge-ftp-a|
|00002b30| 76 61 69 6c 61 62 6c 65 | 2d 70 20 23 5b 6e 69 6c |vailable|-p #[nil|
|00002b40| 20 22 c0 c1 21 ae 97 c0 | c2 21 ae 92 c3 c4 21 ad | "..!...|.!....!.|
|00002b50| 8d c5 c6 0c 5c 22 ac 86 | c5 c7 0c 5c 22 ad 81 c8 |....\"..|...\"...|
|00002b60| 87 22 20 5b 66 65 61 74 | 75 72 65 70 20 61 6e 67 |." [feat|urep ang|
|00002b70| 65 2d 66 74 70 20 65 66 | 73 20 62 6f 75 6e 64 70 |e-ftp ef|s boundp|
|00002b80| 20 66 69 6c 65 2d 6e 61 | 6d 65 2d 68 61 6e 64 6c | file-na|me-handl|
|00002b90| 65 72 2d 61 6c 69 73 74 | 20 72 61 73 73 71 20 61 |er-alist| rassq a|
|00002ba0| 6e 67 65 2d 66 74 70 2d | 68 6f 6f 6b 2d 66 75 6e |nge-ftp-|hook-fun|
|00002bb0| 63 74 69 6f 6e 20 65 66 | 73 2d 66 69 6c 65 2d 68 |ction ef|s-file-h|
|00002bc0| 61 6e 64 6c 65 72 2d 66 | 75 6e 63 74 69 6f 6e 20 |andler-f|unction |
|00002bd0| 74 5d 20 33 20 22 5c 0a | 52 65 74 75 72 6e 20 74 |t] 3 "\.|Return t|
|00002be0| 20 69 66 20 74 68 65 20 | 61 6e 67 65 2d 66 74 70 | if the |ange-ftp|
|00002bf0| 20 6f 72 20 65 66 73 20 | 70 61 63 6b 61 67 65 20 | or efs |package |
|00002c00| 69 73 20 61 76 61 69 6c | 61 62 6c 65 2c 20 6e 69 |is avail|able, ni|
|00002c10| 6c 20 6f 74 68 65 72 77 | 69 73 65 2e 0a 45 69 74 |l otherw|ise..Eit|
|00002c20| 68 65 72 20 74 68 65 20 | 70 61 63 6b 61 67 65 20 |her the |package |
|00002c30| 6d 75 73 74 20 68 61 76 | 65 20 62 65 65 6e 20 6c |must hav|e been l|
|00002c40| 6f 61 64 65 64 20 61 6c | 72 65 61 64 79 20 6f 72 |oaded al|ready or|
|00002c50| 20 75 6e 64 65 72 20 76 | 65 72 73 69 6f 6e 73 20 | under v|ersions |
|00002c60| 6f 66 20 45 6d 61 63 73 | 0a 31 39 2c 20 69 74 20 |of Emacs|.19, it |
|00002c70| 6d 75 73 74 20 62 65 20 | 73 65 74 20 66 6f 72 20 |must be |set for |
|00002c80| 61 75 74 6f 6c 6f 61 64 | 69 6e 67 20 76 69 61 20 |autoload|ing via |
|00002c90| 27 66 69 6c 65 2d 6e 61 | 6d 65 2d 68 61 6e 64 6c |'file-na|me-handl|
|00002ca0| 65 72 2d 61 6c 69 73 74 | 27 2e 22 5d 29 0a 28 66 |er-alist|'."]).(f|
|00002cb0| 73 65 74 20 27 68 70 61 | 74 68 3a 61 6e 67 65 2d |set 'hpa|th:ange-|
|00002cc0| 66 74 70 2d 64 65 66 61 | 75 6c 74 2d 75 73 65 72 |ftp-defa|ult-user|
|00002cd0| 20 23 5b 6e 69 6c 20 22 | c0 c1 21 ab 86 09 3b ab | #[nil "|..!...;.|
|00002ce0| 82 09 87 c0 c2 21 ab 86 | 5c 6e 3b ab 82 5c 6e 87 |.....!..|\n;..\n.|
|00002cf0| c3 87 22 20 5b 62 6f 75 | 6e 64 70 20 61 6e 67 65 |.." [bou|ndp ange|
|00002d00| 2d 66 74 70 2d 64 65 66 | 61 75 6c 74 2d 75 73 65 |-ftp-def|ault-use|
|00002d10| 72 20 65 66 73 2d 64 65 | 66 61 75 6c 74 2d 75 73 |r efs-de|fault-us|
|00002d20| 65 72 20 22 61 6e 6f 6e | 79 6d 6f 75 73 22 5d 20 |er "anon|ymous"] |
|00002d30| 32 20 22 5c 0a 52 65 74 | 75 72 6e 20 64 65 66 61 |2 "\.Ret|urn defa|
|00002d40| 75 6c 74 20 75 73 65 72 | 20 61 63 63 6f 75 6e 74 |ult user| account|
|00002d50| 20 66 6f 72 20 72 65 6d | 6f 74 65 20 66 69 6c 65 | for rem|ote file|
|00002d60| 20 61 63 63 65 73 73 20 | 77 69 74 68 20 61 6e 67 | access |with ang|
|00002d70| 65 2d 66 74 70 20 6f 72 | 20 65 66 73 2e 0a 52 65 |e-ftp or| efs..Re|
|00002d80| 74 75 72 6e 73 20 5c 22 | 61 6e 6f 6e 79 6d 6f 75 |turns \"|anonymou|
|00002d90| 73 5c 22 20 69 66 20 6e | 65 69 74 68 65 72 20 61 |s\" if n|either a|
|00002da0| 6e 67 65 2d 66 74 70 2d | 64 65 66 61 75 6c 74 2d |nge-ftp-|default-|
|00002db0| 75 73 65 72 20 6e 6f 72 | 20 65 66 73 2d 64 65 66 |user nor| efs-def|
|00002dc0| 61 75 6c 74 2d 75 73 65 | 72 0a 69 73 20 73 65 74 |ault-use|r.is set|
|00002dd0| 2e 22 5d 29 0a 28 66 73 | 65 74 20 27 68 70 61 74 |."]).(fs|et 'hpat|
|00002de0| 68 3a 64 65 6c 65 74 65 | 2d 74 72 61 69 6c 65 72 |h:delete|-trailer|
|00002df0| 20 23 5b 28 73 74 72 69 | 6e 67 29 20 22 c0 20 19 | #[(stri|ng) ". .|
|00002e00| c2 8e 0b 3b ab 93 0b 47 | c4 56 ab 8d c5 c6 0b 5c |...;...G|.V.....\|
|00002e10| 22 ab 87 0b c4 89 94 4f | aa 81 0b 2a 87 22 20 5b |"......O|...*." [|
|00002e20| 6d 61 74 63 68 2d 64 61 | 74 61 20 5f 6d 61 74 63 |match-da|ta _matc|
|00002e30| 68 5f 64 61 74 61 5f 20 | 28 28 73 74 6f 72 65 2d |h_data_ |((store-|
|00002e40| 6d 61 74 63 68 2d 64 61 | 74 61 20 5f 6d 61 74 63 |match-da|ta _matc|
|00002e50| 68 5f 64 61 74 61 5f 29 | 29 20 73 74 72 69 6e 67 |h_data_)|) string|
|00002e60| 20 30 20 73 74 72 69 6e | 67 2d 6d 61 74 63 68 20 | 0 strin|g-match |
|00002e70| 22 5b 2e 3f 23 21 2a 28 | 29 5d 2b 5c 5c 27 22 5d |"[.?#!*(|)]+\\'"]|
|00002e80| 20 33 20 22 5c 0a 52 65 | 74 75 72 6e 20 73 74 72 | 3 "\.Re|turn str|
|00002e90| 69 6e 67 20 6d 69 6e 75 | 73 20 61 6e 79 20 74 72 |ing minu|s any tr|
|00002ea0| 61 69 6c 69 6e 67 20 2e | 3f 23 21 2a 28 29 20 63 |ailing .|?#!*() c|
|00002eb0| 68 61 72 61 63 74 65 72 | 73 2e 22 5d 29 0a 28 66 |haracter|s."]).(f|
|00002ec0| 73 65 74 20 27 68 70 61 | 74 68 3a 66 69 6e 64 2d |set 'hpa|th:find-|
|00002ed0| 70 72 6f 67 72 61 6d 20 | 23 5b 28 66 69 6c 65 6e |program |#[(filen|
|00002ee0| 61 6d 65 29 20 22 c0 19 | 5c 6e 3b ab 88 c3 5c 6e |ame) "..|\n;...\n|
|00002ef0| 21 ab 83 c0 aa bf c4 5c | 6e 0d 5c 22 89 11 3b ab |!......\|n.\"..;.|
|00002f00| ab 5c 6e 1e 06 c7 5c 6e | 21 ab 90 c8 0e 06 0e 09 |.\n...\n|!.......|
|00002f10| ca 0e 06 21 50 89 12 cb | 89 24 88 cc cd 09 5c 22 |...!P...|.$....\"|
|00002f20| ab 86 ce 09 5c 6e 5c 22 | aa 84 09 cf 5c 6e 51 29 |....\n\"|....\nQ)|
|00002f30| aa 8b 09 ac 87 c4 5c 6e | 0e 10 5c 22 aa 81 09 29 |......\n|..\"...)|
|00002f40| 87 22 20 5b 6e 69 6c 20 | 63 6d 64 20 66 69 6c 65 |." [nil |cmd file|
|00002f50| 6e 61 6d 65 20 66 69 6c | 65 2d 64 69 72 65 63 74 |name fil|e-direct|
|00002f60| 6f 72 79 2d 70 20 68 70 | 61 74 68 3a 6d 61 74 63 |ory-p hp|ath:matc|
|00002f70| 68 20 68 70 61 74 68 3a | 66 69 6e 64 2d 61 6c 69 |h hpath:|find-ali|
|00002f80| 73 74 20 6f 72 69 67 2d | 70 61 74 68 20 68 70 61 |st orig-|path hpa|
|00002f90| 74 68 3a 61 6e 67 65 2d | 66 74 70 2d 70 20 63 6f |th:ange-|ftp-p co|
|00002fa0| 70 79 2d 66 69 6c 65 20 | 68 70 61 74 68 3a 74 6d |py-file |hpath:tm|
|00002fb0| 70 2d 70 72 65 66 69 78 | 20 66 69 6c 65 2d 6e 61 |p-prefix| file-na|
|00002fc0| 6d 65 2d 6e 6f 6e 64 69 | 72 65 63 74 6f 72 79 20 |me-nondi|rectory |
|00002fd0| 74 20 73 74 72 69 6e 67 | 2d 6d 61 74 63 68 20 22 |t string|-match "|
|00002fe0| 5b 5e 25 5d 25 73 22 20 | 66 6f 72 6d 61 74 20 22 |[^%]%s" |format "|
|00002ff0| 20 22 20 68 70 61 74 68 | 3a 64 69 73 70 6c 61 79 | " hpath|:display|
|00003000| 2d 61 6c 69 73 74 5d 20 | 35 20 22 5c 0a 52 65 74 |-alist] |5 "\.Ret|
|00003010| 75 72 6e 20 73 68 65 6c | 6c 20 6f 72 20 4c 69 73 |urn shel|l or Lis|
|00003020| 70 20 63 6f 6d 6d 61 6e | 64 20 74 6f 20 65 78 65 |p comman|d to exe|
|00003030| 63 75 74 65 20 74 6f 20 | 64 69 73 70 6c 61 79 20 |cute to |display |
|00003040| 46 49 4c 45 4e 41 4d 45 | 20 6f 72 20 6e 69 6c 2e |FILENAME| or nil.|
|00003050| 0a 52 65 74 75 72 6e 20 | 6e 69 6c 20 69 66 20 46 |.Return |nil if F|
|00003060| 49 4c 45 4e 41 4d 45 20 | 69 73 20 61 20 64 69 72 |ILENAME |is a dir|
|00003070| 65 63 74 6f 72 79 20 6e | 61 6d 65 2e 0a 53 65 65 |ectory n|ame..See|
|00003080| 20 61 6c 73 6f 20 64 6f | 63 75 6d 65 6e 74 61 74 | also do|cumentat|
|00003090| 69 6f 6e 20 66 6f 72 20 | 27 68 70 61 74 68 3a 66 |ion for |'hpath:f|
|000030a0| 69 6e 64 2d 61 6c 69 73 | 74 27 20 61 6e 64 20 27 |ind-alis|t' and '|
|000030b0| 68 70 61 74 68 3a 64 69 | 73 70 6c 61 79 2d 61 6c |hpath:di|splay-al|
|000030c0| 69 73 74 27 2e 22 5d 29 | 0a 28 66 73 65 74 20 27 |ist'."])|.(fset '|
|000030d0| 68 70 61 74 68 3a 6d 61 | 74 63 68 20 23 5b 28 66 |hpath:ma|tch #[(f|
|000030e0| 69 6c 65 6e 61 6d 65 20 | 72 65 67 65 78 70 2d 61 |ilename |regexp-a|
|000030f0| 6c 69 73 74 29 20 22 c0 | 89 19 1a 5c 6e ac 95 0b |list) ".|...\n...|
|00003100| ab 92 c4 0b 40 89 11 40 | 0d 5c 22 ab 83 09 41 12 |....@..@|.\"...A.|
|00003110| 0b 41 13 aa 68 5c 6e 2a | 87 22 20 5b 6e 69 6c 20 |.A..h\n*|." [nil |
|00003120| 65 6c 74 20 63 6d 64 20 | 72 65 67 65 78 70 2d 61 |elt cmd |regexp-a|
|00003130| 6c 69 73 74 20 73 74 72 | 69 6e 67 2d 6d 61 74 63 |list str|ing-matc|
|00003140| 68 20 66 69 6c 65 6e 61 | 6d 65 5d 20 33 20 22 5c |h filena|me] 3 "\|
|00003150| 0a 49 66 20 46 49 4c 45 | 4e 41 4d 45 20 6d 61 74 |.If FILE|NAME mat|
|00003160| 63 68 65 73 20 74 68 65 | 20 63 61 72 20 6f 66 20 |ches the| car of |
|00003170| 61 6e 79 20 65 6c 65 6d | 65 6e 74 20 69 6e 20 52 |any elem|ent in R|
|00003180| 45 47 45 58 50 2d 41 4c | 49 53 54 2c 20 72 65 74 |EGEXP-AL|IST, ret|
|00003190| 75 72 6e 20 69 74 73 20 | 63 64 72 2e 0a 52 45 47 |urn its |cdr..REG|
|000031a0| 45 58 50 2d 41 4c 49 53 | 54 20 65 6c 65 6d 65 6e |EXP-ALIS|T elemen|
|000031b0| 74 73 20 6d 75 73 74 20 | 62 65 20 6f 66 20 74 68 |ts must |be of th|
|000031c0| 65 20 66 6f 72 6d 20 28 | 3c 66 69 6c 65 6e 61 6d |e form (|<filenam|
|000031d0| 65 2d 72 65 67 65 78 70 | 3e 0a 2e 20 3c 63 6f 6d |e-regexp|>.. <com|
|000031e0| 6d 61 6e 64 2d 74 6f 2d | 64 69 73 70 6c 61 79 2d |mand-to-|display-|
|000031f0| 66 69 6c 65 3e 29 2e 20 | 20 3c 63 6f 6d 6d 61 6e |file>). | <comman|
|00003200| 64 2d 74 6f 2d 64 69 73 | 70 6c 61 79 2d 66 69 6c |d-to-dis|play-fil|
|00003210| 65 3e 20 6d 61 79 20 62 | 65 20 61 20 73 74 72 69 |e> may b|e a stri|
|00003220| 6e 67 0a 72 65 70 72 65 | 73 65 6e 74 69 6e 67 20 |ng.repre|senting |
|00003230| 61 6e 20 65 78 74 65 72 | 6e 61 6c 20 77 69 6e 64 |an exter|nal wind|
|00003240| 6f 77 2d 73 79 73 74 65 | 6d 20 63 6f 6d 6d 61 6e |ow-syste|m comman|
|00003250| 64 20 74 6f 20 72 75 6e | 20 6f 72 20 69 74 20 6d |d to run| or it m|
|00003260| 61 79 20 62 65 20 61 20 | 4c 69 73 70 0a 66 75 6e |ay be a |Lisp.fun|
|00003270| 63 74 69 6f 6e 20 74 6f | 20 63 61 6c 6c 20 77 69 |ction to| call wi|
|00003280| 74 68 20 46 49 4c 45 4e | 41 4d 45 20 61 73 20 69 |th FILEN|AME as i|
|00003290| 74 73 20 73 69 6e 67 6c | 65 20 61 72 67 75 6d 65 |ts singl|e argume|
|000032a0| 6e 74 2e 22 5d 29 0a 28 | 66 73 65 74 20 27 68 70 |nt."]).(|fset 'hp|
|000032b0| 61 74 68 3a 73 75 62 73 | 74 69 74 75 74 65 2d 64 |ath:subs|titute-d|
|000032c0| 69 72 20 23 5b 28 76 61 | 72 2d 6e 61 6d 65 20 72 |ir #[(va|r-name r|
|000032d0| 65 73 74 2d 6f 66 2d 70 | 61 74 68 29 20 22 c0 89 |est-of-p|ath) "..|
|000032e0| 19 1a 0b 3b ac 86 c4 c5 | 0b 5c 22 aa f0 c6 0b 21 |...;....|.\"....!|
|000032f0| 89 12 ab 85 c7 5c 6e 21 | ac 86 c4 c8 0b 5c 22 aa |.....\n!|.....\".|
|00003300| de 5c 6e 4a 89 11 3b ab | 8c c9 ca 0e 0b 09 5c 22 |.\nJ..;.|......\"|
|00003310| 21 ad ce 09 aa cb 09 3c | ab c3 c0 1e 0c 09 ab a5 |!......<|........|
|00003320| 0e 0c ac a1 09 40 16 0c | 09 41 11 0e 0c 3b ab 90 |.....@..|.A...;..|
|00003330| cd 0e 0c 21 ab 8a ce ca | 0e 0b 0e 0c 5c 22 21 ac |...!....|....\"!.|
|00003340| 5d c0 16 0c aa 58 0e 0c | ab 88 c9 cf 0e 0c 21 21 |]....X..|......!!|
|00003350| aa 89 c4 d0 d1 0b d2 0e | 0b 52 5c 22 29 aa 84 c4 |........|.R\")...|
|00003360| d3 0b 5c 22 2a 87 22 20 | 5b 6e 69 6c 20 76 61 6c |..\"*." |[nil val|
|00003370| 20 73 79 6d 20 76 61 72 | 2d 6e 61 6d 65 20 65 72 | sym var|-name er|
|00003380| 72 6f 72 20 22 28 68 70 | 61 74 68 3a 73 75 62 73 |ror "(hp|ath:subs|
|00003390| 74 69 74 75 74 65 2d 64 | 69 72 29 3a 20 56 41 52 |titute-d|ir): VAR|
|000033a0| 2d 4e 41 4d 45 20 61 72 | 67 2c 20 27 25 73 27 2c |-NAME ar|g, '%s',|
|000033b0| 20 6d 75 73 74 20 62 65 | 20 61 20 73 74 72 69 6e | must be| a strin|
|000033c0| 67 22 20 69 6e 74 65 72 | 6e 2d 73 6f 66 74 20 62 |g" inter|n-soft b|
|000033d0| 6f 75 6e 64 70 20 22 28 | 68 70 61 74 68 3a 73 75 |oundp "(|hpath:su|
|000033e0| 62 73 74 69 74 75 74 65 | 2d 64 69 72 29 3a 20 56 |bstitute|-dir): V|
|000033f0| 41 52 2d 4e 41 4d 45 20 | 61 72 67 2c 20 5c 22 25 |AR-NAME |arg, \"%|
|00003400| 73 5c 22 2c 20 69 73 20 | 6e 6f 74 20 61 20 62 6f |s\", is |not a bo|
|00003410| 75 6e 64 20 76 61 72 69 | 61 62 6c 65 22 20 68 70 |und vari|able" hp|
|00003420| 61 74 68 3a 76 61 6c 69 | 64 61 74 65 20 65 78 70 |ath:vali|date exp|
|00003430| 61 6e 64 2d 66 69 6c 65 | 2d 6e 61 6d 65 20 72 65 |and-file|-name re|
|00003440| 73 74 2d 6f 66 2d 70 61 | 74 68 20 64 69 72 20 66 |st-of-pa|th dir f|
|00003450| 69 6c 65 2d 6e 61 6d 65 | 2d 61 62 73 6f 6c 75 74 |ile-name|-absolut|
|00003460| 65 2d 70 20 66 69 6c 65 | 2d 72 65 61 64 61 62 6c |e-p file|-readabl|
|00003470| 65 2d 70 20 64 69 72 65 | 63 74 6f 72 79 2d 66 69 |e-p dire|ctory-fi|
|00003480| 6c 65 2d 6e 61 6d 65 20 | 22 28 68 70 61 74 68 3a |le-name |"(hpath:|
|00003490| 73 75 62 73 74 69 74 75 | 74 65 2d 64 69 72 29 3a |substitu|te-dir):|
|000034a0| 20 43 61 6e 27 74 20 66 | 69 6e 64 20 6d 61 74 63 | Can't f|ind matc|
|000034b0| 68 20 66 6f 72 20 5c 22 | 25 73 5c 22 22 20 22 24 |h for \"|%s\"" "$|
|000034c0| 7b 22 20 22 7d 2f 22 20 | 22 28 68 70 61 74 68 3a |{" "}/" |"(hpath:|
|000034d0| 73 75 62 73 74 69 74 75 | 74 65 2d 64 69 72 29 3a |substitu|te-dir):|
|000034e0| 20 56 61 6c 75 65 20 6f | 66 20 56 41 52 2d 4e 41 | Value o|f VAR-NA|
|000034f0| 4d 45 2c 20 5c 22 25 73 | 5c 22 2c 20 6d 75 73 74 |ME, \"%s|\", must|
|00003500| 20 62 65 20 61 20 73 74 | 72 69 6e 67 20 6f 72 20 | be a st|ring or |
|00003510| 6c 69 73 74 22 5d 20 36 | 20 22 5c 0a 52 65 74 75 |list"] 6| "\.Retu|
|00003520| 72 6e 73 20 61 20 64 69 | 72 20 66 6f 72 20 56 41 |rns a di|r for VA|
|00003530| 52 2d 4e 41 4d 45 20 75 | 73 69 6e 67 20 52 45 53 |R-NAME u|sing RES|
|00003540| 54 2d 4f 46 2d 50 41 54 | 48 20 74 6f 20 66 69 6e |T-OF-PAT|H to fin|
|00003550| 64 20 6d 61 74 63 68 20 | 6f 72 20 74 72 69 67 67 |d match |or trigg|
|00003560| 65 72 73 20 61 6e 20 65 | 72 72 6f 72 20 77 68 65 |ers an e|rror whe|
|00003570| 6e 20 6e 6f 20 6d 61 74 | 63 68 2e 0a 56 41 52 2d |n no mat|ch..VAR-|
|00003580| 4e 41 4d 45 27 73 20 76 | 61 6c 75 65 20 6d 61 79 |NAME's v|alue may|
|00003590| 20 62 65 20 61 20 64 69 | 72 65 63 74 6f 72 79 20 | be a di|rectory |
|000035a0| 6f 72 20 61 20 6c 69 73 | 74 20 6f 66 20 64 69 72 |or a lis|t of dir|
|000035b0| 65 63 74 6f 72 69 65 73 | 2e 20 20 49 66 20 69 74 |ectories|. If it|
|000035c0| 20 69 73 20 61 0a 6c 69 | 73 74 2c 20 74 68 65 20 | is a.li|st, the |
|000035d0| 66 69 72 73 74 20 64 69 | 72 65 63 74 6f 72 79 20 |first di|rectory |
|000035e0| 70 72 65 70 65 6e 64 65 | 64 20 74 6f 20 52 45 53 |prepende|d to RES|
|000035f0| 54 2d 4f 46 2d 50 41 54 | 48 20 77 68 69 63 68 20 |T-OF-PAT|H which |
|00003600| 70 72 6f 64 75 63 65 73 | 20 61 20 76 61 6c 69 64 |produces| a valid|
|00003610| 0a 6c 6f 63 61 6c 20 70 | 61 74 68 6e 61 6d 65 20 |.local p|athname |
|00003620| 69 73 20 72 65 74 75 72 | 6e 65 64 2e 22 5d 29 0a |is retur|ned."]).|
|00003630| 28 66 73 65 74 20 27 68 | 70 61 74 68 3a 73 75 62 |(fset 'h|path:sub|
|00003640| 73 74 69 74 75 74 65 2d | 76 61 72 2d 6e 61 6d 65 |stitute-|var-name|
|00003650| 20 23 5b 28 76 61 72 2d | 73 79 6d 62 6f 6c 20 76 | #[(var-|symbol v|
|00003660| 61 72 2d 64 69 72 2d 76 | 61 6c 20 70 61 74 68 29 |ar-dir-v|al path)|
|00003670| 20 22 08 3b ad a5 c1 08 | 21 ad a0 c2 c3 c4 08 ae | ".;....|!.......|
|00003680| 81 0d 21 21 0e 06 c7 c8 | 0e 09 21 ca 51 cb 24 89 |..!!....|..!.Q.$.|
|00003690| 1e 0c 0e 06 9a 3f ad 82 | 0e 0c 29 87 22 20 5b 76 |.....?..|..)." [v|
|000036a0| 61 72 2d 64 69 72 2d 76 | 61 6c 20 66 69 6c 65 2d |ar-dir-v|al file-|
|000036b0| 6e 61 6d 65 2d 61 62 73 | 6f 6c 75 74 65 2d 70 20 |name-abs|olute-p |
|000036c0| 68 79 70 62 3a 72 65 70 | 6c 61 63 65 2d 6d 61 74 |hypb:rep|lace-mat|
|000036d0| 63 68 2d 73 74 72 69 6e | 67 20 72 65 67 65 78 70 |ch-strin|g regexp|
|000036e0| 2d 71 75 6f 74 65 20 66 | 69 6c 65 2d 6e 61 6d 65 |-quote f|ile-name|
|000036f0| 2d 61 73 2d 64 69 72 65 | 63 74 6f 72 79 20 64 65 |-as-dire|ctory de|
|00003700| 66 61 75 6c 74 2d 64 69 | 72 65 63 74 6f 72 79 20 |fault-di|rectory |
|00003710| 70 61 74 68 20 22 24 7b | 22 20 73 79 6d 62 6f 6c |path "${|" symbol|
|00003720| 2d 6e 61 6d 65 20 76 61 | 72 2d 73 79 6d 62 6f 6c |-name va|r-symbol|
|00003730| 20 22 7d 2f 22 20 74 20 | 6e 65 77 2d 70 61 74 68 | "}/" t |new-path|
|00003740| 5d 20 37 20 22 5c 0a 52 | 65 70 6c 61 63 65 73 20 |] 7 "\.R|eplaces |
|00003750| 77 69 74 68 20 56 41 52 | 2d 53 59 4d 42 4f 4c 20 |with VAR|-SYMBOL |
|00003760| 61 6e 79 20 6f 63 63 75 | 72 72 65 6e 63 65 73 20 |any occu|rrences |
|00003770| 6f 66 20 56 41 52 2d 44 | 49 52 2d 56 41 4c 20 69 |of VAR-D|IR-VAL i|
|00003780| 6e 20 50 41 54 48 2e 0a | 52 65 70 6c 61 63 65 6d |n PATH..|Replacem|
|00003790| 65 6e 74 20 69 73 20 64 | 6f 6e 65 20 69 66 66 20 |ent is d|one iff |
|000037a0| 56 41 52 2d 44 49 52 2d | 56 41 4c 20 69 73 20 61 |VAR-DIR-|VAL is a|
|000037b0| 6e 20 61 62 73 6f 6c 75 | 74 65 20 70 61 74 68 2e |n absolu|te path.|
|000037c0| 0a 49 66 20 50 41 54 48 | 20 69 73 20 6d 6f 64 69 |.If PATH| is modi|
|000037d0| 66 69 65 64 2c 20 72 65 | 74 75 72 6e 73 20 50 41 |fied, re|turns PA|
|000037e0| 54 48 2c 20 6f 74 68 65 | 72 77 69 73 65 20 72 65 |TH, othe|rwise re|
|000037f0| 74 75 72 6e 73 20 6e 69 | 6c 2e 22 5d 29 0a 28 64 |turns ni|l."]).(d|
|00003800| 65 66 76 61 72 20 68 70 | 61 74 68 3a 70 72 65 66 |efvar hp|ath:pref|
|00003810| 69 78 2d 72 65 67 65 78 | 70 20 22 5c 5c 60 5b 2d |ix-regex|p "\\`[-|
|00003820| 21 26 5d 5b 20 5d 2a 22 | 20 22 5c 0a 52 65 67 65 |!&][ ]*"| "\.Rege|
|00003830| 78 70 20 6d 61 74 63 68 | 69 6e 67 20 63 6f 6d 6d |xp match|ing comm|
|00003840| 61 6e 64 20 63 68 61 72 | 61 63 74 65 72 73 20 77 |and char|acters w|
|00003850| 68 69 63 68 20 6d 61 79 | 20 70 72 65 63 65 64 65 |hich may| precede|
|00003860| 20 61 20 70 61 74 68 6e | 61 6d 65 2e 0a 54 68 65 | a pathn|ame..The|
|00003870| 73 65 20 61 72 65 20 75 | 73 65 64 20 74 6f 20 69 |se are u|sed to i|
|00003880| 6e 64 69 63 61 74 65 20 | 68 6f 77 20 74 6f 20 64 |ndicate |how to d|
|00003890| 69 73 70 6c 61 79 20 6f | 72 20 65 78 65 63 75 74 |isplay o|r execut|
|000038a0| 65 20 74 68 65 20 70 61 | 74 68 6e 61 6d 65 2e 0a |e the pa|thname..|
|000038b0| 20 20 2d 20 6d 65 61 6e | 73 20 65 76 61 6c 75 61 | - mean|s evalua|
|000038c0| 74 65 20 69 74 20 61 73 | 20 45 6d 61 63 73 20 4c |te it as| Emacs L|
|000038d0| 69 73 70 3b 0a 20 20 21 | 20 6d 65 61 6e 73 20 65 |isp;. !| means e|
|000038e0| 78 65 63 75 74 65 20 69 | 74 20 61 73 20 61 20 73 |xecute i|t as a s|
|000038f0| 68 65 6c 6c 20 73 63 72 | 69 70 74 0a 20 20 26 20 |hell scr|ipt. & |
|00003900| 6d 65 61 6e 73 20 72 75 | 6e 20 69 74 20 75 6e 64 |means ru|n it und|
|00003910| 65 72 20 74 68 65 20 63 | 75 72 72 65 6e 74 20 77 |er the c|urrent w|
|00003920| 69 6e 64 6f 77 20 73 79 | 73 74 65 6d 2e 22 29 0a |indow sy|stem.").|
|00003930| 28 70 72 6f 76 69 64 65 | 20 27 68 70 61 74 68 29 |(provide| 'hpath)|
|00003940| 0a | |. | |
+--------+-------------------------+-------------------------+--------+--------+