home *** CD-ROM | disk | FTP | other *** search
Emacs Compiled Lisp | 1994-05-04 | 9.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.
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 6b 77 7a 68 40 68 61 |piled by| kwzh@ha|
|00000020| 6c 2e 67 6e 75 2e 61 69 | 2e 6d 69 74 2e 65 64 75 |l.gnu.ai|.mit.edu|
|00000030| 20 6f 6e 20 54 75 65 20 | 4d 61 79 20 20 33 20 32 | on Tue |May 3 2|
|00000040| 31 3a 35 33 3a 35 33 20 | 31 39 39 34 0a 3b 3b 3b |1:53:53 |1994.;;;|
|00000050| 20 66 72 6f 6d 20 66 69 | 6c 65 20 2f 67 64 2f 67 | from fi|le /gd/g|
|00000060| 6e 75 2f 65 6d 61 63 73 | 2f 31 39 2e 30 2f 6c 69 |nu/emacs|/19.0/li|
|00000070| 73 70 2f 73 6f 72 74 2e | 65 6c 0a 3b 3b 3b 20 65 |sp/sort.|el.;;; e|
|00000080| 6d 61 63 73 20 76 65 72 | 73 69 6f 6e 20 31 39 2e |macs ver|sion 19.|
|00000090| 32 32 2e 39 32 2e 32 2e | 0a 3b 3b 3b 20 62 79 74 |22.92.2.|.;;; byt|
|000000a0| 65 63 6f 6d 70 20 76 65 | 72 73 69 6f 6e 20 46 53 |ecomp ve|rsion FS|
|000000b0| 46 20 32 2e 31 30 0a 3b | 3b 3b 20 6f 70 74 69 6d |F 2.10.;|;; optim|
|000000c0| 69 7a 61 74 69 6f 6e 20 | 69 73 20 6f 6e 2e 0a 3b |ization |is on..;|
|000000d0| 3b 3b 20 74 68 69 73 20 | 66 69 6c 65 20 75 73 65 |;; this |file use|
|000000e0| 73 20 6f 70 63 6f 64 65 | 73 20 77 68 69 63 68 20 |s opcode|s which |
|000000f0| 64 6f 20 6e 6f 74 20 65 | 78 69 73 74 20 69 6e 20 |do not e|xist in |
|00000100| 45 6d 61 63 73 20 31 38 | 2e 0a 0a 28 69 66 20 28 |Emacs 18|...(if (|
|00000110| 61 6e 64 20 28 62 6f 75 | 6e 64 70 20 27 65 6d 61 |and (bou|ndp 'ema|
|00000120| 63 73 2d 76 65 72 73 69 | 6f 6e 29 0a 09 20 28 6f |cs-versi|on).. (o|
|00000130| 72 20 28 61 6e 64 20 28 | 62 6f 75 6e 64 70 20 27 |r (and (|boundp '|
|00000140| 65 70 6f 63 68 3a 3a 76 | 65 72 73 69 6f 6e 29 20 |epoch::v|ersion) |
|00000150| 65 70 6f 63 68 3a 3a 76 | 65 72 73 69 6f 6e 29 0a |epoch::v|ersion).|
|00000160| 09 20 20 20 20 20 28 73 | 74 72 69 6e 67 2d 6c 65 |. (s|tring-le|
|00000170| 73 73 70 20 65 6d 61 63 | 73 2d 76 65 72 73 69 6f |ssp emac|s-versio|
|00000180| 6e 20 22 31 39 22 29 29 | 29 0a 20 20 20 20 28 65 |n "19"))|). (e|
|00000190| 72 72 6f 72 20 22 60 2f | 67 64 2f 67 6e 75 2f 65 |rror "`/|gd/gnu/e|
|000001a0| 6d 61 63 73 2f 31 39 2e | 30 2f 6c 69 73 70 2f 73 |macs/19.|0/lisp/s|
|000001b0| 6f 72 74 2e 65 6c 27 20 | 77 61 73 20 63 6f 6d 70 |ort.el' |was comp|
|000001c0| 69 6c 65 64 20 66 6f 72 | 20 45 6d 61 63 73 20 31 |iled for| Emacs 1|
|000001d0| 39 22 29 29 0a 0a 28 64 | 65 66 76 61 72 20 73 6f |9"))..(d|efvar so|
|000001e0| 72 74 2d 66 6f 6c 64 2d | 63 61 73 65 20 6e 69 6c |rt-fold-|case nil|
|000001f0| 20 22 5c 0a 2a 4e 6f 6e | 2d 6e 69 6c 20 69 66 20 | "\.*Non|-nil if |
|00000200| 74 68 65 20 62 75 66 66 | 65 72 20 73 6f 72 74 20 |the buff|er sort |
|00000210| 66 75 6e 63 74 69 6f 6e | 73 20 73 68 6f 75 6c 64 |function|s should|
|00000220| 20 69 67 6e 6f 72 65 20 | 63 61 73 65 2e 22 29 0a | ignore |case.").|
|00000230| 28 64 65 66 61 6c 69 61 | 73 20 27 73 6f 72 74 2d |(defalia|s 'sort-|
|00000240| 73 75 62 72 20 23 5b 28 | 72 65 76 65 72 73 65 20 |subr #[(|reverse |
|00000250| 6e 65 78 74 72 65 63 66 | 75 6e 20 65 6e 64 72 65 |nextrecf|un endre|
|00000260| 63 66 75 6e 20 26 6f 70 | 74 69 6f 6e 61 6c 20 73 |cfun &op|tional s|
|00000270| 74 61 72 74 6b 65 79 66 | 75 6e 20 65 6e 64 6b 65 |tartkeyf|un endke|
|00000280| 79 66 75 6e 29 20 22 64 | 65 5a c0 56 19 8a 09 83 |yfun) "d|eZ.V....|
|00000290| 0f 00 c2 c3 21 88 c4 0d | 0e 06 0e 07 0e 08 24 1e |....!...|......$.|
|000002a0| 09 ca 0e 09 21 1e 0b 0e | 5c 66 1e 0d 0e 09 83 97 |....!...|\f......|
|000002b0| 00 0e 5c 6e 84 33 00 0e | 09 9f 16 09 09 83 3b 00 |..\n.3..|......;.|
|000002c0| c2 ce 21 88 cf d0 21 83 | 60 00 d0 0e 09 89 40 40 |..!...!.|`.....@@|
|000002d0| a7 83 4f 00 d1 82 5c 5c | 00 0e 09 40 40 3a 83 5b |..O...\\|...@@:.[|
|000002e0| 00 d2 82 5c 5c 00 d3 5c | 22 82 7c 00 d4 0e 09 89 |...\\..\|".|.....|
|000002f0| 40 40 a7 83 6e 00 d5 82 | 7b 00 0e 09 40 40 3a 83 |@@..n...|{...@@:.|
|00000300| 7a 00 d6 82 7b 00 d7 5c | 22 16 09 0e 5c 6e 83 88 |z...{..\|"...\n..|
|00000310| 00 0e 09 9f 16 09 09 83 | 90 00 c2 d8 21 88 d9 0e |........|....!...|
|00000320| 09 0e 0b 5c 22 88 2b 09 | 83 a0 00 c2 da 21 88 2a |...\".+.|.....!.*|
|00000330| db 87 22 20 5b 35 30 30 | 30 30 20 6d 65 73 73 61 |.." [500|00 messa|
|00000340| 67 65 73 20 6d 65 73 73 | 61 67 65 20 22 46 69 6e |ges mess|age "Fin|
|00000350| 64 69 6e 67 20 73 6f 72 | 74 20 6b 65 79 73 2e 2e |ding sor|t keys..|
|00000360| 2e 22 20 73 6f 72 74 2d | 62 75 69 6c 64 2d 6c 69 |." sort-|build-li|
|00000370| 73 74 73 20 6e 65 78 74 | 72 65 63 66 75 6e 20 65 |sts next|recfun e|
|00000380| 6e 64 72 65 63 66 75 6e | 20 73 74 61 72 74 6b 65 |ndrecfun| startke|
|00000390| 79 66 75 6e 20 65 6e 64 | 6b 65 79 66 75 6e 20 73 |yfun end|keyfun s|
|000003a0| 6f 72 74 2d 6c 69 73 74 | 73 20 72 65 76 65 72 73 |ort-list|s revers|
|000003b0| 65 20 6f 6c 64 20 73 6f | 72 74 2d 66 6f 6c 64 2d |e old so|rt-fold-|
|000003c0| 63 61 73 65 20 63 61 73 | 65 2d 66 6f 6c 64 2d 73 |case cas|e-fold-s|
|000003d0| 65 61 72 63 68 20 22 53 | 6f 72 74 69 6e 67 20 72 |earch "S|orting r|
|000003e0| 65 63 6f 72 64 73 2e 2e | 2e 22 20 66 62 6f 75 6e |ecords..|." fboun|
|000003f0| 64 70 20 73 6f 72 74 63 | 61 72 20 3c 20 23 5b 28 |dp sortc|ar < #[(|
|00000400| 61 20 62 29 20 22 c0 c1 | c2 0b 40 0b 41 c2 5c 66 |a b) "..|..@.A.\f|
|00000410| 40 5c 66 41 26 06 56 87 | 22 20 5b 30 20 63 6f 6d |@\fA&.V.|" [0 com|
|00000420| 70 61 72 65 2d 62 75 66 | 66 65 72 2d 73 75 62 73 |pare-buf|fer-subs|
|00000430| 74 72 69 6e 67 73 20 6e | 69 6c 20 61 20 62 5d 20 |trings n|il a b] |
|00000440| 38 5d 20 73 74 72 69 6e | 67 3c 20 73 6f 72 74 20 |8] strin|g< sort |
|00000450| 63 61 72 2d 6c 65 73 73 | 2d 74 68 61 6e 2d 63 61 |car-less|-than-ca|
|00000460| 72 20 23 5b 28 61 20 62 | 29 20 22 c0 c1 c2 0b 40 |r #[(a b|) "....@|
|00000470| 40 0b 40 41 c2 5c 66 40 | 40 5c 66 40 41 26 06 56 |@.@A.\f@|@\f@A&.V|
|00000480| 87 22 20 5b 30 20 63 6f | 6d 70 61 72 65 2d 62 75 |." [0 co|mpare-bu|
|00000490| 66 66 65 72 2d 73 75 62 | 73 74 72 69 6e 67 73 20 |ffer-sub|strings |
|000004a0| 6e 69 6c 20 61 20 62 5d | 20 38 5d 20 23 5b 28 61 |nil a b]| 8] #[(a|
|000004b0| 20 62 29 20 22 08 40 09 | 40 99 87 22 20 5b 61 20 | b) ".@.|@.." [a |
|000004c0| 62 5d 20 32 5d 20 22 52 | 65 6f 72 64 65 72 69 6e |b] 2] "R|eorderin|
|000004d0| 67 20 62 75 66 66 65 72 | 2e 2e 2e 22 20 73 6f 72 |g buffer|..." sor|
|000004e0| 74 2d 72 65 6f 72 64 65 | 72 2d 62 75 66 66 65 72 |t-reorde|r-buffer|
|000004f0| 20 22 52 65 6f 72 64 65 | 72 69 6e 67 20 62 75 66 | "Reorde|ring buf|
|00000500| 66 65 72 2e 2e 2e 20 44 | 6f 6e 65 22 20 6e 69 6c |fer... D|one" nil|
|00000510| 5d 20 35 20 22 5c 0a 47 | 65 6e 65 72 61 6c 20 74 |] 5 "\.G|eneral t|
|00000520| 65 78 74 20 73 6f 72 74 | 69 6e 67 20 72 6f 75 74 |ext sort|ing rout|
|00000530| 69 6e 65 20 74 6f 20 64 | 69 76 69 64 65 20 62 75 |ine to d|ivide bu|
|00000540| 66 66 65 72 20 69 6e 74 | 6f 20 72 65 63 6f 72 64 |ffer int|o record|
|00000550| 73 20 61 6e 64 20 73 6f | 72 74 20 74 68 65 6d 2e |s and so|rt them.|
|00000560| 0a 41 72 67 75 6d 65 6e | 74 73 20 61 72 65 20 52 |.Argumen|ts are R|
|00000570| 45 56 45 52 53 45 20 4e | 45 58 54 52 45 43 46 55 |EVERSE N|EXTRECFU|
|00000580| 4e 20 45 4e 44 52 45 43 | 46 55 4e 20 26 6f 70 74 |N ENDREC|FUN &opt|
|00000590| 69 6f 6e 61 6c 20 53 54 | 41 52 54 4b 45 59 46 55 |ional ST|ARTKEYFU|
|000005a0| 4e 20 45 4e 44 4b 45 59 | 46 55 4e 2e 0a 0a 57 65 |N ENDKEY|FUN...We|
|000005b0| 20 64 69 76 69 64 65 20 | 74 68 65 20 61 63 63 65 | divide |the acce|
|000005c0| 73 73 69 62 6c 65 20 70 | 6f 72 74 69 6f 6e 20 6f |ssible p|ortion o|
|000005d0| 66 20 74 68 65 20 62 75 | 66 66 65 72 20 69 6e 74 |f the bu|ffer int|
|000005e0| 6f 20 64 69 73 6a 6f 69 | 6e 74 20 70 69 65 63 65 |o disjoi|nt piece|
|000005f0| 73 0a 63 61 6c 6c 65 64 | 20 73 6f 72 74 20 72 65 |s.called| sort re|
|00000600| 63 6f 72 64 73 2e 20 20 | 41 20 70 6f 72 74 69 6f |cords. |A portio|
|00000610| 6e 20 6f 66 20 65 61 63 | 68 20 73 6f 72 74 20 72 |n of eac|h sort r|
|00000620| 65 63 6f 72 64 20 28 70 | 65 72 68 61 70 73 20 61 |ecord (p|erhaps a|
|00000630| 6c 6c 20 6f 66 0a 69 74 | 29 20 69 73 20 64 65 73 |ll of.it|) is des|
|00000640| 69 67 6e 61 74 65 64 20 | 61 73 20 74 68 65 20 73 |ignated |as the s|
|00000650| 6f 72 74 20 6b 65 79 2e | 20 20 54 68 65 20 72 65 |ort key.| The re|
|00000660| 63 6f 72 64 73 20 61 72 | 65 20 72 65 61 72 72 61 |cords ar|e rearra|
|00000670| 6e 67 65 64 20 69 6e 20 | 74 68 65 0a 62 75 66 66 |nged in |the.buff|
|00000680| 65 72 20 69 6e 20 6f 72 | 64 65 72 20 62 79 20 74 |er in or|der by t|
|00000690| 68 65 69 72 20 73 6f 72 | 74 20 6b 65 79 73 2e 20 |heir sor|t keys. |
|000006a0| 20 54 68 65 20 72 65 63 | 6f 72 64 73 20 6d 61 79 | The rec|ords may|
|000006b0| 20 6f 72 20 6d 61 79 20 | 6e 6f 74 20 62 65 0a 63 | or may |not be.c|
|000006c0| 6f 6e 74 69 67 75 6f 75 | 73 2e 0a 0a 55 73 75 61 |ontiguou|s...Usua|
|000006d0| 6c 6c 79 20 74 68 65 20 | 72 65 63 6f 72 64 73 20 |lly the |records |
|000006e0| 61 72 65 20 72 65 61 72 | 72 61 6e 67 65 64 20 69 |are rear|ranged i|
|000006f0| 6e 20 6f 72 64 65 72 20 | 6f 66 20 61 73 63 65 6e |n order |of ascen|
|00000700| 64 69 6e 67 20 73 6f 72 | 74 20 6b 65 79 2e 0a 49 |ding sor|t key..I|
|00000710| 66 20 52 45 56 45 52 53 | 45 20 69 73 20 6e 6f 6e |f REVERS|E is non|
|00000720| 2d 6e 69 6c 2c 20 74 68 | 65 79 20 61 72 65 20 72 |-nil, th|ey are r|
|00000730| 65 61 72 72 61 6e 67 65 | 64 20 69 6e 20 6f 72 64 |earrange|d in ord|
|00000740| 65 72 20 6f 66 20 64 65 | 73 63 65 6e 64 69 6e 67 |er of de|scending|
|00000750| 20 73 6f 72 74 20 6b 65 | 79 2e 0a 0a 54 68 65 20 | sort ke|y...The |
|00000760| 6e 65 78 74 20 66 6f 75 | 72 20 61 72 67 75 6d 65 |next fou|r argume|
|00000770| 6e 74 73 20 61 72 65 20 | 66 75 6e 63 74 69 6f 6e |nts are |function|
|00000780| 73 20 74 6f 20 62 65 20 | 63 61 6c 6c 65 64 20 74 |s to be |called t|
|00000790| 6f 20 6d 6f 76 65 20 70 | 6f 69 6e 74 0a 61 63 72 |o move p|oint.acr|
|000007a0| 6f 73 73 20 61 20 73 6f | 72 74 20 72 65 63 6f 72 |oss a so|rt recor|
|000007b0| 64 2e 20 20 54 68 65 79 | 20 77 69 6c 6c 20 62 65 |d. They| will be|
|000007c0| 20 63 61 6c 6c 65 64 20 | 6d 61 6e 79 20 74 69 6d | called |many tim|
|000007d0| 65 73 20 66 72 6f 6d 20 | 77 69 74 68 69 6e 20 73 |es from |within s|
|000007e0| 6f 72 74 2d 73 75 62 72 | 2e 0a 0a 4e 45 58 54 52 |ort-subr|...NEXTR|
|000007f0| 45 43 46 55 4e 20 69 73 | 20 63 61 6c 6c 65 64 20 |ECFUN is| called |
|00000800| 77 69 74 68 20 70 6f 69 | 6e 74 20 61 74 20 74 68 |with poi|nt at th|
|00000810| 65 20 65 6e 64 20 6f 66 | 20 74 68 65 20 70 72 65 |e end of| the pre|
|00000820| 76 69 6f 75 73 20 72 65 | 63 6f 72 64 2e 0a 49 74 |vious re|cord..It|
|00000830| 20 6d 6f 76 65 73 20 70 | 6f 69 6e 74 20 74 6f 20 | moves p|oint to |
|00000840| 74 68 65 20 73 74 61 72 | 74 20 6f 66 20 74 68 65 |the star|t of the|
|00000850| 20 6e 65 78 74 20 72 65 | 63 6f 72 64 2e 0a 49 74 | next re|cord..It|
|00000860| 20 73 68 6f 75 6c 64 20 | 6d 6f 76 65 20 70 6f 69 | should |move poi|
|00000870| 6e 74 20 74 6f 20 74 68 | 65 20 65 6e 64 20 6f 66 |nt to th|e end of|
|00000880| 20 74 68 65 20 62 75 66 | 66 65 72 20 69 66 20 74 | the buf|fer if t|
|00000890| 68 65 72 65 20 61 72 65 | 20 6e 6f 20 6d 6f 72 65 |here are| no more|
|000008a0| 20 72 65 63 6f 72 64 73 | 2e 0a 54 68 65 20 66 69 | records|..The fi|
|000008b0| 72 73 74 20 72 65 63 6f | 72 64 20 69 73 20 61 73 |rst reco|rd is as|
|000008c0| 73 75 6d 65 64 20 74 6f | 20 73 74 61 72 74 20 61 |sumed to| start a|
|000008d0| 74 20 74 68 65 20 70 6f | 73 69 74 69 6f 6e 20 6f |t the po|sition o|
|000008e0| 66 20 70 6f 69 6e 74 20 | 77 68 65 6e 20 73 6f 72 |f point |when sor|
|000008f0| 74 2d 73 75 62 72 0a 69 | 73 20 63 61 6c 6c 65 64 |t-subr.i|s called|
|00000900| 2e 0a 0a 45 4e 44 52 45 | 43 46 55 4e 20 69 73 20 |...ENDRE|CFUN is |
|00000910| 63 61 6c 6c 65 64 20 77 | 69 74 68 20 70 6f 69 6e |called w|ith poin|
|00000920| 74 20 77 69 74 68 69 6e | 20 74 68 65 20 72 65 63 |t within| the rec|
|00000930| 6f 72 64 2e 0a 49 74 20 | 73 68 6f 75 6c 64 20 6d |ord..It |should m|
|00000940| 6f 76 65 20 70 6f 69 6e | 74 20 74 6f 20 74 68 65 |ove poin|t to the|
|00000950| 20 65 6e 64 20 6f 66 20 | 74 68 65 20 72 65 63 6f | end of |the reco|
|00000960| 72 64 2e 0a 0a 53 54 41 | 52 54 4b 45 59 46 55 4e |rd...STA|RTKEYFUN|
|00000970| 20 6d 6f 76 65 73 20 66 | 72 6f 6d 20 74 68 65 20 | moves f|rom the |
|00000980| 73 74 61 72 74 20 6f 66 | 20 74 68 65 20 72 65 63 |start of| the rec|
|00000990| 6f 72 64 20 74 6f 20 74 | 68 65 20 73 74 61 72 74 |ord to t|he start|
|000009a0| 20 6f 66 20 74 68 65 20 | 6b 65 79 2e 0a 49 74 20 | of the |key..It |
|000009b0| 6d 61 79 20 72 65 74 75 | 72 6e 20 65 69 74 68 65 |may retu|rn eithe|
|000009c0| 72 20 61 20 6e 6f 6e 2d | 6e 69 6c 20 76 61 6c 75 |r a non-|nil valu|
|000009d0| 65 20 74 6f 20 62 65 20 | 75 73 65 64 20 61 73 20 |e to be |used as |
|000009e0| 74 68 65 20 6b 65 79 2c | 20 6f 72 0a 65 6c 73 65 |the key,| or.else|
|000009f0| 20 74 68 65 20 6b 65 79 | 20 69 73 20 74 68 65 20 | the key| is the |
|00000a00| 73 75 62 73 74 72 69 6e | 67 20 62 65 74 77 65 65 |substrin|g betwee|
|00000a10| 6e 20 74 68 65 20 76 61 | 6c 75 65 73 20 6f 66 20 |n the va|lues of |
|00000a20| 70 6f 69 6e 74 20 61 66 | 74 65 72 0a 53 54 41 52 |point af|ter.STAR|
|00000a30| 54 4b 45 59 46 55 4e 20 | 61 6e 64 20 45 4e 44 4b |TKEYFUN |and ENDK|
|00000a40| 45 59 46 55 4e 20 61 72 | 65 20 63 61 6c 6c 65 64 |EYFUN ar|e called|
|00000a50| 2e 20 20 49 66 20 53 54 | 41 52 54 4b 45 59 46 55 |. If ST|ARTKEYFU|
|00000a60| 4e 20 69 73 20 6e 69 6c | 2c 20 74 68 65 20 6b 65 |N is nil|, the ke|
|00000a70| 79 0a 73 74 61 72 74 73 | 20 61 74 20 74 68 65 20 |y.starts| at the |
|00000a80| 62 65 67 69 6e 6e 69 6e | 67 20 6f 66 20 74 68 65 |beginnin|g of the|
|00000a90| 20 72 65 63 6f 72 64 2e | 0a 0a 45 4e 44 4b 45 59 | record.|..ENDKEY|
|00000aa0| 46 55 4e 20 6d 6f 76 65 | 73 20 66 72 6f 6d 20 74 |FUN move|s from t|
|00000ab0| 68 65 20 73 74 61 72 74 | 20 6f 66 20 74 68 65 20 |he start| of the |
|00000ac0| 73 6f 72 74 20 6b 65 79 | 20 74 6f 20 74 68 65 20 |sort key| to the |
|00000ad0| 65 6e 64 20 6f 66 20 74 | 68 65 20 73 6f 72 74 20 |end of t|he sort |
|00000ae0| 6b 65 79 2e 0a 45 4e 44 | 4b 45 59 46 55 4e 20 6d |key..END|KEYFUN m|
|00000af0| 61 79 20 62 65 20 6e 69 | 6c 20 69 66 20 53 54 41 |ay be ni|l if STA|
|00000b00| 52 54 4b 45 59 46 55 4e | 20 72 65 74 75 72 6e 73 |RTKEYFUN| returns|
|00000b10| 20 61 20 76 61 6c 75 65 | 20 6f 72 20 69 66 20 69 | a value| or if i|
|00000b20| 74 20 77 6f 75 6c 64 20 | 62 65 20 74 68 65 0a 73 |t would |be the.s|
|00000b30| 61 6d 65 20 61 73 20 45 | 4e 44 52 45 43 46 55 4e |ame as E|NDRECFUN|
|00000b40| 2e 22 5d 29 0a 28 62 79 | 74 65 2d 63 6f 64 65 20 |."]).(by|te-code |
|00000b50| 22 c0 c1 c2 5c 22 88 c0 | c3 c4 5c 22 87 22 20 5b |"...\"..|..\"." [|
|00000b60| 64 65 66 61 6c 69 61 73 | 20 73 6f 72 74 2d 62 75 |defalias| sort-bu|
|00000b70| 69 6c 64 2d 6c 69 73 74 | 73 20 23 5b 28 6e 65 78 |ild-list|s #[(nex|
|00000b80| 74 72 65 63 66 75 6e 20 | 65 6e 64 72 65 63 66 75 |trecfun |endrecfu|
|00000b90| 6e 20 73 74 61 72 74 6b | 65 79 66 75 6e 20 65 6e |n startk|eyfun en|
|00000ba0| 64 6b 65 79 66 75 6e 29 | 20 22 c0 89 89 89 19 1a |dkeyfun)| "......|
|00000bb0| 1b 1c 6d 84 66 00 60 13 | c0 12 c1 c5 8d 11 5c 6e |..m.f.`.|......\n|
|00000bc0| c0 12 84 31 00 0e 06 83 | 26 00 0e 06 20 88 82 31 |...1....|&... ..1|
|00000bd0| 00 0e 07 83 31 00 0e 07 | 20 88 c8 12 09 83 56 00 |....1...| .....V.|
|00000be0| 09 3a 83 4e 00 09 40 0b | 9a 83 4e 00 09 41 60 9a |.:.N..@.|..N..A`.|
|00000bf0| 83 4e 00 09 89 42 82 53 | 00 09 0b 60 42 42 5c 66 |.N...B.S|...`BB\f|
|00000c00| 42 14 5c 6e 84 08 00 0e | 07 83 08 00 0e 07 20 88 |B.\n....|...... .|
|00000c10| 82 08 00 5c 66 2c 87 22 | 20 5b 6e 69 6c 20 6b 65 |...\f,."| [nil ke|
|00000c20| 79 20 64 6f 6e 65 20 73 | 74 61 72 74 2d 72 65 63 |y done s|tart-rec|
|00000c30| 20 73 6f 72 74 2d 6c 69 | 73 74 73 20 28 62 79 74 | sort-li|sts (byt|
|00000c40| 65 2d 63 6f 64 65 20 22 | 08 83 09 00 08 20 86 18 |e-code "|..... ..|
|00000c50| 00 60 19 5c 6e 86 12 00 | 0b c4 15 20 88 09 60 29 |.`.\n...|... ..`)|
|00000c60| 42 87 22 20 5b 73 74 61 | 72 74 6b 65 79 66 75 6e |B." [sta|rtkeyfun|
|00000c70| 20 73 74 61 72 74 20 65 | 6e 64 6b 65 79 66 75 6e | start e|ndkeyfun|
|00000c80| 20 65 6e 64 72 65 63 66 | 75 6e 20 74 20 64 6f 6e | endrecf|un t don|
|00000c90| 65 5d 20 32 29 20 65 6e | 64 72 65 63 66 75 6e 20 |e] 2) en|drecfun |
|00000ca0| 6e 65 78 74 72 65 63 66 | 75 6e 20 74 5d 20 34 5d |nextrecf|un t] 4]|
|00000cb0| 20 73 6f 72 74 2d 72 65 | 6f 72 64 65 72 2d 62 75 | sort-re|order-bu|
|00000cc0| 66 66 65 72 20 23 5b 28 | 73 6f 72 74 2d 6c 69 73 |ffer #[(|sort-lis|
|00000cd0| 74 73 20 6f 6c 64 29 20 | 22 c0 65 65 64 19 1a 1b |ts old) |".eed...|
|00000ce0| 1c 64 62 88 c5 c6 21 88 | 5c 6e 64 53 7d 88 0e 07 |.db...!.|\ndS}...|
|00000cf0| 83 4a 00 64 62 88 c8 70 | 0b 0e 09 40 41 40 23 88 |.J.db..p|...@A@#.|
|00000d00| 64 62 88 c8 70 0e 07 40 | 41 40 0e 07 40 41 41 23 |db..p..@|A@..@AA#|
|00000d10| 88 0e 09 40 41 41 13 0e | 07 41 16 07 0e 09 41 16 |...@AA..|.A....A.|
|00000d20| 09 82 14 00 64 62 88 c8 | 70 0b 09 23 88 5c 6e 09 |....db..|p..#.\n.|
|00000d30| 7c 88 64 62 88 5c 6e 60 | 54 7d 88 60 60 54 7c 2c ||.db.\n`|T}.``T|,|
|00000d40| 87 22 20 5b 74 20 6d 61 | 78 20 6d 69 6e 20 6c 61 |." [t ma|x min la|
|00000d50| 73 74 20 69 6e 68 69 62 | 69 74 2d 71 75 69 74 20 |st inhib|it-quit |
|00000d60| 69 6e 73 65 72 74 2d 62 | 65 66 6f 72 65 2d 6d 61 |insert-b|efore-ma|
|00000d70| 72 6b 65 72 73 20 22 20 | 22 20 73 6f 72 74 2d 6c |rkers " |" sort-l|
|00000d80| 69 73 74 73 20 69 6e 73 | 65 72 74 2d 62 75 66 66 |ists ins|ert-buff|
|00000d90| 65 72 2d 73 75 62 73 74 | 72 69 6e 67 20 6f 6c 64 |er-subst|ring old|
|00000da0| 5d 20 34 5d 5d 20 33 29 | 0a 28 64 65 66 61 6c 69 |] 4]] 3)|.(defali|
|00000db0| 61 73 20 27 73 6f 72 74 | 2d 6c 69 6e 65 73 20 23 |as 'sort|-lines #|
|00000dc0| 5b 28 72 65 76 65 72 73 | 65 20 62 65 67 20 65 6e |[(revers|e beg en|
|00000dd0| 64 29 20 22 8a 8c 08 09 | 7d 88 65 62 88 c2 0b c4 |d) "....|}.eb....|
|00000de0| c5 23 2a 87 22 20 5b 62 | 65 67 20 65 6e 64 20 73 |.#*." [b|eg end s|
|00000df0| 6f 72 74 2d 73 75 62 72 | 20 72 65 76 65 72 73 65 |ort-subr| reverse|
|00000e00| 20 66 6f 72 77 61 72 64 | 2d 6c 69 6e 65 20 65 6e | forward|-line en|
|00000e10| 64 2d 6f 66 2d 6c 69 6e | 65 5d 20 34 20 22 5c 0a |d-of-lin|e] 4 "\.|
|00000e20| 53 6f 72 74 20 6c 69 6e | 65 73 20 69 6e 20 72 65 |Sort lin|es in re|
|00000e30| 67 69 6f 6e 20 61 6c 70 | 68 61 62 65 74 69 63 61 |gion alp|habetica|
|00000e40| 6c 6c 79 3b 20 61 72 67 | 75 6d 65 6e 74 20 6d 65 |lly; arg|ument me|
|00000e50| 61 6e 73 20 64 65 73 63 | 65 6e 64 69 6e 67 20 6f |ans desc|ending o|
|00000e60| 72 64 65 72 2e 0a 43 61 | 6c 6c 65 64 20 66 72 6f |rder..Ca|lled fro|
|00000e70| 6d 20 61 20 70 72 6f 67 | 72 61 6d 2c 20 74 68 65 |m a prog|ram, the|
|00000e80| 72 65 20 61 72 65 20 74 | 68 72 65 65 20 61 72 67 |re are t|hree arg|
|00000e90| 75 6d 65 6e 74 73 3a 0a | 52 45 56 45 52 53 45 20 |uments:.|REVERSE |
|00000ea0| 28 6e 6f 6e 2d 6e 69 6c | 20 6d 65 61 6e 73 20 72 |(non-nil| means r|
|00000eb0| 65 76 65 72 73 65 20 6f | 72 64 65 72 29 2c 20 42 |everse o|rder), B|
|00000ec0| 45 47 20 61 6e 64 20 45 | 4e 44 20 28 72 65 67 69 |EG and E|ND (regi|
|00000ed0| 6f 6e 20 74 6f 20 73 6f | 72 74 29 2e 22 20 22 50 |on to so|rt)." "P|
|00000ee0| 5c 6e 72 22 5d 29 0a 28 | 64 65 66 61 6c 69 61 73 |\nr"]).(|defalias|
|00000ef0| 20 27 73 6f 72 74 2d 70 | 61 72 61 67 72 61 70 68 | 'sort-p|aragraph|
|00000f00| 73 20 23 5b 28 72 65 76 | 65 72 73 65 20 62 65 67 |s #[(rev|erse beg|
|00000f10| 20 65 6e 64 29 20 22 8a | 8c 08 09 7d 88 65 62 88 | end) ".|...}.eb.|
|00000f20| c2 0b c4 c5 23 2a 87 22 | 20 5b 62 65 67 20 65 6e |....#*."| [beg en|
|00000f30| 64 20 73 6f 72 74 2d 73 | 75 62 72 20 72 65 76 65 |d sort-s|ubr reve|
|00000f40| 72 73 65 20 23 5b 6e 69 | 6c 20 22 6d 3f 85 11 00 |rse #[ni|l "m?...|
|00000f50| c0 09 21 85 11 00 c2 79 | 88 82 00 00 87 22 20 5b |..!....y|....." [|
|00000f60| 6c 6f 6f 6b 69 6e 67 2d | 61 74 20 70 61 72 61 67 |looking-|at parag|
|00000f70| 72 61 70 68 2d 73 65 70 | 61 72 61 74 65 20 31 5d |raph-sep|arate 1]|
|00000f80| 20 32 5d 20 66 6f 72 77 | 61 72 64 2d 70 61 72 61 | 2] forw|ard-para|
|00000f90| 67 72 61 70 68 5d 20 34 | 20 22 5c 0a 53 6f 72 74 |graph] 4| "\.Sort|
|00000fa0| 20 70 61 72 61 67 72 61 | 70 68 73 20 69 6e 20 72 | paragra|phs in r|
|00000fb0| 65 67 69 6f 6e 20 61 6c | 70 68 61 62 65 74 69 63 |egion al|phabetic|
|00000fc0| 61 6c 6c 79 3b 20 61 72 | 67 75 6d 65 6e 74 20 6d |ally; ar|gument m|
|00000fd0| 65 61 6e 73 20 64 65 73 | 63 65 6e 64 69 6e 67 20 |eans des|cending |
|00000fe0| 6f 72 64 65 72 2e 0a 43 | 61 6c 6c 65 64 20 66 72 |order..C|alled fr|
|00000ff0| 6f 6d 20 61 20 70 72 6f | 67 72 61 6d 2c 20 74 68 |om a pro|gram, th|
|00001000| 65 72 65 20 61 72 65 20 | 74 68 72 65 65 20 61 72 |ere are |three ar|
|00001010| 67 75 6d 65 6e 74 73 3a | 0a 52 45 56 45 52 53 45 |guments:|.REVERSE|
|00001020| 20 28 6e 6f 6e 2d 6e 69 | 6c 20 6d 65 61 6e 73 20 | (non-ni|l means |
|00001030| 72 65 76 65 72 73 65 20 | 6f 72 64 65 72 29 2c 20 |reverse |order), |
|00001040| 42 45 47 20 61 6e 64 20 | 45 4e 44 20 28 72 65 67 |BEG and |END (reg|
|00001050| 69 6f 6e 20 74 6f 20 73 | 6f 72 74 29 2e 22 20 22 |ion to s|ort)." "|
|00001060| 50 5c 6e 72 22 5d 29 0a | 28 64 65 66 61 6c 69 61 |P\nr"]).|(defalia|
|00001070| 73 20 27 73 6f 72 74 2d | 70 61 67 65 73 20 23 5b |s 'sort-|pages #[|
|00001080| 28 72 65 76 65 72 73 65 | 20 62 65 67 20 65 6e 64 |(reverse| beg end|
|00001090| 29 20 22 8a 8c 08 09 7d | 88 65 62 88 c2 0b c4 c5 |) "....}|.eb.....|
|000010a0| 23 2a 87 22 20 5b 62 65 | 67 20 65 6e 64 20 73 6f |#*." [be|g end so|
|000010b0| 72 74 2d 73 75 62 72 20 | 72 65 76 65 72 73 65 20 |rt-subr |reverse |
|000010c0| 23 5b 6e 69 6c 20 22 c0 | c1 77 87 22 20 5b 22 5c |#[nil ".|.w." ["\|
|000010d0| 6e 22 20 6e 69 6c 5d 20 | 32 5d 20 66 6f 72 77 61 |n" nil] |2] forwa|
|000010e0| 72 64 2d 70 61 67 65 5d | 20 34 20 22 5c 0a 53 6f |rd-page]| 4 "\.So|
|000010f0| 72 74 20 70 61 67 65 73 | 20 69 6e 20 72 65 67 69 |rt pages| in regi|
|00001100| 6f 6e 20 61 6c 70 68 61 | 62 65 74 69 63 61 6c 6c |on alpha|beticall|
|00001110| 79 3b 20 61 72 67 75 6d | 65 6e 74 20 6d 65 61 6e |y; argum|ent mean|
|00001120| 73 20 64 65 73 63 65 6e | 64 69 6e 67 20 6f 72 64 |s descen|ding ord|
|00001130| 65 72 2e 0a 43 61 6c 6c | 65 64 20 66 72 6f 6d 20 |er..Call|ed from |
|00001140| 61 20 70 72 6f 67 72 61 | 6d 2c 20 74 68 65 72 65 |a progra|m, there|
|00001150| 20 61 72 65 20 74 68 72 | 65 65 20 61 72 67 75 6d | are thr|ee argum|
|00001160| 65 6e 74 73 3a 0a 52 45 | 56 45 52 53 45 20 28 6e |ents:.RE|VERSE (n|
|00001170| 6f 6e 2d 6e 69 6c 20 6d | 65 61 6e 73 20 72 65 76 |on-nil m|eans rev|
|00001180| 65 72 73 65 20 6f 72 64 | 65 72 29 2c 20 42 45 47 |erse ord|er), BEG|
|00001190| 20 61 6e 64 20 45 4e 44 | 20 28 72 65 67 69 6f 6e | and END| (region|
|000011a0| 20 74 6f 20 73 6f 72 74 | 29 2e 22 20 22 50 5c 6e | to sort|)." "P\n|
|000011b0| 72 22 5d 29 0a 28 62 79 | 74 65 2d 63 6f 64 65 20 |r"]).(by|te-code |
|000011c0| 22 c0 c1 21 84 08 00 c2 | 11 09 84 46 00 c3 20 c4 |"..!....|...F.. .|
|000011d0| 1d 1e 06 0d c7 57 83 26 | 00 c8 0d c9 0e 06 23 88 |.....W.&|......#.|
|000011e0| 0d 54 89 15 82 13 00 c8 | ca cb 0e 06 23 88 c8 cc |.T......|....#...|
|000011f0| cb 0e 06 23 88 c8 cd cb | 0e 06 23 88 c8 ce cf 0e |...#....|..#.....|
|00001200| 06 23 88 0e 06 11 2a c2 | 87 22 20 5b 62 6f 75 6e |.#....*.|." [boun|
|00001210| 64 70 20 73 6f 72 74 2d | 66 69 65 6c 64 73 2d 73 |dp sort-|fields-s|
|00001220| 79 6e 74 61 78 2d 74 61 | 62 6c 65 20 6e 69 6c 20 |yntax-ta|ble nil |
|00001230| 6d 61 6b 65 2d 73 79 6e | 74 61 78 2d 74 61 62 6c |make-syn|tax-tabl|
|00001240| 65 20 30 20 69 20 74 61 | 62 6c 65 20 32 35 36 20 |e 0 i ta|ble 256 |
|00001250| 6d 6f 64 69 66 79 2d 73 | 79 6e 74 61 78 2d 65 6e |modify-s|yntax-en|
|00001260| 74 72 79 20 22 77 22 20 | 33 32 20 22 20 22 20 39 |try "w" |32 " " 9|
|00001270| 20 31 30 20 34 36 20 22 | 5f 22 5d 20 35 29 0a 28 | 10 46 "|_"] 5).(|
|00001280| 64 65 66 61 6c 69 61 73 | 20 27 73 6f 72 74 2d 6e |defalias| 'sort-n|
|00001290| 75 6d 65 72 69 63 2d 66 | 69 65 6c 64 73 20 23 5b |umeric-f|ields #[|
|000012a0| 28 66 69 65 6c 64 20 62 | 65 67 20 65 6e 64 29 20 |(field b|eg end) |
|000012b0| 22 c0 09 5c 6e 0b c4 c5 | 25 87 22 20 5b 73 6f 72 |"..\n...|%." [sor|
|000012c0| 74 2d 66 69 65 6c 64 73 | 2d 31 20 66 69 65 6c 64 |t-fields|-1 field|
|000012d0| 20 62 65 67 20 65 6e 64 | 20 23 5b 6e 69 6c 20 22 | beg end| #[nil "|
|000012e0| c0 09 21 88 c2 60 8a c3 | c4 21 88 60 29 7b 21 87 |..!..`..|.!.`){!.|
|000012f0| 22 20 5b 73 6f 72 74 2d | 73 6b 69 70 2d 66 69 65 |" [sort-|skip-fie|
|00001300| 6c 64 73 20 66 69 65 6c | 64 20 73 74 72 69 6e 67 |lds fiel|d string|
|00001310| 2d 74 6f 2d 6e 75 6d 62 | 65 72 20 66 6f 72 77 61 |-to-numb|er forwa|
|00001320| 72 64 2d 73 65 78 70 20 | 31 5d 20 34 5d 20 6e 69 |rd-sexp |1] 4] ni|
|00001330| 6c 5d 20 36 20 22 5c 0a | 53 6f 72 74 20 6c 69 6e |l] 6 "\.|Sort lin|
|00001340| 65 73 20 69 6e 20 72 65 | 67 69 6f 6e 20 6e 75 6d |es in re|gion num|
|00001350| 65 72 69 63 61 6c 6c 79 | 20 62 79 20 74 68 65 20 |erically| by the |
|00001360| 41 52 47 74 68 20 66 69 | 65 6c 64 20 6f 66 20 65 |ARGth fi|eld of e|
|00001370| 61 63 68 20 6c 69 6e 65 | 2e 0a 46 69 65 6c 64 73 |ach line|..Fields|
|00001380| 20 61 72 65 20 73 65 70 | 61 72 61 74 65 64 20 62 | are sep|arated b|
|00001390| 79 20 77 68 69 74 65 73 | 70 61 63 65 20 61 6e 64 |y whites|pace and|
|000013a0| 20 6e 75 6d 62 65 72 65 | 64 20 66 72 6f 6d 20 31 | numbere|d from 1|
|000013b0| 20 75 70 2e 0a 53 70 65 | 63 69 66 69 65 64 20 66 | up..Spe|cified f|
|000013c0| 69 65 6c 64 20 6d 75 73 | 74 20 63 6f 6e 74 61 69 |ield mus|t contai|
|000013d0| 6e 20 61 20 6e 75 6d 62 | 65 72 20 69 6e 20 65 61 |n a numb|er in ea|
|000013e0| 63 68 20 6c 69 6e 65 20 | 6f 66 20 74 68 65 20 72 |ch line |of the r|
|000013f0| 65 67 69 6f 6e 2e 0a 57 | 69 74 68 20 61 20 6e 65 |egion..W|ith a ne|
|00001400| 67 61 74 69 76 65 20 61 | 72 67 2c 20 73 6f 72 74 |gative a|rg, sort|
|00001410| 73 20 62 79 20 74 68 65 | 20 41 52 47 74 68 20 66 |s by the| ARGth f|
|00001420| 69 65 6c 64 20 63 6f 75 | 6e 74 65 64 20 66 72 6f |ield cou|nted fro|
|00001430| 6d 20 74 68 65 20 72 69 | 67 68 74 2e 0a 43 61 6c |m the ri|ght..Cal|
|00001440| 6c 65 64 20 66 72 6f 6d | 20 61 20 70 72 6f 67 72 |led from| a progr|
|00001450| 61 6d 2c 20 74 68 65 72 | 65 20 61 72 65 20 74 68 |am, ther|e are th|
|00001460| 72 65 65 20 61 72 67 75 | 6d 65 6e 74 73 3a 0a 46 |ree argu|ments:.F|
|00001470| 49 45 4c 44 2c 20 42 45 | 47 20 61 6e 64 20 45 4e |IELD, BE|G and EN|
|00001480| 44 2e 20 20 42 45 47 20 | 61 6e 64 20 45 4e 44 20 |D. BEG |and END |
|00001490| 73 70 65 63 69 66 79 20 | 72 65 67 69 6f 6e 20 74 |specify |region t|
|000014a0| 6f 20 73 6f 72 74 2e 22 | 20 22 70 5c 6e 72 22 5d |o sort."| "p\nr"]|
|000014b0| 29 0a 28 64 65 66 61 6c | 69 61 73 20 27 73 6f 72 |).(defal|ias 'sor|
|000014c0| 74 2d 66 69 65 6c 64 73 | 20 23 5b 28 66 69 65 6c |t-fields| #[(fiel|
|000014d0| 64 20 62 65 67 20 65 6e | 64 29 20 22 c0 09 5c 6e |d beg en|d) "..\n|
|000014e0| 0b c4 c5 25 87 22 20 5b | 73 6f 72 74 2d 66 69 65 |...%." [|sort-fie|
|000014f0| 6c 64 73 2d 31 20 66 69 | 65 6c 64 20 62 65 67 20 |lds-1 fi|eld beg |
|00001500| 65 6e 64 20 23 5b 6e 69 | 6c 20 22 c0 09 21 88 c2 |end #[ni|l "..!..|
|00001510| 87 22 20 5b 73 6f 72 74 | 2d 73 6b 69 70 2d 66 69 |." [sort|-skip-fi|
|00001520| 65 6c 64 73 20 66 69 65 | 6c 64 20 6e 69 6c 5d 20 |elds fie|ld nil] |
|00001530| 32 5d 20 23 5b 6e 69 6c | 20 22 c0 c1 77 87 22 20 |2] #[nil| "..w." |
|00001540| 5b 22 5e 20 09 5c 6e 22 | 20 6e 69 6c 5d 20 32 5d |["^ .\n"| nil] 2]|
|00001550| 5d 20 36 20 22 5c 0a 53 | 6f 72 74 20 6c 69 6e 65 |] 6 "\.S|ort line|
|00001560| 73 20 69 6e 20 72 65 67 | 69 6f 6e 20 6c 65 78 69 |s in reg|ion lexi|
|00001570| 63 6f 67 72 61 70 68 69 | 63 61 6c 6c 79 20 62 79 |cographi|cally by|
|00001580| 20 74 68 65 20 41 52 47 | 74 68 20 66 69 65 6c 64 | the ARG|th field|
|00001590| 20 6f 66 20 65 61 63 68 | 20 6c 69 6e 65 2e 0a 46 | of each| line..F|
|000015a0| 69 65 6c 64 73 20 61 72 | 65 20 73 65 70 61 72 61 |ields ar|e separa|
|000015b0| 74 65 64 20 62 79 20 77 | 68 69 74 65 73 70 61 63 |ted by w|hitespac|
|000015c0| 65 20 61 6e 64 20 6e 75 | 6d 62 65 72 65 64 20 66 |e and nu|mbered f|
|000015d0| 72 6f 6d 20 31 20 75 70 | 2e 0a 57 69 74 68 20 61 |rom 1 up|..With a|
|000015e0| 20 6e 65 67 61 74 69 76 | 65 20 61 72 67 2c 20 73 | negativ|e arg, s|
|000015f0| 6f 72 74 73 20 62 79 20 | 74 68 65 20 41 52 47 74 |orts by |the ARGt|
|00001600| 68 20 66 69 65 6c 64 20 | 63 6f 75 6e 74 65 64 20 |h field |counted |
|00001610| 66 72 6f 6d 20 74 68 65 | 20 72 69 67 68 74 2e 0a |from the| right..|
|00001620| 43 61 6c 6c 65 64 20 66 | 72 6f 6d 20 61 20 70 72 |Called f|rom a pr|
|00001630| 6f 67 72 61 6d 2c 20 74 | 68 65 72 65 20 61 72 65 |ogram, t|here are|
|00001640| 20 74 68 72 65 65 20 61 | 72 67 75 6d 65 6e 74 73 | three a|rguments|
|00001650| 3a 0a 46 49 45 4c 44 2c | 20 42 45 47 20 61 6e 64 |:.FIELD,| BEG and|
|00001660| 20 45 4e 44 2e 20 20 42 | 45 47 20 61 6e 64 20 45 | END. B|EG and E|
|00001670| 4e 44 20 73 70 65 63 69 | 66 79 20 72 65 67 69 6f |ND speci|fy regio|
|00001680| 6e 20 74 6f 20 73 6f 72 | 74 2e 22 20 22 70 5c 6e |n to sor|t." "p\n|
|00001690| 72 22 5d 29 0a 28 62 79 | 74 65 2d 63 6f 64 65 20 |r"]).(by|te-code |
|000016a0| 22 c0 c1 c2 5c 22 88 c0 | c3 c4 5c 22 87 22 20 5b |"...\"..|..\"." [|
|000016b0| 64 65 66 61 6c 69 61 73 | 20 73 6f 72 74 2d 66 69 |defalias| sort-fi|
|000016c0| 65 6c 64 73 2d 31 20 23 | 5b 28 66 69 65 6c 64 20 |elds-1 #|[(field |
|000016d0| 62 65 67 20 65 6e 64 20 | 73 74 61 72 74 6b 65 79 |beg end |startkey|
|000016e0| 66 75 6e 20 65 6e 64 6b | 65 79 66 75 6e 29 20 22 |fun endk|eyfun) "|
|000016f0| c0 20 19 5c 6e c3 55 83 | 0b 00 c4 12 c5 8e 8a 8c |. .\n.U.|........|
|00001700| 0e 06 0e 07 7d 88 65 62 | 88 c8 0e 09 21 88 ca cb |....}.eb|....!...|
|00001710| cc cd 0e 0e 0e 0f 25 2c | 87 22 20 5b 73 79 6e 74 |......%,|." [synt|
|00001720| 61 78 2d 74 61 62 6c 65 | 20 74 62 6c 20 66 69 65 |ax-table| tbl fie|
|00001730| 6c 64 20 30 20 31 20 28 | 28 73 65 74 2d 73 79 6e |ld 0 1 (|(set-syn|
|00001740| 74 61 78 2d 74 61 62 6c | 65 20 74 62 6c 29 29 20 |tax-tabl|e tbl)) |
|00001750| 62 65 67 20 65 6e 64 20 | 73 65 74 2d 73 79 6e 74 |beg end |set-synt|
|00001760| 61 78 2d 74 61 62 6c 65 | 20 73 6f 72 74 2d 66 69 |ax-table| sort-fi|
|00001770| 65 6c 64 73 2d 73 79 6e | 74 61 78 2d 74 61 62 6c |elds-syn|tax-tabl|
|00001780| 65 20 73 6f 72 74 2d 73 | 75 62 72 20 6e 69 6c 20 |e sort-s|ubr nil |
|00001790| 66 6f 72 77 61 72 64 2d | 6c 69 6e 65 20 65 6e 64 |forward-|line end|
|000017a0| 2d 6f 66 2d 6c 69 6e 65 | 20 73 74 61 72 74 6b 65 |-of-line| startke|
|000017b0| 79 66 75 6e 20 65 6e 64 | 6b 65 79 66 75 6e 5d 20 |yfun end|keyfun] |
|000017c0| 36 5d 20 73 6f 72 74 2d | 73 6b 69 70 2d 66 69 65 |6] sort-|skip-fie|
|000017d0| 6c 64 73 20 23 5b 28 6e | 29 20 22 08 c1 56 83 38 |lds #[(n|) "..V.8|
|000017e0| 00 08 53 89 1a c1 56 83 | 1e 00 c3 c4 77 88 c5 c4 |..S...V.|....w...|
|000017f0| 77 88 5c 6e 53 89 12 82 | 5c 6e 00 c3 c4 77 88 6c |w.\nS...|\n...w.l|
|00001800| 85 36 00 c6 c7 8a c1 79 | 88 60 29 8a c4 7f 88 60 |.6.....y|.`)....`|
|00001810| 29 7b 5c 22 29 87 c4 7f | 88 08 5b 53 89 1a c1 56 |){\")...|..[S...V|
|00001820| 83 54 00 c3 c4 78 88 c5 | c4 78 88 5c 6e 53 89 12 |.T...x..|.x.\nS..|
|00001830| 82 40 00 c3 c4 78 88 29 | 6e 83 6e 00 c6 c7 8a c1 |.@...x.)|n.n.....|
|00001840| 79 88 60 29 8a c4 7f 88 | 60 29 7b 5c 22 88 c5 c4 |y.`)....|`){\"...|
|00001850| 78 87 22 20 5b 6e 20 30 | 20 69 20 22 20 09 22 20 |x." [n 0| i " ." |
|00001860| 6e 69 6c 20 22 5e 20 09 | 5c 6e 22 20 65 72 72 6f |nil "^ .|\n" erro|
|00001870| 72 20 22 4c 69 6e 65 20 | 68 61 73 20 74 6f 6f 20 |r "Line |has too |
|00001880| 66 65 77 20 66 69 65 6c | 64 73 3a 20 25 73 22 5d |few fiel|ds: %s"]|
|00001890| 20 35 5d 5d 20 33 29 0a | 28 64 65 66 61 6c 69 61 | 5]] 3).|(defalia|
|000018a0| 73 20 27 73 6f 72 74 2d | 72 65 67 65 78 70 2d 66 |s 'sort-|regexp-f|
|000018b0| 69 65 6c 64 73 20 23 5b | 28 72 65 76 65 72 73 65 |ields #[|(reverse|
|000018c0| 20 72 65 63 6f 72 64 2d | 72 65 67 65 78 70 20 6b | record-|regexp k|
|000018d0| 65 79 2d 72 65 67 65 78 | 70 20 62 65 67 20 65 6e |ey-regex|p beg en|
|000018e0| 64 29 20 22 08 c1 9a 84 | 5c 66 00 08 c2 9a 83 11 |d) "....|\f......|
|000018f0| 00 c3 10 82 1e 00 c4 c5 | 08 5c 22 83 1e 00 08 c6 |........|.\".....|
|00001900| 48 c7 5a 10 8a 8c 0e 08 | 0e 09 7d 88 65 62 88 ca |H.Z.....|..}.eb..|
|00001910| 1e 0b cc 0e 0d 21 88 60 | 16 0b c3 94 62 88 ce 0e |.....!.`|....b...|
|00001920| 0f d0 d1 d2 24 2b 87 22 | 20 5b 6b 65 79 2d 72 65 |....$+."| [key-re|
|00001930| 67 65 78 70 20 22 22 20 | 22 5c 5c 26 22 20 30 20 |gexp "" |"\\&" 0 |
|00001940| 73 74 72 69 6e 67 2d 6d | 61 74 63 68 20 22 5c 5c |string-m|atch "\\|
|00001950| 60 5c 5c 5c 5c 5b 31 2d | 39 5d 5c 5c 27 22 20 31 |`\\\\[1-|9]\\'" 1|
|00001960| 20 34 38 20 62 65 67 20 | 65 6e 64 20 6e 69 6c 20 | 48 beg |end nil |
|00001970| 73 6f 72 74 2d 72 65 67 | 65 78 70 2d 72 65 63 6f |sort-reg|exp-reco|
|00001980| 72 64 2d 65 6e 64 20 72 | 65 2d 73 65 61 72 63 68 |rd-end r|e-search|
|00001990| 2d 66 6f 72 77 61 72 64 | 20 72 65 63 6f 72 64 2d |-forward| record-|
|000019a0| 72 65 67 65 78 70 20 73 | 6f 72 74 2d 73 75 62 72 |regexp s|ort-subr|
|000019b0| 20 72 65 76 65 72 73 65 | 20 23 5b 6e 69 6c 20 22 | reverse| #[nil "|
|000019c0| c0 09 c2 c3 23 85 12 00 | c4 95 89 15 85 12 00 c4 |....#...|........|
|000019d0| 94 62 87 22 20 5b 72 65 | 2d 73 65 61 72 63 68 2d |.b." [re|-search-|
|000019e0| 66 6f 72 77 61 72 64 20 | 72 65 63 6f 72 64 2d 72 |forward |record-r|
|000019f0| 65 67 65 78 70 20 6e 69 | 6c 20 6d 6f 76 65 20 30 |egexp ni|l move 0|
|00001a00| 20 73 6f 72 74 2d 72 65 | 67 65 78 70 2d 72 65 63 | sort-re|gexp-rec|
|00001a10| 6f 72 64 2d 65 6e 64 5d | 20 34 5d 20 23 5b 6e 69 |ord-end]| 4] #[ni|
|00001a20| 6c 20 22 08 62 87 22 20 | 5b 73 6f 72 74 2d 72 65 |l ".b." |[sort-re|
|00001a30| 67 65 78 70 2d 72 65 63 | 6f 72 64 2d 65 6e 64 5d |gexp-rec|ord-end]|
|00001a40| 20 31 5d 20 23 5b 6e 69 | 6c 20 22 c0 19 5c 6e a7 | 1] #[ni|l "..\n.|
|00001a50| 83 5c 66 00 5c 6e 11 82 | 1e 00 c3 5c 6e 5c 66 c5 |.\f.\n..|...\n\f.|
|00001a60| 23 83 19 00 c0 11 82 1e | 00 c6 c7 c8 5c 22 88 c8 |#.......|....\"..|
|00001a70| c9 ca 8f 29 87 22 20 5b | 30 20 6e 20 6b 65 79 2d |...)." [|0 n key-|
|00001a80| 72 65 67 65 78 70 20 72 | 65 2d 73 65 61 72 63 68 |regexp r|e-search|
|00001a90| 2d 66 6f 72 77 61 72 64 | 20 73 6f 72 74 2d 72 65 |-forward| sort-re|
|00001aa0| 67 65 78 70 2d 72 65 63 | 6f 72 64 2d 65 6e 64 20 |gexp-rec|ord-end |
|00001ab0| 74 20 74 68 72 6f 77 20 | 6b 65 79 20 6e 69 6c 20 |t throw |key nil |
|00001ac0| 28 62 79 74 65 2d 63 6f | 64 65 20 22 c0 c1 21 83 |(byte-co|de "..!.|
|00001ad0| 5c 66 00 5c 6e 94 5c 6e | 95 42 87 5c 6e 94 5c 6e |\f.\n.\n|.B.\n.\n|
|00001ae0| 95 7b 87 22 20 5b 66 62 | 6f 75 6e 64 70 20 62 75 |.{." [fb|oundp bu|
|00001af0| 66 66 65 72 2d 73 75 62 | 73 74 72 69 6e 67 2d 6c |ffer-sub|string-l|
|00001b00| 65 73 73 70 20 6e 5d 20 | 32 29 20 28 28 65 72 72 |essp n] |2) ((err|
|00001b10| 6f 72 20 28 62 79 74 65 | 2d 63 6f 64 65 20 22 c0 |or (byte|-code ".|
|00001b20| c1 c2 5c 22 87 22 20 5b | 74 68 72 6f 77 20 6b 65 |..\"." [|throw ke|
|00001b30| 79 20 6e 69 6c 5d 20 33 | 29 29 29 5d 20 34 5d 5d |y nil] 3|)))] 4]]|
|00001b40| 20 35 20 22 5c 0a 53 6f | 72 74 20 74 68 65 20 72 | 5 "\.So|rt the r|
|00001b50| 65 67 69 6f 6e 20 6c 65 | 78 69 63 6f 67 72 61 70 |egion le|xicograp|
|00001b60| 68 69 63 61 6c 6c 79 20 | 61 73 20 73 70 65 63 69 |hically |as speci|
|00001b70| 66 69 65 64 20 62 79 20 | 52 45 43 4f 52 44 2d 52 |fied by |RECORD-R|
|00001b80| 45 47 45 58 50 20 61 6e | 64 20 4b 45 59 2e 0a 52 |EGEXP an|d KEY..R|
|00001b90| 45 43 4f 52 44 2d 52 45 | 47 45 58 50 20 73 70 65 |ECORD-RE|GEXP spe|
|00001ba0| 63 69 66 69 65 73 20 74 | 68 65 20 74 65 78 74 75 |cifies t|he textu|
|00001bb0| 61 6c 20 75 6e 69 74 73 | 20 77 68 69 63 68 20 73 |al units| which s|
|00001bc0| 68 6f 75 6c 64 20 62 65 | 20 73 6f 72 74 65 64 2e |hould be| sorted.|
|00001bd0| 0a 20 20 46 6f 72 20 65 | 78 61 6d 70 6c 65 2c 20 |. For e|xample, |
|00001be0| 74 6f 20 73 6f 72 74 20 | 6c 69 6e 65 73 20 52 45 |to sort |lines RE|
|00001bf0| 43 4f 52 44 2d 52 45 47 | 45 58 50 20 77 6f 75 6c |CORD-REG|EXP woul|
|00001c00| 64 20 62 65 20 5c 22 5e | 2e 2a 24 5c 22 0a 4b 45 |d be \"^|.*$\".KE|
|00001c10| 59 20 73 70 65 63 69 66 | 69 65 73 20 74 68 65 20 |Y specif|ies the |
|00001c20| 70 61 72 74 20 6f 66 20 | 65 61 63 68 20 72 65 63 |part of |each rec|
|00001c30| 6f 72 64 20 28 69 65 20 | 65 61 63 68 20 6d 61 74 |ord (ie |each mat|
|00001c40| 63 68 20 66 6f 72 20 52 | 45 43 4f 52 44 2d 52 45 |ch for R|ECORD-RE|
|00001c50| 47 45 58 50 29 0a 20 20 | 69 73 20 74 6f 20 62 65 |GEXP). |is to be|
|00001c60| 20 75 73 65 64 20 66 6f | 72 20 73 6f 72 74 69 6e | used fo|r sortin|
|00001c70| 67 2e 0a 20 20 49 66 20 | 69 74 20 69 73 20 5c 22 |g.. If |it is \"|
|00001c80| 5c 5c 64 69 67 69 74 5c | 22 20 74 68 65 6e 20 74 |\\digit\|" then t|
|00001c90| 68 65 20 64 69 67 69 74 | 27 74 68 20 5c 22 5c 5c |he digit|'th \"\\|
|00001ca0| 28 2e 2e 2e 5c 5c 29 5c | 22 20 6d 61 74 63 68 20 |(...\\)\|" match |
|00001cb0| 66 69 65 6c 64 20 66 72 | 6f 6d 0a 20 20 52 45 43 |field fr|om. REC|
|00001cc0| 4f 52 44 2d 52 45 47 45 | 58 50 20 69 73 20 75 73 |ORD-REGE|XP is us|
|00001cd0| 65 64 2e 0a 20 20 49 66 | 20 69 74 20 69 73 20 5c |ed.. If| it is \|
|00001ce0| 22 5c 5c 26 5c 22 20 74 | 68 65 6e 20 74 68 65 20 |"\\&\" t|hen the |
|00001cf0| 77 68 6f 6c 65 20 72 65 | 63 6f 72 64 20 69 73 20 |whole re|cord is |
|00001d00| 75 73 65 64 2e 0a 20 20 | 4f 74 68 65 72 77 69 73 |used.. |Otherwis|
|00001d10| 65 2c 20 69 74 20 69 73 | 20 61 20 72 65 67 75 6c |e, it is| a regul|
|00001d20| 61 72 2d 65 78 70 72 65 | 73 73 69 6f 6e 20 66 6f |ar-expre|ssion fo|
|00001d30| 72 20 77 68 69 63 68 20 | 74 6f 20 73 65 61 72 63 |r which |to searc|
|00001d40| 68 20 77 69 74 68 69 6e | 20 74 68 65 20 72 65 63 |h within| the rec|
|00001d50| 6f 72 64 2e 0a 49 66 20 | 61 20 6d 61 74 63 68 20 |ord..If |a match |
|00001d60| 66 6f 72 20 4b 45 59 20 | 69 73 20 6e 6f 74 20 66 |for KEY |is not f|
|00001d70| 6f 75 6e 64 20 77 69 74 | 68 69 6e 20 61 20 72 65 |ound wit|hin a re|
|00001d80| 63 6f 72 64 20 74 68 65 | 6e 20 74 68 61 74 20 72 |cord the|n that r|
|00001d90| 65 63 6f 72 64 20 69 73 | 20 69 67 6e 6f 72 65 64 |ecord is| ignored|
|00001da0| 2e 0a 0a 57 69 74 68 20 | 61 20 6e 65 67 61 74 69 |...With |a negati|
|00001db0| 76 65 20 70 72 65 66 69 | 78 20 61 72 67 20 73 6f |ve prefi|x arg so|
|00001dc0| 72 74 73 20 69 6e 20 72 | 65 76 65 72 73 65 20 6f |rts in r|everse o|
|00001dd0| 72 64 65 72 2e 0a 0a 46 | 6f 72 20 65 78 61 6d 70 |rder...F|or examp|
|00001de0| 6c 65 3a 20 74 6f 20 73 | 6f 72 74 20 6c 69 6e 65 |le: to s|ort line|
|00001df0| 73 20 69 6e 20 74 68 65 | 20 72 65 67 69 6f 6e 20 |s in the| region |
|00001e00| 62 79 20 74 68 65 20 66 | 69 72 73 74 20 77 6f 72 |by the f|irst wor|
|00001e10| 64 20 6f 6e 20 65 61 63 | 68 20 6c 69 6e 65 0a 20 |d on eac|h line. |
|00001e20| 73 74 61 72 74 69 6e 67 | 20 77 69 74 68 20 74 68 |starting| with th|
|00001e30| 65 20 6c 65 74 74 65 72 | 20 5c 22 66 5c 22 2c 0a |e letter| \"f\",.|
|00001e40| 20 52 45 43 4f 52 44 2d | 52 45 47 45 58 50 20 77 | RECORD-|REGEXP w|
|00001e50| 6f 75 6c 64 20 62 65 20 | 5c 22 5e 2e 2a 24 5c 22 |ould be |\"^.*$\"|
|00001e60| 20 61 6e 64 20 4b 45 59 | 20 77 6f 75 6c 64 20 62 | and KEY| would b|
|00001e70| 65 20 5c 22 5c 5c 3d 5c | 5c 3c 66 5c 5c 77 2a 5c |e \"\\=\|\<f\\w*\|
|00001e80| 5c 3e 5c 22 22 20 22 50 | 5c 6e 73 52 65 67 65 78 |\>\"" "P|\nsRegex|
|00001e90| 70 20 73 70 65 63 69 66 | 79 69 6e 67 20 72 65 63 |p specif|ying rec|
|00001ea0| 6f 72 64 73 20 74 6f 20 | 73 6f 72 74 3a 20 5c 6e |ords to |sort: \n|
|00001eb0| 73 52 65 67 65 78 70 20 | 73 70 65 63 69 66 79 69 |sRegexp |specifyi|
|00001ec0| 6e 67 20 6b 65 79 20 77 | 69 74 68 69 6e 20 72 65 |ng key w|ithin re|
|00001ed0| 63 6f 72 64 3a 20 5c 6e | 72 22 5d 29 0a 28 62 79 |cord: \n|r"]).(by|
|00001ee0| 74 65 2d 63 6f 64 65 20 | 22 c0 c1 21 84 08 00 c2 |te-code |"..!....|
|00001ef0| 11 c0 87 22 20 5b 62 6f | 75 6e 64 70 20 73 6f 72 |..." [bo|undp sor|
|00001f00| 74 2d 63 6f 6c 75 6d 6e | 73 2d 73 75 62 70 72 6f |t-column|s-subpro|
|00001f10| 63 65 73 73 20 74 5d 20 | 32 29 0a 28 64 65 66 61 |cess t] |2).(defa|
|00001f20| 6c 69 61 73 20 27 73 6f | 72 74 2d 63 6f 6c 75 6d |lias 'so|rt-colum|
|00001f30| 6e 73 20 23 5b 28 72 65 | 76 65 72 73 65 20 26 6f |ns #[(re|verse &o|
|00001f40| 70 74 69 6f 6e 61 6c 20 | 62 65 67 20 65 6e 64 29 |ptional |beg end)|
|00001f50| 20 22 8a c0 89 89 89 89 | 89 19 1a 1b 1c 1d 1e 06 | "......|........|
|00001f60| 0e 07 0e 08 5e 62 88 69 | 14 c9 79 88 60 16 06 0e |....^b.i|..y.`...|
|00001f70| 07 0e 08 5d 62 88 69 13 | c0 79 88 60 15 5c 66 0b |...]b.i.|.y.`.\f.|
|00001f80| 5e 12 5c 66 0b 5d 11 ca | cb 0e 06 cc 23 83 40 00 |^.\f.]..|....#.@.|
|00001f90| cd ce 21 88 0e 0f d0 3d | 84 64 00 d1 0e 06 0d d2 |..!....=|.d......|
|00001fa0| cc 89 c0 0e 13 83 58 00 | d4 82 59 00 d5 d6 5c 6e |......X.|..Y...\n|
|00001fb0| 50 d7 09 50 26 09 82 78 | 00 8a 8c 0e 06 0d 7d 88 |P..P&..x|......}.|
|00001fc0| 0e 06 62 88 d8 0e 13 d9 | da db dc 25 2a 2e 07 87 |..b.....|...%*...|
|00001fd0| 22 20 5b 6e 69 6c 20 63 | 6f 6c 2d 65 6e 64 20 63 |" [nil c|ol-end c|
|00001fe0| 6f 6c 2d 73 74 61 72 74 | 20 63 6f 6c 2d 65 6e 64 |ol-start| col-end|
|00001ff0| 31 20 63 6f 6c 2d 62 65 | 67 31 20 65 6e 64 31 20 |1 col-be|g1 end1 |
|00002000| 62 65 67 31 20 62 65 67 | 20 65 6e 64 20 30 20 73 |beg1 beg| end 0 s|
|00002010| 65 61 72 63 68 2d 62 61 | 63 6b 77 61 72 64 20 22 |earch-ba|ckward "|
|00002020| 09 22 20 74 20 65 72 72 | 6f 72 20 22 73 6f 72 74 |." t err|or "sort|
|00002030| 2d 63 6f 6c 75 6d 6e 73 | 20 64 6f 65 73 20 6e 6f |-columns| does no|
|00002040| 74 20 77 6f 72 6b 20 77 | 69 74 68 20 74 61 62 73 |t work w|ith tabs|
|00002050| 2e 20 20 55 73 65 20 4d | 2d 78 20 75 6e 74 61 62 |. Use M|-x untab|
|00002060| 69 66 79 2e 22 20 73 79 | 73 74 65 6d 2d 74 79 70 |ify." sy|stem-typ|
|00002070| 65 20 76 61 78 2d 76 6d | 73 20 63 61 6c 6c 2d 70 |e vax-vm|s call-p|
|00002080| 72 6f 63 65 73 73 2d 72 | 65 67 69 6f 6e 20 22 73 |rocess-r|egion "s|
|00002090| 6f 72 74 22 20 72 65 76 | 65 72 73 65 20 22 2d 72 |ort" rev|erse "-r|
|000020a0| 74 5c 6e 22 20 22 2d 74 | 5c 6e 22 20 22 2b 30 2e |t\n" "-t|\n" "+0.|
|000020b0| 22 20 22 2d 30 2e 22 20 | 73 6f 72 74 2d 73 75 62 |" "-0." |sort-sub|
|000020c0| 72 20 66 6f 72 77 61 72 | 64 2d 6c 69 6e 65 20 65 |r forwar|d-line e|
|000020d0| 6e 64 2d 6f 66 2d 6c 69 | 6e 65 20 23 5b 6e 69 6c |nd-of-li|ne #[nil|
|000020e0| 20 22 c0 09 21 88 c2 87 | 22 20 5b 6d 6f 76 65 2d | "..!...|" [move-|
|000020f0| 74 6f 2d 63 6f 6c 75 6d | 6e 20 63 6f 6c 2d 73 74 |to-colum|n col-st|
|00002100| 61 72 74 20 6e 69 6c 5d | 20 32 5d 20 23 5b 6e 69 |art nil]| 2] #[ni|
|00002110| 6c 20 22 c0 09 21 88 c2 | 87 22 20 5b 6d 6f 76 65 |l "..!..|." [move|
|00002120| 2d 74 6f 2d 63 6f 6c 75 | 6d 6e 20 63 6f 6c 2d 65 |-to-colu|mn col-e|
|00002130| 6e 64 20 6e 69 6c 5d 20 | 32 5d 5d 20 31 31 20 22 |nd nil] |2]] 11 "|
|00002140| 5c 0a 53 6f 72 74 20 6c | 69 6e 65 73 20 69 6e 20 |\.Sort l|ines in |
|00002150| 72 65 67 69 6f 6e 20 61 | 6c 70 68 61 62 65 74 69 |region a|lphabeti|
|00002160| 63 61 6c 6c 79 20 62 79 | 20 61 20 63 65 72 74 61 |cally by| a certa|
|00002170| 69 6e 20 72 61 6e 67 65 | 20 6f 66 20 63 6f 6c 75 |in range| of colu|
|00002180| 6d 6e 73 2e 0a 46 6f 72 | 20 74 68 65 20 70 75 72 |mns..For| the pur|
|00002190| 70 6f 73 65 20 6f 66 20 | 74 68 69 73 20 63 6f 6d |pose of |this com|
|000021a0| 6d 61 6e 64 2c 20 74 68 | 65 20 72 65 67 69 6f 6e |mand, th|e region|
|000021b0| 20 69 6e 63 6c 75 64 65 | 73 0a 74 68 65 20 65 6e | include|s.the en|
|000021c0| 74 69 72 65 20 6c 69 6e | 65 20 74 68 61 74 20 70 |tire lin|e that p|
|000021d0| 6f 69 6e 74 20 69 73 20 | 69 6e 20 61 6e 64 20 74 |oint is |in and t|
|000021e0| 68 65 20 65 6e 74 69 72 | 65 20 6c 69 6e 65 20 74 |he entir|e line t|
|000021f0| 68 65 20 6d 61 72 6b 20 | 69 73 20 69 6e 2e 0a 54 |he mark |is in..T|
|00002200| 68 65 20 63 6f 6c 75 6d | 6e 20 70 6f 73 69 74 69 |he colum|n positi|
|00002210| 6f 6e 73 20 6f 66 20 70 | 6f 69 6e 74 20 61 6e 64 |ons of p|oint and|
|00002220| 20 6d 61 72 6b 20 62 6f | 75 6e 64 20 74 68 65 20 | mark bo|und the |
|00002230| 72 61 6e 67 65 20 6f 66 | 20 63 6f 6c 75 6d 6e 73 |range of| columns|
|00002240| 20 74 6f 20 73 6f 72 74 | 20 6f 6e 2e 0a 41 20 70 | to sort| on..A p|
|00002250| 72 65 66 69 78 20 61 72 | 67 75 6d 65 6e 74 20 6d |refix ar|gument m|
|00002260| 65 61 6e 73 20 73 6f 72 | 74 20 69 6e 74 6f 20 72 |eans sor|t into r|
|00002270| 65 76 65 72 73 65 20 6f | 72 64 65 72 2e 0a 0a 4e |everse o|rder...N|
|00002280| 6f 74 65 20 74 68 61 74 | 20 60 73 6f 72 74 2d 63 |ote that| `sort-c|
|00002290| 6f 6c 75 6d 6e 73 27 20 | 72 65 6a 65 63 74 73 20 |olumns' |rejects |
|000022a0| 74 65 78 74 20 74 68 61 | 74 20 63 6f 6e 74 61 69 |text tha|t contai|
|000022b0| 6e 73 20 74 61 62 73 2c | 0a 62 65 63 61 75 73 65 |ns tabs,|.because|
|000022c0| 20 74 61 62 73 20 63 6f | 75 6c 64 20 62 65 20 73 | tabs co|uld be s|
|000022d0| 70 6c 69 74 20 61 63 72 | 6f 73 73 20 74 68 65 20 |plit acr|oss the |
|000022e0| 73 70 65 63 69 66 69 65 | 64 20 63 6f 6c 75 6d 6e |specifie|d column|
|000022f0| 73 0a 61 6e 64 20 69 74 | 20 64 6f 65 73 6e 27 74 |s.and it| doesn't|
|00002300| 20 6b 6e 6f 77 20 68 6f | 77 20 74 6f 20 68 61 6e | know ho|w to han|
|00002310| 64 6c 65 20 74 68 61 74 | 2e 20 20 41 6c 73 6f 2c |dle that|. Also,|
|00002320| 20 77 68 65 6e 20 70 6f | 73 73 69 62 6c 65 2c 0a | when po|ssible,.|
|00002330| 69 74 20 75 73 65 73 20 | 74 68 65 20 60 73 6f 72 |it uses |the `sor|
|00002340| 74 27 20 75 74 69 6c 69 | 74 79 20 70 72 6f 67 72 |t' utili|ty progr|
|00002350| 61 6d 2c 20 77 68 69 63 | 68 20 64 6f 65 73 6e 27 |am, whic|h doesn'|
|00002360| 74 20 75 6e 64 65 72 73 | 74 61 6e 64 20 74 61 62 |t unders|tand tab|
|00002370| 73 2e 0a 55 73 65 20 5c | 5c 5b 75 6e 74 61 62 69 |s..Use \|\[untabi|
|00002380| 66 79 5d 20 74 6f 20 63 | 6f 6e 76 65 72 74 20 74 |fy] to c|onvert t|
|00002390| 61 62 73 20 74 6f 20 73 | 70 61 63 65 73 20 62 65 |abs to s|paces be|
|000023a0| 66 6f 72 65 20 73 6f 72 | 74 69 6e 67 2e 22 20 22 |fore sor|ting." "|
|000023b0| 50 5c 6e 72 22 5d 29 0a | 28 64 65 66 61 6c 69 61 |P\nr"]).|(defalia|
|000023c0| 73 20 27 72 65 76 65 72 | 73 65 2d 72 65 67 69 6f |s 'rever|se-regio|
|000023d0| 6e 20 23 5b 28 62 65 67 | 20 65 6e 64 29 20 22 08 |n #[(beg| end) ".|
|000023e0| 09 56 83 0f 00 c2 1b 09 | 13 08 11 0b 10 29 8a 08 |.V......|.....)..|
|000023f0| 62 88 6e 84 1a 00 c4 79 | 88 60 10 09 62 88 6c 83 |b.n....y|.`..b.l.|
|00002400| 27 00 6e 83 2d 00 c5 79 | 88 c2 7f 88 c6 20 11 c2 |'.n.-..y|..... ..|
|00002410| c7 1e 08 1e 09 0e 08 83 | 60 00 08 62 88 60 c2 7f |........|`..b.`..|
|00002420| 88 60 7b 0e 09 42 16 09 | 60 09 55 3f 16 08 08 0e |.`{..B..|`.U?....|
|00002430| 08 83 5a 00 60 54 82 5b | 00 60 7c 88 82 36 00 0e |..Z.`T.[|.`|..6..|
|00002440| 09 41 83 76 00 0e 09 40 | ca b1 02 88 0e 09 41 89 |.A.v...@|......A.|
|00002450| 16 09 82 62 00 0e 09 40 | 63 2b 87 22 20 5b 62 65 |...b...@|c+." [be|
|00002460| 67 20 65 6e 64 20 6e 69 | 6c 20 6d 69 64 20 31 20 |g end ni|l mid 1 |
|00002470| 2d 31 20 70 6f 69 6e 74 | 2d 6d 61 72 6b 65 72 20 |-1 point|-marker |
|00002480| 74 20 64 6f 20 6c 6c 20 | 22 5c 6e 22 5d 20 33 20 |t do ll |"\n"] 3 |
|00002490| 22 5c 0a 52 65 76 65 72 | 73 65 20 74 68 65 20 6f |"\.Rever|se the o|
|000024a0| 72 64 65 72 20 6f 66 20 | 6c 69 6e 65 73 20 69 6e |rder of |lines in|
|000024b0| 20 61 20 72 65 67 69 6f | 6e 2e 0a 46 72 6f 6d 20 | a regio|n..From |
|000024c0| 61 20 70 72 6f 67 72 61 | 6d 20 74 61 6b 65 73 20 |a progra|m takes |
|000024d0| 74 77 6f 20 70 6f 69 6e | 74 20 6f 72 20 6d 61 72 |two poin|t or mar|
|000024e0| 6b 65 72 20 61 72 67 75 | 6d 65 6e 74 73 2c 20 42 |ker argu|ments, B|
|000024f0| 45 47 20 61 6e 64 20 45 | 4e 44 2e 22 20 22 72 22 |EG and E|ND." "r"|
|00002500| 5d 29 0a 28 70 72 6f 76 | 69 64 65 20 28 71 75 6f |]).(prov|ide (quo|
|00002510| 74 65 20 73 6f 72 74 29 | 29 0a |te sort)|). |
+--------+-------------------------+-------------------------+--------+--------+