summaryrefslogtreecommitdiff
path: root/.localrepo/elisp-refs-20230920.201.tar
blob: 69c2baf6459ac62b6a141d958ded395fe61da9dc (plain)
ofshex dumpascii
0000 65 6c 69 73 70 2d 72 65 66 73 2d 32 30 32 33 30 39 32 30 2e 32 30 31 2f 00 00 00 00 00 00 00 00 elisp-refs-20230920.201/........
0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0060 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000755.0000000.0000000.0000
0080 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 32 37 36 36 00 20 35 00 00 00 0000000.00000000000.012766..5...
00a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
00e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0100 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0120 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0200 65 6c 69 73 70 2d 72 65 66 73 2d 32 30 32 33 30 39 32 30 2e 32 30 31 2f 65 6c 69 73 70 2d 72 65 elisp-refs-20230920.201/elisp-re
0220 66 73 2d 70 6b 67 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 fs-pkg.el.......................
0240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0280 30 30 30 30 36 37 35 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 36 31 35 30 00 20 30 00 00 00 0000675.00000000000.016150..0...
02a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0300 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0400 3b 3b 20 2d 2a 2d 20 6e 6f 2d 62 79 74 65 2d 63 6f 6d 70 69 6c 65 3a 20 74 3b 20 6c 65 78 69 63 ;;.-*-.no-byte-compile:.t;.lexic
0420 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 6e 69 6c 20 2d 2a 2d 0a 28 64 65 66 69 6e 65 2d 70 61 63 6b al-binding:.nil.-*-.(define-pack
0440 61 67 65 20 22 65 6c 69 73 70 2d 72 65 66 73 22 20 22 32 30 32 33 30 39 32 30 2e 32 30 31 22 0a age."elisp-refs"."20230920.201".
0460 20 20 22 46 69 6e 64 20 63 61 6c 6c 65 72 73 20 6f 66 20 65 6c 69 73 70 20 66 75 6e 63 74 69 6f .."Find.callers.of.elisp.functio
0480 6e 73 20 6f 72 20 6d 61 63 72 6f 73 2e 22 0a 20 20 27 28 28 64 61 73 68 20 22 32 2e 31 32 2e 30 ns.or.macros."...'((dash."2.12.0
04a0 22 29 0a 20 20 20 20 28 73 20 20 20 20 22 31 2e 31 31 2e 30 22 29 29 0a 20 20 3a 75 72 6c 20 22 ").....(s...."1.11.0"))...:url."
04c0 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 57 69 6c 66 72 65 64 2f 65 6c 69 73 70 https://github.com/Wilfred/elisp
04e0 2d 72 65 66 73 22 0a 20 20 3a 63 6f 6d 6d 69 74 20 22 35 34 31 61 30 36 34 63 33 63 65 32 37 38 -refs"...:commit."541a064c3ce278
0500 36 37 38 37 32 63 66 37 30 38 33 35 34 61 36 35 64 38 33 62 61 66 32 61 36 64 22 0a 20 20 3a 72 67872cf708354a65d83baf2a6d"...:r
0520 65 76 64 65 73 63 20 22 35 34 31 61 30 36 34 63 33 63 65 32 22 0a 20 20 3a 6b 65 79 77 6f 72 64 evdesc."541a064c3ce2"...:keyword
0540 73 20 27 28 22 6c 69 73 70 22 29 0a 20 20 3a 61 75 74 68 6f 72 73 20 27 28 28 22 57 69 6c 66 72 s.'("lisp")...:authors.'(("Wilfr
0560 65 64 20 48 75 67 68 65 73 22 20 2e 20 22 6d 65 40 77 69 6c 66 72 65 64 2e 6d 65 2e 75 6b 22 29 ed.Hughes"..."me@wilfred.me.uk")
0580 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 73 20 27 28 28 22 57 69 6c 66 72 65 64 20 48 75 67 )...:maintainers.'(("Wilfred.Hug
05a0 68 65 73 22 20 2e 20 22 6d 65 40 77 69 6c 66 72 65 64 2e 6d 65 2e 75 6b 22 29 29 29 0a 00 00 00 hes"..."me@wilfred.me.uk")))....
05c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
05e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0600 65 6c 69 73 70 2d 72 65 66 73 2d 32 30 32 33 30 39 32 30 2e 32 30 31 2f 65 6c 69 73 70 2d 72 65 elisp-refs-20230920.201/elisp-re
0620 66 73 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 fs.el...........................
0640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0680 30 31 30 36 31 31 35 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 35 33 36 35 00 20 30 00 00 00 0106115.00000000000.015365..0...
06a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0700 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0720 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0800 3b 3b 3b 20 65 6c 69 73 70 2d 72 65 66 73 2e 65 6c 20 2d 2d 2d 20 66 69 6e 64 20 63 61 6c 6c 65 ;;;.elisp-refs.el.---.find.calle
0820 72 73 20 6f 66 20 65 6c 69 73 70 20 66 75 6e 63 74 69 6f 6e 73 20 6f 72 20 6d 61 63 72 6f 73 20 rs.of.elisp.functions.or.macros.
0840 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20 -*-.lexical-binding:.t;.-*-..;;.
0860 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 36 2d 32 30 32 30 20 20 57 69 6c 66 72 65 64 Copyright.(C).2016-2020..Wilfred
0880 20 48 75 67 68 65 73 20 3c 6d 65 40 77 69 6c 66 72 65 64 2e 6d 65 2e 75 6b 3e 0a 0a 3b 3b 20 41 .Hughes.<me@wilfred.me.uk>..;;.A
08a0 75 74 68 6f 72 3a 20 57 69 6c 66 72 65 64 20 48 75 67 68 65 73 20 3c 6d 65 40 77 69 6c 66 72 65 uthor:.Wilfred.Hughes.<me@wilfre
08c0 64 2e 6d 65 2e 75 6b 3e 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 56 65 72 73 69 6f 6e 3a 20 32 30 32 d.me.uk>.;;.Package-Version:.202
08e0 33 30 39 32 30 2e 32 30 31 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 76 69 73 69 6f 6e 3a 20 35 30920.201.;;.Package-Revision:.5
0900 34 31 61 30 36 34 63 33 63 65 32 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 6c 69 73 70 0a 3b 3b 41a064c3ce2.;;.Keywords:.lisp.;;
0920 20 50 61 63 6b 61 67 65 2d 52 65 71 75 69 72 65 73 3a 20 28 28 64 61 73 68 20 22 32 2e 31 32 2e .Package-Requires:.((dash."2.12.
0940 30 22 29 20 28 73 20 22 31 2e 31 31 2e 30 22 29 29 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 0").(s."1.11.0"))..;;.This.progr
0960 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 am.is.free.software;.you.can.red
0980 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20 69 74 istribute.it.and/or.modify.;;.it
09a0 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 .under.the.terms.of.the.GNU.Gene
09c0 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64 20 ral.Public.License.as.published.
09e0 62 79 0a 3b 3b 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 by.;;.the.Free.Software.Foundati
0a00 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74 68 65 20 4c 69 63 65 on,.either.version.3.of.the.Lice
0a20 6e 73 65 2c 20 6f 72 0a 3b 3b 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 nse,.or.;;.(at.your.option).any.
0a40 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 later.version...;;.This.program.
0a60 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 is.distributed.in.the.hope.that.
0a80 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54 48 4f 55 it.will.be.useful,.;;.but.WITHOU
0aa0 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 T.ANY.WARRANTY;.without.even.the
0ac0 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 4e 54 .implied.warranty.of.;;.MERCHANT
0ae0 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 ABILITY.or.FITNESS.FOR.A.PARTICU
0b00 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 47 65 6e LAR.PURPOSE...See.the.;;.GNU.Gen
0b20 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 eral.Public.License.for.more.det
0b40 61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 69 76 ails...;;.You.should.have.receiv
0b60 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 ed.a.copy.of.the.GNU.General.Pub
0b80 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20 70 lic.License.;;.along.with.this.p
0ba0 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f 2f 77 77 77 rogram...If.not,.see.<http://www
0bc0 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e .gnu.org/licenses/>...;;;.Commen
0be0 74 61 72 79 3a 0a 0a 3b 3b 20 65 6c 69 73 70 2d 72 65 66 73 2e 65 6c 20 69 73 20 61 6e 20 45 6d tary:..;;.elisp-refs.el.is.an.Em
0c00 61 63 73 20 70 61 63 6b 61 67 65 20 66 6f 72 20 66 69 6e 64 69 6e 67 20 72 65 66 65 72 65 6e 63 acs.package.for.finding.referenc
0c20 65 73 20 74 6f 0a 3b 3b 20 66 75 6e 63 74 69 6f 6e 73 2c 20 6d 61 63 72 6f 73 20 6f 72 20 76 61 es.to.;;.functions,.macros.or.va
0c40 72 69 61 62 6c 65 73 2e 20 55 6e 6c 69 6b 65 20 61 20 64 75 6d 62 20 74 65 78 74 20 73 65 61 72 riables..Unlike.a.dumb.text.sear
0c60 63 68 2c 0a 3b 3b 20 65 6c 69 73 70 2d 72 65 66 73 2e 65 6c 20 61 63 74 75 61 6c 6c 79 20 70 61 ch,.;;.elisp-refs.el.actually.pa
0c80 72 73 65 73 20 74 68 65 20 63 6f 64 65 2c 20 73 6f 20 69 74 27 73 20 6e 65 76 65 72 20 63 6f 6e rses.the.code,.so.it's.never.con
0ca0 66 75 73 65 64 20 62 79 0a 3b 3b 20 63 6f 6d 6d 65 6e 74 73 20 6f 72 20 60 66 6f 6f 2d 62 61 72 fused.by.;;.comments.or.`foo-bar
0cc0 27 20 6d 61 74 63 68 69 6e 67 20 60 66 6f 6f 27 2e 0a 3b 3b 0a 3b 3b 20 53 65 65 20 68 74 74 70 '.matching.`foo'..;;.;;.See.http
0ce0 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 57 69 6c 66 72 65 64 2f 72 65 66 73 2e 65 6c 2f 62 s://github.com/Wilfred/refs.el/b
0d00 6c 6f 62 2f 6d 61 73 74 65 72 2f 52 45 41 44 4d 45 2e 6d 64 20 66 6f 72 0a 3b 3b 20 6d 6f 72 65 lob/master/README.md.for.;;.more
0d20 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 .information...;;;.Code:..(requi
0d40 72 65 20 27 64 61 73 68 29 0a 28 72 65 71 75 69 72 65 20 27 73 29 0a 28 72 65 71 75 69 72 65 20 re.'dash).(require.'s).(require.
0d60 27 66 6f 72 6d 61 74 29 0a 28 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 69 6c 65 20 28 72 65 71 'format).(eval-when-compile.(req
0d80 75 69 72 65 20 27 63 6c 2d 6c 69 62 29 29 0a 0a 28 64 65 66 76 61 72 20 73 79 6d 62 6f 6c 73 2d uire.'cl-lib))..(defvar.symbols-
0da0 77 69 74 68 2d 70 6f 73 2d 65 6e 61 62 6c 65 64 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 with-pos-enabled).(declare-funct
0dc0 69 6f 6e 20 73 79 6d 62 6f 6c 2d 77 69 74 68 2d 70 6f 73 2d 70 20 6e 69 6c 20 28 6f 62 6a 65 63 ion.symbol-with-pos-p.nil.(objec
0de0 74 29 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 73 79 6d 62 6f 6c 2d 77 69 74 t)).(declare-function.symbol-wit
0e00 68 2d 70 6f 73 2d 70 6f 73 20 6e 69 6c 20 28 6c 73 29 29 0a 0a 3b 3b 3b 20 49 6e 74 65 72 6e 61 h-pos-pos.nil.(ls))..;;;.Interna
0e20 6c 0a 0a 28 64 65 66 76 61 72 20 65 6c 69 73 70 2d 72 65 66 73 2d 76 65 72 62 6f 73 65 20 74 29 l..(defvar.elisp-refs-verbose.t)
0e40 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 66 6f 72 6d 61 74 2d 69 6e 74 20 ..(defun.elisp-refs--format-int.
0e60 28 69 6e 74 65 67 65 72 29 0a 20 20 22 46 6f 72 6d 61 74 20 49 4e 54 45 47 45 52 20 61 73 20 61 (integer)..."Format.INTEGER.as.a
0e80 20 73 74 72 69 6e 67 2c 20 77 69 74 68 20 2c 20 73 65 70 61 72 61 74 69 6e 67 20 74 68 6f 75 73 .string,.with.,.separating.thous
0ea0 61 6e 64 73 2e 22 0a 20 20 28 6c 65 74 20 28 28 6e 75 6d 62 65 72 20 28 61 62 73 20 69 6e 74 65 ands."...(let.((number.(abs.inte
0ec0 67 65 72 29 29 0a 20 20 20 20 20 20 20 20 28 70 61 72 74 73 20 6e 69 6c 29 29 0a 20 20 20 20 28 ger)).........(parts.nil)).....(
0ee0 77 68 69 6c 65 20 28 3e 20 6e 75 6d 62 65 72 20 39 39 39 29 0a 20 20 20 20 20 20 28 70 75 73 68 while.(>.number.999).......(push
0f00 20 28 66 6f 72 6d 61 74 20 22 25 30 33 64 22 20 28 6d 6f 64 20 6e 75 6d 62 65 72 20 31 30 30 30 .(format."%03d".(mod.number.1000
0f20 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 61 72 74 73 29 0a 20 20 20 20 20 20 28 73 65 74 )).............parts).......(set
0f40 71 20 6e 75 6d 62 65 72 20 28 2f 20 6e 75 6d 62 65 72 20 31 30 30 30 29 29 29 0a 20 20 20 20 28 q.number.(/.number.1000))).....(
0f60 70 75 73 68 20 28 66 6f 72 6d 61 74 20 22 25 64 22 20 6e 75 6d 62 65 72 29 20 70 61 72 74 73 29 push.(format."%d".number).parts)
0f80 0a 20 20 20 20 28 63 6f 6e 63 61 74 0a 20 20 20 20 20 28 69 66 20 28 3c 20 69 6e 74 65 67 65 72 .....(concat......(if.(<.integer
0fa0 20 30 29 20 22 2d 22 20 22 22 29 0a 20 20 20 20 20 28 73 2d 6a 6f 69 6e 20 22 2c 22 20 70 61 72 .0)."-"."")......(s-join.",".par
0fc0 74 73 29 29 29 29 0a 0a 28 64 65 66 73 75 62 73 74 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 74 ts))))..(defsubst.elisp-refs--st
0fe0 61 72 74 2d 70 6f 73 20 28 65 6e 64 2d 70 6f 73 29 0a 20 20 22 46 69 6e 64 20 74 68 65 20 73 74 art-pos.(end-pos)..."Find.the.st
1000 61 72 74 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 66 6f 72 6d 20 65 6e 64 69 6e 67 20 61 74 20 45 art.position.of.form.ending.at.E
1020 4e 44 2d 50 4f 53 0a 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2e 22 0a 20 ND-POS.in.the.current.buffer."..
1040 20 28 6c 65 74 20 28 28 70 61 72 73 65 2d 73 65 78 70 2d 69 67 6e 6f 72 65 2d 63 6f 6d 6d 65 6e .(let.((parse-sexp-ignore-commen
1060 74 73 20 74 29 29 0a 20 20 20 20 28 73 63 61 6e 2d 73 65 78 70 73 20 65 6e 64 2d 70 6f 73 20 2d ts.t)).....(scan-sexps.end-pos.-
1080 31 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 65 78 70 2d 70 6f 1)))..(defun.elisp-refs--sexp-po
10a0 73 69 74 69 6f 6e 73 20 28 62 75 66 66 65 72 20 73 74 61 72 74 2d 70 6f 73 20 65 6e 64 2d 70 6f sitions.(buffer.start-pos.end-po
10c0 73 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 73 74 61 72 74 20 61 6e 64 s)..."Return.a.list.of.start.and
10e0 20 65 6e 64 20 70 6f 73 69 74 69 6f 6e 73 20 6f 66 20 61 6c 6c 20 74 68 65 20 73 65 78 70 73 0a .end.positions.of.all.the.sexps.
1100 62 65 74 77 65 65 6e 20 53 54 41 52 54 2d 50 4f 53 20 61 6e 64 20 45 4e 44 2d 50 4f 53 20 28 69 between.START-POS.and.END-POS.(i
1120 6e 63 6c 75 73 69 76 65 29 20 69 6e 20 42 55 46 46 45 52 2e 0a 0a 50 6f 73 69 74 69 6f 6e 73 20 nclusive).in.BUFFER...Positions.
1140 65 78 63 6c 75 64 65 20 71 75 6f 74 65 20 63 68 61 72 61 63 74 65 72 73 2c 20 73 6f 20 67 69 76 exclude.quote.characters,.so.giv
1160 65 6e 20 27 66 6f 6f 20 6f 72 20 60 66 6f 6f 2c 20 77 65 0a 72 65 70 6f 72 74 20 74 68 65 20 70 en.'foo.or.`foo,.we.report.the.p
1180 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 73 79 6d 62 6f 6c 20 66 6f 6f 2e 0a 0a 4e 6f 74 20 osition.of.the.symbol.foo...Not.
11a0 72 65 63 75 72 73 69 76 65 2c 20 73 6f 20 77 65 20 64 6f 6e 27 74 20 63 6f 6e 73 69 64 65 72 20 recursive,.so.we.don't.consider.
11c0 73 75 62 65 6c 65 6d 65 6e 74 73 20 6f 66 20 6e 65 73 74 65 64 20 73 65 78 70 73 2e 22 0a 20 20 subelements.of.nested.sexps."...
11e0 28 6c 65 74 20 28 28 70 6f 73 69 74 69 6f 6e 73 20 6e 69 6c 29 29 0a 20 20 20 20 28 77 69 74 68 (let.((positions.nil)).....(with
1200 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 63 6f -current-buffer.buffer.......(co
1220 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 5f 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 28 63 61 74 ndition-case._err...........(cat
1240 63 68 20 27 64 6f 6e 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 74 0a 20 20 ch.'done.............(while.t...
1260 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 73 65 78 70 2d 65 6e 64 2d 70 6f 73 ............(let*.((sexp-end-pos
1280 20 28 6c 65 74 20 28 28 70 61 72 73 65 2d 73 65 78 70 2d 69 67 6e 6f 72 65 2d 63 6f 6d 6d 65 6e .(let.((parse-sexp-ignore-commen
12a0 74 73 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ts.t))..........................
12c0 20 20 20 20 20 20 20 20 20 20 20 20 28 73 63 61 6e 2d 73 65 78 70 73 20 73 74 61 72 74 2d 70 6f ............(scan-sexps.start-po
12e0 73 20 31 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 77 65 s.1)))).................;;.If.we
1300 27 76 65 20 72 65 61 63 68 65 64 20 61 20 73 65 78 70 20 62 65 79 6f 6e 64 20 74 68 65 20 72 61 've.reached.a.sexp.beyond.the.ra
1320 6e 67 65 20 72 65 71 75 65 73 74 65 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b nge.requested,.................;
1340 3b 20 6f 72 20 69 66 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 73 65 78 70 73 20 6c 65 66 74 2c ;.or.if.there.are.no.sexps.left,
1360 20 77 65 27 72 65 20 64 6f 6e 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 .we're.done..................(wh
1380 65 6e 20 28 6f 72 20 28 6e 75 6c 6c 20 73 65 78 70 2d 65 6e 64 2d 70 6f 73 29 20 28 3e 20 73 65 en.(or.(null.sexp-end-pos).(>.se
13a0 78 70 2d 65 6e 64 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 xp-end-pos.end-pos))............
13c0 20 20 20 20 20 20 20 28 74 68 72 6f 77 20 27 64 6f 6e 65 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 .......(throw.'done.nil)).......
13e0 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 69 73 20 73 65 78 ..........;;.Otherwise,.this.sex
1400 70 20 69 73 20 69 6e 20 74 68 65 20 72 61 6e 67 65 20 72 65 71 75 65 73 74 65 64 2e 0a 20 20 20 p.is.in.the.range.requested.....
1420 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 6c 69 73 74 20 28 65 6c 69 73 70 2d .............(push.(list.(elisp-
1440 72 65 66 73 2d 2d 73 74 61 72 74 2d 70 6f 73 20 73 65 78 70 2d 65 6e 64 2d 70 6f 73 29 20 73 65 refs--start-pos.sexp-end-pos).se
1460 78 70 2d 65 6e 64 2d 70 6f 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 xp-end-pos).....................
1480 20 20 70 6f 73 69 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 ..positions).................(se
14a0 74 71 20 73 74 61 72 74 2d 70 6f 73 20 73 65 78 70 2d 65 6e 64 2d 70 6f 73 29 29 29 29 0a 20 20 tq.start-pos.sexp-end-pos))))...
14c0 20 20 20 20 20 20 3b 3b 20 54 65 72 6d 69 6e 61 74 65 20 77 68 65 6e 20 77 65 20 73 65 65 20 22 ......;;.Terminate.when.we.see."
14e0 43 6f 6e 74 61 69 6e 69 6e 67 20 65 78 70 72 65 73 73 69 6f 6e 20 65 6e 64 73 20 70 72 65 6d 61 Containing.expression.ends.prema
1500 74 75 72 65 6c 79 22 0a 20 20 20 20 20 20 20 20 28 73 63 61 6e 2d 65 72 72 6f 72 20 6e 69 6c 29 turely".........(scan-error.nil)
1520 29 29 0a 20 20 20 20 28 6e 72 65 76 65 72 73 65 20 70 6f 73 69 74 69 6f 6e 73 29 29 29 0a 0a 28 )).....(nreverse.positions)))..(
1540 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 72 65 61 64 2d 62 75 66 66 65 72 2d 66 6f defun.elisp-refs--read-buffer-fo
1560 72 6d 20 28 73 79 6d 62 6f 6c 73 2d 77 69 74 68 2d 70 6f 73 29 0a 20 20 22 52 65 61 64 20 61 20 rm.(symbols-with-pos)..."Read.a.
1580 66 6f 72 6d 20 66 72 6f 6d 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2c 20 73 74 form.from.the.current.buffer,.st
15a0 61 72 74 69 6e 67 20 61 74 20 70 6f 69 6e 74 2e 0a 52 65 74 75 72 6e 73 20 61 20 6c 69 73 74 3a arting.at.point..Returns.a.list:
15c0 0a 5c 28 66 6f 72 6d 20 66 6f 72 6d 2d 73 74 61 72 74 2d 70 6f 73 20 66 6f 72 6d 2d 65 6e 64 2d .\(form.form-start-pos.form-end-
15e0 70 6f 73 20 73 79 6d 62 6f 6c 2d 70 6f 73 69 74 69 6f 6e 73 20 72 65 61 64 2d 73 74 61 72 74 2d pos.symbol-positions.read-start-
1600 70 6f 73 29 0a 0a 49 6e 20 45 6d 61 63 73 20 32 38 20 61 6e 64 20 65 61 72 6c 69 65 72 2c 20 53 pos)..In.Emacs.28.and.earlier,.S
1620 59 4d 42 4f 4c 2d 50 4f 53 49 54 49 4f 4e 53 20 69 73 20 61 20 6c 69 73 74 20 6f 66 20 30 2d 69 YMBOL-POSITIONS.is.a.list.of.0-i
1640 6e 64 65 78 65 64 0a 73 79 6d 62 6f 6c 20 70 6f 73 69 74 69 6f 6e 73 20 72 65 6c 61 74 69 76 65 ndexed.symbol.positions.relative
1660 20 74 6f 20 52 45 41 44 2d 53 54 41 52 54 2d 50 4f 53 2c 20 61 63 63 6f 72 64 69 6e 67 20 74 6f .to.READ-START-POS,.according.to
1680 0a 60 72 65 61 64 2d 73 79 6d 62 6f 6c 2d 70 6f 73 69 74 69 6f 6e 73 2d 6c 69 73 74 27 2e 0a 0a .`read-symbol-positions-list'...
16a0 49 6e 20 45 6d 61 63 73 20 32 39 2b 2c 20 53 59 4d 42 4f 4c 2d 50 4f 53 49 54 49 4f 4e 53 20 69 In.Emacs.29+,.SYMBOL-POSITIONS.i
16c0 73 20 6e 69 6c 2e 20 49 66 20 53 59 4d 42 4f 4c 53 2d 57 49 54 48 2d 50 4f 53 20 69 73 0a 6e 6f s.nil..If.SYMBOLS-WITH-POS.is.no
16e0 6e 2d 6e 69 6c 2c 20 66 6f 72 6d 73 20 61 72 65 20 72 65 61 64 20 77 69 74 68 20 60 72 65 61 64 n-nil,.forms.are.read.with.`read
1700 2d 70 6f 73 69 74 69 6f 6e 69 6e 67 2d 73 79 6d 62 6f 6c 73 27 2e 22 0a 20 20 28 6c 65 74 2a 20 -positioning-symbols'."...(let*.
1720 28 28 72 65 61 64 2d 77 69 74 68 2d 73 79 6d 62 6f 6c 2d 70 6f 73 69 74 69 6f 6e 73 20 74 29 0a ((read-with-symbol-positions.t).
1740 20 20 20 20 20 20 20 20 20 28 72 65 61 64 2d 73 74 61 72 74 2d 70 6f 73 20 28 70 6f 69 6e 74 29 .........(read-start-pos.(point)
1760 29 0a 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 20 28 69 66 20 28 61 6e 64 20 73 79 6d 62 6f 6c )..........(form.(if.(and.symbol
1780 73 2d 77 69 74 68 2d 70 6f 73 20 28 66 62 6f 75 6e 64 70 20 27 72 65 61 64 2d 70 6f 73 69 74 69 s-with-pos.(fboundp.'read-positi
17a0 6f 6e 69 6e 67 2d 73 79 6d 62 6f 6c 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 oning-symbols)).................
17c0 20 20 20 28 72 65 61 64 2d 70 6f 73 69 74 69 6f 6e 69 6e 67 2d 73 79 6d 62 6f 6c 73 20 28 63 75 ...(read-positioning-symbols.(cu
17e0 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rrent-buffer))..................
1800 28 72 65 61 64 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 29 0a 20 20 20 20 20 20 (read.(current-buffer)))).......
1820 20 20 20 28 73 79 6d 62 6f 6c 73 20 28 69 66 20 28 62 6f 75 6e 64 70 20 27 72 65 61 64 2d 73 79 ...(symbols.(if.(boundp.'read-sy
1840 6d 62 6f 6c 2d 70 6f 73 69 74 69 6f 6e 73 2d 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 mbol-positions-list)............
1860 20 20 20 20 20 20 20 20 20 20 20 72 65 61 64 2d 73 79 6d 62 6f 6c 2d 70 6f 73 69 74 69 6f 6e 73 ...........read-symbol-positions
1880 2d 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 29 29 0a -list.....................nil)).
18a0 20 20 20 20 20 20 20 20 20 28 65 6e 64 2d 70 6f 73 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 .........(end-pos.(point))......
18c0 20 20 20 20 28 73 74 61 72 74 2d 70 6f 73 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 74 61 72 ....(start-pos.(elisp-refs--star
18e0 74 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 29 29 29 0a 20 20 20 20 28 6c 69 73 74 20 66 6f 72 6d 20 t-pos.end-pos))).....(list.form.
1900 73 74 61 72 74 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 20 73 79 6d 62 6f 6c 73 20 72 65 61 64 2d 73 start-pos.end-pos.symbols.read-s
1920 74 61 72 74 2d 70 6f 73 29 29 29 0a 0a 28 64 65 66 76 61 72 20 65 6c 69 73 70 2d 72 65 66 73 2d tart-pos)))..(defvar.elisp-refs-
1940 2d 70 61 74 68 20 6e 69 6c 0a 20 20 22 41 20 62 75 66 66 65 72 2d 6c 6f 63 61 6c 20 76 61 72 69 -path.nil..."A.buffer-local.vari
1960 61 62 6c 65 20 75 73 65 64 20 62 79 20 60 65 6c 69 73 70 2d 72 65 66 73 2d 2d 63 6f 6e 74 65 6e able.used.by.`elisp-refs--conten
1980 74 73 2d 62 75 66 66 65 72 27 2e 0a 49 6e 74 65 72 6e 61 6c 20 69 6d 70 6c 65 6d 65 6e 74 61 74 ts-buffer'..Internal.implementat
19a0 69 6f 6e 20 64 65 74 61 69 6c 2e 22 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 ion.detail.")..(defun.elisp-refs
19c0 2d 2d 72 65 61 64 2d 61 6c 6c 2d 62 75 66 66 65 72 2d 66 6f 72 6d 73 20 28 62 75 66 66 65 72 20 --read-all-buffer-forms.(buffer.
19e0 73 79 6d 62 6f 6c 73 2d 77 69 74 68 2d 70 6f 73 29 0a 20 20 22 52 65 61 64 20 61 6c 6c 20 74 68 symbols-with-pos)..."Read.all.th
1a00 65 20 66 6f 72 6d 73 20 69 6e 20 42 55 46 46 45 52 2c 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 e.forms.in.BUFFER,.along.with.th
1a20 65 69 72 20 70 6f 73 69 74 69 6f 6e 73 2e 22 0a 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d eir.positions."...(with-current-
1a40 62 75 66 66 65 72 20 62 75 66 66 65 72 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f buffer.buffer.....(goto-char.(po
1a60 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 66 6f 72 6d 73 20 6e 69 6c 29 29 int-min)).....(let.((forms.nil))
1a80 0a 20 20 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 72 0a 20 20 20 20 20 .......(condition-case.err......
1aa0 20 20 20 20 20 28 77 68 69 6c 65 20 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 .....(while.t.............(push.
1ac0 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 72 65 61 64 2d 62 75 66 66 65 72 2d 66 6f 72 6d 20 73 79 (elisp-refs--read-buffer-form.sy
1ae0 6d 62 6f 6c 73 2d 77 69 74 68 2d 70 6f 73 29 20 66 6f 72 6d 73 29 29 0a 20 20 20 20 20 20 20 20 mbols-with-pos).forms)).........
1b00 28 65 72 72 6f 72 0a 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6f 72 20 28 65 71 75 61 6c 20 28 (error..........(if.(or.(equal.(
1b20 63 61 72 20 65 72 72 29 20 27 65 6e 64 2d 6f 66 2d 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 car.err).'end-of-file)..........
1b40 20 20 20 20 20 20 20 20 3b 3b 20 54 4f 44 4f 3a 20 74 68 69 73 20 73 68 6f 75 6c 64 6e 27 74 20 ........;;.TODO:.this.shouldn't.
1b60 6f 63 63 75 72 20 69 6e 20 76 61 6c 69 64 20 65 6c 69 73 70 20 66 69 6c 65 73 2c 0a 20 20 20 20 occur.in.valid.elisp.files,.....
1b80 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 62 75 74 20 69 74 27 73 20 68 61 70 70 65 6e 69 .............;;.but.it's.happeni
1ba0 6e 67 20 69 6e 20 68 65 6c 6d 2d 75 74 69 6c 73 2e 65 6c 2e 0a 20 20 20 20 20 20 20 20 20 20 20 ng.in.helm-utils.el.............
1bc0 20 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 72 20 65 72 72 29 20 27 73 63 61 6e 2d 65 72 72 ......(equal.(car.err).'scan-err
1be0 6f 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 52 65 61 63 68 65 64 20 65 6e 64 or))..............;;.Reached.end
1c00 20 6f 66 20 66 69 6c 65 2c 20 77 65 27 72 65 20 64 6f 6e 65 2e 0a 20 20 20 20 20 20 20 20 20 20 .of.file,.we're.done............
1c20 20 20 20 28 6e 72 65 76 65 72 73 65 20 66 6f 72 6d 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 3b ...(nreverse.forms)............;
1c40 3b 20 53 6f 6d 65 20 75 6e 65 78 70 65 63 74 65 64 20 65 72 72 6f 72 2c 20 70 72 6f 70 61 67 61 ;.Some.unexpected.error,.propaga
1c60 74 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 55 6e 65 78 70 65 63 74 65 te.............(error."Unexpecte
1c80 64 20 65 72 72 6f 72 20 77 68 69 6c 73 74 20 72 65 61 64 69 6e 67 20 25 73 20 70 6f 73 69 74 69 d.error.whilst.reading.%s.positi
1ca0 6f 6e 20 25 73 3a 20 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 62 on.%s:.%s"...................(ab
1cc0 62 72 65 76 69 61 74 65 2d 66 69 6c 65 2d 6e 61 6d 65 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 70 breviate-file-name.elisp-refs--p
1ce0 61 74 68 29 20 28 70 6f 69 6e 74 29 20 65 72 72 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 ath).(point).err)))))))..(defun.
1d00 65 6c 69 73 70 2d 72 65 66 73 2d 2d 70 72 6f 70 65 72 2d 6c 69 73 74 2d 70 20 28 76 61 6c 29 0a elisp-refs--proper-list-p.(val).
1d20 20 20 22 49 73 20 56 41 4c 20 61 20 70 72 6f 70 65 72 20 6c 69 73 74 3f 22 0a 20 20 28 69 66 20 .."Is.VAL.a.proper.list?"...(if.
1d40 28 66 62 6f 75 6e 64 70 20 27 70 72 6f 70 65 72 2d 6c 69 73 74 2d 70 29 0a 20 20 20 20 20 20 3b (fboundp.'proper-list-p).......;
1d60 3b 20 60 70 72 6f 70 65 72 2d 6c 69 73 74 2d 70 27 20 77 61 73 20 61 64 64 65 64 20 69 6e 20 45 ;.`proper-list-p'.was.added.in.E
1d80 6d 61 63 73 20 32 37 2e 31 2e 0a 20 20 20 20 20 20 3b 3b 20 68 74 74 70 3a 2f 2f 67 69 74 2e 73 macs.27.1........;;.http://git.s
1da0 61 76 61 6e 6e 61 68 2e 67 6e 75 2e 6f 72 67 2f 63 67 69 74 2f 65 6d 61 63 73 2e 67 69 74 2f 63 avannah.gnu.org/cgit/emacs.git/c
1dc0 6f 6d 6d 69 74 2f 3f 69 64 3d 32 66 64 65 36 32 37 35 62 36 39 66 64 31 31 33 65 37 38 32 34 33 ommit/?id=2fde6275b69fd113e78243
1de0 37 39 30 62 66 31 31 32 62 62 64 64 32 66 65 32 62 66 0a 20 20 20 20 20 20 28 77 69 74 68 2d 6e 790bf112bbdd2fe2bf.......(with-n
1e00 6f 2d 77 61 72 6e 69 6e 67 73 20 28 70 72 6f 70 65 72 2d 6c 69 73 74 2d 70 20 76 61 6c 29 29 0a o-warnings.(proper-list-p.val)).
1e20 20 20 20 20 3b 3b 20 45 61 72 6c 69 65 72 20 45 6d 61 63 73 20 76 65 72 73 69 6f 6e 73 20 6f 6e ....;;.Earlier.Emacs.versions.on
1e40 6c 79 20 68 61 64 20 66 6f 72 6d 61 74 2d 70 72 6f 70 65 72 2d 6c 69 73 74 2d 70 2e 0a 20 20 20 ly.had.format-proper-list-p.....
1e60 20 28 77 69 74 68 2d 6e 6f 2d 77 61 72 6e 69 6e 67 73 20 28 66 6f 72 6d 61 74 2d 70 72 6f 70 65 .(with-no-warnings.(format-prope
1e80 72 2d 6c 69 73 74 2d 70 20 76 61 6c 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 r-list-p.val))))..(defun.elisp-r
1ea0 65 66 73 2d 2d 77 61 6c 6b 20 28 62 75 66 66 65 72 20 66 6f 72 6d 20 73 74 61 72 74 2d 70 6f 73 efs--walk.(buffer.form.start-pos
1ec0 20 65 6e 64 2d 70 6f 73 20 73 79 6d 62 6f 6c 20 6d 61 74 63 68 2d 70 20 26 6f 70 74 69 6f 6e 61 .end-pos.symbol.match-p.&optiona
1ee0 6c 20 70 61 74 68 29 0a 20 20 22 57 61 6c 6b 20 46 4f 52 4d 2c 20 61 20 6e 65 73 74 65 64 20 6c l.path)..."Walk.FORM,.a.nested.l
1f00 69 73 74 2c 20 61 6e 64 20 72 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 73 75 62 6c 69 73 ist,.and.return.a.list.of.sublis
1f20 74 73 20 28 77 69 74 68 0a 74 68 65 69 72 20 70 6f 73 69 74 69 6f 6e 73 29 20 77 68 65 72 65 20 ts.(with.their.positions).where.
1f40 4d 41 54 43 48 2d 50 20 72 65 74 75 72 6e 73 20 74 2e 20 46 4f 52 4d 20 69 73 20 74 72 61 76 65 MATCH-P.returns.t..FORM.is.trave
1f60 72 73 65 64 0a 64 65 70 74 68 2d 66 69 72 73 74 20 28 70 72 65 2d 6f 72 64 65 72 20 74 72 61 76 rsed.depth-first.(pre-order.trav
1f80 65 72 73 61 6c 2c 20 6c 65 66 74 2d 74 6f 2d 72 69 67 68 74 29 2e 0a 0a 4d 41 54 43 48 2d 50 20 ersal,.left-to-right)...MATCH-P.
1fa0 69 73 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 68 72 65 65 20 61 72 67 75 6d 65 6e 74 73 3a 0a is.called.with.three.arguments:.
1fc0 5c 28 53 59 4d 42 4f 4c 20 43 55 52 52 45 4e 54 2d 46 4f 52 4d 20 50 41 54 48 29 2e 0a 0a 50 41 \(SYMBOL.CURRENT-FORM.PATH)...PA
1fe0 54 48 20 69 73 20 74 68 65 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 6f 66 20 61 6c 6c 20 74 TH.is.the.first.element.of.all.t
2000 68 65 20 65 6e 63 6c 6f 73 69 6e 67 20 66 6f 72 6d 73 20 6f 66 0a 43 55 52 52 45 4e 54 2d 46 4f he.enclosing.forms.of.CURRENT-FO
2020 52 4d 2c 20 69 6e 6e 65 72 6d 6f 73 74 20 66 69 72 73 74 2c 20 61 6c 6f 6e 67 20 77 69 74 68 20 RM,.innermost.first,.along.with.
2040 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 65 0a 63 75 72 72 65 6e 74 20 66 6f 72 6d 2e 0a 0a the.index.of.the.current.form...
2060 46 6f 72 20 65 78 61 6d 70 6c 65 20 69 66 20 77 65 20 61 72 65 20 6c 6f 6f 6b 69 6e 67 20 61 74 For.example.if.we.are.looking.at
2080 20 68 20 69 6e 20 28 65 20 66 20 28 67 20 68 29 29 2c 20 50 41 54 48 20 74 61 6b 65 73 20 74 68 .h.in.(e.f.(g.h)),.PATH.takes.th
20a0 65 0a 76 61 6c 75 65 20 28 28 67 20 2e 20 31 29 20 28 65 20 2e 20 32 29 29 2e 0a 0a 53 54 41 52 e.value.((g...1).(e...2))...STAR
20c0 54 2d 50 4f 53 20 61 6e 64 20 45 4e 44 2d 50 4f 53 20 73 68 6f 75 6c 64 20 62 65 20 74 68 65 20 T-POS.and.END-POS.should.be.the.
20e0 70 6f 73 69 74 69 6f 6e 20 6f 66 20 46 4f 52 4d 20 77 69 74 68 69 6e 20 42 55 46 46 45 52 2e 22 position.of.FORM.within.BUFFER."
2100 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28 66 75 6e 63 61 6c 6c 20 6d 61 74 63 68 2d 70 20 73 79 ...(cond....((funcall.match-p.sy
2120 6d 62 6f 6c 20 66 6f 72 6d 20 70 61 74 68 29 0a 20 20 20 20 3b 3b 20 49 66 20 74 68 69 73 20 66 mbol.form.path).....;;.If.this.f
2140 6f 72 6d 20 6d 61 74 63 68 65 73 2c 20 6a 75 73 74 20 72 65 74 75 72 6e 20 69 74 2c 20 61 6c 6f orm.matches,.just.return.it,.alo
2160 6e 67 20 77 69 74 68 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 2e 0a 20 20 20 20 28 6c 69 73 74 20 ng.with.the.position......(list.
2180 28 6c 69 73 74 20 66 6f 72 6d 20 73 74 61 72 74 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 29 29 29 0a (list.form.start-pos.end-pos))).
21a0 20 20 20 3b 3b 20 4f 74 68 65 72 77 69 73 65 2c 20 72 65 63 75 72 73 65 20 6f 6e 20 74 68 65 20 ...;;.Otherwise,.recurse.on.the.
21c0 73 75 62 66 6f 72 6d 73 2e 0a 20 20 20 28 28 63 6f 6e 73 70 20 66 6f 72 6d 29 0a 20 20 20 20 28 subforms.....((consp.form).....(
21e0 6c 65 74 20 28 28 6d 61 74 63 68 65 73 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 let.((matches.nil)...........;;.
2200 46 69 6e 64 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 73 75 62 66 6f 72 Find.the.positions.of.the.subfor
2220 6d 73 2e 0a 20 20 20 20 20 20 20 20 20 20 28 73 75 62 66 6f 72 6d 73 2d 70 6f 73 69 74 69 6f 6e ms............(subforms-position
2240 73 0a 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 65 71 20 28 63 61 72 2d 73 61 66 65 20 66 s............(if.(eq.(car-safe.f
2260 6f 72 6d 29 20 27 5c 60 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4b 6c 75 64 orm).'\`)................;;.Klud
2280 67 65 3a 20 60 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 65 78 70 2d 70 6f 73 69 74 69 6f 6e 73 27 ge:.`elisp-refs--sexp-positions'
22a0 20 65 78 63 6c 75 64 65 73 20 74 68 65 20 60 20 77 68 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 .excludes.the.`.when............
22c0 20 20 20 20 3b 3b 20 63 61 6c 63 75 6c 61 74 69 6e 67 20 70 6f 73 69 74 69 6f 6e 73 2e 20 53 6f ....;;.calculating.positions..So
22e0 2c 20 74 6f 20 66 69 6e 64 20 74 68 65 20 69 6e 6e 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 ,.to.find.the.inner.............
2300 20 20 20 3b 3b 20 70 6f 73 69 74 69 6f 6e 73 20 77 68 65 6e 20 77 61 6c 6b 69 6e 67 20 66 72 6f ...;;.positions.when.walking.fro
2320 6d 20 60 28 2e 2e 2e 29 20 74 6f 20 28 2e 2e 2e 29 2c 20 77 65 0a 20 20 20 20 20 20 20 20 20 20 m.`(...).to.(...),.we...........
2340 20 20 20 20 20 3b 3b 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 69 6e 63 72 65 6d 65 6e 74 20 .....;;.don't.need.to.increment.
2360 74 68 65 20 73 74 61 72 74 20 70 6f 73 69 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 the.start.position..............
2380 20 20 20 28 63 6f 6e 73 20 6e 69 6c 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 65 78 70 2d 70 ...(cons.nil.(elisp-refs--sexp-p
23a0 6f 73 69 74 69 6f 6e 73 20 62 75 66 66 65 72 20 73 74 61 72 74 2d 70 6f 73 20 65 6e 64 2d 70 6f ositions.buffer.start-pos.end-po
23c0 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 43 61 6c 63 75 6c 61 74 65 20 74 68 s))..............;;.Calculate.th
23e0 65 20 70 6f 73 69 74 69 6f 6e 73 20 61 66 74 65 72 20 74 68 65 20 6f 70 65 6e 69 6e 67 20 70 61 e.positions.after.the.opening.pa
2400 72 65 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 ren...............(elisp-refs--s
2420 65 78 70 2d 70 6f 73 69 74 69 6f 6e 73 20 62 75 66 66 65 72 20 28 31 2b 20 73 74 61 72 74 2d 70 exp-positions.buffer.(1+.start-p
2440 6f 73 29 20 65 6e 64 2d 70 6f 73 29 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 46 6f 72 20 65 61 63 os).end-pos)))).......;;.For.eac
2460 68 20 73 75 62 66 6f 72 6d 2c 20 72 65 63 75 72 73 65 20 69 66 20 69 74 27 73 20 61 20 6c 69 73 h.subform,.recurse.if.it's.a.lis
2480 74 2c 20 6f 72 20 61 20 6d 61 74 63 68 69 6e 67 20 73 79 6d 62 6f 6c 2e 0a 20 20 20 20 20 20 28 t,.or.a.matching.symbol........(
24a0 2d 2d 65 61 63 68 20 28 2d 7a 69 70 2d 70 61 69 72 20 66 6f 72 6d 20 73 75 62 66 6f 72 6d 73 2d --each.(-zip-pair.form.subforms-
24c0 70 6f 73 69 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 28 2d 6c 65 74 20 5b 28 73 75 62 66 6f positions).........(-let.[(subfo
24e0 72 6d 20 73 75 62 66 6f 72 6d 2d 73 74 61 72 74 20 73 75 62 66 6f 72 6d 2d 65 6e 64 29 20 69 74 rm.subform-start.subform-end).it
2500 5d 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6f 72 0a 20 20 20 20 20 20 20 20 20 20 ]...........(when.(or...........
2520 20 20 20 20 20 20 20 28 61 6e 64 20 28 63 6f 6e 73 70 20 73 75 62 66 6f 72 6d 29 20 28 65 6c 69 .......(and.(consp.subform).(eli
2540 73 70 2d 72 65 66 73 2d 2d 70 72 6f 70 65 72 2d 6c 69 73 74 2d 70 20 73 75 62 66 6f 72 6d 29 29 sp-refs--proper-list-p.subform))
2560 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 73 79 6d 62 6f 6c 70 20 ..................(and.(symbolp.
2580 73 75 62 66 6f 72 6d 29 20 28 65 71 20 73 75 62 66 6f 72 6d 20 73 79 6d 62 6f 6c 29 29 29 0a 20 subform).(eq.subform.symbol)))..
25a0 20 20 20 20 20 20 20 20 20 20 20 28 2d 77 68 65 6e 2d 6c 65 74 20 28 73 75 62 66 6f 72 6d 2d 6d ...........(-when-let.(subform-m
25c0 61 74 63 68 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 atches.........................(
25e0 65 6c 69 73 70 2d 72 65 66 73 2d 2d 77 61 6c 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 elisp-refs--walk................
2600 20 20 20 20 20 20 20 20 20 20 62 75 66 66 65 72 20 73 75 62 66 6f 72 6d 0a 20 20 20 20 20 20 20 ..........buffer.subform........
2620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 75 62 66 6f 72 6d 2d 73 74 61 72 74 20 ..................subform-start.
2640 73 75 62 66 6f 72 6d 2d 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 subform-end.....................
2660 20 20 20 20 20 73 79 6d 62 6f 6c 20 6d 61 74 63 68 2d 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 .....symbol.match-p.............
2680 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 28 63 6f 6e 73 20 28 63 61 72 2d 73 61 .............(cons.(cons.(car-sa
26a0 66 65 20 66 6f 72 6d 29 20 69 74 2d 69 6e 64 65 78 29 20 70 61 74 68 29 29 29 0a 20 20 20 20 20 fe.form).it-index).path)))......
26c0 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 73 75 62 66 6f 72 6d 2d 6d 61 74 63 68 65 73 20 6d .........(push.subform-matches.m
26e0 61 74 63 68 65 73 29 29 29 29 29 0a 0a 20 20 20 20 20 20 3b 3b 20 43 6f 6e 63 61 74 20 74 68 65 atches)))))........;;.Concat.the
2700 20 72 65 73 75 6c 74 73 20 66 72 6f 6d 20 61 6c 6c 20 74 68 65 20 73 75 62 66 6f 72 6d 73 2e 0a .results.from.all.the.subforms..
2720 20 20 20 20 20 20 28 61 70 70 6c 79 20 23 27 61 70 70 65 6e 64 20 28 6e 72 65 76 65 72 73 65 20 ......(apply.#'append.(nreverse.
2740 6d 61 74 63 68 65 73 29 29 29 29 29 29 0a 0a 3b 3b 20 54 4f 44 4f 3a 20 63 6f 6e 64 69 74 69 6f matches))))))..;;.TODO:.conditio
2760 6e 2d 63 61 73 65 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 2e 2e 2e 20 28 65 72 72 6f n-case.(condition-case.....(erro
2780 72 20 2e 2e 2e 29 29 20 69 73 20 6e 6f 74 20 61 20 63 61 6c 6c 0a 3b 3b 20 54 4f 44 4f 3a 20 28 r....)).is.not.a.call.;;.TODO:.(
27a0 63 6c 2d 64 65 73 74 72 75 63 74 75 72 69 6e 67 2d 62 69 6e 64 20 28 66 6f 6f 20 26 72 65 73 74 cl-destructuring-bind.(foo.&rest
27c0 20 62 61 72 29 20 2e 2e 2e 29 20 69 73 20 6e 6f 74 20 61 20 63 61 6c 6c 0a 3b 3b 20 54 4f 44 4f .bar)....).is.not.a.call.;;.TODO
27e0 3a 20 6c 65 74 66 2c 20 63 6c 2d 6c 65 74 66 2c 20 2d 6c 65 74 2c 20 2d 6c 65 74 2a 0a 28 64 65 :.letf,.cl-letf,.-let,.-let*.(de
2800 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 66 75 6e 63 74 69 6f 6e 2d 70 20 28 73 79 6d 62 fun.elisp-refs--function-p.(symb
2820 6f 6c 20 66 6f 72 6d 20 70 61 74 68 29 0a 20 20 22 52 65 74 75 72 6e 20 74 20 69 66 20 46 4f 52 ol.form.path)..."Return.t.if.FOR
2840 4d 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 74 6f 20 M.looks.like.a.function.call.to.
2860 53 59 4d 42 4f 4c 2e 22 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28 6e 6f 74 20 28 63 6f 6e 73 70 SYMBOL."...(cond....((not.(consp
2880 20 66 6f 72 6d 29 29 0a 20 20 20 20 6e 69 6c 29 0a 20 20 20 3b 3b 20 49 67 6e 6f 72 65 20 28 64 .form)).....nil)....;;.Ignore.(d
28a0 65 66 75 6e 20 5f 20 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 20 2e 2e 2e 29 0a 20 20 20 28 28 6f 72 efun._.(SYMBOL....)....)....((or
28c0 20 28 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 27 28 64 65 66 73 75 62 73 74 20 2e 20 .(equal.(car.path).'(defsubst...
28e0 32 29 29 0a 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 27 28 2)).........(equal.(car.path).'(
2900 64 65 66 75 6e 20 2e 20 32 29 29 0a 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 72 20 defun...2)).........(equal.(car.
2920 70 61 74 68 29 20 27 28 64 65 66 6d 61 63 72 6f 20 2e 20 32 29 29 0a 20 20 20 20 20 20 20 20 28 path).'(defmacro...2)).........(
2940 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 27 28 63 6c 2d 64 65 66 75 6e 20 2e 20 32 29 equal.(car.path).'(cl-defun...2)
2960 29 29 0a 20 20 20 20 6e 69 6c 29 0a 20 20 20 3b 3b 20 49 67 6e 6f 72 65 20 28 6c 61 6d 62 64 61 )).....nil)....;;.Ignore.(lambda
2980 20 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 20 2e 2e 2e 29 0a 20 20 20 28 28 65 71 75 61 6c 20 28 63 .(SYMBOL....)....)....((equal.(c
29a0 61 72 20 70 61 74 68 29 20 27 28 6c 61 6d 62 64 61 20 2e 20 31 29 29 0a 20 20 20 20 6e 69 6c 29 ar.path).'(lambda...1)).....nil)
29c0 0a 20 20 20 3b 3b 20 49 67 6e 6f 72 65 20 28 6c 65 74 20 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 20 ....;;.Ignore.(let.(SYMBOL....).
29e0 2e 2e 2e 29 0a 20 20 20 3b 3b 20 61 6e 64 20 28 6c 65 74 2a 20 28 53 59 4d 42 4f 4c 20 2e 2e 2e ...)....;;.and.(let*.(SYMBOL....
2a00 29 20 2e 2e 2e 29 0a 20 20 20 28 28 6f 72 0a 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 72 20 )....)....((or......(equal.(car.
2a20 70 61 74 68 29 20 27 28 6c 65 74 20 2e 20 31 29 29 0a 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 path).'(let...1))......(equal.(c
2a40 61 72 20 70 61 74 68 29 20 27 28 6c 65 74 2a 20 2e 20 31 29 29 29 0a 20 20 20 20 6e 69 6c 29 0a ar.path).'(let*...1))).....nil).
2a60 20 20 20 3b 3b 20 49 67 6e 6f 72 65 20 28 6c 65 74 20 28 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 29 ...;;.Ignore.(let.((SYMBOL....))
2a80 20 2e 2e 2e 29 0a 20 20 20 28 28 6f 72 0a 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 6c 2d 73 65 ....)....((or......(equal.(cl-se
2aa0 63 6f 6e 64 20 70 61 74 68 29 20 27 28 6c 65 74 20 2e 20 31 29 29 0a 20 20 20 20 20 28 65 71 75 cond.path).'(let...1))......(equ
2ac0 61 6c 20 28 63 6c 2d 73 65 63 6f 6e 64 20 70 61 74 68 29 20 27 28 6c 65 74 2a 20 2e 20 31 29 29 al.(cl-second.path).'(let*...1))
2ae0 29 0a 20 20 20 20 6e 69 6c 29 0a 20 20 20 3b 3b 20 49 67 6e 6f 72 65 20 28 64 65 63 6c 61 72 65 ).....nil)....;;.Ignore.(declare
2b00 2d 66 75 6e 63 74 69 6f 6e 20 4e 41 4d 45 20 20 28 41 52 47 53 2e 2e 2e 29 29 0a 20 20 20 28 28 -function.NAME..(ARGS...))....((
2b20 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 27 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 equal.(car.path).'(declare-funct
2b40 69 6f 6e 20 2e 20 33 29 29 0a 20 20 20 20 6e 69 6c 29 0a 20 20 20 3b 3b 20 28 53 59 4d 42 4f 4c ion...3)).....nil)....;;.(SYMBOL
2b60 20 2e 2e 2e 29 0a 20 20 20 28 28 65 71 20 28 63 61 72 20 66 6f 72 6d 29 20 73 79 6d 62 6f 6c 29 ....)....((eq.(car.form).symbol)
2b80 0a 20 20 20 20 74 29 0a 20 20 20 3b 3b 20 28 66 6f 6f 20 2e 2e 2e 20 23 27 53 59 4d 42 4f 4c 20 .....t)....;;.(foo.....#'SYMBOL.
2ba0 2e 2e 2e 29 0a 20 20 20 28 28 2d 2d 61 6e 79 2d 70 20 28 65 71 75 61 6c 20 69 74 20 28 6c 69 73 ...)....((--any-p.(equal.it.(lis
2bc0 74 20 27 66 75 6e 63 74 69 6f 6e 20 73 79 6d 62 6f 6c 29 29 20 66 6f 72 6d 29 0a 20 20 20 20 74 t.'function.symbol)).form).....t
2be0 29 0a 20 20 20 3b 3b 20 28 66 75 6e 63 61 6c 6c 20 27 53 59 4d 42 4f 4c 20 2e 2e 2e 29 0a 20 20 )....;;.(funcall.'SYMBOL....)...
2c00 20 28 28 61 6e 64 20 28 65 71 20 28 63 61 72 20 66 6f 72 6d 29 20 27 66 75 6e 63 61 6c 6c 29 0a .((and.(eq.(car.form).'funcall).
2c20 20 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 60 27 2c 73 79 6d 62 6f 6c 20 28 63 6c 2d 73 65 .........(equal.`',symbol.(cl-se
2c40 63 6f 6e 64 20 66 6f 72 6d 29 29 29 0a 20 20 20 20 74 29 0a 20 20 20 3b 3b 20 28 61 70 70 6c 79 cond.form))).....t)....;;.(apply
2c60 20 27 53 59 4d 42 4f 4c 20 2e 2e 2e 29 0a 20 20 20 28 28 61 6e 64 20 28 65 71 20 28 63 61 72 20 .'SYMBOL....)....((and.(eq.(car.
2c80 66 6f 72 6d 29 20 27 61 70 70 6c 79 29 0a 20 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 60 27 form).'apply)..........(equal.`'
2ca0 2c 73 79 6d 62 6f 6c 20 28 63 6c 2d 73 65 63 6f 6e 64 20 66 6f 72 6d 29 29 29 0a 20 20 20 20 74 ,symbol.(cl-second.form))).....t
2cc0 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 6d 61 63 72 6f 2d 70 20 )))..(defun.elisp-refs--macro-p.
2ce0 28 73 79 6d 62 6f 6c 20 66 6f 72 6d 20 70 61 74 68 29 0a 20 20 22 52 65 74 75 72 6e 20 74 20 69 (symbol.form.path)..."Return.t.i
2d00 66 20 46 4f 52 4d 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 61 20 6d 61 63 72 6f 20 63 61 6c 6c 20 74 f.FORM.looks.like.a.macro.call.t
2d20 6f 20 53 59 4d 42 4f 4c 2e 22 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28 6e 6f 74 20 28 63 6f 6e o.SYMBOL."...(cond....((not.(con
2d40 73 70 20 66 6f 72 6d 29 29 0a 20 20 20 20 6e 69 6c 29 0a 20 20 20 3b 3b 20 49 67 6e 6f 72 65 20 sp.form)).....nil)....;;.Ignore.
2d60 28 64 65 66 75 6e 20 5f 20 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 20 2e 2e 2e 29 0a 20 20 20 28 28 (defun._.(SYMBOL....)....)....((
2d80 6f 72 20 28 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 27 28 64 65 66 73 75 62 73 74 20 or.(equal.(car.path).'(defsubst.
2da0 2e 20 32 29 29 0a 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 ..2)).........(equal.(car.path).
2dc0 27 28 64 65 66 75 6e 20 2e 20 32 29 29 0a 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 '(defun...2)).........(equal.(ca
2de0 72 20 70 61 74 68 29 20 27 28 64 65 66 6d 61 63 72 6f 20 2e 20 32 29 29 29 0a 20 20 20 20 6e 69 r.path).'(defmacro...2))).....ni
2e00 6c 29 0a 20 20 20 3b 3b 20 49 67 6e 6f 72 65 20 28 6c 61 6d 62 64 61 20 28 53 59 4d 42 4f 4c 20 l)....;;.Ignore.(lambda.(SYMBOL.
2e20 2e 2e 2e 29 20 2e 2e 2e 29 0a 20 20 20 28 28 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 ...)....)....((equal.(car.path).
2e40 27 28 6c 61 6d 62 64 61 20 2e 20 31 29 29 0a 20 20 20 20 6e 69 6c 29 0a 20 20 20 3b 3b 20 49 67 '(lambda...1)).....nil)....;;.Ig
2e60 6e 6f 72 65 20 28 6c 65 74 20 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 20 2e 2e 2e 29 0a 20 20 20 3b nore.(let.(SYMBOL....)....)....;
2e80 3b 20 61 6e 64 20 28 6c 65 74 2a 20 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 20 2e 2e 2e 29 0a 20 20 ;.and.(let*.(SYMBOL....)....)...
2ea0 20 28 28 6f 72 0a 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 27 28 6c .((or......(equal.(car.path).'(l
2ec0 65 74 20 2e 20 31 29 29 0a 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 et...1))......(equal.(car.path).
2ee0 27 28 6c 65 74 2a 20 2e 20 31 29 29 29 0a 20 20 20 20 6e 69 6c 29 0a 20 20 20 3b 3b 20 49 67 6e '(let*...1))).....nil)....;;.Ign
2f00 6f 72 65 20 28 6c 65 74 20 28 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 29 20 2e 2e 2e 29 0a 20 20 20 ore.(let.((SYMBOL....))....)....
2f20 28 28 6f 72 0a 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 6c 2d 73 65 63 6f 6e 64 20 70 61 74 68 ((or......(equal.(cl-second.path
2f40 29 20 27 28 6c 65 74 20 2e 20 31 29 29 0a 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 6c 2d 73 65 ).'(let...1))......(equal.(cl-se
2f60 63 6f 6e 64 20 70 61 74 68 29 20 27 28 6c 65 74 2a 20 2e 20 31 29 29 29 0a 20 20 20 20 6e 69 6c cond.path).'(let*...1))).....nil
2f80 29 0a 20 20 20 3b 3b 20 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 0a 20 20 20 28 28 65 71 20 28 63 61 )....;;.(SYMBOL....)....((eq.(ca
2fa0 72 20 66 6f 72 6d 29 20 73 79 6d 62 6f 6c 29 0a 20 20 20 20 74 29 29 29 0a 0a 3b 3b 20 4c 6f 6f r.form).symbol).....t)))..;;.Loo
2fc0 6b 69 6e 67 20 66 6f 72 20 61 20 73 70 65 63 69 61 6c 20 66 6f 72 6d 20 69 73 20 65 78 61 63 74 king.for.a.special.form.is.exact
2fe0 6c 79 20 74 68 65 20 73 61 6d 65 20 61 73 20 6c 6f 6f 6b 69 6e 67 20 66 6f 72 20 61 0a 3b 3b 20 ly.the.same.as.looking.for.a.;;.
3000 6d 61 63 72 6f 2e 0a 28 64 65 66 61 6c 69 61 73 20 27 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 70 macro..(defalias.'elisp-refs--sp
3020 65 63 69 61 6c 2d 70 20 27 65 6c 69 73 70 2d 72 65 66 73 2d 2d 6d 61 63 72 6f 2d 70 29 0a 0a 28 ecial-p.'elisp-refs--macro-p)..(
3040 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 76 61 72 69 61 62 6c 65 2d 70 20 28 73 79 defun.elisp-refs--variable-p.(sy
3060 6d 62 6f 6c 20 66 6f 72 6d 20 70 61 74 68 29 0a 20 20 22 52 65 74 75 72 6e 20 74 20 69 66 20 74 mbol.form.path)..."Return.t.if.t
3080 68 69 73 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 61 20 76 61 72 69 61 62 6c 65 20 72 65 66 65 72 65 his.looks.like.a.variable.refere
30a0 6e 63 65 20 74 6f 20 53 59 4d 42 4f 4c 2e 0a 57 65 20 63 6f 6e 73 69 64 65 72 20 70 61 72 61 6d nce.to.SYMBOL..We.consider.param
30c0 65 74 65 72 73 20 74 6f 20 62 65 20 76 61 72 69 61 62 6c 65 73 20 74 6f 6f 2e 22 0a 20 20 28 63 eters.to.be.variables.too."...(c
30e0 6f 6e 64 0a 20 20 20 28 28 63 6f 6e 73 70 20 66 6f 72 6d 29 0a 20 20 20 20 6e 69 6c 29 0a 20 20 ond....((consp.form).....nil)...
3100 20 3b 3b 20 49 67 6e 6f 72 65 20 28 64 65 66 75 6e 20 5f 20 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 .;;.Ignore.(defun._.(SYMBOL....)
3120 20 2e 2e 2e 29 0a 20 20 20 28 28 6f 72 20 28 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 ....)....((or.(equal.(car.path).
3140 27 28 64 65 66 73 75 62 73 74 20 2e 20 31 29 29 0a 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 '(defsubst...1)).........(equal.
3160 28 63 61 72 20 70 61 74 68 29 20 27 28 64 65 66 75 6e 20 2e 20 31 29 29 0a 20 20 20 20 20 20 20 (car.path).'(defun...1))........
3180 20 28 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 27 28 64 65 66 6d 61 63 72 6f 20 2e 20 .(equal.(car.path).'(defmacro...
31a0 31 29 29 0a 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 27 28 1)).........(equal.(car.path).'(
31c0 63 6c 2d 64 65 66 75 6e 20 2e 20 31 29 29 29 0a 20 20 20 20 6e 69 6c 29 0a 20 20 20 3b 3b 20 28 cl-defun...1))).....nil)....;;.(
31e0 6c 65 74 20 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 20 2e 2e 2e 29 20 69 73 20 61 20 76 61 72 69 61 let.(SYMBOL....)....).is.a.varia
3200 62 6c 65 2c 20 6e 6f 74 20 61 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 0a 20 20 20 28 28 6f ble,.not.a.function.call.....((o
3220 72 0a 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 6c 2d 73 65 63 6f 6e 64 20 70 61 74 68 29 20 27 r......(equal.(cl-second.path).'
3240 28 6c 65 74 20 2e 20 31 29 29 0a 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 6c 2d 73 65 63 6f 6e (let...1))......(equal.(cl-secon
3260 64 20 70 61 74 68 29 20 27 28 6c 65 74 2a 20 2e 20 31 29 29 29 0a 20 20 20 20 74 29 0a 20 20 20 d.path).'(let*...1))).....t)....
3280 3b 3b 20 28 6c 61 6d 62 64 61 20 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 20 2e 2e 2e 29 20 69 73 20 ;;.(lambda.(SYMBOL....)....).is.
32a0 61 20 76 61 72 69 61 62 6c 65 0a 20 20 20 28 28 65 71 75 61 6c 20 28 63 6c 2d 73 65 63 6f 6e 64 a.variable....((equal.(cl-second
32c0 20 70 61 74 68 29 20 27 28 6c 61 6d 62 64 61 20 2e 20 31 29 29 0a 20 20 20 20 74 29 0a 20 20 20 .path).'(lambda...1)).....t)....
32e0 3b 3b 20 28 6c 65 74 20 28 28 53 59 4d 42 4f 4c 20 2e 2e 2e 29 29 20 2e 2e 2e 29 20 69 73 20 61 ;;.(let.((SYMBOL....))....).is.a
3300 6c 73 6f 20 61 20 76 61 72 69 61 62 6c 65 2e 0a 20 20 20 28 28 6f 72 0a 20 20 20 20 20 28 65 71 lso.a.variable.....((or......(eq
3320 75 61 6c 20 28 63 6c 2d 74 68 69 72 64 20 70 61 74 68 29 20 27 28 6c 65 74 20 2e 20 31 29 29 0a ual.(cl-third.path).'(let...1)).
3340 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 6c 2d 74 68 69 72 64 20 70 61 74 68 29 20 27 28 6c 65 .....(equal.(cl-third.path).'(le
3360 74 2a 20 2e 20 31 29 29 29 0a 20 20 20 20 74 29 0a 20 20 20 3b 3b 20 49 67 6e 6f 72 65 20 28 53 t*...1))).....t)....;;.Ignore.(S
3380 59 4d 42 4f 4c 20 2e 2e 2e 29 20 6f 74 68 65 72 77 69 73 65 2c 20 77 65 20 61 73 73 75 6d 65 20 YMBOL....).otherwise,.we.assume.
33a0 69 74 27 73 20 61 20 66 75 6e 63 74 69 6f 6e 2f 6d 61 63 72 6f 0a 20 20 20 3b 3b 20 63 61 6c 6c it's.a.function/macro....;;.call
33c0 2e 0a 20 20 20 28 28 65 71 75 61 6c 20 28 63 61 72 20 70 61 74 68 29 20 28 63 6f 6e 73 20 73 79 .....((equal.(car.path).(cons.sy
33e0 6d 62 6f 6c 20 30 29 29 0a 20 20 20 20 6e 69 6c 29 0a 20 20 20 28 28 65 71 20 66 6f 72 6d 20 73 mbol.0)).....nil)....((eq.form.s
3400 79 6d 62 6f 6c 29 0a 20 20 20 20 74 29 29 29 0a 0a 3b 3b 20 54 4f 44 4f 3a 20 62 65 6e 63 68 6d ymbol).....t)))..;;.TODO:.benchm
3420 61 72 6b 20 62 75 69 6c 64 69 6e 67 20 61 20 6c 69 73 74 20 77 69 74 68 20 60 70 75 73 68 27 20 ark.building.a.list.with.`push'.
3440 72 61 74 68 65 72 20 74 68 61 6e 20 75 73 69 6e 67 0a 3b 3b 20 6d 61 70 63 61 74 2e 0a 28 64 65 rather.than.using.;;.mapcat..(de
3460 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 72 65 61 64 2d 61 6e 64 2d 66 69 6e 64 20 28 62 fun.elisp-refs--read-and-find.(b
3480 75 66 66 65 72 20 73 79 6d 62 6f 6c 20 6d 61 74 63 68 2d 70 29 0a 20 20 22 52 65 61 64 20 61 6c uffer.symbol.match-p)..."Read.al
34a0 6c 20 74 68 65 20 66 6f 72 6d 73 20 69 6e 20 42 55 46 46 45 52 2c 20 61 6e 64 20 72 65 74 75 72 l.the.forms.in.BUFFER,.and.retur
34c0 6e 20 61 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 66 6f 72 6d 73 20 74 68 61 74 0a 63 6f 6e 74 61 n.a.list.of.all.forms.that.conta
34e0 69 6e 20 53 59 4d 42 4f 4c 20 77 68 65 72 65 20 4d 41 54 43 48 2d 50 20 72 65 74 75 72 6e 73 20 in.SYMBOL.where.MATCH-P.returns.
3500 74 2e 0a 0a 46 6f 72 20 65 76 65 72 79 20 6d 61 74 63 68 69 6e 67 20 66 6f 72 6d 20 66 6f 75 6e t...For.every.matching.form.foun
3520 64 2c 20 77 65 20 72 65 74 75 72 6e 20 74 68 65 20 66 6f 72 6d 20 69 74 73 65 6c 66 20 61 6c 6f d,.we.return.the.form.itself.alo
3540 6e 67 0a 77 69 74 68 20 69 74 73 20 73 74 61 72 74 20 61 6e 64 20 65 6e 64 20 70 6f 73 69 74 69 ng.with.its.start.and.end.positi
3560 6f 6e 2e 22 0a 20 20 28 2d 6e 6f 6e 2d 6e 69 6c 0a 20 20 20 28 2d 2d 6d 61 70 63 61 74 0a 20 20 on."...(-non-nil....(--mapcat...
3580 20 20 28 2d 6c 65 74 20 5b 28 66 6f 72 6d 20 73 74 61 72 74 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 ..(-let.[(form.start-pos.end-pos
35a0 20 73 79 6d 62 6f 6c 2d 70 6f 73 69 74 69 6f 6e 73 20 5f 72 65 61 64 2d 73 74 61 72 74 2d 70 6f .symbol-positions._read-start-po
35c0 73 29 20 69 74 5d 0a 20 20 20 20 20 20 3b 3b 20 4f 70 74 69 6d 69 73 61 74 69 6f 6e 3a 20 69 66 s).it].......;;.Optimisation:.if
35e0 20 77 65 20 68 61 76 65 20 61 20 6c 69 73 74 20 6f 66 20 70 6f 73 69 74 69 6f 6e 73 20 66 6f 72 .we.have.a.list.of.positions.for
3600 20 74 68 65 20 63 75 72 72 65 6e 74 0a 20 20 20 20 20 20 3b 3b 20 66 6f 72 6d 20 28 45 6d 61 63 .the.current.......;;.form.(Emac
3620 73 20 32 38 20 61 6e 64 20 65 61 72 6c 69 65 72 29 2c 20 61 6e 64 20 69 74 20 64 6f 65 73 6e 27 s.28.and.earlier),.and.it.doesn'
3640 74 20 63 6f 6e 74 61 69 6e 20 74 68 65 0a 20 20 20 20 20 20 3b 3b 20 73 79 6d 62 6f 6c 20 77 65 t.contain.the.......;;.symbol.we
3660 27 72 65 20 6c 6f 6f 6b 69 6e 67 20 66 6f 72 2c 20 64 6f 6e 27 74 20 62 6f 74 68 65 72 20 77 61 're.looking.for,.don't.bother.wa
3680 6c 6b 69 6e 67 20 74 68 65 20 66 6f 72 6d 2e 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 6f 72 20 lking.the.form........(when.(or.
36a0 28 6e 75 6c 6c 20 73 79 6d 62 6f 6c 2d 70 6f 73 69 74 69 6f 6e 73 29 20 28 61 73 73 71 20 73 79 (null.symbol-positions).(assq.sy
36c0 6d 62 6f 6c 20 73 79 6d 62 6f 6c 2d 70 6f 73 69 74 69 6f 6e 73 29 29 0a 20 20 20 20 20 20 20 20 mbol.symbol-positions)).........
36e0 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 77 61 6c 6b 20 62 75 66 66 65 72 20 66 6f 72 6d 20 73 74 (elisp-refs--walk.buffer.form.st
3700 61 72 74 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 20 73 79 6d 62 6f 6c 20 6d 61 74 63 68 2d 70 29 29 art-pos.end-pos.symbol.match-p))
3720 29 0a 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 72 65 61 64 2d 61 6c 6c 2d 62 75 66 66 ).....(elisp-refs--read-all-buff
3740 65 72 2d 66 6f 72 6d 73 20 62 75 66 66 65 72 20 6e 69 6c 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 er-forms.buffer.nil))))..(defun.
3760 65 6c 69 73 70 2d 72 65 66 73 2d 2d 77 61 6c 6b 2d 70 6f 73 69 74 69 6f 6e 65 64 2d 73 79 6d 62 elisp-refs--walk-positioned-symb
3780 6f 6c 73 20 28 66 6f 72 6d 73 20 73 79 6d 62 6f 6c 29 0a 20 20 22 47 69 76 65 6e 20 61 20 6e 65 ols.(forms.symbol)..."Given.a.ne
37a0 73 74 65 64 20 6c 69 73 74 20 6f 66 20 46 4f 52 4d 53 2c 20 72 65 74 75 72 6e 20 61 20 6c 69 73 sted.list.of.FORMS,.return.a.lis
37c0 74 20 6f 66 20 61 6c 6c 20 70 6f 73 69 74 69 6f 6e 73 20 6f 66 20 53 59 4d 42 4f 4c 2e 0a 41 73 t.of.all.positions.of.SYMBOL..As
37e0 73 75 6d 65 73 20 60 73 79 6d 62 6f 6c 2d 77 69 74 68 2d 70 6f 73 2d 70 6f 73 27 20 69 73 20 64 sumes.`symbol-with-pos-pos'.is.d
3800 65 66 69 6e 65 64 20 28 45 6d 61 63 73 20 32 39 2b 29 2e 22 0a 20 20 28 63 6f 6e 64 0a 20 20 20 efined.(Emacs.29+)."...(cond....
3820 28 28 73 79 6d 62 6f 6c 2d 77 69 74 68 2d 70 6f 73 2d 70 20 66 6f 72 6d 73 29 0a 20 20 20 20 28 ((symbol-with-pos-p.forms).....(
3840 6c 65 74 20 28 28 73 79 6d 62 6f 6c 73 2d 77 69 74 68 2d 70 6f 73 2d 65 6e 61 62 6c 65 64 20 74 let.((symbols-with-pos-enabled.t
3860 29 29 0a 20 20 20 20 20 20 28 69 66 20 28 65 71 20 66 6f 72 6d 73 20 73 79 6d 62 6f 6c 29 0a 20 )).......(if.(eq.forms.symbol)..
3880 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 6c 69 73 74 20 73 79 6d 62 6f 6c 0a 20 20 20 20 .........(list.(list.symbol.....
38a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c 2d 77 69 74 68 2d 70 ..................(symbol-with-p
38c0 6f 73 2d 70 6f 73 20 66 6f 72 6d 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 os-pos.forms)...................
38e0 20 20 20 20 28 2b 20 28 73 79 6d 62 6f 6c 2d 77 69 74 68 2d 70 6f 73 2d 70 6f 73 20 66 6f 72 6d ....(+.(symbol-with-pos-pos.form
3900 73 29 20 28 6c 65 6e 67 74 68 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 73 79 6d 62 6f 6c 29 29 s).(length.(symbol-name.symbol))
3920 29 29 29 29 29 29 0a 20 20 20 28 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 70 72 6f 70 65 72 2d 6c ))))))....((elisp-refs--proper-l
3940 69 73 74 2d 70 20 66 6f 72 6d 73 29 0a 20 20 20 20 3b 3b 20 50 72 6f 70 65 72 20 6c 69 73 74 2c ist-p.forms).....;;.Proper.list,
3960 20 75 73 65 20 60 2d 2d 6d 61 70 63 61 74 60 20 74 6f 20 72 65 64 75 63 65 20 68 6f 77 20 6d 75 .use.`--mapcat`.to.reduce.how.mu
3980 63 68 20 77 65 20 72 65 63 75 72 73 65 2e 0a 20 20 20 20 28 2d 2d 6d 61 70 63 61 74 20 28 65 6c ch.we.recurse......(--mapcat.(el
39a0 69 73 70 2d 72 65 66 73 2d 2d 77 61 6c 6b 2d 70 6f 73 69 74 69 6f 6e 65 64 2d 73 79 6d 62 6f 6c isp-refs--walk-positioned-symbol
39c0 73 20 69 74 20 73 79 6d 62 6f 6c 29 20 66 6f 72 6d 73 29 29 0a 20 20 20 28 28 63 6f 6e 73 70 20 s.it.symbol).forms))....((consp.
39e0 66 6f 72 6d 73 29 0a 20 20 20 20 3b 3b 20 49 6d 70 72 6f 70 65 72 20 6c 69 73 74 2c 20 77 65 20 forms).....;;.Improper.list,.we.
3a00 68 61 76 65 20 74 6f 20 72 65 63 75 72 73 65 20 6f 6e 20 68 65 61 64 20 61 6e 64 20 74 61 69 6c have.to.recurse.on.head.and.tail
3a20 2e 0a 20 20 20 20 28 61 70 70 65 6e 64 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 77 61 6c 6b 2d ......(append.(elisp-refs--walk-
3a40 70 6f 73 69 74 69 6f 6e 65 64 2d 73 79 6d 62 6f 6c 73 20 28 63 61 72 20 66 6f 72 6d 73 29 20 73 positioned-symbols.(car.forms).s
3a60 79 6d 62 6f 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d ymbol).............(elisp-refs--
3a80 77 61 6c 6b 2d 70 6f 73 69 74 69 6f 6e 65 64 2d 73 79 6d 62 6f 6c 73 20 28 63 64 72 20 66 6f 72 walk-positioned-symbols.(cdr.for
3aa0 6d 73 29 20 73 79 6d 62 6f 6c 29 29 29 0a 20 20 20 28 28 76 65 63 74 6f 72 70 20 66 6f 72 6d 73 ms).symbol)))....((vectorp.forms
3ac0 29 0a 20 20 20 20 28 2d 2d 6d 61 70 63 61 74 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 77 61 6c ).....(--mapcat.(elisp-refs--wal
3ae0 6b 2d 70 6f 73 69 74 69 6f 6e 65 64 2d 73 79 6d 62 6f 6c 73 20 69 74 20 73 79 6d 62 6f 6c 29 20 k-positioned-symbols.it.symbol).
3b00 66 6f 72 6d 73 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 72 65 forms))))..(defun.elisp-refs--re
3b20 61 64 2d 61 6e 64 2d 66 69 6e 64 2d 73 79 6d 62 6f 6c 20 28 62 75 66 66 65 72 20 73 79 6d 62 6f ad-and-find-symbol.(buffer.symbo
3b40 6c 29 0a 20 20 22 52 65 61 64 20 61 6c 6c 20 74 68 65 20 66 6f 72 6d 73 20 69 6e 20 42 55 46 46 l)..."Read.all.the.forms.in.BUFF
3b60 45 52 2c 20 61 6e 64 20 72 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 61 6c 6c 0a 70 6f 73 ER,.and.return.a.list.of.all.pos
3b80 69 74 69 6f 6e 73 20 6f 66 20 53 59 4d 42 4f 4c 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 73 79 6d itions.of.SYMBOL."...(let*.((sym
3ba0 62 6f 6c 73 2d 77 69 74 68 2d 70 6f 73 20 28 66 62 6f 75 6e 64 70 20 27 73 79 6d 62 6f 6c 2d 77 bols-with-pos.(fboundp.'symbol-w
3bc0 69 74 68 2d 70 6f 73 2d 70 6f 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 73 20 28 65 ith-pos-pos))..........(forms.(e
3be0 6c 69 73 70 2d 72 65 66 73 2d 2d 72 65 61 64 2d 61 6c 6c 2d 62 75 66 66 65 72 2d 66 6f 72 6d 73 lisp-refs--read-all-buffer-forms
3c00 20 62 75 66 66 65 72 20 73 79 6d 62 6f 6c 73 2d 77 69 74 68 2d 70 6f 73 29 29 29 0a 0a 20 20 20 .buffer.symbols-with-pos))).....
3c20 20 28 69 66 20 73 79 6d 62 6f 6c 73 2d 77 69 74 68 2d 70 6f 73 0a 20 20 20 20 20 20 20 20 28 65 .(if.symbols-with-pos.........(e
3c40 6c 69 73 70 2d 72 65 66 73 2d 2d 77 61 6c 6b 2d 70 6f 73 69 74 69 6f 6e 65 64 2d 73 79 6d 62 6f lisp-refs--walk-positioned-symbo
3c60 6c 73 20 66 6f 72 6d 73 20 73 79 6d 62 6f 6c 29 0a 20 20 20 20 20 20 28 2d 6e 6f 6e 2d 6e 69 6c ls.forms.symbol).......(-non-nil
3c80 0a 20 20 20 20 20 20 20 28 2d 2d 6d 61 70 63 61 74 0a 20 20 20 20 20 20 20 20 28 2d 6c 65 74 20 ........(--mapcat.........(-let.
3ca0 5b 28 5f 20 5f 20 5f 20 73 79 6d 62 6f 6c 2d 70 6f 73 69 74 69 6f 6e 73 20 72 65 61 64 2d 73 74 [(_._._.symbol-positions.read-st
3cc0 61 72 74 2d 70 6f 73 29 20 69 74 5d 0a 20 20 20 20 20 20 20 20 20 20 28 2d 2d 6d 61 70 0a 20 20 art-pos).it]...........(--map...
3ce0 20 20 20 20 20 20 20 20 20 28 2d 6c 65 74 20 5b 28 73 79 6d 20 2e 20 6f 66 66 73 65 74 29 20 69 .........(-let.[(sym...offset).i
3d00 74 5d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 73 79 6d 20 73 79 t]..............(when.(eq.sym.sy
3d20 6d 62 6f 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2d 6c 65 74 2a 20 28 28 73 74 mbol)................(-let*.((st
3d40 61 72 74 2d 70 6f 73 20 28 2b 20 72 65 61 64 2d 73 74 61 72 74 2d 70 6f 73 20 6f 66 66 73 65 74 art-pos.(+.read-start-pos.offset
3d60 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6e 64 2d 70 ))........................(end-p
3d80 6f 73 20 28 2b 20 73 74 61 72 74 2d 70 6f 73 20 28 6c 65 6e 67 74 68 20 28 73 79 6d 62 6f 6c 2d os.(+.start-pos.(length.(symbol-
3da0 6e 61 6d 65 20 73 79 6d 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 name.sym)))))..................(
3dc0 6c 69 73 74 20 73 79 6d 20 73 74 61 72 74 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 29 29 29 29 0a 20 list.sym.start-pos.end-pos))))..
3de0 20 20 20 20 20 20 20 20 20 20 73 79 6d 62 6f 6c 2d 70 6f 73 69 74 69 6f 6e 73 29 29 0a 20 20 20 ..........symbol-positions))....
3e00 20 20 20 20 20 66 6f 72 6d 73 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 .....forms)))))..(defun.elisp-re
3e20 66 73 2d 2d 66 69 6c 74 65 72 2d 6f 62 61 72 72 61 79 20 28 70 72 65 64 29 0a 20 20 22 52 65 74 fs--filter-obarray.(pred)..."Ret
3e40 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 74 68 65 20 69 74 65 6d 73 20 69 6e 20 60 urn.a.list.of.all.the.items.in.`
3e60 6f 62 61 72 72 61 79 27 20 77 68 65 72 65 20 50 52 45 44 20 72 65 74 75 72 6e 73 20 74 2e 22 0a obarray'.where.PRED.returns.t.".
3e80 20 20 28 6c 65 74 20 28 73 79 6d 62 6f 6c 73 29 0a 20 20 20 20 28 6d 61 70 61 74 6f 6d 73 20 28 ..(let.(symbols).....(mapatoms.(
3ea0 6c 61 6d 62 64 61 20 28 73 79 6d 62 6f 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lambda.(symbol).................
3ec0 28 77 68 65 6e 20 28 61 6e 64 20 28 66 75 6e 63 61 6c 6c 20 70 72 65 64 20 73 79 6d 62 6f 6c 29 (when.(and.(funcall.pred.symbol)
3ee0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 ............................(not
3f00 20 28 65 71 75 61 6c 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 73 79 6d 62 6f 6c 29 20 22 22 29 .(equal.(symbol-name.symbol)."")
3f20 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 73 79 6d 62 6f ))...................(push.symbo
3f40 6c 20 73 79 6d 62 6f 6c 73 29 29 29 29 0a 20 20 20 20 73 79 6d 62 6f 6c 73 29 29 0a 0a 28 64 65 l.symbols)))).....symbols))..(de
3f60 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 6c 6f 61 64 65 64 2d 70 61 74 68 73 20 28 29 0a fun.elisp-refs--loaded-paths.().
3f80 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 66 69 6c 65 73 20 74 68 .."Return.a.list.of.all.files.th
3fa0 61 74 20 68 61 76 65 20 62 65 65 6e 20 6c 6f 61 64 65 64 20 69 6e 20 45 6d 61 63 73 2e 0a 57 68 at.have.been.loaded.in.Emacs..Wh
3fc0 65 72 65 20 74 68 65 20 66 69 6c 65 20 77 61 73 20 61 20 2e 65 6c 63 2c 20 72 65 74 75 72 6e 20 ere.the.file.was.a..elc,.return.
3fe0 74 68 65 20 70 61 74 68 20 74 6f 20 74 68 65 20 2e 65 6c 20 66 69 6c 65 20 69 6e 73 74 65 61 64 the.path.to.the..el.file.instead
4000 2e 22 0a 20 20 28 6c 65 74 20 28 28 65 6c 63 2d 70 61 74 68 73 20 28 2d 6e 6f 6e 2d 6e 69 6c 20 ."...(let.((elc-paths.(-non-nil.
4020 28 6d 61 70 63 61 72 20 23 27 2d 66 69 72 73 74 2d 69 74 65 6d 20 6c 6f 61 64 2d 68 69 73 74 6f (mapcar.#'-first-item.load-histo
4040 72 79 29 29 29 29 0a 20 20 20 20 28 2d 6e 6f 6e 2d 6e 69 6c 0a 20 20 20 20 20 28 2d 2d 6d 61 70 ry)))).....(-non-nil......(--map
4060 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 65 6c 2d 6e 61 6d 65 20 28 66 6f 72 6d 61 74 20 22 25 .......(let.((el-name.(format."%
4080 73 2e 65 6c 22 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 73 61 6e 73 2d 65 78 74 65 6e 73 69 6f 6e 20 s.el".(file-name-sans-extension.
40a0 69 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 2d 67 7a 2d 6e 61 6d 65 20 28 66 it))).............(el-gz-name.(f
40c0 6f 72 6d 61 74 20 22 25 73 2e 65 6c 2e 67 7a 22 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 73 61 6e 73 ormat."%s.el.gz".(file-name-sans
40e0 2d 65 78 74 65 6e 73 69 6f 6e 20 69 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 -extension.it)))).........(cond.
4100 28 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 65 6c 2d 6e 61 6d 65 29 20 65 6c 2d 6e 61 6d 65 ((file-exists-p.el-name).el-name
4120 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20 )...............((file-exists-p.
4140 65 6c 2d 67 7a 2d 6e 61 6d 65 29 20 65 6c 2d 67 7a 2d 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 el-gz-name).el-gz-name).........
4160 20 20 20 20 20 20 3b 3b 20 49 67 6e 6f 72 65 20 66 69 6c 65 73 20 77 68 65 72 65 20 77 65 20 63 ......;;.Ignore.files.where.we.c
4180 61 6e 27 74 20 66 69 6e 64 20 61 20 2e 65 6c 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 an't.find.a..el.file............
41a0 20 20 20 20 28 74 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 20 65 6c 63 2d 70 61 74 68 73 29 29 29 ....(t.nil))).......elc-paths)))
41c0 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 63 6f 6e 74 65 6e 74 73 2d 62 )..(defun.elisp-refs--contents-b
41e0 75 66 66 65 72 20 28 70 61 74 68 29 0a 20 20 22 52 65 61 64 20 50 41 54 48 20 69 6e 74 6f 20 61 uffer.(path)..."Read.PATH.into.a
4200 20 64 69 73 70 6f 73 61 62 6c 65 20 62 75 66 66 65 72 2c 20 61 6e 64 20 72 65 74 75 72 6e 20 69 .disposable.buffer,.and.return.i
4220 74 2e 0a 57 6f 72 6b 73 20 61 72 6f 75 6e 64 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 45 6d t..Works.around.the.fact.that.Em
4240 61 63 73 20 77 6f 6e 27 74 20 61 6c 6c 6f 77 20 6d 75 6c 74 69 70 6c 65 20 62 75 66 66 65 72 73 acs.won't.allow.multiple.buffers
4260 0a 76 69 73 69 74 69 6e 67 20 74 68 65 20 73 61 6d 65 20 66 69 6c 65 2e 22 0a 20 20 28 6c 65 74 .visiting.the.same.file."...(let
4280 20 28 28 66 72 65 73 68 2d 62 75 66 66 65 72 20 28 67 65 6e 65 72 61 74 65 2d 6e 65 77 2d 62 75 .((fresh-buffer.(generate-new-bu
42a0 66 66 65 72 20 28 66 6f 72 6d 61 74 20 22 20 2a 72 65 66 73 2d 25 73 2a 22 20 70 61 74 68 29 29 ffer.(format.".*refs-%s*".path))
42c0 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 42 65 20 64 65 66 65 6e 73 69 76 65 20 61 67 61 69 6e 73 ).........;;.Be.defensive.agains
42e0 74 20 75 73 65 72 73 20 6f 76 65 72 72 69 64 69 6e 67 20 65 6e 63 6f 64 69 6e 67 0a 20 20 20 20 t.users.overriding.encoding.....
4300 20 20 20 20 3b 3b 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 73 20 28 48 65 6c 70 66 75 6c 20 62 ....;;.configurations.(Helpful.b
4320 75 67 73 20 23 37 35 20 61 6e 64 20 23 31 34 37 29 2e 0a 20 20 20 20 20 20 20 20 28 63 6f 64 69 ugs.#75.and.#147)..........(codi
4340 6e 67 2d 73 79 73 74 65 6d 2d 66 6f 72 2d 72 65 61 64 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 ng-system-for-read.nil).........
4360 28 66 69 6c 65 2d 6e 61 6d 65 2d 68 61 6e 64 6c 65 72 2d 61 6c 69 73 74 0a 20 20 20 20 20 20 20 (file-name-handler-alist........
4380 20 20 27 28 28 22 5c 5c 28 3f 3a 5c 5c 2e 64 7a 5c 5c 7c 5c 5c 2e 74 78 7a 5c 5c 7c 5c 5c 2e 78 ..'(("\\(?:\\.dz\\|\\.txz\\|\\.x
43a0 7a 5c 5c 7c 5c 5c 2e 6c 7a 6d 61 5c 5c 7c 5c 5c 2e 6c 7a 5c 5c 7c 5c 5c 2e 67 3f 7a 5c 5c 7c 5c z\\|\\.lzma\\|\\.lz\\|\\.g?z\\|\
43c0 5c 2e 5c 5c 28 3f 3a 74 67 7a 5c 5c 7c 73 76 67 7a 5c 5c 7c 73 69 66 7a 5c 5c 29 5c 5c 7c 5c 5c \.\\(?:tgz\\|svgz\\|sifz\\)\\|\\
43e0 2e 74 62 7a 32 3f 5c 5c 7c 5c 5c 2e 62 7a 32 5c 5c 7c 5c 5c 2e 5a 5c 5c 29 5c 5c 28 3f 3a 7e 5c .tbz2?\\|\\.bz2\\|\\.Z\\)\\(?:~\
4400 5c 7c 5c 5c 2e 7e 5b 2d 5b 3a 61 6c 6e 75 6d 3a 5d 3a 23 40 5e 2e 5f 5d 2b 5c 5c 28 3f 3a 7e 5b \|\\.~[-[:alnum:]:#@^._]+\\(?:~[
4420 5b 3a 64 69 67 69 74 3a 5d 5d 2b 5c 5c 29 3f 7e 5c 5c 29 3f 5c 5c 27 22 20 2e 0a 20 20 20 20 20 [:digit:]]+\\)?~\\)?\\'"........
4440 20 20 20 20 20 20 20 6a 6b 61 2d 63 6f 6d 70 72 2d 68 61 6e 64 6c 65 72 29 0a 20 20 20 20 20 20 .......jka-compr-handler).......
4460 20 20 20 20 20 28 22 5c 5c 28 3f 3a 5e 2f 5c 5c 29 5c 5c 28 5c 5c 28 3f 3a 5c 5c 28 3f 3a 5c 5c .....("\\(?:^/\\)\\(\\(?:\\(?:\\
4480 28 2d 5c 5c 7c 5b 5b 3a 61 6c 6e 75 6d 3a 5d 5d 5c 5c 7b 32 2c 5c 5c 7d 5c 5c 29 5c 5c 28 3f 3a (-\\|[[:alnum:]]\\{2,\\}\\)\\(?:
44a0 3a 5c 5c 29 5c 5c 28 3f 3a 5c 5c 28 5b 5e 2f 3a 7c 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 29 5c :\\)\\(?:\\([^/:|[:blank:]]+\\)\
44c0 5c 28 3f 3a 40 5c 5c 29 5c 5c 29 3f 5c 5c 28 5c 5c 28 3f 3a 5b 25 2e 5f 5b 3a 61 6c 6e 75 6d 3a \(?:@\\)\\)?\\(\\(?:[%._[:alnum:
44e0 5d 2d 5d 2b 5c 5c 7c 5c 5c 28 3f 3a 5c 5c 5b 5c 5c 29 5c 5c 28 3f 3a 5c 5c 28 3f 3a 5b 5b 3a 61 ]-]+\\|\\(?:\\[\\)\\(?:\\(?:[[:a
4500 6c 6e 75 6d 3a 5d 5d 2a 3a 5c 5c 29 2b 5b 2e 5b 3a 61 6c 6e 75 6d 3a 5d 5d 2a 5c 5c 29 3f 5c 5c lnum:]]*:\\)+[.[:alnum:]]*\\)?\\
4520 28 3f 3a 5d 5c 5c 29 5c 5c 29 5c 5c 28 3f 3a 5c 5c 28 3f 3a 23 5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a (?:]\\)\\)\\(?:\\(?:#\\)\\(?:[[:
4540 64 69 67 69 74 3a 5d 5d 2b 5c 5c 29 5c 5c 29 3f 5c 5c 29 3f 5c 5c 29 5c 5c 28 3f 3a 7c 5c 5c 29 digit:]]+\\)\\)?\\)?\\)\\(?:|\\)
4560 5c 5c 29 2b 5c 5c 29 3f 5c 5c 28 3f 3a 5c 5c 28 2d 5c 5c 7c 5b 5b 3a 61 6c 6e 75 6d 3a 5d 5d 5c \\)+\\)?\\(?:\\(-\\|[[:alnum:]]\
4580 5c 7b 32 2c 5c 5c 7d 5c 5c 29 5c 5c 28 3f 3a 3a 5c 5c 29 5c 5c 28 3f 3a 5c 5c 28 5b 5e 2f 3a 7c \{2,\\}\\)\\(?::\\)\\(?:\\([^/:|
45a0 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 29 5c 5c 28 3f 3a 40 5c 5c 29 5c 5c 29 3f 5c 5c 28 5c 5c [:blank:]]+\\)\\(?:@\\)\\)?\\(\\
45c0 28 3f 3a 5b 25 2e 5f 5b 3a 61 6c 6e 75 6d 3a 5d 2d 5d 2b 5c 5c 7c 5c 5c 28 3f 3a 5c 5c 5b 5c 5c (?:[%._[:alnum:]-]+\\|\\(?:\\[\\
45e0 29 5c 5c 28 3f 3a 5c 5c 28 3f 3a 5b 5b 3a 61 6c 6e 75 6d 3a 5d 5d 2a 3a 5c 5c 29 2b 5b 2e 5b 3a )\\(?:\\(?:[[:alnum:]]*:\\)+[.[:
4600 61 6c 6e 75 6d 3a 5d 5d 2a 5c 5c 29 3f 5c 5c 28 3f 3a 5d 5c 5c 29 5c 5c 29 5c 5c 28 3f 3a 5c 5c alnum:]]*\\)?\\(?:]\\)\\)\\(?:\\
4620 28 3f 3a 23 5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a 64 69 67 69 74 3a 5d 5d 2b 5c 5c 29 5c 5c 29 3f 5c (?:#\\)\\(?:[[:digit:]]+\\)\\)?\
4640 5c 29 3f 5c 5c 29 5c 5c 28 3f 3a 3a 5c 5c 29 5c 5c 28 5b 5e 5c 6e 0d 5d 2a 5c 5c 27 5c 5c 29 22 \)?\\)\\(?::\\)\\([^\n.]*\\'\\)"
4660 20 2e 20 74 72 61 6d 70 2d 66 69 6c 65 2d 6e 61 6d 65 2d 68 61 6e 64 6c 65 72 29 0a 20 20 20 20 ...tramp-file-name-handler).....
4680 20 20 20 20 20 20 20 28 22 5c 5c 60 2f 3a 22 20 2e 20 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 2d .......("\\`/:"...file-name-non-
46a0 73 70 65 63 69 61 6c 29 29 29 29 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 special)))).....(with-current-bu
46c0 66 66 65 72 20 66 72 65 73 68 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 73 65 74 71 2d 6c 6f ffer.fresh-buffer.......(setq-lo
46e0 63 61 6c 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 70 61 74 68 20 70 61 74 68 29 0a 20 20 20 20 20 cal.elisp-refs--path.path)......
4700 20 28 69 6e 73 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 20 70 61 74 68 29 0a 20 20 20 .(insert-file-contents.path)....
4720 20 20 20 3b 3b 20 57 65 20 64 6f 6e 27 74 20 65 6e 61 62 6c 65 20 65 6d 61 63 73 2d 6c 69 73 70 ...;;.We.don't.enable.emacs-lisp
4740 2d 6d 6f 64 65 20 62 65 63 61 75 73 65 20 69 74 20 73 6c 6f 77 73 20 64 6f 77 6e 20 74 68 69 73 -mode.because.it.slows.down.this
4760 0a 20 20 20 20 20 20 3b 3b 20 66 75 6e 63 74 69 6f 6e 20 73 69 67 6e 69 66 69 63 61 6e 74 6c 79 .......;;.function.significantly
4780 2e 20 57 65 20 6a 75 73 74 20 6e 65 65 64 20 74 68 65 20 73 79 6e 74 61 78 20 74 61 62 6c 65 20 ..We.just.need.the.syntax.table.
47a0 66 6f 72 0a 20 20 20 20 20 20 3b 3b 20 73 63 61 6e 2d 73 65 78 70 73 20 74 6f 20 64 6f 20 74 68 for.......;;.scan-sexps.to.do.th
47c0 65 20 72 69 67 68 74 20 74 68 69 6e 67 20 77 69 74 68 20 63 6f 6d 6d 65 6e 74 73 2e 0a 20 20 20 e.right.thing.with.comments.....
47e0 20 20 20 28 73 65 74 2d 73 79 6e 74 61 78 2d 74 61 62 6c 65 20 65 6d 61 63 73 2d 6c 69 73 70 2d ...(set-syntax-table.emacs-lisp-
4800 6d 6f 64 65 2d 73 79 6e 74 61 78 2d 74 61 62 6c 65 29 29 0a 20 20 20 20 66 72 65 73 68 2d 62 75 mode-syntax-table)).....fresh-bu
4820 66 66 65 72 29 29 0a 0a 28 64 65 66 76 61 72 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 68 69 67 68 ffer))..(defvar.elisp-refs--high
4840 6c 69 67 68 74 69 6e 67 2d 62 75 66 66 65 72 0a 20 20 6e 69 6c 0a 20 20 22 41 20 74 65 6d 70 6f lighting-buffer...nil..."A.tempo
4860 72 61 72 79 20 62 75 66 66 65 72 20 75 73 65 64 20 66 6f 72 20 68 69 67 68 6c 69 67 68 74 69 6e rary.buffer.used.for.highlightin
4880 67 2e 0a 53 69 6e 63 65 20 60 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 79 6e 74 61 78 2d 68 69 67 g..Since.`elisp-refs--syntax-hig
48a0 68 6c 69 67 68 74 27 20 69 73 20 61 20 68 6f 74 20 66 75 6e 63 74 69 6f 6e 2c 20 77 65 0a 64 6f hlight'.is.a.hot.function,.we.do
48c0 6e 27 74 20 77 61 6e 74 20 74 6f 20 63 72 65 61 74 65 20 6c 6f 74 73 20 6f 66 20 74 65 6d 70 6f n't.want.to.create.lots.of.tempo
48e0 72 61 72 79 20 62 75 66 66 65 72 73 2e 22 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 rary.buffers.")..(defun.elisp-re
4900 66 73 2d 2d 73 79 6e 74 61 78 2d 68 69 67 68 6c 69 67 68 74 20 28 73 74 72 29 0a 20 20 22 41 70 fs--syntax-highlight.(str)..."Ap
4920 70 6c 79 20 66 6f 6e 74 2d 6c 6f 63 6b 20 70 72 6f 70 65 72 74 69 65 73 20 74 6f 20 61 20 73 74 ply.font-lock.properties.to.a.st
4940 72 69 6e 67 20 53 54 52 20 6f 66 20 45 6d 61 63 73 20 6c 69 73 70 20 63 6f 64 65 2e 22 0a 20 20 ring.STR.of.Emacs.lisp.code."...
4960 3b 3b 20 45 6e 73 75 72 65 20 77 65 20 68 61 76 65 20 61 20 68 69 67 68 6c 69 67 68 74 69 6e 67 ;;.Ensure.we.have.a.highlighting
4980 20 62 75 66 66 65 72 20 74 6f 20 77 6f 72 6b 20 77 69 74 68 2e 0a 20 20 28 75 6e 6c 65 73 73 20 .buffer.to.work.with....(unless.
49a0 28 61 6e 64 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 68 69 67 68 6c 69 67 68 74 69 6e 67 2d 62 75 (and.elisp-refs--highlighting-bu
49c0 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 2d 6c 69 76 65 ffer................(buffer-live
49e0 2d 70 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 68 69 67 68 6c 69 67 68 74 69 6e 67 2d 62 75 66 66 -p.elisp-refs--highlighting-buff
4a00 65 72 29 29 0a 20 20 20 20 28 73 65 74 71 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 68 69 67 68 6c er)).....(setq.elisp-refs--highl
4a20 69 67 68 74 69 6e 67 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 28 67 65 6e 65 72 61 ighting-buffer...........(genera
4a40 74 65 2d 6e 65 77 2d 62 75 66 66 65 72 20 22 20 2a 72 65 66 73 2d 68 69 67 68 6c 69 67 68 74 69 te-new-buffer.".*refs-highlighti
4a60 6e 67 2a 22 29 29 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 ng*")).....(with-current-buffer.
4a80 65 6c 69 73 70 2d 72 65 66 73 2d 2d 68 69 67 68 6c 69 67 68 74 69 6e 67 2d 62 75 66 66 65 72 0a elisp-refs--highlighting-buffer.
4aa0 20 20 20 20 20 20 28 64 65 6c 61 79 2d 6d 6f 64 65 2d 68 6f 6f 6b 73 20 28 65 6d 61 63 73 2d 6c ......(delay-mode-hooks.(emacs-l
4ac0 69 73 70 2d 6d 6f 64 65 29 29 29 29 0a 0a 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 isp-mode))))....(with-current-bu
4ae0 66 66 65 72 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 68 69 67 68 6c 69 67 68 74 69 6e 67 2d 62 75 ffer.elisp-refs--highlighting-bu
4b00 66 66 65 72 0a 20 20 20 20 28 65 72 61 73 65 2d 62 75 66 66 65 72 29 0a 20 20 20 20 28 69 6e 73 ffer.....(erase-buffer).....(ins
4b20 65 72 74 20 73 74 72 29 0a 20 20 20 20 28 69 66 20 28 66 62 6f 75 6e 64 70 20 27 66 6f 6e 74 2d ert.str).....(if.(fboundp.'font-
4b40 6c 6f 63 6b 2d 65 6e 73 75 72 65 29 0a 20 20 20 20 20 20 20 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d lock-ensure).........(font-lock-
4b60 65 6e 73 75 72 65 29 0a 20 20 20 20 20 20 28 77 69 74 68 2d 6e 6f 2d 77 61 72 6e 69 6e 67 73 0a ensure).......(with-no-warnings.
4b80 20 20 20 20 20 20 20 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 6f 6e 74 69 66 79 2d 62 75 66 66 65 ........(font-lock-fontify-buffe
4ba0 72 29 29 29 0a 20 20 20 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 29 29 0a 0a 28 64 65 66 r))).....(buffer-string)))..(def
4bc0 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 72 65 70 6c 61 63 65 2d 74 61 62 73 20 28 73 74 72 un.elisp-refs--replace-tabs.(str
4be0 69 6e 67 29 0a 20 20 22 52 65 70 6c 61 63 65 20 74 61 62 73 20 69 6e 20 53 54 52 49 4e 47 20 77 ing)..."Replace.tabs.in.STRING.w
4c00 69 74 68 20 73 70 61 63 65 73 2e 22 0a 20 20 3b 3b 20 54 68 69 73 20 69 73 20 69 6d 70 6f 72 74 ith.spaces."...;;.This.is.import
4c20 61 6e 74 20 66 6f 72 20 75 6e 69 6e 64 65 6e 74 69 6e 67 2c 20 61 73 20 77 65 20 6d 61 79 20 75 ant.for.unindenting,.as.we.may.u
4c40 6e 69 6e 64 65 6e 74 20 62 79 20 6c 65 73 73 0a 20 20 3b 3b 20 74 68 61 6e 20 6f 6e 65 20 77 68 nindent.by.less...;;.than.one.wh
4c60 6f 6c 65 20 74 61 62 2e 0a 20 20 28 73 2d 72 65 70 6c 61 63 65 20 22 5c 74 22 20 28 73 2d 72 65 ole.tab....(s-replace."\t".(s-re
4c80 70 65 61 74 20 74 61 62 2d 77 69 64 74 68 20 22 20 22 29 20 73 74 72 69 6e 67 29 29 0a 0a 28 64 peat.tab-width.".").string))..(d
4ca0 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 6c 69 6e 65 73 20 28 73 74 72 69 6e 67 29 0a efun.elisp-refs--lines.(string).
4cc0 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 74 68 65 20 6c 69 6e 65 .."Return.a.list.of.all.the.line
4ce0 73 20 69 6e 20 53 54 52 49 4e 47 2e 0a 27 61 5c 6e 62 27 20 2d 3e 20 28 27 61 5c 6e 27 20 27 62 s.in.STRING..'a\nb'.->.('a\n'.'b
4d00 27 29 22 0a 20 20 28 6c 65 74 20 28 28 6c 69 6e 65 73 20 6e 69 6c 29 29 0a 20 20 20 20 28 77 68 ')"...(let.((lines.nil)).....(wh
4d20 69 6c 65 20 28 3e 20 28 6c 65 6e 67 74 68 20 73 74 72 69 6e 67 29 20 30 29 0a 20 20 20 20 20 20 ile.(>.(length.string).0).......
4d40 28 6c 65 74 20 28 28 69 6e 64 65 78 20 28 73 2d 69 6e 64 65 78 2d 6f 66 20 22 5c 6e 22 20 73 74 (let.((index.(s-index-of."\n".st
4d60 72 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 28 69 66 20 69 6e 64 65 78 0a 20 20 20 20 20 20 ring))).........(if.index.......
4d80 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 ......(progn...............(push
4da0 20 28 73 75 62 73 74 72 69 6e 67 20 73 74 72 69 6e 67 20 30 20 28 31 2b 20 69 6e 64 65 78 29 29 .(substring.string.0.(1+.index))
4dc0 20 6c 69 6e 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 74 72 69 .lines)...............(setq.stri
4de0 6e 67 20 28 73 75 62 73 74 72 69 6e 67 20 73 74 72 69 6e 67 20 28 31 2b 20 69 6e 64 65 78 29 29 ng.(substring.string.(1+.index))
4e00 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 73 74 72 69 6e 67 20 6c 69 6e 65 73 29 ))...........(push.string.lines)
4e20 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 74 72 69 6e 67 20 22 22 29 29 29 29 0a 20 ...........(setq.string.""))))..
4e40 20 20 20 28 6e 72 65 76 65 72 73 65 20 6c 69 6e 65 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c ...(nreverse.lines)))..(defun.el
4e60 69 73 70 2d 72 65 66 73 2d 2d 6d 61 70 2d 6c 69 6e 65 73 20 28 73 74 72 69 6e 67 20 66 6e 29 0a isp-refs--map-lines.(string.fn).
4e80 20 20 22 45 78 65 63 75 74 65 20 46 4e 20 66 6f 72 20 65 61 63 68 20 6c 69 6e 65 20 69 6e 20 73 .."Execute.FN.for.each.line.in.s
4ea0 74 72 69 6e 67 2c 20 61 6e 64 20 6a 6f 69 6e 20 74 68 65 20 72 65 73 75 6c 74 20 74 6f 67 65 74 tring,.and.join.the.result.toget
4ec0 68 65 72 2e 22 0a 20 20 28 6c 65 74 20 28 28 72 65 73 75 6c 74 20 6e 69 6c 29 29 0a 20 20 20 20 her."...(let.((result.nil)).....
4ee0 28 64 6f 6c 69 73 74 20 28 6c 69 6e 65 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 6c 69 6e 65 73 (dolist.(line.(elisp-refs--lines
4f00 20 73 74 72 69 6e 67 29 29 0a 20 20 20 20 20 20 28 70 75 73 68 20 28 66 75 6e 63 61 6c 6c 20 66 .string)).......(push.(funcall.f
4f20 6e 20 6c 69 6e 65 29 20 72 65 73 75 6c 74 29 29 0a 20 20 20 20 28 61 70 70 6c 79 20 23 27 63 6f n.line).result)).....(apply.#'co
4f40 6e 63 61 74 20 28 6e 72 65 76 65 72 73 65 20 72 65 73 75 6c 74 29 29 29 29 0a 0a 28 64 65 66 75 ncat.(nreverse.result))))..(defu
4f60 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 75 6e 69 6e 64 65 6e 74 2d 72 69 67 69 64 6c 79 20 28 n.elisp-refs--unindent-rigidly.(
4f80 73 74 72 69 6e 67 29 0a 20 20 22 47 69 76 65 6e 20 61 6e 20 69 6e 64 65 6e 74 65 64 20 53 54 52 string)..."Given.an.indented.STR
4fa0 49 4e 47 2c 20 75 6e 69 6e 64 65 6e 74 20 72 69 67 69 64 6c 79 20 75 6e 74 69 6c 0a 61 74 20 6c ING,.unindent.rigidly.until.at.l
4fc0 65 61 73 74 20 6f 6e 65 20 6c 69 6e 65 20 68 61 73 20 6e 6f 20 69 6e 64 65 6e 74 2e 0a 0a 53 54 east.one.line.has.no.indent...ST
4fe0 52 49 4e 47 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 20 27 65 6c 69 73 70 2d 72 65 66 73 2d 73 RING.should.have.a.'elisp-refs-s
5000 74 61 72 74 2d 70 6f 73 20 70 72 6f 70 65 72 74 79 2e 20 54 68 65 20 72 65 74 75 72 6e 65 64 0a tart-pos.property..The.returned.
5020 73 74 72 69 6e 67 20 77 69 6c 6c 20 68 61 76 65 20 74 68 69 73 20 70 72 6f 70 65 72 74 79 20 75 string.will.have.this.property.u
5040 70 64 61 74 65 64 20 74 6f 20 72 65 66 6c 65 63 74 20 74 68 65 20 75 6e 69 6e 64 65 6e 74 2e 22 pdated.to.reflect.the.unindent."
5060 0a 20 20 28 6c 65 74 2a 20 28 28 6c 69 6e 65 73 20 28 73 2d 6c 69 6e 65 73 20 73 74 72 69 6e 67 ...(let*.((lines.(s-lines.string
5080 29 29 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 47 65 74 20 74 68 65 20 6c 65 61 64 69 6e 67 20 77 ))..........;;.Get.the.leading.w
50a0 68 69 74 65 73 70 61 63 65 20 66 6f 72 20 65 61 63 68 20 6c 69 6e 65 2e 0a 20 20 20 20 20 20 20 hitespace.for.each.line.........
50c0 20 20 28 69 6e 64 65 6e 74 73 20 28 2d 2d 6d 61 70 20 28 63 61 72 20 28 73 2d 6d 61 74 63 68 20 ..(indents.(--map.(car.(s-match.
50e0 28 72 78 20 62 6f 73 20 28 2b 20 77 68 69 74 65 73 70 61 63 65 29 29 20 69 74 29 29 0a 20 20 20 (rx.bos.(+.whitespace)).it))....
5100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 69 6e 65 73 29 29 0a 20 20 ......................lines))...
5120 20 20 20 20 20 20 20 28 6d 69 6e 2d 69 6e 64 65 6e 74 20 28 2d 6d 69 6e 20 28 2d 2d 6d 61 70 20 .......(min-indent.(-min.(--map.
5140 28 6c 65 6e 67 74 68 20 69 74 29 20 69 6e 64 65 6e 74 73 29 29 29 29 0a 20 20 20 20 28 70 72 6f (length.it).indents)))).....(pro
5160 70 65 72 74 69 7a 65 0a 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 6d 61 70 2d 6c 69 pertize......(elisp-refs--map-li
5180 6e 65 73 0a 20 20 20 20 20 20 73 74 72 69 6e 67 0a 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 nes.......string.......(lambda.(
51a0 6c 69 6e 65 29 20 28 73 75 62 73 74 72 69 6e 67 20 6c 69 6e 65 20 6d 69 6e 2d 69 6e 64 65 6e 74 line).(substring.line.min-indent
51c0 29 29 29 0a 20 20 20 20 20 27 65 6c 69 73 70 2d 72 65 66 73 2d 75 6e 69 6e 64 65 6e 74 65 64 20 )))......'elisp-refs-unindented.
51e0 6d 69 6e 2d 69 6e 64 65 6e 74 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 min-indent)))..(defun.elisp-refs
5200 2d 2d 63 6f 6e 74 61 69 6e 69 6e 67 2d 6c 69 6e 65 73 20 28 62 75 66 66 65 72 20 73 74 61 72 74 --containing-lines.(buffer.start
5220 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 73 74 72 69 6e 67 -pos.end-pos)..."Return.a.string
5240 2c 20 61 6c 6c 20 74 68 65 20 6c 69 6e 65 73 20 69 6e 20 42 55 46 46 45 52 20 74 68 61 74 20 61 ,.all.the.lines.in.BUFFER.that.a
5260 72 65 20 62 65 74 77 65 65 6e 0a 53 54 41 52 54 2d 50 4f 53 20 61 6e 64 20 45 4e 44 2d 50 4f 53 re.between.START-POS.and.END-POS
5280 20 28 69 6e 63 6c 75 73 69 76 65 29 2e 0a 0a 46 6f 72 20 74 68 65 20 63 68 61 72 61 63 74 65 72 .(inclusive)...For.the.character
52a0 73 20 74 68 61 74 20 61 72 65 20 62 65 74 77 65 65 6e 20 53 54 41 52 54 2d 50 4f 53 20 61 6e 64 s.that.are.between.START-POS.and
52c0 20 45 4e 44 2d 50 4f 53 2c 0a 70 72 6f 70 65 72 74 69 7a 65 20 74 68 65 6d 2e 22 0a 20 20 28 6c .END-POS,.propertize.them."...(l
52e0 65 74 20 28 65 78 70 61 6e 64 65 64 2d 73 74 61 72 74 2d 70 6f 73 20 65 78 70 61 6e 64 65 64 2d et.(expanded-start-pos.expanded-
5300 65 6e 64 2d 70 6f 73 29 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 end-pos).....(with-current-buffe
5320 72 20 62 75 66 66 65 72 0a 20 20 20 20 20 20 3b 3b 20 45 78 70 61 6e 64 20 53 54 41 52 54 2d 50 r.buffer.......;;.Expand.START-P
5340 4f 53 20 61 6e 64 20 45 4e 44 2d 50 4f 53 20 74 6f 20 6c 69 6e 65 20 62 6f 75 6e 64 61 72 69 65 OS.and.END-POS.to.line.boundarie
5360 73 2e 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 73 74 61 72 74 2d 70 6f 73 29 0a 20 s........(goto-char.start-pos)..
5380 20 20 20 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 28 .....(beginning-of-line).......(
53a0 73 65 74 71 20 65 78 70 61 6e 64 65 64 2d 73 74 61 72 74 2d 70 6f 73 20 28 70 6f 69 6e 74 29 29 setq.expanded-start-pos.(point))
53c0 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 65 6e 64 2d 70 6f 73 29 0a 20 20 20 20 20 .......(goto-char.end-pos)......
53e0 20 28 65 6e 64 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 65 78 70 61 6e .(end-of-line).......(setq.expan
5400 64 65 64 2d 65 6e 64 2d 70 6f 73 20 28 70 6f 69 6e 74 29 29 0a 0a 20 20 20 20 20 20 3b 3b 20 45 ded-end-pos.(point))........;;.E
5420 78 74 72 61 63 74 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 6c 69 6e 65 20 62 65 66 6f xtract.the.rest.of.the.line.befo
5440 72 65 20 61 6e 64 20 61 66 74 65 72 20 74 68 65 20 73 65 63 74 69 6f 6e 20 77 65 27 72 65 20 69 re.and.after.the.section.we're.i
5460 6e 74 65 72 65 73 74 65 64 20 69 6e 2e 0a 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 62 65 66 6f nterested.in........(let*.((befo
5480 72 65 2d 6d 61 74 63 68 20 28 62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e 67 20 65 78 70 61 6e re-match.(buffer-substring.expan
54a0 64 65 64 2d 73 74 61 72 74 2d 70 6f 73 20 73 74 61 72 74 2d 70 6f 73 29 29 0a 20 20 20 20 20 20 ded-start-pos.start-pos)).......
54c0 20 20 20 20 20 20 20 28 61 66 74 65 72 2d 6d 61 74 63 68 20 28 62 75 66 66 65 72 2d 73 75 62 73 .......(after-match.(buffer-subs
54e0 74 72 69 6e 67 20 65 6e 64 2d 70 6f 73 20 65 78 70 61 6e 64 65 64 2d 65 6e 64 2d 70 6f 73 29 29 tring.end-pos.expanded-end-pos))
5500 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 43 6f 6e 63 61 74 20 74 68 65 20 65 78 74 72 ..............;;.Concat.the.extr
5520 61 20 74 65 78 74 20 77 69 74 68 20 74 68 65 20 61 63 74 75 61 6c 20 6d 61 74 63 68 2c 20 65 6e a.text.with.the.actual.match,.en
5540 73 75 72 69 6e 67 20 77 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 68 69 67 68 6c 69 suring.we..............;;.highli
5560 67 68 74 20 74 68 65 20 6d 61 74 63 68 20 61 73 20 63 6f 64 65 2c 20 62 75 74 20 68 69 67 68 6c ght.the.match.as.code,.but.highl
5580 69 67 68 74 20 74 68 65 20 72 65 73 74 20 61 73 20 61 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 ight.the.rest.as.as.............
55a0 20 3b 3b 20 63 6f 6d 6d 65 6e 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 65 78 74 .;;.comments...............(text
55c0 20 28 63 6f 6e 63 61 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 .(concat.....................(pr
55e0 6f 70 65 72 74 69 7a 65 20 62 65 66 6f 72 65 2d 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 opertize.before-match...........
5600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 66 61 63 65 20 27 66 6f 6e ......................'face.'fon
5620 74 2d 6c 6f 63 6b 2d 63 6f 6d 6d 65 6e 74 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 t-lock-comment-face)............
5640 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 79 6e 74 61 78 2d 68 69 67 .........(elisp-refs--syntax-hig
5660 68 6c 69 67 68 74 20 28 62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e 67 20 73 74 61 72 74 2d 70 hlight.(buffer-substring.start-p
5680 6f 73 20 65 6e 64 2d 70 6f 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 os.end-pos))....................
56a0 20 28 70 72 6f 70 65 72 74 69 7a 65 20 61 66 74 65 72 2d 6d 61 74 63 68 0a 20 20 20 20 20 20 20 .(propertize.after-match........
56c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 66 61 63 65 20 27 .........................'face.'
56e0 66 6f 6e 74 2d 6c 6f 63 6b 2d 63 6f 6d 6d 65 6e 74 2d 66 61 63 65 29 29 29 29 0a 20 20 20 20 20 font-lock-comment-face))))......
5700 20 20 20 28 2d 3e 20 74 65 78 74 0a 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 ...(->.text...........(elisp-ref
5720 73 2d 2d 72 65 70 6c 61 63 65 2d 74 61 62 73 29 0a 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 s--replace-tabs)...........(elis
5740 70 2d 72 65 66 73 2d 2d 75 6e 69 6e 64 65 6e 74 2d 72 69 67 69 64 6c 79 29 0a 20 20 20 20 20 20 p-refs--unindent-rigidly).......
5760 20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65 20 27 65 6c 69 73 70 2d 72 65 66 73 2d 73 74 61 72 ....(propertize.'elisp-refs-star
5780 74 2d 70 6f 73 20 65 78 70 61 6e 64 65 64 2d 73 74 61 72 74 2d 70 6f 73 0a 20 20 20 20 20 20 20 t-pos.expanded-start-pos........
57a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 65 6c 69 73 70 2d 72 65 66 73 2d 70 61 74 68 20 ...............'elisp-refs-path.
57c0 65 6c 69 73 70 2d 72 65 66 73 2d 2d 70 61 74 68 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 elisp-refs--path))))))..(defun.e
57e0 6c 69 73 70 2d 72 65 66 73 2d 2d 66 69 6e 64 2d 66 69 6c 65 20 28 62 75 74 74 6f 6e 29 0a 20 20 lisp-refs--find-file.(button)...
5800 22 4f 70 65 6e 20 74 68 65 20 66 69 6c 65 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 20 42 55 54 "Open.the.file.referenced.by.BUT
5820 54 4f 4e 2e 22 0a 20 20 28 66 69 6e 64 2d 66 69 6c 65 20 28 62 75 74 74 6f 6e 2d 67 65 74 20 62 TON."...(find-file.(button-get.b
5840 75 74 74 6f 6e 20 27 70 61 74 68 29 29 0a 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e utton.'path))...(goto-char.(poin
5860 74 2d 6d 69 6e 29 29 29 0a 0a 28 64 65 66 69 6e 65 2d 62 75 74 74 6f 6e 2d 74 79 70 65 20 27 65 t-min)))..(define-button-type.'e
5880 6c 69 73 70 2d 72 65 66 73 2d 70 61 74 68 2d 62 75 74 74 6f 6e 0a 20 20 27 61 63 74 69 6f 6e 20 lisp-refs-path-button...'action.
58a0 27 65 6c 69 73 70 2d 72 65 66 73 2d 2d 66 69 6e 64 2d 66 69 6c 65 0a 20 20 27 66 6f 6c 6c 6f 77 'elisp-refs--find-file...'follow
58c0 2d 6c 69 6e 6b 20 74 0a 20 20 27 68 65 6c 70 2d 65 63 68 6f 20 22 4f 70 65 6e 20 66 69 6c 65 22 -link.t...'help-echo."Open.file"
58e0 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 70 61 74 68 2d 62 75 74 74 6f )..(defun.elisp-refs--path-butto
5900 6e 20 28 70 61 74 68 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 62 75 74 74 6f 6e 20 74 68 61 74 n.(path)..."Return.a.button.that
5920 20 6e 61 76 69 67 61 74 65 73 20 74 6f 20 50 41 54 48 2e 22 0a 20 20 28 77 69 74 68 2d 74 65 6d .navigates.to.PATH."...(with-tem
5940 70 2d 62 75 66 66 65 72 0a 20 20 20 20 28 69 6e 73 65 72 74 2d 74 65 78 74 2d 62 75 74 74 6f 6e p-buffer.....(insert-text-button
5960 0a 20 20 20 20 20 28 61 62 62 72 65 76 69 61 74 65 2d 66 69 6c 65 2d 6e 61 6d 65 20 70 61 74 68 ......(abbreviate-file-name.path
5980 29 0a 20 20 20 20 20 3a 74 79 70 65 20 27 65 6c 69 73 70 2d 72 65 66 73 2d 70 61 74 68 2d 62 75 )......:type.'elisp-refs-path-bu
59a0 74 74 6f 6e 0a 20 20 20 20 20 27 70 61 74 68 20 70 61 74 68 29 0a 20 20 20 20 28 62 75 66 66 65 tton......'path.path).....(buffe
59c0 72 2d 73 74 72 69 6e 67 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d r-string)))..(defun.elisp-refs--
59e0 64 65 73 63 72 69 62 65 20 28 62 75 74 74 6f 6e 29 0a 20 20 22 53 68 6f 77 20 2a 48 65 6c 70 2a describe.(button)..."Show.*Help*
5a00 20 66 6f 72 20 74 68 65 20 73 79 6d 62 6f 6c 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 20 42 55 .for.the.symbol.referenced.by.BU
5a20 54 54 4f 4e 2e 22 0a 20 20 28 6c 65 74 20 28 28 73 79 6d 62 6f 6c 20 28 62 75 74 74 6f 6e 2d 67 TTON."...(let.((symbol.(button-g
5a40 65 74 20 62 75 74 74 6f 6e 20 27 73 79 6d 62 6f 6c 29 29 0a 20 20 20 20 20 20 20 20 28 6b 69 6e et.button.'symbol)).........(kin
5a60 64 20 28 62 75 74 74 6f 6e 2d 67 65 74 20 62 75 74 74 6f 6e 20 27 6b 69 6e 64 29 29 29 0a 20 20 d.(button-get.button.'kind)))...
5a80 20 20 28 63 6f 6e 64 20 28 28 65 71 20 6b 69 6e 64 20 27 73 79 6d 62 6f 6c 29 0a 20 20 20 20 20 ..(cond.((eq.kind.'symbol)......
5aa0 20 20 20 20 20 20 28 64 65 73 63 72 69 62 65 2d 73 79 6d 62 6f 6c 20 73 79 6d 62 6f 6c 29 29 0a ......(describe-symbol.symbol)).
5ac0 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 6b 69 6e 64 20 27 76 61 72 69 61 62 6c 65 29 0a 20 ..........((eq.kind.'variable)..
5ae0 20 20 20 20 20 20 20 20 20 20 28 64 65 73 63 72 69 62 65 2d 76 61 72 69 61 62 6c 65 20 73 79 6d ..........(describe-variable.sym
5b00 62 6f 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b bol))...........(t............;;
5b20 20 45 6d 61 63 73 20 75 73 65 73 20 60 64 65 73 63 72 69 62 65 2d 66 75 6e 63 74 69 6f 6e 27 20 .Emacs.uses.`describe-function'.
5b40 66 6f 72 20 66 75 6e 63 74 69 6f 6e 73 2c 20 6d 61 63 72 6f 73 20 61 6e 64 0a 20 20 20 20 20 20 for.functions,.macros.and.......
5b60 20 20 20 20 20 3b 3b 20 73 70 65 63 69 61 6c 20 66 6f 72 6d 73 2e 0a 20 20 20 20 20 20 20 20 20 .....;;.special.forms...........
5b80 20 20 28 64 65 73 63 72 69 62 65 2d 66 75 6e 63 74 69 6f 6e 20 73 79 6d 62 6f 6c 29 29 29 29 29 ..(describe-function.symbol)))))
5ba0 0a 0a 28 64 65 66 69 6e 65 2d 62 75 74 74 6f 6e 2d 74 79 70 65 20 27 65 6c 69 73 70 2d 72 65 66 ..(define-button-type.'elisp-ref
5bc0 73 2d 64 65 73 63 72 69 62 65 2d 62 75 74 74 6f 6e 0a 20 20 27 61 63 74 69 6f 6e 20 27 65 6c 69 s-describe-button...'action.'eli
5be0 73 70 2d 72 65 66 73 2d 2d 64 65 73 63 72 69 62 65 0a 20 20 27 66 6f 6c 6c 6f 77 2d 6c 69 6e 6b sp-refs--describe...'follow-link
5c00 20 74 0a 20 20 27 68 65 6c 70 2d 65 63 68 6f 20 22 44 65 73 63 72 69 62 65 22 29 0a 0a 28 64 65 .t...'help-echo."Describe")..(de
5c20 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 64 65 73 63 72 69 62 65 2d 62 75 74 74 6f 6e 20 fun.elisp-refs--describe-button.
5c40 28 73 79 6d 62 6f 6c 20 6b 69 6e 64 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 62 75 74 74 6f 6e (symbol.kind)..."Return.a.button
5c60 20 74 68 61 74 20 73 68 6f 77 73 20 2a 48 65 6c 70 2a 20 66 6f 72 20 53 59 4d 42 4f 4c 2e 0a 4b .that.shows.*Help*.for.SYMBOL..K
5c80 49 4e 44 20 73 68 6f 75 6c 64 20 62 65 20 27 66 75 6e 63 74 69 6f 6e 2c 20 27 6d 61 63 72 6f 2c IND.should.be.'function,.'macro,
5ca0 20 27 76 61 72 69 61 62 6c 65 2c 20 27 73 70 65 63 69 61 6c 20 6f 72 20 27 73 79 6d 62 6f 6c 2e .'variable,.'special.or.'symbol.
5cc0 22 0a 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 28 69 6e 73 65 72 "...(with-temp-buffer.....(inser
5ce0 74 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6b 69 6e 64 29 20 22 20 22 29 0a 20 20 20 20 28 69 t.(symbol-name.kind).".").....(i
5d00 6e 73 65 72 74 2d 74 65 78 74 2d 62 75 74 74 6f 6e 0a 20 20 20 20 20 28 73 79 6d 62 6f 6c 2d 6e nsert-text-button......(symbol-n
5d20 61 6d 65 20 73 79 6d 62 6f 6c 29 0a 20 20 20 20 20 3a 74 79 70 65 20 27 65 6c 69 73 70 2d 72 65 ame.symbol)......:type.'elisp-re
5d40 66 73 2d 64 65 73 63 72 69 62 65 2d 62 75 74 74 6f 6e 0a 20 20 20 20 20 27 73 79 6d 62 6f 6c 20 fs-describe-button......'symbol.
5d60 73 79 6d 62 6f 6c 0a 20 20 20 20 20 27 6b 69 6e 64 20 6b 69 6e 64 29 0a 20 20 20 20 28 62 75 66 symbol......'kind.kind).....(buf
5d80 66 65 72 2d 73 74 72 69 6e 67 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 fer-string)))..(defun.elisp-refs
5da0 2d 2d 70 6c 75 72 61 6c 69 7a 65 20 28 6e 75 6d 62 65 72 20 74 68 69 6e 67 29 0a 20 20 22 48 75 --pluralize.(number.thing)..."Hu
5dc0 6d 61 6e 2d 66 72 69 65 6e 64 6c 79 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 4e 55 4d 42 man-friendly.description.of.NUMB
5de0 45 52 20 6f 63 63 75 72 72 65 6e 63 65 73 20 6f 66 20 54 48 49 4e 47 2e 22 0a 20 20 28 66 6f 72 ER.occurrences.of.THING."...(for
5e00 6d 61 74 20 22 25 73 20 25 73 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 mat."%s.%s%s"...........(elisp-r
5e20 65 66 73 2d 2d 66 6f 72 6d 61 74 2d 69 6e 74 20 6e 75 6d 62 65 72 29 0a 20 20 20 20 20 20 20 20 efs--format-int.number).........
5e40 20 20 74 68 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 65 71 75 61 6c 20 6e 75 6d ..thing...........(if.(equal.num
5e60 62 65 72 20 31 29 20 22 22 20 22 73 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 ber.1).""."s")))..(defun.elisp-r
5e80 65 66 73 2d 2d 66 6f 72 6d 61 74 2d 63 6f 75 6e 74 20 28 73 79 6d 62 6f 6c 20 72 65 66 2d 63 6f efs--format-count.(symbol.ref-co
5ea0 75 6e 74 20 66 69 6c 65 2d 63 6f 75 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 unt.file-count..................
5ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 61 72 63 68 65 64 2d .......................searched-
5ee0 66 69 6c 65 2d 63 6f 75 6e 74 20 70 72 65 66 69 78 29 0a 20 20 28 6c 65 74 2a 20 28 28 66 69 6c file-count.prefix)...(let*.((fil
5f00 65 2d 73 74 72 20 28 69 66 20 28 7a 65 72 6f 70 20 66 69 6c 65 2d 63 6f 75 6e 74 29 0a 20 20 20 e-str.(if.(zerop.file-count)....
5f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 22 0a 20 20 20 20 20 20 20 20 20 ....................""..........
5f40 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 20 69 6e 20 25 73 22 20 28 65 6c ............(format.".in.%s".(el
5f60 69 73 70 2d 72 65 66 73 2d 2d 70 6c 75 72 61 6c 69 7a 65 20 66 69 6c 65 2d 63 6f 75 6e 74 20 22 isp-refs--pluralize.file-count."
5f80 66 69 6c 65 22 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 6f 75 6e 64 2d 73 74 72 20 28 66 file"))))..........(found-str.(f
5fa0 6f 72 6d 61 74 20 22 46 6f 75 6e 64 20 25 73 20 74 6f 20 25 73 25 73 2e 22 0a 20 20 20 20 20 20 ormat."Found.%s.to.%s%s.".......
5fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 ......................(elisp-ref
5fe0 73 2d 2d 70 6c 75 72 61 6c 69 7a 65 20 72 65 66 2d 63 6f 75 6e 74 20 22 72 65 66 65 72 65 6e 63 s--pluralize.ref-count."referenc
6000 65 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e").............................
6020 73 79 6d 62 6f 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 symbol..........................
6040 20 20 20 66 69 6c 65 2d 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 65 61 72 63 68 65 64 ...file-str))..........(searched
6060 2d 73 74 72 20 28 69 66 20 70 72 65 66 69 78 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -str.(if.prefix.................
6080 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 53 65 61 72 63 68 65 64 20 25 73 20 ...........(format."Searched.%s.
60a0 69 6e 20 25 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 in.%s.".........................
60c0 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 70 6c 75 72 61 6c 69 7a ...........(elisp-refs--pluraliz
60e0 65 20 73 65 61 72 63 68 65 64 2d 66 69 6c 65 2d 63 6f 75 6e 74 20 22 6c 6f 61 64 65 64 20 66 69 e.searched-file-count."loaded.fi
6100 6c 65 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 le")............................
6120 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 70 61 74 68 2d 62 75 74 74 6f 6e ........(elisp-refs--path-button
6140 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 61 73 2d 64 69 72 65 63 74 6f 72 79 20 70 72 65 66 69 78 29 .(file-name-as-directory.prefix)
6160 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 ))..........................(for
6180 6d 61 74 20 22 53 65 61 72 63 68 65 64 20 61 6c 6c 20 25 73 20 6c 6f 61 64 65 64 20 69 6e 20 45 mat."Searched.all.%s.loaded.in.E
61a0 6d 61 63 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 macs."..........................
61c0 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 70 6c 75 72 61 6c 69 7a 65 20 73 ........(elisp-refs--pluralize.s
61e0 65 61 72 63 68 65 64 2d 66 69 6c 65 2d 63 6f 75 6e 74 20 22 66 69 6c 65 22 29 29 29 29 29 0a 20 earched-file-count."file")))))..
6200 20 20 20 28 73 2d 77 6f 72 64 2d 77 72 61 70 20 37 30 20 28 66 6f 72 6d 61 74 20 22 25 73 20 25 ...(s-word-wrap.70.(format."%s.%
6220 73 22 20 66 6f 75 6e 64 2d 73 74 72 20 73 65 61 72 63 68 65 64 2d 73 74 72 29 29 29 29 0a 0a 3b s".found-str.searched-str))))..;
6240 3b 20 54 4f 44 4f 3a 20 69 66 20 77 65 20 68 61 76 65 20 6d 75 6c 74 69 70 6c 65 20 6d 61 74 63 ;.TODO:.if.we.have.multiple.matc
6260 68 65 73 20 6f 6e 20 6f 6e 65 20 6c 69 6e 65 2c 20 77 65 20 72 65 70 65 61 74 65 64 6c 79 20 73 hes.on.one.line,.we.repeatedly.s
6280 68 6f 77 0a 3b 3b 20 74 68 61 74 20 6c 69 6e 65 2e 20 54 68 61 74 27 73 20 73 6c 69 67 68 74 6c how.;;.that.line..That's.slightl
62a0 79 20 63 6f 6e 66 75 73 69 6e 67 2e 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d y.confusing..(defun.elisp-refs--
62c0 73 68 6f 77 2d 72 65 73 75 6c 74 73 20 28 73 79 6d 62 6f 6c 20 64 65 73 63 72 69 70 74 69 6f 6e show-results.(symbol.description
62e0 20 72 65 73 75 6c 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .results........................
6300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 61 72 63 68 65 64 2d 66 69 6c 65 2d 63 .................searched-file-c
6320 6f 75 6e 74 20 70 72 65 66 69 78 29 0a 20 20 22 47 69 76 65 6e 20 61 20 52 45 53 55 4c 54 53 20 ount.prefix)..."Given.a.RESULTS.
6340 6c 69 73 74 20 77 68 65 72 65 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 74 61 6b 65 73 20 74 68 list.where.each.element.takes.th
6360 65 20 66 6f 72 6d 20 5c 28 66 6f 72 6d 73 20 2e 20 62 75 66 66 65 72 5c 29 2c 0a 72 65 6e 64 65 e.form.\(forms...buffer\),.rende
6380 72 20 61 20 66 72 69 65 6e 64 6c 79 20 72 65 73 75 6c 74 73 20 62 75 66 66 65 72 2e 22 0a 20 20 r.a.friendly.results.buffer."...
63a0 28 6c 65 74 20 28 28 62 75 66 20 28 67 65 74 2d 62 75 66 66 65 72 2d 63 72 65 61 74 65 20 28 66 (let.((buf.(get-buffer-create.(f
63c0 6f 72 6d 61 74 20 22 2a 72 65 66 73 3a 20 25 73 2a 22 20 73 79 6d 62 6f 6c 29 29 29 29 0a 20 20 ormat."*refs:.%s*".symbol))))...
63e0 20 20 28 73 77 69 74 63 68 2d 74 6f 2d 62 75 66 66 65 72 20 62 75 66 29 0a 20 20 20 20 28 6c 65 ..(switch-to-buffer.buf).....(le
6400 74 20 28 28 69 6e 68 69 62 69 74 2d 72 65 61 64 2d 6f 6e 6c 79 20 74 29 29 0a 20 20 20 20 20 20 t.((inhibit-read-only.t)).......
6420 28 65 72 61 73 65 2d 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 (erase-buffer).......(save-excur
6440 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 3b 3b 20 49 6e 73 65 72 74 20 74 68 65 20 68 65 61 64 65 sion.........;;.Insert.the.heade
6460 72 2e 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 0a 20 20 20 20 20 20 20 20 20 28 65 6c 69 r..........(insert..........(eli
6480 73 70 2d 72 65 66 73 2d 2d 66 6f 72 6d 61 74 2d 63 6f 75 6e 74 0a 20 20 20 20 20 20 20 20 20 20 sp-refs--format-count...........
64a0 64 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 28 2d 73 75 6d 20 28 2d 2d 6d description...........(-sum.(--m
64c0 61 70 20 28 6c 65 6e 67 74 68 20 28 63 61 72 20 69 74 29 29 20 72 65 73 75 6c 74 73 29 29 0a 20 ap.(length.(car.it)).results))..
64e0 20 20 20 20 20 20 20 20 20 28 6c 65 6e 67 74 68 20 72 65 73 75 6c 74 73 29 0a 20 20 20 20 20 20 .........(length.results).......
6500 20 20 20 20 73 65 61 72 63 68 65 64 2d 66 69 6c 65 2d 63 6f 75 6e 74 0a 20 20 20 20 20 20 20 20 ....searched-file-count.........
6520 20 20 70 72 65 66 69 78 29 0a 20 20 20 20 20 20 20 20 20 22 5c 6e 5c 6e 22 29 0a 20 20 20 20 20 ..prefix).........."\n\n")......
6540 20 20 20 3b 3b 20 49 6e 73 65 72 74 20 74 68 65 20 72 65 73 75 6c 74 73 2e 0a 20 20 20 20 20 20 ...;;.Insert.the.results........
6560 20 20 28 2d 2d 65 61 63 68 20 72 65 73 75 6c 74 73 0a 20 20 20 20 20 20 20 20 20 20 28 2d 6c 65 ..(--each.results...........(-le
6580 74 2a 20 28 28 28 66 6f 72 6d 73 20 2e 20 62 75 66 29 20 69 74 29 0a 20 20 20 20 20 20 20 20 20 t*.(((forms...buf).it)..........
65a0 20 20 20 20 20 20 20 20 20 28 70 61 74 68 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 .........(path.(with-current-buf
65c0 66 65 72 20 62 75 66 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 70 61 74 68 29 29 29 0a 20 20 20 20 fer.buf.elisp-refs--path))).....
65e0 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 ........(insert..............(pr
6600 6f 70 65 72 74 69 7a 65 20 22 46 69 6c 65 3a 20 22 20 27 66 61 63 65 20 27 62 6f 6c 64 29 0a 20 opertize."File:.".'face.'bold)..
6620 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 70 61 74 68 2d 62 75 ............(elisp-refs--path-bu
6640 74 74 6f 6e 20 70 61 74 68 29 20 22 5c 6e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 2d 2d tton.path)."\n").............(--
6660 65 61 63 68 20 66 6f 72 6d 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2d 6c 65 74 20 5b each.forms...............(-let.[
6680 28 5f 20 73 74 61 72 74 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 29 20 69 74 5d 0a 20 20 20 20 20 20 (_.start-pos.end-pos).it].......
66a0 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 63 ..........(insert.(elisp-refs--c
66c0 6f 6e 74 61 69 6e 69 6e 67 2d 6c 69 6e 65 73 20 62 75 66 20 73 74 61 72 74 2d 70 6f 73 20 65 6e ontaining-lines.buf.start-pos.en
66e0 64 2d 70 6f 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 d-pos)........................."
6700 5c 6e 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 22 5c 6e 22 29 \n"))).............(insert."\n")
6720 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 50 72 65 70 61 72 65 20 74 68 65 20 62 75 66 66 65 72 )).........;;.Prepare.the.buffer
6740 20 66 6f 72 20 74 68 65 20 75 73 65 72 2e 0a 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 .for.the.user..........(elisp-re
6760 66 73 2d 6d 6f 64 65 29 29 29 0a 20 20 20 20 3b 3b 20 43 6c 65 61 6e 75 70 20 62 75 66 66 65 72 fs-mode))).....;;.Cleanup.buffer
6780 73 20 63 72 65 61 74 65 64 20 77 68 65 6e 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 72 65 73 75 s.created.when.highlighting.resu
67a0 6c 74 73 2e 0a 20 20 20 20 28 77 68 65 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 68 69 67 68 6c lts......(when.elisp-refs--highl
67c0 69 67 68 74 69 6e 67 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 ighting-buffer.......(kill-buffe
67e0 72 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 68 69 67 68 6c 69 67 68 74 69 6e 67 2d 62 75 66 66 65 r.elisp-refs--highlighting-buffe
6800 72 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 6c 6f 61 64 65 64 r))))..(defun.elisp-refs--loaded
6820 2d 62 75 66 73 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 6f 70 65 -bufs.()..."Return.a.list.of.ope
6840 6e 20 62 75 66 66 65 72 73 2c 20 6f 6e 65 20 66 6f 72 20 65 61 63 68 20 70 61 74 68 20 69 6e 20 n.buffers,.one.for.each.path.in.
6860 60 6c 6f 61 64 2d 70 61 74 68 27 2e 22 0a 20 20 28 6d 61 70 63 61 72 20 23 27 65 6c 69 73 70 2d `load-path'."...(mapcar.#'elisp-
6880 72 65 66 73 2d 2d 63 6f 6e 74 65 6e 74 73 2d 62 75 66 66 65 72 20 28 65 6c 69 73 70 2d 72 65 66 refs--contents-buffer.(elisp-ref
68a0 73 2d 2d 6c 6f 61 64 65 64 2d 70 61 74 68 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 s--loaded-paths)))..(defun.elisp
68c0 2d 72 65 66 73 2d 2d 73 65 61 72 63 68 2d 31 20 28 62 75 66 73 20 6d 61 74 63 68 2d 66 6e 29 0a -refs--search-1.(bufs.match-fn).
68e0 20 20 22 43 61 6c 6c 20 4d 41 54 43 48 2d 46 4e 20 6f 6e 20 65 61 63 68 20 62 75 66 66 65 72 20 .."Call.MATCH-FN.on.each.buffer.
6900 69 6e 20 42 55 46 53 2c 20 72 65 70 6f 72 74 69 6e 67 20 70 72 6f 67 72 65 73 73 0a 61 6e 64 20 in.BUFS,.reporting.progress.and.
6920 61 63 63 75 6d 75 6c 61 74 69 6e 67 20 72 65 73 75 6c 74 73 2e 0a 0a 42 55 46 53 20 73 68 6f 75 accumulating.results...BUFS.shou
6940 6c 64 20 62 65 20 64 69 73 70 6f 73 61 62 6c 65 3a 20 77 65 20 6d 61 6b 65 20 6e 6f 20 65 66 66 ld.be.disposable:.we.make.no.eff
6960 6f 72 74 20 74 6f 20 70 72 65 73 65 72 76 65 20 74 68 65 69 72 0a 73 74 61 74 65 20 64 75 72 69 ort.to.preserve.their.state.duri
6980 6e 67 20 73 65 61 72 63 68 69 6e 67 2e 0a 0a 4d 41 54 43 48 2d 46 4e 20 73 68 6f 75 6c 64 20 72 ng.searching...MATCH-FN.should.r
69a0 65 74 75 72 6e 20 61 20 6c 69 73 74 20 77 68 65 72 65 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 eturn.a.list.where.each.element.
69c0 74 61 6b 65 73 20 74 68 65 20 66 6f 72 6d 3a 0a 5c 28 66 6f 72 6d 20 73 74 61 72 74 2d 70 6f 73 takes.the.form:.\(form.start-pos
69e0 20 65 6e 64 2d 70 6f 73 29 2e 22 0a 20 20 28 6c 65 74 2a 20 28 3b 3b 20 4f 75 72 20 62 65 6e 63 .end-pos)."...(let*.(;;.Our.benc
6a00 68 6d 61 72 6b 20 73 75 67 67 65 73 74 73 20 77 65 20 73 70 65 6e 64 20 61 20 6c 6f 74 20 6f 66 hmark.suggests.we.spend.a.lot.of
6a20 20 74 69 6d 65 20 69 6e 20 47 43 2c 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 70 65 72 .time.in.GC,.and..........;;.per
6a40 66 6f 72 6d 61 6e 63 65 20 69 6d 70 72 6f 76 65 73 20 69 66 20 77 65 20 47 43 20 6c 65 73 73 20 formance.improves.if.we.GC.less.
6a60 66 72 65 71 75 65 6e 74 6c 79 2e 0a 20 20 20 20 20 20 20 20 20 28 67 63 2d 63 6f 6e 73 2d 70 65 frequently...........(gc-cons-pe
6a80 72 63 65 6e 74 61 67 65 20 30 2e 38 29 0a 20 20 20 20 20 20 20 20 20 28 74 6f 74 61 6c 2d 62 75 rcentage.0.8)..........(total-bu
6aa0 66 73 20 28 6c 65 6e 67 74 68 20 62 75 66 73 29 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 73 65 fs.(length.bufs))).....(let.((se
6ac0 61 72 63 68 65 64 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 73 2d 61 6e 64 2d 62 arched.0)...........(forms-and-b
6ae0 75 66 73 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 62 75 66 20 62 75 66 ufs.nil)).......(dolist.(buf.buf
6b00 73 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 6d 61 74 63 68 69 6e 67 2d 66 6f 72 6d s).........(let*.((matching-form
6b20 73 20 28 66 75 6e 63 61 6c 6c 20 6d 61 74 63 68 2d 66 6e 20 62 75 66 29 29 29 0a 20 20 20 20 20 s.(funcall.match-fn.buf)))......
6b40 20 20 20 20 20 3b 3b 20 49 66 20 74 68 65 72 65 20 77 65 72 65 20 61 6e 79 20 6d 61 74 63 68 65 .....;;.If.there.were.any.matche
6b60 73 20 69 6e 20 74 68 69 73 20 62 75 66 66 65 72 2c 20 70 75 73 68 20 74 68 65 0a 20 20 20 20 20 s.in.this.buffer,.push.the......
6b80 20 20 20 20 20 3b 3b 20 6d 61 74 63 68 65 73 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 62 .....;;.matches.along.with.the.b
6ba0 75 66 66 65 72 20 69 6e 74 6f 20 6f 75 72 20 72 65 73 75 6c 74 73 0a 20 20 20 20 20 20 20 20 20 uffer.into.our.results..........
6bc0 20 3b 3b 20 6c 69 73 74 2e 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 6d 61 74 63 68 69 .;;.list............(when.matchi
6be0 6e 67 2d 66 6f 72 6d 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 63 6f 6e 73 ng-forms.............(push.(cons
6c00 20 6d 61 74 63 68 69 6e 67 2d 66 6f 72 6d 73 20 62 75 66 29 20 66 6f 72 6d 73 2d 61 6e 64 2d 62 .matching-forms.buf).forms-and-b
6c20 75 66 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 47 69 76 65 20 66 65 65 64 62 61 63 6b ufs))...........;;.Give.feedback
6c40 20 74 6f 20 74 68 65 20 75 73 65 72 20 6f 6e 20 6f 75 72 20 70 72 6f 67 72 65 73 73 2c 20 62 65 .to.the.user.on.our.progress,.be
6c60 63 61 75 73 65 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 65 61 72 63 68 69 6e 67 20 74 61 6b cause...........;;.searching.tak
6c80 65 73 20 73 65 76 65 72 61 6c 20 73 65 63 6f 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 28 77 es.several.seconds............(w
6ca0 68 65 6e 20 28 61 6e 64 20 28 7a 65 72 6f 70 20 28 6d 6f 64 20 73 65 61 72 63 68 65 64 20 31 30 hen.(and.(zerop.(mod.searched.10
6cc0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 69 73 70 2d 72 65 ))......................elisp-re
6ce0 66 73 2d 76 65 72 62 6f 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 fs-verbose).............(message
6d00 20 22 53 65 61 72 63 68 65 64 20 25 73 2f 25 73 20 66 69 6c 65 73 22 20 73 65 61 72 63 68 65 64 ."Searched.%s/%s.files".searched
6d20 20 74 6f 74 61 6c 2d 62 75 66 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66 .total-bufs))...........(cl-incf
6d40 20 73 65 61 72 63 68 65 64 29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 65 6c 69 73 70 2d 72 .searched))).......(when.elisp-r
6d60 65 66 73 2d 76 65 72 62 6f 73 65 0a 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 53 65 efs-verbose.........(message."Se
6d80 61 72 63 68 65 64 20 25 73 2f 25 73 20 66 69 6c 65 73 22 20 74 6f 74 61 6c 2d 62 75 66 73 20 74 arched.%s/%s.files".total-bufs.t
6da0 6f 74 61 6c 2d 62 75 66 73 29 29 0a 20 20 20 20 20 20 66 6f 72 6d 73 2d 61 6e 64 2d 62 75 66 73 otal-bufs)).......forms-and-bufs
6dc0 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 65 61 72 63 68 20 28 )))..(defun.elisp-refs--search.(
6de0 73 79 6d 62 6f 6c 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6d 61 74 63 68 2d 66 6e 20 26 6f 70 74 symbol.description.match-fn.&opt
6e00 69 6f 6e 61 6c 20 70 61 74 68 2d 70 72 65 66 69 78 29 0a 20 20 22 46 69 6e 64 20 72 65 66 65 72 ional.path-prefix)..."Find.refer
6e20 65 6e 63 65 73 20 74 6f 20 53 59 4d 42 4f 4c 20 69 6e 20 61 6c 6c 20 6c 6f 61 64 65 64 20 66 69 ences.to.SYMBOL.in.all.loaded.fi
6e40 6c 65 73 3b 20 63 61 6c 6c 20 4d 41 54 43 48 2d 46 4e 20 6f 6e 20 65 61 63 68 20 62 75 66 66 65 les;.call.MATCH-FN.on.each.buffe
6e60 72 2e 0a 57 68 65 6e 20 50 41 54 48 2d 50 52 45 46 49 58 2c 20 6c 69 6d 69 74 20 74 6f 20 6c 6f r..When.PATH-PREFIX,.limit.to.lo
6e80 61 64 65 64 20 66 69 6c 65 73 20 77 68 6f 73 65 20 70 61 74 68 20 73 74 61 72 74 73 20 77 69 74 aded.files.whose.path.starts.wit
6ea0 68 20 74 68 61 74 20 70 72 65 66 69 78 2e 0a 0a 44 69 73 70 6c 61 79 20 74 68 65 20 72 65 73 75 h.that.prefix...Display.the.resu
6ec0 6c 74 73 20 69 6e 20 61 20 68 79 70 65 72 6c 69 6e 6b 65 64 20 62 75 66 66 65 72 2e 0a 0a 4d 41 lts.in.a.hyperlinked.buffer...MA
6ee0 54 43 48 2d 46 4e 20 73 68 6f 75 6c 64 20 72 65 74 75 72 6e 20 61 20 6c 69 73 74 20 77 68 65 72 TCH-FN.should.return.a.list.wher
6f00 65 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 74 61 6b 65 73 20 74 68 65 20 66 6f 72 6d 3a 0a 5c e.each.element.takes.the.form:.\
6f20 28 66 6f 72 6d 20 73 74 61 72 74 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 29 2e 22 0a 20 20 28 6c 65 (form.start-pos.end-pos)."...(le
6f40 74 2a 20 28 28 6c 6f 61 64 65 64 2d 70 61 74 68 73 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 6c t*.((loaded-paths.(elisp-refs--l
6f60 6f 61 64 65 64 2d 70 61 74 68 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 6d 61 74 63 68 69 6e 67 oaded-paths))..........(matching
6f80 2d 70 61 74 68 73 20 28 69 66 20 70 61 74 68 2d 70 72 65 66 69 78 0a 20 20 20 20 20 20 20 20 20 -paths.(if.path-prefix..........
6fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2d 2d 66 69 6c 74 65 72 20 28 73 ....................(--filter.(s
6fc0 2d 73 74 61 72 74 73 2d 77 69 74 68 3f 20 70 61 74 68 2d 70 72 65 66 69 78 20 69 74 29 20 6c 6f -starts-with?.path-prefix.it).lo
6fe0 61 64 65 64 2d 70 61 74 68 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 aded-paths).....................
7000 20 20 20 20 20 20 20 6c 6f 61 64 65 64 2d 70 61 74 68 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 .......loaded-paths))..........(
7020 6c 6f 61 64 65 64 2d 73 72 63 2d 62 75 66 73 20 28 6d 61 70 63 61 72 20 23 27 65 6c 69 73 70 2d loaded-src-bufs.(mapcar.#'elisp-
7040 72 65 66 73 2d 2d 63 6f 6e 74 65 6e 74 73 2d 62 75 66 66 65 72 20 6d 61 74 63 68 69 6e 67 2d 70 refs--contents-buffer.matching-p
7060 61 74 68 73 29 29 29 0a 20 20 20 20 3b 3b 20 55 73 65 20 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 aths))).....;;.Use.unwind-protec
7080 74 20 74 6f 20 65 6e 73 75 72 65 20 77 65 20 61 6c 77 61 79 73 20 63 6c 65 61 6e 75 70 20 74 65 t.to.ensure.we.always.cleanup.te
70a0 6d 70 6f 72 61 72 79 0a 20 20 20 20 3b 3b 20 62 75 66 66 65 72 73 2c 20 65 76 65 6e 20 69 66 20 mporary.....;;.buffers,.even.if.
70c0 74 68 65 20 75 73 65 72 20 68 69 74 73 20 43 2d 67 2e 0a 20 20 20 20 28 75 6e 77 69 6e 64 2d 70 the.user.hits.C-g......(unwind-p
70e0 72 6f 74 65 63 74 0a 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 rotect.........(progn...........
7100 28 6c 65 74 20 28 28 66 6f 72 6d 73 2d 61 6e 64 2d 62 75 66 73 0a 20 20 20 20 20 20 20 20 20 20 (let.((forms-and-bufs...........
7120 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 65 61 72 63 68 2d 31 20 6c 6f 61 .......(elisp-refs--search-1.loa
7140 64 65 64 2d 73 72 63 2d 62 75 66 73 20 6d 61 74 63 68 2d 66 6e 29 29 29 0a 20 20 20 20 20 20 20 ded-src-bufs.match-fn)))........
7160 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 68 6f 77 2d 72 65 73 75 6c 74 73 20 73 .....(elisp-refs--show-results.s
7180 79 6d 62 6f 6c 20 64 65 73 63 72 69 70 74 69 6f 6e 20 66 6f 72 6d 73 2d 61 6e 64 2d 62 75 66 73 ymbol.description.forms-and-bufs
71a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
71c0 20 20 20 20 20 20 20 28 6c 65 6e 67 74 68 20 6c 6f 61 64 65 64 2d 73 72 63 2d 62 75 66 73 29 20 .......(length.loaded-src-bufs).
71e0 70 61 74 68 2d 70 72 65 66 69 78 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 43 6c 65 61 6e 20 75 70 path-prefix))).......;;.Clean.up
7200 20 74 65 6d 70 6f 72 61 72 79 20 62 75 66 66 65 72 73 2e 0a 20 20 20 20 20 20 28 2d 2d 65 61 63 .temporary.buffers........(--eac
7220 68 20 6c 6f 61 64 65 64 2d 73 72 63 2d 62 75 66 73 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 20 69 h.loaded-src-bufs.(kill-buffer.i
7240 74 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 2d 63 6f 6d 70 6c t)))))..(defun.elisp-refs--compl
7260 65 74 69 6e 67 2d 72 65 61 64 2d 73 79 6d 62 6f 6c 20 28 70 72 6f 6d 70 74 20 26 6f 70 74 69 6f eting-read-symbol.(prompt.&optio
7280 6e 61 6c 20 66 69 6c 74 65 72 29 0a 20 20 22 52 65 61 64 20 61 6e 20 69 6e 74 65 72 6e 65 64 20 nal.filter)..."Read.an.interned.
72a0 73 79 6d 62 6f 6c 20 66 72 6f 6d 20 74 68 65 20 6d 69 6e 69 62 75 66 66 65 72 2c 0a 64 65 66 61 symbol.from.the.minibuffer,.defa
72c0 75 6c 74 69 6e 67 20 74 6f 20 74 68 65 20 73 79 6d 62 6f 6c 20 61 74 20 70 6f 69 6e 74 2e 20 50 ulting.to.the.symbol.at.point..P
72e0 52 4f 4d 50 54 20 69 73 20 74 68 65 20 73 74 72 69 6e 67 20 74 6f 20 70 72 6f 6d 70 74 0a 77 69 ROMPT.is.the.string.to.prompt.wi
7300 74 68 2e 0a 0a 49 66 20 46 49 4c 54 45 52 20 69 73 20 67 69 76 65 6e 2c 20 6f 6e 6c 79 20 6f 66 th...If.FILTER.is.given,.only.of
7320 66 65 72 20 73 79 6d 62 6f 6c 73 20 77 68 65 72 65 20 28 46 49 4c 54 45 52 20 73 79 6d 29 20 72 fer.symbols.where.(FILTER.sym).r
7340 65 74 75 72 6e 73 0a 74 2e 22 0a 20 20 28 6c 65 74 20 28 28 66 69 6c 74 65 72 20 28 6f 72 20 66 eturns.t."...(let.((filter.(or.f
7360 69 6c 74 65 72 20 28 6c 61 6d 62 64 61 20 28 5f 29 20 74 29 29 29 29 0a 20 20 20 20 28 72 65 61 ilter.(lambda.(_).t)))).....(rea
7380 64 0a 20 20 20 20 20 28 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 20 70 72 6f 6d 70 74 0a 20 d......(completing-read.prompt..
73a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 .....................(elisp-refs
73c0 2d 2d 66 69 6c 74 65 72 2d 6f 62 61 72 72 61 79 20 66 69 6c 74 65 72 29 0a 20 20 20 20 20 20 20 --filter-obarray.filter)........
73e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 0a 20 ...............nil.nil.nil.nil..
7400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2d 69 66 2d 6c 65 74 20 28 73 .....................(-if-let.(s
7420 79 6d 20 28 74 68 69 6e 67 2d 61 74 2d 70 6f 69 6e 74 20 27 73 79 6d 62 6f 6c 29 29 0a 20 20 20 ym.(thing-at-point.'symbol))....
7440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 66 75 .......................(when.(fu
7460 6e 63 61 6c 6c 20 66 69 6c 74 65 72 20 28 72 65 61 64 20 73 79 6d 29 29 0a 20 20 20 20 20 20 20 ncall.filter.(read.sym))........
7480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 79 6d 29 29 29 29 29 29 0a 0a .....................sym))))))..
74a0 3b 3b 3b 20 43 6f 6d 6d 61 6e 64 73 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 ;;;.Commands..;;;###autoload.(de
74c0 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 66 75 6e 63 74 69 6f 6e 20 28 73 79 6d 62 6f 6c 20 fun.elisp-refs-function.(symbol.
74e0 26 6f 70 74 69 6f 6e 61 6c 20 70 61 74 68 2d 70 72 65 66 69 78 29 0a 20 20 22 44 69 73 70 6c 61 &optional.path-prefix)..."Displa
7500 79 20 61 6c 6c 20 74 68 65 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f 20 66 75 6e 63 74 69 6f 6e y.all.the.references.to.function
7520 20 53 59 4d 42 4f 4c 2c 20 69 6e 20 61 6c 6c 20 6c 6f 61 64 65 64 0a 65 6c 69 73 70 20 66 69 6c .SYMBOL,.in.all.loaded.elisp.fil
7540 65 73 2e 0a 0a 49 66 20 63 61 6c 6c 65 64 20 77 69 74 68 20 61 20 70 72 65 66 69 78 2c 20 70 72 es...If.called.with.a.prefix,.pr
7560 6f 6d 70 74 20 66 6f 72 20 61 20 64 69 72 65 63 74 6f 72 79 20 74 6f 20 6c 69 6d 69 74 20 74 68 ompt.for.a.directory.to.limit.th
7580 65 20 73 65 61 72 63 68 2e 0a 0a 54 68 69 73 20 73 65 61 72 63 68 65 73 20 66 6f 72 20 66 75 6e e.search...This.searches.for.fun
75a0 63 74 69 6f 6e 73 2c 20 6e 6f 74 20 6d 61 63 72 6f 73 2e 20 46 6f 72 20 74 68 61 74 2c 20 73 65 ctions,.not.macros..For.that,.se
75c0 65 0a 60 65 6c 69 73 70 2d 72 65 66 73 2d 6d 61 63 72 6f 27 2e 22 0a 20 20 28 69 6e 74 65 72 61 e.`elisp-refs-macro'."...(intera
75e0 63 74 69 76 65 0a 20 20 20 28 6c 69 73 74 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 63 6f 6d 70 ctive....(list.(elisp-refs--comp
7600 6c 65 74 69 6e 67 2d 72 65 61 64 2d 73 79 6d 62 6f 6c 20 22 46 75 6e 63 74 69 6f 6e 3a 20 22 20 leting-read-symbol."Function:.".
7620 23 27 66 75 6e 63 74 69 6f 6e 70 29 0a 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 63 75 72 72 #'functionp)..........(when.curr
7640 65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 0a 20 20 20 20 20 20 20 20 20 20 20 28 72 65 61 64 2d ent-prefix-arg............(read-
7660 64 69 72 65 63 74 6f 72 79 2d 6e 61 6d 65 20 22 4c 69 6d 69 74 20 73 65 61 72 63 68 20 74 6f 20 directory-name."Limit.search.to.
7680 6c 6f 61 64 65 64 20 66 69 6c 65 73 20 69 6e 3a 20 22 29 29 29 29 0a 20 20 28 77 68 65 6e 20 28 loaded.files.in:."))))...(when.(
76a0 6e 6f 74 20 28 66 75 6e 63 74 69 6f 6e 70 20 73 79 6d 62 6f 6c 29 29 0a 20 20 20 20 28 69 66 20 not.(functionp.symbol)).....(if.
76c0 28 6d 61 63 72 6f 70 20 73 79 6d 62 6f 6c 29 0a 20 20 20 20 20 20 20 20 28 75 73 65 72 2d 65 72 (macrop.symbol).........(user-er
76e0 72 6f 72 20 22 25 73 20 69 73 20 61 20 6d 61 63 72 6f 2e 20 44 69 64 20 79 6f 75 20 6d 65 61 6e ror."%s.is.a.macro..Did.you.mean
7700 20 65 6c 69 73 70 2d 72 65 66 73 2d 6d 61 63 72 6f 3f 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 .elisp-refs-macro?".............
7720 20 20 20 20 20 20 20 20 73 79 6d 62 6f 6c 29 0a 20 20 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f ........symbol).......(user-erro
7740 72 20 22 25 73 20 69 73 20 6e 6f 74 20 61 20 66 75 6e 63 74 69 6f 6e 2e 20 44 69 64 20 79 6f 75 r."%s.is.not.a.function..Did.you
7760 20 6d 65 61 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 73 79 6d 62 6f 6c 3f 22 0a 20 20 20 20 20 20 .mean.elisp-refs-symbol?".......
7780 20 20 20 20 20 20 20 20 20 20 20 20 73 79 6d 62 6f 6c 29 29 29 0a 20 20 28 65 6c 69 73 70 2d 72 ............symbol)))...(elisp-r
77a0 65 66 73 2d 2d 73 65 61 72 63 68 20 73 79 6d 62 6f 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 efs--search.symbol..............
77c0 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 64 65 73 63 72 69 62 65 2d 62 .........(elisp-refs--describe-b
77e0 75 74 74 6f 6e 20 73 79 6d 62 6f 6c 20 27 66 75 6e 63 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 utton.symbol.'function).........
7800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 62 75 66 29 0a 20 20 20 20 ..............(lambda.(buf).....
7820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d ....................(elisp-refs-
7840 2d 72 65 61 64 2d 61 6e 64 2d 66 69 6e 64 20 62 75 66 20 73 79 6d 62 6f 6c 20 23 27 65 6c 69 73 -read-and-find.buf.symbol.#'elis
7860 70 2d 72 65 66 73 2d 2d 66 75 6e 63 74 69 6f 6e 2d 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 p-refs--function-p))............
7880 20 20 20 20 20 20 20 20 20 20 20 70 61 74 68 2d 70 72 65 66 69 78 29 29 0a 0a 3b 3b 3b 23 23 23 ...........path-prefix))..;;;###
78a0 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 6d 61 63 72 6f autoload.(defun.elisp-refs-macro
78c0 20 28 73 79 6d 62 6f 6c 20 26 6f 70 74 69 6f 6e 61 6c 20 70 61 74 68 2d 70 72 65 66 69 78 29 0a .(symbol.&optional.path-prefix).
78e0 20 20 22 44 69 73 70 6c 61 79 20 61 6c 6c 20 74 68 65 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f .."Display.all.the.references.to
7900 20 6d 61 63 72 6f 20 53 59 4d 42 4f 4c 2c 20 69 6e 20 61 6c 6c 20 6c 6f 61 64 65 64 0a 65 6c 69 .macro.SYMBOL,.in.all.loaded.eli
7920 73 70 20 66 69 6c 65 73 2e 0a 0a 49 66 20 63 61 6c 6c 65 64 20 77 69 74 68 20 61 20 70 72 65 66 sp.files...If.called.with.a.pref
7940 69 78 2c 20 70 72 6f 6d 70 74 20 66 6f 72 20 61 20 64 69 72 65 63 74 6f 72 79 20 74 6f 20 6c 69 ix,.prompt.for.a.directory.to.li
7960 6d 69 74 20 74 68 65 20 73 65 61 72 63 68 2e 0a 0a 54 68 69 73 20 73 65 61 72 63 68 65 73 20 66 mit.the.search...This.searches.f
7980 6f 72 20 6d 61 63 72 6f 73 2c 20 6e 6f 74 20 66 75 6e 63 74 69 6f 6e 73 2e 20 46 6f 72 20 74 68 or.macros,.not.functions..For.th
79a0 61 74 2c 20 73 65 65 0a 60 65 6c 69 73 70 2d 72 65 66 73 2d 66 75 6e 63 74 69 6f 6e 27 2e 22 0a at,.see.`elisp-refs-function'.".
79c0 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 0a 20 20 20 28 6c 69 73 74 20 28 65 6c 69 73 70 2d 72 ..(interactive....(list.(elisp-r
79e0 65 66 73 2d 2d 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 2d 73 79 6d 62 6f 6c 20 22 4d 61 63 efs--completing-read-symbol."Mac
7a00 72 6f 3a 20 22 20 23 27 6d 61 63 72 6f 70 29 0a 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 63 ro:.".#'macrop)..........(when.c
7a20 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 0a 20 20 20 20 20 20 20 20 20 20 20 28 72 65 urrent-prefix-arg............(re
7a40 61 64 2d 64 69 72 65 63 74 6f 72 79 2d 6e 61 6d 65 20 22 4c 69 6d 69 74 20 73 65 61 72 63 68 20 ad-directory-name."Limit.search.
7a60 74 6f 20 6c 6f 61 64 65 64 20 66 69 6c 65 73 20 69 6e 3a 20 22 29 29 29 29 0a 20 20 28 77 68 65 to.loaded.files.in:."))))...(whe
7a80 6e 20 28 6e 6f 74 20 28 6d 61 63 72 6f 70 20 73 79 6d 62 6f 6c 29 29 0a 20 20 20 20 28 69 66 20 n.(not.(macrop.symbol)).....(if.
7aa0 28 66 75 6e 63 74 69 6f 6e 70 20 73 79 6d 62 6f 6c 29 0a 20 20 20 20 20 20 20 20 28 75 73 65 72 (functionp.symbol).........(user
7ac0 2d 65 72 72 6f 72 20 22 25 73 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 2e 20 44 69 64 20 79 6f -error."%s.is.a.function..Did.yo
7ae0 75 20 6d 65 61 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 66 75 6e 63 74 69 6f 6e 3f 22 0a 20 20 20 u.mean.elisp-refs-function?"....
7b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 79 6d 62 6f 6c 29 0a 20 20 20 20 20 20 28 .................symbol).......(
7b20 75 73 65 72 2d 65 72 72 6f 72 20 22 25 73 20 69 73 20 6e 6f 74 20 61 20 66 75 6e 63 74 69 6f 6e user-error."%s.is.not.a.function
7b40 2e 20 44 69 64 20 79 6f 75 20 6d 65 61 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 73 79 6d 62 6f 6c ..Did.you.mean.elisp-refs-symbol
7b60 3f 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 79 6d 62 6f 6c 29 29 29 0a 20 ?"...................symbol)))..
7b80 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 65 61 72 63 68 20 73 79 6d 62 6f 6c 0a 20 20 20 20 .(elisp-refs--search.symbol.....
7ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 64 ..................(elisp-refs--d
7bc0 65 73 63 72 69 62 65 2d 62 75 74 74 6f 6e 20 73 79 6d 62 6f 6c 20 27 6d 61 63 72 6f 29 0a 20 20 escribe-button.symbol.'macro)...
7be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 62 75 66 ....................(lambda.(buf
7c00 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 ).........................(elisp
7c20 2d 72 65 66 73 2d 2d 72 65 61 64 2d 61 6e 64 2d 66 69 6e 64 20 62 75 66 20 73 79 6d 62 6f 6c 20 -refs--read-and-find.buf.symbol.
7c40 23 27 65 6c 69 73 70 2d 72 65 66 73 2d 2d 6d 61 63 72 6f 2d 70 29 29 0a 20 20 20 20 20 20 20 20 #'elisp-refs--macro-p)).........
7c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 74 68 2d 70 72 65 66 69 78 29 29 0a 0a 3b 3b 3b ..............path-prefix))..;;;
7c80 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 73 70 ###autoload.(defun.elisp-refs-sp
7ca0 65 63 69 61 6c 20 28 73 79 6d 62 6f 6c 20 26 6f 70 74 69 6f 6e 61 6c 20 70 61 74 68 2d 70 72 65 ecial.(symbol.&optional.path-pre
7cc0 66 69 78 29 0a 20 20 22 44 69 73 70 6c 61 79 20 61 6c 6c 20 74 68 65 20 72 65 66 65 72 65 6e 63 fix)..."Display.all.the.referenc
7ce0 65 73 20 74 6f 20 73 70 65 63 69 61 6c 20 66 6f 72 6d 20 53 59 4d 42 4f 4c 2c 20 69 6e 20 61 6c es.to.special.form.SYMBOL,.in.al
7d00 6c 20 6c 6f 61 64 65 64 0a 65 6c 69 73 70 20 66 69 6c 65 73 2e 0a 0a 49 66 20 63 61 6c 6c 65 64 l.loaded.elisp.files...If.called
7d20 20 77 69 74 68 20 61 20 70 72 65 66 69 78 2c 20 70 72 6f 6d 70 74 20 66 6f 72 20 61 20 64 69 72 .with.a.prefix,.prompt.for.a.dir
7d40 65 63 74 6f 72 79 20 74 6f 20 6c 69 6d 69 74 20 74 68 65 20 73 65 61 72 63 68 2e 22 0a 20 20 28 ectory.to.limit.the.search."...(
7d60 69 6e 74 65 72 61 63 74 69 76 65 0a 20 20 20 28 6c 69 73 74 20 28 65 6c 69 73 70 2d 72 65 66 73 interactive....(list.(elisp-refs
7d80 2d 2d 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 2d 73 79 6d 62 6f 6c 20 22 53 70 65 63 69 61 --completing-read-symbol."Specia
7da0 6c 20 66 6f 72 6d 3a 20 22 20 23 27 73 70 65 63 69 61 6c 2d 66 6f 72 6d 2d 70 29 0a 20 20 20 20 l.form:.".#'special-form-p).....
7dc0 20 20 20 20 20 28 77 68 65 6e 20 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 0a 20 20 .....(when.current-prefix-arg...
7de0 20 20 20 20 20 20 20 20 20 28 72 65 61 64 2d 64 69 72 65 63 74 6f 72 79 2d 6e 61 6d 65 20 22 4c .........(read-directory-name."L
7e00 69 6d 69 74 20 73 65 61 72 63 68 20 74 6f 20 6c 6f 61 64 65 64 20 66 69 6c 65 73 20 69 6e 3a 20 imit.search.to.loaded.files.in:.
7e20 22 29 29 29 29 0a 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 65 61 72 63 68 20 73 79 6d 62 "))))...(elisp-refs--search.symb
7e40 6f 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d ol.......................(elisp-
7e60 72 65 66 73 2d 2d 64 65 73 63 72 69 62 65 2d 62 75 74 74 6f 6e 20 73 79 6d 62 6f 6c 20 27 73 70 refs--describe-button.symbol.'sp
7e80 65 63 69 61 6c 2d 66 6f 72 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ecial-form).....................
7ea0 20 20 28 6c 61 6d 62 64 61 20 28 62 75 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(lambda.(buf).................
7ec0 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 72 65 61 64 2d 61 6e 64 2d 66 69 ........(elisp-refs--read-and-fi
7ee0 6e 64 20 62 75 66 20 73 79 6d 62 6f 6c 20 23 27 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 70 65 63 nd.buf.symbol.#'elisp-refs--spec
7f00 69 61 6c 2d 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 ial-p)).......................pa
7f20 74 68 2d 70 72 65 66 69 78 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 th-prefix))..;;;###autoload.(def
7f40 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 76 61 72 69 61 62 6c 65 20 28 73 79 6d 62 6f 6c 20 26 un.elisp-refs-variable.(symbol.&
7f60 6f 70 74 69 6f 6e 61 6c 20 70 61 74 68 2d 70 72 65 66 69 78 29 0a 20 20 22 44 69 73 70 6c 61 79 optional.path-prefix)..."Display
7f80 20 61 6c 6c 20 74 68 65 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f 20 76 61 72 69 61 62 6c 65 20 .all.the.references.to.variable.
7fa0 53 59 4d 42 4f 4c 2c 20 69 6e 20 61 6c 6c 20 6c 6f 61 64 65 64 0a 65 6c 69 73 70 20 66 69 6c 65 SYMBOL,.in.all.loaded.elisp.file
7fc0 73 2e 0a 0a 49 66 20 63 61 6c 6c 65 64 20 77 69 74 68 20 61 20 70 72 65 66 69 78 2c 20 70 72 6f s...If.called.with.a.prefix,.pro
7fe0 6d 70 74 20 66 6f 72 20 61 20 64 69 72 65 63 74 6f 72 79 20 74 6f 20 6c 69 6d 69 74 20 74 68 65 mpt.for.a.directory.to.limit.the
8000 20 73 65 61 72 63 68 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 0a 20 20 20 3b 3b 20 54 .search."...(interactive....;;.T
8020 68 69 73 20 69 73 20 61 77 6b 77 61 72 64 2e 20 57 65 20 64 6f 6e 27 74 20 77 61 6e 74 20 74 6f his.is.awkward..We.don't.want.to
8040 20 6a 75 73 74 20 6f 66 66 65 72 20 64 65 66 76 61 72 20 76 61 72 69 61 62 6c 65 73 2c 0a 20 20 .just.offer.defvar.variables,...
8060 20 3b 3b 20 62 65 63 61 75 73 65 20 74 68 65 6e 20 77 65 20 63 61 6e 27 74 20 73 65 61 72 63 68 .;;.because.then.we.can't.search
8080 20 66 6f 72 20 63 6f 64 65 20 77 68 69 63 68 20 75 73 65 73 20 60 6c 65 74 27 20 74 6f 20 62 69 .for.code.which.uses.`let'.to.bi
80a0 6e 64 0a 20 20 20 3b 3b 20 73 79 6d 62 6f 6c 73 2e 20 54 68 65 72 65 20 64 6f 65 73 6e 27 74 20 nd....;;.symbols..There.doesn't.
80c0 73 65 65 6d 20 74 6f 20 62 65 20 61 20 67 6f 6f 64 20 77 61 79 20 74 6f 20 6f 6e 6c 79 20 6f 66 seem.to.be.a.good.way.to.only.of
80e0 66 65 72 0a 20 20 20 3b 3b 20 76 61 72 69 61 62 6c 65 73 20 74 68 61 74 20 68 61 76 65 20 62 65 fer....;;.variables.that.have.be
8100 65 6e 20 62 6f 75 6e 64 20 61 74 20 73 6f 6d 65 20 70 6f 69 6e 74 2e 0a 20 20 20 28 6c 69 73 74 en.bound.at.some.point.....(list
8120 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 2d 73 79 .(elisp-refs--completing-read-sy
8140 6d 62 6f 6c 20 22 56 61 72 69 61 62 6c 65 3a 20 22 20 29 0a 20 20 20 20 20 20 20 20 20 28 77 68 mbol."Variable:.".)..........(wh
8160 65 6e 20 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 0a 20 20 20 20 20 20 20 20 20 20 en.current-prefix-arg...........
8180 20 28 72 65 61 64 2d 64 69 72 65 63 74 6f 72 79 2d 6e 61 6d 65 20 22 4c 69 6d 69 74 20 73 65 61 .(read-directory-name."Limit.sea
81a0 72 63 68 20 74 6f 20 6c 6f 61 64 65 64 20 66 69 6c 65 73 20 69 6e 3a 20 22 29 29 29 29 0a 20 20 rch.to.loaded.files.in:."))))...
81c0 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 65 61 72 63 68 20 73 79 6d 62 6f 6c 0a 20 20 20 20 20 (elisp-refs--search.symbol......
81e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 64 65 .................(elisp-refs--de
8200 73 63 72 69 62 65 2d 62 75 74 74 6f 6e 20 73 79 6d 62 6f 6c 20 27 76 61 72 69 61 62 6c 65 29 0a scribe-button.symbol.'variable).
8220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 62 ......................(lambda.(b
8240 75 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 uf).........................(eli
8260 73 70 2d 72 65 66 73 2d 2d 72 65 61 64 2d 61 6e 64 2d 66 69 6e 64 20 62 75 66 20 73 79 6d 62 6f sp-refs--read-and-find.buf.symbo
8280 6c 20 23 27 65 6c 69 73 70 2d 72 65 66 73 2d 2d 76 61 72 69 61 62 6c 65 2d 70 29 29 0a 20 20 20 l.#'elisp-refs--variable-p))....
82a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 74 68 2d 70 72 65 66 69 78 29 29 ...................path-prefix))
82c0 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 ..;;;###autoload.(defun.elisp-re
82e0 66 73 2d 73 79 6d 62 6f 6c 20 28 73 79 6d 62 6f 6c 20 26 6f 70 74 69 6f 6e 61 6c 20 70 61 74 68 fs-symbol.(symbol.&optional.path
8300 2d 70 72 65 66 69 78 29 0a 20 20 22 44 69 73 70 6c 61 79 20 61 6c 6c 20 74 68 65 20 72 65 66 65 -prefix)..."Display.all.the.refe
8320 72 65 6e 63 65 73 20 74 6f 20 53 59 4d 42 4f 4c 20 69 6e 20 61 6c 6c 20 6c 6f 61 64 65 64 20 65 rences.to.SYMBOL.in.all.loaded.e
8340 6c 69 73 70 20 66 69 6c 65 73 2e 0a 0a 49 66 20 63 61 6c 6c 65 64 20 77 69 74 68 20 61 20 70 72 lisp.files...If.called.with.a.pr
8360 65 66 69 78 2c 20 70 72 6f 6d 70 74 20 66 6f 72 20 61 20 64 69 72 65 63 74 6f 72 79 20 74 6f 20 efix,.prompt.for.a.directory.to.
8380 6c 69 6d 69 74 20 74 68 65 0a 73 65 61 72 63 68 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 limit.the.search."...(interactiv
83a0 65 0a 20 20 20 28 6c 69 73 74 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 63 6f 6d 70 6c 65 74 69 e....(list.(elisp-refs--completi
83c0 6e 67 2d 72 65 61 64 2d 73 79 6d 62 6f 6c 20 22 53 79 6d 62 6f 6c 3a 20 22 20 29 0a 20 20 20 20 ng-read-symbol."Symbol:.".).....
83e0 20 20 20 20 20 28 77 68 65 6e 20 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 0a 20 20 .....(when.current-prefix-arg...
8400 20 20 20 20 20 20 20 20 20 28 72 65 61 64 2d 64 69 72 65 63 74 6f 72 79 2d 6e 61 6d 65 20 22 4c .........(read-directory-name."L
8420 69 6d 69 74 20 73 65 61 72 63 68 20 74 6f 20 6c 6f 61 64 65 64 20 66 69 6c 65 73 20 69 6e 3a 20 imit.search.to.loaded.files.in:.
8440 22 29 29 29 29 0a 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 73 65 61 72 63 68 20 73 79 6d 62 "))))...(elisp-refs--search.symb
8460 6f 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 69 73 70 2d ol.......................(elisp-
8480 72 65 66 73 2d 2d 64 65 73 63 72 69 62 65 2d 62 75 74 74 6f 6e 20 73 79 6d 62 6f 6c 20 27 73 79 refs--describe-button.symbol.'sy
84a0 6d 62 6f 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d mbol).......................(lam
84c0 62 64 61 20 28 62 75 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 bda.(buf).......................
84e0 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 72 65 61 64 2d 61 6e 64 2d 66 69 6e 64 2d 73 79 6d ..(elisp-refs--read-and-find-sym
8500 62 6f 6c 20 62 75 66 20 73 79 6d 62 6f 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 bol.buf.symbol))................
8520 20 20 20 20 20 20 20 70 61 74 68 2d 70 72 65 66 69 78 29 29 0a 0a 3b 3b 3b 20 4d 6f 64 65 0a 0a .......path-prefix))..;;;.Mode..
8540 28 64 65 66 76 61 72 20 65 6c 69 73 70 2d 72 65 66 73 2d 6d 6f 64 65 2d 6d 61 70 0a 20 20 28 6c (defvar.elisp-refs-mode-map...(l
8560 65 74 20 28 28 6d 61 70 20 28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65 79 6d 61 70 29 29 29 0a et.((map.(make-sparse-keymap))).
8580 20 20 20 20 3b 3b 20 54 4f 44 4f 3a 20 69 74 20 77 6f 75 6c 64 20 62 65 20 6e 69 63 65 20 66 6f ....;;.TODO:.it.would.be.nice.fo
85a0 72 20 54 41 42 20 74 6f 20 6e 61 76 69 67 61 74 65 20 74 6f 20 66 69 6c 65 20 62 75 74 74 6f 6e r.TAB.to.navigate.to.file.button
85c0 73 20 74 6f 6f 2c 0a 20 20 20 20 3b 3b 20 6c 69 6b 65 20 2a 48 65 6c 70 2a 20 64 6f 65 73 2e 0a s.too,.....;;.like.*Help*.does..
85e0 20 20 20 20 28 73 65 74 2d 6b 65 79 6d 61 70 2d 70 61 72 65 6e 74 20 6d 61 70 20 73 70 65 63 69 ....(set-keymap-parent.map.speci
8600 61 6c 2d 6d 6f 64 65 2d 6d 61 70 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 al-mode-map).....(define-key.map
8620 20 28 6b 62 64 20 22 3c 74 61 62 3e 22 29 20 23 27 65 6c 69 73 70 2d 72 65 66 73 2d 6e 65 78 74 .(kbd."<tab>").#'elisp-refs-next
8640 2d 6d 61 74 63 68 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 -match).....(define-key.map.(kbd
8660 20 22 3c 62 61 63 6b 74 61 62 3e 22 29 20 23 27 65 6c 69 73 70 2d 72 65 66 73 2d 70 72 65 76 2d ."<backtab>").#'elisp-refs-prev-
8680 6d 61 74 63 68 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 match).....(define-key.map.(kbd.
86a0 22 6e 22 29 20 23 27 65 6c 69 73 70 2d 72 65 66 73 2d 6e 65 78 74 2d 6d 61 74 63 68 29 0a 20 20 "n").#'elisp-refs-next-match)...
86c0 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 70 22 29 20 23 27 65 6c ..(define-key.map.(kbd."p").#'el
86e0 69 73 70 2d 72 65 66 73 2d 70 72 65 76 2d 6d 61 74 63 68 29 0a 20 20 20 20 28 64 65 66 69 6e 65 isp-refs-prev-match).....(define
8700 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 52 45 54 22 29 20 23 27 65 6c 69 73 70 2d 72 65 66 -key.map.(kbd."RET").#'elisp-ref
8720 73 2d 76 69 73 69 74 2d 6d 61 74 63 68 29 0a 20 20 20 20 6d 61 70 29 0a 20 20 22 4b 65 79 6d 61 s-visit-match).....map)..."Keyma
8740 70 20 66 6f 72 20 60 65 6c 69 73 70 2d 72 65 66 73 2d 6d 6f 64 65 27 2e 22 29 0a 0a 28 64 65 66 p.for.`elisp-refs-mode'.")..(def
8760 69 6e 65 2d 64 65 72 69 76 65 64 2d 6d 6f 64 65 20 65 6c 69 73 70 2d 72 65 66 73 2d 6d 6f 64 65 ine-derived-mode.elisp-refs-mode
8780 20 73 70 65 63 69 61 6c 2d 6d 6f 64 65 20 22 52 65 66 73 22 0a 20 20 22 4d 61 6a 6f 72 20 6d 6f .special-mode."Refs"..."Major.mo
87a0 64 65 20 66 6f 72 20 72 65 66 73 20 72 65 73 75 6c 74 73 20 62 75 66 66 65 72 73 2e 22 29 0a 0a de.for.refs.results.buffers.")..
87c0 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 2d 72 65 66 73 2d 76 69 73 69 74 2d 6d 61 74 63 68 20 28 (defun.elisp--refs-visit-match.(
87e0 6f 70 65 6e 2d 66 6e 29 0a 20 20 22 47 6f 20 74 6f 20 74 68 65 20 73 65 61 72 63 68 20 72 65 73 open-fn)..."Go.to.the.search.res
8800 75 6c 74 20 61 74 20 70 6f 69 6e 74 2e 0a 4f 70 65 6e 20 66 69 6c 65 20 77 69 74 68 20 66 75 6e ult.at.point..Open.file.with.fun
8820 63 74 69 6f 6e 20 4f 50 45 4e 5f 46 4e 2e 20 60 66 69 6e 64 2d 66 69 6c 65 60 20 6f 72 20 60 66 ction.OPEN_FN..`find-file`.or.`f
8840 69 6e 64 2d 66 69 6c 65 2d 6f 74 68 65 72 2d 77 69 6e 64 6f 77 60 22 0a 20 20 28 69 6e 74 65 72 ind-file-other-window`"...(inter
8860 61 63 74 69 76 65 29 0a 20 20 28 6c 65 74 2a 20 28 28 70 61 74 68 20 28 67 65 74 2d 74 65 78 74 active)...(let*.((path.(get-text
8880 2d 70 72 6f 70 65 72 74 79 20 28 70 6f 69 6e 74 29 20 27 65 6c 69 73 70 2d 72 65 66 73 2d 70 61 -property.(point).'elisp-refs-pa
88a0 74 68 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 6f 73 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f th))..........(pos.(get-text-pro
88c0 70 65 72 74 79 20 28 70 6f 69 6e 74 29 20 27 65 6c 69 73 70 2d 72 65 66 73 2d 73 74 61 72 74 2d perty.(point).'elisp-refs-start-
88e0 70 6f 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 75 6e 69 6e 64 65 6e 74 20 28 67 65 74 2d 74 65 pos))..........(unindent.(get-te
8900 78 74 2d 70 72 6f 70 65 72 74 79 20 28 70 6f 69 6e 74 29 20 27 65 6c 69 73 70 2d 72 65 66 73 2d xt-property.(point).'elisp-refs-
8920 75 6e 69 6e 64 65 6e 74 65 64 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6c 75 6d 6e 2d 6f 66 unindented))..........(column-of
8940 66 73 65 74 20 28 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 29 29 0a 20 20 20 20 20 20 20 20 20 fset.(current-column))..........
8960 28 6c 69 6e 65 2d 6f 66 66 73 65 74 20 2d 31 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 6e 75 6c (line-offset.-1)).....(when.(nul
8980 6c 20 70 61 74 68 29 0a 20 20 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 4e 6f 20 6d 61 l.path).......(user-error."No.ma
89a0 74 63 68 20 68 65 72 65 22 29 29 0a 0a 20 20 20 20 3b 3b 20 49 66 20 70 6f 69 6e 74 20 69 73 20 tch.here"))......;;.If.point.is.
89c0 6e 6f 74 20 6f 6e 20 74 68 65 20 66 69 72 73 74 20 6c 69 6e 65 20 6f 66 20 74 68 65 20 6d 61 74 not.on.the.first.line.of.the.mat
89e0 63 68 2c 20 77 6f 72 6b 20 6f 75 74 20 68 6f 77 0a 20 20 20 20 3b 3b 20 66 61 72 20 61 77 61 79 ch,.work.out.how.....;;.far.away
8a00 20 74 68 65 20 66 69 72 73 74 20 6c 69 6e 65 20 69 73 2e 0a 20 20 20 20 28 73 61 76 65 2d 65 78 .the.first.line.is......(save-ex
8a20 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 65 71 75 61 6c 20 70 6f 73 20 cursion.......(while.(equal.pos.
8a40 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 70 6f 69 6e 74 29 20 27 65 6c 69 73 (get-text-property.(point).'elis
8a60 70 2d 72 65 66 73 2d 73 74 61 72 74 2d 70 6f 73 29 29 0a 20 20 20 20 20 20 20 20 28 66 6f 72 77 p-refs-start-pos)).........(forw
8a80 61 72 64 2d 6c 69 6e 65 20 2d 31 29 0a 20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66 20 6c 69 ard-line.-1).........(cl-incf.li
8aa0 6e 65 2d 6f 66 66 73 65 74 29 29 29 0a 0a 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 6f 70 65 6e 2d ne-offset)))......(funcall.open-
8ac0 66 6e 20 70 61 74 68 29 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 70 6f 73 29 0a 20 20 20 fn.path).....(goto-char.pos)....
8ae0 20 3b 3b 20 4d 6f 76 65 20 70 6f 69 6e 74 20 73 6f 20 77 65 27 72 65 20 6f 6e 20 74 68 65 20 73 .;;.Move.point.so.we're.on.the.s
8b00 61 6d 65 20 63 68 61 72 20 69 6e 20 74 68 65 20 62 75 66 66 65 72 20 74 68 61 74 20 77 65 20 77 ame.char.in.the.buffer.that.we.w
8b20 65 72 65 0a 20 20 20 20 3b 3b 20 6f 6e 20 69 6e 20 74 68 65 20 72 65 73 75 6c 74 73 20 62 75 66 ere.....;;.on.in.the.results.buf
8b40 66 65 72 2e 0a 20 20 20 20 28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 20 6c 69 6e 65 2d 6f 66 66 73 fer......(forward-line.line-offs
8b60 65 74 29 0a 20 20 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 et).....(beginning-of-line).....
8b80 28 6c 65 74 20 28 28 74 61 72 67 65 74 2d 6f 66 66 73 65 74 20 28 2b 20 63 6f 6c 75 6d 6e 2d 6f (let.((target-offset.(+.column-o
8ba0 66 66 73 65 74 20 75 6e 69 6e 64 65 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 20 30 29 ffset.unindent))...........(i.0)
8bc0 29 0a 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 3c 20 69 20 74 61 72 67 65 74 2d 6f 66 66 73 65 ).......(while.(<.i.target-offse
8be0 74 29 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 5c 74 22 29 t).........(if.(looking-at."\t")
8c00 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66 20 69 20 74 61 62 2d 77 69 64 74 .............(cl-incf.i.tab-widt
8c20 68 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66 20 69 29 29 0a 20 20 20 20 20 20 h)...........(cl-incf.i)).......
8c40 20 20 28 66 6f 72 77 61 72 64 2d 63 68 61 72 20 31 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 65 ..(forward-char.1)))))..(defun.e
8c60 6c 69 73 70 2d 72 65 66 73 2d 76 69 73 69 74 2d 6d 61 74 63 68 20 28 29 0a 20 20 22 47 6f 74 6f lisp-refs-visit-match.()..."Goto
8c80 20 74 68 65 20 73 65 61 72 63 68 20 72 65 73 75 6c 74 20 61 74 20 70 6f 69 6e 74 2e 22 0a 20 20 .the.search.result.at.point."...
8ca0 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 65 6c 69 73 70 2d 2d 72 65 66 73 2d 76 69 73 (interactive)...(elisp--refs-vis
8cc0 69 74 2d 6d 61 74 63 68 20 23 27 66 69 6e 64 2d 66 69 6c 65 29 29 0a 0a 28 64 65 66 75 6e 20 65 it-match.#'find-file))..(defun.e
8ce0 6c 69 73 70 2d 72 65 66 73 2d 76 69 73 69 74 2d 6d 61 74 63 68 2d 6f 74 68 65 72 2d 77 69 6e 64 lisp-refs-visit-match-other-wind
8d00 6f 77 20 28 29 0a 20 20 22 47 6f 74 6f 20 74 68 65 20 73 65 61 72 63 68 20 72 65 73 75 6c 74 20 ow.()..."Goto.the.search.result.
8d20 61 74 20 70 6f 69 6e 74 2c 20 6f 70 65 6e 69 6e 67 20 69 6e 20 61 6e 6f 74 68 65 72 20 77 69 6e at.point,.opening.in.another.win
8d40 64 6f 77 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 65 6c 69 73 70 2d 2d dow."...(interactive)...(elisp--
8d60 72 65 66 73 2d 76 69 73 69 74 2d 6d 61 74 63 68 20 23 27 66 69 6e 64 2d 66 69 6c 65 2d 6f 74 68 refs-visit-match.#'find-file-oth
8d80 65 72 2d 77 69 6e 64 6f 77 29 29 0a 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d er-window))...(defun.elisp-refs-
8da0 2d 6d 6f 76 65 2d 74 6f 2d 6d 61 74 63 68 20 28 64 69 72 65 63 74 69 6f 6e 29 0a 20 20 22 4d 6f -move-to-match.(direction)..."Mo
8dc0 76 65 20 70 6f 69 6e 74 20 6f 6e 65 20 6d 61 74 63 68 20 66 6f 72 77 61 72 64 73 2e 0a 49 66 20 ve.point.one.match.forwards..If.
8de0 44 49 52 45 43 54 49 4f 4e 20 69 73 20 2d 31 2c 20 6d 6f 76 65 73 20 62 61 63 6b 77 61 72 64 73 DIRECTION.is.-1,.moves.backwards
8e00 20 69 6e 73 74 65 61 64 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 73 74 61 72 74 2d 70 6f 73 20 28 .instead."...(let*.((start-pos.(
8e20 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 28 6d 61 74 63 68 2d 70 6f 73 20 28 67 65 74 point))..........(match-pos.(get
8e40 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 73 74 61 72 74 2d 70 6f 73 20 27 65 6c 69 73 70 2d -text-property.start-pos.'elisp-
8e60 72 65 66 73 2d 73 74 61 72 74 2d 70 6f 73 29 29 0a 20 20 20 20 20 20 20 20 20 63 75 72 72 65 6e refs-start-pos))..........curren
8e80 74 2d 6d 61 74 63 68 2d 70 6f 73 29 0a 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 t-match-pos).....(condition-case
8ea0 20 5f 65 72 72 0a 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 3b ._err.........(progn...........;
8ec0 3b 20 4d 6f 76 65 20 66 6f 72 77 61 72 64 2f 62 61 63 6b 77 61 72 64 73 20 75 6e 74 69 6c 20 77 ;.Move.forward/backwards.until.w
8ee0 65 27 72 65 20 6f 6e 20 74 68 65 20 6e 65 78 74 2f 70 72 65 76 69 6f 75 73 20 6d 61 74 63 68 2e e're.on.the.next/previous.match.
8f00 0a 20 20 20 20 20 20 20 20 20 20 28 63 61 74 63 68 20 27 64 6f 6e 65 0a 20 20 20 20 20 20 20 20 ...........(catch.'done.........
8f20 20 20 20 20 28 77 68 69 6c 65 20 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 ....(while.t...............(setq
8f40 20 63 75 72 72 65 6e 74 2d 6d 61 74 63 68 2d 70 6f 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .current-match-pos..............
8f60 20 20 20 20 20 20 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 70 6f 69 6e 74 .......(get-text-property.(point
8f80 29 20 27 65 6c 69 73 70 2d 72 65 66 73 2d 73 74 61 72 74 2d 70 6f 73 29 29 0a 20 20 20 20 20 20 ).'elisp-refs-start-pos)).......
8fa0 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 63 75 72 72 65 6e 74 2d 6d 61 74 63 68 ........(when.(and.current-match
8fc0 2d 70 6f 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e -pos..........................(n
8fe0 6f 74 20 28 65 71 75 61 6c 20 6d 61 74 63 68 2d 70 6f 73 20 63 75 72 72 65 6e 74 2d 6d 61 74 63 ot.(equal.match-pos.current-matc
9000 68 2d 70 6f 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 68 72 6f 77 20 h-pos))).................(throw.
9020 27 64 6f 6e 65 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 77 61 'done.nil))...............(forwa
9040 72 64 2d 63 68 61 72 20 64 69 72 65 63 74 69 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 3b rd-char.direction)))...........;
9060 3b 20 4d 6f 76 65 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 61 74 20 ;.Move.to.the.beginning.of.that.
9080 6d 61 74 63 68 2e 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 65 71 75 61 6c 20 28 match............(while.(equal.(
90a0 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 70 6f 69 6e 74 29 20 27 65 6c 69 73 70 get-text-property.(point).'elisp
90c0 2d 72 65 66 73 2d 73 74 61 72 74 2d 70 6f 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -refs-start-pos)................
90e0 20 20 20 20 20 20 20 20 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 31 2d 20 .........(get-text-property.(1-.
9100 28 70 6f 69 6e 74 29 29 20 27 65 6c 69 73 70 2d 72 65 66 73 2d 73 74 61 72 74 2d 70 6f 73 29 29 (point)).'elisp-refs-start-pos))
9120 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 63 68 61 72 20 2d 31 29 29 0a .............(forward-char.-1)).
9140 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4d 6f 76 65 20 66 6f 72 77 61 72 64 20 75 6e 74 69 6c 20 ..........;;.Move.forward.until.
9160 77 65 27 72 65 20 6f 6e 20 74 68 65 20 66 69 72 73 74 20 63 68 61 72 20 6f 66 20 6d 61 74 63 68 we're.on.the.first.char.of.match
9180 20 77 69 74 68 69 6e 20 74 68 61 74 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6c 69 6e 65 2e 0a .within.that...........;;.line..
91a0 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 ..........(while.(or............
91c0 20 20 20 20 20 20 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 20 22 29 0a 20 20 20 20 20 20 20 20 .......(looking-at.".").........
91e0 20 20 20 20 20 20 20 20 20 20 28 65 71 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 ..........(eq.(get-text-property
9200 20 28 70 6f 69 6e 74 29 20 27 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(point).'face).................
9220 20 20 20 20 20 20 27 66 6f 6e 74 2d 6c 6f 63 6b 2d 63 6f 6d 6d 65 6e 74 2d 66 61 63 65 29 29 0a ......'font-lock-comment-face)).
9240 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 63 68 61 72 20 31 29 29 29 0a 20 ............(forward-char.1)))..
9260 20 20 20 20 20 3b 3b 20 49 66 20 77 65 27 72 65 20 61 74 20 74 68 65 20 6c 61 73 74 20 72 65 73 .....;;.If.we're.at.the.last.res
9280 75 6c 74 2c 20 64 6f 6e 27 74 20 6d 6f 76 65 20 70 6f 69 6e 74 2e 0a 20 20 20 20 20 20 28 65 6e ult,.don't.move.point........(en
92a0 64 2d 6f 66 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 d-of-buffer........(progn.......
92c0 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 73 74 61 72 74 2d 70 6f 73 29 0a 20 20 20 20 20 20 20 ...(goto-char.start-pos)........
92e0 20 20 28 73 69 67 6e 61 6c 20 27 65 6e 64 2d 6f 66 2d 62 75 66 66 65 72 20 6e 69 6c 29 29 29 29 ..(signal.'end-of-buffer.nil))))
9300 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 65 66 73 2d 70 72 65 76 2d 6d 61 74 63 68 ))..(defun.elisp-refs-prev-match
9320 20 28 29 0a 20 20 22 4d 6f 76 65 20 74 6f 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 73 65 61 72 .()..."Move.to.the.previous.sear
9340 63 68 20 72 65 73 75 6c 74 20 69 6e 20 74 68 65 20 52 65 66 73 20 62 75 66 66 65 72 2e 22 0a 20 ch.result.in.the.Refs.buffer."..
9360 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 65 6c 69 73 70 2d 72 65 66 73 2d 2d 6d 6f .(interactive)...(elisp-refs--mo
9380 76 65 2d 74 6f 2d 6d 61 74 63 68 20 2d 31 29 29 0a 0a 28 64 65 66 75 6e 20 65 6c 69 73 70 2d 72 ve-to-match.-1))..(defun.elisp-r
93a0 65 66 73 2d 6e 65 78 74 2d 6d 61 74 63 68 20 28 29 0a 20 20 22 4d 6f 76 65 20 74 6f 20 74 68 65 efs-next-match.()..."Move.to.the
93c0 20 6e 65 78 74 20 73 65 61 72 63 68 20 72 65 73 75 6c 74 20 69 6e 20 74 68 65 20 52 65 66 73 20 .next.search.result.in.the.Refs.
93e0 62 75 66 66 65 72 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 65 6c 69 73 buffer."...(interactive)...(elis
9400 70 2d 72 65 66 73 2d 2d 6d 6f 76 65 2d 74 6f 2d 6d 61 74 63 68 20 31 29 29 0a 0a 28 70 72 6f 76 p-refs--move-to-match.1))..(prov
9420 69 64 65 20 27 65 6c 69 73 70 2d 72 65 66 73 29 0a 3b 3b 3b 20 65 6c 69 73 70 2d 72 65 66 73 2e ide.'elisp-refs).;;;.elisp-refs.
9440 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 el.ends.here....................
9460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
94a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
94c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
94e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
96a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
96c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
96e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
97a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
97c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
97e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
98a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
98c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
98e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
99a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
99c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
99e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................