home *** CD-ROM | disk | FTP | other *** search
/ BCI NET 2 / BCI NET 2.iso / archives / programming / source / a2.0bemacs-src.lha / Emacs-19.25 / lisp / hippie-exp.elc < prev    next >
Emacs Compiled Lisp  |  1994-05-23  |  13.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
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 72 6d 73 40 6d 6f 6c |piled by| rms@mol|
|00000020| 65 2e 67 6e 75 2e 61 69 | 2e 6d 69 74 2e 65 64 75 |e.gnu.ai|.mit.edu|
|00000030| 20 6f 6e 20 53 75 6e 20 | 4d 61 79 20 32 32 20 31 | on Sun |May 22 1|
|00000040| 38 3a 32 37 3a 30 33 20 | 31 39 39 34 0a 3b 3b 3b |8:27:03 |1994.;;;|
|00000050| 20 66 72 6f 6d 20 66 69 | 6c 65 20 2f 68 6f 6d 65 | from fi|le /home|
|00000060| 2f 66 73 66 2f 72 6d 73 | 2f 65 31 39 2f 6c 69 73 |/fsf/rms|/e19/lis|
|00000070| 70 2f 68 69 70 70 69 65 | 2d 65 78 70 2e 65 6c 0a |p/hippie|-exp.el.|
|00000080| 3b 3b 3b 20 65 6d 61 63 | 73 20 76 65 72 73 69 6f |;;; emac|s versio|
|00000090| 6e 20 31 39 2e 32 33 2e | 39 30 2e 31 2e 0a 3b 3b |n 19.23.|90.1..;;|
|000000a0| 3b 20 62 79 74 65 63 6f | 6d 70 20 76 65 72 73 69 |; byteco|mp versi|
|000000b0| 6f 6e 20 46 53 46 20 32 | 2e 31 30 0a 3b 3b 3b 20 |on FSF 2|.10.;;; |
|000000c0| 6f 70 74 69 6d 69 7a 61 | 74 69 6f 6e 20 69 73 20 |optimiza|tion is |
|000000d0| 6f 6e 2e 0a 3b 3b 3b 20 | 74 68 69 73 20 66 69 6c |on..;;; |this fil|
|000000e0| 65 20 75 73 65 73 20 6f | 70 63 6f 64 65 73 20 77 |e uses o|pcodes w|
|000000f0| 68 69 63 68 20 64 6f 20 | 6e 6f 74 20 65 78 69 73 |hich do |not exis|
|00000100| 74 20 69 6e 20 45 6d 61 | 63 73 20 31 38 2e 0a 0a |t in Ema|cs 18...|
|00000110| 28 69 66 20 28 61 6e 64 | 20 28 62 6f 75 6e 64 70 |(if (and| (boundp|
|00000120| 20 27 65 6d 61 63 73 2d | 76 65 72 73 69 6f 6e 29 | 'emacs-|version)|
|00000130| 0a 09 20 28 6f 72 20 28 | 61 6e 64 20 28 62 6f 75 |.. (or (|and (bou|
|00000140| 6e 64 70 20 27 65 70 6f | 63 68 3a 3a 76 65 72 73 |ndp 'epo|ch::vers|
|00000150| 69 6f 6e 29 20 65 70 6f | 63 68 3a 3a 76 65 72 73 |ion) epo|ch::vers|
|00000160| 69 6f 6e 29 0a 09 20 20 | 20 20 20 28 73 74 72 69 |ion).. | (stri|
|00000170| 6e 67 2d 6c 65 73 73 70 | 20 65 6d 61 63 73 2d 76 |ng-lessp| emacs-v|
|00000180| 65 72 73 69 6f 6e 20 22 | 31 39 22 29 29 29 0a 20 |ersion "|19"))). |
|00000190| 20 20 20 28 65 72 72 6f | 72 20 22 60 2f 68 6f 6d | (erro|r "`/hom|
|000001a0| 65 2f 66 73 66 2f 72 6d | 73 2f 65 31 39 2f 6c 69 |e/fsf/rm|s/e19/li|
|000001b0| 73 70 2f 68 69 70 70 69 | 65 2d 65 78 70 2e 65 6c |sp/hippi|e-exp.el|
|000001c0| 27 20 77 61 73 20 63 6f | 6d 70 69 6c 65 64 20 66 |' was co|mpiled f|
|000001d0| 6f 72 20 45 6d 61 63 73 | 20 31 39 22 29 29 0a 0a |or Emacs| 19"))..|
|000001e0| 28 62 79 74 65 2d 63 6f | 64 65 20 22 c0 c1 21 84 |(byte-co|de "..!.|
|000001f0| 08 00 c2 11 c0 c3 21 84 | 11 00 c4 20 13 c0 c5 21 |......!.|... ...!|
|00000200| 84 1a 00 c4 20 15 c0 c6 | 21 84 23 00 c7 16 06 c0 |.... ...|!.#.....|
|00000210| c8 21 84 2c 00 c7 16 08 | c0 c9 21 84 35 00 c7 16 |.!.,....|..!.5...|
|00000220| 09 c0 ca 21 84 3f 00 c4 | 20 16 5c 6e c0 cb 21 84 |...!.?..| .\n..!.|
|00000230| 48 00 c7 16 0b c0 cc 21 | 84 51 00 c7 16 5c 66 c0 |H......!|.Q...\f.|
|00000240| cd 21 84 5a 00 c7 16 0d | c7 87 22 20 5b 62 6f 75 |.!.Z....|.." [bou|
|00000250| 6e 64 70 20 68 65 2d 6e | 75 6d 20 2d 31 20 68 65 |ndp he-n|um -1 he|
|00000260| 2d 73 74 72 69 6e 67 2d | 62 65 67 20 6d 61 6b 65 |-string-|beg make|
|00000270| 2d 6d 61 72 6b 65 72 20 | 68 65 2d 73 74 72 69 6e |-marker |he-strin|
|00000280| 67 2d 65 6e 64 20 68 65 | 2d 73 65 61 72 63 68 2d |g-end he|-search-|
|00000290| 73 74 72 69 6e 67 20 6e | 69 6c 20 68 65 2d 65 78 |string n|il he-ex|
|000002a0| 70 61 6e 64 2d 6c 69 73 | 74 20 68 65 2d 74 72 69 |pand-lis|t he-tri|
|000002b0| 65 64 2d 74 61 62 6c 65 | 20 68 65 2d 73 65 61 72 |ed-table| he-sear|
|000002c0| 63 68 2d 6c 6f 63 20 68 | 65 2d 73 65 61 72 63 68 |ch-loc h|e-search|
|000002d0| 2d 62 77 20 68 65 2d 73 | 65 61 72 63 68 2d 62 75 |-bw he-s|earch-bu|
|000002e0| 66 73 20 68 65 2d 73 65 | 61 72 63 68 65 64 2d 6e |fs he-se|arched-n|
|000002f0| 2d 62 75 66 73 5d 20 32 | 29 0a 28 64 65 66 76 61 |-bufs] 2|).(defva|
|00000300| 72 20 68 69 70 70 69 65 | 2d 65 78 70 61 6e 64 2d |r hippie|-expand-|
|00000310| 74 72 79 2d 66 75 6e 63 | 74 69 6f 6e 73 2d 6c 69 |try-func|tions-li|
|00000320| 73 74 20 28 71 75 6f 74 | 65 20 28 74 72 79 2d 63 |st (quot|e (try-c|
|00000330| 6f 6d 70 6c 65 74 65 2d | 66 69 6c 65 2d 6e 61 6d |omplete-|file-nam|
|00000340| 65 20 74 72 79 2d 65 78 | 70 61 6e 64 2d 61 6c 6c |e try-ex|pand-all|
|00000350| 2d 61 62 62 72 65 76 73 | 20 74 72 79 2d 65 78 70 |-abbrevs| try-exp|
|00000360| 61 6e 64 2d 6c 69 73 74 | 20 74 72 79 2d 65 78 70 |and-list| try-exp|
|00000370| 61 6e 64 2d 6c 69 6e 65 | 20 74 72 79 2d 65 78 70 |and-line| try-exp|
|00000380| 61 6e 64 2d 64 61 62 62 | 72 65 76 20 74 72 79 2d |and-dabb|rev try-|
|00000390| 65 78 70 61 6e 64 2d 64 | 61 62 62 72 65 76 2d 61 |expand-d|abbrev-a|
|000003a0| 6c 6c 2d 62 75 66 66 65 | 72 73 20 74 72 79 2d 63 |ll-buffe|rs try-c|
|000003b0| 6f 6d 70 6c 65 74 65 2d | 6c 69 73 70 2d 73 79 6d |omplete-|lisp-sym|
|000003c0| 62 6f 6c 29 29 20 22 5c | 0a 54 68 65 20 6c 69 73 |bol)) "\|.The lis|
|000003d0| 74 20 6f 66 20 65 78 70 | 61 6e 73 69 6f 6e 20 66 |t of exp|ansion f|
|000003e0| 75 6e 63 74 69 6f 6e 73 | 20 74 72 69 65 64 20 69 |unctions| tried i|
|000003f0| 6e 20 6f 72 64 65 72 20 | 62 79 20 60 68 69 70 70 |n order |by `hipp|
|00000400| 69 65 2d 65 78 70 61 6e | 64 27 2e 0a 54 6f 20 63 |ie-expan|d'..To c|
|00000410| 68 61 6e 67 65 20 74 68 | 65 20 62 65 68 61 76 69 |hange th|e behavi|
|00000420| 6f 72 20 6f 66 20 60 68 | 69 70 70 69 65 2d 65 78 |or of `h|ippie-ex|
|00000430| 70 61 6e 64 27 2c 20 72 | 65 6d 6f 76 65 2c 20 63 |pand', r|emove, c|
|00000440| 68 61 6e 67 65 20 74 68 | 65 20 6f 72 64 65 72 20 |hange th|e order |
|00000450| 6f 66 2c 0a 6f 72 20 69 | 6e 73 65 72 74 20 66 75 |of,.or i|nsert fu|
|00000460| 6e 63 74 69 6f 6e 73 20 | 69 6e 20 74 68 69 73 20 |nctions |in this |
|00000470| 6c 69 73 74 2e 22 29 0a | 28 64 65 66 76 61 72 20 |list.").|(defvar |
|00000480| 68 69 70 70 69 65 2d 65 | 78 70 61 6e 64 2d 76 65 |hippie-e|xpand-ve|
|00000490| 72 62 6f 73 65 20 74 20 | 22 5c 0a 2a 4e 6f 6e 2d |rbose t |"\.*Non-|
|000004a0| 6e 69 6c 20 6d 61 6b 65 | 73 20 60 68 69 70 70 69 |nil make|s `hippi|
|000004b0| 65 2d 65 78 70 61 6e 64 | 27 20 6f 75 74 70 75 74 |e-expand|' output|
|000004c0| 20 77 68 69 63 68 20 66 | 75 6e 63 74 69 6f 6e 20 | which f|unction |
|000004d0| 69 74 20 69 73 20 74 72 | 79 69 6e 67 2e 22 29 0a |it is tr|ying.").|
|000004e0| 28 64 65 66 76 61 72 20 | 68 69 70 70 69 65 2d 65 |(defvar |hippie-e|
|000004f0| 78 70 61 6e 64 2d 6d 61 | 78 2d 62 75 66 66 65 72 |xpand-ma|x-buffer|
|00000500| 73 20 6e 69 6c 20 22 5c | 0a 2a 54 68 65 20 6d 61 |s nil "\|.*The ma|
|00000510| 78 69 6d 75 6d 20 6e 75 | 6d 62 65 72 20 6f 66 20 |ximum nu|mber of |
|00000520| 62 75 66 66 65 72 73 20 | 28 61 70 61 72 74 20 66 |buffers |(apart f|
|00000530| 72 6f 6d 20 74 68 65 20 | 63 75 72 72 65 6e 74 29 |rom the |current)|
|00000540| 20 73 65 61 72 63 68 65 | 64 2e 0a 49 66 20 6e 69 | searche|d..If ni|
|00000550| 6c 2c 20 61 6c 6c 20 62 | 75 66 66 65 72 73 20 61 |l, all b|uffers a|
|00000560| 72 65 20 73 65 61 72 63 | 68 65 64 2e 22 29 0a 28 |re searc|hed.").(|
|00000570| 64 65 66 76 61 72 20 68 | 69 70 70 69 65 2d 65 78 |defvar h|ippie-ex|
|00000580| 70 61 6e 64 2d 69 67 6e | 6f 72 65 2d 62 75 66 66 |pand-ign|ore-buff|
|00000590| 65 72 73 20 28 71 75 6f | 74 65 20 28 22 5e 20 5c |ers (quo|te ("^ \|
|000005a0| 5c 2a 2e 2a 5c 5c 2a 24 | 22 20 64 69 72 65 64 2d |\*.*\\*$|" dired-|
|000005b0| 6d 6f 64 65 29 29 20 22 | 5c 0a 2a 41 20 6c 69 73 |mode)) "|\.*A lis|
|000005c0| 74 20 73 70 65 63 69 66 | 79 69 6e 67 20 77 68 69 |t specif|ying whi|
|000005d0| 63 68 20 62 75 66 66 65 | 72 73 20 6e 6f 74 20 74 |ch buffe|rs not t|
|000005e0| 6f 20 73 65 61 72 63 68 | 20 28 69 66 20 6e 6f 74 |o search| (if not|
|000005f0| 20 63 75 72 72 65 6e 74 | 29 2e 0a 43 61 6e 20 63 | current|)..Can c|
|00000600| 6f 6e 74 61 69 6e 20 62 | 6f 74 68 20 72 65 67 65 |ontain b|oth rege|
|00000610| 78 70 73 20 6d 61 74 63 | 68 69 6e 67 20 62 75 66 |xps matc|hing buf|
|00000620| 66 65 72 20 6e 61 6d 65 | 73 20 28 61 73 20 73 74 |fer name|s (as st|
|00000630| 72 69 6e 67 73 29 20 61 | 6e 64 20 6d 61 6a 6f 72 |rings) a|nd major|
|00000640| 20 6d 6f 64 65 73 0a 28 | 61 73 20 61 74 6f 6d 73 | modes.(|as atoms|
|00000650| 29 22 29 0a 28 64 65 66 | 61 6c 69 61 73 20 27 68 |)").(def|alias 'h|
|00000660| 69 70 70 69 65 2d 65 78 | 70 61 6e 64 20 23 5b 28 |ippie-ex|pand #[(|
|00000670| 61 72 67 29 20 22 08 83 | 0f 00 08 a8 83 98 00 08 |arg) "..|........|
|00000680| c1 56 83 98 00 5c 6e c3 | 55 86 19 00 5c 66 0d 9a |.V...\n.|U...\f..|
|00000690| 3f 89 1e 06 83 24 00 c3 | 12 c7 16 08 08 83 33 00 |?....$..|......3.|
|000006a0| 0e 06 84 35 00 c9 20 88 | 82 35 00 c1 10 5c 6e 08 |...5.. .|.5...\n.|
|000006b0| 5c 5c c1 5d 89 1e 5c 6e | 0e 0b 47 59 84 5c 5c 00 |\\.]..\n|..GY.\\.|
|000006c0| cc 0e 5c 6e 0e 0b 38 5c | 6e 0e 5c 6e 55 43 5c 22 |..\n..8\|n.\nUC\"|
|000006d0| 84 5c 5c 00 0e 5c 6e 54 | 89 16 5c 6e 82 3d 00 0e |.\\..\nT|..\n.=..|
|000006e0| 5c 6e 12 29 5c 6e 0e 0b | 47 59 83 7f 00 c3 12 0e |\n.)\n..|GY......|
|000006f0| 06 83 76 00 cd ce 21 88 | 82 7a 00 cd cf 21 88 d0 |..v...!.|.z...!..|
|00000700| 20 82 96 00 0e 11 85 96 | 00 d2 d3 20 21 3f 85 96 | .......|... !?..|
|00000710| 00 cd d4 d5 5c 6e 0e 0b | 38 21 50 21 29 87 5c 6e |....\n..|8!P!).\n|
|00000720| c1 59 85 b3 00 c3 12 c9 | 20 88 0e 11 85 b3 00 d2 |.Y......| .......|
|00000730| d3 20 21 3f 85 b3 00 cd | d6 21 87 22 20 5b 61 72 |. !?....|.!." [ar|
|00000740| 67 20 30 20 68 65 2d 6e | 75 6d 20 2d 31 20 74 68 |g 0 he-n|um -1 th|
|00000750| 69 73 2d 63 6f 6d 6d 61 | 6e 64 20 6c 61 73 74 2d |is-comma|nd last-|
|00000760| 63 6f 6d 6d 61 6e 64 20 | 66 69 72 73 74 20 6e 69 |command |first ni|
|00000770| 6c 20 68 65 2d 74 72 69 | 65 64 2d 74 61 62 6c 65 |l he-tri|ed-table|
|00000780| 20 68 65 2d 72 65 73 65 | 74 2d 73 74 72 69 6e 67 | he-rese|t-string|
|00000790| 20 69 20 68 69 70 70 69 | 65 2d 65 78 70 61 6e 64 | i hippi|e-expand|
|000007a0| 2d 74 72 79 2d 66 75 6e | 63 74 69 6f 6e 73 2d 6c |-try-fun|ctions-l|
|000007b0| 69 73 74 20 61 70 70 6c | 79 20 6d 65 73 73 61 67 |ist appl|y messag|
|000007c0| 65 20 22 4e 6f 20 65 78 | 70 61 6e 73 69 6f 6e 20 |e "No ex|pansion |
|000007d0| 66 6f 75 6e 64 22 20 22 | 4e 6f 20 66 75 72 74 68 |found" "|No furth|
|000007e0| 65 72 20 65 78 70 61 6e | 73 69 6f 6e 73 20 66 6f |er expan|sions fo|
|000007f0| 75 6e 64 22 20 64 69 6e | 67 20 68 69 70 70 69 65 |und" din|g hippie|
|00000800| 2d 65 78 70 61 6e 64 2d | 76 65 72 62 6f 73 65 20 |-expand-|verbose |
|00000810| 77 69 6e 64 6f 77 2d 6d | 69 6e 69 62 75 66 66 65 |window-m|inibuffe|
|00000820| 72 2d 70 20 73 65 6c 65 | 63 74 65 64 2d 77 69 6e |r-p sele|cted-win|
|00000830| 64 6f 77 20 22 55 73 69 | 6e 67 20 22 20 70 72 69 |dow "Usi|ng " pri|
|00000840| 6e 31 2d 74 6f 2d 73 74 | 72 69 6e 67 20 22 55 6e |n1-to-st|ring "Un|
|00000850| 64 6f 69 6e 67 20 65 78 | 70 61 6e 73 69 6f 6e 73 |doing ex|pansions|
|00000860| 22 5d 20 36 20 22 5c 0a | 54 72 79 20 74 6f 20 65 |"] 6 "\.|Try to e|
|00000870| 78 70 61 6e 64 20 74 65 | 78 74 20 62 65 66 6f 72 |xpand te|xt befor|
|00000880| 65 20 70 6f 69 6e 74 2c | 20 75 73 69 6e 67 20 6d |e point,| using m|
|00000890| 75 6c 74 69 70 6c 65 20 | 6d 65 74 68 6f 64 73 2e |ultiple |methods.|
|000008a0| 0a 54 68 65 20 65 78 70 | 61 6e 73 69 6f 6e 20 66 |.The exp|ansion f|
|000008b0| 75 6e 63 74 69 6f 6e 73 | 20 69 6e 20 60 68 69 70 |unctions| in `hip|
|000008c0| 70 69 65 2d 65 78 70 61 | 6e 64 2d 74 72 79 2d 66 |pie-expa|nd-try-f|
|000008d0| 75 6e 63 74 69 6f 6e 73 | 2d 6c 69 73 74 27 20 61 |unctions|-list' a|
|000008e0| 72 65 0a 74 72 69 65 64 | 20 69 6e 20 6f 72 64 65 |re.tried| in orde|
|000008f0| 72 2c 20 75 6e 74 69 6c | 20 61 20 70 6f 73 73 69 |r, until| a possi|
|00000900| 62 6c 65 20 65 78 70 61 | 6e 73 69 6f 6e 20 69 73 |ble expa|nsion is|
|00000910| 20 66 6f 75 6e 64 2e 20 | 20 52 65 70 65 61 74 65 | found. | Repeate|
|00000920| 64 0a 61 70 70 6c 69 63 | 61 74 69 6f 6e 20 6f 66 |d.applic|ation of|
|00000930| 20 60 68 69 70 70 69 65 | 2d 65 78 70 61 6e 64 27 | `hippie|-expand'|
|00000940| 20 69 6e 73 65 72 74 73 | 20 73 75 63 63 65 73 73 | inserts| success|
|00000950| 69 76 65 6c 79 20 70 6f | 73 73 69 62 6c 65 0a 65 |ively po|ssible.e|
|00000960| 78 70 61 6e 73 69 6f 6e | 73 2e 20 20 0a 57 69 74 |xpansion|s. .Wit|
|00000970| 68 20 61 20 70 6f 73 69 | 74 69 76 65 20 6e 75 6d |h a posi|tive num|
|00000980| 65 72 69 63 20 61 72 67 | 75 6d 65 6e 74 2c 20 6a |eric arg|ument, j|
|00000990| 75 6d 70 73 20 64 69 72 | 65 63 74 6c 79 20 74 6f |umps dir|ectly to|
|000009a0| 20 74 68 65 20 41 52 47 | 20 6e 65 78 74 0a 66 75 | the ARG| next.fu|
|000009b0| 6e 63 74 69 6f 6e 20 69 | 6e 20 74 68 69 73 20 6c |nction i|n this l|
|000009c0| 69 73 74 2e 20 20 57 69 | 74 68 20 61 20 6e 65 67 |ist. Wi|th a neg|
|000009d0| 61 74 69 76 65 20 61 72 | 67 75 6d 65 6e 74 20 6f |ative ar|gument o|
|000009e0| 72 20 6a 75 73 74 20 5c | 5c 5b 75 6e 69 76 65 72 |r just \|\[univer|
|000009f0| 73 61 6c 2d 61 72 67 75 | 6d 65 6e 74 5d 2c 20 0a |sal-argu|ment], .|
|00000a00| 75 6e 64 6f 65 73 20 74 | 68 65 20 65 78 70 61 6e |undoes t|he expan|
|00000a10| 73 69 6f 6e 2e 22 20 22 | 50 22 5d 29 0a 28 62 79 |sion." "|P"]).(by|
|00000a20| 74 65 2d 63 6f 64 65 20 | 22 c0 c1 c2 5c 22 88 c0 |te-code |"...\"..|
|00000a30| c3 c4 5c 22 88 c0 c5 c6 | 5c 22 88 c0 c7 c8 5c 22 |..\"....|\"....\"|
|00000a40| 88 c0 c9 ca 5c 22 88 c0 | cb cc 5c 22 88 c0 cd ce |....\"..|..\"....|
|00000a50| 5c 22 87 22 20 5b 64 65 | 66 61 6c 69 61 73 20 68 |\"." [de|falias h|
|00000a60| 65 2d 69 6e 69 74 2d 73 | 74 72 69 6e 67 20 23 5b |e-init-s|tring #[|
|00000a70| 28 62 65 67 20 65 6e 64 | 29 20 22 08 09 c2 93 88 |(beg end|) ".....|
|00000a80| 0b 5c 66 c2 93 88 09 5c | 66 7b 89 15 87 22 20 5b |.\f....\|f{..." [|
|00000a90| 68 65 2d 73 74 72 69 6e | 67 2d 62 65 67 20 62 65 |he-strin|g-beg be|
|00000aa0| 67 20 6e 69 6c 20 68 65 | 2d 73 74 72 69 6e 67 2d |g nil he|-string-|
|00000ab0| 65 6e 64 20 65 6e 64 20 | 68 65 2d 73 65 61 72 63 |end end |he-searc|
|00000ac0| 68 2d 73 74 72 69 6e 67 | 5d 20 33 5d 20 68 65 2d |h-string|] 3] he-|
|00000ad0| 72 65 73 65 74 2d 73 74 | 72 69 6e 67 20 23 5b 6e |reset-st|ring #[n|
|00000ae0| 69 6c 20 22 c0 20 19 5c | 6e 0b 7c 88 5c 6e 62 88 |il ". .\|n.|.\nb.|
|00000af0| 5c 66 63 88 0b 60 c5 93 | 88 09 5c 6e 55 83 1d 00 |\fc..`..|..\nU...|
|00000b00| 0b 62 82 1f 00 09 62 29 | 87 22 20 5b 70 6f 69 6e |.b....b)|." [poin|
|00000b10| 74 2d 6d 61 72 6b 65 72 | 20 6e 65 77 70 6f 73 20 |t-marker| newpos |
|00000b20| 68 65 2d 73 74 72 69 6e | 67 2d 62 65 67 20 68 65 |he-strin|g-beg he|
|00000b30| 2d 73 74 72 69 6e 67 2d | 65 6e 64 20 68 65 2d 73 |-string-|end he-s|
|00000b40| 65 61 72 63 68 2d 73 74 | 72 69 6e 67 20 6e 69 6c |earch-st|ring nil|
|00000b50| 5d 20 33 5d 20 68 65 2d | 73 75 62 73 74 69 74 75 |] 3] he-|substitu|
|00000b60| 74 65 2d 73 74 72 69 6e | 67 20 23 5b 28 73 74 72 |te-strin|g #[(str|
|00000b70| 20 26 6f 70 74 69 6f 6e | 61 6c 20 74 72 61 6e 73 | &option|al trans|
|00000b80| 2d 63 61 73 65 29 20 22 | 08 85 10 00 09 85 10 00 |-case) "|........|
|00000b90| 5c 6e 85 10 00 c3 5c 66 | 0d 5c 22 c6 20 1e 07 18 |\n....\f|.\". ...|
|00000ba0| c8 20 88 0e 09 62 88 ca | 0d 21 88 cb 08 83 2a 00 |. ...b..|.!....*.|
|00000bb0| 5c 66 97 82 2b 00 5c 66 | 08 3f cc 23 88 0e 0d 60 |\f..+.\f|.?.#...`|
|00000bc0| ce 93 88 0e 07 0e 09 55 | 83 44 00 0e 0d 62 82 47 |.......U|.D...b.G|
|00000bd0| 00 0e 07 62 2a 87 22 20 | 5b 74 72 61 6e 73 2d 63 |...b*." |[trans-c|
|00000be0| 61 73 65 20 63 61 73 65 | 2d 72 65 70 6c 61 63 65 |ase case|-replace|
|00000bf0| 20 63 61 73 65 2d 66 6f | 6c 64 2d 73 65 61 72 63 | case-fo|ld-searc|
|00000c00| 68 20 68 65 2d 74 72 61 | 6e 73 66 65 72 2d 63 61 |h he-tra|nsfer-ca|
|00000c10| 73 65 2d 6f 6b 20 73 74 | 72 20 68 65 2d 73 65 61 |se-ok st|r he-sea|
|00000c20| 72 63 68 2d 73 74 72 69 | 6e 67 20 70 6f 69 6e 74 |rch-stri|ng point|
|00000c30| 2d 6d 61 72 6b 65 72 20 | 6e 65 77 70 6f 73 20 68 |-marker |newpos h|
|00000c40| 65 2d 72 65 73 65 74 2d | 73 74 72 69 6e 67 20 68 |e-reset-|string h|
|00000c50| 65 2d 73 74 72 69 6e 67 | 2d 62 65 67 20 73 65 61 |e-string|-beg sea|
|00000c60| 72 63 68 2d 66 6f 72 77 | 61 72 64 20 72 65 70 6c |rch-forw|ard repl|
|00000c70| 61 63 65 2d 6d 61 74 63 | 68 20 6c 69 74 65 72 61 |ace-matc|h litera|
|00000c80| 6c 20 68 65 2d 73 74 72 | 69 6e 67 2d 65 6e 64 20 |l he-str|ing-end |
|00000c90| 6e 69 6c 5d 20 34 5d 20 | 68 65 2d 6f 72 64 69 6e |nil] 4] |he-ordin|
|00000ca0| 61 72 79 2d 63 61 73 65 | 2d 70 20 23 5b 28 73 74 |ary-case|-p #[(st|
|00000cb0| 72 29 20 22 08 89 97 98 | 86 13 00 08 89 96 98 86 |r) "....|........|
|00000cc0| 13 00 08 c1 08 21 98 87 | 22 20 5b 73 74 72 20 63 |.....!..|" [str c|
|00000cd0| 61 70 69 74 61 6c 69 7a | 65 5d 20 33 5d 20 68 65 |apitaliz|e] 3] he|
|00000ce0| 2d 74 72 61 6e 73 66 65 | 72 2d 63 61 73 65 2d 6f |-transfe|r-case-o|
|00000cf0| 6b 20 23 5b 28 74 6f 2d | 73 74 72 20 66 72 6f 6d |k #[(to-|str from|
|00000d00| 2d 73 74 72 29 20 22 08 | 09 c2 08 47 09 47 5e 4f |-str) ".|...G.G^O|
|00000d10| 98 3f 85 17 00 c3 09 21 | 85 17 00 c3 08 21 87 22 |.?.....!|.....!."|
|00000d20| 20 5b 66 72 6f 6d 2d 73 | 74 72 20 74 6f 2d 73 74 | [from-s|tr to-st|
|00000d30| 72 20 30 20 68 65 2d 6f | 72 64 69 6e 61 72 79 2d |r 0 he-o|rdinary-|
|00000d40| 63 61 73 65 2d 70 5d 20 | 35 5d 20 68 65 2d 73 74 |case-p] |5] he-st|
|00000d50| 72 69 6e 67 2d 6d 65 6d | 62 65 72 20 23 5b 28 73 |ring-mem|ber #[(s|
|00000d60| 74 72 20 6c 73 74 29 20 | 22 08 83 23 00 09 83 15 |tr lst) |"..#....|
|00000d70| 00 5c 6e 83 15 00 08 40 | 97 0b 97 98 82 19 00 08 |.\n....@|........|
|00000d80| 40 0b 98 84 23 00 08 41 | 89 10 84 04 00 08 87 22 |@...#..A|......."|
|00000d90| 20 5b 6c 73 74 20 63 61 | 73 65 2d 66 6f 6c 64 2d | [lst ca|se-fold-|
|00000da0| 73 65 61 72 63 68 20 63 | 61 73 65 2d 72 65 70 6c |search c|ase-repl|
|00000db0| 61 63 65 20 73 74 72 5d | 20 33 5d 20 68 65 2d 72 |ace str]| 3] he-r|
|00000dc0| 65 67 65 78 70 2d 6d 65 | 6d 62 65 72 20 23 5b 28 |egexp-me|mber #[(|
|00000dd0| 73 74 72 20 6c 73 74 29 | 20 22 08 83 19 00 08 40 |str lst)| ".....@|
|00000de0| 3b 83 12 00 c1 08 40 5c | 6e 5c 22 84 19 00 08 41 |;.....@\|n\"....A|
|00000df0| 89 10 84 04 00 08 87 22 | 20 5b 6c 73 74 20 73 74 |......."| [lst st|
|00000e00| 72 69 6e 67 2d 6d 61 74 | 63 68 20 73 74 72 5d 20 |ring-mat|ch str] |
|00000e10| 34 5d 5d 20 33 29 0a 28 | 64 65 66 61 6c 69 61 73 |4]] 3).(|defalias|
|00000e20| 20 27 6d 61 6b 65 2d 68 | 69 70 70 69 65 2d 65 78 | 'make-h|ippie-ex|
|00000e30| 70 61 6e 64 2d 66 75 6e | 63 74 69 6f 6e 20 27 28 |pand-fun|ction '(|
|00000e40| 6d 61 63 72 6f 20 2e 20 | 23 5b 28 74 72 79 2d 6c |macro . |#[(try-l|
|00000e50| 69 73 74 20 26 6f 70 74 | 69 6f 6e 61 6c 20 76 65 |ist &opt|ional ve|
|00000e60| 72 62 6f 73 65 29 20 22 | c0 c1 c2 c3 c4 c5 c6 0e |rbose) "|........|
|00000e70| 07 21 c8 23 50 c9 ca cb | 0e 07 44 cc 0e 0d 44 44 |.!.#P...|..D...DD|
|00000e80| ce 42 42 af 05 44 87 22 | 20 5b 66 75 6e 63 74 69 |.BB..D."| [functi|
|00000e90| 6f 6e 20 6c 61 6d 62 64 | 61 20 28 61 72 67 29 20 |on lambd|a (arg) |
|00000ea0| 22 54 72 79 20 74 6f 20 | 65 78 70 61 6e 64 20 74 |"Try to |expand t|
|00000eb0| 65 78 74 20 62 65 66 6f | 72 65 20 70 6f 69 6e 74 |ext befo|re point|
|00000ec0| 2c 20 75 73 69 6e 67 20 | 74 68 65 20 66 6f 6c 6c |, using |the foll|
|00000ed0| 6f 77 69 6e 67 20 66 75 | 6e 63 74 69 6f 6e 73 3a |owing fu|nctions:|
|00000ee0| 20 5c 6e 22 20 6d 61 70 | 63 6f 6e 63 61 74 20 70 | \n" map|concat p|
|00000ef0| 72 69 6e 31 2d 74 6f 2d | 73 74 72 69 6e 67 20 65 |rin1-to-|string e|
|00000f00| 76 61 6c 20 74 72 79 2d | 6c 69 73 74 20 22 2c 20 |val try-|list ", |
|00000f10| 22 20 28 69 6e 74 65 72 | 61 63 74 69 76 65 20 22 |" (inter|active "|
|00000f20| 50 22 29 20 6c 65 74 20 | 68 69 70 70 69 65 2d 65 |P") let |hippie-e|
|00000f30| 78 70 61 6e 64 2d 74 72 | 79 2d 66 75 6e 63 74 69 |xpand-tr|y-functi|
|00000f40| 6f 6e 73 2d 6c 69 73 74 | 20 68 69 70 70 69 65 2d |ons-list| hippie-|
|00000f50| 65 78 70 61 6e 64 2d 76 | 65 72 62 6f 73 65 20 76 |expand-v|erbose v|
|00000f60| 65 72 62 6f 73 65 20 28 | 28 68 69 70 70 69 65 2d |erbose (|(hippie-|
|00000f70| 65 78 70 61 6e 64 20 61 | 72 67 29 29 5d 20 39 20 |expand a|rg))] 9 |
|00000f80| 22 5c 0a 43 6f 6e 73 74 | 72 75 63 74 20 61 20 66 |"\.Const|ruct a f|
|00000f90| 75 6e 63 74 69 6f 6e 20 | 73 69 6d 69 6c 61 72 20 |unction |similar |
|00000fa0| 74 6f 20 60 68 69 70 70 | 69 65 2d 65 78 70 61 6e |to `hipp|ie-expan|
|00000fb0| 64 27 2e 0a 4d 61 6b 65 | 20 69 74 20 75 73 65 20 |d'..Make| it use |
|00000fc0| 74 68 65 20 65 78 70 61 | 6e 73 69 6f 6e 20 66 75 |the expa|nsion fu|
|00000fd0| 6e 63 74 69 6f 6e 73 20 | 69 6e 20 54 52 59 2d 4c |nctions |in TRY-L|
|00000fe0| 49 53 54 2e 20 20 41 6e | 20 6f 70 74 69 6f 6e 61 |IST. An| optiona|
|00000ff0| 6c 20 73 65 63 6f 6e 64 | 0a 61 72 67 75 6d 65 6e |l second|.argumen|
|00001000| 74 20 56 45 52 42 4f 53 | 45 20 6e 6f 6e 2d 6e 69 |t VERBOS|E non-ni|
|00001010| 6c 20 6d 61 6b 65 73 20 | 74 68 65 20 66 75 6e 63 |l makes |the func|
|00001020| 74 69 6f 6e 20 76 65 72 | 62 6f 73 65 2e 22 5d 29 |tion ver|bose."])|
|00001030| 29 0a 28 64 65 66 61 6c | 69 61 73 20 27 74 72 79 |).(defal|ias 'try|
|00001040| 2d 63 6f 6d 70 6c 65 74 | 65 2d 66 69 6c 65 2d 6e |-complet|e-file-n|
|00001050| 61 6d 65 20 23 5b 28 6f | 6c 64 29 20 22 08 84 49 |ame #[(o|ld) "..I|
|00001060| 00 c1 c2 20 60 5c 22 88 | c3 5c 66 21 c5 c6 5c 66 |... `\".|.\f!..\f|
|00001070| 21 86 15 00 c7 21 1e 08 | 1e 09 ca 0e 09 0e 0b 5c |!....!..|.......\|
|00001080| 22 84 2a 00 0e 09 0e 0b | 42 16 0b 5c 66 c7 9a 84 |".*.....|B..\f...|
|00001090| 45 00 cc 0e 08 21 83 45 | 00 cd ce 0e 09 0e 08 5c |E....!.E|.......\|
|000010a0| 22 cf 5c 22 16 10 82 48 | 00 d1 16 10 2a 0e 10 83 |".\"...H|....*...|
|000010b0| 61 00 ca 0e 10 40 0e 0b | 5c 22 83 61 00 0e 10 41 |a....@..|\".a...A|
|000010c0| 89 16 10 84 4e 00 0e 10 | 84 6f 00 08 83 6d 00 d2 |....N...|.o...m..|
|000010d0| 20 88 d1 87 c6 5c 66 21 | 0e 10 40 50 1e 13 d4 0e | ....\f!|..@P....|
|000010e0| 13 21 88 0e 10 40 0e 0b | 42 16 0b 0e 10 41 16 10 |.!...@..|B....A..|
|000010f0| 29 d5 87 22 20 5b 6f 6c | 64 20 68 65 2d 69 6e 69 |).." [ol|d he-ini|
|00001100| 74 2d 73 74 72 69 6e 67 | 20 68 65 2d 66 69 6c 65 |t-string| he-file|
|00001110| 2d 6e 61 6d 65 2d 62 65 | 67 20 66 69 6c 65 2d 6e |-name-be|g file-n|
|00001120| 61 6d 65 2d 6e 6f 6e 64 | 69 72 65 63 74 6f 72 79 |ame-nond|irectory|
|00001130| 20 68 65 2d 73 65 61 72 | 63 68 2d 73 74 72 69 6e | he-sear|ch-strin|
|00001140| 67 20 65 78 70 61 6e 64 | 2d 66 69 6c 65 2d 6e 61 |g expand|-file-na|
|00001150| 6d 65 20 66 69 6c 65 2d | 6e 61 6d 65 2d 64 69 72 |me file-|name-dir|
|00001160| 65 63 74 6f 72 79 20 22 | 22 20 64 69 72 2d 70 61 |ectory "|" dir-pa|
|00001170| 72 74 20 6e 61 6d 65 2d | 70 61 72 74 20 68 65 2d |rt name-|part he-|
|00001180| 73 74 72 69 6e 67 2d 6d | 65 6d 62 65 72 20 68 65 |string-m|ember he|
|00001190| 2d 74 72 69 65 64 2d 74 | 61 62 6c 65 20 66 69 6c |-tried-t|able fil|
|000011a0| 65 2d 64 69 72 65 63 74 | 6f 72 79 2d 70 20 73 6f |e-direct|ory-p so|
|000011b0| 72 74 20 66 69 6c 65 2d | 6e 61 6d 65 2d 61 6c 6c |rt file-|name-all|
|000011c0| 2d 63 6f 6d 70 6c 65 74 | 69 6f 6e 73 20 73 74 72 |-complet|ions str|
|000011d0| 69 6e 67 2d 6c 65 73 73 | 70 20 68 65 2d 65 78 70 |ing-less|p he-exp|
|000011e0| 61 6e 64 2d 6c 69 73 74 | 20 6e 69 6c 20 68 65 2d |and-list| nil he-|
|000011f0| 72 65 73 65 74 2d 73 74 | 72 69 6e 67 20 66 69 6c |reset-st|ring fil|
|00001200| 65 6e 61 6d 65 20 68 65 | 2d 73 75 62 73 74 69 74 |ename he|-substit|
|00001210| 75 74 65 2d 73 74 72 69 | 6e 67 20 74 5d 20 35 20 |ute-stri|ng t] 5 |
|00001220| 22 5c 0a 54 72 79 20 74 | 6f 20 63 6f 6d 70 6c 65 |"\.Try t|o comple|
|00001230| 74 65 20 74 65 78 74 20 | 61 73 20 61 20 66 69 6c |te text |as a fil|
|00001240| 65 20 6e 61 6d 65 2e 0a | 54 68 65 20 61 72 67 75 |e name..|The argu|
|00001250| 6d 65 6e 74 20 4f 4c 44 | 20 68 61 73 20 74 6f 20 |ment OLD| has to |
|00001260| 62 65 20 6e 69 6c 20 74 | 68 65 20 66 69 72 73 74 |be nil t|he first|
|00001270| 20 63 61 6c 6c 20 6f 66 | 20 74 68 69 73 20 66 75 | call of| this fu|
|00001280| 6e 63 74 69 6f 6e 2c 20 | 61 6e 64 20 74 0a 66 6f |nction, |and t.fo|
|00001290| 72 20 73 75 62 73 65 71 | 75 65 6e 74 20 63 61 6c |r subseq|uent cal|
|000012a0| 6c 73 20 28 66 6f 72 20 | 66 75 72 74 68 65 72 20 |ls (for |further |
|000012b0| 70 6f 73 73 69 62 6c 65 | 20 63 6f 6d 70 6c 65 74 |possible| complet|
|000012c0| 69 6f 6e 73 20 6f 66 20 | 74 68 65 20 73 61 6d 65 |ions of |the same|
|000012d0| 0a 73 74 72 69 6e 67 29 | 2e 20 20 49 74 20 72 65 |.string)|. It re|
|000012e0| 74 75 72 6e 73 20 74 20 | 69 66 20 61 20 6e 65 77 |turns t |if a new|
|000012f0| 20 63 6f 6d 70 6c 65 74 | 69 6f 6e 20 69 73 20 66 | complet|ion is f|
|00001300| 6f 75 6e 64 2c 20 6e 69 | 6c 20 6f 74 68 65 72 77 |ound, ni|l otherw|
|00001310| 69 73 65 2e 22 5d 29 0a | 28 64 65 66 61 6c 69 61 |ise."]).|(defalia|
|00001320| 73 20 27 74 72 79 2d 63 | 6f 6d 70 6c 65 74 65 2d |s 'try-c|omplete-|
|00001330| 66 69 6c 65 2d 6e 61 6d | 65 2d 70 61 72 74 69 61 |file-nam|e-partia|
|00001340| 6c 6c 79 20 23 5b 28 6f | 6c 64 29 20 22 c0 19 5c |lly #[(o|ld) "..\|
|00001350| 6e 84 43 00 c3 c4 20 60 | 5c 22 88 c5 0e 06 21 c7 |n.C... `|\"....!.|
|00001360| c8 0e 06 21 86 19 00 c9 | 21 1e 5c 6e 1e 0b 0e 06 |...!....|!.\n....|
|00001370| c9 9a 84 33 00 cc 0e 5c | 6e 21 83 33 00 cd 0e 0b |...3...\|n!.3....|
|00001380| 0e 5c 6e 5c 22 11 09 ce | 3d 84 40 00 09 0e 0b 98 |.\n\"...|=.@.....|
|00001390| 83 42 00 c0 11 2a 09 84 | 52 00 5c 6e 83 4e 00 cf |.B...*..|R.\n.N..|
|000013a0| 20 88 c0 82 67 00 c8 0e | 06 21 09 50 1e 10 d1 0e | ...g...|.!.P....|
|000013b0| 10 21 88 09 0e 12 42 16 | 12 29 ce 29 87 22 20 5b |.!....B.|.).)." [|
|000013c0| 6e 69 6c 20 65 78 70 61 | 6e 73 69 6f 6e 20 6f 6c |nil expa|nsion ol|
|000013d0| 64 20 68 65 2d 69 6e 69 | 74 2d 73 74 72 69 6e 67 |d he-ini|t-string|
|000013e0| 20 68 65 2d 66 69 6c 65 | 2d 6e 61 6d 65 2d 62 65 | he-file|-name-be|
|000013f0| 67 20 66 69 6c 65 2d 6e | 61 6d 65 2d 6e 6f 6e 64 |g file-n|ame-nond|
|00001400| 69 72 65 63 74 6f 72 79 | 20 68 65 2d 73 65 61 72 |irectory| he-sear|
|00001410| 63 68 2d 73 74 72 69 6e | 67 20 65 78 70 61 6e 64 |ch-strin|g expand|
|00001420| 2d 66 69 6c 65 2d 6e 61 | 6d 65 20 66 69 6c 65 2d |-file-na|me file-|
|00001430| 6e 61 6d 65 2d 64 69 72 | 65 63 74 6f 72 79 20 22 |name-dir|ectory "|
|00001440| 22 20 64 69 72 2d 70 61 | 72 74 20 6e 61 6d 65 2d |" dir-pa|rt name-|
|00001450| 70 61 72 74 20 66 69 6c | 65 2d 64 69 72 65 63 74 |part fil|e-direct|
|00001460| 6f 72 79 2d 70 20 66 69 | 6c 65 2d 6e 61 6d 65 2d |ory-p fi|le-name-|
|00001470| 63 6f 6d 70 6c 65 74 69 | 6f 6e 20 74 20 68 65 2d |completi|on t he-|
|00001480| 72 65 73 65 74 2d 73 74 | 72 69 6e 67 20 66 69 6c |reset-st|ring fil|
|00001490| 65 6e 61 6d 65 20 68 65 | 2d 73 75 62 73 74 69 74 |ename he|-substit|
|000014a0| 75 74 65 2d 73 74 72 69 | 6e 67 20 68 65 2d 74 72 |ute-stri|ng he-tr|
|000014b0| 69 65 64 2d 74 61 62 6c | 65 5d 20 34 20 22 5c 0a |ied-tabl|e] 4 "\.|
|000014c0| 54 72 79 20 74 6f 20 63 | 6f 6d 70 6c 65 74 65 20 |Try to c|omplete |
|000014d0| 74 65 78 74 20 61 73 20 | 61 20 66 69 6c 65 20 6e |text as |a file n|
|000014e0| 61 6d 65 2c 20 61 73 20 | 6d 61 6e 79 20 63 68 61 |ame, as |many cha|
|000014f0| 72 61 63 74 65 72 73 20 | 61 73 20 75 6e 69 71 75 |racters |as uniqu|
|00001500| 65 2e 0a 54 68 65 20 61 | 72 67 75 6d 65 6e 74 20 |e..The a|rgument |
|00001510| 4f 4c 44 20 68 61 73 20 | 74 6f 20 62 65 20 6e 69 |OLD has |to be ni|
|00001520| 6c 20 74 68 65 20 66 69 | 72 73 74 20 63 61 6c 6c |l the fi|rst call|
|00001530| 20 6f 66 20 74 68 69 73 | 20 66 75 6e 63 74 69 6f | of this| functio|
|00001540| 6e 2e 20 20 49 74 0a 72 | 65 74 75 72 6e 73 20 74 |n. It.r|eturns t|
|00001550| 20 69 66 20 61 20 75 6e | 69 71 75 65 2c 20 70 6f | if a un|ique, po|
|00001560| 73 73 69 62 6c 79 20 70 | 61 72 74 69 61 6c 2c 20 |ssibly p|artial, |
|00001570| 63 6f 6d 70 6c 65 74 69 | 6f 6e 20 69 73 20 66 6f |completi|on is fo|
|00001580| 75 6e 64 2c 20 6e 69 6c | 20 0a 6f 74 68 65 72 77 |und, nil| .otherw|
|00001590| 69 73 65 2e 22 5d 29 0a | 28 64 65 66 61 6c 69 61 |ise."]).|(defalia|
|000015a0| 73 20 28 71 75 6f 74 65 | 20 68 65 2d 66 69 6c 65 |s (quote| he-file|
|000015b0| 2d 6e 61 6d 65 2d 62 65 | 67 29 20 23 5b 6e 69 6c |-name-be|g) #[nil|
|000015c0| 20 22 c0 19 8a 09 c2 78 | 88 60 2a 87 22 20 5b 22 | ".....x|.`*." ["|
|000015d0| 2d 61 2d 7a 41 2d 5a 30 | 2d 39 5f 2e 2f 7e 5e 23 |-a-zA-Z0|-9_./~^#|
|000015e0| 24 22 20 73 6b 69 70 73 | 20 6e 69 6c 5d 20 32 5d |$" skips| nil] 2]|
|000015f0| 29 0a 28 64 65 66 61 6c | 69 61 73 20 27 74 72 79 |).(defal|ias 'try|
|00001600| 2d 63 6f 6d 70 6c 65 74 | 65 2d 6c 69 73 70 2d 73 |-complet|e-lisp-s|
|00001610| 79 6d 62 6f 6c 20 23 5b | 28 6f 6c 64 29 20 22 08 |ymbol #[|(old) ".|
|00001620| 84 27 00 c1 c2 20 60 5c | 22 88 c3 5c 66 0d 5c 22 |.'... `\|"..\f.\"|
|00001630| 84 15 00 5c 66 0d 42 15 | 5c 66 c6 9a 3f 85 25 00 |...\f.B.|\f..?.%.|
|00001640| c7 c8 5c 66 0e 09 ca 23 | cb 5c 22 16 5c 66 0e 5c |..\f...#|.\".\f.\|
|00001650| 66 83 3e 00 c3 0e 5c 66 | 40 0d 5c 22 83 3e 00 0e |f.>...\f|@.\".>..|
|00001660| 5c 66 41 89 16 5c 66 84 | 2c 00 0e 5c 66 84 4c 00 |\fA..\f.|,..\f.L.|
|00001670| 08 83 4a 00 cd 20 88 ce | 87 cf 0e 5c 66 40 21 88 |..J.. ..|...\f@!.|
|00001680| 0e 5c 66 40 0d 42 15 0e | 5c 66 41 16 5c 66 d0 87 |.\f@.B..|\fA.\f..|
|00001690| 22 20 5b 6f 6c 64 20 68 | 65 2d 69 6e 69 74 2d 73 |" [old h|e-init-s|
|000016a0| 74 72 69 6e 67 20 68 65 | 2d 6c 69 73 70 2d 73 79 |tring he|-lisp-sy|
|000016b0| 6d 62 6f 6c 2d 62 65 67 | 20 68 65 2d 73 74 72 69 |mbol-beg| he-stri|
|000016c0| 6e 67 2d 6d 65 6d 62 65 | 72 20 68 65 2d 73 65 61 |ng-membe|r he-sea|
|000016d0| 72 63 68 2d 73 74 72 69 | 6e 67 20 68 65 2d 74 72 |rch-stri|ng he-tr|
|000016e0| 69 65 64 2d 74 61 62 6c | 65 20 22 22 20 73 6f 72 |ied-tabl|e "" sor|
|000016f0| 74 20 61 6c 6c 2d 63 6f | 6d 70 6c 65 74 69 6f 6e |t all-co|mpletion|
|00001700| 73 20 6f 62 61 72 72 61 | 79 20 23 5b 28 73 79 6d |s obarra|y #[(sym|
|00001710| 29 20 22 c0 09 21 86 0f | 00 c2 09 21 86 0f 00 c3 |) "..!..|...!....|
|00001720| 09 21 87 22 20 5b 62 6f | 75 6e 64 70 20 73 79 6d |.!." [bo|undp sym|
|00001730| 20 66 62 6f 75 6e 64 70 | 20 73 79 6d 62 6f 6c 2d | fboundp| symbol-|
|00001740| 70 6c 69 73 74 5d 20 32 | 5d 20 73 74 72 69 6e 67 |plist] 2|] string|
|00001750| 2d 6c 65 73 73 70 20 68 | 65 2d 65 78 70 61 6e 64 |-lessp h|e-expand|
|00001760| 2d 6c 69 73 74 20 68 65 | 2d 72 65 73 65 74 2d 73 |-list he|-reset-s|
|00001770| 74 72 69 6e 67 20 6e 69 | 6c 20 68 65 2d 73 75 62 |tring ni|l he-sub|
|00001780| 73 74 69 74 75 74 65 2d | 73 74 72 69 6e 67 20 74 |stitute-|string t|
|00001790| 5d 20 36 20 22 5c 0a 54 | 72 79 20 74 6f 20 63 6f |] 6 "\.T|ry to co|
|000017a0| 6d 70 6c 65 74 65 20 77 | 6f 72 64 20 61 73 20 61 |mplete w|ord as a|
|000017b0| 6e 20 45 6d 61 63 73 20 | 4c 69 73 70 20 73 79 6d |n Emacs |Lisp sym|
|000017c0| 62 6f 6c 2e 0a 54 68 65 | 20 61 72 67 75 6d 65 6e |bol..The| argumen|
|000017d0| 74 20 4f 4c 44 20 68 61 | 73 20 74 6f 20 62 65 20 |t OLD ha|s to be |
|000017e0| 6e 69 6c 20 74 68 65 20 | 66 69 72 73 74 20 63 61 |nil the |first ca|
|000017f0| 6c 6c 20 6f 66 20 74 68 | 69 73 20 66 75 6e 63 74 |ll of th|is funct|
|00001800| 69 6f 6e 2c 20 61 6e 64 | 20 74 0a 66 6f 72 20 73 |ion, and| t.for s|
|00001810| 75 62 73 65 71 75 65 6e | 74 20 63 61 6c 6c 73 20 |ubsequen|t calls |
|00001820| 28 66 6f 72 20 66 75 72 | 74 68 65 72 20 70 6f 73 |(for fur|ther pos|
|00001830| 73 69 62 6c 65 20 63 6f | 6d 70 6c 65 74 69 6f 6e |sible co|mpletion|
|00001840| 73 20 6f 66 20 74 68 65 | 20 73 61 6d 65 0a 73 74 |s of the| same.st|
|00001850| 72 69 6e 67 29 2e 20 20 | 49 74 20 72 65 74 75 72 |ring). |It retur|
|00001860| 6e 73 20 74 20 69 66 20 | 61 20 6e 65 77 20 63 6f |ns t if |a new co|
|00001870| 6d 70 6c 65 74 69 6f 6e | 20 69 73 20 66 6f 75 6e |mpletion| is foun|
|00001880| 64 2c 20 6e 69 6c 20 6f | 74 68 65 72 77 69 73 65 |d, nil o|therwise|
|00001890| 2e 22 5d 29 0a 28 64 65 | 66 61 6c 69 61 73 20 27 |."]).(de|falias '|
|000018a0| 74 72 79 2d 63 6f 6d 70 | 6c 65 74 65 2d 6c 69 73 |try-comp|lete-lis|
|000018b0| 70 2d 73 79 6d 62 6f 6c | 2d 70 61 72 74 69 61 6c |p-symbol|-partial|
|000018c0| 6c 79 20 23 5b 28 6f 6c | 64 29 20 22 c0 19 5c 6e |ly #[(ol|d) "..\n|
|000018d0| 84 27 00 c3 c4 20 60 5c | 22 88 0d c6 98 84 19 00 |.'... `\|".......|
|000018e0| c7 0d 0e 08 c9 23 11 09 | ca 3d 84 25 00 09 0d 98 |.....#..|.=.%....|
|000018f0| 83 27 00 c0 11 09 84 36 | 00 5c 6e 83 32 00 cb 20 |.'.....6|.\n.2.. |
|00001900| 88 c0 82 41 00 cc 09 21 | 88 09 0e 0d 42 16 0d ca |...A...!|....B...|
|00001910| 29 87 22 20 5b 6e 69 6c | 20 65 78 70 61 6e 73 69 |)." [nil| expansi|
|00001920| 6f 6e 20 6f 6c 64 20 68 | 65 2d 69 6e 69 74 2d 73 |on old h|e-init-s|
|00001930| 74 72 69 6e 67 20 68 65 | 2d 6c 69 73 70 2d 73 79 |tring he|-lisp-sy|
|00001940| 6d 62 6f 6c 2d 62 65 67 | 20 68 65 2d 73 65 61 72 |mbol-beg| he-sear|
|00001950| 63 68 2d 73 74 72 69 6e | 67 20 22 22 20 74 72 79 |ch-strin|g "" try|
|00001960| 2d 63 6f 6d 70 6c 65 74 | 69 6f 6e 20 6f 62 61 72 |-complet|ion obar|
|00001970| 72 61 79 20 23 5b 28 73 | 79 6d 29 20 22 c0 09 21 |ray #[(s|ym) "..!|
|00001980| 86 0f 00 c2 09 21 86 0f | 00 c3 09 21 87 22 20 5b |.....!..|...!." [|
|00001990| 62 6f 75 6e 64 70 20 73 | 79 6d 20 66 62 6f 75 6e |boundp s|ym fboun|
|000019a0| 64 70 20 73 79 6d 62 6f | 6c 2d 70 6c 69 73 74 5d |dp symbo|l-plist]|
|000019b0| 20 32 5d 20 74 20 68 65 | 2d 72 65 73 65 74 2d 73 | 2] t he|-reset-s|
|000019c0| 74 72 69 6e 67 20 68 65 | 2d 73 75 62 73 74 69 74 |tring he|-substit|
|000019d0| 75 74 65 2d 73 74 72 69 | 6e 67 20 68 65 2d 74 72 |ute-stri|ng he-tr|
|000019e0| 69 65 64 2d 74 61 62 6c | 65 5d 20 34 20 22 5c 0a |ied-tabl|e] 4 "\.|
|000019f0| 54 72 79 20 74 6f 20 63 | 6f 6d 70 6c 65 74 65 20 |Try to c|omplete |
|00001a00| 61 73 20 61 6e 20 45 6d | 61 63 73 20 4c 69 73 70 |as an Em|acs Lisp|
|00001a10| 20 73 79 6d 62 6f 6c 2c | 20 61 73 20 6d 61 6e 79 | symbol,| as many|
|00001a20| 20 63 68 61 72 61 63 74 | 65 72 73 20 61 73 20 75 | charact|ers as u|
|00001a30| 6e 69 71 75 65 2e 0a 54 | 68 65 20 61 72 67 75 6d |nique..T|he argum|
|00001a40| 65 6e 74 20 4f 4c 44 20 | 68 61 73 20 74 6f 20 62 |ent OLD |has to b|
|00001a50| 65 20 6e 69 6c 20 74 68 | 65 20 66 69 72 73 74 20 |e nil th|e first |
|00001a60| 63 61 6c 6c 20 6f 66 20 | 74 68 69 73 20 66 75 6e |call of |this fun|
|00001a70| 63 74 69 6f 6e 2e 20 20 | 49 74 0a 72 65 74 75 72 |ction. |It.retur|
|00001a80| 6e 73 20 74 20 69 66 20 | 61 20 75 6e 69 71 75 65 |ns t if |a unique|
|00001a90| 2c 20 70 6f 73 73 69 62 | 6c 79 20 70 61 72 74 69 |, possib|ly parti|
|00001aa0| 61 6c 2c 20 63 6f 6d 70 | 6c 65 74 69 6f 6e 20 69 |al, comp|letion i|
|00001ab0| 73 20 66 6f 75 6e 64 2c | 20 6e 69 6c 20 0a 6f 74 |s found,| nil .ot|
|00001ac0| 68 65 72 77 69 73 65 2e | 22 5d 29 0a 28 64 65 66 |herwise.|"]).(def|
|00001ad0| 61 6c 69 61 73 20 28 71 | 75 6f 74 65 20 68 65 2d |alias (q|uote he-|
|00001ae0| 6c 69 73 70 2d 73 79 6d | 62 6f 6c 2d 62 65 67 29 |lisp-sym|bol-beg)|
|00001af0| 20 23 5b 6e 69 6c 20 22 | c0 19 8a 09 c2 78 88 60 | #[nil "|.....x.`|
|00001b00| 2a 87 22 20 5b 22 2d 61 | 2d 7a 41 2d 5a 30 2d 39 |*." ["-a|-zA-Z0-9|
|00001b10| 5f 2e 22 20 73 6b 69 70 | 73 20 6e 69 6c 5d 20 32 |_." skip|s nil] 2|
|00001b20| 5d 29 0a 28 64 65 66 61 | 6c 69 61 73 20 27 74 72 |]).(defa|lias 'tr|
|00001b30| 79 2d 65 78 70 61 6e 64 | 2d 6c 69 6e 65 20 23 5b |y-expand|-line #[|
|00001b40| 28 6f 6c 64 29 20 22 c0 | c1 70 21 85 08 00 5c 6e |(old) ".|.p!...\n|
|00001b50| 1b 1c 0d 84 1f 00 c6 c7 | 0b 21 60 5c 22 88 0e 08 |........|.!`\"...|
|00001b60| 0e 09 c0 93 88 ca 16 0b | 0e 5c 66 cd 9a 84 61 00 |........|.\f...a.|
|00001b70| 8a 0e 0b 83 4b 00 0e 08 | 62 88 ce 0e 5c 66 0b ca |....K...|b...\f..|
|00001b80| 23 14 0e 08 60 c0 93 88 | 5c 66 84 4b 00 0e 08 0e |#...`...|\f.K....|
|00001b90| 0f c0 93 88 c0 16 0b 5c | 66 84 60 00 0e 08 62 88 |.......\|f.`...b.|
|00001ba0| ce 0e 5c 66 0b c0 23 14 | 0e 08 60 c0 93 88 29 5c |..\f..#.|..`...)\|
|00001bb0| 66 84 70 00 0d 83 6c 00 | d0 20 88 c0 82 7c 00 d1 |f.p...l.|. ...|..|
|00001bc0| 5c 66 ca 5c 22 88 5c 66 | 0e 12 42 16 12 ca 2a 87 |\f.\".\f|..B...*.|
|00001bd0| 22 20 5b 6e 69 6c 20 67 | 65 74 2d 62 75 66 66 65 |" [nil g|et-buffe|
|00001be0| 72 2d 70 72 6f 63 65 73 | 73 20 63 6f 6d 69 6e 74 |r-proces|s comint|
|00001bf0| 2d 70 72 6f 6d 70 74 2d | 72 65 67 65 78 70 20 73 |-prompt-|regexp s|
|00001c00| 74 72 69 70 2d 70 72 6f | 6d 70 74 20 65 78 70 61 |trip-pro|mpt expa|
|00001c10| 6e 73 69 6f 6e 20 6f 6c | 64 20 68 65 2d 69 6e 69 |nsion ol|d he-ini|
|00001c20| 74 2d 73 74 72 69 6e 67 | 20 68 65 2d 6c 69 6e 65 |t-string| he-line|
|00001c30| 2d 62 65 67 20 68 65 2d | 73 65 61 72 63 68 2d 6c |-beg he-|search-l|
|00001c40| 6f 63 20 68 65 2d 73 74 | 72 69 6e 67 2d 62 65 67 |oc he-st|ring-beg|
|00001c50| 20 74 20 68 65 2d 73 65 | 61 72 63 68 2d 62 77 20 | t he-se|arch-bw |
|00001c60| 68 65 2d 73 65 61 72 63 | 68 2d 73 74 72 69 6e 67 |he-searc|h-string|
|00001c70| 20 22 22 20 68 65 2d 6c | 69 6e 65 2d 73 65 61 72 | "" he-l|ine-sear|
|00001c80| 63 68 20 68 65 2d 73 74 | 72 69 6e 67 2d 65 6e 64 |ch he-st|ring-end|
|00001c90| 20 68 65 2d 72 65 73 65 | 74 2d 73 74 72 69 6e 67 | he-rese|t-string|
|00001ca0| 20 68 65 2d 73 75 62 73 | 74 69 74 75 74 65 2d 73 | he-subs|titute-s|
|00001cb0| 74 72 69 6e 67 20 68 65 | 2d 74 72 69 65 64 2d 74 |tring he|-tried-t|
|00001cc0| 61 62 6c 65 5d 20 34 20 | 22 5c 0a 54 72 79 20 74 |able] 4 |"\.Try t|
|00001cd0| 6f 20 63 6f 6d 70 6c 65 | 74 65 20 74 68 65 20 63 |o comple|te the c|
|00001ce0| 75 72 72 65 6e 74 20 6c | 69 6e 65 20 74 6f 20 61 |urrent l|ine to a|
|00001cf0| 6e 20 65 6e 74 69 72 65 | 20 6c 69 6e 65 20 69 6e |n entire| line in|
|00001d00| 20 74 68 65 20 62 75 66 | 66 65 72 2e 0a 54 68 65 | the buf|fer..The|
|00001d10| 20 61 72 67 75 6d 65 6e | 74 20 4f 4c 44 20 68 61 | argumen|t OLD ha|
|00001d20| 73 20 74 6f 20 62 65 20 | 6e 69 6c 20 74 68 65 20 |s to be |nil the |
|00001d30| 66 69 72 73 74 20 63 61 | 6c 6c 20 6f 66 20 74 68 |first ca|ll of th|
|00001d40| 69 73 20 66 75 6e 63 74 | 69 6f 6e 2c 20 61 6e 64 |is funct|ion, and|
|00001d50| 20 74 0a 66 6f 72 20 73 | 75 62 73 65 71 75 65 6e | t.for s|ubsequen|
|00001d60| 74 20 63 61 6c 6c 73 20 | 28 66 6f 72 20 66 75 72 |t calls |(for fur|
|00001d70| 74 68 65 72 20 70 6f 73 | 73 69 62 6c 65 20 63 6f |ther pos|sible co|
|00001d80| 6d 70 6c 65 74 69 6f 6e | 73 20 6f 66 20 74 68 65 |mpletion|s of the|
|00001d90| 20 73 61 6d 65 0a 73 74 | 72 69 6e 67 29 2e 20 20 | same.st|ring). |
|00001da0| 49 74 20 72 65 74 75 72 | 6e 73 20 74 20 69 66 20 |It retur|ns t if |
|00001db0| 61 20 6e 65 77 20 63 6f | 6d 70 6c 65 74 69 6f 6e |a new co|mpletion|
|00001dc0| 20 69 73 20 66 6f 75 6e | 64 2c 20 6e 69 6c 20 6f | is foun|d, nil o|
|00001dd0| 74 68 65 72 77 69 73 65 | 2e 22 5d 29 0a 28 64 65 |therwise|."]).(de|
|00001de0| 66 61 6c 69 61 73 20 27 | 74 72 79 2d 65 78 70 61 |falias '|try-expa|
|00001df0| 6e 64 2d 6c 69 6e 65 2d | 61 6c 6c 2d 62 75 66 66 |nd-line-|all-buff|
|00001e00| 65 72 73 20 23 5b 28 6f | 6c 64 29 20 22 c0 c1 70 |ers #[(o|ld) "..p|
|00001e10| 21 85 08 00 5c 6e 70 1b | 1c 1d 0e 06 84 27 00 c7 |!...\np.|.....'..|
|00001e20| c8 5c 66 21 60 5c 22 88 | c9 20 16 5c 6e cb 16 5c |.\f!`\".|. .\n..\|
|00001e30| 66 0e 0d ce 0e 5c 6e 40 | 93 88 0e 0f d0 9a 84 ad |f....\n@|........|
|00001e40| 00 0e 5c 6e 83 ad 00 0d | 84 ad 00 0e 11 83 44 00 |..\n....|......D.|
|00001e50| 0e 5c 66 0e 11 57 83 ad | 00 0e 5c 6e 40 71 88 70 |.\f..W..|..\n@q.p|
|00001e60| 0b 3d 84 9d 00 0e 12 0e | 13 3e 84 9d 00 d4 d5 20 |.=......|.>..... |
|00001e70| 0e 13 5c 22 84 9d 00 8a | 0e 0d 62 88 c1 70 21 85 |..\"....|..b..p!.|
|00001e80| 6c 00 5c 6e 14 d6 0e 0f | 5c 66 c0 23 15 0e 0d 60 |l.\n....|\f.#...`|
|00001e90| c0 93 88 0d 83 87 00 0d | 0e 17 42 16 17 82 99 00 |........|..B.....|
|00001ea0| 0e 5c 6e 41 16 5c 6e 0e | 5c 66 54 16 5c 66 0e 0d |.\nA.\n.|\fT.\f..|
|00001eb0| ce 0e 5c 6e 40 93 88 29 | 82 2e 00 0e 5c 6e 41 16 |..\n@..)|....\nA.|
|00001ec0| 5c 6e 0e 0d ce 0e 5c 6e | 40 93 88 82 2e 00 0b 71 |\n....\n|@......q|
|00001ed0| 88 0d 84 c0 00 0e 06 83 | bc 00 d8 20 88 c0 82 c6 |........|... ....|
|00001ee0| 00 d9 0d da 5c 22 88 da | 2b 87 22 20 5b 6e 69 6c |....\"..|+." [nil|
|00001ef0| 20 67 65 74 2d 62 75 66 | 66 65 72 2d 70 72 6f 63 | get-buf|fer-proc|
|00001f00| 65 73 73 20 63 6f 6d 69 | 6e 74 2d 70 72 6f 6d 70 |ess comi|nt-promp|
|00001f10| 74 2d 72 65 67 65 78 70 | 20 62 75 66 20 73 74 72 |t-regexp| buf str|
|00001f20| 69 70 2d 70 72 6f 6d 70 | 74 20 65 78 70 61 6e 73 |ip-promp|t expans|
|00001f30| 69 6f 6e 20 6f 6c 64 20 | 68 65 2d 69 6e 69 74 2d |ion old |he-init-|
|00001f40| 73 74 72 69 6e 67 20 68 | 65 2d 6c 69 6e 65 2d 62 |string h|e-line-b|
|00001f50| 65 67 20 62 75 66 66 65 | 72 2d 6c 69 73 74 20 68 |eg buffe|r-list h|
|00001f60| 65 2d 73 65 61 72 63 68 | 2d 62 75 66 73 20 30 20 |e-search|-bufs 0 |
|00001f70| 68 65 2d 73 65 61 72 63 | 68 65 64 2d 6e 2d 62 75 |he-searc|hed-n-bu|
|00001f80| 66 73 20 68 65 2d 73 65 | 61 72 63 68 2d 6c 6f 63 |fs he-se|arch-loc|
|00001f90| 20 31 20 68 65 2d 73 65 | 61 72 63 68 2d 73 74 72 | 1 he-se|arch-str|
|00001fa0| 69 6e 67 20 22 22 20 68 | 69 70 70 69 65 2d 65 78 |ing "" h|ippie-ex|
|00001fb0| 70 61 6e 64 2d 6d 61 78 | 2d 62 75 66 66 65 72 73 |pand-max|-buffers|
|00001fc0| 20 6d 61 6a 6f 72 2d 6d | 6f 64 65 20 68 69 70 70 | major-m|ode hipp|
|00001fd0| 69 65 2d 65 78 70 61 6e | 64 2d 69 67 6e 6f 72 65 |ie-expan|d-ignore|
|00001fe0| 2d 62 75 66 66 65 72 73 | 20 68 65 2d 72 65 67 65 |-buffers| he-rege|
|00001ff0| 78 70 2d 6d 65 6d 62 65 | 72 20 62 75 66 66 65 72 |xp-membe|r buffer|
|00002000| 2d 6e 61 6d 65 20 68 65 | 2d 6c 69 6e 65 2d 73 65 |-name he|-line-se|
|00002010| 61 72 63 68 20 68 65 2d | 74 72 69 65 64 2d 74 61 |arch he-|tried-ta|
|00002020| 62 6c 65 20 68 65 2d 72 | 65 73 65 74 2d 73 74 72 |ble he-r|eset-str|
|00002030| 69 6e 67 20 68 65 2d 73 | 75 62 73 74 69 74 75 74 |ing he-s|ubstitut|
|00002040| 65 2d 73 74 72 69 6e 67 | 20 74 5d 20 34 20 22 5c |e-string| t] 4 "\|
|00002050| 0a 54 72 79 20 74 6f 20 | 63 6f 6d 70 6c 65 74 65 |.Try to |complete|
|00002060| 20 74 68 65 20 63 75 72 | 72 65 6e 74 20 6c 69 6e | the cur|rent lin|
|00002070| 65 2c 20 73 65 61 72 63 | 68 69 6e 67 20 61 6c 6c |e, searc|hing all|
|00002080| 20 6f 74 68 65 72 20 62 | 75 66 66 65 72 73 2e 0a | other b|uffers..|
|00002090| 54 68 65 20 61 72 67 75 | 6d 65 6e 74 20 4f 4c 44 |The argu|ment OLD|
|000020a0| 20 68 61 73 20 74 6f 20 | 62 65 20 6e 69 6c 20 74 | has to |be nil t|
|000020b0| 68 65 20 66 69 72 73 74 | 20 63 61 6c 6c 20 6f 66 |he first| call of|
|000020c0| 20 74 68 69 73 20 66 75 | 6e 63 74 69 6f 6e 2c 20 | this fu|nction, |
|000020d0| 61 6e 64 20 74 0a 66 6f | 72 20 73 75 62 73 65 71 |and t.fo|r subseq|
|000020e0| 75 65 6e 74 20 63 61 6c | 6c 73 20 28 66 6f 72 20 |uent cal|ls (for |
|000020f0| 66 75 72 74 68 65 72 20 | 70 6f 73 73 69 62 6c 65 |further |possible|
|00002100| 20 63 6f 6d 70 6c 65 74 | 69 6f 6e 73 20 6f 66 20 | complet|ions of |
|00002110| 74 68 65 20 73 61 6d 65 | 0a 73 74 72 69 6e 67 29 |the same|.string)|
|00002120| 2e 20 20 49 74 20 72 65 | 74 75 72 6e 73 20 74 20 |. It re|turns t |
|00002130| 69 66 20 61 20 6e 65 77 | 20 63 6f 6d 70 6c 65 74 |if a new| complet|
|00002140| 69 6f 6e 20 69 73 20 66 | 6f 75 6e 64 2c 20 6e 69 |ion is f|ound, ni|
|00002150| 6c 20 6f 74 68 65 72 77 | 69 73 65 2e 22 5d 29 0a |l otherw|ise."]).|
|00002160| 28 62 79 74 65 2d 63 6f | 64 65 20 22 c0 c1 c2 5c |(byte-co|de "...\|
|00002170| 22 88 c0 c3 c4 5c 22 88 | c0 c5 c6 5c 22 87 22 20 |"....\".|...\"." |
|00002180| 5b 64 65 66 61 6c 69 61 | 73 20 68 65 2d 6c 69 6e |[defalia|s he-lin|
|00002190| 65 2d 73 65 61 72 63 68 | 20 23 5b 28 73 74 72 20 |e-search| #[(str |
|000021a0| 73 74 72 69 70 2d 70 72 | 6f 6d 70 74 20 72 65 76 |strip-pr|ompt rev|
|000021b0| 65 72 73 65 29 20 22 c0 | 19 09 84 36 00 5c 6e 83 |erse) ".|...6.\n.|
|000021c0| 16 00 c3 c4 0d 0e 06 5c | 22 c0 c7 23 82 1f 00 c8 |.......\|"..#....|
|000021d0| c4 0d 0e 06 5c 22 c0 c7 | 23 83 36 00 c9 94 c9 95 |....\"..|#.6.....|
|000021e0| 7b 11 ca 09 0e 0b 5c 22 | 83 02 00 c0 89 11 83 06 |{.....\"|........|
|000021f0| 00 09 29 87 22 20 5b 6e | 69 6c 20 72 65 73 75 6c |..)." [n|il resul|
|00002200| 74 20 72 65 76 65 72 73 | 65 20 72 65 2d 73 65 61 |t revers|e re-sea|
|00002210| 72 63 68 2d 62 61 63 6b | 77 61 72 64 20 68 65 2d |rch-back|ward he-|
|00002220| 6c 69 6e 65 2d 73 65 61 | 72 63 68 2d 72 65 67 65 |line-sea|rch-rege|
|00002230| 78 70 20 73 74 72 20 73 | 74 72 69 70 2d 70 72 6f |xp str s|trip-pro|
|00002240| 6d 70 74 20 74 20 72 65 | 2d 73 65 61 72 63 68 2d |mpt t re|-search-|
|00002250| 66 6f 72 77 61 72 64 20 | 32 20 68 65 2d 73 74 72 |forward |2 he-str|
|00002260| 69 6e 67 2d 6d 65 6d 62 | 65 72 20 68 65 2d 74 72 |ing-memb|er he-tr|
|00002270| 69 65 64 2d 74 61 62 6c | 65 5d 20 35 5d 20 68 65 |ied-tabl|e] 5] he|
|00002280| 2d 6c 69 6e 65 2d 62 65 | 67 20 23 5b 28 73 74 72 |-line-be|g #[(str|
|00002290| 69 70 2d 70 72 6f 6d 70 | 74 29 20 22 8a c0 7f 88 |ip-promp|t) "....|
|000022a0| c1 c2 c3 5c 66 5c 22 8a | c5 79 88 60 29 c6 23 83 |...\f\".|.y.`).#.|
|000022b0| 19 00 c7 94 82 1d 00 c5 | 79 88 60 29 87 22 20 5b |........|y.`)." [|
|000022c0| 6e 69 6c 20 72 65 2d 73 | 65 61 72 63 68 2d 62 61 |nil re-s|earch-ba|
|000022d0| 63 6b 77 61 72 64 20 68 | 65 2d 6c 69 6e 65 2d 73 |ckward h|e-line-s|
|000022e0| 65 61 72 63 68 2d 72 65 | 67 65 78 70 20 22 22 20 |earch-re|gexp "" |
|000022f0| 73 74 72 69 70 2d 70 72 | 6f 6d 70 74 20 30 20 74 |strip-pr|ompt 0 t|
|00002300| 20 32 5d 20 34 5d 20 68 | 65 2d 6c 69 6e 65 2d 73 | 2] 4] h|e-line-s|
|00002310| 65 61 72 63 68 2d 72 65 | 67 65 78 70 20 23 5b 28 |earch-re|gexp #[(|
|00002320| 70 61 74 20 73 74 72 69 | 70 2d 70 72 6f 6d 70 74 |pat stri|p-prompt|
|00002330| 29 20 22 08 83 0e 00 c1 | 5c 6e c3 c4 0d 21 c6 b0 |) ".....|\n...!..|
|00002340| 05 87 c7 c4 0d 21 c6 51 | 87 22 20 5b 73 74 72 69 |.....!.Q|." [stri|
|00002350| 70 2d 70 72 6f 6d 70 74 | 20 22 5c 5c 28 22 20 63 |p-prompt| "\\(" c|
|00002360| 6f 6d 69 6e 74 2d 70 72 | 6f 6d 70 74 2d 72 65 67 |omint-pr|ompt-reg|
|00002370| 65 78 70 20 22 5c 5c 7c | 5e 5c 5c 73 2d 2a 5c 5c |exp "\\||^\\s-*\\|
|00002380| 29 5c 5c 28 22 20 72 65 | 67 65 78 70 2d 71 75 6f |)\\(" re|gexp-quo|
|00002390| 74 65 20 70 61 74 20 22 | 5b 5e 5c 6e 5d 2a 5b 5e |te pat "|[^\n]*[^|
|000023a0| 20 09 5c 6e 5d 5c 5c 29 | 22 20 22 5e 5c 5c 28 5c | .\n]\\)|" "^\\(\|
|000023b0| 5c 73 2d 2a 5c 5c 29 5c | 5c 28 22 5d 20 35 5d 5d |\s-*\\)\|\("] 5]]|
|000023c0| 20 33 29 0a 28 64 65 66 | 61 6c 69 61 73 20 27 74 | 3).(def|alias 't|
|000023d0| 72 79 2d 65 78 70 61 6e | 64 2d 6c 69 73 74 20 23 |ry-expan|d-list #|
|000023e0| 5b 28 6f 6c 64 29 20 22 | c0 19 5c 6e 84 15 00 c3 |[(old) "|..\n....|
|000023f0| c4 20 60 5c 22 88 0d 0e | 06 c0 93 88 c7 16 08 0e |. `\"...|........|
|00002400| 09 ca 9a 84 50 00 8a 0e | 08 83 3d 00 0d 62 88 cb |....P...|..=..b..|
|00002410| 0e 09 c7 5c 22 11 0d 60 | c0 93 88 09 84 3d 00 0d |...\"..`|.....=..|
|00002420| 0e 5c 66 c0 93 88 c0 16 | 08 09 84 4f 00 0d 62 88 |.\f.....|...O..b.|
|00002430| cb 0e 09 c0 5c 22 11 0d | 60 c0 93 88 29 09 84 5f |....\"..|`...).._|
|00002440| 00 5c 6e 83 5b 00 cd 20 | 88 c0 82 6b 00 ce 09 c7 |.\n.[.. |...k....|
|00002450| 5c 22 88 09 0e 0f 42 16 | 0f c7 29 87 22 20 5b 6e |\"....B.|..)." [n|
|00002460| 69 6c 20 65 78 70 61 6e | 73 69 6f 6e 20 6f 6c 64 |il expan|sion old|
|00002470| 20 68 65 2d 69 6e 69 74 | 2d 73 74 72 69 6e 67 20 | he-init|-string |
|00002480| 68 65 2d 6c 69 73 74 2d | 62 65 67 20 68 65 2d 73 |he-list-|beg he-s|
|00002490| 65 61 72 63 68 2d 6c 6f | 63 20 68 65 2d 73 74 72 |earch-lo|c he-str|
|000024a0| 69 6e 67 2d 62 65 67 20 | 74 20 68 65 2d 73 65 61 |ing-beg |t he-sea|
|000024b0| 72 63 68 2d 62 77 20 68 | 65 2d 73 65 61 72 63 68 |rch-bw h|e-search|
|000024c0| 2d 73 74 72 69 6e 67 20 | 22 22 20 68 65 2d 6c 69 |-string |"" he-li|
|000024d0| 73 74 2d 73 65 61 72 63 | 68 20 68 65 2d 73 74 72 |st-searc|h he-str|
|000024e0| 69 6e 67 2d 65 6e 64 20 | 68 65 2d 72 65 73 65 74 |ing-end |he-reset|
|000024f0| 2d 73 74 72 69 6e 67 20 | 68 65 2d 73 75 62 73 74 |-string |he-subst|
|00002500| 69 74 75 74 65 2d 73 74 | 72 69 6e 67 20 68 65 2d |itute-st|ring he-|
|00002510| 74 72 69 65 64 2d 74 61 | 62 6c 65 5d 20 33 20 22 |tried-ta|ble] 3 "|
|00002520| 5c 0a 54 72 79 20 74 6f | 20 63 6f 6d 70 6c 65 74 |\.Try to| complet|
|00002530| 65 20 74 68 65 20 63 75 | 72 72 65 6e 74 20 62 65 |e the cu|rrent be|
|00002540| 67 69 6e 6e 69 6e 67 20 | 6f 66 20 61 20 6c 69 73 |ginning |of a lis|
|00002550| 74 2e 0a 54 68 65 20 61 | 72 67 75 6d 65 6e 74 20 |t..The a|rgument |
|00002560| 4f 4c 44 20 68 61 73 20 | 74 6f 20 62 65 20 6e 69 |OLD has |to be ni|
|00002570| 6c 20 74 68 65 20 66 69 | 72 73 74 20 63 61 6c 6c |l the fi|rst call|
|00002580| 20 6f 66 20 74 68 69 73 | 20 66 75 6e 63 74 69 6f | of this| functio|
|00002590| 6e 2c 20 61 6e 64 20 74 | 0a 66 6f 72 20 73 75 62 |n, and t|.for sub|
|000025a0| 73 65 71 75 65 6e 74 20 | 63 61 6c 6c 73 20 28 66 |sequent |calls (f|
|000025b0| 6f 72 20 66 75 72 74 68 | 65 72 20 70 6f 73 73 69 |or furth|er possi|
|000025c0| 62 6c 65 20 63 6f 6d 70 | 6c 65 74 69 6f 6e 73 20 |ble comp|letions |
|000025d0| 6f 66 20 74 68 65 20 73 | 61 6d 65 0a 73 74 72 69 |of the s|ame.stri|
|000025e0| 6e 67 29 2e 20 20 49 74 | 20 72 65 74 75 72 6e 73 |ng). It| returns|
|000025f0| 20 74 20 69 66 20 61 20 | 6e 65 77 20 63 6f 6d 70 | t if a |new comp|
|00002600| 6c 65 74 69 6f 6e 20 69 | 73 20 66 6f 75 6e 64 2c |letion i|s found,|
|00002610| 20 6e 69 6c 20 6f 74 68 | 65 72 77 69 73 65 2e 22 | nil oth|erwise."|
|00002620| 5d 29 0a 28 64 65 66 61 | 6c 69 61 73 20 27 74 72 |]).(defa|lias 'tr|
|00002630| 79 2d 65 78 70 61 6e 64 | 2d 6c 69 73 74 2d 61 6c |y-expand|-list-al|
|00002640| 6c 2d 62 75 66 66 65 72 | 73 20 23 5b 28 6f 6c 64 |l-buffer|s #[(old|
|00002650| 29 20 22 c0 70 19 1a 0b | 84 1d 00 c4 c5 20 60 5c |) ".p...|..... `\|
|00002660| 22 88 c6 20 16 07 c8 16 | 09 0e 5c 6e cb 0e 07 40 |".. ....|..\n...@|
|00002670| 93 88 0e 5c 66 cd 9a 84 | 9a 00 0e 07 83 9a 00 5c |...\f...|.......\|
|00002680| 6e 84 9a 00 0e 0e 83 3a | 00 0e 09 0e 0e 57 83 9a |n......:|.....W..|
|00002690| 00 0e 07 40 71 88 70 09 | 3d 84 8a 00 0e 0f 0e 10 |...@q.p.|=.......|
|000026a0| 3e 84 8a 00 d1 d2 20 0e | 10 5c 22 84 8a 00 8a 0e |>..... .|.\".....|
|000026b0| 5c 6e 62 88 d3 0e 5c 66 | c0 5c 22 12 0e 5c 6e 60 |\nb...\f|.\"..\n`|
|000026c0| c0 93 88 5c 6e 83 74 00 | 5c 6e 0e 14 42 16 14 82 |...\n.t.|\n..B...|
|000026d0| 86 00 0e 07 41 16 07 0e | 09 54 16 09 0e 5c 6e cb |....A...|.T...\n.|
|000026e0| 0e 07 40 93 88 29 82 24 | 00 0e 07 41 16 07 0e 5c |..@..).$|...A...\|
|000026f0| 6e cb 0e 07 40 93 88 82 | 24 00 09 71 88 5c 6e 84 |n...@...|$..q.\n.|
|00002700| ac 00 0b 83 a8 00 d5 20 | 88 c0 82 b2 00 d6 5c 6e |....... |......\n|
|00002710| d7 5c 22 88 d7 2a 87 22 | 20 5b 6e 69 6c 20 62 75 |.\"..*."| [nil bu|
|00002720| 66 20 65 78 70 61 6e 73 | 69 6f 6e 20 6f 6c 64 20 |f expans|ion old |
|00002730| 68 65 2d 69 6e 69 74 2d | 73 74 72 69 6e 67 20 68 |he-init-|string h|
|00002740| 65 2d 6c 69 73 74 2d 62 | 65 67 20 62 75 66 66 65 |e-list-b|eg buffe|
|00002750| 72 2d 6c 69 73 74 20 68 | 65 2d 73 65 61 72 63 68 |r-list h|e-search|
|00002760| 2d 62 75 66 73 20 30 20 | 68 65 2d 73 65 61 72 63 |-bufs 0 |he-searc|
|00002770| 68 65 64 2d 6e 2d 62 75 | 66 73 20 68 65 2d 73 65 |hed-n-bu|fs he-se|
|00002780| 61 72 63 68 2d 6c 6f 63 | 20 31 20 68 65 2d 73 65 |arch-loc| 1 he-se|
|00002790| 61 72 63 68 2d 73 74 72 | 69 6e 67 20 22 22 20 68 |arch-str|ing "" h|
|000027a0| 69 70 70 69 65 2d 65 78 | 70 61 6e 64 2d 6d 61 78 |ippie-ex|pand-max|
|000027b0| 2d 62 75 66 66 65 72 73 | 20 6d 61 6a 6f 72 2d 6d |-buffers| major-m|
|000027c0| 6f 64 65 20 68 69 70 70 | 69 65 2d 65 78 70 61 6e |ode hipp|ie-expan|
|000027d0| 64 2d 69 67 6e 6f 72 65 | 2d 62 75 66 66 65 72 73 |d-ignore|-buffers|
|000027e0| 20 68 65 2d 72 65 67 65 | 78 70 2d 6d 65 6d 62 65 | he-rege|xp-membe|
|000027f0| 72 20 62 75 66 66 65 72 | 2d 6e 61 6d 65 20 68 65 |r buffer|-name he|
|00002800| 2d 6c 69 73 74 2d 73 65 | 61 72 63 68 20 68 65 2d |-list-se|arch he-|
|00002810| 74 72 69 65 64 2d 74 61 | 62 6c 65 20 68 65 2d 72 |tried-ta|ble he-r|
|00002820| 65 73 65 74 2d 73 74 72 | 69 6e 67 20 68 65 2d 73 |eset-str|ing he-s|
|00002830| 75 62 73 74 69 74 75 74 | 65 2d 73 74 72 69 6e 67 |ubstitut|e-string|
|00002840| 20 74 5d 20 33 20 22 5c | 0a 54 72 79 20 74 6f 20 | t] 3 "\|.Try to |
|00002850| 63 6f 6d 70 6c 65 74 65 | 20 74 68 65 20 63 75 72 |complete| the cur|
|00002860| 72 65 6e 74 20 6c 69 73 | 74 2c 20 73 65 61 72 63 |rent lis|t, searc|
|00002870| 68 69 6e 67 20 61 6c 6c | 20 6f 74 68 65 72 20 62 |hing all| other b|
|00002880| 75 66 66 65 72 73 2e 0a | 54 68 65 20 61 72 67 75 |uffers..|The argu|
|00002890| 6d 65 6e 74 20 4f 4c 44 | 20 68 61 73 20 74 6f 20 |ment OLD| has to |
|000028a0| 62 65 20 6e 69 6c 20 74 | 68 65 20 66 69 72 73 74 |be nil t|he first|
|000028b0| 20 63 61 6c 6c 20 6f 66 | 20 74 68 69 73 20 66 75 | call of| this fu|
|000028c0| 6e 63 74 69 6f 6e 2c 20 | 61 6e 64 20 74 0a 66 6f |nction, |and t.fo|
|000028d0| 72 20 73 75 62 73 65 71 | 75 65 6e 74 20 63 61 6c |r subseq|uent cal|
|000028e0| 6c 73 20 28 66 6f 72 20 | 66 75 72 74 68 65 72 20 |ls (for |further |
|000028f0| 70 6f 73 73 69 62 6c 65 | 20 63 6f 6d 70 6c 65 74 |possible| complet|
|00002900| 69 6f 6e 73 20 6f 66 20 | 74 68 65 20 73 61 6d 65 |ions of |the same|
|00002910| 0a 73 74 72 69 6e 67 29 | 2e 20 20 49 74 20 72 65 |.string)|. It re|
|00002920| 74 75 72 6e 73 20 74 20 | 69 66 20 61 20 6e 65 77 |turns t |if a new|
|00002930| 20 63 6f 6d 70 6c 65 74 | 69 6f 6e 20 69 73 20 66 | complet|ion is f|
|00002940| 6f 75 6e 64 2c 20 6e 69 | 6c 20 6f 74 68 65 72 77 |ound, ni|l otherw|
|00002950| 69 73 65 2e 22 5d 29 0a | 28 62 79 74 65 2d 63 6f |ise."]).|(byte-co|
|00002960| 64 65 20 22 c0 c1 c2 5c | 22 88 c0 c3 c4 5c 22 87 |de "...\|"....\".|
|00002970| 22 20 5b 64 65 66 61 6c | 69 61 73 20 68 65 2d 6c |" [defal|ias he-l|
|00002980| 69 73 74 2d 73 65 61 72 | 63 68 20 23 5b 28 73 74 |ist-sear|ch #[(st|
|00002990| 72 20 72 65 76 65 72 73 | 65 29 20 22 c0 89 89 89 |r revers|e) "....|
|000029a0| 19 1a 1b 1c 5c 66 84 56 | 00 0d 83 19 00 c6 0e 07 |....\f.V|........|
|000029b0| c0 c8 23 82 1f 00 c9 0e | 07 c0 c8 23 83 56 00 60 |..#.....|...#.V.`|
|000029c0| 12 ca 94 89 13 62 88 c0 | 11 c0 cb cc 8f 88 0d 83 |.....b..|........|
|000029d0| 3e 00 60 0e 0d 56 83 3e | 00 c8 11 09 84 50 00 0b |>.`..V.>|.....P..|
|000029e0| 60 7b 14 ce 5c 66 0e 0f | 5c 22 83 50 00 c0 14 5c |`{..\f..|\".P...\|
|000029f0| 6e 62 88 82 08 00 5c 66 | 2c 87 22 20 5b 6e 69 6c |nb....\f|,." [nil|
|00002a00| 20 65 72 72 20 70 6f 73 | 20 62 65 67 20 72 65 73 | err pos| beg res|
|00002a10| 75 6c 74 20 72 65 76 65 | 72 73 65 20 73 65 61 72 |ult reve|rse sear|
|00002a20| 63 68 2d 62 61 63 6b 77 | 61 72 64 20 73 74 72 20 |ch-backw|ard str |
|00002a30| 74 20 73 65 61 72 63 68 | 2d 66 6f 72 77 61 72 64 |t search|-forward|
|00002a40| 20 30 20 28 66 6f 72 77 | 61 72 64 2d 6c 69 73 74 | 0 (forw|ard-list|
|00002a50| 20 31 29 20 28 28 65 72 | 72 6f 72 20 28 62 79 74 | 1) ((er|ror (byt|
|00002a60| 65 2d 63 6f 64 65 20 22 | c0 11 c0 87 22 20 5b 74 |e-code "|...." [t|
|00002a70| 20 65 72 72 5d 20 31 29 | 29 29 20 68 65 2d 73 74 | err] 1)|)) he-st|
|00002a80| 72 69 6e 67 2d 62 65 67 | 20 68 65 2d 73 74 72 69 |ring-beg| he-stri|
|00002a90| 6e 67 2d 6d 65 6d 62 65 | 72 20 68 65 2d 74 72 69 |ng-membe|r he-tri|
|00002aa0| 65 64 2d 74 61 62 6c 65 | 5d 20 35 5d 20 68 65 2d |ed-table|] 5] he-|
|00002ab0| 6c 69 73 74 2d 62 65 67 | 20 23 5b 6e 69 6c 20 22 |list-beg| #[nil "|
|00002ac0| 8a c0 c1 c2 8f 88 60 29 | 87 22 20 5b 6e 69 6c 20 |......`)|." [nil |
|00002ad0| 28 62 61 63 6b 77 61 72 | 64 2d 75 70 2d 6c 69 73 |(backwar|d-up-lis|
|00002ae0| 74 20 31 29 20 28 28 65 | 72 72 6f 72 29 29 5d 20 |t 1) ((e|rror))] |
|00002af0| 33 5d 5d 20 33 29 0a 28 | 64 65 66 61 6c 69 61 73 |3]] 3).(|defalias|
|00002b00| 20 27 74 72 79 2d 65 78 | 70 61 6e 64 2d 61 6c 6c | 'try-ex|pand-all|
|00002b10| 2d 61 62 62 72 65 76 73 | 20 23 5b 28 6f 6c 64 29 |-abbrevs| #[(old)|
|00002b20| 20 22 08 84 1b 00 c1 c2 | 20 60 5c 22 88 0b c4 9a | "......| `\"....|
|00002b30| 3f 85 19 00 c5 c6 c7 c8 | 0e 09 5c 22 5c 22 16 5c |?.......|..\"\".\|
|00002b40| 6e 0e 5c 6e 83 39 00 0e | 5c 6e 40 83 30 00 cb 0e |n.\n.9..|\n@.0...|
|00002b50| 5c 6e 40 0e 5c 66 5c 22 | 83 39 00 0e 5c 6e 41 89 |\n@.\f\"|.9..\nA.|
|00002b60| 16 5c 6e 84 20 00 0e 5c | 6e 84 47 00 08 83 45 00 |.\n. ..\|n.G...E.|
|00002b70| cd 20 88 ce 87 cf 0e 5c | 6e 40 d0 5c 22 88 0e 5c |. .....\|n@.\"..\|
|00002b80| 6e 40 0e 5c 66 42 16 5c | 66 0e 5c 6e 41 16 5c 6e |n@.\fB.\|f.\nA.\n|
|00002b90| d0 87 22 20 5b 6f 6c 64 | 20 68 65 2d 69 6e 69 74 |.." [old| he-init|
|00002ba0| 2d 73 74 72 69 6e 67 20 | 68 65 2d 64 61 62 62 72 |-string |he-dabbr|
|00002bb0| 65 76 2d 62 65 67 20 68 | 65 2d 73 65 61 72 63 68 |ev-beg h|e-search|
|00002bc0| 2d 73 74 72 69 6e 67 20 | 22 22 20 6d 61 70 63 61 |-string |"" mapca|
|00002bd0| 72 20 23 5b 28 73 79 6d | 29 20 22 c0 09 97 c2 0b |r #[(sym|) ".....|
|00002be0| 21 5c 22 87 22 20 5b 61 | 62 62 72 65 76 2d 65 78 |!\"." [a|bbrev-ex|
|00002bf0| 70 61 6e 73 69 6f 6e 20 | 68 65 2d 73 65 61 72 63 |pansion |he-searc|
|00002c00| 68 2d 73 74 72 69 6e 67 | 20 65 76 61 6c 20 73 79 |h-string| eval sy|
|00002c10| 6d 5d 20 34 5d 20 61 70 | 70 65 6e 64 20 28 6c 6f |m] 4] ap|pend (lo|
|00002c20| 63 61 6c 2d 61 62 62 72 | 65 76 2d 74 61 62 6c 65 |cal-abbr|ev-table|
|00002c30| 20 67 6c 6f 62 61 6c 2d | 61 62 62 72 65 76 2d 74 | global-|abbrev-t|
|00002c40| 61 62 6c 65 29 20 61 62 | 62 72 65 76 2d 74 61 62 |able) ab|brev-tab|
|00002c50| 6c 65 2d 6e 61 6d 65 2d | 6c 69 73 74 20 68 65 2d |le-name-|list he-|
|00002c60| 65 78 70 61 6e 64 2d 6c | 69 73 74 20 68 65 2d 73 |expand-l|ist he-s|
|00002c70| 74 72 69 6e 67 2d 6d 65 | 6d 62 65 72 20 68 65 2d |tring-me|mber he-|
|00002c80| 74 72 69 65 64 2d 74 61 | 62 6c 65 20 68 65 2d 72 |tried-ta|ble he-r|
|00002c90| 65 73 65 74 2d 73 74 72 | 69 6e 67 20 6e 69 6c 20 |eset-str|ing nil |
|00002ca0| 68 65 2d 73 75 62 73 74 | 69 74 75 74 65 2d 73 74 |he-subst|itute-st|
|00002cb0| 72 69 6e 67 20 74 5d 20 | 36 20 22 5c 0a 54 72 79 |ring t] |6 "\.Try|
|00002cc0| 20 74 6f 20 65 78 70 61 | 6e 64 20 77 6f 72 64 20 | to expa|nd word |
|00002cd0| 62 65 66 6f 72 65 20 70 | 6f 69 6e 74 20 61 63 63 |before p|oint acc|
|00002ce0| 6f 72 64 69 6e 67 20 74 | 6f 20 61 6c 6c 20 61 62 |ording t|o all ab|
|00002cf0| 62 72 65 76 20 74 61 62 | 6c 65 73 2e 0a 54 68 65 |brev tab|les..The|
|00002d00| 20 61 72 67 75 6d 65 6e | 74 20 4f 4c 44 20 68 61 | argumen|t OLD ha|
|00002d10| 73 20 74 6f 20 62 65 20 | 6e 69 6c 20 74 68 65 20 |s to be |nil the |
|00002d20| 66 69 72 73 74 20 63 61 | 6c 6c 20 6f 66 20 74 68 |first ca|ll of th|
|00002d30| 69 73 20 66 75 6e 63 74 | 69 6f 6e 2c 20 61 6e 64 |is funct|ion, and|
|00002d40| 20 74 0a 66 6f 72 20 73 | 75 62 73 65 71 75 65 6e | t.for s|ubsequen|
|00002d50| 74 20 63 61 6c 6c 73 20 | 28 66 6f 72 20 66 75 72 |t calls |(for fur|
|00002d60| 74 68 65 72 20 70 6f 73 | 73 69 62 6c 65 20 65 78 |ther pos|sible ex|
|00002d70| 70 61 6e 73 69 6f 6e 73 | 20 6f 66 20 74 68 65 20 |pansions| of the |
|00002d80| 73 61 6d 65 0a 73 74 72 | 69 6e 67 29 2e 20 20 49 |same.str|ing). I|
|00002d90| 74 20 72 65 74 75 72 6e | 73 20 74 20 69 66 20 61 |t return|s t if a|
|00002da0| 20 6e 65 77 20 65 78 70 | 61 6e 73 69 6f 6e 20 69 | new exp|ansion i|
|00002db0| 73 20 66 6f 75 6e 64 2c | 20 6e 69 6c 20 6f 74 68 |s found,| nil oth|
|00002dc0| 65 72 77 69 73 65 2e 22 | 5d 29 0a 28 64 65 66 61 |erwise."|]).(defa|
|00002dd0| 6c 69 61 73 20 27 74 72 | 79 2d 65 78 70 61 6e 64 |lias 'tr|y-expand|
|00002de0| 2d 64 61 62 62 72 65 76 | 20 23 5b 28 6f 6c 64 29 |-dabbrev| #[(old)|
|00002df0| 20 22 c0 19 5c 6e 84 15 | 00 c3 c4 20 60 5c 22 88 | "..\n..|... `\".|
|00002e00| 0d 0e 06 c0 93 88 c7 16 | 08 0e 09 ca 9a 84 50 00 |........|......P.|
|00002e10| 8a 0e 08 83 3d 00 0d 62 | 88 cb 0e 09 c7 5c 22 11 |....=..b|.....\".|
|00002e20| 0d 60 c0 93 88 09 84 3d | 00 0d 0e 5c 66 c0 93 88 |.`.....=|...\f...|
|00002e30| c0 16 08 09 84 4f 00 0d | 62 88 cb 0e 09 c0 5c 22 |.....O..|b.....\"|
|00002e40| 11 0d 60 c0 93 88 29 09 | 84 5f 00 5c 6e 83 5b 00 |..`...).|._.\n.[.|
|00002e50| cd 20 88 c0 82 6b 00 ce | 09 c7 5c 22 88 09 0e 0f |. ...k..|..\"....|
|00002e60| 42 16 0f c7 29 87 22 20 | 5b 6e 69 6c 20 65 78 70 |B...)." |[nil exp|
|00002e70| 61 6e 73 69 6f 6e 20 6f | 6c 64 20 68 65 2d 69 6e |ansion o|ld he-in|
|00002e80| 69 74 2d 73 74 72 69 6e | 67 20 68 65 2d 64 61 62 |it-strin|g he-dab|
|00002e90| 62 72 65 76 2d 62 65 67 | 20 68 65 2d 73 65 61 72 |brev-beg| he-sear|
|00002ea0| 63 68 2d 6c 6f 63 20 68 | 65 2d 73 74 72 69 6e 67 |ch-loc h|e-string|
|00002eb0| 2d 62 65 67 20 74 20 68 | 65 2d 73 65 61 72 63 68 |-beg t h|e-search|
|00002ec0| 2d 62 77 20 68 65 2d 73 | 65 61 72 63 68 2d 73 74 |-bw he-s|earch-st|
|00002ed0| 72 69 6e 67 20 22 22 20 | 68 65 2d 64 61 62 2d 73 |ring "" |he-dab-s|
|00002ee0| 65 61 72 63 68 20 68 65 | 2d 73 74 72 69 6e 67 2d |earch he|-string-|
|00002ef0| 65 6e 64 20 68 65 2d 72 | 65 73 65 74 2d 73 74 72 |end he-r|eset-str|
|00002f00| 69 6e 67 20 68 65 2d 73 | 75 62 73 74 69 74 75 74 |ing he-s|ubstitut|
|00002f10| 65 2d 73 74 72 69 6e 67 | 20 68 65 2d 74 72 69 65 |e-string| he-trie|
|00002f20| 64 2d 74 61 62 6c 65 5d | 20 33 20 22 5c 0a 54 72 |d-table]| 3 "\.Tr|
|00002f30| 79 20 74 6f 20 65 78 70 | 61 6e 64 20 77 6f 72 64 |y to exp|and word|
|00002f40| 20 5c 22 64 79 6e 61 6d | 69 63 61 6c 6c 79 5c 22 | \"dynam|ically\"|
|00002f50| 2c 20 73 65 61 72 63 68 | 69 6e 67 20 74 68 65 20 |, search|ing the |
|00002f60| 63 75 72 72 65 6e 74 20 | 62 75 66 66 65 72 2e 0a |current |buffer..|
|00002f70| 54 68 65 20 61 72 67 75 | 6d 65 6e 74 20 4f 4c 44 |The argu|ment OLD|
|00002f80| 20 68 61 73 20 74 6f 20 | 62 65 20 6e 69 6c 20 74 | has to |be nil t|
|00002f90| 68 65 20 66 69 72 73 74 | 20 63 61 6c 6c 20 6f 66 |he first| call of|
|00002fa0| 20 74 68 69 73 20 66 75 | 6e 63 74 69 6f 6e 2c 20 | this fu|nction, |
|00002fb0| 61 6e 64 20 74 0a 66 6f | 72 20 73 75 62 73 65 71 |and t.fo|r subseq|
|00002fc0| 75 65 6e 74 20 63 61 6c | 6c 73 20 28 66 6f 72 20 |uent cal|ls (for |
|00002fd0| 66 75 72 74 68 65 72 20 | 70 6f 73 73 69 62 6c 65 |further |possible|
|00002fe0| 20 65 78 70 61 6e 73 69 | 6f 6e 73 20 6f 66 20 74 | expansi|ons of t|
|00002ff0| 68 65 20 73 61 6d 65 0a | 73 74 72 69 6e 67 29 2e |he same.|string).|
|00003000| 20 20 49 74 20 72 65 74 | 75 72 6e 73 20 74 20 69 | It ret|urns t i|
|00003010| 66 20 61 20 6e 65 77 20 | 65 78 70 61 6e 73 69 6f |f a new |expansio|
|00003020| 6e 20 69 73 20 66 6f 75 | 6e 64 2c 20 6e 69 6c 20 |n is fou|nd, nil |
|00003030| 6f 74 68 65 72 77 69 73 | 65 2e 22 5d 29 0a 28 64 |otherwis|e."]).(d|
|00003040| 65 66 61 6c 69 61 73 20 | 27 74 72 79 2d 65 78 70 |efalias |'try-exp|
|00003050| 61 6e 64 2d 64 61 62 62 | 72 65 76 2d 61 6c 6c 2d |and-dabb|rev-all-|
|00003060| 62 75 66 66 65 72 73 20 | 23 5b 28 6f 6c 64 29 20 |buffers |#[(old) |
|00003070| 22 c0 70 19 1a 0b 84 1d | 00 c4 c5 20 60 5c 22 88 |".p.....|... `\".|
|00003080| c6 20 16 07 c8 16 09 0e | 5c 6e cb 0e 07 40 93 88 |. ......|\n...@..|
|00003090| 0e 5c 66 cd 9a 84 9a 00 | 0e 07 83 9a 00 5c 6e 84 |.\f.....|.....\n.|
|000030a0| 9a 00 0e 0e 83 3a 00 0e | 09 0e 0e 57 83 9a 00 0e |.....:..|...W....|
|000030b0| 07 40 71 88 70 09 3d 84 | 8a 00 0e 0f 0e 10 3e 84 |.@q.p.=.|......>.|
|000030c0| 8a 00 d1 d2 20 0e 10 5c | 22 84 8a 00 8a 0e 5c 6e |.... ..\|".....\n|
|000030d0| 62 88 d3 0e 5c 66 c0 5c | 22 12 0e 5c 6e 60 c0 93 |b...\f.\|"..\n`..|
|000030e0| 88 5c 6e 83 74 00 5c 6e | 0e 14 42 16 14 82 86 00 |.\n.t.\n|..B.....|
|000030f0| 0e 07 41 16 07 0e 09 54 | 16 09 0e 5c 6e cb 0e 07 |..A....T|...\n...|
|00003100| 40 93 88 29 82 24 00 0e | 07 41 16 07 0e 5c 6e cb |@..).$..|.A...\n.|
|00003110| 0e 07 40 93 88 82 24 00 | 09 71 88 5c 6e 84 ac 00 |..@...$.|.q.\n...|
|00003120| 0b 83 a8 00 d5 20 88 c0 | 82 b2 00 d6 5c 6e d7 5c |..... ..|....\n.\|
|00003130| 22 88 d7 2a 87 22 20 5b | 6e 69 6c 20 62 75 66 20 |"..*." [|nil buf |
|00003140| 65 78 70 61 6e 73 69 6f | 6e 20 6f 6c 64 20 68 65 |expansio|n old he|
|00003150| 2d 69 6e 69 74 2d 73 74 | 72 69 6e 67 20 68 65 2d |-init-st|ring he-|
|00003160| 64 61 62 62 72 65 76 2d | 62 65 67 20 62 75 66 66 |dabbrev-|beg buff|
|00003170| 65 72 2d 6c 69 73 74 20 | 68 65 2d 73 65 61 72 63 |er-list |he-searc|
|00003180| 68 2d 62 75 66 73 20 30 | 20 68 65 2d 73 65 61 72 |h-bufs 0| he-sear|
|00003190| 63 68 65 64 2d 6e 2d 62 | 75 66 73 20 68 65 2d 73 |ched-n-b|ufs he-s|
|000031a0| 65 61 72 63 68 2d 6c 6f | 63 20 31 20 68 65 2d 73 |earch-lo|c 1 he-s|
|000031b0| 65 61 72 63 68 2d 73 74 | 72 69 6e 67 20 22 22 20 |earch-st|ring "" |
|000031c0| 68 69 70 70 69 65 2d 65 | 78 70 61 6e 64 2d 6d 61 |hippie-e|xpand-ma|
|000031d0| 78 2d 62 75 66 66 65 72 | 73 20 6d 61 6a 6f 72 2d |x-buffer|s major-|
|000031e0| 6d 6f 64 65 20 68 69 70 | 70 69 65 2d 65 78 70 61 |mode hip|pie-expa|
|000031f0| 6e 64 2d 69 67 6e 6f 72 | 65 2d 62 75 66 66 65 72 |nd-ignor|e-buffer|
|00003200| 73 20 68 65 2d 72 65 67 | 65 78 70 2d 6d 65 6d 62 |s he-reg|exp-memb|
|00003210| 65 72 20 62 75 66 66 65 | 72 2d 6e 61 6d 65 20 68 |er buffe|r-name h|
|00003220| 65 2d 64 61 62 2d 73 65 | 61 72 63 68 20 68 65 2d |e-dab-se|arch he-|
|00003230| 74 72 69 65 64 2d 74 61 | 62 6c 65 20 68 65 2d 72 |tried-ta|ble he-r|
|00003240| 65 73 65 74 2d 73 74 72 | 69 6e 67 20 68 65 2d 73 |eset-str|ing he-s|
|00003250| 75 62 73 74 69 74 75 74 | 65 2d 73 74 72 69 6e 67 |ubstitut|e-string|
|00003260| 20 74 5d 20 33 20 22 5c | 0a 54 72 69 65 73 20 74 | t] 3 "\|.Tries t|
|00003270| 6f 20 65 78 70 61 6e 64 | 20 77 6f 72 64 20 5c 22 |o expand| word \"|
|00003280| 64 79 6e 61 6d 69 63 61 | 6c 6c 79 5c 22 2c 20 73 |dynamica|lly\", s|
|00003290| 65 61 72 63 68 69 6e 67 | 20 61 6c 6c 20 6f 74 68 |earching| all oth|
|000032a0| 65 72 20 62 75 66 66 65 | 72 73 2e 0a 54 68 65 20 |er buffe|rs..The |
|000032b0| 61 72 67 75 6d 65 6e 74 | 20 4f 4c 44 20 68 61 73 |argument| OLD has|
|000032c0| 20 74 6f 20 62 65 20 6e | 69 6c 20 74 68 65 20 66 | to be n|il the f|
|000032d0| 69 72 73 74 20 63 61 6c | 6c 20 6f 66 20 74 68 69 |irst cal|l of thi|
|000032e0| 73 20 66 75 6e 63 74 69 | 6f 6e 2c 20 61 6e 64 20 |s functi|on, and |
|000032f0| 74 0a 66 6f 72 20 73 75 | 62 73 65 71 75 65 6e 74 |t.for su|bsequent|
|00003300| 20 63 61 6c 6c 73 20 28 | 66 6f 72 20 66 75 72 74 | calls (|for furt|
|00003310| 68 65 72 20 70 6f 73 73 | 69 62 6c 65 20 65 78 70 |her poss|ible exp|
|00003320| 61 6e 73 69 6f 6e 73 20 | 6f 66 20 74 68 65 20 73 |ansions |of the s|
|00003330| 61 6d 65 0a 73 74 72 69 | 6e 67 29 2e 20 20 49 74 |ame.stri|ng). It|
|00003340| 20 72 65 74 75 72 6e 73 | 20 74 20 69 66 20 61 20 | returns| t if a |
|00003350| 6e 65 77 20 65 78 70 61 | 6e 73 69 6f 6e 20 69 73 |new expa|nsion is|
|00003360| 20 66 6f 75 6e 64 2c 20 | 6e 69 6c 20 6f 74 68 65 | found, |nil othe|
|00003370| 72 77 69 73 65 2e 22 5d | 29 0a 28 62 79 74 65 2d |rwise."]|).(byte-|
|00003380| 63 6f 64 65 20 22 c0 c1 | c2 5c 22 88 c0 c3 c4 5c |code "..|.\"....\|
|00003390| 22 88 c0 c5 c6 5c 22 88 | c7 c8 21 87 22 20 5b 64 |"....\".|..!." [d|
|000033a0| 65 66 61 6c 69 61 73 20 | 68 65 2d 64 61 62 2d 73 |efalias |he-dab-s|
|000033b0| 65 61 72 63 68 2d 72 65 | 67 65 78 70 20 23 5b 28 |earch-re|gexp #[(|
|000033c0| 70 61 74 29 20 22 c0 c1 | 5c 6e 21 c3 51 87 22 20 |pat) "..|\n!.Q." |
|000033d0| 5b 22 5c 5c 3c 22 20 72 | 65 67 65 78 70 2d 71 75 |["\\<" r|egexp-qu|
|000033e0| 6f 74 65 20 70 61 74 20 | 22 5c 5c 28 5c 5c 73 77 |ote pat |"\\(\\sw|
|000033f0| 5c 5c 7c 5c 5c 73 5f 5c | 5c 29 2b 22 5d 20 33 5d |\\|\\s_\|\)+"] 3]|
|00003400| 20 68 65 2d 64 61 62 2d | 73 65 61 72 63 68 20 23 | he-dab-|search #|
|00003410| 5b 28 70 61 74 74 65 72 | 6e 20 72 65 76 65 72 73 |[(patter|n revers|
|00003420| 65 29 20 22 c0 19 09 84 | 32 00 5c 6e 83 14 00 c3 |e) "....|2.\n....|
|00003430| c4 0d 21 c0 c6 23 82 1b | 00 c7 c4 0d 21 c0 c6 23 |..!..#..|....!..#|
|00003440| 83 32 00 c8 94 c8 95 7b | 11 c9 09 0e 5c 6e 5c 22 |.2.....{|....\n\"|
|00003450| 83 02 00 c0 89 11 83 06 | 00 09 29 87 22 20 5b 6e |........|..)." [n|
|00003460| 69 6c 20 72 65 73 75 6c | 74 20 72 65 76 65 72 73 |il resul|t revers|
|00003470| 65 20 72 65 2d 73 65 61 | 72 63 68 2d 62 61 63 6b |e re-sea|rch-back|
|00003480| 77 61 72 64 20 68 65 2d | 64 61 62 2d 73 65 61 72 |ward he-|dab-sear|
|00003490| 63 68 2d 72 65 67 65 78 | 70 20 70 61 74 74 65 72 |ch-regex|p patter|
|000034a0| 6e 20 74 20 72 65 2d 73 | 65 61 72 63 68 2d 66 6f |n t re-s|earch-fo|
|000034b0| 72 77 61 72 64 20 30 20 | 68 65 2d 73 74 72 69 6e |rward 0 |he-strin|
|000034c0| 67 2d 6d 65 6d 62 65 72 | 20 68 65 2d 74 72 69 65 |g-member| he-trie|
|000034d0| 64 2d 74 61 62 6c 65 5d | 20 35 5d 20 68 65 2d 64 |d-table]| 5] he-d|
|000034e0| 61 62 62 72 65 76 2d 62 | 65 67 20 23 5b 6e 69 6c |abbrev-b|eg #[nil|
|000034f0| 20 22 60 8a c0 c1 21 88 | c2 c3 21 88 60 29 5e 87 | "`...!.|..!.`)^.|
|00003500| 22 20 5b 73 6b 69 70 2d | 73 79 6e 74 61 78 2d 62 |" [skip-|syntax-b|
|00003510| 61 63 6b 77 61 72 64 20 | 22 77 5f 22 20 73 6b 69 |ackward |"w_" ski|
|00003520| 70 2d 73 79 6e 74 61 78 | 2d 66 6f 72 77 61 72 64 |p-syntax|-forward|
|00003530| 20 22 5f 22 5d 20 33 5d | 20 70 72 6f 76 69 64 65 | "_"] 3]| provide|
|00003540| 20 68 69 70 70 69 65 2d | 65 78 70 5d 20 33 29 0a | hippie-|exp] 3).|
+--------+-------------------------+-------------------------+--------+--------+