| ofs | hex dump | ascii | 
|---|
| 0000 |  64 65 61 64 67 72 65 70 2d 32 30 32 34 31 32 31    30 2e 31 36 33 30 2f 00 00 00 00 00 00 00 00 00  | deadgrep-20241210.1630/......... | 
| 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 35 35 31 00 20 35 00 00 00  | 0000000.00000000000.012551..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 |  64 65 61 64 67 72 65 70 2d 32 30 32 34 31 32 31    30 2e 31 36 33 30 2f 64 65 61 64 67 72 65 70 2d  | deadgrep-20241210.1630/deadgrep- | 
| 0220 |  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 00 00 00  | 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 37 35 30 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 35 34 32 37 00 20 30 00 00 00  | 0000750.00000000000.015427..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 64 65 61 64 67 72 65 70 22 20 22    32 30 32 34 31 32 31 30 2e 31 36 33 30 22 0a 20  | age."deadgrep"."20241210.1630".. | 
| 0460 |  20 22 46 61 73 74 2c 20 66 72 69 65 6e 64 6c 79    20 73 65 61 72 63 68 69 6e 67 20 77 69 74 68 20  | ."Fast,.friendly.searching.with. | 
| 0480 |  72 69 70 67 72 65 70 2e 22 0a 20 20 27 28 28 65    6d 61 63 73 20 20 20 22 32 35 2e 31 22 29 0a 20  | ripgrep."...'((emacs..."25.1").. | 
| 04a0 |  20 20 20 28 64 61 73 68 20 20 20 20 22 32 2e 31    32 2e 30 22 29 0a 20 20 20 20 28 73 20 20 20 20  | ...(dash...."2.12.0").....(s.... | 
| 04c0 |  20 20 20 22 31 2e 31 31 2e 30 22 29 0a 20 20 20    20 28 73 70 69 6e 6e 65 72 20 22 31 2e 37 2e 33  | ..."1.11.0").....(spinner."1.7.3 | 
| 04e0 |  22 29 29 0a 20 20 3a 75 72 6c 20 22 68 74 74 70    73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 57  | "))...:url."https://github.com/W | 
| 0500 |  69 6c 66 72 65 64 2f 64 65 61 64 67 72 65 70 22    0a 20 20 3a 63 6f 6d 6d 69 74 20 22 62 62 35 35  | ilfred/deadgrep"...:commit."bb55 | 
| 0520 |  35 37 39 30 63 36 66 34 30 34 35 37 32 64 35 33    37 65 31 65 34 61 64 65 63 38 62 34 66 66 30 35  | 5790c6f404572d537e1e4adec8b4ff05 | 
| 0540 |  31 35 66 35 22 0a 20 20 3a 72 65 76 64 65 73 63    20 22 62 62 35 35 35 37 39 30 63 36 66 34 22 0a  | 15f5"...:revdesc."bb555790c6f4". | 
| 0560 |  20 20 3a 6b 65 79 77 6f 72 64 73 20 27 28 22 74    6f 6f 6c 73 22 29 0a 20 20 3a 61 75 74 68 6f 72  | ..:keywords.'("tools")...:author | 
| 0580 |  73 20 27 28 28 22 57 69 6c 66 72 65 64 20 48 75    67 68 65 73 22 20 2e 20 22 6d 65 40 77 69 6c 66  | s.'(("Wilfred.Hughes"..."me@wilf | 
| 05a0 |  72 65 64 2e 6d 65 2e 75 6b 22 29 29 0a 20 20 3a    6d 61 69 6e 74 61 69 6e 65 72 73 20 27 28 28 22  | red.me.uk"))...:maintainers.'((" | 
| 05c0 |  57 69 6c 66 72 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  | Wilfred.Hughes"..."me@wilfred.me | 
| 05e0 |  2e 75 6b 22 29 29 29 0a 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .uk")))......................... | 
| 0600 |  64 65 61 64 67 72 65 70 2d 32 30 32 34 31 32 31    30 2e 31 36 33 30 2f 64 65 61 64 67 72 65 70 2e  | deadgrep-20241210.1630/deadgrep. | 
| 0620 |  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 00 00 00  | 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 32 30 30 33 33 31 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 34 36 34 35 00 20 30 00 00 00  | 0200331.00000000000.014645..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 64 65 61 64 67 72 65 70 2e 65 6c 20    2d 2d 2d 20 66 61 73 74 2c 20 66 72 69 65 6e 64  | ;;;.deadgrep.el.---.fast,.friend | 
| 0820 |  6c 79 20 73 65 61 72 63 68 69 6e 67 20 77 69 74    68 20 72 69 70 67 72 65 70 20 20 2d 2a 2d 20 6c  | ly.searching.with.ripgrep..-*-.l | 
| 0840 |  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 43 6f 70 79 72  | exical-binding:.t;.-*-..;;.Copyr | 
| 0860 |  69 67 68 74 20 28 43 29 20 32 30 31 38 2d 32 30    32 34 20 20 57 69 6c 66 72 65 64 20 48 75 67 68  | ight.(C).2018-2024..Wilfred.Hugh | 
| 0880 |  65 73 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 57    69 6c 66 72 65 64 20 48 75 67 68 65 73 20 3c 6d  | es..;;.Author:.Wilfred.Hughes.<m | 
| 08a0 |  65 40 77 69 6c 66 72 65 64 2e 6d 65 2e 75 6b 3e    0a 3b 3b 20 55 52 4c 3a 20 68 74 74 70 73 3a 2f  | e@wilfred.me.uk>.;;.URL:.https:/ | 
| 08c0 |  2f 67 69 74 68 75 62 2e 63 6f 6d 2f 57 69 6c 66    72 65 64 2f 64 65 61 64 67 72 65 70 0a 3b 3b 20  | /github.com/Wilfred/deadgrep.;;. | 
| 08e0 |  4b 65 79 77 6f 72 64 73 3a 20 74 6f 6f 6c 73 0a    3b 3b 20 50 61 63 6b 61 67 65 2d 56 65 72 73 69  | Keywords:.tools.;;.Package-Versi | 
| 0900 |  6f 6e 3a 20 32 30 32 34 31 32 31 30 2e 31 36 33    30 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 76  | on:.20241210.1630.;;.Package-Rev | 
| 0920 |  69 73 69 6f 6e 3a 20 62 62 35 35 35 37 39 30 63    36 66 34 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52  | ision:.bb555790c6f4.;;.Package-R | 
| 0940 |  65 71 75 69 72 65 73 3a 20 28 28 65 6d 61 63 73    20 22 32 35 2e 31 22 29 20 28 64 61 73 68 20 22  | equires:.((emacs."25.1").(dash." | 
| 0960 |  32 2e 31 32 2e 30 22 29 20 28 73 20 22 31 2e 31    31 2e 30 22 29 20 28 73 70 69 6e 6e 65 72 20 22  | 2.12.0").(s."1.11.0").(spinner." | 
| 0980 |  31 2e 37 2e 33 22 29 29 0a 0a 3b 3b 20 54 68 69    73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65  | 1.7.3"))..;;.This.program.is.fre | 
| 09a0 |  65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20    63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65  | e.software;.you.can.redistribute | 
| 09c0 |  20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66    79 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68  | .it.and/or.modify.;;.it.under.th | 
| 09e0 |  65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47    4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69  | e.terms.of.the.GNU.General.Publi | 
| 0a00 |  63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62    6c 69 73 68 65 64 20 62 79 0a 3b 3b 20 74 68 65  | c.License.as.published.by.;;.the | 
| 0a20 |  20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46    6f 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65  | .Free.Software.Foundation,.eithe | 
| 0a40 |  72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74    68 65 20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 3b  | r.version.3.of.the.License,.or.; | 
| 0a60 |  3b 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f    6e 29 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72  | ;.(at.your.option).any.later.ver | 
| 0a80 |  73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 70    72 6f 67 72 61 6d 20 69 73 20 64 69 73 74 72 69  | sion...;;.This.program.is.distri | 
| 0aa0 |  62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70    65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62  | buted.in.the.hope.that.it.will.b | 
| 0ac0 |  65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74    20 57 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52  | e.useful,.;;.but.WITHOUT.ANY.WAR | 
| 0ae0 |  52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65    76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20  | RANTY;.without.even.the.implied. | 
| 0b00 |  77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d    45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f  | warranty.of.;;.MERCHANTABILITY.o | 
| 0b20 |  72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20    50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f  | r.FITNESS.FOR.A.PARTICULAR.PURPO | 
| 0b40 |  53 45 2e 20 20 53 65 65 20 74 68 65 0a 3b 3b 20    47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c  | SE...See.the.;;.GNU.General.Publ | 
| 0b60 |  69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d    6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 0a 3b 3b  | ic.License.for.more.details...;; | 
| 0b80 |  20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65    20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79  | .You.should.have.received.a.copy | 
| 0ba0 |  20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65    72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e  | .of.the.GNU.General.Public.Licen | 
| 0bc0 |  73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68    20 74 68 69 73 20 70 72 6f 67 72 61 6d 2e 20 20  | se.;;.along.with.this.program... | 
| 0be0 |  49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74    70 73 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67  | If.not,.see.<https://www.gnu.org | 
| 0c00 |  2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b    3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b  | /licenses/>...;;;.Commentary:..; | 
| 0c20 |  3b 20 50 65 72 66 6f 72 6d 20 74 65 78 74 20 73    65 61 72 63 68 65 73 20 77 69 74 68 20 74 68 65  | ;.Perform.text.searches.with.the | 
| 0c40 |  20 73 70 65 65 64 20 6f 66 20 72 69 70 67 72 65    70 20 61 6e 64 20 74 68 65 20 63 6f 6d 66 6f 72  | .speed.of.ripgrep.and.the.comfor | 
| 0c60 |  74 20 6f 66 0a 3b 3b 20 45 6d 61 63 73 2e 20 20    54 68 69 73 20 69 73 20 61 20 62 65 73 70 6f 6b  | t.of.;;.Emacs...This.is.a.bespok | 
| 0c80 |  65 20 6d 6f 64 65 20 74 68 61 74 20 64 6f 65 73    20 6e 6f 74 20 72 65 6c 79 20 6f 6e 0a 3b 3b 20  | e.mode.that.does.not.rely.on.;;. | 
| 0ca0 |  63 6f 6d 70 69 6c 61 74 69 6f 6e 2d 6d 6f 64 65    2c 20 62 75 74 20 74 72 69 65 73 20 74 6f 20 62  | compilation-mode,.but.tries.to.b | 
| 0cc0 |  65 20 61 20 70 65 72 66 65 63 74 20 66 69 74 20    66 6f 72 20 72 69 70 67 72 65 70 2e 0a 0a 3b 3b  | e.a.perfect.fit.for.ripgrep...;; | 
| 0ce0 |  20 49 6e 73 74 61 6c 6c 20 66 72 6f 6d 20 4d 45    4c 50 41 2c 20 74 68 65 6e 20 60 4d 2d 78 20 64  | .Install.from.MELPA,.then.`M-x.d | 
| 0d00 |  65 61 64 67 72 65 70 27 20 77 69 6c 6c 20 64 6f    20 61 20 73 65 61 72 63 68 21 0a 0a 3b 3b 3b 20  | eadgrep'.will.do.a.search!..;;;. | 
| 0d20 |  43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20    27 63 6c 2d 6c 69 62 29 0a 28 72 65 71 75 69 72  | Code:..(require.'cl-lib).(requir | 
| 0d40 |  65 20 27 73 29 0a 28 72 65 71 75 69 72 65 20 27    64 61 73 68 29 0a 28 72 65 71 75 69 72 65 20 27  | e.'s).(require.'dash).(require.' | 
| 0d60 |  73 70 69 6e 6e 65 72 29 0a 28 72 65 71 75 69 72    65 20 27 70 72 6f 6a 65 63 74 29 0a 0a 28 64 65  | spinner).(require.'project)..(de | 
| 0d80 |  66 67 72 6f 75 70 20 64 65 61 64 67 72 65 70 20    6e 69 6c 0a 20 20 22 41 20 70 6f 77 65 72 66 75  | fgroup.deadgrep.nil..."A.powerfu | 
| 0da0 |  6c 20 74 65 78 74 20 73 65 61 72 63 68 20 55 49    20 75 73 69 6e 67 20 72 69 70 67 72 65 70 2e 22  | l.text.search.UI.using.ripgrep." | 
| 0dc0 |  0a 20 20 3a 67 72 6f 75 70 20 27 74 6f 6f 6c 73    0a 20 20 3a 67 72 6f 75 70 20 27 6d 61 74 63 68  | ...:group.'tools...:group.'match | 
| 0de0 |  69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d    20 64 65 61 64 67 72 65 70 2d 65 78 65 63 75 74  | ing)..(defcustom.deadgrep-execut | 
| 0e00 |  61 62 6c 65 0a 20 20 22 72 67 22 0a 20 20 22 54    68 65 20 72 67 20 65 78 65 63 75 74 61 62 6c 65  | able..."rg"..."The.rg.executable | 
| 0e20 |  20 75 73 65 64 20 62 79 20 64 65 61 64 67 72 65    70 2e 0a 54 68 69 73 20 77 69 6c 6c 20 62 65 20  | .used.by.deadgrep..This.will.be. | 
| 0e40 |  6c 6f 6f 6b 65 64 20 75 70 20 6f 6e 20 60 65 78    65 63 2d 70 61 74 68 27 20 69 66 20 69 74 20 69  | looked.up.on.`exec-path'.if.it.i | 
| 0e60 |  73 6e 27 74 20 61 6e 20 61 62 73 6f 6c 75 74 65    0a 70 61 74 68 20 74 6f 20 74 68 65 20 62 69 6e  | sn't.an.absolute.path.to.the.bin | 
| 0e80 |  61 72 79 2e 22 0a 20 20 3a 74 79 70 65 20 27 73    74 72 69 6e 67 0a 20 20 3a 67 72 6f 75 70 20 27  | ary."...:type.'string...:group.' | 
| 0ea0 |  64 65 61 64 67 72 65 70 29 0a 0a 28 64 65 66 63    75 73 74 6f 6d 20 64 65 61 64 67 72 65 70 2d 6d  | deadgrep)..(defcustom.deadgrep-m | 
| 0ec0 |  61 78 2d 62 75 66 66 65 72 73 0a 20 20 34 0a 20    20 22 54 68 65 20 6d 61 78 69 6d 75 6d 20 6e 75  | ax-buffers...4..."The.maximum.nu | 
| 0ee0 |  6d 62 65 72 20 6f 66 20 64 65 61 64 67 72 65 70    20 72 65 73 75 6c 74 73 20 62 75 66 66 65 72 73  | mber.of.deadgrep.results.buffers | 
| 0f00 |  2e 0a 0a 49 66 20 74 68 65 20 6e 75 6d 62 65 72    20 6f 66 20 72 65 73 75 6c 74 73 20 62 75 66 66  | ...If.the.number.of.results.buff | 
| 0f20 |  65 72 73 20 65 78 63 65 65 64 73 20 74 68 69 73    20 76 61 6c 75 65 2c 20 64 65 61 64 67 72 65 70  | ers.exceeds.this.value,.deadgrep | 
| 0f40 |  0a 77 69 6c 6c 20 6b 69 6c 6c 20 72 65 73 75 6c    74 73 20 62 75 66 66 65 72 73 2e 20 54 68 65 20  | .will.kill.results.buffers..The. | 
| 0f60 |  6c 65 61 73 74 20 72 65 63 65 6e 74 6c 79 20 75    73 65 64 20 62 75 66 66 65 72 73 20 61 72 65 0a  | least.recently.used.buffers.are. | 
| 0f80 |  6b 69 6c 6c 65 64 20 66 69 72 73 74 2e 0a 0a 54    6f 20 64 69 73 61 62 6c 65 20 63 6c 65 61 6e 75  | killed.first...To.disable.cleanu | 
| 0fa0 |  70 20 65 6e 74 69 72 65 6c 79 2c 20 73 65 74 20    74 68 69 73 20 76 61 72 69 61 62 6c 65 20 74 6f  | p.entirely,.set.this.variable.to | 
| 0fc0 |  20 6e 69 6c 2e 22 0a 20 20 3a 74 79 70 65 20 27    28 63 68 6f 69 63 65 0a 20 20 20 20 20 20 20 20  | .nil."...:type.'(choice......... | 
| 0fe0 |  20 20 28 6e 75 6d 62 65 72 20 3a 74 61 67 20 22    4d 61 78 69 6d 75 6d 20 6f 66 20 62 75 66 66 65  | ..(number.:tag."Maximum.of.buffe | 
| 1000 |  72 73 20 61 6c 6c 6f 77 65 64 22 29 0a 20 20 20    20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74  | rs.allowed")...........(const.:t | 
| 1020 |  61 67 20 22 44 69 73 61 62 6c 65 20 63 6c 65 61    6e 75 70 22 20 6e 69 6c 29 29 0a 20 20 3a 67 72  | ag."Disable.cleanup".nil))...:gr | 
| 1040 |  6f 75 70 20 27 64 65 61 64 67 72 65 70 29 0a 0a    28 64 65 66 63 75 73 74 6f 6d 20 64 65 61 64 67  | oup.'deadgrep)..(defcustom.deadg | 
| 1060 |  72 65 70 2d 70 72 6f 6a 65 63 74 2d 72 6f 6f 74    2d 66 75 6e 63 74 69 6f 6e 0a 20 20 23 27 64 65  | rep-project-root-function...#'de | 
| 1080 |  61 64 67 72 65 70 2d 2d 70 72 6f 6a 65 63 74 2d    72 6f 6f 74 0a 20 20 22 46 75 6e 63 74 69 6f 6e  | adgrep--project-root..."Function | 
| 10a0 |  20 63 61 6c 6c 65 64 20 62 79 20 60 64 65 61 64    67 72 65 70 27 20 74 6f 20 77 6f 72 6b 20 6f 75  | .called.by.`deadgrep'.to.work.ou | 
| 10c0 |  74 20 74 68 65 20 72 6f 6f 74 20 64 69 72 65 63    74 6f 72 79 0a 74 6f 20 73 65 61 72 63 68 20 66  | t.the.root.directory.to.search.f | 
| 10e0 |  72 6f 6d 2e 0a 0a 53 65 65 20 61 6c 73 6f 20 60    64 65 61 64 67 72 65 70 2d 70 72 6f 6a 65 63 74  | rom...See.also.`deadgrep-project | 
| 1100 |  2d 72 6f 6f 74 2d 6f 76 65 72 72 69 64 65 73 27    2e 22 0a 20 20 3a 74 79 70 65 20 27 66 75 6e 63  | -root-overrides'."...:type.'func | 
| 1120 |  74 69 6f 6e 0a 20 20 3a 67 72 6f 75 70 20 27 64    65 61 64 67 72 65 70 29 0a 0a 28 64 65 66 76 61  | tion...:group.'deadgrep)..(defva | 
| 1140 |  72 20 64 65 61 64 67 72 65 70 2d 70 72 6f 6a 65    63 74 2d 72 6f 6f 74 2d 6f 76 65 72 72 69 64 65  | r.deadgrep-project-root-override | 
| 1160 |  73 20 6e 69 6c 0a 20 20 22 41 6e 20 61 6c 69 73    74 20 61 73 73 6f 63 69 61 74 69 6e 67 20 70 72  | s.nil..."An.alist.associating.pr | 
| 1180 |  6f 6a 65 63 74 20 64 69 72 65 63 74 6f 72 69 65    73 20 77 69 74 68 20 74 68 65 20 64 65 73 69 72  | oject.directories.with.the.desir | 
| 11a0 |  65 64 0a 73 65 61 72 63 68 20 64 69 72 65 63 74    6f 72 79 2e 0a 0a 54 68 69 73 20 69 73 20 75 73  | ed.search.directory...This.is.us | 
| 11c0 |  65 66 75 6c 20 66 6f 72 20 6c 61 72 67 65 20 72    65 70 6f 73 20 77 68 65 72 65 20 79 6f 75 20 6f  | eful.for.large.repos.where.you.o | 
| 11e0 |  6e 6c 79 20 77 61 6e 74 20 74 6f 20 73 65 61 72    63 68 20 61 0a 73 75 62 64 69 72 65 63 74 6f 72  | nly.want.to.search.a.subdirector | 
| 1200 |  79 2e 20 49 74 27 73 20 61 6c 73 6f 20 68 61 6e    64 79 20 66 6f 72 20 6e 65 73 74 65 64 20 72 65  | y..It's.also.handy.for.nested.re | 
| 1220 |  70 6f 73 20 77 68 65 72 65 20 79 6f 75 20 77 61    6e 74 20 74 6f 0a 73 65 61 72 63 68 20 66 72 6f  | pos.where.you.want.to.search.fro | 
| 1240 |  6d 20 74 68 65 20 70 61 72 65 6e 74 2e 0a 0a 54    68 69 73 20 61 66 66 65 63 74 73 20 74 68 65 20  | m.the.parent...This.affects.the. | 
| 1260 |  62 65 68 61 76 69 6f 75 72 20 6f 66 20 60 64 65    61 64 67 72 65 70 2d 2d 70 72 6f 6a 65 63 74 2d  | behaviour.of.`deadgrep--project- | 
| 1280 |  72 6f 6f 74 27 2c 20 73 6f 20 74 68 69 73 0a 76    61 72 69 61 62 6c 65 20 68 61 73 20 6e 6f 20 65  | root',.so.this.variable.has.no.e | 
| 12a0 |  66 66 65 63 74 20 69 66 20 79 6f 75 20 63 68 61    6e 67 65 0a 60 64 65 61 64 67 72 65 70 2d 70 72  | ffect.if.you.change.`deadgrep-pr | 
| 12c0 |  6f 6a 65 63 74 2d 72 6f 6f 74 2d 66 75 6e 63 74    69 6f 6e 27 2e 22 29 0a 0a 28 64 65 66 76 61 72  | oject-root-function'.")..(defvar | 
| 12e0 |  20 64 65 61 64 67 72 65 70 2d 68 69 73 74 6f 72    79 0a 20 20 6e 69 6c 0a 20 20 22 41 20 6c 69 73  | .deadgrep-history...nil..."A.lis | 
| 1300 |  74 20 6f 66 20 74 68 65 20 70 72 65 76 69 6f 75    73 20 73 65 61 72 63 68 20 74 65 72 6d 73 2e 22  | t.of.the.previous.search.terms." | 
| 1320 |  29 0a 0a 28 64 65 66 76 61 72 20 64 65 61 64 67    72 65 70 2d 6d 61 78 2d 6c 69 6e 65 2d 6c 65 6e  | )..(defvar.deadgrep-max-line-len | 
| 1340 |  67 74 68 0a 20 20 35 30 30 0a 20 20 22 54 72 75    6e 63 61 74 65 20 6c 69 6e 65 73 20 69 66 20 74  | gth...500..."Truncate.lines.if.t | 
| 1360 |  68 65 79 20 61 72 65 20 6c 6f 6e 67 65 72 20 74    68 61 6e 20 74 68 69 73 2e 0a 0a 45 6d 61 63 73  | hey.are.longer.than.this...Emacs | 
| 1380 |  20 70 65 72 66 6f 72 6d 61 6e 63 65 20 63 61 6e    20 62 65 20 72 65 61 6c 6c 79 20 70 6f 6f 72 20  | .performance.can.be.really.poor. | 
| 13a0 |  77 69 74 68 20 6c 6f 6e 67 20 6c 69 6e 65 73 2c    20 73 6f 20 74 68 69 73 0a 65 6e 73 75 72 65 73  | with.long.lines,.so.this.ensures | 
| 13c0 |  20 74 68 61 74 20 73 65 61 72 63 68 69 6e 67 20    6d 69 6e 69 66 69 65 64 20 66 69 6c 65 73 20 64  | .that.searching.minified.files.d | 
| 13e0 |  6f 65 73 20 6e 6f 74 20 73 6c 6f 77 20 64 6f 77    6e 20 6d 6f 76 65 6d 65 6e 74 0a 69 6e 20 72 65  | oes.not.slow.down.movement.in.re | 
| 1400 |  73 75 6c 74 73 20 62 75 66 66 65 72 73 2e 0a 0a    49 6e 20 65 78 74 72 65 6d 65 20 63 61 73 65 73  | sults.buffers...In.extreme.cases | 
| 1420 |  20 28 31 30 30 4b 69 42 2b 20 73 69 6e 67 6c 65    2d 6c 69 6e 65 20 66 69 6c 65 73 29 2c 20 77 65  | .(100KiB+.single-line.files),.we | 
| 1440 |  20 63 61 6e 20 67 65 74 20 61 20 73 74 61 63 6b    0a 6f 76 65 72 66 6c 6f 77 20 6f 6e 20 6f 75 72  | .can.get.a.stack.overflow.on.our | 
| 1460 |  20 72 65 67 65 78 70 20 6d 61 74 63 68 65 72 73    20 69 66 20 77 65 20 64 6f 6e 27 74 20 61 70 70  | .regexp.matchers.if.we.don't.app | 
| 1480 |  6c 79 20 74 68 69 73 2e 22 29 0a 0a 28 64 65 66    63 75 73 74 6f 6d 20 64 65 61 64 67 72 65 70 2d  | ly.this.")..(defcustom.deadgrep- | 
| 14a0 |  64 69 73 70 6c 61 79 2d 62 75 66 66 65 72 2d 66    75 6e 63 74 69 6f 6e 0a 20 20 27 73 77 69 74 63  | display-buffer-function...'switc | 
| 14c0 |  68 2d 74 6f 2d 62 75 66 66 65 72 2d 6f 74 68 65    72 2d 77 69 6e 64 6f 77 0a 20 20 22 46 75 6e 63  | h-to-buffer-other-window..."Func | 
| 14e0 |  74 69 6f 6e 20 75 73 65 64 20 74 6f 20 73 68 6f    77 20 74 68 65 20 64 65 61 64 67 72 65 70 20 72  | tion.used.to.show.the.deadgrep.r | 
| 1500 |  65 73 75 6c 74 20 62 75 66 66 65 72 2e 0a 0a 54    68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20  | esult.buffer...This.function.is. | 
| 1520 |  63 61 6c 6c 65 64 20 77 69 74 68 20 6f 6e 65 20    61 72 67 75 6d 65 6e 74 2c 20 74 68 65 20 72 65  | called.with.one.argument,.the.re | 
| 1540 |  73 75 6c 74 73 20 62 75 66 66 65 72 20 74 6f 0a    64 69 73 70 6c 61 79 2e 22 0a 20 20 3a 74 79 70  | sults.buffer.to.display."...:typ | 
| 1560 |  65 20 27 66 75 6e 63 74 69 6f 6e 0a 20 20 3a 67    72 6f 75 70 20 27 64 65 61 64 67 72 65 70 29 0a  | e.'function...:group.'deadgrep). | 
| 1580 |  0a 28 64 65 66 66 61 63 65 20 64 65 61 64 67 72    65 70 2d 6d 65 74 61 2d 66 61 63 65 0a 20 20 27  | .(defface.deadgrep-meta-face...' | 
| 15a0 |  28 28 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e    74 2d 6c 6f 63 6b 2d 63 6f 6d 6d 65 6e 74 2d 66  | ((t.:inherit.font-lock-comment-f | 
| 15c0 |  61 63 65 29 29 0a 20 20 22 46 61 63 65 20 75 73    65 64 20 66 6f 72 20 64 65 61 64 67 72 65 70 20  | ace))..."Face.used.for.deadgrep. | 
| 15e0 |  55 49 20 74 65 78 74 2e 22 0a 20 20 3a 67 72 6f    75 70 20 27 64 65 61 64 67 72 65 70 29 0a 0a 28  | UI.text."...:group.'deadgrep)..( | 
| 1600 |  64 65 66 66 61 63 65 20 64 65 61 64 67 72 65 70    2d 66 69 6c 65 6e 61 6d 65 2d 66 61 63 65 0a 20  | defface.deadgrep-filename-face.. | 
| 1620 |  20 27 28 28 74 20 3a 69 6e 68 65 72 69 74 20 62    6f 6c 64 29 29 0a 20 20 22 46 61 63 65 20 75 73  | .'((t.:inherit.bold))..."Face.us | 
| 1640 |  65 64 20 66 6f 72 20 66 69 6c 65 6e 61 6d 65 20    68 65 61 64 69 6e 67 73 20 69 6e 20 72 65 73 75  | ed.for.filename.headings.in.resu | 
| 1660 |  6c 74 73 20 62 75 66 66 65 72 73 2e 22 0a 20 20    3a 67 72 6f 75 70 20 27 64 65 61 64 67 72 65 70  | lts.buffers."...:group.'deadgrep | 
| 1680 |  29 0a 0a 28 64 65 66 66 61 63 65 20 64 65 61 64    67 72 65 70 2d 73 65 61 72 63 68 2d 74 65 72 6d  | )..(defface.deadgrep-search-term | 
| 16a0 |  2d 66 61 63 65 0a 20 20 27 28 28 74 20 3a 69 6e    68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d  | -face...'((t.:inherit.font-lock- | 
| 16c0 |  76 61 72 69 61 62 6c 65 2d 6e 61 6d 65 2d 66 61    63 65 29 29 0a 20 20 22 46 61 63 65 20 75 73 65  | variable-name-face))..."Face.use | 
| 16e0 |  64 20 66 6f 72 20 74 68 65 20 73 65 61 72 63 68    20 74 65 72 6d 20 69 6e 20 72 65 73 75 6c 74 73  | d.for.the.search.term.in.results | 
| 1700 |  20 62 75 66 66 65 72 73 2e 22 0a 20 20 3a 67 72    6f 75 70 20 27 64 65 61 64 67 72 65 70 29 0a 0a  | .buffers."...:group.'deadgrep).. | 
| 1720 |  28 64 65 66 66 61 63 65 20 64 65 61 64 67 72 65    70 2d 72 65 67 65 78 70 2d 6d 65 74 61 63 68 61  | (defface.deadgrep-regexp-metacha | 
| 1740 |  72 2d 66 61 63 65 0a 20 20 27 28 28 74 20 3a 69    6e 68 65 72 69 74 0a 20 20 20 20 20 20 20 3b 3b  | r-face...'((t.:inherit........;; | 
| 1760 |  20 54 4f 44 4f 3a 20 49 27 76 65 20 73 65 65 6e    20 61 20 6d 6f 72 65 20 61 70 70 72 6f 70 72 69  | .TODO:.I've.seen.a.more.appropri | 
| 1780 |  61 74 65 20 66 61 63 65 20 69 6e 20 73 6f 6d 65    20 74 68 65 6d 65 73 2c 0a 20 20 20 20 20 20 20  | ate.face.in.some.themes,........ | 
| 17a0 |  3b 3b 20 66 69 6e 64 20 6f 75 74 20 77 68 61 74    20 74 6f 20 75 73 65 20 69 6e 73 74 65 61 64 20  | ;;.find.out.what.to.use.instead. | 
| 17c0 |  68 65 72 65 2e 0a 20 20 20 20 20 20 20 66 6f 6e    74 2d 6c 6f 63 6b 2d 63 6f 6e 73 74 61 6e 74 2d  | here.........font-lock-constant- | 
| 17e0 |  66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 75    73 65 64 20 66 6f 72 20 72 65 67 65 78 70 20 6d  | face))..."Face.used.for.regexp.m | 
| 1800 |  65 74 61 63 68 61 72 61 63 74 65 72 73 20 69 6e    20 73 65 61 72 63 68 20 74 65 72 6d 73 2e 22 0a  | etacharacters.in.search.terms.". | 
| 1820 |  20 20 3a 67 72 6f 75 70 20 27 64 65 61 64 67 72    65 70 29 0a 0a 28 64 65 66 66 61 63 65 20 64 65  | ..:group.'deadgrep)..(defface.de | 
| 1840 |  61 64 67 72 65 70 2d 6d 61 74 63 68 2d 66 61 63    65 0a 20 20 27 28 28 74 20 3a 69 6e 68 65 72 69  | adgrep-match-face...'((t.:inheri | 
| 1860 |  74 20 6d 61 74 63 68 29 29 0a 20 20 22 46 61 63    65 20 75 73 65 64 20 66 6f 72 20 74 68 65 20 70  | t.match))..."Face.used.for.the.p | 
| 1880 |  6f 72 74 69 6f 6e 20 6f 66 20 61 20 6c 69 6e 65    20 74 68 61 74 20 6d 61 74 63 68 65 73 20 74 68  | ortion.of.a.line.that.matches.th | 
| 18a0 |  65 20 73 65 61 72 63 68 20 74 65 72 6d 2e 22 0a    20 20 3a 67 72 6f 75 70 20 27 64 65 61 64 67 72  | e.search.term."...:group.'deadgr | 
| 18c0 |  65 70 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63    61 6c 20 64 65 61 64 67 72 65 70 2d 2d 73 65 61  | ep)..(defvar-local.deadgrep--sea | 
| 18e0 |  72 63 68 2d 74 65 72 6d 20 6e 69 6c 29 0a 3b 3b    20 45 6e 73 75 72 65 20 74 68 69 73 20 76 61 72  | rch-term.nil).;;.Ensure.this.var | 
| 1900 |  69 61 62 6c 65 20 69 73 20 69 67 6e 6f 72 65 64    20 62 79 20 60 6b 69 6c 6c 2d 61 6c 6c 2d 6c 6f  | iable.is.ignored.by.`kill-all-lo | 
| 1920 |  63 61 6c 2d 76 61 72 69 61 62 6c 65 73 27 20 77    68 65 6e 0a 3b 3b 20 73 77 69 74 63 68 69 6e 67  | cal-variables'.when.;;.switching | 
| 1940 |  20 62 65 74 77 65 65 6e 20 60 64 65 61 64 67 72    65 70 2d 6d 6f 64 65 27 20 61 6e 64 20 60 64 65  | .between.`deadgrep-mode'.and.`de | 
| 1960 |  61 64 67 72 65 70 2d 65 64 69 74 2d 6d 6f 64 65    27 2e 0a 28 70 75 74 20 27 64 65 61 64 67 72 65  | adgrep-edit-mode'..(put.'deadgre | 
| 1980 |  70 2d 2d 73 65 61 72 63 68 2d 74 65 72 6d 20 27    70 65 72 6d 61 6e 65 6e 74 2d 6c 6f 63 61 6c 20  | p--search-term.'permanent-local. | 
| 19a0 |  74 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61    6c 20 64 65 61 64 67 72 65 70 2d 2d 73 65 61 72  | t)..(defvar-local.deadgrep--sear | 
| 19c0 |  63 68 2d 74 79 70 65 20 27 73 74 72 69 6e 67 29    0a 28 70 75 74 20 27 64 65 61 64 67 72 65 70 2d  | ch-type.'string).(put.'deadgrep- | 
| 19e0 |  2d 73 65 61 72 63 68 2d 74 79 70 65 20 27 70 65    72 6d 61 6e 65 6e 74 2d 6c 6f 63 61 6c 20 74 29  | -search-type.'permanent-local.t) | 
| 1a00 |  0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 64    65 61 64 67 72 65 70 2d 2d 73 65 61 72 63 68 2d  | .(defvar-local.deadgrep--search- | 
| 1a20 |  63 61 73 65 20 27 73 6d 61 72 74 29 0a 28 70 75    74 20 27 64 65 61 64 67 72 65 70 2d 2d 73 65 61  | case.'smart).(put.'deadgrep--sea | 
| 1a40 |  72 63 68 2d 63 61 73 65 20 27 70 65 72 6d 61 6e    65 6e 74 2d 6c 6f 63 61 6c 20 74 29 0a 28 64 65  | rch-case.'permanent-local.t).(de | 
| 1a60 |  66 76 61 72 2d 6c 6f 63 61 6c 20 64 65 61 64 67    72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65 20 27  | fvar-local.deadgrep--file-type.' | 
| 1a80 |  61 6c 6c 29 0a 28 70 75 74 20 27 64 65 61 64 67    72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65 20 27  | all).(put.'deadgrep--file-type.' | 
| 1aa0 |  70 65 72 6d 61 6e 65 6e 74 2d 6c 6f 63 61 6c 20    74 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61  | permanent-local.t)..(defvar-loca | 
| 1ac0 |  6c 20 64 65 61 64 67 72 65 70 2d 2d 73 6b 69 70    2d 69 66 2d 68 69 64 64 65 6e 20 6e 69 6c 0a 20  | l.deadgrep--skip-if-hidden.nil.. | 
| 1ae0 |  20 22 57 68 65 74 68 65 72 20 64 65 61 64 67 72    65 70 20 73 68 6f 75 6c 64 20 69 67 6e 6f 72 65  | ."Whether.deadgrep.should.ignore | 
| 1b00 |  20 68 69 64 64 65 6e 20 66 69 6c 65 73 20 28 65    2e 67 2e 20 66 69 6c 65 73 20 63 61 6c 6c 65 64  | .hidden.files.(e.g..files.called | 
| 1b20 |  20 2e 66 6f 6f 29 2e 22 29 0a 28 70 75 74 20 27    64 65 61 64 67 72 65 70 2d 2d 73 6b 69 70 2d 69  | ..foo).").(put.'deadgrep--skip-i | 
| 1b40 |  66 2d 68 69 64 64 65 6e 20 27 70 65 72 6d 61 6e    65 6e 74 2d 6c 6f 63 61 6c 20 74 29 0a 28 64 65  | f-hidden.'permanent-local.t).(de | 
| 1b60 |  66 76 61 72 2d 6c 6f 63 61 6c 20 64 65 61 64 67    72 65 70 2d 2d 73 6b 69 70 2d 69 66 2d 76 63 73  | fvar-local.deadgrep--skip-if-vcs | 
| 1b80 |  2d 69 67 6e 6f 72 65 20 27 74 0a 20 20 22 57 68    65 74 68 65 72 20 64 65 61 64 67 72 65 70 20 73  | -ignore.'t..."Whether.deadgrep.s | 
| 1ba0 |  68 6f 75 6c 64 20 69 67 6e 6f 72 65 20 66 69 6c    65 73 20 69 66 20 74 68 65 79 27 72 65 20 6c 69  | hould.ignore.files.if.they're.li | 
| 1bc0 |  73 74 65 64 20 69 6e 20 2e 67 69 74 69 67 6e 6f    72 65 2e 22 29 0a 28 70 75 74 20 27 64 65 61 64  | sted.in..gitignore.").(put.'dead | 
| 1be0 |  67 72 65 70 2d 2d 73 6b 69 70 2d 69 66 2d 76 63    73 2d 69 67 6e 6f 72 65 20 27 70 65 72 6d 61 6e  | grep--skip-if-vcs-ignore.'perman | 
| 1c00 |  65 6e 74 2d 6c 6f 63 61 6c 20 74 29 0a 0a 28 64    65 66 76 61 72 2d 6c 6f 63 61 6c 20 64 65 61 64  | ent-local.t)..(defvar-local.dead | 
| 1c20 |  67 72 65 70 2d 2d 63 6f 6e 74 65 78 74 20 6e 69    6c 0a 20 20 22 57 68 65 6e 20 73 65 74 2c 20 61  | grep--context.nil..."When.set,.a | 
| 1c40 |  6c 73 6f 20 73 68 6f 77 20 63 6f 6e 74 65 78 74    20 6f 66 20 72 65 73 75 6c 74 73 2e 0a 54 68 69  | lso.show.context.of.results..Thi | 
| 1c60 |  73 20 69 73 20 73 74 6f 72 65 64 20 61 73 20 61    20 63 6f 6e 73 20 63 65 6c 6c 20 6f 66 20 69 6e  | s.is.stored.as.a.cons.cell.of.in | 
| 1c80 |  74 65 67 65 72 73 20 28 6c 69 6e 65 73 2d 62 65    66 6f 72 65 20 2e 20 6c 69 6e 65 73 2d 61 66 74  | tegers.(lines-before...lines-aft | 
| 1ca0 |  65 72 29 2e 22 29 0a 28 70 75 74 20 27 64 65 61    64 67 72 65 70 2d 2d 63 6f 6e 74 65 78 74 20 27  | er).").(put.'deadgrep--context.' | 
| 1cc0 |  70 65 72 6d 61 6e 65 6e 74 2d 6c 6f 63 61 6c 20    74 29 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c  | permanent-local.t).(defvar-local | 
| 1ce0 |  20 64 65 61 64 67 72 65 70 2d 2d 69 6e 69 74 69    61 6c 2d 66 69 6c 65 6e 61 6d 65 20 6e 69 6c 0a  | .deadgrep--initial-filename.nil. | 
| 1d00 |  20 20 22 54 68 65 20 66 69 6c 65 6e 61 6d 65 20    6f 66 20 74 68 65 20 62 75 66 66 65 72 20 74 68  | .."The.filename.of.the.buffer.th | 
| 1d20 |  61 74 20 64 65 61 64 67 72 65 70 20 77 61 73 20    73 74 61 72 74 65 64 20 66 72 6f 6d 2e 0a 55 73  | at.deadgrep.was.started.from..Us | 
| 1d40 |  65 64 20 74 6f 20 6f 66 66 65 72 20 62 65 74 74    65 72 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65  | ed.to.offer.better.default.value | 
| 1d60 |  73 20 66 6f 72 20 66 69 6c 65 20 6f 70 74 69 6f    6e 73 2e 22 29 0a 28 70 75 74 20 27 64 65 61 64  | s.for.file.options.").(put.'dead | 
| 1d80 |  67 72 65 70 2d 2d 69 6e 69 74 69 61 6c 2d 66 69    6c 65 6e 61 6d 65 20 27 70 65 72 6d 61 6e 65 6e  | grep--initial-filename.'permanen | 
| 1da0 |  74 2d 6c 6f 63 61 6c 20 74 29 0a 0a 28 64 65 66    76 61 72 2d 6c 6f 63 61 6c 20 64 65 61 64 67 72  | t-local.t)..(defvar-local.deadgr | 
| 1dc0 |  65 70 2d 2d 63 75 72 72 65 6e 74 2d 66 69 6c 65    20 6e 69 6c 0a 20 20 22 54 68 65 20 66 69 6c 65  | ep--current-file.nil..."The.file | 
| 1de0 |  20 77 65 27 72 65 20 63 75 72 72 65 6e 74 6c 79    20 69 6e 73 65 72 74 69 6e 67 20 72 65 73 75 6c  | .we're.currently.inserting.resul | 
| 1e00 |  74 73 20 66 6f 72 2e 22 29 0a 28 64 65 66 76 61    72 2d 6c 6f 63 61 6c 20 64 65 61 64 67 72 65 70  | ts.for.").(defvar-local.deadgrep | 
| 1e20 |  2d 2d 73 70 69 6e 6e 65 72 20 6e 69 6c 29 0a 28    64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 64 65 61  | --spinner.nil).(defvar-local.dea | 
| 1e40 |  64 67 72 65 70 2d 2d 72 65 6d 61 69 6e 69 6e 67    2d 6f 75 74 70 75 74 20 6e 69 6c 0a 20 20 22 57  | dgrep--remaining-output.nil..."W | 
| 1e60 |  65 20 63 61 6e 27 74 20 67 75 61 72 61 6e 74 65    65 20 74 68 61 74 20 6f 75 72 20 70 72 6f 63 65  | e.can't.guarantee.that.our.proce | 
| 1e80 |  73 73 20 66 69 6c 74 65 72 20 77 69 6c 6c 20 61    6c 77 61 79 73 20 72 65 63 65 69 76 65 20 77 68  | ss.filter.will.always.receive.wh | 
| 1ea0 |  6f 6c 65 20 6c 69 6e 65 73 2e 0a 57 65 20 73 61    76 65 20 74 68 65 20 6c 61 73 74 20 6c 69 6e 65  | ole.lines..We.save.the.last.line | 
| 1ec0 |  20 68 65 72 65 2c 20 69 6e 20 63 61 73 65 20 77    65 20 6e 65 65 64 20 74 6f 20 61 70 70 65 6e 64  | .here,.in.case.we.need.to.append | 
| 1ee0 |  20 6d 6f 72 65 20 74 65 78 74 20 74 6f 20 69 74    2e 22 29 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61  | .more.text.to.it.").(defvar-loca | 
| 1f00 |  6c 20 64 65 61 64 67 72 65 70 2d 2d 70 6f 73 74    70 6f 6e 65 2d 73 74 61 72 74 20 6e 69 6c 0a 20  | l.deadgrep--postpone-start.nil.. | 
| 1f20 |  20 22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 64 6f    6e 27 74 20 28 72 65 29 73 74 61 72 74 20 73 65  | ."If.non-nil,.don't.(re)start.se | 
| 1f40 |  61 72 63 68 65 73 2e 22 29 0a 28 64 65 66 76 61    72 2d 6c 6f 63 61 6c 20 64 65 61 64 67 72 65 70  | arches.").(defvar-local.deadgrep | 
| 1f60 |  2d 2d 72 75 6e 6e 69 6e 67 20 6e 69 6c 0a 20 20    22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 61 20 73  | --running.nil..."If.non-nil,.a.s | 
| 1f80 |  65 61 72 63 68 20 69 73 20 73 74 69 6c 6c 20 72    75 6e 6e 69 6e 67 2e 22 29 0a 28 64 65 66 76 61  | earch.is.still.running.").(defva | 
| 1fa0 |  72 2d 6c 6f 63 61 6c 20 64 65 61 64 67 72 65 70    2d 2d 72 65 73 75 6c 74 2d 63 6f 75 6e 74 20 6e  | r-local.deadgrep--result-count.n | 
| 1fc0 |  69 6c 0a 20 20 22 54 68 65 20 6e 75 6d 62 65 72    20 6f 66 20 6d 61 74 63 68 65 73 20 66 6f 75 6e  | il..."The.number.of.matches.foun | 
| 1fe0 |  64 20 66 6f 72 20 74 68 65 20 63 75 72 72 65 6e    74 20 73 65 61 72 63 68 2e 22 29 0a 0a 28 64 65  | d.for.the.current.search.")..(de | 
| 2000 |  66 76 61 72 2d 6c 6f 63 61 6c 20 64 65 61 64 67    72 65 70 2d 2d 64 65 62 75 67 2d 63 6f 6d 6d 61  | fvar-local.deadgrep--debug-comma | 
| 2020 |  6e 64 20 6e 69 6c 29 0a 28 70 75 74 20 27 64 65    61 64 67 72 65 70 2d 2d 64 65 62 75 67 2d 63 6f  | nd.nil).(put.'deadgrep--debug-co | 
| 2040 |  6d 6d 61 6e 64 20 27 70 65 72 6d 61 6e 65 6e 74    2d 6c 6f 63 61 6c 20 74 29 0a 28 64 65 66 76 61  | mmand.'permanent-local.t).(defva | 
| 2060 |  72 2d 6c 6f 63 61 6c 20 64 65 61 64 67 72 65 70    2d 2d 64 65 62 75 67 2d 66 69 72 73 74 2d 6f 75  | r-local.deadgrep--debug-first-ou | 
| 2080 |  74 70 75 74 20 6e 69 6c 29 0a 28 70 75 74 20 27    64 65 61 64 67 72 65 70 2d 2d 64 65 62 75 67 2d  | tput.nil).(put.'deadgrep--debug- | 
| 20a0 |  66 69 72 73 74 2d 6f 75 74 70 75 74 20 27 70 65    72 6d 61 6e 65 6e 74 2d 6c 6f 63 61 6c 20 74 29  | first-output.'permanent-local.t) | 
| 20c0 |  0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20    64 65 61 64 67 72 65 70 2d 2d 69 6d 65 6e 75 2d  | ..(defvar-local.deadgrep--imenu- | 
| 20e0 |  61 6c 69 73 74 20 6e 69 6c 0a 20 20 22 41 6c 69    73 74 20 74 68 61 74 20 73 74 6f 72 65 73 20 66  | alist.nil..."Alist.that.stores.f | 
| 2100 |  69 6c 65 6e 61 6d 65 20 61 6e 64 20 70 6f 73 69    74 69 6f 6e 20 66 6f 72 20 65 61 63 68 20 6d 61  | ilename.and.position.for.each.ma | 
| 2120 |  74 63 68 65 64 20 66 69 6c 65 73 2e 0a 49 74 20    69 73 20 75 73 65 64 20 74 6f 20 63 72 65 61 74  | tched.files..It.is.used.to.creat | 
| 2140 |  65 20 60 69 6d 65 6e 75 27 20 69 6e 64 65 78 2e    22 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20 64 65  | e.`imenu'.index.")..(defconst.de | 
| 2160 |  61 64 67 72 65 70 2d 2d 70 6f 73 69 74 69 6f 6e    2d 63 6f 6c 75 6d 6e 2d 77 69 64 74 68 20 35 29  | adgrep--position-column-width.5) | 
| 2180 |  0a 0a 28 64 65 66 63 6f 6e 73 74 20 64 65 61 64    67 72 65 70 2d 2d 63 6f 6c 6f 72 2d 63 6f 64 65  | ..(defconst.deadgrep--color-code | 
| 21a0 |  0a 20 20 28 72 78 20 22 5c 78 31 62 5b 22 20 28    2b 20 64 69 67 69 74 29 20 22 6d 22 29 0a 20 20  | ...(rx."\x1b[".(+.digit)."m")... | 
| 21c0 |  22 52 65 67 75 6c 61 72 20 65 78 70 72 65 73 73    69 6f 6e 20 66 6f 72 20 61 6e 20 41 4e 53 49 20  | "Regular.expression.for.an.ANSI. | 
| 21e0 |  63 6f 6c 6f 72 20 63 6f 64 65 2e 22 29 0a 0a 28    64 65 66 76 61 72 20 64 65 61 64 67 72 65 70 2d  | color.code.")..(defvar.deadgrep- | 
| 2200 |  2d 69 6e 63 72 65 6d 65 6e 74 61 6c 2d 61 63 74    69 76 65 20 6e 69 6c 29 0a 0a 28 64 65 66 75 6e  | -incremental-active.nil)..(defun | 
| 2220 |  20 64 65 61 64 67 72 65 70 2d 2d 69 6e 73 65 72    74 2d 6f 75 74 70 75 74 20 28 6f 75 74 70 75 74  | .deadgrep--insert-output.(output | 
| 2240 |  20 26 6f 70 74 69 6f 6e 61 6c 20 66 69 6e 69 73    68 65 64 29 0a 20 20 22 50 72 6f 70 65 72 74 69  | .&optional.finished)..."Properti | 
| 2260 |  7a 65 20 4f 55 54 50 55 54 20 66 72 6f 6d 20 72    69 67 72 65 70 20 61 6e 64 20 77 72 69 74 65 20  | ze.OUTPUT.from.rigrep.and.write. | 
| 2280 |  74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 62    75 66 66 65 72 2e 22 0a 20 20 3b 3b 20 49 66 20  | to.the.current.buffer."...;;.If. | 
| 22a0 |  77 65 20 68 61 64 20 61 6e 20 75 6e 66 69 6e 69    73 68 65 64 20 6c 69 6e 65 20 66 72 6f 6d 20 6f  | we.had.an.unfinished.line.from.o | 
| 22c0 |  75 72 20 6c 61 73 74 20 63 61 6c 6c 2c 20 69 6e    63 6c 75 64 65 20 74 68 61 74 2e 0a 20 20 28 77  | ur.last.call,.include.that....(w | 
| 22e0 |  68 65 6e 20 64 65 61 64 67 72 65 70 2d 2d 72 65    6d 61 69 6e 69 6e 67 2d 6f 75 74 70 75 74 0a 20  | hen.deadgrep--remaining-output.. | 
| 2300 |  20 20 20 28 73 65 74 71 20 6f 75 74 70 75 74 20    28 63 6f 6e 63 61 74 20 64 65 61 64 67 72 65 70  | ...(setq.output.(concat.deadgrep | 
| 2320 |  2d 2d 72 65 6d 61 69 6e 69 6e 67 2d 6f 75 74 70    75 74 20 6f 75 74 70 75 74 29 29 0a 20 20 20 20  | --remaining-output.output))..... | 
| 2340 |  28 73 65 74 71 20 64 65 61 64 67 72 65 70 2d 2d    72 65 6d 61 69 6e 69 6e 67 2d 6f 75 74 70 75 74  | (setq.deadgrep--remaining-output | 
| 2360 |  20 6e 69 6c 29 29 0a 0a 20 20 28 6c 65 74 20 28    28 69 6e 68 69 62 69 74 2d 72 65 61 64 2d 6f 6e  | .nil))....(let.((inhibit-read-on | 
| 2380 |  6c 79 20 74 29 0a 20 20 20 20 20 20 20 20 28 6c    69 6e 65 73 20 28 73 2d 6c 69 6e 65 73 20 6f 75  | ly.t).........(lines.(s-lines.ou | 
| 23a0 |  74 70 75 74 29 29 0a 20 20 20 20 20 20 20 20 70    72 65 76 2d 6c 69 6e 65 2d 6e 75 6d 29 0a 20 20  | tput)).........prev-line-num)... | 
| 23c0 |  20 20 3b 3b 20 50 72 6f 63 65 73 73 20 66 69 6c    74 65 72 73 20 72 75 6e 20 61 73 79 6e 63 68 72  | ..;;.Process.filters.run.asynchr | 
| 23e0 |  6f 6e 6f 75 73 6c 79 2c 20 61 6e 64 20 64 6f 6e    27 74 20 67 75 61 72 61 6e 74 65 65 20 74 68 61  | onously,.and.don't.guarantee.tha | 
| 2400 |  74 0a 20 20 20 20 3b 3b 20 4f 55 54 50 55 54 20    65 6e 64 73 20 77 69 74 68 20 61 20 63 6f 6d 70  | t.....;;.OUTPUT.ends.with.a.comp | 
| 2420 |  6c 65 74 65 20 6c 69 6e 65 2e 20 53 61 76 65 20    74 68 65 20 6c 61 73 74 20 6c 69 6e 65 20 66 6f  | lete.line..Save.the.last.line.fo | 
| 2440 |  72 0a 20 20 20 20 3b 3b 20 6c 61 74 65 72 20 70    72 6f 63 65 73 73 69 6e 67 2e 0a 20 20 20 20 28  | r.....;;.later.processing......( | 
| 2460 |  75 6e 6c 65 73 73 20 66 69 6e 69 73 68 65 64 0a    20 20 20 20 20 20 28 73 65 74 71 20 64 65 61 64  | unless.finished.......(setq.dead | 
| 2480 |  67 72 65 70 2d 2d 72 65 6d 61 69 6e 69 6e 67 2d    6f 75 74 70 75 74 20 28 2d 6c 61 73 74 2d 69 74  | grep--remaining-output.(-last-it | 
| 24a0 |  65 6d 20 6c 69 6e 65 73 29 29 0a 20 20 20 20 20    20 28 73 65 74 71 20 6c 69 6e 65 73 20 28 62 75  | em.lines)).......(setq.lines.(bu | 
| 24c0 |  74 6c 61 73 74 20 6c 69 6e 65 73 29 29 29 0a 0a    20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73  | tlast.lines)))......(save-excurs | 
| 24e0 |  69 6f 6e 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d    63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29  | ion.......(goto-char.(point-max) | 
| 2500 |  29 0a 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20    28 6c 69 6e 65 20 6c 69 6e 65 73 29 0a 20 20 20  | ).......(dolist.(line.lines).... | 
| 2520 |  20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20    20 20 20 20 3b 3b 20 49 67 6e 6f 72 65 20 62 6c  | .....(cond..........;;.Ignore.bl | 
| 2540 |  61 6e 6b 20 6c 69 6e 65 73 2e 0a 20 20 20 20 20    20 20 20 20 28 28 73 2d 62 6c 61 6e 6b 3f 20 6c  | ank.lines...........((s-blank?.l | 
| 2560 |  69 6e 65 29 29 0a 20 20 20 20 20 20 20 20 20 3b    3b 20 4c 69 6e 65 73 20 6f 66 20 6a 75 73 74 20  | ine))..........;;.Lines.of.just. | 
| 2580 |  2d 2d 20 61 72 65 20 75 73 65 64 20 61 73 20 61    20 63 6f 6e 74 65 78 74 20 73 65 70 61 72 61 74  | --.are.used.as.a.context.separat | 
| 25a0 |  6f 72 20 77 68 65 6e 0a 20 20 20 20 20 20 20 20    20 3b 3b 20 63 61 6c 6c 69 6e 67 20 72 69 70 67  | or.when..........;;.calling.ripg | 
| 25c0 |  72 65 70 20 77 69 74 68 20 63 6f 6e 74 65 78 74    20 66 6c 61 67 73 2e 0a 20 20 20 20 20 20 20 20  | rep.with.context.flags.......... | 
| 25e0 |  20 28 28 73 74 72 69 6e 67 3d 20 6c 69 6e 65 20    22 2d 2d 22 29 0a 20 20 20 20 20 20 20 20 20 20  | .((string=.line."--")........... | 
| 2600 |  28 6c 65 74 20 28 28 73 65 70 61 72 61 74 6f 72    20 22 2d 2d 22 29 29 0a 20 20 20 20 20 20 20 20  | (let.((separator."--"))......... | 
| 2620 |  20 20 20 20 3b 3b 20 54 72 79 20 74 6f 20 6d 61    6b 65 20 74 68 65 20 73 65 70 61 72 61 74 6f 72  | ....;;.Try.to.make.the.separator | 
| 2640 |  20 6c 65 6e 67 74 68 20 6d 61 74 63 68 20 74 68    65 20 70 72 65 76 69 6f 75 73 0a 20 20 20 20 20  | .length.match.the.previous...... | 
| 2660 |  20 20 20 20 20 20 20 3b 3b 20 6c 69 6e 65 20 6e    75 6d 62 65 72 73 2e 0a 20 20 20 20 20 20 20 20  | .......;;.line.numbers.......... | 
| 2680 |  20 20 20 20 28 77 68 65 6e 20 70 72 65 76 2d 6c    69 6e 65 2d 6e 75 6d 0a 20 20 20 20 20 20 20 20  | ....(when.prev-line-num......... | 
| 26a0 |  20 20 20 20 20 20 28 73 65 74 71 20 73 65 70 61    72 61 74 6f 72 0a 20 20 20 20 20 20 20 20 20 20  | ......(setq.separator........... | 
| 26c0 |  20 20 20 20 20 20 20 20 20 20 28 73 2d 72 65 70    65 61 74 20 28 6c 6f 67 20 70 72 65 76 2d 6c 69  | ..........(s-repeat.(log.prev-li | 
| 26e0 |  6e 65 2d 6e 75 6d 20 31 30 29 20 22 2d 22 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69  | ne-num.10)."-"))).............(i | 
| 2700 |  6e 73 65 72 74 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 28 70 72 6f 70 65 72 74 69 7a 65 20 28  | nsert..............(propertize.( | 
| 2720 |  63 6f 6e 63 61 74 20 73 65 70 61 72 61 74 6f 72    20 22 5c 6e 22 29 0a 20 20 20 20 20 20 20 20 20  | concat.separator."\n").......... | 
| 2740 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    27 66 61 63 65 20 27 64 65 61 64 67 72 65 70 2d  | ................'face.'deadgrep- | 
| 2760 |  6d 65 74 61 2d 66 61 63 65 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | meta-face....................... | 
| 2780 |  20 20 20 27 64 65 61 64 67 72 65 70 2d 73 65 70    61 72 61 74 6f 72 20 74 29 29 29 29 0a 20 20 20  | ...'deadgrep-separator.t)))).... | 
| 27a0 |  20 20 20 20 20 20 3b 3b 20 49 66 20 77 65 20 68    61 76 65 20 61 20 77 61 72 6e 69 6e 67 20 6f 72  | ......;;.If.we.have.a.warning.or | 
| 27c0 |  20 64 6f 6e 27 74 20 68 61 76 65 20 61 20 63 6f    6c 6f 72 20 63 6f 64 65 2c 20 72 69 70 67 72 65  | .don't.have.a.color.code,.ripgre | 
| 27e0 |  70 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 6d 75    73 74 20 62 65 20 63 6f 6d 70 6c 61 69 6e 69 6e  | p..........;;.must.be.complainin | 
| 2800 |  67 20 61 62 6f 75 74 20 73 6f 6d 65 74 68 69 6e    67 20 28 65 2e 67 2e 20 7a 65 72 6f 20 6d 61 74  | g.about.something.(e.g..zero.mat | 
| 2820 |  63 68 65 73 20 66 6f 72 0a 20 20 20 20 20 20 20    20 20 3b 3b 20 61 20 67 6c 6f 62 2c 20 6f 72 20  | ches.for..........;;.a.glob,.or. | 
| 2840 |  70 65 72 6d 69 73 73 69 6f 6e 20 64 65 6e 69 65    64 20 6f 6e 20 73 6f 6d 65 20 64 69 72 65 63 74  | permission.denied.on.some.direct | 
| 2860 |  6f 72 69 65 73 29 2e 0a 20 20 20 20 20 20 20 20    20 28 28 6f 72 0a 20 20 20 20 20 20 20 20 20 20  | ories)...........((or........... | 
| 2880 |  20 28 73 2d 73 74 61 72 74 73 2d 77 69 74 68 2d    70 20 22 57 41 52 4e 49 4e 47 3a 20 22 20 6c 69  | .(s-starts-with-p."WARNING:.".li | 
| 28a0 |  6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28    6e 6f 74 20 28 73 2d 6d 61 74 63 68 65 73 2d 70  | ne)............(not.(s-matches-p | 
| 28c0 |  20 64 65 61 64 67 72 65 70 2d 2d 63 6f 6c 6f 72    2d 63 6f 64 65 20 6c 69 6e 65 29 29 29 0a 20 20  | .deadgrep--color-code.line)))... | 
| 28e0 |  20 20 20 20 20 20 20 20 28 77 68 65 6e 20 64 65    61 64 67 72 65 70 2d 2d 63 75 72 72 65 6e 74 2d  | ........(when.deadgrep--current- | 
| 2900 |  66 69 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 73 65 74 71 20 64 65 61 64 67 72 65 70 2d  | file.............(setq.deadgrep- | 
| 2920 |  2d 63 75 72 72 65 6e 74 2d 66 69 6c 65 20 6e 69    6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28  | -current-file.nil).............( | 
| 2940 |  69 6e 73 65 72 74 20 22 5c 6e 22 29 29 0a 20 20    20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20  | insert."\n"))...........(insert. | 
| 2960 |  6c 69 6e 65 20 22 5c 6e 5c 6e 22 29 29 0a 20 20    20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20  | line."\n\n"))..........(t....... | 
| 2980 |  20 20 20 20 28 2d 6c 65 74 2a 20 28 28 74 72 75    6e 63 61 74 65 2d 70 20 28 3e 20 28 6c 65 6e 67  | ....(-let*.((truncate-p.(>.(leng | 
| 29a0 |  74 68 20 6c 69 6e 65 29 20 64 65 61 64 67 72 65    70 2d 6d 61 78 2d 6c 69 6e 65 2d 6c 65 6e 67 74  | th.line).deadgrep-max-line-lengt | 
| 29c0 |  68 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 69 6e 65 0a 20 20 20 20  | h))...................(line..... | 
| 29e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    69 66 20 74 72 75 6e 63 61 74 65 2d 70 0a 20 20  | ...............(if.truncate-p... | 
| 2a00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 73 75 62 73 74 72 69 6e 67 20  | .....................(substring. | 
| 2a20 |  6c 69 6e 65 20 30 20 64 65 61 64 67 72 65 70 2d    6d 61 78 2d 6c 69 6e 65 2d 6c 65 6e 67 74 68 29  | line.0.deadgrep-max-line-length) | 
| 2a40 |  0a 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 29 29 0a 20 20 20  | ......................line)).... | 
| 2a60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    28 66 69 6c 65 6e 61 6d 65 20 6c 69 6e 65 2d 6e  | ...............((filename.line-n | 
| 2a80 |  75 6d 20 63 6f 6e 74 65 6e 74 29 20 28 64 65 61    64 67 72 65 70 2d 2d 73 70 6c 69 74 2d 6c 69 6e  | um.content).(deadgrep--split-lin | 
| 2aa0 |  65 20 6c 69 6e 65 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d  | e.line))...................(form | 
| 2ac0 |  61 74 74 65 64 2d 6c 69 6e 65 2d 6e 75 6d 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | atted-line-num.................. | 
| 2ae0 |  20 20 28 73 2d 70 61 64 2d 72 69 67 68 74 20 64    65 61 64 67 72 65 70 2d 2d 70 6f 73 69 74 69 6f  | ..(s-pad-right.deadgrep--positio | 
| 2b00 |  6e 2d 63 6f 6c 75 6d 6e 2d 77 69 64 74 68 20 22    20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | n-column-width.".".............. | 
| 2b20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74  | ...................(number-to-st | 
| 2b40 |  72 69 6e 67 20 6c 69 6e 65 2d 6e 75 6d 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ring.line-num)))................ | 
| 2b60 |  20 20 20 28 70 72 65 74 74 79 2d 6c 69 6e 65 2d    6e 75 6d 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ...(pretty-line-num............. | 
| 2b80 |  20 20 20 20 20 20 20 28 70 72 6f 70 65 72 74 69    7a 65 20 66 6f 72 6d 61 74 74 65 64 2d 6c 69 6e  | .......(propertize.formatted-lin | 
| 2ba0 |  65 2d 6e 75 6d 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  | e-num........................... | 
| 2bc0 |  20 20 20 20 20 27 66 61 63 65 20 27 64 65 61 64    67 72 65 70 2d 6d 65 74 61 2d 66 61 63 65 0a 20  | .....'face.'deadgrep-meta-face.. | 
| 2be0 |  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 27 64  | ..............................'d | 
| 2c00 |  65 61 64 67 72 65 70 2d 66 69 6c 65 6e 61 6d 65    20 66 69 6c 65 6e 61 6d 65 0a 20 20 20 20 20 20  | eadgrep-filename.filename....... | 
| 2c20 |  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 64 65 61 64 67 72  | .........................'deadgr | 
| 2c40 |  65 70 2d 6c 69 6e 65 2d 6e 75 6d 62 65 72 20 6c    69 6e 65 2d 6e 75 6d 0a 20 20 20 20 20 20 20 20  | ep-line-number.line-num......... | 
| 2c60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 27 72 65 61 64 2d 6f 6e 6c  | .......................'read-onl | 
| 2c80 |  79 20 74 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  | y.t............................. | 
| 2ca0 |  20 20 20 27 66 72 6f 6e 74 2d 73 74 69 63 6b 79    20 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ...'front-sticky.t.............. | 
| 2cc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 27 72 65 61 72 2d 6e 6f 6e 73 74 69 63 6b  | ..................'rear-nonstick | 
| 2ce0 |  79 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 70 72 65 74 74 79 2d  | y.t))...................(pretty- | 
| 2d00 |  66 69 6c 65 6e 61 6d 65 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f  | filename....................(pro | 
| 2d20 |  70 65 72 74 69 7a 65 20 66 69 6c 65 6e 61 6d 65    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | pertize.filename................ | 
| 2d40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    27 66 61 63 65 20 27 64 65 61 64 67 72 65 70 2d  | ................'face.'deadgrep- | 
| 2d60 |  66 69 6c 65 6e 61 6d 65 2d 66 61 63 65 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | filename-face................... | 
| 2d80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 27 64 65    61 64 67 72 65 70 2d 66 69 6c 65 6e 61 6d 65 20  | .............'deadgrep-filename. | 
| 2da0 |  66 69 6c 65 6e 61 6d 65 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | filename........................ | 
| 2dc0 |  20 20 20 20 20 20 20 20 27 72 65 61 64 2d 6f 6e    6c 79 20 74 0a 20 20 20 20 20 20 20 20 20 20 20  | ........'read-only.t............ | 
| 2de0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 27 66 72 6f 6e 74 2d 73 74 69 63 6b  | ....................'front-stick | 
| 2e00 |  79 20 74 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20  | y.t))).............(cond........ | 
| 2e20 |  20 20 20 20 20 20 3b 3b 20 54 68 69 73 20 69 73    20 74 68 65 20 66 69 72 73 74 20 66 69 6c 65 20  | ......;;.This.is.the.first.file. | 
| 2e40 |  77 65 27 76 65 20 73 65 65 6e 2c 20 70 72 69 6e    74 20 74 68 65 20 68 65 61 64 69 6e 67 2e 0a 20  | we've.seen,.print.the.heading... | 
| 2e60 |  20 20 20 20 20 20 20 20 20 20 20 20 28 28 6e 75    6c 6c 20 64 65 61 64 67 72 65 70 2d 2d 63 75 72  | ............((null.deadgrep--cur | 
| 2e80 |  72 65 6e 74 2d 66 69 6c 65 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28  | rent-file)...............(push.( | 
| 2ea0 |  63 6f 6e 73 20 66 69 6c 65 6e 61 6d 65 20 28 70    6f 69 6e 74 29 29 20 64 65 61 64 67 72 65 70 2d  | cons.filename.(point)).deadgrep- | 
| 2ec0 |  2d 69 6d 65 6e 75 2d 61 6c 69 73 74 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73  | -imenu-alist)...............(ins | 
| 2ee0 |  65 72 74 20 70 72 65 74 74 79 2d 66 69 6c 65 6e    61 6d 65 20 22 5c 6e 22 29 29 0a 20 20 20 20 20  | ert.pretty-filename."\n"))...... | 
| 2f00 |  20 20 20 20 20 20 20 20 3b 3b 20 54 68 69 73 20    69 73 20 61 20 6e 65 77 20 66 69 6c 65 2c 20 70  | ........;;.This.is.a.new.file,.p | 
| 2f20 |  72 69 6e 74 20 74 68 65 20 68 65 61 64 69 6e 67    20 77 69 74 68 20 61 20 73 70 61 63 65 72 2e 0a  | rint.the.heading.with.a.spacer.. | 
| 2f40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6e    6f 74 20 28 65 71 75 61 6c 20 64 65 61 64 67 72  | .............((not.(equal.deadgr | 
| 2f60 |  65 70 2d 2d 63 75 72 72 65 6e 74 2d 66 69 6c 65    20 66 69 6c 65 6e 61 6d 65 29 29 0a 20 20 20 20  | ep--current-file.filename))..... | 
| 2f80 |  20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20    28 63 6f 6e 73 20 66 69 6c 65 6e 61 6d 65 20 28  | ..........(push.(cons.filename.( | 
| 2fa0 |  31 2b 20 28 70 6f 69 6e 74 29 29 29 20 64 65 61    64 67 72 65 70 2d 2d 69 6d 65 6e 75 2d 61 6c 69  | 1+.(point))).deadgrep--imenu-ali | 
| 2fc0 |  73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 69 6e 73 65 72 74 20 22 5c 6e 22 20 70  | st)...............(insert."\n".p | 
| 2fe0 |  72 65 74 74 79 2d 66 69 6c 65 6e 61 6d 65 20 22    5c 6e 22 29 29 29 0a 20 20 20 20 20 20 20 20 20  | retty-filename."\n"))).......... | 
| 3000 |  20 20 20 28 73 65 74 71 20 64 65 61 64 67 72 65    70 2d 2d 63 75 72 72 65 6e 74 2d 66 69 6c 65 20  | ...(setq.deadgrep--current-file. | 
| 3020 |  66 69 6c 65 6e 61 6d 65 29 0a 0a 20 20 20 20 20    20 20 20 20 20 20 20 3b 3b 20 54 4f 44 4f 3a 20  | filename)..............;;.TODO:. | 
| 3040 |  61 70 70 6c 79 20 74 68 65 20 69 6e 76 69 73 69    62 6c 65 20 70 72 6f 70 65 72 74 79 20 69 66 20  | apply.the.invisible.property.if. | 
| 3060 |  74 68 65 20 75 73 65 72 20 64 65 63 69 64 65 64    0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20  | the.user.decided.............;;. | 
| 3080 |  74 6f 20 68 69 64 65 20 74 68 69 73 20 66 69 6c    65 6e 61 6d 65 20 62 65 66 6f 72 65 20 77 65 20  | to.hide.this.filename.before.we. | 
| 30a0 |  66 69 6e 69 73 68 65 64 20 66 69 6e 64 69 6e 67    0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20  | finished.finding.............;;. | 
| 30c0 |  72 65 73 75 6c 74 73 20 69 6e 20 69 74 2e 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65  | results.in.it..............(inse | 
| 30e0 |  72 74 20 70 72 65 74 74 79 2d 6c 69 6e 65 2d 6e    75 6d 20 63 6f 6e 74 65 6e 74 29 0a 0a 20 20 20  | rt.pretty-line-num.content)..... | 
| 3100 |  20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28    6e 75 6c 6c 20 64 65 61 64 67 72 65 70 2d 2d 72  | .........(when.(null.deadgrep--r | 
| 3120 |  65 73 75 6c 74 2d 63 6f 75 6e 74 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71  | esult-count)...............(setq | 
| 3140 |  20 64 65 61 64 67 72 65 70 2d 2d 72 65 73 75 6c    74 2d 63 6f 75 6e 74 20 30 29 29 0a 20 20 20 20  | .deadgrep--result-count.0))..... | 
| 3160 |  20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66    20 64 65 61 64 67 72 65 70 2d 2d 72 65 73 75 6c  | ........(cl-incf.deadgrep--resul | 
| 3180 |  74 2d 63 6f 75 6e 74 29 0a 0a 20 20 20 20 20 20    20 20 20 20 20 20 28 77 68 65 6e 20 74 72 75 6e  | t-count)..............(when.trun | 
| 31a0 |  63 61 74 65 2d 70 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 69 6e 73 65 72 74 0a 20 20 20  | cate-p...............(insert.... | 
| 31c0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f    70 65 72 74 69 7a 65 20 22 20 2e 2e 2e 20 28 74  | ............(propertize.".....(t | 
| 31e0 |  72 75 6e 63 61 74 65 64 29 22 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | runcated)"...................... | 
| 3200 |  20 20 20 20 20 20 27 66 61 63 65 20 27 64 65 61    64 67 72 65 70 2d 6d 65 74 61 2d 66 61 63 65 29  | ......'face.'deadgrep-meta-face) | 
| 3220 |  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 0a 0a 20 20  | )).............(insert."\n").... | 
| 3240 |  20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20    70 72 65 76 2d 6c 69 6e 65 2d 6e 75 6d 20 6c 69  | ..........(setq.prev-line-num.li | 
| 3260 |  6e 65 2d 6e 75 6d 29 29 29 29 29 29 29 29 0a 0a    28 64 65 66 63 75 73 74 6f 6d 20 64 65 61 64 67  | ne-num))))))))..(defcustom.deadg | 
| 3280 |  72 65 70 2d 66 69 6e 69 73 68 65 64 2d 68 6f 6f    6b 20 6e 69 6c 0a 20 20 22 48 6f 6f 6b 20 72 75  | rep-finished-hook.nil..."Hook.ru | 
| 32a0 |  6e 20 77 68 65 6e 20 60 64 65 61 64 67 72 65 70    27 20 73 65 61 72 63 68 20 69 73 20 66 69 6e 69  | n.when.`deadgrep'.search.is.fini | 
| 32c0 |  73 68 65 64 2e 22 0a 20 20 3a 74 79 70 65 20 27    68 6f 6f 6b 0a 20 20 3a 67 72 6f 75 70 20 27 64  | shed."...:type.'hook...:group.'d | 
| 32e0 |  65 61 64 67 72 65 70 29 0a 0a 28 64 65 66 75 6e    20 64 65 61 64 67 72 65 70 2d 2d 70 72 6f 63 65  | eadgrep)..(defun.deadgrep--proce | 
| 3300 |  73 73 2d 73 65 6e 74 69 6e 65 6c 20 28 70 72 6f    63 65 73 73 20 6f 75 74 70 75 74 29 0a 20 20 22  | ss-sentinel.(process.output)..." | 
| 3320 |  55 70 64 61 74 65 20 74 68 65 20 64 65 61 64 67    72 65 70 20 62 75 66 66 65 72 20 61 73 73 6f 63  | Update.the.deadgrep.buffer.assoc | 
| 3340 |  69 61 74 65 64 20 77 69 74 68 20 50 52 4f 43 45    53 53 20 61 73 20 63 6f 6d 70 6c 65 74 65 2e 22  | iated.with.PROCESS.as.complete." | 
| 3360 |  0a 20 20 28 6c 65 74 20 28 28 62 75 66 66 65 72    20 28 70 72 6f 63 65 73 73 2d 62 75 66 66 65 72  | ...(let.((buffer.(process-buffer | 
| 3380 |  20 70 72 6f 63 65 73 73 29 29 0a 20 20 20 20 20    20 20 20 28 66 69 6e 69 73 68 65 64 2d 70 20 28  | .process)).........(finished-p.( | 
| 33a0 |  73 74 72 69 6e 67 3d 20 6f 75 74 70 75 74 20 22    66 69 6e 69 73 68 65 64 5c 6e 22 29 29 29 0a 20  | string=.output."finished\n"))).. | 
| 33c0 |  20 20 20 28 77 68 65 6e 20 28 62 75 66 66 65 72    2d 6c 69 76 65 2d 70 20 62 75 66 66 65 72 29 0a  | ...(when.(buffer-live-p.buffer). | 
| 33e0 |  20 20 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 62 75 66 66 65  | ......(with-current-buffer.buffe | 
| 3400 |  72 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20    64 65 61 64 67 72 65 70 2d 2d 72 75 6e 6e 69 6e  | r.........(setq.deadgrep--runnin | 
| 3420 |  67 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 3b    3b 20 72 67 20 68 61 73 20 74 65 72 6d 69 6e 61  | g.nil).........;;.rg.has.termina | 
| 3440 |  74 65 64 2c 20 73 6f 20 73 74 6f 70 20 74 68 65    20 73 70 69 6e 6e 65 72 2e 0a 20 20 20 20 20 20  | ted,.so.stop.the.spinner........ | 
| 3460 |  20 20 28 73 70 69 6e 6e 65 72 2d 73 74 6f 70 20    64 65 61 64 67 72 65 70 2d 2d 73 70 69 6e 6e 65  | ..(spinner-stop.deadgrep--spinne | 
| 3480 |  72 29 0a 0a 20 20 20 20 20 20 20 20 28 64 65 61    64 67 72 65 70 2d 2d 69 6e 73 65 72 74 2d 6f 75  | r)..........(deadgrep--insert-ou | 
| 34a0 |  74 70 75 74 20 22 22 20 66 69 6e 69 73 68 65 64    2d 70 29 0a 0a 20 20 20 20 20 20 20 20 3b 3b 20  | tput."".finished-p)..........;;. | 
| 34c0 |  52 65 70 6f 72 74 20 61 6e 79 20 65 72 72 6f 72    73 20 74 68 61 74 20 6f 63 63 75 72 72 65 64 2e  | Report.any.errors.that.occurred. | 
| 34e0 |  0a 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73    20 28 6d 65 6d 62 65 72 20 6f 75 74 70 75 74 0a  | .........(unless.(member.output. | 
| 3500 |  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 6c 69 73 74 0a 20 20  | ........................(list... | 
| 3520 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 22 65 78 69 74 65 64 20 61  | ......................."exited.a | 
| 3540 |  62 6e 6f 72 6d 61 6c 6c 79 20 77 69 74 68 20 63    6f 64 65 20 31 5c 6e 22 0a 20 20 20 20 20 20 20  | bnormally.with.code.1\n"........ | 
| 3560 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 22 69 6e 74 65 72 72 75 70 74 5c 6e 22 0a  | .................."interrupt\n". | 
| 3580 |  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 22 66 69 6e 69 73 68  | ........................."finish | 
| 35a0 |  65 64 5c 6e 22 29 29 0a 20 20 20 20 20 20 20 20    20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f  | ed\n"))...........(save-excursio | 
| 35c0 |  6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c    65 74 20 28 28 69 6e 68 69 62 69 74 2d 72 65 61  | n.............(let.((inhibit-rea | 
| 35e0 |  64 2d 6f 6e 6c 79 20 74 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63  | d-only.t))...............(goto-c | 
| 3600 |  68 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | har.(point-max))...............( | 
| 3620 |  69 6e 73 65 72 74 20 6f 75 74 70 75 74 29 29 29    29 0a 0a 20 20 20 20 20 20 20 20 28 72 75 6e 2d  | insert.output))))..........(run- | 
| 3640 |  68 6f 6f 6b 73 20 27 64 65 61 64 67 72 65 70 2d    66 69 6e 69 73 68 65 64 2d 68 6f 6f 6b 29 0a 20  | hooks.'deadgrep-finished-hook).. | 
| 3660 |  20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 64    65 61 64 67 72 65 70 2d 2d 69 6e 63 72 65 6d 65  | .......(unless.deadgrep--increme | 
| 3680 |  6e 74 61 6c 2d 61 63 74 69 76 65 0a 20 20 20 20    20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22  | ntal-active...........(message." | 
| 36a0 |  44 65 61 64 67 72 65 70 20 66 69 6e 69 73 68 65    64 22 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e  | Deadgrep.finished"))))))..(defun | 
| 36c0 |  20 64 65 61 64 67 72 65 70 2d 2d 70 72 6f 63 65    73 73 2d 66 69 6c 74 65 72 20 28 70 72 6f 63 65  | .deadgrep--process-filter.(proce | 
| 36e0 |  73 73 20 6f 75 74 70 75 74 29 0a 20 20 3b 3b 20    53 65 61 72 63 68 65 73 20 6d 61 79 20 73 65 65  | ss.output)...;;.Searches.may.see | 
| 3700 |  20 61 20 6c 6f 74 20 6f 66 20 6f 75 74 70 75 74    2c 20 62 75 74 20 69 74 27 73 20 72 65 61 6c 6c  | .a.lot.of.output,.but.it's.reall | 
| 3720 |  79 20 75 73 65 66 75 6c 20 74 6f 20 68 61 76 65    0a 20 20 3b 3b 20 61 20 73 6e 69 70 70 65 74 20  | y.useful.to.have...;;.a.snippet. | 
| 3740 |  6f 66 20 6f 75 74 70 75 74 20 77 68 65 6e 20 64    65 62 75 67 67 69 6e 67 2e 20 53 74 6f 72 65 20  | of.output.when.debugging..Store. | 
| 3760 |  74 68 65 20 66 69 72 73 74 20 6f 75 74 70 75 74    20 72 65 63 65 69 76 65 64 2e 0a 20 20 28 75 6e  | the.first.output.received....(un | 
| 3780 |  6c 65 73 73 20 64 65 61 64 67 72 65 70 2d 2d 64    65 62 75 67 2d 66 69 72 73 74 2d 6f 75 74 70 75  | less.deadgrep--debug-first-outpu | 
| 37a0 |  74 0a 20 20 20 20 28 73 65 74 71 20 64 65 61 64    67 72 65 70 2d 2d 64 65 62 75 67 2d 66 69 72 73  | t.....(setq.deadgrep--debug-firs | 
| 37c0 |  74 2d 6f 75 74 70 75 74 20 6f 75 74 70 75 74 29    29 0a 0a 20 20 3b 3b 20 49 66 20 77 65 20 68 61  | t-output.output))....;;.If.we.ha | 
| 37e0 |  64 20 61 6e 20 75 6e 66 69 6e 69 73 68 65 64 20    6c 69 6e 65 20 66 72 6f 6d 20 6f 75 72 20 6c 61  | d.an.unfinished.line.from.our.la | 
| 3800 |  73 74 20 63 61 6c 6c 2c 20 69 6e 63 6c 75 64 65    20 74 68 61 74 2e 0a 20 20 28 77 68 65 6e 20 64  | st.call,.include.that....(when.d | 
| 3820 |  65 61 64 67 72 65 70 2d 2d 72 65 6d 61 69 6e 69    6e 67 2d 6f 75 74 70 75 74 0a 20 20 20 20 28 73  | eadgrep--remaining-output.....(s | 
| 3840 |  65 74 71 20 6f 75 74 70 75 74 20 28 63 6f 6e 63    61 74 20 64 65 61 64 67 72 65 70 2d 2d 72 65 6d  | etq.output.(concat.deadgrep--rem | 
| 3860 |  61 69 6e 69 6e 67 2d 6f 75 74 70 75 74 20 6f 75    74 70 75 74 29 29 0a 20 20 20 20 28 73 65 74 71  | aining-output.output)).....(setq | 
| 3880 |  20 64 65 61 64 67 72 65 70 2d 2d 72 65 6d 61 69    6e 69 6e 67 2d 6f 75 74 70 75 74 20 6e 69 6c 29  | .deadgrep--remaining-output.nil) | 
| 38a0 |  29 0a 0a 20 20 28 77 68 65 6e 20 28 62 75 66 66    65 72 2d 6c 69 76 65 2d 70 20 28 70 72 6f 63 65  | )....(when.(buffer-live-p.(proce | 
| 38c0 |  73 73 2d 62 75 66 66 65 72 20 70 72 6f 63 65 73    73 29 29 0a 20 20 20 20 28 77 69 74 68 2d 63 75  | ss-buffer.process)).....(with-cu | 
| 38e0 |  72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 70 72    6f 63 65 73 73 2d 62 75 66 66 65 72 20 70 72 6f  | rrent-buffer.(process-buffer.pro | 
| 3900 |  63 65 73 73 29 0a 20 20 20 20 20 20 28 64 65 61    64 67 72 65 70 2d 2d 69 6e 73 65 72 74 2d 6f 75  | cess).......(deadgrep--insert-ou | 
| 3920 |  74 70 75 74 20 6f 75 74 70 75 74 29 29 29 29 0a    0a 28 64 65 66 75 6e 20 64 65 61 64 67 72 65 70  | tput.output))))..(defun.deadgrep | 
| 3940 |  2d 2d 65 78 74 72 61 63 74 2d 72 65 67 65 78 70    20 28 70 61 74 74 65 72 6e 20 73 29 0a 20 20 22  | --extract-regexp.(pattern.s)..." | 
| 3960 |  53 65 61 72 63 68 20 66 6f 72 20 50 41 54 54 45    52 4e 20 69 6e 20 53 2c 20 61 6e 64 20 72 65 74  | Search.for.PATTERN.in.S,.and.ret | 
| 3980 |  75 72 6e 20 74 68 65 20 63 6f 6e 74 65 6e 74 20    6f 66 20 74 68 65 20 66 69 72 73 74 20 67 72 6f  | urn.the.content.of.the.first.gro | 
| 39a0 |  75 70 2e 22 0a 20 20 28 73 74 72 69 6e 67 2d 6d    61 74 63 68 20 70 61 74 74 65 72 6e 20 73 29 0a  | up."...(string-match.pattern.s). | 
| 39c0 |  20 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20    31 20 73 29 29 0a 0a 28 64 65 66 63 6f 6e 73 74  | ..(match-string.1.s))..(defconst | 
| 39e0 |  20 64 65 61 64 67 72 65 70 2d 2d 66 69 6c 65 6e    61 6d 65 2d 72 65 67 65 78 70 0a 20 20 28 72 78  | .deadgrep--filename-regexp...(rx | 
| 3a00 |  20 62 6f 73 20 22 5c 78 31 62 5b 30 6d 5c 78 31    62 5b 33 22 20 28 6f 72 20 22 35 22 20 22 36 22  | .bos."\x1b[0m\x1b[3".(or."5"."6" | 
| 3a20 |  29 20 22 6d 22 0a 20 20 20 20 20 20 28 3f 20 22    2e 2f 22 29 0a 20 20 20 20 20 20 28 67 72 6f 75  | )."m".......(?."./").......(grou | 
| 3a40 |  70 20 28 2b 3f 20 61 6e 79 74 68 69 6e 67 29 29    0a 20 20 20 20 20 20 22 5c 78 31 62 5b 22 29 0a  | p.(+?.anything))......."\x1b["). | 
| 3a60 |  20 20 22 45 78 74 72 61 63 74 73 20 74 68 65 20    66 69 6c 65 6e 61 6d 65 20 66 72 6f 6d 20 61 20  | .."Extracts.the.filename.from.a. | 
| 3a80 |  72 69 70 67 72 65 70 20 6c 69 6e 65 20 77 69 74    68 20 41 4e 53 49 20 63 6f 6c 6f 72 20 73 65 71  | ripgrep.line.with.ANSI.color.seq | 
| 3aa0 |  75 65 6e 63 65 73 2e 0a 57 65 20 75 73 65 20 74    68 65 20 63 6f 6c 6f 72 20 73 65 71 75 65 6e 63  | uences..We.use.the.color.sequenc | 
| 3ac0 |  65 73 20 74 6f 20 65 78 74 72 61 63 74 20 74 68    65 20 66 69 6c 65 6e 61 6d 65 20 65 78 61 63 74  | es.to.extract.the.filename.exact | 
| 3ae0 |  6c 79 2c 20 65 76 65 6e 0a 69 66 20 74 68 65 20    70 61 74 68 20 63 6f 6e 74 61 69 6e 73 20 63 6f  | ly,.even.if.the.path.contains.co | 
| 3b00 |  6c 6f 6e 73 2e 22 29 0a 0a 28 64 65 66 63 6f 6e    73 74 20 64 65 61 64 67 72 65 70 2d 2d 6c 69 6e  | lons.")..(defconst.deadgrep--lin | 
| 3b20 |  65 2d 6e 75 6d 2d 72 65 67 65 78 70 0a 20 20 28    72 78 20 22 5c 78 31 62 5b 33 32 6d 22 20 28 67  | e-num-regexp...(rx."\x1b[32m".(g | 
| 3b40 |  72 6f 75 70 20 28 2b 20 64 69 67 69 74 29 29 29    0a 20 20 22 45 78 74 72 61 63 74 73 20 74 68 65  | roup.(+.digit)))..."Extracts.the | 
| 3b60 |  20 6c 69 6e 65 20 6e 75 6d 62 65 72 20 66 72 6f    6d 20 61 20 72 69 70 67 72 65 70 20 6c 69 6e 65  | .line.number.from.a.ripgrep.line | 
| 3b80 |  20 77 69 74 68 20 41 4e 53 49 20 63 6f 6c 6f 72    20 73 65 71 75 65 6e 63 65 73 2e 0a 52 69 70 67  | .with.ANSI.color.sequences..Ripg | 
| 3ba0 |  72 65 70 20 75 73 65 73 20 61 20 75 6e 69 71 75    65 20 63 6f 6c 6f 72 20 66 6f 72 20 6c 69 6e 65  | rep.uses.a.unique.color.for.line | 
| 3bc0 |  20 6e 75 6d 62 65 72 73 2c 20 73 6f 20 77 65 20    75 73 65 20 74 68 61 74 20 74 6f 0a 65 78 74 72  | .numbers,.so.we.use.that.to.extr | 
| 3be0 |  61 63 74 20 74 68 65 20 6c 69 6e 75 65 20 6e 75    6d 62 65 72 20 65 78 61 63 74 6c 79 2e 22 29 0a  | act.the.linue.number.exactly."). | 
| 3c00 |  0a 28 64 65 66 63 6f 6e 73 74 20 64 65 61 64 67    72 65 70 2d 2d 6c 69 6e 65 2d 63 6f 6e 74 65 6e  | .(defconst.deadgrep--line-conten | 
| 3c20 |  74 73 2d 72 65 67 65 78 70 0a 20 20 28 72 78 20    22 5c 78 31 62 5b 33 32 6d 22 20 28 2b 20 64 69  | ts-regexp...(rx."\x1b[32m".(+.di | 
| 3c40 |  67 69 74 29 20 22 5c 78 31 62 5b 30 6d 22 20 28    6f 72 20 22 3a 22 20 22 2d 22 29 20 28 67 72 6f  | git)."\x1b[0m".(or.":"."-").(gro | 
| 3c60 |  75 70 20 28 2a 20 61 6e 79 74 68 69 6e 67 29 29    29 0a 20 20 22 45 78 74 72 61 63 74 20 74 68 65  | up.(*.anything)))..."Extract.the | 
| 3c80 |  20 6c 69 6e 65 20 63 6f 6e 74 65 6e 74 73 20 66    72 6f 6d 20 61 20 72 69 70 67 72 65 70 20 6c 69  | .line.contents.from.a.ripgrep.li | 
| 3ca0 |  6e 65 20 77 69 74 68 20 41 4e 53 49 20 63 6f 6c    6f 72 20 73 65 71 75 65 6e 63 65 73 2e 0a 55 73  | ne.with.ANSI.color.sequences..Us | 
| 3cc0 |  65 20 74 68 65 20 75 6e 69 71 75 65 20 63 6f 6c    6f 72 20 66 6f 72 20 6c 69 6e 65 20 6e 75 6d 62  | e.the.unique.color.for.line.numb | 
| 3ce0 |  65 72 73 20 74 6f 20 65 6e 73 75 72 65 20 77 65    20 73 74 61 72 74 20 61 74 20 74 68 65 0a 63 6f  | ers.to.ensure.we.start.at.the.co | 
| 3d00 |  72 72 65 63 74 20 63 6f 6c 6f 6e 2e 0a 0a 4e 6f    74 65 20 74 68 61 74 20 74 68 65 20 74 65 78 74  | rrect.colon...Note.that.the.text | 
| 3d20 |  20 69 6e 20 74 68 65 20 67 72 6f 75 70 20 77 69    6c 6c 20 73 74 69 6c 6c 20 63 6f 6e 74 61 69 6e  | .in.the.group.will.still.contain | 
| 3d40 |  20 63 6f 6c 6f 72 20 63 6f 64 65 73 0a 68 69 67    68 6c 69 67 68 74 69 6e 67 20 77 68 69 63 68 20  | .color.codes.highlighting.which. | 
| 3d60 |  70 61 72 74 73 20 6d 61 74 63 68 65 64 20 74 68    65 20 75 73 65 72 27 73 20 73 65 61 72 63 68 20  | parts.matched.the.user's.search. | 
| 3d80 |  74 65 72 6d 2e 22 29 0a 0a 28 64 65 66 63 6f 6e    73 74 20 64 65 61 64 67 72 65 70 2d 2d 68 69 74  | term.")..(defconst.deadgrep--hit | 
| 3da0 |  2d 72 65 67 65 78 70 0a 20 20 28 72 78 2d 74 6f    2d 73 74 72 69 6e 67 0a 20 20 20 60 28 73 65 71  | -regexp...(rx-to-string....`(seq | 
| 3dc0 |  0a 20 20 20 20 20 3b 3b 20 41 20 72 65 73 65 74    20 63 6f 6c 6f 72 20 63 6f 64 65 2e 0a 20 20 20  | ......;;.A.reset.color.code..... | 
| 3de0 |  20 20 22 5c 78 31 62 5b 30 6d 22 0a 20 20 20 20    20 3b 3b 20 54 77 6f 20 63 6f 6c 6f 72 20 63 6f  | .."\x1b[0m"......;;.Two.color.co | 
| 3e00 |  64 65 73 2c 20 62 6f 6c 64 20 61 6e 64 20 63 6f    6c 6f 72 20 28 61 6e 79 20 6f 72 64 65 72 29 2e  | des,.bold.and.color.(any.order). | 
| 3e20 |  0a 20 20 20 20 20 28 72 65 67 65 78 70 20 2c 64    65 61 64 67 72 65 70 2d 2d 63 6f 6c 6f 72 2d 63  | ......(regexp.,deadgrep--color-c | 
| 3e40 |  6f 64 65 29 0a 20 20 20 20 20 28 72 65 67 65 78    70 20 2c 64 65 61 64 67 72 65 70 2d 2d 63 6f 6c  | ode)......(regexp.,deadgrep--col | 
| 3e60 |  6f 72 2d 63 6f 64 65 29 0a 20 20 20 20 20 3b 3b    20 54 68 65 20 61 63 74 75 61 6c 20 74 65 78 74  | or-code)......;;.The.actual.text | 
| 3e80 |  2e 0a 20 20 20 20 20 28 67 72 6f 75 70 20 28 2b    3f 20 61 6e 79 74 68 69 6e 67 29 29 0a 20 20 20  | .......(group.(+?.anything)).... | 
| 3ea0 |  20 20 3b 3b 20 41 20 72 65 73 65 74 20 63 6f 6c    6f 72 20 63 6f 64 65 20 61 67 61 69 6e 2e 0a 20  | ..;;.A.reset.color.code.again... | 
| 3ec0 |  20 20 20 20 22 5c 78 31 62 5b 30 6d 22 29 29 0a    20 20 22 45 78 74 72 61 63 74 20 74 68 65 20 70  | ...."\x1b[0m"))..."Extract.the.p | 
| 3ee0 |  6f 72 74 69 6f 6e 20 6f 66 20 61 20 6c 69 6e 65    20 66 6f 75 6e 64 20 62 79 20 72 69 70 67 72 65  | ortion.of.a.line.found.by.ripgre | 
| 3f00 |  70 20 74 68 61 74 20 6d 61 74 63 68 65 73 20 74    68 65 20 75 73 65 72 27 73 20 69 6e 70 75 74 2e  | p.that.matches.the.user's.input. | 
| 3f20 |  0a 54 68 69 73 20 6d 61 79 20 6f 63 63 75 72 20    6d 75 6c 74 69 70 6c 65 20 74 69 6d 65 73 20 69  | .This.may.occur.multiple.times.i | 
| 3f40 |  6e 20 6f 6e 65 20 6c 69 6e 65 2e 22 29 0a 0a 28    64 65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 2d  | n.one.line.")..(defun.deadgrep-- | 
| 3f60 |  73 70 6c 69 74 2d 6c 69 6e 65 20 28 6c 69 6e 65    29 0a 20 20 22 53 70 6c 69 74 20 6f 75 74 20 74  | split-line.(line)..."Split.out.t | 
| 3f80 |  68 65 20 63 6f 6d 70 6f 6e 65 6e 74 73 20 6f 66    20 61 20 72 61 77 20 4c 49 4e 45 20 6f 66 20 6f  | he.components.of.a.raw.LINE.of.o | 
| 3fa0 |  75 74 70 75 74 20 66 72 6f 6d 20 72 67 2e 0a 52    65 74 75 72 6e 20 74 68 65 20 66 69 6c 65 6e 61  | utput.from.rg..Return.the.filena | 
| 3fc0 |  6d 65 2c 20 6c 69 6e 65 20 6e 75 6d 62 65 72 2c    20 61 6e 64 20 74 68 65 20 6c 69 6e 65 20 63 6f  | me,.line.number,.and.the.line.co | 
| 3fe0 |  6e 74 65 6e 74 20 77 69 74 68 20 41 4e 53 49 0a    63 6f 6c 6f 72 20 63 6f 64 65 73 20 72 65 70 6c  | ntent.with.ANSI.color.codes.repl | 
| 4000 |  61 63 65 64 20 77 69 74 68 20 73 74 72 69 6e 67    20 70 72 6f 70 65 72 74 69 65 73 2e 22 0a 20 20  | aced.with.string.properties."... | 
| 4020 |  28 6c 69 73 74 0a 20 20 20 28 64 65 61 64 67 72    65 70 2d 2d 65 78 74 72 61 63 74 2d 72 65 67 65  | (list....(deadgrep--extract-rege | 
| 4040 |  78 70 20 64 65 61 64 67 72 65 70 2d 2d 66 69 6c    65 6e 61 6d 65 2d 72 65 67 65 78 70 20 6c 69 6e  | xp.deadgrep--filename-regexp.lin | 
| 4060 |  65 29 0a 20 20 20 28 73 74 72 69 6e 67 2d 74 6f    2d 6e 75 6d 62 65 72 0a 20 20 20 20 28 64 65 61  | e)....(string-to-number.....(dea | 
| 4080 |  64 67 72 65 70 2d 2d 65 78 74 72 61 63 74 2d 72    65 67 65 78 70 20 64 65 61 64 67 72 65 70 2d 2d  | dgrep--extract-regexp.deadgrep-- | 
| 40a0 |  6c 69 6e 65 2d 6e 75 6d 2d 72 65 67 65 78 70 20    6c 69 6e 65 29 29 0a 20 20 20 28 64 65 61 64 67  | line-num-regexp.line))....(deadg | 
| 40c0 |  72 65 70 2d 2d 70 72 6f 70 65 72 74 69 7a 65 2d    68 69 74 73 0a 20 20 20 20 28 64 65 61 64 67 72  | rep--propertize-hits.....(deadgr | 
| 40e0 |  65 70 2d 2d 65 78 74 72 61 63 74 2d 72 65 67 65    78 70 20 64 65 61 64 67 72 65 70 2d 2d 6c 69 6e  | ep--extract-regexp.deadgrep--lin | 
| 4100 |  65 2d 63 6f 6e 74 65 6e 74 73 2d 72 65 67 65 78    70 20 6c 69 6e 65 29 29 29 29 0a 0a 28 64 65 66  | e-contents-regexp.line))))..(def | 
| 4120 |  75 6e 20 64 65 61 64 67 72 65 70 2d 2d 65 73 63    61 70 65 2d 62 61 63 6b 73 6c 61 73 68 20 28 73  | un.deadgrep--escape-backslash.(s | 
| 4140 |  29 0a 20 20 22 45 73 63 61 70 65 20 6f 63 63 75    72 72 65 6e 63 65 73 20 6f 66 20 62 61 63 6b 73  | )..."Escape.occurrences.of.backs | 
| 4160 |  6c 61 73 68 65 73 20 69 6e 20 53 2e 0a 0a 54 68    69 73 20 64 69 66 66 65 72 73 20 66 72 6f 6d 20  | lashes.in.S...This.differs.from. | 
| 4180 |  60 72 65 67 65 78 70 2d 71 75 6f 74 65 27 2c 20    77 68 69 63 68 20 6f 75 74 70 75 74 73 20 61 20  | `regexp-quote',.which.outputs.a. | 
| 41a0 |  72 65 67 65 78 70 20 70 61 74 74 65 72 6e 2e 0a    49 6e 73 74 65 61 64 2c 20 77 65 20 70 72 6f 76  | regexp.pattern..Instead,.we.prov | 
| 41c0 |  69 64 65 20 61 20 73 74 72 69 6e 67 20 73 75 69    74 61 62 6c 65 20 66 6f 72 20 52 45 50 20 69 6e  | ide.a.string.suitable.for.REP.in | 
| 41e0 |  0a 60 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70    2d 69 6e 2d 73 74 72 69 6e 67 27 2e 22 0a 20 20  | .`replace-regexp-in-string'."... | 
| 4200 |  28 73 2d 72 65 70 6c 61 63 65 20 22 5c 5c 22 20    22 5c 5c 5c 5c 22 20 73 29 29 0a 0a 28 64 65 66  | (s-replace."\\"."\\\\".s))..(def | 
| 4220 |  75 6e 20 64 65 61 64 67 72 65 70 2d 2d 70 72 6f    70 65 72 74 69 7a 65 2d 68 69 74 73 20 28 6c 69  | un.deadgrep--propertize-hits.(li | 
| 4240 |  6e 65 2d 63 6f 6e 74 65 6e 74 73 29 0a 20 20 22    47 69 76 65 6e 20 4c 49 4e 45 2d 43 4f 4e 54 45  | ne-contents)..."Given.LINE-CONTE | 
| 4260 |  4e 54 53 20 66 72 6f 6d 20 72 69 70 67 72 65 70    2c 20 72 65 70 6c 61 63 65 20 41 4e 53 49 20 63  | NTS.from.ripgrep,.replace.ANSI.c | 
| 4280 |  6f 6c 6f 72 20 63 6f 64 65 73 0a 77 69 74 68 20    61 20 74 65 78 74 20 66 61 63 65 20 70 72 6f 70  | olor.codes.with.a.text.face.prop | 
| 42a0 |  65 72 74 79 20 60 64 65 61 64 67 72 65 70 2d 6d    61 74 63 68 2d 66 61 63 65 27 2e 22 0a 20 20 28  | erty.`deadgrep-match-face'."...( | 
| 42c0 |  72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69    6e 2d 73 74 72 69 6e 67 0a 20 20 20 64 65 61 64  | replace-regexp-in-string....dead | 
| 42e0 |  67 72 65 70 2d 2d 68 69 74 2d 72 65 67 65 78 70    0a 20 20 20 28 6c 61 6d 62 64 61 20 28 73 29 0a  | grep--hit-regexp....(lambda.(s). | 
| 4300 |  20 20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65    0a 20 20 20 20 20 20 28 64 65 61 64 67 72 65 70  | .....(propertize.......(deadgrep | 
| 4320 |  2d 2d 65 73 63 61 70 65 2d 62 61 63 6b 73 6c 61    73 68 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67  | --escape-backslash.(match-string | 
| 4340 |  20 31 20 73 29 29 0a 20 20 20 20 20 20 27 66 61    63 65 20 27 64 65 61 64 67 72 65 70 2d 6d 61 74  | .1.s)).......'face.'deadgrep-mat | 
| 4360 |  63 68 2d 66 61 63 65 29 29 0a 20 20 20 6c 69 6e    65 2d 63 6f 6e 74 65 6e 74 73 29 29 0a 0a 28 64  | ch-face))....line-contents))..(d | 
| 4380 |  65 66 69 6e 65 2d 62 75 74 74 6f 6e 2d 74 79 70    65 20 27 64 65 61 64 67 72 65 70 2d 73 65 61 72  | efine-button-type.'deadgrep-sear | 
| 43a0 |  63 68 2d 74 65 72 6d 0a 20 20 27 61 63 74 69 6f    6e 20 23 27 64 65 61 64 67 72 65 70 2d 2d 73 65  | ch-term...'action.#'deadgrep--se | 
| 43c0 |  61 72 63 68 2d 74 65 72 6d 0a 20 20 27 68 65 6c    70 2d 65 63 68 6f 20 22 43 68 61 6e 67 65 20 73  | arch-term...'help-echo."Change.s | 
| 43e0 |  65 61 72 63 68 20 74 65 72 6d 22 29 0a 0a 28 64    65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 2d 73  | earch.term")..(defun.deadgrep--s | 
| 4400 |  65 61 72 63 68 2d 70 72 6f 6d 70 74 20 28 26 6f    70 74 69 6f 6e 61 6c 20 64 65 66 61 75 6c 74 29  | earch-prompt.(&optional.default) | 
| 4420 |  0a 20 20 22 54 68 65 20 70 72 6f 6d 70 74 20 73    68 6f 77 6e 20 74 6f 20 74 68 65 20 75 73 65 72  | ..."The.prompt.shown.to.the.user | 
| 4440 |  20 77 68 65 6e 20 73 74 61 72 74 69 6e 67 20 61    20 64 65 61 64 67 72 65 70 20 73 65 61 72 63 68  | .when.starting.a.deadgrep.search | 
| 4460 |  2e 22 0a 20 20 28 6c 65 74 20 28 28 6b 69 6e 64    20 28 69 66 20 28 65 71 20 64 65 61 64 67 72 65  | ."...(let.((kind.(if.(eq.deadgre | 
| 4480 |  70 2d 2d 73 65 61 72 63 68 2d 74 79 70 65 20 27    72 65 67 65 78 70 29 0a 20 20 20 20 20 20 20 20  | p--search-type.'regexp)......... | 
| 44a0 |  20 20 20 20 20 20 20 20 20 20 22 62 79 20 72 65    67 65 78 70 22 20 22 66 6f 72 20 74 65 78 74 22  | .........."by.regexp"."for.text" | 
| 44c0 |  29 29 29 0a 20 20 20 20 28 69 66 20 64 65 66 61    75 6c 74 0a 20 20 20 20 20 20 20 20 28 66 6f 72  | ))).....(if.default.........(for | 
| 44e0 |  6d 61 74 20 22 53 65 61 72 63 68 20 25 73 20 28    64 65 66 61 75 6c 74 20 25 73 29 3a 20 22 20 6b  | mat."Search.%s.(default.%s):.".k | 
| 4500 |  69 6e 64 20 64 65 66 61 75 6c 74 29 0a 20 20 20    20 20 20 28 66 6f 72 6d 61 74 20 22 53 65 61 72  | ind.default).......(format."Sear | 
| 4520 |  63 68 20 25 73 3a 20 22 20 6b 69 6e 64 29 29 29    29 0a 0a 28 64 65 66 75 6e 20 64 65 61 64 67 72  | ch.%s:.".kind))))..(defun.deadgr | 
| 4540 |  65 70 2d 2d 73 65 61 72 63 68 2d 74 65 72 6d 20    28 5f 62 75 74 74 6f 6e 29 0a 20 20 28 64 65 61  | ep--search-term.(_button)...(dea | 
| 4560 |  64 67 72 65 70 2d 73 65 61 72 63 68 2d 74 65 72    6d 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 61 64  | dgrep-search-term))..(defun.dead | 
| 4580 |  67 72 65 70 2d 73 65 61 72 63 68 2d 74 65 72 6d    20 28 29 0a 20 20 22 43 68 61 6e 67 65 20 74 68  | grep-search-term.()..."Change.th | 
| 45a0 |  65 20 63 75 72 72 65 6e 74 20 73 65 61 72 63 68    20 74 65 72 6d 20 61 6e 64 20 72 65 73 74 61 72  | e.current.search.term.and.restar | 
| 45c0 |  74 20 74 68 65 20 73 65 61 72 63 68 2e 22 0a 20    20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20  | t.the.search."...(interactive).. | 
| 45e0 |  20 28 73 65 74 71 20 64 65 61 64 67 72 65 70 2d    2d 73 65 61 72 63 68 2d 74 65 72 6d 0a 20 20 20  | .(setq.deadgrep--search-term.... | 
| 4600 |  20 20 20 20 20 28 72 65 61 64 2d 66 72 6f 6d 2d    6d 69 6e 69 62 75 66 66 65 72 0a 20 20 20 20 20  | .....(read-from-minibuffer...... | 
| 4620 |  20 20 20 20 28 64 65 61 64 67 72 65 70 2d 2d 73    65 61 72 63 68 2d 70 72 6f 6d 70 74 29 0a 20 20  | ....(deadgrep--search-prompt)... | 
| 4640 |  20 20 20 20 20 20 20 64 65 61 64 67 72 65 70 2d    2d 73 65 61 72 63 68 2d 74 65 72 6d 29 29 0a 20  | .......deadgrep--search-term)).. | 
| 4660 |  20 28 72 65 6e 61 6d 65 2d 62 75 66 66 65 72 0a    20 20 20 28 64 65 61 64 67 72 65 70 2d 2d 62 75  | .(rename-buffer....(deadgrep--bu | 
| 4680 |  66 66 65 72 2d 6e 61 6d 65 20 64 65 61 64 67 72    65 70 2d 2d 73 65 61 72 63 68 2d 74 65 72 6d 20  | ffer-name.deadgrep--search-term. | 
| 46a0 |  64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72    79 29 20 74 29 0a 20 20 28 64 65 61 64 67 72 65  | default-directory).t)...(deadgre | 
| 46c0 |  70 2d 72 65 73 74 61 72 74 29 29 0a 0a 28 64 65    66 69 6e 65 2d 62 75 74 74 6f 6e 2d 74 79 70 65  | p-restart))..(define-button-type | 
| 46e0 |  20 27 64 65 61 64 67 72 65 70 2d 74 79 70 65 0a    20 20 27 61 63 74 69 6f 6e 20 23 27 64 65 61 64  | .'deadgrep-type...'action.#'dead | 
| 4700 |  67 72 65 70 2d 2d 73 65 61 72 63 68 2d 74 79 70    65 0a 20 20 27 73 65 61 72 63 68 2d 74 79 70 65  | grep--search-type...'search-type | 
| 4720 |  20 6e 69 6c 0a 20 20 27 68 65 6c 70 2d 65 63 68    6f 20 22 43 68 61 6e 67 65 20 73 65 61 72 63 68  | .nil...'help-echo."Change.search | 
| 4740 |  20 74 79 70 65 22 29 0a 0a 28 64 65 66 75 6e 20    64 65 61 64 67 72 65 70 2d 2d 73 65 61 72 63 68  | .type")..(defun.deadgrep--search | 
| 4760 |  2d 74 79 70 65 20 28 62 75 74 74 6f 6e 29 0a 20    20 28 73 65 74 71 20 64 65 61 64 67 72 65 70 2d  | -type.(button)...(setq.deadgrep- | 
| 4780 |  2d 73 65 61 72 63 68 2d 74 79 70 65 20 28 62 75    74 74 6f 6e 2d 67 65 74 20 62 75 74 74 6f 6e 20  | -search-type.(button-get.button. | 
| 47a0 |  27 73 65 61 72 63 68 2d 74 79 70 65 29 29 0a 20    20 28 64 65 61 64 67 72 65 70 2d 72 65 73 74 61  | 'search-type))...(deadgrep-resta | 
| 47c0 |  72 74 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 64 65 61 64 67  | rt))..(define-button-type.'deadg | 
| 47e0 |  72 65 70 2d 63 61 73 65 0a 20 20 27 61 63 74 69    6f 6e 20 23 27 64 65 61 64 67 72 65 70 2d 2d 63  | rep-case...'action.#'deadgrep--c | 
| 4800 |  61 73 65 0a 20 20 27 63 61 73 65 20 6e 69 6c 0a    20 20 27 68 65 6c 70 2d 65 63 68 6f 20 22 43 68  | ase...'case.nil...'help-echo."Ch | 
| 4820 |  61 6e 67 65 20 63 61 73 65 20 73 65 6e 73 69 74    69 76 69 74 79 22 29 0a 0a 28 64 65 66 75 6e 20  | ange.case.sensitivity")..(defun. | 
| 4840 |  64 65 61 64 67 72 65 70 2d 2d 63 61 73 65 20 28    62 75 74 74 6f 6e 29 0a 20 20 28 73 65 74 71 20  | deadgrep--case.(button)...(setq. | 
| 4860 |  64 65 61 64 67 72 65 70 2d 2d 73 65 61 72 63 68    2d 63 61 73 65 20 28 62 75 74 74 6f 6e 2d 67 65  | deadgrep--search-case.(button-ge | 
| 4880 |  74 20 62 75 74 74 6f 6e 20 27 63 61 73 65 29 29    0a 20 20 28 64 65 61 64 67 72 65 70 2d 72 65 73  | t.button.'case))...(deadgrep-res | 
| 48a0 |  74 61 72 74 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 64 65 61  | tart))..(define-button-type.'dea | 
| 48c0 |  64 67 72 65 70 2d 63 6f 6e 74 65 78 74 0a 20 20    27 61 63 74 69 6f 6e 20 23 27 64 65 61 64 67 72  | dgrep-context...'action.#'deadgr | 
| 48e0 |  65 70 2d 2d 63 6f 6e 74 65 78 74 0a 20 20 27 63    6f 6e 74 65 78 74 20 6e 69 6c 0a 20 20 27 68 65  | ep--context...'context.nil...'he | 
| 4900 |  6c 70 2d 65 63 68 6f 20 22 53 68 6f 77 2f 68 69    64 65 20 63 6f 6e 74 65 78 74 20 61 72 6f 75 6e  | lp-echo."Show/hide.context.aroun | 
| 4920 |  64 20 6d 61 74 63 68 22 29 0a 0a 28 64 65 66 75    6e 20 64 65 61 64 67 72 65 70 2d 2d 63 6f 6e 74  | d.match")..(defun.deadgrep--cont | 
| 4940 |  65 78 74 20 28 62 75 74 74 6f 6e 29 0a 20 20 3b    3b 20 64 65 61 64 67 72 65 70 2d 2d 63 6f 6e 74  | ext.(button)...;;.deadgrep--cont | 
| 4960 |  65 78 74 20 74 61 6b 65 73 20 74 68 65 20 76 61    6c 75 65 20 6f 66 20 28 62 65 66 6f 72 65 20 2e  | ext.takes.the.value.of.(before.. | 
| 4980 |  20 61 66 74 65 72 29 20 77 68 65 6e 20 73 65 74    2e 0a 20 20 28 73 65 74 71 20 64 65 61 64 67 72  | .after).when.set....(setq.deadgr | 
| 49a0 |  65 70 2d 2d 63 6f 6e 74 65 78 74 0a 20 20 20 20    20 20 20 20 28 63 6c 2d 63 61 73 65 20 28 62 75  | ep--context.........(cl-case.(bu | 
| 49c0 |  74 74 6f 6e 2d 67 65 74 20 62 75 74 74 6f 6e 20    27 63 6f 6e 74 65 78 74 29 0a 20 20 20 20 20 20  | tton-get.button.'context)....... | 
| 49e0 |  20 20 20 20 28 28 6e 69 6c 29 0a 20 20 20 20 20    20 20 20 20 20 20 6e 69 6c 29 0a 20 20 20 20 20  | ....((nil)............nil)...... | 
| 4a00 |  20 20 20 20 20 28 62 65 66 6f 72 65 0a 20 20 20    20 20 20 20 20 20 20 20 28 63 6f 6e 73 0a 20 20  | .....(before............(cons... | 
| 4a20 |  20 20 20 20 20 20 20 20 20 20 28 72 65 61 64 2d    6e 75 6d 62 65 72 20 22 53 68 6f 77 20 4e 20 6c  | ..........(read-number."Show.N.l | 
| 4a40 |  69 6e 65 73 20 62 65 66 6f 72 65 3a 20 22 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20  | ines.before:.").............(or. | 
| 4a60 |  28 63 64 72 2d 73 61 66 65 20 64 65 61 64 67 72    65 70 2d 2d 63 6f 6e 74 65 78 74 29 20 30 29 29  | (cdr-safe.deadgrep--context).0)) | 
| 4a80 |  29 0a 20 20 20 20 20 20 20 20 20 20 28 61 66 74    65 72 0a 20 20 20 20 20 20 20 20 20 20 20 28 63  | )...........(after............(c | 
| 4aa0 |  6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20    28 6f 72 20 28 63 61 72 2d 73 61 66 65 20 64 65  | ons.............(or.(car-safe.de | 
| 4ac0 |  61 64 67 72 65 70 2d 2d 63 6f 6e 74 65 78 74 29    20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | adgrep--context).0)............. | 
| 4ae0 |  28 72 65 61 64 2d 6e 75 6d 62 65 72 20 22 53 68    6f 77 20 4e 20 6c 69 6e 65 73 20 61 66 74 65 72  | (read-number."Show.N.lines.after | 
| 4b00 |  3a 20 22 29 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 28  | :.")))...........(t............( | 
| 4b20 |  65 72 72 6f 72 20 22 55 6e 6b 6e 6f 77 6e 20 63    6f 6e 74 65 78 74 20 74 79 70 65 22 29 29 29 29  | error."Unknown.context.type")))) | 
| 4b40 |  0a 0a 20 20 28 64 65 61 64 67 72 65 70 2d 72 65    73 74 61 72 74 29 29 0a 0a 28 64 65 66 75 6e 20  | ....(deadgrep-restart))..(defun. | 
| 4b60 |  64 65 61 64 67 72 65 70 2d 2d 74 79 70 65 2d 6c    69 73 74 20 28 29 0a 20 20 22 51 75 65 72 79 20  | deadgrep--type-list.()..."Query. | 
| 4b80 |  74 68 65 20 72 67 20 65 78 65 63 75 74 61 62 6c    65 20 66 6f 72 20 61 76 61 69 6c 61 62 6c 65 20  | the.rg.executable.for.available. | 
| 4ba0 |  66 69 6c 65 20 74 79 70 65 73 2e 22 0a 20 20 28    6c 65 74 2a 20 28 28 6f 75 74 70 75 74 20 28 77  | file.types."...(let*.((output.(w | 
| 4bc0 |  69 74 68 2d 6f 75 74 70 75 74 2d 74 6f 2d 73 74    72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20  | ith-output-to-string............ | 
| 4be0 |  20 20 20 20 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 73 74 61  | ........(with-current-buffer.sta | 
| 4c00 |  6e 64 61 72 64 2d 6f 75 74 70 75 74 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ndard-output.................... | 
| 4c20 |  20 20 28 70 72 6f 63 65 73 73 2d 66 69 6c 65 2d    73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 0a 20 20  | ..(process-file-shell-command... | 
| 4c40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 66 6f 72 6d 61 74 20 22 25 73 20  | ....................(format."%s. | 
| 4c60 |  2d 2d 74 79 70 65 2d 6c 69 73 74 22 20 64 65 61    64 67 72 65 70 2d 65 78 65 63 75 74 61 62 6c 65  | --type-list".deadgrep-executable | 
| 4c80 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 6e 69 6c 20 27 28 74 20  | ).......................nil.'(t. | 
| 4ca0 |  6e 69 6c 29 29 29 29 29 0a 20 20 20 20 20 20 20    20 20 28 6c 69 6e 65 73 20 28 73 2d 6c 69 6e 65  | nil)))))..........(lines.(s-line | 
| 4cc0 |  73 20 28 73 2d 74 72 69 6d 20 6f 75 74 70 75 74    29 29 29 0a 20 20 20 20 20 20 20 20 20 28 74 79  | s.(s-trim.output)))..........(ty | 
| 4ce0 |  70 65 73 2d 61 6e 64 2d 67 6c 6f 62 73 0a 20 20    20 20 20 20 20 20 20 20 28 2d 2d 6d 61 70 0a 20  | pes-and-globs...........(--map.. | 
| 4d00 |  20 20 20 20 20 20 20 20 20 20 28 73 2d 73 70 6c    69 74 20 28 72 78 20 22 3a 20 22 29 20 69 74 29  | ..........(s-split.(rx.":.").it) | 
| 4d20 |  0a 20 20 20 20 20 20 20 20 20 20 20 6c 69 6e 65    73 29 29 29 0a 20 20 20 20 28 2d 6d 61 70 0a 20  | ............lines))).....(-map.. | 
| 4d40 |  20 20 20 20 28 2d 6c 61 6d 62 64 61 20 28 28 74    79 70 65 20 67 6c 6f 62 73 29 29 0a 20 20 20 20  | ....(-lambda.((type.globs))..... | 
| 4d60 |  20 20 20 28 6c 69 73 74 20 74 79 70 65 20 28 73    2d 73 70 6c 69 74 20 28 72 78 20 22 2c 20 22 29  | ...(list.type.(s-split.(rx.",.") | 
| 4d80 |  20 67 6c 6f 62 73 29 29 29 0a 20 20 20 20 20 74    79 70 65 73 2d 61 6e 64 2d 67 6c 6f 62 73 29 29  | .globs)))......types-and-globs)) | 
| 4da0 |  29 0a 0a 28 64 65 66 69 6e 65 2d 62 75 74 74 6f    6e 2d 74 79 70 65 20 27 64 65 61 64 67 72 65 70  | )..(define-button-type.'deadgrep | 
| 4dc0 |  2d 66 69 6c 65 2d 74 79 70 65 0a 20 20 27 61 63    74 69 6f 6e 20 23 27 64 65 61 64 67 72 65 70 2d  | -file-type...'action.#'deadgrep- | 
| 4de0 |  2d 66 69 6c 65 2d 74 79 70 65 0a 20 20 27 63 61    73 65 20 6e 69 6c 0a 20 20 27 68 65 6c 70 2d 65  | -file-type...'case.nil...'help-e | 
| 4e00 |  63 68 6f 20 22 43 68 61 6e 67 65 20 66 69 6c 65    20 74 79 70 65 22 29 0a 0a 28 64 65 66 69 6e 65  | cho."Change.file.type")..(define | 
| 4e20 |  2d 62 75 74 74 6f 6e 2d 74 79 70 65 20 27 64 65    61 64 67 72 65 70 2d 73 6b 69 70 2d 68 69 64 64  | -button-type.'deadgrep-skip-hidd | 
| 4e40 |  65 6e 2d 74 79 70 65 0a 20 20 27 61 63 74 69 6f    6e 20 23 27 64 65 61 64 67 72 65 70 2d 2d 73 6b  | en-type...'action.#'deadgrep--sk | 
| 4e60 |  69 70 2d 69 66 2d 68 69 64 64 65 6e 0a 20 20 27    63 61 73 65 20 6e 69 6c 0a 20 20 27 68 65 6c 70  | ip-if-hidden...'case.nil...'help | 
| 4e80 |  2d 65 63 68 6f 20 22 54 6f 67 67 6c 65 20 77 68    65 74 68 65 72 20 74 6f 20 73 6b 69 70 20 64 6f  | -echo."Toggle.whether.to.skip.do | 
| 4ea0 |  74 66 69 6c 65 73 22 29 0a 0a 28 64 65 66 75 6e    20 64 65 61 64 67 72 65 70 2d 2d 73 6b 69 70 2d  | tfiles")..(defun.deadgrep--skip- | 
| 4ec0 |  69 66 2d 68 69 64 64 65 6e 20 28 5f 62 75 74 74    6f 6e 29 0a 20 20 28 73 65 74 71 20 64 65 61 64  | if-hidden.(_button)...(setq.dead | 
| 4ee0 |  67 72 65 70 2d 2d 73 6b 69 70 2d 69 66 2d 68 69    64 64 65 6e 20 28 6e 6f 74 20 64 65 61 64 67 72  | grep--skip-if-hidden.(not.deadgr | 
| 4f00 |  65 70 2d 2d 73 6b 69 70 2d 69 66 2d 68 69 64 64    65 6e 29 29 0a 20 20 28 64 65 61 64 67 72 65 70  | ep--skip-if-hidden))...(deadgrep | 
| 4f20 |  2d 72 65 73 74 61 72 74 29 29 0a 0a 28 64 65 66    69 6e 65 2d 62 75 74 74 6f 6e 2d 74 79 70 65 20  | -restart))..(define-button-type. | 
| 4f40 |  27 64 65 61 64 67 72 65 70 2d 76 63 73 2d 73 6b    69 70 2d 74 79 70 65 0a 20 20 27 61 63 74 69 6f  | 'deadgrep-vcs-skip-type...'actio | 
| 4f60 |  6e 20 23 27 64 65 61 64 67 72 65 70 2d 2d 73 6b    69 70 2d 69 66 2d 76 63 73 2d 69 67 6e 6f 72 65  | n.#'deadgrep--skip-if-vcs-ignore | 
| 4f80 |  0a 20 20 27 63 61 73 65 20 6e 69 6c 0a 20 20 27    68 65 6c 70 2d 65 63 68 6f 20 22 54 6f 67 67 6c  | ...'case.nil...'help-echo."Toggl | 
| 4fa0 |  65 20 77 68 65 74 68 65 72 20 74 6f 20 73 6b 69    70 20 66 69 6c 65 73 20 6c 69 73 74 65 64 20 69  | e.whether.to.skip.files.listed.i | 
| 4fc0 |  6e 20 2e 67 69 74 69 67 6e 6f 72 65 22 29 0a 0a    28 64 65 66 75 6e 20 64 65 61 64 67 72 65 70 2d  | n..gitignore")..(defun.deadgrep- | 
| 4fe0 |  2d 73 6b 69 70 2d 69 66 2d 76 63 73 2d 69 67 6e    6f 72 65 20 28 5f 62 75 74 74 6f 6e 29 0a 20 20  | -skip-if-vcs-ignore.(_button)... | 
| 5000 |  28 73 65 74 71 20 64 65 61 64 67 72 65 70 2d 2d    73 6b 69 70 2d 69 66 2d 76 63 73 2d 69 67 6e 6f  | (setq.deadgrep--skip-if-vcs-igno | 
| 5020 |  72 65 20 28 6e 6f 74 20 64 65 61 64 67 72 65 70    2d 2d 73 6b 69 70 2d 69 66 2d 76 63 73 2d 69 67  | re.(not.deadgrep--skip-if-vcs-ig | 
| 5040 |  6e 6f 72 65 29 29 0a 20 20 28 64 65 61 64 67 72    65 70 2d 72 65 73 74 61 72 74 29 29 0a 0a 28 64  | nore))...(deadgrep-restart))..(d | 
| 5060 |  65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 2d 66    6f 72 6d 61 74 2d 66 69 6c 65 2d 74 79 70 65 20  | efun.deadgrep--format-file-type. | 
| 5080 |  28 66 69 6c 65 2d 74 79 70 65 20 65 78 74 65 6e    73 69 6f 6e 73 29 0a 20 20 28 6c 65 74 2a 20 28  | (file-type.extensions)...(let*.( | 
| 50a0 |  28 6d 61 78 2d 65 78 74 73 20 34 29 0a 20 20 20    20 20 20 20 20 20 28 74 72 75 6e 63 61 74 65 64  | (max-exts.4)..........(truncated | 
| 50c0 |  20 28 3e 20 28 6c 65 6e 67 74 68 20 65 78 74 65    6e 73 69 6f 6e 73 29 20 6d 61 78 2d 65 78 74 73  | .(>.(length.extensions).max-exts | 
| 50e0 |  29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 74 72    75 6e 63 61 74 65 64 0a 20 20 20 20 20 20 28 73  | ))).....(when.truncated.......(s | 
| 5100 |  65 74 71 20 65 78 74 65 6e 73 69 6f 6e 73 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 65  | etq.extensions.............(appe | 
| 5120 |  6e 64 20 28 2d 74 61 6b 65 20 6d 61 78 2d 65 78    74 73 20 65 78 74 65 6e 73 69 6f 6e 73 29 0a 20  | nd.(-take.max-exts.extensions).. | 
| 5140 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6c 69 73 74 20 22 2e 2e 2e 22 29 29  | ...................(list."...")) | 
| 5160 |  29 29 0a 20 20 20 20 28 66 6f 72 6d 61 74 20 22    25 73 20 28 25 73 29 22 0a 20 20 20 20 20 20 20  | )).....(format."%s.(%s)"........ | 
| 5180 |  20 20 20 20 20 66 69 6c 65 2d 74 79 70 65 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 73 2d 6a 6f  | .....file-type.............(s-jo | 
| 51a0 |  69 6e 20 22 2c 20 22 20 65 78 74 65 6e 73 69 6f    6e 73 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64  | in.",.".extensions))))..(defun.d | 
| 51c0 |  65 61 64 67 72 65 70 2d 2d 67 6c 6f 62 2d 72 65    67 65 78 70 20 28 67 6c 6f 62 29 0a 20 20 22 43  | eadgrep--glob-regexp.(glob)..."C | 
| 51e0 |  6f 6e 76 65 72 74 20 47 4c 4f 42 20 70 61 74 74    65 72 6e 20 74 6f 20 74 68 65 20 65 71 75 69 76  | onvert.GLOB.pattern.to.the.equiv | 
| 5200 |  61 6c 65 6e 74 20 65 6c 69 73 70 20 72 65 67 65    78 70 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 69  | alent.elisp.regexp."...(let*.((i | 
| 5220 |  20 30 29 0a 20 20 20 20 20 20 20 20 20 28 72 65    73 75 6c 74 20 22 5e 22 29 29 0a 20 20 20 20 28  | .0)..........(result."^")).....( | 
| 5240 |  77 68 69 6c 65 20 28 3c 20 69 20 28 6c 65 6e 67    74 68 20 67 6c 6f 62 29 29 0a 20 20 20 20 20 20  | while.(<.i.(length.glob))....... | 
| 5260 |  28 6c 65 74 2a 20 28 28 63 68 61 72 20 28 65 6c    74 20 67 6c 6f 62 20 69 29 29 29 0a 20 20 20 20  | (let*.((char.(elt.glob.i)))..... | 
| 5280 |  20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20    20 20 20 3b 3b 20 2e 20 6d 61 74 63 68 65 73 20  | ....(cond..........;;...matches. | 
| 52a0 |  61 20 6c 69 74 65 72 61 6c 20 2e 20 69 6e 20 67    6c 6f 62 73 2e 0a 20 20 20 20 20 20 20 20 20 28  | a.literal...in.globs...........( | 
| 52c0 |  28 65 71 20 63 68 61 72 20 3f 2e 29 0a 20 20 20    20 20 20 20 20 20 20 28 73 65 74 71 20 72 65 73  | (eq.char.?.)...........(setq.res | 
| 52e0 |  75 6c 74 20 28 63 6f 6e 63 61 74 20 72 65 73 75    6c 74 20 22 5c 5c 2e 22 29 29 0a 20 20 20 20 20  | ult.(concat.result."\\."))...... | 
| 5300 |  20 20 20 20 20 28 63 6c 2d 69 6e 63 66 20 69 29    29 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 3f 20  | .....(cl-incf.i))..........;;.?. | 
| 5320 |  6d 61 74 63 68 65 73 20 61 20 73 69 6e 67 6c 65    20 63 68 61 72 20 69 6e 20 67 6c 6f 62 73 2e 0a  | matches.a.single.char.in.globs.. | 
| 5340 |  20 20 20 20 20 20 20 20 20 28 28 65 71 20 63 68    61 72 20 3f 3f 29 0a 20 20 20 20 20 20 20 20 20  | .........((eq.char.??).......... | 
| 5360 |  20 28 73 65 74 71 20 72 65 73 75 6c 74 20 28 63    6f 6e 63 61 74 20 72 65 73 75 6c 74 20 22 2e 22  | .(setq.result.(concat.result."." | 
| 5380 |  29 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  | ))...........(cl-incf.i))....... | 
| 53a0 |  20 20 20 3b 3b 20 2a 20 6d 61 74 63 68 65 73 20    7a 65 72 6f 20 6f 72 20 6d 6f 72 65 20 6f 66 20  | ...;;.*.matches.zero.or.more.of. | 
| 53c0 |  61 6e 79 74 68 69 6e 67 2e 0a 20 20 20 20 20 20    20 20 20 28 28 65 71 20 63 68 61 72 20 3f 2a 29  | anything...........((eq.char.?*) | 
| 53e0 |  0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71    20 72 65 73 75 6c 74 20 28 63 6f 6e 63 61 74 20  | ...........(setq.result.(concat. | 
| 5400 |  72 65 73 75 6c 74 20 22 2e 2a 22 29 29 0a 20 20    20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66  | result.".*"))...........(cl-incf | 
| 5420 |  20 69 29 29 0a 20 20 20 20 20 20 20 20 20 3b 3b    20 5b 61 62 5d 20 6d 61 74 63 68 65 73 20 61 20  | .i))..........;;.[ab].matches.a. | 
| 5440 |  6c 69 74 65 72 61 6c 20 61 20 6f 72 20 62 2e 0a    20 20 20 20 20 20 20 20 20 3b 3b 20 5b 61 2d 7a  | literal.a.or.b...........;;.[a-z | 
| 5460 |  5d 20 6d 61 74 63 68 65 73 20 63 68 61 72 61 63    74 65 72 73 20 62 65 74 77 65 65 6e 20 61 20 61  | ].matches.characters.between.a.a | 
| 5480 |  6e 64 20 7a 20 69 6e 63 6c 75 73 69 76 65 2e 0a    20 20 20 20 20 20 20 20 20 3b 3b 20 5b 3f 5d 20  | nd.z.inclusive...........;;.[?]. | 
| 54a0 |  6d 61 74 63 68 65 73 20 61 20 6c 69 74 65 72 61    6c 20 3f 2e 0a 20 20 20 20 20 20 20 20 20 28 28  | matches.a.literal.?...........(( | 
| 54c0 |  65 71 20 63 68 61 72 20 3f 5c 5b 29 0a 20 20 20    20 20 20 20 20 20 20 3b 3b 20 46 69 6e 64 20 74  | eq.char.?\[)...........;;.Find.t | 
| 54e0 |  68 65 20 6d 61 74 63 68 69 6e 67 20 5d 2e 0a 20    20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28  | he.matching.]............(let.(( | 
| 5500 |  6a 20 28 31 2b 20 69 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 61  | j.(1+.i))).............(while.(a | 
| 5520 |  6e 64 20 28 3c 20 6a 20 28 6c 65 6e 67 74 68 20    67 6c 6f 62 29 29 0a 20 20 20 20 20 20 20 20 20  | nd.(<.j.(length.glob)).......... | 
| 5540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6e 6f 74 20 28 65 71 20 28 65 6c 74 20 67 6c 6f  | ...............(not.(eq.(elt.glo | 
| 5560 |  62 20 6a 29 20 3f 5c 5d 29 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e  | b.j).?\])))...............(cl-in | 
| 5580 |  63 66 20 6a 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 63 6c 2d 69 6e 63 66 20 6a 29 0a 20  | cf.j)).............(cl-incf.j).. | 
| 55a0 |  20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71    20 72 65 73 75 6c 74 20 28 63 6f 6e 63 61 74 20  | ...........(setq.result.(concat. | 
| 55c0 |  72 65 73 75 6c 74 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  | result.......................... | 
| 55e0 |  20 20 20 20 20 20 20 20 28 73 75 62 73 74 72 69    6e 67 20 67 6c 6f 62 20 69 20 6a 29 29 29 0a 20  | ........(substring.glob.i.j))).. | 
| 5600 |  20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71    20 69 20 6a 29 29 29 0a 20 20 20 20 20 20 20 20  | ...........(setq.i.j)))......... | 
| 5620 |  20 28 74 0a 20 20 20 20 20 20 20 20 20 20 28 73    65 74 71 20 72 65 73 75 6c 74 20 28 63 6f 6e 63  | .(t...........(setq.result.(conc | 
| 5640 |  61 74 20 72 65 73 75 6c 74 20 28 63 68 61 72 2d    74 6f 2d 73 74 72 69 6e 67 20 63 68 61 72 29 29  | at.result.(char-to-string.char)) | 
| 5660 |  29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d    69 6e 63 66 20 69 29 29 29 29 29 0a 20 20 20 20  | )...........(cl-incf.i)))))..... | 
| 5680 |  28 63 6f 6e 63 61 74 20 72 65 73 75 6c 74 20 22    24 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65  | (concat.result."$")))..(defun.de | 
| 56a0 |  61 64 67 72 65 70 2d 2d 6d 61 74 63 68 65 73 2d    67 6c 6f 62 73 2d 70 20 28 66 69 6c 65 6e 61 6d  | adgrep--matches-globs-p.(filenam | 
| 56c0 |  65 20 67 6c 6f 62 73 29 0a 20 20 22 52 65 74 75    72 6e 20 6e 6f 6e 2d 6e 69 6c 20 69 66 20 46 49  | e.globs)..."Return.non-nil.if.FI | 
| 56e0 |  4c 45 4e 41 4d 45 20 6d 61 74 63 68 65 73 20 61    6e 79 20 67 6c 6f 62 20 70 61 74 74 65 72 6e 20  | LENAME.matches.any.glob.pattern. | 
| 5700 |  69 6e 20 47 4c 4f 42 53 2e 22 0a 20 20 28 77 68    65 6e 20 66 69 6c 65 6e 61 6d 65 0a 20 20 20 20  | in.GLOBS."...(when.filename..... | 
| 5720 |  28 2d 2d 61 6e 79 20 28 73 74 72 69 6e 67 2d 6d    61 74 63 68 2d 70 20 28 64 65 61 64 67 72 65 70  | (--any.(string-match-p.(deadgrep | 
| 5740 |  2d 2d 67 6c 6f 62 2d 72 65 67 65 78 70 20 69 74    29 20 66 69 6c 65 6e 61 6d 65 29 0a 20 20 20 20  | --glob-regexp.it).filename)..... | 
| 5760 |  20 20 20 20 20 20 20 67 6c 6f 62 73 29 29 29 0a    0a 28 64 65 66 75 6e 20 64 65 61 64 67 72 65 70  | .......globs)))..(defun.deadgrep | 
| 5780 |  2d 2d 72 65 6c 65 76 61 6e 74 2d 66 69 6c 65 2d    74 79 70 65 20 28 66 69 6c 65 6e 61 6d 65 20 74  | --relevant-file-type.(filename.t | 
| 57a0 |  79 70 65 73 2d 61 6e 64 2d 67 6c 6f 62 73 29 0a    20 20 22 54 72 79 20 74 6f 20 66 69 6e 64 20 74  | ypes-and-globs)..."Try.to.find.t | 
| 57c0 |  68 65 20 6d 6f 73 74 20 72 65 6c 65 76 61 6e 74    20 69 74 65 6d 20 69 6e 20 54 59 50 45 53 2d 41  | he.most.relevant.item.in.TYPES-A | 
| 57e0 |  4e 44 2d 47 4c 4f 42 53 20 66 6f 72 20 46 49 4c    45 4e 41 4d 45 2e 22 0a 20 20 28 6c 65 74 20 28  | ND-GLOBS.for.FILENAME."...(let.( | 
| 5800 |  3b 3b 20 46 69 6e 64 20 61 6c 6c 20 74 68 65 20    69 74 65 6d 73 20 69 6e 20 54 59 50 45 53 2d 41  | ;;.Find.all.the.items.in.TYPES-A | 
| 5820 |  4e 44 2d 47 4c 4f 42 53 20 77 68 6f 73 65 20 67    6c 6f 62 20 6d 61 74 63 68 0a 20 20 20 20 20 20  | ND-GLOBS.whose.glob.match....... | 
| 5840 |  20 20 3b 3b 20 46 49 4c 45 4e 41 4d 45 2e 0a 20    20 20 20 20 20 20 20 28 6d 61 74 63 68 69 6e 67  | ..;;.FILENAME..........(matching | 
| 5860 |  20 28 2d 66 69 6c 74 65 72 20 28 2d 6c 61 6d 62    64 61 20 28 28 5f 74 79 70 65 20 67 6c 6f 62 73  | .(-filter.(-lambda.((_type.globs | 
| 5880 |  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 20 20 20 20  | )).............................. | 
| 58a0 |  28 64 65 61 64 67 72 65 70 2d 2d 6d 61 74 63 68    65 73 2d 67 6c 6f 62 73 2d 70 20 66 69 6c 65 6e  | (deadgrep--matches-globs-p.filen | 
| 58c0 |  61 6d 65 20 67 6c 6f 62 73 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ame.globs))..................... | 
| 58e0 |  20 20 20 20 20 20 20 74 79 70 65 73 2d 61 6e 64    2d 67 6c 6f 62 73 29 29 29 0a 20 20 20 20 28 2d  | .......types-and-globs))).....(- | 
| 5900 |  3e 3e 20 6d 61 74 63 68 69 6e 67 0a 20 20 20 20    20 20 20 20 20 3b 3b 20 50 72 65 66 65 72 20 6c  | >>.matching..........;;.Prefer.l | 
| 5920 |  6f 6e 67 65 72 20 6e 61 6d 65 73 2c 20 73 6f 20    22 6d 61 72 6b 64 6f 77 6e 22 20 6f 76 65 72 20  | onger.names,.so."markdown".over. | 
| 5940 |  22 6d 64 22 20 66 6f 72 20 74 68 65 20 74 79 70    65 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 6e 61  | "md".for.the.type..........;;.na | 
| 5960 |  6d 65 2e 0a 20 20 20 20 20 20 20 20 20 28 2d 73    6f 72 74 20 28 2d 6c 61 6d 62 64 61 20 28 28 74  | me...........(-sort.(-lambda.((t | 
| 5980 |  79 70 65 31 20 5f 29 20 28 74 79 70 65 32 20 5f    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ype1._).(type2._)).............. | 
| 59a0 |  20 20 20 20 20 28 3c 20 28 6c 65 6e 67 74 68 20    74 79 70 65 31 29 20 28 6c 65 6e 67 74 68 20 74  | .....(<.(length.type1).(length.t | 
| 59c0 |  79 70 65 32 29 29 29 29 0a 20 20 20 20 20 20 20    20 20 3b 3b 20 50 72 65 66 65 72 20 74 79 70 65  | ype2))))..........;;.Prefer.type | 
| 59e0 |  73 20 77 69 74 68 20 6d 6f 72 65 20 65 78 74 65    6e 73 69 6f 6e 73 2c 20 61 73 20 74 68 65 79 20  | s.with.more.extensions,.as.they. | 
| 5a00 |  74 65 6e 64 20 74 6f 20 62 65 20 6d 6f 72 65 0a    20 20 20 20 20 20 20 20 20 3b 3b 20 63 6f 6d 6d  | tend.to.be.more..........;;.comm | 
| 5a20 |  6f 6e 20 6c 61 6e 67 75 61 67 65 73 20 28 65 2e    67 2e 20 27 6f 63 61 6d 6c 27 20 6f 76 65 72 20  | on.languages.(e.g..'ocaml'.over. | 
| 5a40 |  27 6d 6c 27 29 2e 0a 20 20 20 20 20 20 20 20 20    28 2d 73 6f 72 74 20 28 2d 6c 61 6d 62 64 61 20  | 'ml')...........(-sort.(-lambda. | 
| 5a60 |  28 28 5f 20 67 6c 6f 62 73 31 29 20 28 5f 20 67    6c 6f 62 73 32 29 29 0a 20 20 20 20 20 20 20 20  | ((_.globs1).(_.globs2))......... | 
| 5a80 |  20 20 20 20 20 20 20 20 20 20 28 3c 20 28 6c 65    6e 67 74 68 20 67 6c 6f 62 73 31 29 20 28 6c 65  | ..........(<.(length.globs1).(le | 
| 5aa0 |  6e 67 74 68 20 67 6c 6f 62 73 32 29 29 29 29 0a    20 20 20 20 20 20 20 20 20 3b 3b 20 42 75 74 20  | ngth.globs2))))..........;;.But. | 
| 5ac0 |  70 72 65 66 65 72 20 65 6c 69 73 70 20 6f 76 65    72 20 6c 69 73 70 20 66 6f 72 20 2e 65 6c 20 66  | prefer.elisp.over.lisp.for..el.f | 
| 5ae0 |  69 6c 65 73 2e 0a 20 20 20 20 20 20 20 20 20 28    2d 73 6f 72 74 20 28 2d 6c 61 6d 62 64 61 20 28  | iles...........(-sort.(-lambda.( | 
| 5b00 |  28 74 79 70 65 31 20 5f 29 20 28 74 79 70 65 32    20 5f 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | (type1._).(type2._))............ | 
| 5b20 |  20 20 20 20 20 20 20 3b 3b 20 52 65 74 75 72 6e    20 74 20 69 66 20 77 65 27 72 65 20 63 6f 6d 70  | .......;;.Return.t.if.we're.comp | 
| 5b40 |  61 72 69 6e 67 20 65 6c 69 73 70 20 77 69 74 68    20 6c 69 73 70 2c 20 6e 69 6c 0a 20 20 20 20 20  | aring.elisp.with.lisp,.nil...... | 
| 5b60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20    6f 74 68 65 72 77 69 73 65 2e 0a 20 20 20 20 20  | .............;;.otherwise....... | 
| 5b80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e    64 20 28 65 71 75 61 6c 20 74 79 70 65 31 20 22  | .............(and.(equal.type1." | 
| 5ba0 |  6c 69 73 70 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 28 65  | lisp")........................(e | 
| 5bc0 |  71 75 61 6c 20 74 79 70 65 32 20 22 65 6c 69 73    70 22 29 29 29 29 0a 20 20 20 20 20 20 20 20 20  | qual.type2."elisp")))).......... | 
| 5be0 |  3b 3b 20 54 61 6b 65 20 74 68 65 20 68 69 67 68    65 73 74 20 73 63 6f 72 69 6e 67 20 6d 61 74 63  | ;;.Take.the.highest.scoring.matc | 
| 5c00 |  68 69 6e 67 2e 0a 20 20 20 20 20 20 20 20 20 28    2d 6c 61 73 74 2d 69 74 65 6d 29 29 29 29 0a 0a  | hing...........(-last-item)))).. | 
| 5c20 |  28 64 65 66 75 6e 20 64 65 61 64 67 72 65 70 2d    2d 72 65 61 64 2d 66 69 6c 65 2d 74 79 70 65 20  | (defun.deadgrep--read-file-type. | 
| 5c40 |  28 66 69 6c 65 6e 61 6d 65 29 0a 20 20 22 52 65    61 64 20 61 20 72 69 70 67 72 65 70 20 66 69 6c  | (filename)..."Read.a.ripgrep.fil | 
| 5c60 |  65 20 74 79 70 65 2c 20 64 65 66 61 75 6c 74 69    6e 67 20 74 6f 20 74 68 65 20 74 79 70 65 20 74  | e.type,.defaulting.to.the.type.t | 
| 5c80 |  68 61 74 20 6d 61 74 63 68 65 73 20 46 49 4c 45    4e 41 4d 45 2e 22 0a 20 20 28 6c 65 74 2a 20 28  | hat.matches.FILENAME."...(let*.( | 
| 5ca0 |  3b 3b 20 47 65 74 20 74 68 65 20 6c 69 73 74 20    6f 66 20 74 79 70 65 73 20 77 65 20 63 61 6e 20  | ;;.Get.the.list.of.types.we.can. | 
| 5cc0 |  6f 66 66 65 72 2e 0a 20 20 20 20 20 20 20 20 20    28 74 79 70 65 73 2d 61 6e 64 2d 67 6c 6f 62 73  | offer...........(types-and-globs | 
| 5ce0 |  20 28 64 65 61 64 67 72 65 70 2d 2d 74 79 70 65    2d 6c 69 73 74 29 29 0a 20 20 20 20 20 20 20 20  | .(deadgrep--type-list))......... | 
| 5d00 |  20 3b 3b 20 42 75 69 6c 64 20 61 20 6c 69 73 74    20 6d 61 70 70 69 6e 67 20 74 68 65 20 66 6f 72  | .;;.Build.a.list.mapping.the.for | 
| 5d20 |  6d 61 74 74 65 64 20 74 79 70 65 73 20 74 6f 20    74 68 65 20 74 79 70 65 20 6e 61 6d 65 2e 0a 20  | matted.types.to.the.type.name... | 
| 5d40 |  20 20 20 20 20 20 20 20 28 74 79 70 65 2d 63 68    6f 69 63 65 73 0a 20 20 20 20 20 20 20 20 20 20  | ........(type-choices........... | 
| 5d60 |  28 2d 6d 61 70 0a 20 20 20 20 20 20 20 20 20 20    20 28 2d 6c 61 6d 62 64 61 20 28 28 74 79 70 65  | (-map............(-lambda.((type | 
| 5d80 |  20 67 6c 6f 62 73 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 69 73 74 0a 20 20 20 20  | .globs))..............(list..... | 
| 5da0 |  20 20 20 20 20 20 20 20 20 20 28 64 65 61 64 67    72 65 70 2d 2d 66 6f 72 6d 61 74 2d 66 69 6c 65  | ..........(deadgrep--format-file | 
| 5dc0 |  2d 74 79 70 65 20 74 79 70 65 20 67 6c 6f 62 73    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -type.type.globs)............... | 
| 5de0 |  74 79 70 65 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 74 79 70 65 73 2d 61 6e 64 2d 67 6c 6f 62  | type))............types-and-glob | 
| 5e00 |  73 29 29 0a 20 20 20 20 20 20 20 20 20 3b 3b 20    57 6f 72 6b 20 6f 75 74 20 74 68 65 20 64 65 66  | s))..........;;.Work.out.the.def | 
| 5e20 |  61 75 6c 74 20 74 79 70 65 20 6e 61 6d 65 20 62    61 73 65 64 20 6f 6e 20 74 68 65 20 66 69 6c 65  | ault.type.name.based.on.the.file | 
| 5e40 |  6e 61 6d 65 2e 0a 20 20 20 20 20 20 20 20 20 28    64 65 66 61 75 6c 74 2d 74 79 70 65 2d 61 6e 64  | name...........(default-type-and | 
| 5e60 |  2d 67 6c 6f 62 73 0a 20 20 20 20 20 20 20 20 20    20 20 28 64 65 61 64 67 72 65 70 2d 2d 72 65 6c  | -globs............(deadgrep--rel | 
| 5e80 |  65 76 61 6e 74 2d 66 69 6c 65 2d 74 79 70 65 20    66 69 6c 65 6e 61 6d 65 20 74 79 70 65 73 2d 61  | evant-file-type.filename.types-a | 
| 5ea0 |  6e 64 2d 67 6c 6f 62 73 29 29 0a 20 20 20 20 20    20 20 20 20 28 64 65 66 61 75 6c 74 0a 20 20 20  | nd-globs))..........(default.... | 
| 5ec0 |  20 20 20 20 20 20 20 20 28 2d 77 68 65 6e 2d 6c    65 74 20 28 28 64 65 66 61 75 6c 74 2d 74 79 70  | ........(-when-let.((default-typ | 
| 5ee0 |  65 20 64 65 66 61 75 6c 74 2d 67 6c 6f 62 73 29    20 64 65 66 61 75 6c 74 2d 74 79 70 65 2d 61 6e  | e.default-globs).default-type-an | 
| 5f00 |  64 2d 67 6c 6f 62 73 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 28 64 65 61 64 67 72 65 70 2d  | d-globs)..............(deadgrep- | 
| 5f20 |  2d 66 6f 72 6d 61 74 2d 66 69 6c 65 2d 74 79 70    65 20 64 65 66 61 75 6c 74 2d 74 79 70 65 20 64  | -format-file-type.default-type.d | 
| 5f40 |  65 66 61 75 6c 74 2d 67 6c 6f 62 73 29 29 29 0a    20 20 20 20 20 20 20 20 20 3b 3b 20 50 72 6f 6d  | efault-globs)))..........;;.Prom | 
| 5f60 |  70 74 20 74 68 65 20 75 73 65 72 20 66 6f 72 20    61 20 66 69 6c 65 20 74 79 70 65 2e 0a 20 20 20  | pt.the.user.for.a.file.type..... | 
| 5f80 |  20 20 20 20 20 20 28 63 68 6f 73 65 6e 0a 20 20    20 20 20 20 20 20 20 20 28 63 6f 6d 70 6c 65 74  | ......(chosen...........(complet | 
| 5fa0 |  69 6e 67 2d 72 65 61 64 0a 20 20 20 20 20 20 20    20 20 20 20 22 46 69 6c 65 20 74 79 70 65 3a 20  | ing-read............"File.type:. | 
| 5fc0 |  22 20 74 79 70 65 2d 63 68 6f 69 63 65 73 20 6e    69 6c 20 74 20 6e 69 6c 20 6e 69 6c 20 64 65 66  | ".type-choices.nil.t.nil.nil.def | 
| 5fe0 |  61 75 6c 74 29 29 29 0a 20 20 20 20 28 6e 74 68    20 31 20 28 61 73 73 6f 63 20 63 68 6f 73 65 6e  | ault))).....(nth.1.(assoc.chosen | 
| 6000 |  20 74 79 70 65 2d 63 68 6f 69 63 65 73 29 29 29    29 0a 0a 28 64 65 66 75 6e 20 64 65 61 64 67 72  | .type-choices))))..(defun.deadgr | 
| 6020 |  65 70 2d 2d 72 65 61 64 2d 66 69 6c 65 2d 67 6c    6f 62 20 28 29 0a 20 20 28 6c 65 74 2a 0a 20 20  | ep--read-file-glob.()...(let*... | 
| 6040 |  20 20 20 20 28 28 69 6e 69 74 69 61 6c 2d 76 61    6c 75 65 0a 20 20 20 20 20 20 20 20 28 63 6f 6e  | ....((initial-value.........(con | 
| 6060 |  64 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66    20 77 65 20 61 6c 72 65 61 64 79 20 68 61 76 65  | d..........;;.If.we.already.have | 
| 6080 |  20 61 20 67 6c 6f 62 20 70 61 74 74 65 72 6e 2c    20 65 64 69 74 20 69 74 2e 0a 20 20 20 20 20 20  | .a.glob.pattern,.edit.it........ | 
| 60a0 |  20 20 20 28 28 65 71 20 28 63 61 72 2d 73 61 66    65 20 64 65 61 64 67 72 65 70 2d 2d 66 69 6c 65  | ...((eq.(car-safe.deadgrep--file | 
| 60c0 |  2d 74 79 70 65 29 20 27 67 6c 6f 62 29 0a 20 20    20 20 20 20 20 20 20 20 28 63 64 72 20 64 65 61  | -type).'glob)...........(cdr.dea | 
| 60e0 |  64 67 72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65    29 29 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 49  | dgrep--file-type))..........;;.I | 
| 6100 |  66 20 74 68 65 20 69 6e 69 74 69 61 6c 20 66 69    6c 65 20 68 61 64 20 61 20 66 69 6c 65 20 6e 61  | f.the.initial.file.had.a.file.na | 
| 6120 |  6d 65 20 6f 66 20 74 68 65 20 66 6f 72 6d 0a 20    20 20 20 20 20 20 20 20 3b 3b 20 66 6f 6f 2e 62  | me.of.the.form..........;;.foo.b | 
| 6140 |  61 72 2c 20 6f 66 66 65 72 20 2a 2e 62 61 72 20    61 73 20 74 68 65 20 69 6e 69 74 69 61 6c 20 67  | ar,.offer.*.bar.as.the.initial.g | 
| 6160 |  6c 6f 62 2e 0a 20 20 20 20 20 20 20 20 20 28 28    61 6e 64 20 64 65 61 64 67 72 65 70 2d 2d 69 6e  | lob...........((and.deadgrep--in | 
| 6180 |  69 74 69 61 6c 2d 66 69 6c 65 6e 61 6d 65 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66  | itial-filename................(f | 
| 61a0 |  69 6c 65 2d 6e 61 6d 65 2d 65 78 74 65 6e 73 69    6f 6e 20 64 65 61 64 67 72 65 70 2d 2d 69 6e 69  | ile-name-extension.deadgrep--ini | 
| 61c0 |  74 69 61 6c 2d 66 69 6c 65 6e 61 6d 65 29 29 0a    20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61  | tial-filename))...........(forma | 
| 61e0 |  74 20 22 2a 2e 25 73 22 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 66 69 6c 65  | t."*.%s"...................(file | 
| 6200 |  2d 6e 61 6d 65 2d 65 78 74 65 6e 73 69 6f 6e 20    64 65 61 64 67 72 65 70 2d 2d 69 6e 69 74 69 61  | -name-extension.deadgrep--initia | 
| 6220 |  6c 2d 66 69 6c 65 6e 61 6d 65 29 29 29 0a 20 20    20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20  | l-filename)))..........(t....... | 
| 6240 |  20 20 20 20 22 2a 22 29 29 29 0a 20 20 20 20 20    20 20 28 70 72 6f 6d 70 74 0a 20 20 20 20 20 20  | ...."*")))........(prompt....... | 
| 6260 |  20 20 28 69 66 20 28 73 74 72 69 6e 67 3d 20 69    6e 69 74 69 61 6c 2d 76 61 6c 75 65 20 22 2a 22  | ..(if.(string=.initial-value."*" | 
| 6280 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b    20 53 68 6f 77 20 61 6e 20 65 78 61 6d 70 6c 65  | ).............;;.Show.an.example | 
| 62a0 |  20 74 6f 20 61 76 6f 69 64 20 63 6f 6e 66 75 73    69 6f 6e 20 77 69 74 68 20 72 65 67 65 78 70 20  | .to.avoid.confusion.with.regexp. | 
| 62c0 |  73 79 6e 74 61 78 2e 0a 20 20 20 20 20 20 20 20    20 20 20 20 22 47 6c 6f 62 20 28 65 2e 67 2e 20  | syntax.............."Glob.(e.g.. | 
| 62e0 |  2a 2e 6a 73 29 3a 20 22 0a 20 20 20 20 20 20 20    20 20 20 22 47 6c 6f 62 3a 20 22 29 29 0a 20 20  | *.js):."..........."Glob:."))... | 
| 6300 |  20 20 20 20 20 28 67 6c 6f 62 0a 20 20 20 20 20    20 20 20 28 72 65 61 64 2d 66 72 6f 6d 2d 6d 69  | .....(glob.........(read-from-mi | 
| 6320 |  6e 69 62 75 66 66 65 72 0a 20 20 20 20 20 20 20    20 20 70 72 6f 6d 70 74 0a 20 20 20 20 20 20 20  | nibuffer..........prompt........ | 
| 6340 |  20 20 69 6e 69 74 69 61 6c 2d 76 61 6c 75 65 29    29 29 0a 20 20 20 20 67 6c 6f 62 29 29 0a 0a 28  | ..initial-value))).....glob))..( | 
| 6360 |  64 65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 2d    66 69 6c 65 2d 74 79 70 65 20 28 62 75 74 74 6f  | defun.deadgrep--file-type.(butto | 
| 6380 |  6e 29 0a 20 20 28 6c 65 74 20 28 28 62 75 74 74    6f 6e 2d 74 79 70 65 20 28 62 75 74 74 6f 6e 2d  | n)...(let.((button-type.(button- | 
| 63a0 |  67 65 74 20 62 75 74 74 6f 6e 20 27 66 69 6c 65    2d 74 79 70 65 29 29 29 0a 20 20 20 20 28 63 6f  | get.button.'file-type))).....(co | 
| 63c0 |  6e 64 0a 20 20 20 20 20 28 28 65 71 20 62 75 74    74 6f 6e 2d 74 79 70 65 20 27 61 6c 6c 29 0a 20  | nd......((eq.button-type.'all).. | 
| 63e0 |  20 20 20 20 20 28 73 65 74 71 20 64 65 61 64 67    72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65 20 27  | .....(setq.deadgrep--file-type.' | 
| 6400 |  61 6c 6c 29 29 0a 20 20 20 20 20 28 28 65 71 20    62 75 74 74 6f 6e 2d 74 79 70 65 20 27 74 79 70  | all))......((eq.button-type.'typ | 
| 6420 |  65 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 64    65 61 64 67 72 65 70 2d 2d 66 69 6c 65 2d 74 79  | e).......(setq.deadgrep--file-ty | 
| 6440 |  70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 28    63 6f 6e 73 20 27 74 79 70 65 20 28 64 65 61 64  | pe.............(cons.'type.(dead | 
| 6460 |  67 72 65 70 2d 2d 72 65 61 64 2d 66 69 6c 65 2d    74 79 70 65 20 64 65 61 64 67 72 65 70 2d 2d 69  | grep--read-file-type.deadgrep--i | 
| 6480 |  6e 69 74 69 61 6c 2d 66 69 6c 65 6e 61 6d 65 29    29 29 29 0a 20 20 20 20 20 28 28 65 71 20 62 75  | nitial-filename))))......((eq.bu | 
| 64a0 |  74 74 6f 6e 2d 74 79 70 65 20 27 67 6c 6f 62 29    0a 20 20 20 20 20 20 28 73 65 74 71 20 64 65 61  | tton-type.'glob).......(setq.dea | 
| 64c0 |  64 67 72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65    20 28 63 6f 6e 73 20 27 67 6c 6f 62 20 28 64 65  | dgrep--file-type.(cons.'glob.(de | 
| 64e0 |  61 64 67 72 65 70 2d 2d 72 65 61 64 2d 66 69 6c    65 2d 67 6c 6f 62 29 29 29 29 0a 20 20 20 20 20  | adgrep--read-file-glob))))...... | 
| 6500 |  28 74 0a 20 20 20 20 20 20 28 65 72 72 6f 72 20    22 55 6e 6b 6e 6f 77 6e 20 62 75 74 74 6f 6e 20  | (t.......(error."Unknown.button. | 
| 6520 |  74 79 70 65 3a 20 25 53 22 20 62 75 74 74 6f 6e    2d 74 79 70 65 29 29 29 29 0a 20 20 28 64 65 61  | type:.%S".button-type))))...(dea | 
| 6540 |  64 67 72 65 70 2d 72 65 73 74 61 72 74 29 29 0a    0a 28 64 65 66 69 6e 65 2d 62 75 74 74 6f 6e 2d  | dgrep-restart))..(define-button- | 
| 6560 |  74 79 70 65 20 27 64 65 61 64 67 72 65 70 2d 64    69 72 65 63 74 6f 72 79 0a 20 20 27 61 63 74 69  | type.'deadgrep-directory...'acti | 
| 6580 |  6f 6e 20 23 27 64 65 61 64 67 72 65 70 2d 2d 64    69 72 65 63 74 6f 72 79 0a 20 20 27 68 65 6c 70  | on.#'deadgrep--directory...'help | 
| 65a0 |  2d 65 63 68 6f 20 22 43 68 61 6e 67 65 20 62 61    73 65 20 64 69 72 65 63 74 6f 72 79 22 29 0a 0a  | -echo."Change.base.directory").. | 
| 65c0 |  28 64 65 66 75 6e 20 64 65 61 64 67 72 65 70 2d    2d 64 69 72 65 63 74 6f 72 79 20 28 5f 62 75 74  | (defun.deadgrep--directory.(_but | 
| 65e0 |  74 6f 6e 29 0a 20 20 28 64 65 61 64 67 72 65 70    2d 64 69 72 65 63 74 6f 72 79 29 29 0a 0a 28 64  | ton)...(deadgrep-directory))..(d | 
| 6600 |  65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 64 69    72 65 63 74 6f 72 79 20 28 29 0a 20 20 22 50 72  | efun.deadgrep-directory.()..."Pr | 
| 6620 |  6f 6d 70 74 20 74 68 65 20 75 73 65 72 20 66 6f    72 20 61 20 6e 65 77 20 73 65 61 72 63 68 20 64  | ompt.the.user.for.a.new.search.d | 
| 6640 |  69 72 65 63 74 6f 72 79 2c 20 74 68 65 6e 20 72    65 73 74 61 72 74 20 74 68 65 20 73 65 61 72 63  | irectory,.then.restart.the.searc | 
| 6660 |  68 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 29 0a 20 20 28 73 65 74 71 20 64 65 66 61  | h."...(interactive)...(setq.defa | 
| 6680 |  75 6c 74 2d 64 69 72 65 63 74 6f 72 79 0a 20 20    20 20 20 20 20 20 28 65 78 70 61 6e 64 2d 66 69  | ult-directory.........(expand-fi | 
| 66a0 |  6c 65 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20    20 28 72 65 61 64 2d 64 69 72 65 63 74 6f 72 79  | le-name..........(read-directory | 
| 66c0 |  2d 6e 61 6d 65 20 22 53 65 61 72 63 68 20 66 69    6c 65 73 20 69 6e 3a 20 22 29 29 29 0a 20 20 28  | -name."Search.files.in:.")))...( | 
| 66e0 |  72 65 6e 61 6d 65 2d 62 75 66 66 65 72 0a 20 20    20 28 64 65 61 64 67 72 65 70 2d 2d 62 75 66 66  | rename-buffer....(deadgrep--buff | 
| 6700 |  65 72 2d 6e 61 6d 65 20 64 65 61 64 67 72 65 70    2d 2d 73 65 61 72 63 68 2d 74 65 72 6d 20 64 65  | er-name.deadgrep--search-term.de | 
| 6720 |  66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 29    0a 20 20 20 74 29 0a 20 20 28 64 65 61 64 67 72  | fault-directory)....t)...(deadgr | 
| 6740 |  65 70 2d 72 65 73 74 61 72 74 29 29 0a 0a 28 64    65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 70 61  | ep-restart))..(defun.deadgrep-pa | 
| 6760 |  72 65 6e 74 2d 64 69 72 65 63 74 6f 72 79 20 28    29 0a 20 20 22 52 65 73 74 61 72 74 20 74 68 65  | rent-directory.()..."Restart.the | 
| 6780 |  20 73 65 61 72 63 68 20 69 6e 20 74 68 65 20 70    61 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2e  | .search.in.the.parent.directory. | 
| 67a0 |  22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    29 0a 20 20 28 73 65 74 71 20 64 65 66 61 75 6c  | "...(interactive)...(setq.defaul | 
| 67c0 |  74 2d 64 69 72 65 63 74 6f 72 79 0a 20 20 20 20    20 20 20 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 64  | t-directory.........(file-name-d | 
| 67e0 |  69 72 65 63 74 6f 72 79 20 28 64 69 72 65 63 74    6f 72 79 2d 66 69 6c 65 2d 6e 61 6d 65 20 64 65  | irectory.(directory-file-name.de | 
| 6800 |  66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 29    29 29 0a 20 20 28 72 65 6e 61 6d 65 2d 62 75 66  | fault-directory)))...(rename-buf | 
| 6820 |  66 65 72 0a 20 20 20 28 64 65 61 64 67 72 65 70    2d 2d 62 75 66 66 65 72 2d 6e 61 6d 65 20 64 65  | fer....(deadgrep--buffer-name.de | 
| 6840 |  61 64 67 72 65 70 2d 2d 73 65 61 72 63 68 2d 74    65 72 6d 20 64 65 66 61 75 6c 74 2d 64 69 72 65  | adgrep--search-term.default-dire | 
| 6860 |  63 74 6f 72 79 29 0a 20 20 20 74 29 0a 20 20 28    64 65 61 64 67 72 65 70 2d 72 65 73 74 61 72 74  | ctory)....t)...(deadgrep-restart | 
| 6880 |  29 29 0a 0a 28 64 65 66 75 6e 20 64 65 61 64 67    72 65 70 2d 2d 62 75 74 74 6f 6e 20 28 74 65 78  | ))..(defun.deadgrep--button.(tex | 
| 68a0 |  74 20 74 79 70 65 20 26 72 65 73 74 20 70 72 6f    70 65 72 74 69 65 73 29 0a 20 20 3b 3b 20 60 6d  | t.type.&rest.properties)...;;.`m | 
| 68c0 |  61 6b 65 2d 74 65 78 74 2d 62 75 74 74 6f 6e 27    20 6d 75 74 61 74 65 73 20 74 68 65 20 73 74 72  | ake-text-button'.mutates.the.str | 
| 68e0 |  69 6e 67 20 74 6f 20 61 64 64 20 70 72 6f 70 65    72 74 69 65 73 2c 20 73 6f 20 63 6f 70 79 0a 20  | ing.to.add.properties,.so.copy.. | 
| 6900 |  20 3b 3b 20 54 45 58 54 20 66 69 72 73 74 2e 0a    20 20 28 73 65 74 71 20 74 65 78 74 20 28 73 75  | .;;.TEXT.first....(setq.text.(su | 
| 6920 |  62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65    72 74 69 65 73 20 74 65 78 74 29 29 0a 20 20 28  | bstring-no-properties.text))...( | 
| 6940 |  61 70 70 6c 79 20 23 27 6d 61 6b 65 2d 74 65 78    74 2d 62 75 74 74 6f 6e 20 74 65 78 74 20 6e 69  | apply.#'make-text-button.text.ni | 
| 6960 |  6c 20 3a 74 79 70 65 20 74 79 70 65 20 70 72 6f    70 65 72 74 69 65 73 29 29 0a 0a 28 64 65 66 63  | l.:type.type.properties))..(defc | 
| 6980 |  75 73 74 6f 6d 20 64 65 61 64 67 72 65 70 2d 65    78 74 72 61 2d 61 72 67 75 6d 65 6e 74 73 0a 20  | ustom.deadgrep-extra-arguments.. | 
| 69a0 |  20 27 28 22 2d 2d 6e 6f 2d 63 6f 6e 66 69 67 22    29 0a 20 20 22 4c 69 73 74 20 64 65 66 69 6e 69  | .'("--no-config")..."List.defini | 
| 69c0 |  6e 67 20 65 78 74 72 61 20 61 72 67 75 6d 65 6e    74 73 20 70 61 73 73 65 64 20 74 6f 20 64 65 61  | ng.extra.arguments.passed.to.dea | 
| 69e0 |  64 67 72 65 70 2e 0a 4d 61 6e 79 20 61 72 67 75    6d 65 6e 74 73 20 61 72 65 20 69 6d 70 6f 72 74  | dgrep..Many.arguments.are.import | 
| 6a00 |  61 6e 74 20 74 6f 20 68 6f 77 20 64 65 61 64 67    72 65 70 20 70 61 72 73 65 73 20 74 68 65 20 6f  | ant.to.how.deadgrep.parses.the.o | 
| 6a20 |  75 74 70 75 74 0a 61 6e 64 20 73 6f 6d 65 20 61    72 65 20 61 64 64 65 64 20 70 72 6f 67 72 61 6d  | utput.and.some.are.added.program | 
| 6a40 |  6d 61 74 69 63 61 6c 6c 79 2c 20 6c 69 6b 65 20    74 68 6f 73 65 20 66 6f 72 20 73 65 61 72 63 68  | matically,.like.those.for.search | 
| 6a60 |  20 74 79 70 65 2c 0a 63 61 73 65 20 73 65 6e 73    69 74 69 76 69 74 79 2c 20 61 6e 64 20 63 6f 6e  | .type,.case.sensitivity,.and.con | 
| 6a80 |  74 65 78 74 2e 0a 0a 48 6f 77 65 76 65 72 2c 20    73 6f 6d 65 20 61 72 67 75 6d 65 6e 74 73 20 64  | text...However,.some.arguments.d | 
| 6aa0 |  6f 20 6e 6f 74 20 66 61 6c 6c 20 69 6e 74 6f 20    65 69 74 68 65 72 20 6f 66 20 74 68 6f 73 65 20  | o.not.fall.into.either.of.those. | 
| 6ac0 |  63 61 73 65 73 2c 0a 61 6e 64 20 74 68 65 79 20    63 61 6e 20 62 65 20 61 64 64 65 64 20 68 65 72  | cases,.and.they.can.be.added.her | 
| 6ae0 |  65 2e 20 20 54 68 69 6e 67 73 20 6c 69 6b 65 20    60 2d 2d 73 65 61 72 63 68 2d 7a 69 70 27 20 74  | e...Things.like.`--search-zip'.t | 
| 6b00 |  6f 20 73 65 61 72 63 68 0a 63 6f 6d 70 72 65 73    73 65 64 20 66 69 6c 65 73 2c 20 6f 72 20 60 2d  | o.search.compressed.files,.or.`- | 
| 6b20 |  2d 66 6f 6c 6c 6f 77 27 20 74 6f 20 66 6f 6c 6c    6f 77 20 73 79 6d 6c 69 6e 6b 73 2e 0a 0a 53 6f  | -follow'.to.follow.symlinks...So | 
| 6b40 |  6d 65 74 69 6d 65 73 20 73 65 74 74 69 6e 67 73    20 69 6e 20 79 6f 75 72 20 63 6f 6e 66 69 67 20  | metimes.settings.in.your.config. | 
| 6b60 |  66 69 6c 65 20 63 61 6e 20 63 61 75 73 65 20 70    72 6f 62 6c 65 6d 73 2c 20 77 68 69 63 68 0a 69  | file.can.cause.problems,.which.i | 
| 6b80 |  73 20 77 68 79 20 60 2d 2d 6e 6f 2d 63 6f 6e 66    69 67 27 20 69 73 20 69 6e 63 6c 75 64 65 64 20  | s.why.`--no-config'.is.included. | 
| 6ba0 |  68 65 72 65 20 62 79 20 64 65 66 61 75 6c 74 2e    22 0a 20 20 3a 74 79 70 65 20 27 28 72 65 70 65  | here.by.default."...:type.'(repe | 
| 6bc0 |  61 74 20 73 74 72 69 6e 67 29 0a 20 20 3a 67 72    6f 75 70 20 27 64 65 61 64 67 72 65 70 29 0a 0a  | at.string)...:group.'deadgrep).. | 
| 6be0 |  28 64 65 66 75 6e 20 64 65 61 64 67 72 65 70 2d    2d 61 72 67 75 6d 65 6e 74 73 20 28 73 65 61 72  | (defun.deadgrep--arguments.(sear | 
| 6c00 |  63 68 2d 74 65 72 6d 20 73 65 61 72 63 68 2d 74    79 70 65 20 63 61 73 65 20 63 6f 6e 74 65 78 74  | ch-term.search-type.case.context | 
| 6c20 |  29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69    73 74 20 6f 66 20 63 6f 6d 6d 61 6e 64 20 6c 69  | )..."Return.a.list.of.command.li | 
| 6c40 |  6e 65 20 61 72 67 75 6d 65 6e 74 73 20 74 68 61    74 20 77 65 20 63 61 6e 20 65 78 65 63 75 74 65  | ne.arguments.that.we.can.execute | 
| 6c60 |  20 69 6e 20 61 20 73 68 65 6c 6c 0a 74 6f 20 6f    62 74 61 69 6e 20 72 69 70 67 72 65 70 20 72 65  | .in.a.shell.to.obtain.ripgrep.re | 
| 6c80 |  73 75 6c 74 73 2e 22 0a 20 20 3b 3b 20 57 65 20    70 75 74 20 74 68 65 20 65 78 74 72 61 20 61 72  | sults."...;;.We.put.the.extra.ar | 
| 6ca0 |  67 75 6d 65 6e 74 73 20 66 69 72 73 74 20 73 6f    20 74 68 61 74 20 6c 61 74 65 72 20 61 72 67 75  | guments.first.so.that.later.argu | 
| 6cc0 |  6d 65 6e 74 73 20 77 69 6c 6c 0a 20 20 3b 3b 20    6f 76 65 72 72 69 64 65 20 74 68 65 6d 2c 20 70  | ments.will...;;.override.them,.p | 
| 6ce0 |  72 65 76 65 6e 74 69 6e 67 20 61 20 75 73 65 72    20 66 72 6f 6d 20 61 63 63 69 64 65 6e 74 61 6c  | reventing.a.user.from.accidental | 
| 6d00 |  6c 79 20 62 72 65 61 6b 69 6e 67 0a 20 20 3b 3b    20 72 69 70 67 72 65 70 20 62 79 20 73 70 65 63  | ly.breaking...;;.ripgrep.by.spec | 
| 6d20 |  69 66 79 69 6e 67 20 2d 2d 68 65 61 64 69 6e 67    2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2e 0a 20  | ifying.--heading,.for.example... | 
| 6d40 |  20 28 6c 65 74 20 28 28 61 72 67 73 20 28 63 6f    70 79 2d 73 65 71 75 65 6e 63 65 20 64 65 61 64  | .(let.((args.(copy-sequence.dead | 
| 6d60 |  67 72 65 70 2d 65 78 74 72 61 2d 61 72 67 75 6d    65 6e 74 73 29 29 29 0a 20 20 20 20 28 70 75 73  | grep-extra-arguments))).....(pus | 
| 6d80 |  68 20 22 2d 2d 63 6f 6c 6f 72 3d 61 6e 73 69 22    20 61 72 67 73 29 0a 20 20 20 20 28 70 75 73 68  | h."--color=ansi".args).....(push | 
| 6da0 |  20 22 2d 2d 6c 69 6e 65 2d 6e 75 6d 62 65 72 22    20 61 72 67 73 29 0a 20 20 20 20 28 70 75 73 68  | ."--line-number".args).....(push | 
| 6dc0 |  20 22 2d 2d 6e 6f 2d 68 65 61 64 69 6e 67 22 20    61 72 67 73 29 0a 20 20 20 20 28 70 75 73 68 20  | ."--no-heading".args).....(push. | 
| 6de0 |  22 2d 2d 6e 6f 2d 63 6f 6c 75 6d 6e 22 20 61 72    67 73 29 0a 20 20 20 20 28 70 75 73 68 20 22 2d  | "--no-column".args).....(push."- | 
| 6e00 |  2d 77 69 74 68 2d 66 69 6c 65 6e 61 6d 65 22 20    61 72 67 73 29 0a 0a 20 20 20 20 28 63 6f 6e 64  | -with-filename".args)......(cond | 
| 6e20 |  0a 20 20 20 20 20 28 28 65 71 20 73 65 61 72 63    68 2d 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a  | ......((eq.search-type.'string). | 
| 6e40 |  20 20 20 20 20 20 28 70 75 73 68 20 22 2d 2d 66    69 78 65 64 2d 73 74 72 69 6e 67 73 22 20 61 72  | ......(push."--fixed-strings".ar | 
| 6e60 |  67 73 29 29 0a 20 20 20 20 20 28 28 65 71 20 73    65 61 72 63 68 2d 74 79 70 65 20 27 77 6f 72 64  | gs))......((eq.search-type.'word | 
| 6e80 |  73 29 0a 20 20 20 20 20 20 28 70 75 73 68 20 22    2d 2d 66 69 78 65 64 2d 73 74 72 69 6e 67 73 22  | s).......(push."--fixed-strings" | 
| 6ea0 |  20 61 72 67 73 29 0a 20 20 20 20 20 20 28 70 75    73 68 20 22 2d 2d 77 6f 72 64 2d 72 65 67 65 78  | .args).......(push."--word-regex | 
| 6ec0 |  70 22 20 61 72 67 73 29 29 0a 20 20 20 20 20 28    28 65 71 20 73 65 61 72 63 68 2d 74 79 70 65 20  | p".args))......((eq.search-type. | 
| 6ee0 |  27 72 65 67 65 78 70 29 29 0a 20 20 20 20 20 28    74 0a 20 20 20 20 20 20 28 65 72 72 6f 72 20 22  | 'regexp))......(t.......(error." | 
| 6f00 |  55 6e 6b 6e 6f 77 6e 20 73 65 61 72 63 68 20 74    79 70 65 3a 20 25 73 22 20 73 65 61 72 63 68 2d  | Unknown.search.type:.%s".search- | 
| 6f20 |  74 79 70 65 29 29 29 0a 0a 20 20 20 20 28 63 6f    6e 64 0a 20 20 20 20 20 28 28 65 71 20 63 61 73  | type)))......(cond......((eq.cas | 
| 6f40 |  65 20 27 73 6d 61 72 74 29 0a 20 20 20 20 20 20    28 70 75 73 68 20 22 2d 2d 73 6d 61 72 74 2d 63  | e.'smart).......(push."--smart-c | 
| 6f60 |  61 73 65 22 20 61 72 67 73 29 29 0a 20 20 20 20    20 28 28 65 71 20 63 61 73 65 20 27 73 65 6e 73  | ase".args))......((eq.case.'sens | 
| 6f80 |  69 74 69 76 65 29 0a 20 20 20 20 20 20 28 70 75    73 68 20 22 2d 2d 63 61 73 65 2d 73 65 6e 73 69  | itive).......(push."--case-sensi | 
| 6fa0 |  74 69 76 65 22 20 61 72 67 73 29 29 0a 20 20 20    20 20 28 28 65 71 20 63 61 73 65 20 27 69 67 6e  | tive".args))......((eq.case.'ign | 
| 6fc0 |  6f 72 65 29 0a 20 20 20 20 20 20 28 70 75 73 68    20 22 2d 2d 69 67 6e 6f 72 65 2d 63 61 73 65 22  | ore).......(push."--ignore-case" | 
| 6fe0 |  20 61 72 67 73 29 29 0a 20 20 20 20 20 28 74 0a    20 20 20 20 20 20 28 65 72 72 6f 72 20 22 55 6e  | .args))......(t.......(error."Un | 
| 7000 |  6b 6e 6f 77 6e 20 63 61 73 65 3a 20 25 73 22 20    63 61 73 65 29 29 29 0a 0a 20 20 20 20 28 63 6f  | known.case:.%s".case)))......(co | 
| 7020 |  6e 64 0a 20 20 20 20 20 28 28 65 71 20 64 65 61    64 67 72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65  | nd......((eq.deadgrep--file-type | 
| 7040 |  20 27 61 6c 6c 29 29 0a 20 20 20 20 20 28 28 65    71 20 28 63 61 72 2d 73 61 66 65 20 64 65 61 64  | .'all))......((eq.(car-safe.dead | 
| 7060 |  67 72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65 29    20 27 74 79 70 65 29 0a 20 20 20 20 20 20 28 70  | grep--file-type).'type).......(p | 
| 7080 |  75 73 68 20 28 66 6f 72 6d 61 74 20 22 2d 2d 74    79 70 65 3d 25 73 22 20 28 63 64 72 20 64 65 61  | ush.(format."--type=%s".(cdr.dea | 
| 70a0 |  64 67 72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65    29 29 20 61 72 67 73 29 29 0a 20 20 20 20 20 28  | dgrep--file-type)).args))......( | 
| 70c0 |  28 65 71 20 28 63 61 72 2d 73 61 66 65 20 64 65    61 64 67 72 65 70 2d 2d 66 69 6c 65 2d 74 79 70  | (eq.(car-safe.deadgrep--file-typ | 
| 70e0 |  65 29 20 27 67 6c 6f 62 29 0a 20 20 20 20 20 20    28 70 75 73 68 20 28 66 6f 72 6d 61 74 20 22 2d  | e).'glob).......(push.(format."- | 
| 7100 |  2d 67 6c 6f 62 3d 25 73 22 20 28 63 64 72 20 64    65 61 64 67 72 65 70 2d 2d 66 69 6c 65 2d 74 79  | -glob=%s".(cdr.deadgrep--file-ty | 
| 7120 |  70 65 29 29 20 61 72 67 73 29 29 0a 20 20 20 20    20 28 74 0a 20 20 20 20 20 20 28 65 72 72 6f 72  | pe)).args))......(t.......(error | 
| 7140 |  20 22 55 6e 6b 6e 6f 77 6e 20 66 69 6c 65 2d 74    79 70 65 3a 20 25 53 22 20 64 65 61 64 67 72 65  | ."Unknown.file-type:.%S".deadgre | 
| 7160 |  70 2d 2d 66 69 6c 65 2d 74 79 70 65 29 29 29 0a    0a 20 20 20 20 28 77 68 65 6e 20 63 6f 6e 74 65  | p--file-type)))......(when.conte | 
| 7180 |  78 74 0a 20 20 20 20 20 20 28 70 75 73 68 20 28    66 6f 72 6d 61 74 20 22 2d 2d 62 65 66 6f 72 65  | xt.......(push.(format."--before | 
| 71a0 |  2d 63 6f 6e 74 65 78 74 3d 25 73 22 20 28 63 61    72 20 63 6f 6e 74 65 78 74 29 29 20 61 72 67 73  | -context=%s".(car.context)).args | 
| 71c0 |  29 0a 20 20 20 20 20 20 28 70 75 73 68 20 28 66    6f 72 6d 61 74 20 22 2d 2d 61 66 74 65 72 2d 63  | ).......(push.(format."--after-c | 
| 71e0 |  6f 6e 74 65 78 74 3d 25 73 22 20 28 63 64 72 20    63 6f 6e 74 65 78 74 29 29 20 61 72 67 73 29 29  | ontext=%s".(cdr.context)).args)) | 
| 7200 |  0a 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 64 65    61 64 67 72 65 70 2d 2d 73 6b 69 70 2d 69 66 2d  | ......(unless.deadgrep--skip-if- | 
| 7220 |  68 69 64 64 65 6e 0a 20 20 20 20 20 20 28 70 75    73 68 20 22 2d 2d 68 69 64 64 65 6e 22 20 61 72  | hidden.......(push."--hidden".ar | 
| 7240 |  67 73 29 29 0a 20 20 20 20 28 69 66 20 64 65 61    64 67 72 65 70 2d 2d 73 6b 69 70 2d 69 66 2d 76  | gs)).....(if.deadgrep--skip-if-v | 
| 7260 |  63 73 2d 69 67 6e 6f 72 65 0a 20 20 20 20 20 20    20 20 3b 3b 20 42 79 20 64 65 66 61 75 6c 74 2c  | cs-ignore.........;;.By.default, | 
| 7280 |  20 72 69 70 67 72 65 70 20 73 65 61 72 63 68 65    73 20 2e 67 69 74 20 65 76 65 6e 20 77 68 65 6e  | .ripgrep.searches..git.even.when | 
| 72a0 |  20 69 74 27 73 20 72 65 73 70 65 63 74 69 6e 67    0a 20 20 20 20 20 20 20 20 3b 3b 20 2e 67 69 74  | .it's.respecting.........;;..git | 
| 72c0 |  69 67 6e 6f 72 65 2c 20 69 66 20 2d 2d 68 69 64    64 65 6e 20 69 73 20 73 65 74 2e 20 49 67 6e 6f  | ignore,.if.--hidden.is.set..Igno | 
| 72e0 |  72 65 20 2e 67 69 74 20 77 68 65 6e 20 77 65 27    72 65 0a 20 20 20 20 20 20 20 20 3b 3b 20 75 73  | re..git.when.we're.........;;.us | 
| 7300 |  69 6e 67 20 2e 67 69 74 69 67 6e 6f 72 65 2e 0a    20 20 20 20 20 20 20 20 3b 3b 0a 20 20 20 20 20  | ing..gitignore..........;;...... | 
| 7320 |  20 20 20 3b 3b 20 68 74 74 70 73 3a 2f 2f 67 69    74 68 75 62 2e 63 6f 6d 2f 42 75 72 6e 74 53 75  | ...;;.https://github.com/BurntSu | 
| 7340 |  73 68 69 2f 72 69 70 67 72 65 70 2f 69 73 73 75    65 73 2f 37 31 33 0a 20 20 20 20 20 20 20 20 28  | shi/ripgrep/issues/713.........( | 
| 7360 |  70 75 73 68 20 22 2d 2d 67 6c 6f 62 3d 21 2f 2e    67 69 74 22 20 61 72 67 73 29 0a 20 20 20 20 20  | push."--glob=!/.git".args)...... | 
| 7380 |  20 28 70 75 73 68 20 22 2d 2d 6e 6f 2d 69 67 6e    6f 72 65 2d 76 63 73 22 20 61 72 67 73 29 29 0a  | .(push."--no-ignore-vcs".args)). | 
| 73a0 |  0a 20 20 20 20 28 70 75 73 68 20 22 2d 2d 22 20    61 72 67 73 29 0a 20 20 20 20 28 70 75 73 68 20  | .....(push."--".args).....(push. | 
| 73c0 |  73 65 61 72 63 68 2d 74 65 72 6d 20 61 72 67 73    29 0a 20 20 20 20 28 70 75 73 68 20 22 2e 22 20  | search-term.args).....(push.".". | 
| 73e0 |  61 72 67 73 29 0a 0a 20 20 20 20 28 6e 72 65 76    65 72 73 65 20 61 72 67 73 29 29 29 0a 0a 28 64  | args)......(nreverse.args)))..(d | 
| 7400 |  65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 2d 77    72 69 74 65 2d 68 65 61 64 69 6e 67 20 28 29 0a  | efun.deadgrep--write-heading.(). | 
| 7420 |  20 20 22 57 72 69 74 65 20 74 68 65 20 64 65 61    64 67 72 65 70 20 68 65 61 64 69 6e 67 20 77 69  | .."Write.the.deadgrep.heading.wi | 
| 7440 |  74 68 20 62 75 74 74 6f 6e 73 20 72 65 66 6c 65    63 74 69 6e 67 20 74 68 65 20 63 75 72 72 65 6e  | th.buttons.reflecting.the.curren | 
| 7460 |  74 0a 73 65 61 72 63 68 20 73 65 74 74 69 6e 67    73 2e 22 0a 20 20 28 6c 65 74 20 28 28 73 74 61  | t.search.settings."...(let.((sta | 
| 7480 |  72 74 2d 70 6f 73 20 28 70 6f 69 6e 74 29 29 0a    20 20 20 20 20 20 20 20 28 69 6e 68 69 62 69 74  | rt-pos.(point)).........(inhibit | 
| 74a0 |  2d 72 65 61 64 2d 6f 6e 6c 79 20 74 29 29 0a 20    20 20 20 28 69 6e 73 65 72 74 20 28 70 72 6f 70  | -read-only.t)).....(insert.(prop | 
| 74c0 |  65 72 74 69 7a 65 20 22 53 65 61 72 63 68 20 74    65 72 6d 3a 20 22 0a 20 20 20 20 20 20 20 20 20  | ertize."Search.term:.".......... | 
| 74e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27    66 61 63 65 20 27 64 65 61 64 67 72 65 70 2d 6d  | ...............'face.'deadgrep-m | 
| 7500 |  65 74 61 2d 66 61 63 65 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 28 69 66 20 28 65 71 20 64 65  | eta-face).............(if.(eq.de | 
| 7520 |  61 64 67 72 65 70 2d 2d 73 65 61 72 63 68 2d 74    79 70 65 20 27 72 65 67 65 78 70 29 0a 20 20 20  | adgrep--search-type.'regexp).... | 
| 7540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65    61 64 67 72 65 70 2d 2d 70 72 6f 70 65 72 74 69  | .............(deadgrep--properti | 
| 7560 |  7a 65 2d 72 65 67 65 78 70 20 64 65 61 64 67 72    65 70 2d 2d 73 65 61 72 63 68 2d 74 65 72 6d 29  | ze-regexp.deadgrep--search-term) | 
| 7580 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    70 72 6f 70 65 72 74 69 7a 65 0a 20 20 20 20 20  | ...............(propertize...... | 
| 75a0 |  20 20 20 20 20 20 20 20 20 20 64 65 61 64 67 72    65 70 2d 2d 73 65 61 72 63 68 2d 74 65 72 6d 0a  | ..........deadgrep--search-term. | 
| 75c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27    66 61 63 65 20 27 64 65 61 64 67 72 65 70 2d 73  | ...............'face.'deadgrep-s | 
| 75e0 |  65 61 72 63 68 2d 74 65 72 6d 2d 66 61 63 65 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 20  | earch-term-face)).............". | 
| 7600 |  22 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64    65 61 64 67 72 65 70 2d 2d 62 75 74 74 6f 6e 20  | ".............(deadgrep--button. | 
| 7620 |  22 63 68 61 6e 67 65 22 20 27 64 65 61 64 67 72    65 70 2d 73 65 61 72 63 68 2d 74 65 72 6d 29 0a  | "change".'deadgrep-search-term). | 
| 7640 |  20 20 20 20 20 20 20 20 20 20 20 20 22 5c 6e 22    0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72  | ............"\n".............(pr | 
| 7660 |  6f 70 65 72 74 69 7a 65 20 22 53 65 61 72 63 68    20 74 79 70 65 3a 20 22 0a 20 20 20 20 20 20 20  | opertize."Search.type:."........ | 
| 7680 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 27 66 61 63 65 20 27 64 65 61 64 67 72 65 70  | .................'face.'deadgrep | 
| 76a0 |  2d 6d 65 74 61 2d 66 61 63 65 29 0a 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 69 66 20 28 65 71  | -meta-face)..............(if.(eq | 
| 76c0 |  20 64 65 61 64 67 72 65 70 2d 2d 73 65 61 72 63    68 2d 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a  | .deadgrep--search-type.'string). | 
| 76e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    22 73 74 72 69 6e 67 22 0a 20 20 20 20 20 20 20  | ................"string"........ | 
| 7700 |  20 20 20 20 20 20 20 28 64 65 61 64 67 72 65 70    2d 2d 62 75 74 74 6f 6e 20 22 73 74 72 69 6e 67  | .......(deadgrep--button."string | 
| 7720 |  22 20 27 64 65 61 64 67 72 65 70 2d 74 79 70 65    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ".'deadgrep-type................ | 
| 7740 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 27 73 65 61 72 63 68 2d 74 79 70 65 20 27 73  | .................'search-type.'s | 
| 7760 |  74 72 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 22 20 22 0a 20 20 20 20 20 20 20 20  | tring))............."."......... | 
| 7780 |  20 20 20 20 28 69 66 20 28 65 71 20 64 65 61 64    67 72 65 70 2d 2d 73 65 61 72 63 68 2d 74 79 70  | ....(if.(eq.deadgrep--search-typ | 
| 77a0 |  65 20 27 77 6f 72 64 73 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 22 77 6f 72 64 73  | e.'words)................."words | 
| 77c0 |  22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 64 65 61 64 67 72 65 70 2d 2d 62 75 74 74 6f  | "...............(deadgrep--butto | 
| 77e0 |  6e 20 22 77 6f 72 64 73 22 20 27 64 65 61 64 67    72 65 70 2d 74 79 70 65 0a 20 20 20 20 20 20 20  | n."words".'deadgrep-type........ | 
| 7800 |  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 73 65 61 72 63 68  | .........................'search | 
| 7820 |  2d 74 79 70 65 20 27 77 6f 72 64 73 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 22 20 22 0a 20  | -type.'words)).............".".. | 
| 7840 |  20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28    65 71 20 64 65 61 64 67 72 65 70 2d 2d 73 65 61  | ...........(if.(eq.deadgrep--sea | 
| 7860 |  72 63 68 2d 74 79 70 65 20 27 72 65 67 65 78 70    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rch-type.'regexp)............... | 
| 7880 |  20 20 22 72 65 67 65 78 70 22 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 64 65 61 64 67 72  | .."regexp"...............(deadgr | 
| 78a0 |  65 70 2d 2d 62 75 74 74 6f 6e 20 22 72 65 67 65    78 70 22 20 27 64 65 61 64 67 72 65 70 2d 74 79  | ep--button."regexp".'deadgrep-ty | 
| 78c0 |  70 65 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  | pe.............................. | 
| 78e0 |  20 20 20 27 73 65 61 72 63 68 2d 74 79 70 65 20    27 72 65 67 65 78 70 29 29 0a 20 20 20 20 20 20  | ...'search-type.'regexp))....... | 
| 7900 |  20 20 20 20 20 20 22 5c 6e 22 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 70 72 6f 70 65 72 74 69  | ......"\n".............(properti | 
| 7920 |  7a 65 20 22 43 61 73 65 3a 20 22 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ze."Case:."..................... | 
| 7940 |  20 20 20 20 27 66 61 63 65 20 27 64 65 61 64 67    72 65 70 2d 6d 65 74 61 2d 66 61 63 65 29 0a 20  | ....'face.'deadgrep-meta-face).. | 
| 7960 |  20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28    65 71 20 64 65 61 64 67 72 65 70 2d 2d 73 65 61  | ...........(if.(eq.deadgrep--sea | 
| 7980 |  72 63 68 2d 63 61 73 65 20 27 73 6d 61 72 74 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rch-case.'smart)................ | 
| 79a0 |  20 22 73 6d 61 72 74 22 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 64 65 61 64 67 72 65 70  | ."smart"...............(deadgrep | 
| 79c0 |  2d 2d 62 75 74 74 6f 6e 20 22 73 6d 61 72 74 22    20 27 64 65 61 64 67 72 65 70 2d 63 61 73 65 0a  | --button."smart".'deadgrep-case. | 
| 79e0 |  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 20  | ................................ | 
| 7a00 |  27 63 61 73 65 20 27 73 6d 61 72 74 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 22 20 22 0a 20  | 'case.'smart)).............".".. | 
| 7a20 |  20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28    65 71 20 64 65 61 64 67 72 65 70 2d 2d 73 65 61  | ...........(if.(eq.deadgrep--sea | 
| 7a40 |  72 63 68 2d 63 61 73 65 20 27 73 65 6e 73 69 74    69 76 65 29 0a 20 20 20 20 20 20 20 20 20 20 20  | rch-case.'sensitive)............ | 
| 7a60 |  20 20 20 20 20 22 73 65 6e 73 69 74 69 76 65 22    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | ....."sensitive"...............( | 
| 7a80 |  64 65 61 64 67 72 65 70 2d 2d 62 75 74 74 6f 6e    20 22 73 65 6e 73 69 74 69 76 65 22 20 27 64 65  | deadgrep--button."sensitive".'de | 
| 7aa0 |  61 64 67 72 65 70 2d 63 61 73 65 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | adgrep-case..................... | 
| 7ac0 |  20 20 20 20 20 20 20 20 20 20 20 20 27 63 61 73    65 20 27 73 65 6e 73 69 74 69 76 65 29 29 0a 20  | ............'case.'sensitive)).. | 
| 7ae0 |  20 20 20 20 20 20 20 20 20 20 20 22 20 22 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28  | ...........".".............(if.( | 
| 7b00 |  65 71 20 64 65 61 64 67 72 65 70 2d 2d 73 65 61    72 63 68 2d 63 61 73 65 20 27 69 67 6e 6f 72 65  | eq.deadgrep--search-case.'ignore | 
| 7b20 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 22 69 67 6e 6f 72 65 22 0a 20 20 20 20 20  | )................."ignore"...... | 
| 7b40 |  20 20 20 20 20 20 20 20 20 28 64 65 61 64 67 72    65 70 2d 2d 62 75 74 74 6f 6e 20 22 69 67 6e 6f  | .........(deadgrep--button."igno | 
| 7b60 |  72 65 22 20 27 64 65 61 64 67 72 65 70 2d 63 61    73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | re".'deadgrep-case.............. | 
| 7b80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 27 63 61 73 65 20 27 69 67 6e 6f 72 65  | ...................'case.'ignore | 
| 7ba0 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 22    5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ))............."\n"............. | 
| 7bc0 |  28 70 72 6f 70 65 72 74 69 7a 65 20 22 43 6f 6e    74 65 78 74 3a 20 22 0a 20 20 20 20 20 20 20 20  | (propertize."Context:."......... | 
| 7be0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    27 66 61 63 65 20 27 64 65 61 64 67 72 65 70 2d  | ................'face.'deadgrep- | 
| 7c00 |  6d 65 74 61 2d 66 61 63 65 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 69 66 20 64 65 61 64 67  | meta-face).............(if.deadg | 
| 7c20 |  72 65 70 2d 2d 63 6f 6e 74 65 78 74 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65  | rep--context.................(de | 
| 7c40 |  61 64 67 72 65 70 2d 2d 62 75 74 74 6f 6e 20 22    6e 6f 6e 65 22 20 27 64 65 61 64 67 72 65 70 2d  | adgrep--button."none".'deadgrep- | 
| 7c60 |  63 6f 6e 74 65 78 74 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  | context......................... | 
| 7c80 |  20 20 20 20 20 20 20 20 20 20 27 63 6f 6e 74 65    78 74 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20  | ..........'context.nil)......... | 
| 7ca0 |  20 20 20 20 20 20 22 6e 6f 6e 65 22 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 22 20 22 0a 20 20  | ......"none")............."."... | 
| 7cc0 |  20 20 20 20 20 20 20 20 20 20 28 64 65 61 64 67    72 65 70 2d 2d 62 75 74 74 6f 6e 20 22 62 65 66  | ..........(deadgrep--button."bef | 
| 7ce0 |  6f 72 65 22 20 27 64 65 61 64 67 72 65 70 2d 63    6f 6e 74 65 78 74 0a 20 20 20 20 20 20 20 20 20  | ore".'deadgrep-context.......... | 
| 7d00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 27 63 6f 6e 74 65 78 74 20 27 62  | .....................'context.'b | 
| 7d20 |  65 66 6f 72 65 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 69 66 20 64 65 61 64 67 72 65 70 2d  | efore).............(if.deadgrep- | 
| 7d40 |  2d 63 6f 6e 74 65 78 74 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74  | -context.................(format | 
| 7d60 |  20 22 3a 25 64 22 20 28 63 61 72 20 64 65 61 64    67 72 65 70 2d 2d 63 6f 6e 74 65 78 74 29 29 0a  | .":%d".(car.deadgrep--context)). | 
| 7d80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 22    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 20  | .............."").............". | 
| 7da0 |  22 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64    65 61 64 67 72 65 70 2d 2d 62 75 74 74 6f 6e 20  | ".............(deadgrep--button. | 
| 7dc0 |  22 61 66 74 65 72 22 20 27 64 65 61 64 67 72 65    70 2d 63 6f 6e 74 65 78 74 0a 20 20 20 20 20 20  | "after".'deadgrep-context....... | 
| 7de0 |  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 63 6f 6e 74 65 78 74  | ........................'context | 
| 7e00 |  20 27 61 66 74 65 72 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 28 69 66 20 64 65 61 64 67 72 65  | .'after).............(if.deadgre | 
| 7e20 |  70 2d 2d 63 6f 6e 74 65 78 74 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d  | p--context.................(form | 
| 7e40 |  61 74 20 22 3a 25 64 22 20 28 63 64 72 20 64 65    61 64 67 72 65 70 2d 2d 63 6f 6e 74 65 78 74 29  | at.":%d".(cdr.deadgrep--context) | 
| 7e60 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    22 22 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20  | )..............."")............. | 
| 7e80 |  20 22 5c 6e 5c 6e 22 0a 20 20 20 20 20 20 20 20    20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65 20  | ."\n\n".............(propertize. | 
| 7ea0 |  22 44 69 72 65 63 74 6f 72 79 3a 20 22 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | "Directory:."................... | 
| 7ec0 |  20 20 20 20 20 20 27 66 61 63 65 20 27 64 65 61    64 67 72 65 70 2d 6d 65 74 61 2d 66 61 63 65 29  | ......'face.'deadgrep-meta-face) | 
| 7ee0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65    61 64 67 72 65 70 2d 2d 62 75 74 74 6f 6e 0a 20  | .............(deadgrep--button.. | 
| 7f00 |  20 20 20 20 20 20 20 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  | ............(abbreviate-file-nam | 
| 7f20 |  65 20 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74    6f 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20  | e.default-directory)............ | 
| 7f40 |  20 20 27 64 65 61 64 67 72 65 70 2d 64 69 72 65    63 74 6f 72 79 29 0a 20 20 20 20 20 20 20 20 20  | ..'deadgrep-directory).......... | 
| 7f60 |  20 20 20 28 69 66 20 28 67 65 74 2d 74 65 78 74    2d 70 72 6f 70 65 72 74 79 20 30 20 27 64 65 61  | ...(if.(get-text-property.0.'dea | 
| 7f80 |  64 67 72 65 70 2d 6f 76 65 72 72 69 64 64 65 6e    20 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f  | dgrep-overridden.default-directo | 
| 7fa0 |  72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65 20  | ry).................(propertize. | 
| 7fc0 |  22 20 28 66 72 6f 6d 20 6f 76 65 72 72 69 64 65    29 22 20 27 66 61 63 65 20 27 64 65 61 64 67 72  | ".(from.override)".'face.'deadgr | 
| 7fe0 |  65 70 2d 6d 65 74 61 2d 66 61 63 65 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 22 22 29 0a  | ep-meta-face)...............""). | 
| 8000 |  20 20 20 20 20 20 20 20 20 20 20 20 22 5c 6e 22    0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72  | ............"\n".............(pr | 
| 8020 |  6f 70 65 72 74 69 7a 65 20 22 46 69 6c 65 73 3a    20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | opertize."Files:.".............. | 
| 8040 |  20 20 20 20 20 20 20 20 20 20 20 27 66 61 63 65    20 27 64 65 61 64 67 72 65 70 2d 6d 65 74 61 2d  | ...........'face.'deadgrep-meta- | 
| 8060 |  66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 28 69 66 20 28 65 71 20 64 65 61 64 67 72  | face).............(if.(eq.deadgr | 
| 8080 |  65 70 2d 2d 66 69 6c 65 2d 74 79 70 65 20 27 61    6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ep--file-type.'all)............. | 
| 80a0 |  20 20 20 20 22 61 6c 6c 22 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 64 65 61 64 67 72 65  | ...."all"...............(deadgre | 
| 80c0 |  70 2d 2d 62 75 74 74 6f 6e 20 22 61 6c 6c 22 20    27 64 65 61 64 67 72 65 70 2d 66 69 6c 65 2d 74  | p--button."all".'deadgrep-file-t | 
| 80e0 |  79 70 65 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  | ype............................. | 
| 8100 |  20 20 20 20 27 66 69 6c 65 2d 74 79 70 65 20 27    61 6c 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20  | ....'file-type.'all))........... | 
| 8120 |  20 20 22 20 22 0a 20 20 20 20 20 20 20 20 20 20    20 20 28 64 65 61 64 67 72 65 70 2d 2d 62 75 74  | ..".".............(deadgrep--but | 
| 8140 |  74 6f 6e 20 22 74 79 70 65 22 20 27 64 65 61 64    67 72 65 70 2d 66 69 6c 65 2d 74 79 70 65 0a 20  | ton."type".'deadgrep-file-type.. | 
| 8160 |  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 27 66 69  | .............................'fi | 
| 8180 |  6c 65 2d 74 79 70 65 20 27 74 79 70 65 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28  | le-type.'type).............(if.( | 
| 81a0 |  65 71 20 28 63 61 72 2d 73 61 66 65 20 64 65 61    64 67 72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65  | eq.(car-safe.deadgrep--file-type | 
| 81c0 |  29 20 27 74 79 70 65 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74  | ).'type).................(format | 
| 81e0 |  20 22 3a 25 73 22 20 28 63 64 72 20 64 65 61 64    67 72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65 29  | .":%s".(cdr.deadgrep--file-type) | 
| 8200 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    22 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | )..............."")............. | 
| 8220 |  22 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20    28 64 65 61 64 67 72 65 70 2d 2d 62 75 74 74 6f  | ".".............(deadgrep--butto | 
| 8240 |  6e 20 22 67 6c 6f 62 22 20 27 64 65 61 64 67 72    65 70 2d 66 69 6c 65 2d 74 79 70 65 0a 20 20 20  | n."glob".'deadgrep-file-type.... | 
| 8260 |  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 27 66 69 6c 65  | ...........................'file | 
| 8280 |  2d 74 79 70 65 20 27 67 6c 6f 62 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 69 66 20 28 65 71  | -type.'glob).............(if.(eq | 
| 82a0 |  20 28 63 61 72 2d 73 61 66 65 20 64 65 61 64 67    72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65 29 20  | .(car-safe.deadgrep--file-type). | 
| 82c0 |  27 67 6c 6f 62 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22  | 'glob).................(format." | 
| 82e0 |  3a 25 73 22 20 28 63 64 72 20 64 65 61 64 67 72    65 70 2d 2d 66 69 6c 65 2d 74 79 70 65 29 29 0a  | :%s".(cdr.deadgrep--file-type)). | 
| 8300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 22    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 5c  | .............."")............."\ | 
| 8320 |  6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 28    70 72 6f 70 65 72 74 69 7a 65 20 22 53 6b 69 70  | n".............(propertize."Skip | 
| 8340 |  3a 20 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 27 66 61 63  | :.".........................'fac | 
| 8360 |  65 20 27 64 65 61 64 67 72 65 70 2d 6d 65 74 61    2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20  | e.'deadgrep-meta-face).......... | 
| 8380 |  20 20 20 28 64 65 61 64 67 72 65 70 2d 2d 62 75    74 74 6f 6e 20 22 64 6f 74 66 69 6c 65 73 22 20  | ...(deadgrep--button."dotfiles". | 
| 83a0 |  27 64 65 61 64 67 72 65 70 2d 73 6b 69 70 2d 68    69 64 64 65 6e 2d 74 79 70 65 29 0a 20 20 20 20  | 'deadgrep-skip-hidden-type)..... | 
| 83c0 |  20 20 20 20 20 20 20 20 28 69 66 20 64 65 61 64    67 72 65 70 2d 2d 73 6b 69 70 2d 69 66 2d 68 69  | ........(if.deadgrep--skip-if-hi | 
| 83e0 |  64 64 65 6e 20 22 3a 79 65 73 22 20 22 3a 6e 6f    22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 22  | dden.":yes".":no")............." | 
| 8400 |  20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 28    64 65 61 64 67 72 65 70 2d 2d 62 75 74 74 6f 6e  | .".............(deadgrep--button | 
| 8420 |  20 22 2e 67 69 74 69 67 6e 6f 72 65 20 69 74 65    6d 73 22 20 27 64 65 61 64 67 72 65 70 2d 76 63  | .".gitignore.items".'deadgrep-vc | 
| 8440 |  73 2d 73 6b 69 70 2d 74 79 70 65 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 69 66 20 64 65 61  | s-skip-type).............(if.dea | 
| 8460 |  64 67 72 65 70 2d 2d 73 6b 69 70 2d 69 66 2d 76    63 73 2d 69 67 6e 6f 72 65 20 22 3a 79 65 73 22  | dgrep--skip-if-vcs-ignore.":yes" | 
| 8480 |  20 22 3a 6e 6f 22 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 22 5c 6e 5c 6e 22 29 0a 20 20 20 20  | .":no")............."\n\n")..... | 
| 84a0 |  28 70 75 74 2d 74 65 78 74 2d 70 72 6f 70 65 72    74 79 0a 20 20 20 20 20 73 74 61 72 74 2d 70 6f  | (put-text-property......start-po | 
| 84c0 |  73 20 28 70 6f 69 6e 74 29 0a 20 20 20 20 20 27    72 65 61 64 2d 6f 6e 6c 79 20 74 29 0a 20 20 20  | s.(point)......'read-only.t).... | 
| 84e0 |  20 28 70 75 74 2d 74 65 78 74 2d 70 72 6f 70 65    72 74 79 0a 20 20 20 20 20 73 74 61 72 74 2d 70  | .(put-text-property......start-p | 
| 8500 |  6f 73 20 28 70 6f 69 6e 74 29 0a 20 20 20 20 20    27 66 72 6f 6e 74 2d 73 74 69 63 6b 79 20 74 29  | os.(point)......'front-sticky.t) | 
| 8520 |  29 29 0a 0a 3b 3b 20 54 4f 44 4f 3a 20 63 6f 75    6c 64 20 77 65 20 64 6f 20 74 68 69 73 20 69 6e  | ))..;;.TODO:.could.we.do.this.in | 
| 8540 |  20 74 68 65 20 6d 69 6e 69 62 75 66 66 65 72 20    74 6f 6f 3f 0a 28 64 65 66 75 6e 20 64 65 61 64  | .the.minibuffer.too?.(defun.dead | 
| 8560 |  67 72 65 70 2d 2d 70 72 6f 70 65 72 74 69 7a 65    2d 72 65 67 65 78 70 20 28 72 65 67 65 78 70 29  | grep--propertize-regexp.(regexp) | 
| 8580 |  0a 20 20 22 47 69 76 65 6e 20 61 20 73 74 72 69    6e 67 20 52 45 47 45 58 50 20 72 65 70 72 65 73  | ..."Given.a.string.REGEXP.repres | 
| 85a0 |  65 6e 74 69 6e 67 20 61 20 73 65 61 72 63 68 20    74 65 72 6d 20 77 69 74 68 20 72 65 67 75 6c 61  | enting.a.search.term.with.regula | 
| 85c0 |  72 0a 65 78 70 72 65 73 73 69 6f 6e 20 73 79 6e    74 61 78 2c 20 68 69 67 68 6c 69 67 68 74 20 74  | r.expression.syntax,.highlight.t | 
| 85e0 |  68 65 20 6d 65 74 61 63 68 61 72 61 63 74 65 72    73 2e 0a 52 65 74 75 72 6e 73 20 61 20 63 6f 70  | he.metacharacters..Returns.a.cop | 
| 8600 |  79 20 6f 66 20 52 45 47 45 58 50 20 77 69 74 68    20 70 72 6f 70 65 72 74 69 65 73 20 73 65 74 2e  | y.of.REGEXP.with.properties.set. | 
| 8620 |  22 0a 20 20 28 73 65 74 71 20 72 65 67 65 78 70    20 28 63 6f 70 79 2d 73 65 71 75 65 6e 63 65 20  | "...(setq.regexp.(copy-sequence. | 
| 8640 |  72 65 67 65 78 70 29 29 0a 0a 20 20 3b 3b 20 53    65 65 20 68 74 74 70 73 3a 2f 2f 64 6f 63 73 2e  | regexp))....;;.See.https://docs. | 
| 8660 |  72 73 2f 72 65 67 65 78 2f 31 2e 30 2e 30 2f 72    65 67 65 78 2f 23 73 79 6e 74 61 78 0a 20 20 28  | rs/regex/1.0.0/regex/#syntax...( | 
| 8680 |  6c 65 74 20 28 28 6d 65 74 61 63 68 61 72 73 0a    20 20 20 20 20 20 20 20 20 3b 3b 20 43 68 61 72  | let.((metachars..........;;.Char | 
| 86a0 |  61 63 74 65 72 73 20 74 68 61 74 20 64 6f 6e 27    74 20 6d 61 74 63 68 20 74 68 65 6d 73 65 6c 76  | acters.that.don't.match.themselv | 
| 86c0 |  65 73 2e 0a 20 20 20 20 20 20 20 20 20 27 28 3f    5c 28 20 3f 5c 29 20 3f 5c 5b 20 3f 5c 5d 20 3f  | es...........'(?\(.?\).?\[.?\].? | 
| 86e0 |  5c 7b 20 3f 5c 7d 20 3f 7c 20 3f 2e 20 3f 2b 20    3f 2a 20 3f 3f 20 3f 5e 20 3f 24 29 29 0a 20 20  | \{.?\}.?|.?..?+.?*.??.?^.?$))... | 
| 8700 |  20 20 20 20 20 20 3b 3b 20 43 68 61 72 61 63 74    65 72 73 20 74 68 61 74 20 68 61 76 65 20 73 70  | ......;;.Characters.that.have.sp | 
| 8720 |  65 63 69 61 6c 20 72 65 67 65 78 70 20 6d 65 61    6e 69 6e 67 20 77 68 65 6e 20 70 72 65 63 65 64  | ecial.regexp.meaning.when.preced | 
| 8740 |  65 64 0a 20 20 20 20 20 20 20 20 3b 3b 20 77 69    74 68 20 61 20 62 61 63 6b 73 6c 61 73 68 2e 20  | ed.........;;.with.a.backslash.. | 
| 8760 |  54 68 69 73 20 69 6e 63 6c 75 64 65 73 20 74 68    69 6e 67 73 20 6c 69 6b 65 20 5c 62 20 62 75 74  | This.includes.things.like.\b.but | 
| 8780 |  20 6e 6f 74 0a 20 20 20 20 20 20 20 20 3b 3b 20    74 68 69 6e 67 73 20 6c 69 6b 65 20 5c 6e 2e 0a  | .not.........;;.things.like.\n.. | 
| 87a0 |  20 20 20 20 20 20 20 20 28 65 73 63 61 70 65 2d    6d 65 74 61 63 68 61 72 73 0a 20 20 20 20 20 20  | ........(escape-metachars....... | 
| 87c0 |  20 20 20 27 28 3f 41 20 3f 62 20 3f 42 20 3f 64    20 3f 44 20 3f 70 20 3f 73 20 3f 53 20 3f 77 20  | ...'(?A.?b.?B.?d.?D.?p.?s.?S.?w. | 
| 87e0 |  3f 57 20 3f 7a 29 29 0a 20 20 20 20 20 20 20 20    28 70 72 65 76 2d 63 68 61 72 20 6e 69 6c 29 29  | ?W.?z)).........(prev-char.nil)) | 
| 8800 |  0a 20 20 20 20 3b 3b 20 50 75 74 20 74 68 65 20    73 74 61 6e 64 61 72 64 20 73 65 61 72 63 68 20  | .....;;.Put.the.standard.search. | 
| 8820 |  74 65 72 6d 20 66 61 63 65 20 6f 6e 20 65 76 65    72 79 20 63 68 61 72 61 63 74 65 72 0a 20 20 20  | term.face.on.every.character.... | 
| 8840 |  20 3b 3b 20 69 6e 64 69 76 69 64 75 61 6c 6c 79    2e 0a 20 20 20 20 28 64 6f 74 69 6d 65 73 20 28  | .;;.individually......(dotimes.( | 
| 8860 |  69 20 28 6c 65 6e 67 74 68 20 72 65 67 65 78 70    29 29 0a 20 20 20 20 20 20 28 70 75 74 2d 74 65  | i.(length.regexp)).......(put-te | 
| 8880 |  78 74 2d 70 72 6f 70 65 72 74 79 0a 20 20 20 20    20 20 20 69 20 28 31 2b 20 69 29 0a 20 20 20 20  | xt-property........i.(1+.i)..... | 
| 88a0 |  20 20 20 27 66 61 63 65 20 27 64 65 61 64 67 72    65 70 2d 73 65 61 72 63 68 2d 74 65 72 6d 2d 66  | ...'face.'deadgrep-search-term-f | 
| 88c0 |  61 63 65 0a 20 20 20 20 20 20 20 72 65 67 65 78    70 29 29 0a 20 20 20 20 3b 3b 20 50 75 74 20 74  | ace........regexp)).....;;.Put.t | 
| 88e0 |  68 65 20 6d 65 74 61 63 68 61 72 61 63 74 65 72    20 66 61 63 65 20 6f 6e 20 61 6e 79 20 63 68 61  | he.metacharacter.face.on.any.cha | 
| 8900 |  72 61 63 74 65 72 20 74 68 61 74 20 69 73 6e 27    74 20 74 72 65 61 74 65 64 0a 20 20 20 20 3b 3b  | racter.that.isn't.treated.....;; | 
| 8920 |  20 6c 69 74 65 72 61 6c 6c 79 2e 0a 20 20 20 20    28 2d 2d 65 61 63 68 2d 69 6e 64 65 78 65 64 20  | .literally......(--each-indexed. | 
| 8940 |  28 73 74 72 69 6e 67 2d 74 6f 2d 6c 69 73 74 20    72 65 67 65 78 70 29 0a 20 20 20 20 20 20 28 63  | (string-to-list.regexp).......(c | 
| 8960 |  6f 6e 64 0a 20 20 20 20 20 20 20 3b 3b 20 48 69    67 68 6c 69 67 68 74 20 65 76 65 72 79 74 68 69  | ond........;;.Highlight.everythi | 
| 8980 |  6e 67 20 62 65 74 77 65 65 6e 20 7b 20 61 6e 64    20 7d 2e 0a 20 20 20 20 20 20 20 28 28 61 6e 64  | ng.between.{.and.}.........((and | 
| 89a0 |  20 28 65 71 20 69 74 20 3f 5c 7b 29 20 28 6e 6f    74 20 28 65 71 75 61 6c 20 70 72 65 76 2d 63 68  | .(eq.it.?\{).(not.(equal.prev-ch | 
| 89c0 |  61 72 20 3f 5c 5c 29 29 29 0a 20 20 20 20 20 20    20 20 28 6c 65 74 20 28 28 63 6c 6f 73 69 6e 67  | ar.?\\))).........(let.((closing | 
| 89e0 |  2d 70 6f 73 20 69 74 2d 69 6e 64 65 78 29 29 0a    20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 4f 44  | -pos.it-index))...........;;.TOD | 
| 8a00 |  4f 3a 20 77 65 20 68 61 76 65 20 6c 6f 6f 70 73    20 6c 69 6b 65 20 74 68 69 73 20 69 6e 20 73 65  | O:.we.have.loops.like.this.in.se | 
| 8a20 |  76 65 72 61 6c 20 70 6c 61 63 65 73 2c 20 66 61    63 74 6f 72 0a 20 20 20 20 20 20 20 20 20 20 3b  | veral.places,.factor...........; | 
| 8a40 |  3b 20 6f 75 74 2e 0a 20 20 20 20 20 20 20 20 20    20 28 77 68 69 6c 65 20 28 61 6e 64 20 28 3c 20  | ;.out............(while.(and.(<. | 
| 8a60 |  63 6c 6f 73 69 6e 67 2d 70 6f 73 20 28 6c 65 6e    67 74 68 20 72 65 67 65 78 70 29 29 0a 20 20 20  | closing-pos.(length.regexp)).... | 
| 8a80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6e 6f 74 20 28 65 71 20 28 65 6c 74  | ...................(not.(eq.(elt | 
| 8aa0 |  20 72 65 67 65 78 70 20 63 6c 6f 73 69 6e 67 2d    70 6f 73 29 0a 20 20 20 20 20 20 20 20 20 20 20  | .regexp.closing-pos)............ | 
| 8ac0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 3f 5c 7d 29 29 29 0a 20 20 20 20 20  | ....................?\})))...... | 
| 8ae0 |  20 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66 20    63 6c 6f 73 69 6e 67 2d 70 6f 73 29 29 0a 20 20  | .......(cl-incf.closing-pos))... | 
| 8b00 |  20 20 20 20 20 20 20 20 3b 3b 20 53 74 65 70 20    6f 76 65 72 20 74 68 65 20 63 6c 6f 73 69 6e 67  | ........;;.Step.over.the.closing | 
| 8b20 |  20 7d 2c 20 69 66 20 77 65 20 66 6f 75 6e 64 20    6f 6e 65 2e 0a 20 20 20 20 20 20 20 20 20 20 28  | .},.if.we.found.one............( | 
| 8b40 |  75 6e 6c 65 73 73 20 28 3d 20 63 6c 6f 73 69 6e    67 2d 70 6f 73 20 28 6c 65 6e 67 74 68 20 72 65  | unless.(=.closing-pos.(length.re | 
| 8b60 |  67 65 78 70 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 63 6c 2d 69 6e 63 66 20 63 6c 6f 73  | gexp)).............(cl-incf.clos | 
| 8b80 |  69 6e 67 2d 70 6f 73 29 29 0a 20 20 20 20 20 20    20 20 20 20 28 70 75 74 2d 74 65 78 74 2d 70 72  | ing-pos))...........(put-text-pr | 
| 8ba0 |  6f 70 65 72 74 79 0a 20 20 20 20 20 20 20 20 20    20 20 69 74 2d 69 6e 64 65 78 20 63 6c 6f 73 69  | operty............it-index.closi | 
| 8bc0 |  6e 67 2d 70 6f 73 0a 20 20 20 20 20 20 20 20 20    20 20 27 66 61 63 65 0a 20 20 20 20 20 20 20 20  | ng-pos............'face......... | 
| 8be0 |  20 20 20 27 64 65 61 64 67 72 65 70 2d 72 65 67    65 78 70 2d 6d 65 74 61 63 68 61 72 2d 66 61 63  | ...'deadgrep-regexp-metachar-fac | 
| 8c00 |  65 0a 20 20 20 20 20 20 20 20 20 20 20 72 65 67    65 78 70 29 29 29 0a 20 20 20 20 20 20 20 3b 3b  | e............regexp)))........;; | 
| 8c20 |  20 48 69 67 68 6c 69 67 68 74 20 69 6e 64 69 76    69 64 75 61 6c 20 6d 65 74 61 63 68 61 72 73 2e  | .Highlight.individual.metachars. | 
| 8c40 |  0a 20 20 20 20 20 20 20 28 28 61 6e 64 20 28 6d    65 6d 71 20 69 74 20 6d 65 74 61 63 68 61 72 73  | ........((and.(memq.it.metachars | 
| 8c60 |  29 20 28 6e 6f 74 20 28 65 71 75 61 6c 20 70 72    65 76 2d 63 68 61 72 20 3f 5c 5c 29 29 29 0a 20  | ).(not.(equal.prev-char.?\\))).. | 
| 8c80 |  20 20 20 20 20 20 20 28 70 75 74 2d 74 65 78 74    2d 70 72 6f 70 65 72 74 79 0a 20 20 20 20 20 20  | .......(put-text-property....... | 
| 8ca0 |  20 20 20 69 74 2d 69 6e 64 65 78 20 28 31 2b 20    69 74 2d 69 6e 64 65 78 29 0a 20 20 20 20 20 20  | ...it-index.(1+.it-index)....... | 
| 8cc0 |  20 20 20 27 66 61 63 65 0a 20 20 20 20 20 20 20    20 20 27 64 65 61 64 67 72 65 70 2d 72 65 67 65  | ...'face..........'deadgrep-rege | 
| 8ce0 |  78 70 2d 6d 65 74 61 63 68 61 72 2d 66 61 63 65    0a 20 20 20 20 20 20 20 20 20 72 65 67 65 78 70  | xp-metachar-face..........regexp | 
| 8d00 |  29 29 0a 20 20 20 20 20 20 20 28 28 61 6e 64 20    28 6d 65 6d 71 20 69 74 20 65 73 63 61 70 65 2d  | ))........((and.(memq.it.escape- | 
| 8d20 |  6d 65 74 61 63 68 61 72 73 29 20 28 65 71 75 61    6c 20 70 72 65 76 2d 63 68 61 72 20 3f 5c 5c 29  | metachars).(equal.prev-char.?\\) | 
| 8d40 |  29 0a 20 20 20 20 20 20 20 20 28 70 75 74 2d 74    65 78 74 2d 70 72 6f 70 65 72 74 79 0a 20 20 20  | ).........(put-text-property.... | 
| 8d60 |  20 20 20 20 20 20 28 31 2d 20 69 74 2d 69 6e 64    65 78 29 20 28 31 2b 20 69 74 2d 69 6e 64 65 78  | ......(1-.it-index).(1+.it-index | 
| 8d80 |  29 0a 20 20 20 20 20 20 20 20 20 27 66 61 63 65    20 27 64 65 61 64 67 72 65 70 2d 72 65 67 65 78  | )..........'face.'deadgrep-regex | 
| 8da0 |  70 2d 6d 65 74 61 63 68 61 72 2d 66 61 63 65 0a    20 20 20 20 20 20 20 20 20 72 65 67 65 78 70 29  | p-metachar-face..........regexp) | 
| 8dc0 |  29 29 0a 0a 20 20 20 20 20 20 28 73 65 74 71 20    70 72 65 76 2d 63 68 61 72 20 69 74 29 29 29 0a  | ))........(setq.prev-char.it))). | 
| 8de0 |  20 20 72 65 67 65 78 70 29 0a 0a 28 64 65 66 75    6e 20 64 65 61 64 67 72 65 70 2d 2d 62 75 66 66  | ..regexp)..(defun.deadgrep--buff | 
| 8e00 |  65 72 2d 6e 61 6d 65 20 28 73 65 61 72 63 68 2d    74 65 72 6d 20 64 69 72 65 63 74 6f 72 79 29 0a  | er-name.(search-term.directory). | 
| 8e20 |  20 20 28 66 6f 72 6d 61 74 20 22 2a 64 65 61 64    67 72 65 70 20 25 73 20 25 73 2a 22 0a 20 20 20  | ..(format."*deadgrep.%s.%s*".... | 
| 8e40 |  20 20 20 20 20 20 20 28 73 2d 74 72 75 6e 63 61    74 65 20 33 30 20 73 65 61 72 63 68 2d 74 65 72  | .......(s-truncate.30.search-ter | 
| 8e60 |  6d 29 0a 20 20 20 20 20 20 20 20 20 20 28 61 62    62 72 65 76 69 61 74 65 2d 66 69 6c 65 2d 6e 61  | m)...........(abbreviate-file-na | 
| 8e80 |  6d 65 20 64 69 72 65 63 74 6f 72 79 29 29 29 0a    0a 28 64 65 66 75 6e 20 64 65 61 64 67 72 65 70  | me.directory)))..(defun.deadgrep | 
| 8ea0 |  2d 2d 62 75 66 66 65 72 73 20 28 29 0a 20 20 22    41 6c 6c 20 74 68 65 20 63 75 72 72 65 6e 74 20  | --buffers.()..."All.the.current. | 
| 8ec0 |  64 65 61 64 67 72 65 70 20 72 65 73 75 6c 74 73    20 62 75 66 66 65 72 73 2e 0a 52 65 74 75 72 6e  | deadgrep.results.buffers..Return | 
| 8ee0 |  73 20 61 20 6c 69 73 74 20 6f 72 64 65 72 65 64    20 62 79 20 74 68 65 20 6d 6f 73 74 20 72 65 63  | s.a.list.ordered.by.the.most.rec | 
| 8f00 |  65 6e 74 6c 79 20 61 63 63 65 73 73 65 64 2e 22    0a 20 20 28 2d 2d 66 69 6c 74 65 72 20 28 77 69  | ently.accessed."...(--filter.(wi | 
| 8f20 |  74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65    72 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20  | th-current-buffer.it............ | 
| 8f40 |  20 20 20 28 65 71 20 6d 61 6a 6f 72 2d 6d 6f 64    65 20 27 64 65 61 64 67 72 65 70 2d 6d 6f 64 65  | ...(eq.major-mode.'deadgrep-mode | 
| 8f60 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b    3b 20 60 62 75 66 66 65 72 2d 6c 69 73 74 27 20  | )).............;;.`buffer-list'. | 
| 8f80 |  73 65 65 6d 73 20 74 6f 20 62 65 20 6f 72 64 65    72 65 64 20 62 79 20 6d 6f 73 74 20 72 65 63 65  | seems.to.be.ordered.by.most.rece | 
| 8fa0 |  6e 74 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20    20 3b 3b 20 76 69 73 69 74 65 64 20 66 69 72 73  | ntly.............;;.visited.firs | 
| 8fc0 |  74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28    62 75 66 66 65 72 2d 6c 69 73 74 29 29 29 0a 0a  | t..............(buffer-list))).. | 
| 8fe0 |  28 64 65 66 75 6e 20 64 65 61 64 67 72 65 70 2d    2d 62 75 66 66 65 72 20 28 73 65 61 72 63 68 2d  | (defun.deadgrep--buffer.(search- | 
| 9000 |  74 65 72 6d 20 64 69 72 65 63 74 6f 72 79 20 69    6e 69 74 69 61 6c 2d 66 69 6c 65 6e 61 6d 65 29  | term.directory.initial-filename) | 
| 9020 |  0a 20 20 22 43 72 65 61 74 65 20 61 6e 64 20 69    6e 69 74 69 61 6c 69 73 65 20 61 20 73 65 61 72  | ..."Create.and.initialise.a.sear | 
| 9040 |  63 68 20 72 65 73 75 6c 74 73 20 62 75 66 66 65    72 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 62 75  | ch.results.buffer."...(let*.((bu | 
| 9060 |  66 2d 6e 61 6d 65 20 28 64 65 61 64 67 72 65 70    2d 2d 62 75 66 66 65 72 2d 6e 61 6d 65 20 73 65  | f-name.(deadgrep--buffer-name.se | 
| 9080 |  61 72 63 68 2d 74 65 72 6d 20 64 69 72 65 63 74    6f 72 79 29 29 0a 20 20 20 20 20 20 20 20 20 28  | arch-term.directory))..........( | 
| 90a0 |  62 75 66 20 28 67 65 74 2d 62 75 66 66 65 72 20    62 75 66 2d 6e 61 6d 65 29 29 29 0a 20 20 20 20  | buf.(get-buffer.buf-name)))..... | 
| 90c0 |  28 69 66 20 62 75 66 0a 20 20 20 20 20 20 20 20    3b 3b 20 54 68 65 72 65 20 77 61 73 20 61 6c 72  | (if.buf.........;;.There.was.alr | 
| 90e0 |  65 61 64 79 20 61 20 62 75 66 66 65 72 20 77 69    74 68 20 74 68 69 73 20 6e 61 6d 65 2e 20 52 65  | eady.a.buffer.with.this.name..Re | 
| 9100 |  73 65 74 20 69 74 73 20 73 65 61 72 63 68 0a 20    20 20 20 20 20 20 20 3b 3b 20 73 74 61 74 65 2e  | set.its.search.........;;.state. | 
| 9120 |  0a 20 20 20 20 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 62 75  | .........(with-current-buffer.bu | 
| 9140 |  66 0a 20 20 20 20 20 20 20 20 20 20 28 64 65 61    64 67 72 65 70 2d 2d 73 74 6f 70 2d 61 6e 64 2d  | f...........(deadgrep--stop-and- | 
| 9160 |  72 65 73 65 74 29 29 0a 20 20 20 20 20 20 3b 3b    20 57 65 20 6e 65 65 64 20 74 6f 20 63 72 65 61  | reset)).......;;.We.need.to.crea | 
| 9180 |  74 65 20 74 68 65 20 62 75 66 66 65 72 2c 20 65    6e 73 75 72 65 20 77 65 20 64 6f 6e 27 74 20 65  | te.the.buffer,.ensure.we.don't.e | 
| 91a0 |  78 63 65 65 64 0a 20 20 20 20 20 20 3b 3b 20 60    64 65 61 64 67 72 65 70 2d 6d 61 78 2d 62 75 66  | xceed.......;;.`deadgrep-max-buf | 
| 91c0 |  66 65 72 73 27 20 62 79 20 6b 69 6c 6c 69 6e 67    20 74 68 65 20 6c 65 61 73 74 20 72 65 63 65 6e  | fers'.by.killing.the.least.recen | 
| 91e0 |  74 6c 79 20 75 73 65 64 2e 0a 20 20 20 20 20 20    28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 28  | tly.used........(progn.........( | 
| 9200 |  77 68 65 6e 20 28 6e 75 6d 62 65 72 70 20 64 65    61 64 67 72 65 70 2d 6d 61 78 2d 62 75 66 66 65  | when.(numberp.deadgrep-max-buffe | 
| 9220 |  72 73 29 0a 20 20 20 20 20 20 20 20 20 20 28 6c    65 74 2a 20 28 28 65 78 63 65 73 73 2d 62 75 66  | rs)...........(let*.((excess-buf | 
| 9240 |  66 65 72 73 20 28 2d 64 72 6f 70 20 28 31 2d 20    64 65 61 64 67 72 65 70 2d 6d 61 78 2d 62 75 66  | fers.(-drop.(1-.deadgrep-max-buf | 
| 9260 |  66 65 72 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 20 20  | fers)........................... | 
| 9280 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64    65 61 64 67 72 65 70 2d 2d 62 75 66 66 65 72 73  | ..............(deadgrep--buffers | 
| 92a0 |  29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 3b 3b 20 4b 69 6c 6c 20 62 75 66 66 65 72 73  | )))).............;;.Kill.buffers | 
| 92c0 |  20 73 6f 20 77 65 20 68 61 76 65 20 6f 6e 65 20    62 75 66 66 65 72 20 6c 65 73 73 20 74 68 61 6e  | .so.we.have.one.buffer.less.than | 
| 92e0 |  20 74 68 65 20 6d 61 78 69 6d 75 6d 0a 20 20 20    20 20 20 20 20 20 20 20 20 3b 3b 20 62 65 66 6f  | .the.maximum.............;;.befo | 
| 9300 |  72 65 20 77 65 20 63 72 65 61 74 65 20 61 20 6e    65 77 20 6f 6e 65 2e 0a 20 20 20 20 20 20 20 20  | re.we.create.a.new.one.......... | 
| 9320 |  20 20 20 20 28 2d 65 61 63 68 20 65 78 63 65 73    73 2d 62 75 66 66 65 72 73 20 23 27 6b 69 6c 6c  | ....(-each.excess-buffers.#'kill | 
| 9340 |  2d 62 75 66 66 65 72 29 29 29 0a 0a 20 20 20 20    20 20 20 20 28 73 65 74 71 20 62 75 66 20 28 67  | -buffer)))..........(setq.buf.(g | 
| 9360 |  65 74 2d 62 75 66 66 65 72 2d 63 72 65 61 74 65    20 62 75 66 2d 6e 61 6d 65 29 29 29 29 0a 0a 20  | et-buffer-create.buf-name))))... | 
| 9380 |  20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74    2d 62 75 66 66 65 72 20 62 75 66 0a 20 20 20 20  | ...(with-current-buffer.buf..... | 
| 93a0 |  20 20 28 73 65 74 71 20 64 65 66 61 75 6c 74 2d    64 69 72 65 63 74 6f 72 79 20 64 69 72 65 63 74  | ..(setq.default-directory.direct | 
| 93c0 |  6f 72 79 29 0a 20 20 20 20 20 20 28 6c 65 74 20    28 28 69 6e 68 69 62 69 74 2d 72 65 61 64 2d 6f  | ory).......(let.((inhibit-read-o | 
| 93e0 |  6e 6c 79 20 74 29 29 0a 20 20 20 20 20 20 20 20    3b 3b 20 54 68 69 73 20 6e 65 65 64 73 20 74 6f  | nly.t)).........;;.This.needs.to | 
| 9400 |  20 68 61 70 70 65 6e 20 66 69 72 73 74 2c 20 61    73 20 69 74 20 63 6c 6f 62 62 65 72 73 20 61 6c  | .happen.first,.as.it.clobbers.al | 
| 9420 |  6c 20 62 75 66 66 65 72 2d 6c 6f 63 61 6c 0a 20    20 20 20 20 20 20 20 3b 3b 20 76 61 72 69 61 62  | l.buffer-local.........;;.variab | 
| 9440 |  6c 65 73 2e 0a 20 20 20 20 20 20 20 20 28 64 65    61 64 67 72 65 70 2d 6d 6f 64 65 29 0a 20 20 20  | les..........(deadgrep-mode).... | 
| 9460 |  20 20 20 20 20 28 65 72 61 73 65 2d 62 75 66 66    65 72 29 0a 0a 20 20 20 20 20 20 20 20 28 73 65  | .....(erase-buffer)..........(se | 
| 9480 |  74 71 20 64 65 61 64 67 72 65 70 2d 2d 73 65 61    72 63 68 2d 74 65 72 6d 20 73 65 61 72 63 68 2d  | tq.deadgrep--search-term.search- | 
| 94a0 |  74 65 72 6d 29 0a 20 20 20 20 20 20 20 20 28 73    65 74 71 20 64 65 61 64 67 72 65 70 2d 2d 63 75  | term).........(setq.deadgrep--cu | 
| 94c0 |  72 72 65 6e 74 2d 66 69 6c 65 20 6e 69 6c 29 0a    20 20 20 20 20 20 20 20 28 73 65 74 71 20 64 65  | rrent-file.nil).........(setq.de | 
| 94e0 |  61 64 67 72 65 70 2d 2d 69 6e 69 74 69 61 6c 2d    66 69 6c 65 6e 61 6d 65 20 69 6e 69 74 69 61 6c  | adgrep--initial-filename.initial | 
| 9500 |  2d 66 69 6c 65 6e 61 6d 65 29 29 0a 20 20 20 20    20 20 28 73 65 74 71 20 62 75 66 66 65 72 2d 72  | -filename)).......(setq.buffer-r | 
| 9520 |  65 61 64 2d 6f 6e 6c 79 20 74 29 29 0a 20 20 20    20 62 75 66 29 29 0a 0a 28 64 65 66 75 6e 20 64  | ead-only.t)).....buf))..(defun.d | 
| 9540 |  65 61 64 67 72 65 70 2d 63 79 63 6c 65 2d 66 69    6c 65 73 20 28 29 0a 20 20 22 43 79 63 6c 65 20  | eadgrep-cycle-files.()..."Cycle. | 
| 9560 |  77 68 69 63 68 20 66 69 6c 65 73 20 61 72 65 20    73 65 61 72 63 68 65 64 20 28 61 6c 6c 20 2f 20  | which.files.are.searched.(all./. | 
| 9580 |  74 79 70 65 20 2f 20 67 6c 6f 62 29 20 61 6e 64    20 72 65 73 74 61 72 74 20 74 68 65 20 73 65 61  | type./.glob).and.restart.the.sea | 
| 95a0 |  72 63 68 2e 22 0a 20 20 28 69 6e 74 65 72 61 63    74 69 76 65 29 0a 20 20 28 63 6f 6e 64 0a 20 20  | rch."...(interactive)...(cond... | 
| 95c0 |  20 28 28 65 71 20 64 65 61 64 67 72 65 70 2d 2d    66 69 6c 65 2d 74 79 70 65 20 27 61 6c 6c 29 0a  | .((eq.deadgrep--file-type.'all). | 
| 95e0 |  20 20 20 20 28 73 65 74 71 20 64 65 61 64 67 72    65 70 2d 2d 66 69 6c 65 2d 74 79 70 65 0a 20 20  | ....(setq.deadgrep--file-type... | 
| 9600 |  20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 27 74    79 70 65 20 28 64 65 61 64 67 72 65 70 2d 2d 72  | ........(cons.'type.(deadgrep--r | 
| 9620 |  65 61 64 2d 66 69 6c 65 2d 74 79 70 65 20 64 65    61 64 67 72 65 70 2d 2d 69 6e 69 74 69 61 6c 2d  | ead-file-type.deadgrep--initial- | 
| 9640 |  66 69 6c 65 6e 61 6d 65 29 29 29 29 0a 20 20 20    28 28 65 71 20 28 63 61 72 2d 73 61 66 65 20 64  | filename))))....((eq.(car-safe.d | 
| 9660 |  65 61 64 67 72 65 70 2d 2d 66 69 6c 65 2d 74 79    70 65 29 20 27 74 79 70 65 29 0a 20 20 20 20 28  | eadgrep--file-type).'type).....( | 
| 9680 |  73 65 74 71 20 64 65 61 64 67 72 65 70 2d 2d 66    69 6c 65 2d 74 79 70 65 20 28 63 6f 6e 73 20 27  | setq.deadgrep--file-type.(cons.' | 
| 96a0 |  67 6c 6f 62 20 28 64 65 61 64 67 72 65 70 2d 2d    72 65 61 64 2d 66 69 6c 65 2d 67 6c 6f 62 29 29  | glob.(deadgrep--read-file-glob)) | 
| 96c0 |  29 29 0a 20 20 20 28 28 65 71 20 28 63 61 72 2d    73 61 66 65 20 64 65 61 64 67 72 65 70 2d 2d 66  | ))....((eq.(car-safe.deadgrep--f | 
| 96e0 |  69 6c 65 2d 74 79 70 65 29 20 27 67 6c 6f 62 29    0a 20 20 20 20 28 73 65 74 71 20 64 65 61 64 67  | ile-type).'glob).....(setq.deadg | 
| 9700 |  72 65 70 2d 2d 66 69 6c 65 2d 74 79 70 65 20 27    61 6c 6c 29 29 29 0a 20 20 28 64 65 61 64 67 72  | rep--file-type.'all)))...(deadgr | 
| 9720 |  65 70 2d 72 65 73 74 61 72 74 29 29 0a 0a 28 64    65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 63 79  | ep-restart))..(defun.deadgrep-cy | 
| 9740 |  63 6c 65 2d 73 65 61 72 63 68 2d 74 79 70 65 20    28 29 0a 20 20 22 43 79 63 6c 65 20 74 68 65 20  | cle-search-type.()..."Cycle.the. | 
| 9760 |  73 65 61 72 63 68 20 74 79 70 65 20 28 73 74 72    69 6e 67 20 2f 20 77 6f 72 64 73 20 2f 20 72 65  | search.type.(string./.words./.re | 
| 9780 |  67 65 78 70 29 20 61 6e 64 20 72 65 73 74 61 72    74 20 74 68 65 20 73 65 61 72 63 68 2e 22 0a 20  | gexp).and.restart.the.search.".. | 
| 97a0 |  20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20    20 28 63 6f 6e 64 0a 20 20 20 28 28 65 71 20 64  | .(interactive)...(cond....((eq.d | 
| 97c0 |  65 61 64 67 72 65 70 2d 2d 73 65 61 72 63 68 2d    74 79 70 65 20 27 73 74 72 69 6e 67 29 20 28 73  | eadgrep--search-type.'string).(s | 
| 97e0 |  65 74 71 20 64 65 61 64 67 72 65 70 2d 2d 73 65    61 72 63 68 2d 74 79 70 65 20 27 77 6f 72 64 73  | etq.deadgrep--search-type.'words | 
| 9800 |  29 29 0a 20 20 20 28 28 65 71 20 64 65 61 64 67    72 65 70 2d 2d 73 65 61 72 63 68 2d 74 79 70 65  | ))....((eq.deadgrep--search-type | 
| 9820 |  20 27 77 6f 72 64 73 29 20 28 73 65 74 71 20 64    65 61 64 67 72 65 70 2d 2d 73 65 61 72 63 68 2d  | .'words).(setq.deadgrep--search- | 
| 9840 |  74 79 70 65 20 27 72 65 67 65 78 70 29 29 0a 20    20 20 28 28 65 71 20 64 65 61 64 67 72 65 70 2d  | type.'regexp))....((eq.deadgrep- | 
| 9860 |  2d 73 65 61 72 63 68 2d 74 79 70 65 20 27 72 65    67 65 78 70 29 20 28 73 65 74 71 20 64 65 61 64  | -search-type.'regexp).(setq.dead | 
| 9880 |  67 72 65 70 2d 2d 73 65 61 72 63 68 2d 74 79 70    65 20 27 73 74 72 69 6e 67 29 29 29 0a 20 20 28  | grep--search-type.'string)))...( | 
| 98a0 |  64 65 61 64 67 72 65 70 2d 72 65 73 74 61 72 74    29 29 0a 0a 28 64 65 66 75 6e 20 64 65 61 64 67  | deadgrep-restart))..(defun.deadg | 
| 98c0 |  72 65 70 2d 63 79 63 6c 65 2d 73 65 61 72 63 68    2d 63 61 73 65 20 28 29 0a 20 20 22 43 79 63 6c  | rep-cycle-search-case.()..."Cycl | 
| 98e0 |  65 20 74 68 65 20 73 65 61 72 63 68 20 63 61 73    65 20 28 73 6d 61 72 74 20 2f 20 73 65 6e 73 69  | e.the.search.case.(smart./.sensi | 
| 9900 |  74 69 76 65 20 2f 20 69 67 6e 6f 72 65 29 20 61    6e 64 20 72 65 73 74 61 72 74 20 74 68 65 20 73  | tive./.ignore).and.restart.the.s | 
| 9920 |  65 61 72 63 68 2e 22 0a 20 20 28 69 6e 74 65 72    61 63 74 69 76 65 29 0a 20 20 28 63 6f 6e 64 0a  | earch."...(interactive)...(cond. | 
| 9940 |  20 20 20 28 28 65 71 20 64 65 61 64 67 72 65 70    2d 2d 73 65 61 72 63 68 2d 63 61 73 65 20 27 73  | ...((eq.deadgrep--search-case.'s | 
| 9960 |  6d 61 72 74 29 20 28 73 65 74 71 20 64 65 61 64    67 72 65 70 2d 2d 73 65 61 72 63 68 2d 63 61 73  | mart).(setq.deadgrep--search-cas | 
| 9980 |  65 20 27 73 65 6e 73 69 74 69 76 65 29 29 0a 20    20 20 28 28 65 71 20 64 65 61 64 67 72 65 70 2d  | e.'sensitive))....((eq.deadgrep- | 
| 99a0 |  2d 73 65 61 72 63 68 2d 63 61 73 65 20 27 73 65    6e 73 69 74 69 76 65 29 20 28 73 65 74 71 20 64  | -search-case.'sensitive).(setq.d | 
| 99c0 |  65 61 64 67 72 65 70 2d 2d 73 65 61 72 63 68 2d    63 61 73 65 20 27 69 67 6e 6f 72 65 29 29 0a 20  | eadgrep--search-case.'ignore)).. | 
| 99e0 |  20 20 28 28 65 71 20 64 65 61 64 67 72 65 70 2d    2d 73 65 61 72 63 68 2d 63 61 73 65 20 27 69 67  | ..((eq.deadgrep--search-case.'ig | 
| 9a00 |  6e 6f 72 65 29 20 28 73 65 74 71 20 64 65 61 64    67 72 65 70 2d 2d 73 65 61 72 63 68 2d 63 61 73  | nore).(setq.deadgrep--search-cas | 
| 9a20 |  65 20 27 73 6d 61 72 74 29 29 29 0a 20 20 28 64    65 61 64 67 72 65 70 2d 72 65 73 74 61 72 74 29  | e.'smart)))...(deadgrep-restart) | 
| 9a40 |  29 0a 0a 28 64 65 66 76 61 72 20 64 65 61 64 67    72 65 70 2d 6d 6f 64 65 2d 6d 61 70 0a 20 20 28  | )..(defvar.deadgrep-mode-map...( | 
| 9a60 |  6c 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  | let.((map.(make-sparse-keymap))) | 
| 9a80 |  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 22 52 45 54 22 29  | .....(define-key.map.(kbd."RET") | 
| 9aa0 |  20 23 27 64 65 61 64 67 72 65 70 2d 76 69 73 69    74 2d 72 65 73 75 6c 74 29 0a 20 20 20 20 28 64  | .#'deadgrep-visit-result).....(d | 
| 9ac0 |  65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b    62 64 20 22 6f 22 29 20 23 27 64 65 61 64 67 72  | efine-key.map.(kbd."o").#'deadgr | 
| 9ae0 |  65 70 2d 76 69 73 69 74 2d 72 65 73 75 6c 74 2d    6f 74 68 65 72 2d 77 69 6e 64 6f 77 29 0a 20 20  | ep-visit-result-other-window)... | 
| 9b00 |  20 20 3b 3b 20 54 4f 44 4f 3a 20 77 65 20 73 68    6f 75 6c 64 20 73 74 69 6c 6c 20 62 65 20 61 62  | ..;;.TODO:.we.should.still.be.ab | 
| 9b20 |  6c 65 20 74 6f 20 63 6c 69 63 6b 20 6f 6e 20 62    75 74 74 6f 6e 73 2e 0a 0a 20 20 20 20 28 64 65  | le.to.click.on.buttons.......(de | 
| 9b40 |  66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62    64 20 22 53 22 29 20 23 27 64 65 61 64 67 72 65  | fine-key.map.(kbd."S").#'deadgre | 
| 9b60 |  70 2d 73 65 61 72 63 68 2d 74 65 72 6d 29 0a 20    20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d  | p-search-term).....(define-key.m | 
| 9b80 |  61 70 20 28 6b 62 64 20 22 54 22 29 20 23 27 64    65 61 64 67 72 65 70 2d 63 79 63 6c 65 2d 73 65  | ap.(kbd."T").#'deadgrep-cycle-se | 
| 9ba0 |  61 72 63 68 2d 74 79 70 65 29 0a 20 20 20 20 28    64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28  | arch-type).....(define-key.map.( | 
| 9bc0 |  6b 62 64 20 22 43 22 29 20 23 27 64 65 61 64 67    72 65 70 2d 63 79 63 6c 65 2d 73 65 61 72 63 68  | kbd."C").#'deadgrep-cycle-search | 
| 9be0 |  2d 63 61 73 65 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  | -case).....(define-key.map.(kbd. | 
| 9c00 |  22 46 22 29 20 23 27 64 65 61 64 67 72 65 70 2d    63 79 63 6c 65 2d 66 69 6c 65 73 29 0a 20 20 20  | "F").#'deadgrep-cycle-files).... | 
| 9c20 |  20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70    20 28 6b 62 64 20 22 44 22 29 20 23 27 64 65 61  | .(define-key.map.(kbd."D").#'dea | 
| 9c40 |  64 67 72 65 70 2d 64 69 72 65 63 74 6f 72 79 29    0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79  | dgrep-directory).....(define-key | 
| 9c60 |  20 6d 61 70 20 28 6b 62 64 20 22 5e 22 29 20 23    27 64 65 61 64 67 72 65 70 2d 70 61 72 65 6e 74  | .map.(kbd."^").#'deadgrep-parent | 
| 9c80 |  2d 64 69 72 65 63 74 6f 72 79 29 0a 20 20 20 20    28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20  | -directory).....(define-key.map. | 
| 9ca0 |  28 6b 62 64 20 22 67 22 29 20 23 27 64 65 61 64    67 72 65 70 2d 72 65 73 74 61 72 74 29 0a 20 20  | (kbd."g").#'deadgrep-restart)... | 
| 9cc0 |  20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61    70 20 28 6b 62 64 20 22 49 22 29 20 23 27 64 65  | ..(define-key.map.(kbd."I").#'de | 
| 9ce0 |  61 64 67 72 65 70 2d 69 6e 63 72 65 6d 65 6e 74    61 6c 29 0a 0a 20 20 20 20 3b 3b 20 54 4f 44 4f  | adgrep-incremental)......;;.TODO | 
| 9d00 |  3a 20 74 68 69 73 20 73 68 6f 75 6c 64 20 77 6f    72 6b 20 77 68 65 6e 20 70 6f 69 6e 74 20 69 73  | :.this.should.work.when.point.is | 
| 9d20 |  20 61 6e 79 77 68 65 72 65 20 69 6e 20 74 68 65    20 66 69 6c 65 2c 20 6e 6f 74 0a 20 20 20 20 3b  | .anywhere.in.the.file,.not.....; | 
| 9d40 |  3b 20 6a 75 73 74 20 6f 6e 20 69 74 73 20 68 65    61 64 69 6e 67 2e 0a 20 20 20 20 28 64 65 66 69  | ;.just.on.its.heading......(defi | 
| 9d60 |  6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20    22 54 41 42 22 29 20 23 27 64 65 61 64 67 72 65  | ne-key.map.(kbd."TAB").#'deadgre | 
| 9d80 |  70 2d 74 6f 67 67 6c 65 2d 66 69 6c 65 2d 72 65    73 75 6c 74 73 29 0a 20 20 20 20 28 64 65 66 69  | p-toggle-file-results).....(defi | 
| 9da0 |  6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20    22 53 2d 43 2d 69 22 29 20 23 27 64 65 61 64 67  | ne-key.map.(kbd."S-C-i").#'deadg | 
| 9dc0 |  72 65 70 2d 74 6f 67 67 6c 65 2d 61 6c 6c 2d 66    69 6c 65 2d 72 65 73 75 6c 74 73 29 0a 20 20 20  | rep-toggle-all-file-results).... | 
| 9de0 |  20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70    20 28 6b 62 64 20 22 3c 62 61 63 6b 74 61 62 3e  | .(define-key.map.(kbd."<backtab> | 
| 9e00 |  22 29 20 23 27 64 65 61 64 67 72 65 70 2d 74 6f    67 67 6c 65 2d 61 6c 6c 2d 66 69 6c 65 2d 72 65  | ").#'deadgrep-toggle-all-file-re | 
| 9e20 |  73 75 6c 74 73 29 0a 0a 20 20 20 20 3b 3b 20 4b    65 79 62 69 6e 64 69 6e 67 20 63 68 6f 73 65 6e  | sults)......;;.Keybinding.chosen | 
| 9e40 |  20 74 6f 20 6d 61 74 63 68 20 60 6b 69 6c 6c 2d    63 6f 6d 70 69 6c 61 74 69 6f 6e 27 2e 0a 20 20  | .to.match.`kill-compilation'.... | 
| 9e60 |  20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61    70 20 28 6b 62 64 20 22 43 2d 63 20 43 2d 6b 22  | ..(define-key.map.(kbd."C-c.C-k" | 
| 9e80 |  29 20 23 27 64 65 61 64 67 72 65 70 2d 6b 69 6c    6c 2d 70 72 6f 63 65 73 73 29 0a 0a 20 20 20 20  | ).#'deadgrep-kill-process)...... | 
| 9ea0 |  3b 3b 20 4b 65 79 62 69 6e 64 69 6e 67 20 63 68    6f 73 65 6e 20 74 6f 20 6d 61 74 63 68 20 6f 74  | ;;.Keybinding.chosen.to.match.ot | 
| 9ec0 |  68 65 72 20 74 6f 6f 6c 73 2c 20 69 6e 63 6c 75    64 69 6e 67 20 60 72 65 61 64 2d 6f 6e 6c 79 2d  | her.tools,.including.`read-only- | 
| 9ee0 |  6d 6f 64 65 27 2e 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  | mode'......(define-key.map.(kbd. | 
| 9f00 |  22 43 2d 78 20 43 2d 71 22 29 20 23 27 64 65 61    64 67 72 65 70 2d 65 64 69 74 2d 6d 6f 64 65 29  | "C-x.C-q").#'deadgrep-edit-mode) | 
| 9f20 |  0a 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 22 6e 22 29 20  | ......(define-key.map.(kbd."n"). | 
| 9f40 |  23 27 64 65 61 64 67 72 65 70 2d 66 6f 72 77 61    72 64 2d 6d 61 74 63 68 29 0a 20 20 20 20 28 64  | #'deadgrep-forward-match).....(d | 
| 9f60 |  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 64 65 61 64 67 72  | efine-key.map.(kbd."p").#'deadgr | 
| 9f80 |  65 70 2d 62 61 63 6b 77 61 72 64 2d 6d 61 74 63    68 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b  | ep-backward-match).....(define-k | 
| 9fa0 |  65 79 20 6d 61 70 20 28 6b 62 64 20 22 4d 2d 6e    22 29 20 23 27 64 65 61 64 67 72 65 70 2d 66 6f  | ey.map.(kbd."M-n").#'deadgrep-fo | 
| 9fc0 |  72 77 61 72 64 2d 66 69 6c 65 6e 61 6d 65 29 0a    20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20  | rward-filename).....(define-key. | 
| 9fe0 |  6d 61 70 20 28 6b 62 64 20 22 4d 2d 70 22 29 20    23 27 64 65 61 64 67 72 65 70 2d 62 61 63 6b 77  | map.(kbd."M-p").#'deadgrep-backw | 
| a000 |  61 72 64 2d 66 69 6c 65 6e 61 6d 65 29 0a 0a 20    20 20 20 6d 61 70 29 0a 20 20 22 4b 65 79 6d 61  | ard-filename)......map)..."Keyma | 
| a020 |  70 20 66 6f 72 20 60 64 65 61 64 67 72 65 70 2d    6d 6f 64 65 27 2e 22 29 0a 0a 28 64 65 66 76 61  | p.for.`deadgrep-mode'.")..(defva | 
| a040 |  72 20 64 65 61 64 67 72 65 70 2d 65 64 69 74 2d    6d 6f 64 65 2d 6d 61 70 0a 20 20 28 6c 65 74 20  | r.deadgrep-edit-mode-map...(let. | 
| a060 |  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 20 20 20  | ((map.(make-sparse-keymap))).... | 
| a080 |  20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70    20 28 6b 62 64 20 22 52 45 54 22 29 20 23 27 64  | .(define-key.map.(kbd."RET").#'d | 
| a0a0 |  65 61 64 67 72 65 70 2d 76 69 73 69 74 2d 72 65    73 75 6c 74 29 0a 20 20 20 20 28 64 65 66 69 6e  | eadgrep-visit-result).....(defin | 
| a0c0 |  65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22    43 2d 63 20 43 2d 63 22 29 20 23 27 64 65 61 64  | e-key.map.(kbd."C-c.C-c").#'dead | 
| a0e0 |  67 72 65 70 2d 6d 6f 64 65 29 20 3b 3b 20 65 78    69 74 20 65 64 69 74 20 6d 6f 64 65 0a 20 20 20  | grep-mode).;;.exit.edit.mode.... | 
| a100 |  20 6d 61 70 29 0a 20 20 22 4b 65 79 6d 61 70 20    66 6f 72 20 60 64 65 61 64 67 72 65 70 2d 65 64  | .map)..."Keymap.for.`deadgrep-ed | 
| a120 |  69 74 2d 6d 6f 64 65 27 2e 22 29 0a 0a 28 64 65    66 69 6e 65 2d 64 65 72 69 76 65 64 2d 6d 6f 64  | it-mode'.")..(define-derived-mod | 
| a140 |  65 20 64 65 61 64 67 72 65 70 2d 6d 6f 64 65 20    73 70 65 63 69 61 6c 2d 6d 6f 64 65 0a 20 20 27  | e.deadgrep-mode.special-mode...' | 
| a160 |  28 3a 65 76 61 6c 20 28 64 65 61 64 67 72 65 70    2d 2d 6d 6f 64 65 2d 6c 69 6e 65 29 29 0a 20 20  | (:eval.(deadgrep--mode-line))... | 
| a180 |  22 4d 61 6a 6f 72 20 6d 6f 64 65 20 66 6f 72 20    64 65 61 64 67 72 65 70 20 72 65 73 75 6c 74 73  | "Major.mode.for.deadgrep.results | 
| a1a0 |  20 62 75 66 66 65 72 73 2e 22 0a 20 20 28 72 65    6d 6f 76 65 2d 68 6f 6f 6b 20 27 61 66 74 65 72  | .buffers."...(remove-hook.'after | 
| a1c0 |  2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e    73 20 23 27 64 65 61 64 67 72 65 70 2d 2d 70 72  | -change-functions.#'deadgrep--pr | 
| a1e0 |  6f 70 61 67 61 74 65 2d 63 68 61 6e 67 65 20 74    29 29 0a 0a 28 64 65 66 75 6e 20 64 65 61 64 67  | opagate-change.t))..(defun.deadg | 
| a200 |  72 65 70 2d 2d 66 69 6e 64 2d 66 69 6c 65 20 28    70 61 74 68 29 0a 20 20 22 4f 70 65 6e 20 50 41  | rep--find-file.(path)..."Open.PA | 
| a220 |  54 48 20 69 6e 20 61 20 62 75 66 66 65 72 2c 20    61 6e 64 20 72 65 74 75 72 6e 20 61 20 63 6f 6e  | TH.in.a.buffer,.and.return.a.con | 
| a240 |  73 20 63 65 6c 6c 0a 5c 28 42 55 46 20 2e 20 4f    50 45 4e 45 44 29 2e 20 4f 50 45 4e 45 44 20 69  | s.cell.\(BUF...OPENED)..OPENED.i | 
| a260 |  73 20 6e 69 6c 20 69 66 20 74 68 65 72 65 20 77    61 73 20 61 6c 72 65 61 64 79 20 61 20 62 75 66  | s.nil.if.there.was.already.a.buf | 
| a280 |  66 65 72 20 66 6f 72 0a 74 68 69 73 20 70 61 74    68 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 69 6e  | fer.for.this.path."...(let*.((in | 
| a2a0 |  69 74 69 61 6c 2d 62 75 66 66 65 72 73 20 28 62    75 66 66 65 72 2d 6c 69 73 74 29 29 0a 20 20 20  | itial-buffers.(buffer-list)).... | 
| a2c0 |  20 20 20 20 20 20 28 6f 70 65 6e 65 64 20 6e 69    6c 29 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 53  | ......(opened.nil)..........;;.S | 
| a2e0 |  6b 69 70 20 72 75 6e 6e 69 6e 67 20 66 69 6e 64    2d 66 69 6c 65 2d 68 6f 6f 6b 20 73 69 6e 63 65  | kip.running.find-file-hook.since | 
| a300 |  20 69 74 20 6d 61 79 20 70 72 6f 6d 70 74 20 74    68 65 20 75 73 65 72 2e 0a 20 20 20 20 20 20 20  | .it.may.prompt.the.user......... | 
| a320 |  20 20 28 66 69 6e 64 2d 66 69 6c 65 2d 68 6f 6f    6b 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20  | ..(find-file-hook.nil).......... | 
| a340 |  3b 3b 20 49 66 20 77 65 20 65 6e 64 20 75 70 20    6f 70 65 6e 69 6e 67 20 61 20 62 75 66 66 65 72  | ;;.If.we.end.up.opening.a.buffer | 
| a360 |  2c 20 64 6f 6e 27 74 20 62 6f 74 68 65 72 20 77    69 74 68 20 66 69 6c 65 0a 20 20 20 20 20 20 20  | ,.don't.bother.with.file........ | 
| a380 |  20 20 3b 3b 20 76 61 72 69 61 62 6c 65 73 2e 20    49 74 20 70 72 6f 6d 70 74 73 20 74 68 65 20 75  | ..;;.variables..It.prompts.the.u | 
| a3a0 |  73 65 72 2c 20 61 6e 64 20 77 65 20 64 69 73 63    61 72 64 20 74 68 65 20 62 75 66 66 65 72 0a 20  | ser,.and.we.discard.the.buffer.. | 
| a3c0 |  20 20 20 20 20 20 20 20 3b 3b 20 61 66 74 65 72    77 61 72 64 73 20 61 6e 79 77 61 79 2e 0a 20 20  | ........;;.afterwards.anyway.... | 
| a3e0 |  20 20 20 20 20 20 20 28 65 6e 61 62 6c 65 2d 6c    6f 63 61 6c 2d 76 61 72 69 61 62 6c 65 73 20 6e  | .......(enable-local-variables.n | 
| a400 |  69 6c 29 0a 20 20 20 20 20 20 20 20 20 3b 3b 20    42 69 6e 64 20 60 61 75 74 6f 2d 6d 6f 64 65 2d  | il)..........;;.Bind.`auto-mode- | 
| a420 |  61 6c 69 73 74 27 20 74 6f 20 6e 69 6c 2c 20 73    6f 20 77 65 20 6f 70 65 6e 20 74 68 65 20 62 75  | alist'.to.nil,.so.we.open.the.bu | 
| a440 |  66 66 65 72 20 69 6e 0a 20 20 20 20 20 20 20 20    20 3b 3b 20 60 66 75 6e 64 61 6d 65 6e 74 61 6c  | ffer.in..........;;.`fundamental | 
| a460 |  2d 6d 6f 64 65 27 20 69 66 20 69 74 20 69 73 6e    27 74 20 61 6c 72 65 61 64 79 20 6f 70 65 6e 2e  | -mode'.if.it.isn't.already.open. | 
| a480 |  0a 20 20 20 20 20 20 20 20 20 28 61 75 74 6f 2d    6d 6f 64 65 2d 61 6c 69 73 74 20 6e 69 6c 29 0a  | ..........(auto-mode-alist.nil). | 
| a4a0 |  20 20 20 20 20 20 20 20 20 3b 3b 20 55 73 65 20    60 66 69 6e 64 2d 66 69 6c 65 2d 6e 6f 73 65 6c  | .........;;.Use.`find-file-nosel | 
| a4c0 |  65 63 74 27 20 73 6f 20 77 65 20 73 74 69 6c 6c    20 64 65 63 6f 64 65 20 62 79 74 65 73 20 66 72  | ect'.so.we.still.decode.bytes.fr | 
| a4e0 |  6f 6d 20 74 68 65 0a 20 20 20 20 20 20 20 20 20    3b 3b 20 75 6e 64 65 72 6c 79 69 6e 67 20 66 69  | om.the..........;;.underlying.fi | 
| a500 |  6c 65 2e 0a 20 20 20 20 20 20 20 20 20 28 62 75    66 20 28 66 69 6e 64 2d 66 69 6c 65 2d 6e 6f 73  | le...........(buf.(find-file-nos | 
| a520 |  65 6c 65 63 74 20 70 61 74 68 29 29 29 0a 20 20    20 20 28 75 6e 6c 65 73 73 20 28 2d 63 6f 6e 74  | elect.path))).....(unless.(-cont | 
| a540 |  61 69 6e 73 2d 70 20 69 6e 69 74 69 61 6c 2d 62    75 66 66 65 72 73 20 62 75 66 29 0a 20 20 20 20  | ains-p.initial-buffers.buf)..... | 
| a560 |  20 20 28 73 65 74 71 20 6f 70 65 6e 65 64 20 74    29 29 0a 20 20 20 20 28 63 6f 6e 73 20 62 75 66  | ..(setq.opened.t)).....(cons.buf | 
| a580 |  20 6f 70 65 6e 65 64 29 29 29 0a 0a 28 64 65 66    75 6e 20 64 65 61 64 67 72 65 70 2d 2d 70 72 6f  | .opened)))..(defun.deadgrep--pro | 
| a5a0 |  70 61 67 61 74 65 2d 63 68 61 6e 67 65 20 28 62    65 67 20 65 6e 64 20 6c 65 6e 67 74 68 29 0a 20  | pagate-change.(beg.end.length).. | 
| a5c0 |  20 22 52 65 70 65 61 74 20 74 68 65 20 6c 61 73    74 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 74  | ."Repeat.the.last.modification.t | 
| a5e0 |  6f 20 74 68 65 20 72 65 73 75 6c 74 73 20 62 75    66 66 65 72 20 69 6e 20 74 68 65 0a 75 6e 64 65  | o.the.results.buffer.in.the.unde | 
| a600 |  72 6c 79 69 6e 67 20 66 69 6c 65 2e 22 0a 20 20    3b 3b 20 57 65 20 73 68 6f 75 6c 64 20 6e 65 76  | rlying.file."...;;.We.should.nev | 
| a620 |  65 72 20 62 65 20 63 61 6c 6c 65 64 20 6f 75 74    73 69 64 65 20 61 6e 20 65 64 69 74 20 62 75 66  | er.be.called.outside.an.edit.buf | 
| a640 |  66 65 72 2c 20 62 75 74 20 62 65 0a 20 20 3b 3b    20 64 65 66 65 6e 73 69 76 65 2e 20 42 75 67 67  | fer,.but.be...;;.defensive..Bugg | 
| a660 |  79 20 66 75 6e 63 74 69 6f 6e 73 20 69 6e 20 63    68 61 6e 67 65 20 68 6f 6f 6b 73 20 61 72 65 20  | y.functions.in.change.hooks.are. | 
| a680 |  70 61 69 6e 66 75 6c 2e 0a 20 20 28 77 68 65 6e    20 28 65 71 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20  | painful....(when.(eq.major-mode. | 
| a6a0 |  27 64 65 61 64 67 72 65 70 2d 65 64 69 74 2d 6d    6f 64 65 29 0a 20 20 20 20 28 73 61 76 65 2d 6d  | 'deadgrep-edit-mode).....(save-m | 
| a6c0 |  61 72 6b 2d 61 6e 64 2d 65 78 63 75 72 73 69 6f    6e 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68  | ark-and-excursion.......(goto-ch | 
| a6e0 |  61 72 20 62 65 67 29 0a 20 20 20 20 20 20 28 2d    6c 65 74 2a 20 28 28 63 6f 6c 75 6d 6e 20 28 2b  | ar.beg).......(-let*.((column.(+ | 
| a700 |  20 28 6f 72 20 28 64 65 61 64 67 72 65 70 2d 2d    63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 29 20  | .(or.(deadgrep--current-column). | 
| a720 |  30 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 6c 65 6e 67  | 0)..........................leng | 
| a740 |  74 68 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 66 69 6c 65 6e 61 6d 65 20 28 64 65  | th))...............(filename.(de | 
| a760 |  61 64 67 72 65 70 2d 2d 66 69 6c 65 6e 61 6d 65    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | adgrep--filename)).............. | 
| a780 |  20 28 6c 69 6e 65 2d 6e 75 6d 62 65 72 20 28 64    65 61 64 67 72 65 70 2d 2d 6c 69 6e 65 2d 6e 75  | .(line-number.(deadgrep--line-nu | 
| a7a0 |  6d 62 65 72 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 28 62 75 66 20 2e 20 6f 70 65  | mber))...............((buf...ope | 
| a7c0 |  6e 65 64 29 20 28 64 65 61 64 67 72 65 70 2d 2d    66 69 6e 64 2d 66 69 6c 65 20 66 69 6c 65 6e 61  | ned).(deadgrep--find-file.filena | 
| a7e0 |  6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 69 6e 73 65 72 74 65 64 20 28 62 75  | me))...............(inserted.(bu | 
| a800 |  66 66 65 72 2d 73 75 62 73 74 72 69 6e 67 20 62    65 67 20 65 6e 64 29 29 29 0a 20 20 20 20 20 20  | ffer-substring.beg.end)))....... | 
| a820 |  20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d    62 75 66 66 65 72 20 62 75 66 0a 20 20 20 20 20  | ..(with-current-buffer.buf...... | 
| a840 |  20 20 20 20 20 28 73 61 76 65 2d 6d 61 72 6b 2d    61 6e 64 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20  | .....(save-mark-and-excursion... | 
| a860 |  20 20 20 20 20 20 20 20 20 20 28 73 61 76 65 2d    72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20  | ..........(save-restriction..... | 
| a880 |  20 20 20 20 20 20 20 20 20 20 28 77 69 64 65 6e    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ..........(widen)............... | 
| a8a0 |  28 67 6f 74 6f 2d 63 68 61 72 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 64 65 61 64 67  | (goto-char................(deadg | 
| a8c0 |  72 65 70 2d 2d 62 75 66 66 65 72 2d 70 6f 73 69    74 69 6f 6e 20 6c 69 6e 65 2d 6e 75 6d 62 65 72  | rep--buffer-position.line-number | 
| a8e0 |  20 63 6f 6c 75 6d 6e 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 64 65 6c 65 74 65 2d  | .column))...............(delete- | 
| a900 |  63 68 61 72 20 28 2d 20 6c 65 6e 67 74 68 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | char.(-.length))...............( | 
| a920 |  69 6e 73 65 72 74 20 69 6e 73 65 72 74 65 64 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20  | insert.inserted)))...........;;. | 
| a940 |  49 66 20 77 65 20 77 65 72 65 6e 27 74 20 76 69    73 69 74 69 6e 67 20 74 68 69 73 20 66 69 6c 65  | If.we.weren't.visiting.this.file | 
| a960 |  20 62 65 66 6f 72 65 2c 20 6a 75 73 74 20 73 61    76 65 20 69 74 20 61 6e 64 0a 20 20 20 20 20 20  | .before,.just.save.it.and....... | 
| a980 |  20 20 20 20 3b 3b 20 63 6c 6f 73 65 20 69 74 2e    0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e  | ....;;.close.it............(when | 
| a9a0 |  20 6f 70 65 6e 65 64 0a 20 20 20 20 20 20 20 20    20 20 20 20 28 62 61 73 69 63 2d 73 61 76 65 2d  | .opened.............(basic-save- | 
| a9c0 |  62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72  | buffer).............(kill-buffer | 
| a9e0 |  20 62 75 66 29 29 29 29 29 29 29 0a 0a 28 64 65    66 63 75 73 74 6f 6d 20 64 65 61 64 67 72 65 70  | .buf)))))))..(defcustom.deadgrep | 
| aa00 |  2d 65 64 69 74 2d 6d 6f 64 65 2d 68 6f 6f 6b 20    6e 69 6c 0a 20 20 22 43 61 6c 6c 65 64 20 61 66  | -edit-mode-hook.nil..."Called.af | 
| aa20 |  74 65 72 20 60 64 65 61 64 67 72 65 70 2d 65 64    69 74 2d 6d 6f 64 65 27 20 69 73 20 74 75 72 6e  | ter.`deadgrep-edit-mode'.is.turn | 
| aa40 |  65 64 20 6f 6e 2e 22 0a 20 20 3a 74 79 70 65 20    27 68 6f 6f 6b 0a 20 20 3a 67 72 6f 75 70 20 27  | ed.on."...:type.'hook...:group.' | 
| aa60 |  64 65 61 64 67 72 65 70 29 0a 0a 28 64 65 66 75    6e 20 64 65 61 64 67 72 65 70 2d 65 64 69 74 2d  | deadgrep)..(defun.deadgrep-edit- | 
| aa80 |  6d 6f 64 65 20 28 29 0a 20 20 22 4d 61 6a 6f 72    20 6d 6f 64 65 20 66 6f 72 20 65 64 69 74 69 6e  | mode.()..."Major.mode.for.editin | 
| aaa0 |  67 20 74 68 65 20 72 65 73 75 6c 74 73 20 66 69    6c 65 73 20 64 69 72 65 63 74 6c 79 20 66 72 6f  | g.the.results.files.directly.fro | 
| aac0 |  6d 20 61 0a 64 65 61 64 67 72 65 70 20 72 65 73    75 6c 74 73 20 62 75 66 66 65 72 2e 0a 0a 5c 5c  | m.a.deadgrep.results.buffer...\\ | 
| aae0 |  7b 64 65 61 64 67 72 65 70 2d 65 64 69 74 2d 6d    6f 64 65 2d 6d 61 70 7d 22 0a 20 20 28 69 6e 74  | {deadgrep-edit-mode-map}"...(int | 
| ab00 |  65 72 61 63 74 69 76 65 29 0a 20 20 28 75 6e 6c    65 73 73 20 28 65 71 20 6d 61 6a 6f 72 2d 6d 6f  | eractive)...(unless.(eq.major-mo | 
| ab20 |  64 65 20 27 64 65 61 64 67 72 65 70 2d 6d 6f 64    65 29 0a 20 20 20 20 28 75 73 65 72 2d 65 72 72  | de.'deadgrep-mode).....(user-err | 
| ab40 |  6f 72 20 22 64 65 61 64 67 72 65 70 2d 65 64 69    74 2d 6d 6f 64 65 20 6f 6e 6c 79 20 77 6f 72 6b  | or."deadgrep-edit-mode.only.work | 
| ab60 |  73 20 69 6e 20 64 65 61 64 67 72 65 70 20 72 65    73 75 6c 74 20 62 75 66 66 65 72 73 22 29 29 0a  | s.in.deadgrep.result.buffers")). | 
| ab80 |  20 20 28 77 68 65 6e 20 64 65 61 64 67 72 65 70    2d 2d 72 75 6e 6e 69 6e 67 0a 20 20 20 20 28 75  | ..(when.deadgrep--running.....(u | 
| aba0 |  73 65 72 2d 65 72 72 6f 72 20 22 43 61 6e 27 74    20 65 64 69 74 20 61 20 72 65 73 75 6c 74 73 20  | ser-error."Can't.edit.a.results. | 
| abc0 |  62 75 66 66 65 72 20 75 6e 74 69 6c 20 74 68 65    20 73 65 61 72 63 68 20 69 73 20 66 69 6e 69 73  | buffer.until.the.search.is.finis | 
| abe0 |  68 65 64 22 29 29 0a 20 20 3b 3b 20 57 65 20 64    65 6c 69 62 65 72 61 74 65 6c 79 20 64 6f 6e 27  | hed"))...;;.We.deliberately.don' | 
| ac00 |  74 20 75 73 65 20 60 64 65 66 69 6e 65 2d 64 65    72 69 76 65 64 2d 6d 6f 64 65 27 20 68 65 72 65  | t.use.`define-derived-mode'.here | 
| ac20 |  20 62 65 63 61 75 73 65 20 77 65 0a 20 20 3b 3b    20 77 61 6e 74 20 74 6f 20 63 68 65 63 6b 20 74  | .because.we...;;.want.to.check.t | 
| ac40 |  68 65 20 70 72 65 76 69 6f 75 73 20 76 61 6c 75    65 20 6f 66 20 60 6d 61 6a 6f 72 2d 6d 6f 64 65  | he.previous.value.of.`major-mode | 
| ac60 |  27 2e 20 49 6e 69 74 69 61 6c 69 73 65 20 74 68    65 0a 20 20 3b 3b 20 6d 61 6a 6f 72 20 6d 6f 64  | '..Initialise.the...;;.major.mod | 
| ac80 |  65 20 6d 61 6e 75 61 6c 6c 79 2e 0a 20 20 28 64    65 6c 61 79 2d 6d 6f 64 65 2d 68 6f 6f 6b 73 0a  | e.manually....(delay-mode-hooks. | 
| aca0 |  20 20 20 20 28 6b 69 6c 6c 2d 61 6c 6c 2d 6c 6f    63 61 6c 2d 76 61 72 69 61 62 6c 65 73 29 0a 20  | ....(kill-all-local-variables).. | 
| acc0 |  20 20 20 28 73 65 74 71 20 6d 61 6a 6f 72 2d 6d    6f 64 65 20 27 64 65 61 64 67 72 65 70 2d 65 64  | ...(setq.major-mode.'deadgrep-ed | 
| ace0 |  69 74 2d 6d 6f 64 65 29 0a 20 20 20 20 28 73 65    74 71 20 6d 6f 64 65 2d 6e 61 6d 65 0a 20 20 20  | it-mode).....(setq.mode-name.... | 
| ad00 |  20 20 20 20 20 20 20 27 28 3a 70 72 6f 70 65 72    74 69 7a 65 20 22 44 65 61 64 67 72 65 70 3a 45  | .......'(:propertize."Deadgrep:E | 
| ad20 |  64 69 74 22 20 66 61 63 65 20 6d 6f 64 65 2d 6c    69 6e 65 2d 65 6d 70 68 61 73 69 73 29 29 0a 20  | dit".face.mode-line-emphasis)).. | 
| ad40 |  20 20 20 28 75 73 65 2d 6c 6f 63 61 6c 2d 6d 61    70 20 64 65 61 64 67 72 65 70 2d 65 64 69 74 2d  | ...(use-local-map.deadgrep-edit- | 
| ad60 |  6d 6f 64 65 2d 6d 61 70 29 0a 20 20 20 20 3b 3b    20 44 6f 6e 65 20 6d 61 6a 6f 72 20 6d 6f 64 65  | mode-map).....;;.Done.major.mode | 
| ad80 |  20 6d 61 6e 75 61 6c 20 69 6e 69 74 69 61 6c 69    73 65 20 28 63 6f 70 69 65 64 20 66 72 6f 6d 20  | .manual.initialise.(copied.from. | 
| ada0 |  60 64 65 66 69 6e 65 2d 64 65 72 69 76 65 64 2d    6d 6f 64 65 27 29 2e 0a 0a 20 20 20 20 3b 3b 20  | `define-derived-mode').......;;. | 
| adc0 |  41 6c 6c 6f 77 20 65 64 69 74 69 6e 67 2c 20 61    6e 64 20 70 72 6f 70 61 67 61 74 65 20 63 68 61  | Allow.editing,.and.propagate.cha | 
| ade0 |  6e 67 65 73 2e 0a 20 20 20 20 28 73 65 74 71 20    62 75 66 66 65 72 2d 72 65 61 64 2d 6f 6e 6c 79  | nges......(setq.buffer-read-only | 
| ae00 |  20 6e 69 6c 29 0a 20 20 20 20 28 61 64 64 2d 68    6f 6f 6b 20 27 61 66 74 65 72 2d 63 68 61 6e 67  | .nil).....(add-hook.'after-chang | 
| ae20 |  65 2d 66 75 6e 63 74 69 6f 6e 73 20 23 27 64 65    61 64 67 72 65 70 2d 2d 70 72 6f 70 61 67 61 74  | e-functions.#'deadgrep--propagat | 
| ae40 |  65 2d 63 68 61 6e 67 65 20 6e 69 6c 20 74 29 0a    0a 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 4e  | e-change.nil.t)......(message."N | 
| ae60 |  6f 77 20 65 64 69 74 69 6e 67 2c 20 75 73 65 20    60 4d 2d 78 20 64 65 61 64 67 72 65 70 2d 6d 6f  | ow.editing,.use.`M-x.deadgrep-mo | 
| ae80 |  64 65 27 20 77 68 65 6e 20 66 69 6e 69 73 68 65    64 22 29 29 0a 0a 20 20 28 72 75 6e 2d 6d 6f 64  | de'.when.finished"))....(run-mod | 
| aea0 |  65 2d 68 6f 6f 6b 73 20 27 64 65 61 64 67 72 65    70 2d 65 64 69 74 2d 6d 6f 64 65 2d 68 6f 6f 6b  | e-hooks.'deadgrep-edit-mode-hook | 
| aec0 |  29 29 0a 0a 28 64 65 66 75 6e 20 64 65 61 64 67    72 65 70 2d 2d 63 75 72 72 65 6e 74 2d 63 6f 6c  | ))..(defun.deadgrep--current-col | 
| aee0 |  75 6d 6e 20 28 29 0a 20 20 22 57 68 65 6e 20 70    6f 69 6e 74 20 69 73 20 6f 6e 20 61 20 72 65 73  | umn.()..."When.point.is.on.a.res | 
| af00 |  75 6c 74 20 69 6e 20 61 20 72 65 73 75 6c 74 73    20 62 75 66 66 65 72 2c 20 72 65 74 75 72 6e 20  | ult.in.a.results.buffer,.return. | 
| af20 |  74 68 65 20 63 6f 6c 75 6d 6e 20 6f 66 66 73 65    74 0a 6f 66 20 74 68 65 20 75 6e 64 65 72 6c 79  | the.column.offset.of.the.underly | 
| af40 |  69 6e 67 20 66 69 6c 65 2e 20 54 72 65 61 74 73    20 74 61 62 73 20 61 73 20 31 2e 0a 0a 66 6f 6f  | ing.file..Treats.tabs.as.1...foo | 
| af60 |  2e 65 6c 0a 31 32 33 20 68 7c 65 6c 6c 6f 20 77    6f 72 6c 64 0a 0a 49 6e 20 74 68 69 73 20 65 78  | .el.123.h|ello.world..In.this.ex | 
| af80 |  61 6d 70 6c 65 2c 20 74 68 65 20 63 6f 6c 75 6d    6e 20 69 73 20 31 2e 22 0a 20 20 28 6c 65 74 2a  | ample,.the.column.is.1."...(let* | 
| afa0 |  20 28 28 6c 69 6e 65 2d 73 74 61 72 74 20 28 6c    69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70 6f  | .((line-start.(line-beginning-po | 
| afc0 |  73 69 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20    20 20 28 6c 69 6e 65 2d 6e 75 6d 62 65 72 0a 20  | sition))..........(line-number.. | 
| afe0 |  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 6c 69 6e 65  | .........(get-text-property.line | 
| b000 |  2d 73 74 61 72 74 20 27 64 65 61 64 67 72 65 70    2d 6c 69 6e 65 2d 6e 75 6d 62 65 72 29 29 0a 20  | -start.'deadgrep-line-number)).. | 
| b020 |  20 20 20 20 20 20 20 20 28 6c 69 6e 65 2d 6e 75    6d 62 65 72 2d 77 69 64 74 68 0a 20 20 20 20 20  | ........(line-number-width...... | 
| b040 |  20 20 20 20 20 28 6d 61 78 20 64 65 61 64 67 72    65 70 2d 2d 70 6f 73 69 74 69 6f 6e 2d 63 6f 6c  | .....(max.deadgrep--position-col | 
| b060 |  75 6d 6e 2d 77 69 64 74 68 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6c 65 6e 67 74 68  | umn-width................(length | 
| b080 |  20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69    6e 67 20 6c 69 6e 65 2d 6e 75 6d 62 65 72 29 29  | .(number-to-string.line-number)) | 
| b0a0 |  29 29 0a 20 20 20 20 20 20 20 20 20 28 63 68 61    72 2d 63 6f 75 6e 74 20 30 29 29 0a 20 20 20 20  | ))..........(char-count.0))..... | 
| b0c0 |  28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a    20 20 20 20 20 20 28 77 68 69 6c 65 20 28 6e 6f  | (save-excursion.......(while.(no | 
| b0e0 |  74 20 28 65 71 75 61 6c 20 28 70 6f 69 6e 74 29    20 6c 69 6e 65 2d 73 74 61 72 74 29 29 0a 20 20  | t.(equal.(point).line-start))... | 
| b100 |  20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66 20 63    68 61 72 2d 63 6f 75 6e 74 29 0a 20 20 20 20 20  | ......(cl-incf.char-count)...... | 
| b120 |  20 20 20 28 62 61 63 6b 77 61 72 64 2d 63 68 61    72 20 31 29 29 29 0a 20 20 20 20 28 69 66 20 28  | ...(backward-char.1))).....(if.( | 
| b140 |  3c 20 63 68 61 72 2d 63 6f 75 6e 74 20 6c 69 6e    65 2d 6e 75 6d 62 65 72 2d 77 69 64 74 68 29 0a  | <.char-count.line-number-width). | 
| b160 |  20 20 20 20 20 20 20 20 6e 69 6c 0a 20 20 20 20    20 20 28 2d 20 63 68 61 72 2d 63 6f 75 6e 74 20  | ........nil.......(-.char-count. | 
| b180 |  6c 69 6e 65 2d 6e 75 6d 62 65 72 2d 77 69 64 74    68 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65  | line-number-width))))..(defun.de | 
| b1a0 |  61 64 67 72 65 70 2d 2d 66 6c 61 73 68 2d 63 6f    6c 75 6d 6e 2d 6f 66 66 73 65 74 73 20 28 73 74  | adgrep--flash-column-offsets.(st | 
| b1c0 |  61 72 74 20 65 6e 64 29 0a 20 20 22 54 65 6d 70    6f 72 61 72 69 6c 79 20 68 69 67 68 6c 69 67 68  | art.end)..."Temporarily.highligh | 
| b1e0 |  74 20 63 6f 6c 75 6d 6e 20 6f 66 66 73 65 74 20    66 72 6f 6d 20 53 54 41 52 54 20 74 6f 20 45 4e  | t.column.offset.from.START.to.EN | 
| b200 |  44 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 6c 69    6e 65 2d 73 74 61 72 74 20 28 6c 69 6e 65 2d 62  | D."...(let*.((line-start.(line-b | 
| b220 |  65 67 69 6e 6e 69 6e 67 2d 70 6f 73 69 74 69 6f    6e 29 29 0a 20 20 20 20 20 20 20 20 20 28 6f 76  | eginning-position))..........(ov | 
| b240 |  65 72 6c 61 79 20 28 6d 61 6b 65 2d 6f 76 65 72    6c 61 79 0a 20 20 20 20 20 20 20 20 20 20 20 20  | erlay.(make-overlay............. | 
| b260 |  20 20 20 20 20 20 20 28 2b 20 6c 69 6e 65 2d 73    74 61 72 74 20 73 74 61 72 74 29 0a 20 20 20 20  | .......(+.line-start.start)..... | 
| b280 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    2b 20 6c 69 6e 65 2d 73 74 61 72 74 20 65 6e 64  | ...............(+.line-start.end | 
| b2a0 |  29 29 29 29 0a 20 20 20 20 28 6f 76 65 72 6c 61    79 2d 70 75 74 20 6f 76 65 72 6c 61 79 20 27 66  | )))).....(overlay-put.overlay.'f | 
| b2c0 |  61 63 65 20 27 68 69 67 68 6c 69 67 68 74 29 0a    20 20 20 20 28 72 75 6e 2d 77 69 74 68 2d 74 69  | ace.'highlight).....(run-with-ti | 
| b2e0 |  6d 65 72 20 31 2e 35 20 6e 69 6c 20 27 64 65 6c    65 74 65 2d 6f 76 65 72 6c 61 79 20 6f 76 65 72  | mer.1.5.nil.'delete-overlay.over | 
| b300 |  6c 61 79 29 29 29 0a 0a 28 64 65 66 75 6e 20 64    65 61 64 67 72 65 70 2d 2d 6d 61 74 63 68 2d 66  | lay)))..(defun.deadgrep--match-f | 
| b320 |  61 63 65 2d 70 20 28 70 6f 73 29 0a 20 20 22 49    73 20 74 68 65 72 65 20 61 20 6d 61 74 63 68 20  | ace-p.(pos)..."Is.there.a.match. | 
| b340 |  66 61 63 65 20 61 74 20 50 4f 53 3f 22 0a 20 20    28 65 71 20 28 67 65 74 2d 74 65 78 74 2d 70 72  | face.at.POS?"...(eq.(get-text-pr | 
| b360 |  6f 70 65 72 74 79 20 70 6f 73 20 27 66 61 63 65    29 20 27 64 65 61 64 67 72 65 70 2d 6d 61 74 63  | operty.pos.'face).'deadgrep-matc | 
| b380 |  68 2d 66 61 63 65 29 29 0a 0a 28 64 65 66 75 6e    20 64 65 61 64 67 72 65 70 2d 2d 6d 61 74 63 68  | h-face))..(defun.deadgrep--match | 
| b3a0 |  2d 70 6f 73 69 74 69 6f 6e 73 20 28 29 0a 20 20    22 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f  | -positions.()..."Return.a.list.o | 
| b3c0 |  66 20 63 6f 6c 75 6d 6e 20 6f 66 66 73 65 74 73    20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20  | f.column.offsets.of.the.current. | 
| b3e0 |  6c 69 6e 65 27 73 20 6d 61 74 63 68 65 73 2e 0a    45 61 63 68 20 69 74 65 6d 20 69 6e 20 74 68 65  | line's.matches..Each.item.in.the | 
| b400 |  20 6c 69 73 74 20 68 61 73 20 74 68 65 20 66 6f    72 6d 20 28 53 54 41 52 54 2d 4f 46 46 53 45 54  | .list.has.the.form.(START-OFFSET | 
| b420 |  20 45 4e 44 2d 4f 46 46 53 45 54 29 2e 22 0a 20    20 28 6c 65 74 20 28 70 6f 73 69 74 69 6f 6e 73  | .END-OFFSET)."...(let.(positions | 
| b440 |  29 0a 20 20 20 20 28 73 61 76 65 2d 65 78 63 75    72 73 69 6f 6e 0a 20 20 20 20 20 20 28 62 65 67  | ).....(save-excursion.......(beg | 
| b460 |  69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a    0a 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 6c  | inning-of-line)........(let*.((l | 
| b480 |  69 6e 65 2d 6e 75 6d 62 65 72 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 67 65 74 2d 74 65  | ine-number...............(get-te | 
| b4a0 |  78 74 2d 70 72 6f 70 65 72 74 79 20 28 70 6f 69    6e 74 29 20 27 64 65 61 64 67 72 65 70 2d 6c 69  | xt-property.(point).'deadgrep-li | 
| b4c0 |  6e 65 2d 6e 75 6d 62 65 72 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 2d 6e  | ne-number))..............(line-n | 
| b4e0 |  75 6d 62 65 72 2d 77 69 64 74 68 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6d 61 78 20 64  | umber-width...............(max.d | 
| b500 |  65 61 64 67 72 65 70 2d 2d 70 6f 73 69 74 69 6f    6e 2d 63 6f 6c 75 6d 6e 2d 77 69 64 74 68 0a 20  | eadgrep--position-column-width.. | 
| b520 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6c 65 6e 67 74 68 20 28 6e 75 6d 62 65  | ..................(length.(numbe | 
| b540 |  72 2d 74 6f 2d 73 74 72 69 6e 67 20 6c 69 6e 65    2d 6e 75 6d 62 65 72 29 29 29 29 0a 20 20 20 20  | r-to-string.line-number))))..... | 
| b560 |  20 20 20 20 20 20 20 20 20 28 69 20 30 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 61  | .........(i.0)..............(sta | 
| b580 |  72 74 2d 70 6f 73 20 30 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6c 69 6e 65 2d 65 6e 64  | rt-pos.0)..............(line-end | 
| b5a0 |  2d 70 6f 73 20 28 6c 69 6e 65 2d 65 6e 64 2d 70    6f 73 69 74 69 6f 6e 29 29 29 0a 0a 20 20 20 20  | -pos.(line-end-position)))...... | 
| b5c0 |  20 20 20 20 28 66 6f 72 77 61 72 64 2d 63 68 61    72 20 6c 69 6e 65 2d 6e 75 6d 62 65 72 2d 77 69  | ....(forward-char.line-number-wi | 
| b5e0 |  64 74 68 29 0a 0a 20 20 20 20 20 20 20 20 28 77    68 69 6c 65 20 28 3c 3d 20 28 70 6f 69 6e 74 29  | dth)..........(while.(<=.(point) | 
| b600 |  20 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 29 0a 20    20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 77  | .line-end-pos)...........;;.If.w | 
| b620 |  65 27 76 65 20 6a 75 73 74 20 65 6e 74 65 72 65    64 20 61 20 6d 61 74 63 68 2c 20 72 65 63 6f 72  | e've.just.entered.a.match,.recor | 
| b640 |  64 20 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  | d.the.start.position............ | 
| b660 |  28 77 68 65 6e 20 28 61 6e 64 20 28 64 65 61 64    67 72 65 70 2d 2d 6d 61 74 63 68 2d 66 61 63 65  | (when.(and.(deadgrep--match-face | 
| b680 |  2d 70 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -p.(point))..................... | 
| b6a0 |  20 28 6e 6f 74 20 28 64 65 61 64 67 72 65 70 2d    2d 6d 61 74 63 68 2d 66 61 63 65 2d 70 20 28 31  | .(not.(deadgrep--match-face-p.(1 | 
| b6c0 |  2d 20 28 70 6f 69 6e 74 29 29 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20  | -.(point))))).............(setq. | 
| b6e0 |  73 74 61 72 74 2d 70 6f 73 20 69 29 29 0a 20 20    20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 77 65  | start-pos.i))...........;;.If.we | 
| b700 |  27 76 65 20 6a 75 73 74 20 6c 65 66 74 20 61 20    6d 61 74 63 68 2c 20 72 65 63 6f 72 64 20 74 68  | 've.just.left.a.match,.record.th | 
| b720 |  65 20 6d 61 74 63 68 20 72 61 6e 67 65 2e 0a 20    20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28  | e.match.range............(when.( | 
| b740 |  61 6e 64 20 28 6e 6f 74 20 28 64 65 61 64 67 72    65 70 2d 2d 6d 61 74 63 68 2d 66 61 63 65 2d 70  | and.(not.(deadgrep--match-face-p | 
| b760 |  20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(point)))...................... | 
| b780 |  28 64 65 61 64 67 72 65 70 2d 2d 6d 61 74 63 68    2d 66 61 63 65 2d 70 20 28 31 2d 20 28 70 6f 69  | (deadgrep--match-face-p.(1-.(poi | 
| b7a0 |  6e 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 70 75 73 68 20 28 6c 69 73 74 20 73  | nt)))).............(push.(list.s | 
| b7c0 |  74 61 72 74 2d 70 6f 73 20 69 29 20 70 6f 73 69    74 69 6f 6e 73 29 29 0a 0a 20 20 20 20 20 20 20  | tart-pos.i).positions))......... | 
| b7e0 |  20 20 20 28 73 65 74 71 20 69 20 28 31 2b 20 69    29 29 0a 20 20 20 20 20 20 20 20 20 20 28 66 6f  | ...(setq.i.(1+.i))...........(fo | 
| b800 |  72 77 61 72 64 2d 63 68 61 72 20 31 29 29 29 29    0a 0a 20 20 20 20 28 6e 72 65 76 65 72 73 65 20  | rward-char.1))))......(nreverse. | 
| b820 |  70 6f 73 69 74 69 6f 6e 73 29 29 29 0a 0a 28 64    65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 2d 62  | positions)))..(defun.deadgrep--b | 
| b840 |  75 66 66 65 72 2d 70 6f 73 69 74 69 6f 6e 20 28    6c 69 6e 65 2d 6e 75 6d 62 65 72 20 63 6f 6c 75  | uffer-position.(line-number.colu | 
| b860 |  6d 6e 2d 6f 66 66 73 65 74 29 0a 20 20 22 43 61    6c 63 75 6c 61 74 65 20 74 68 65 20 62 75 66 66  | mn-offset)..."Calculate.the.buff | 
| b880 |  65 72 20 70 6f 73 69 74 69 6f 6e 20 74 68 61 74    20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20  | er.position.that.corresponds.to. | 
| b8a0 |  4c 49 4e 45 2d 4e 55 4d 42 45 52 20 61 74 20 43    4f 4c 55 4d 4e 2d 4f 46 46 53 45 54 0a 69 6e 20  | LINE-NUMBER.at.COLUMN-OFFSET.in. | 
| b8c0 |  74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66    65 72 2e 22 0a 20 20 28 73 61 76 65 2d 65 78 63  | the.current.buffer."...(save-exc | 
| b8e0 |  75 72 73 69 6f 6e 0a 20 20 20 20 28 73 61 76 65    2d 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20  | ursion.....(save-restriction.... | 
| b900 |  20 20 20 28 77 69 64 65 6e 29 0a 20 20 20 20 20    20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69  | ...(widen).......(goto-char.(poi | 
| b920 |  6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 28    66 6f 72 77 61 72 64 2d 6c 69 6e 65 20 28 31 2d  | nt-min)).......(forward-line.(1- | 
| b940 |  20 6c 69 6e 65 2d 6e 75 6d 62 65 72 29 29 0a 20    20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 63 68  | .line-number)).......(forward-ch | 
| b960 |  61 72 20 63 6f 6c 75 6d 6e 2d 6f 66 66 73 65 74    29 0a 0a 20 20 20 20 20 20 28 70 6f 69 6e 74 29  | ar.column-offset)........(point) | 
| b980 |  29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 61 64    67 72 65 70 2d 2d 66 69 6c 65 6e 61 6d 65 20 28  | )))..(defun.deadgrep--filename.( | 
| b9a0 |  26 6f 70 74 69 6f 6e 61 6c 20 70 6f 73 29 0a 20    20 22 47 65 74 20 74 68 65 20 66 69 6c 65 6e 61  | &optional.pos)..."Get.the.filena | 
| b9c0 |  6d 65 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74    20 61 74 20 70 6f 69 6e 74 20 50 4f 53 2e 0a 49  | me.of.the.result.at.point.POS..I | 
| b9e0 |  66 20 50 4f 53 20 69 73 20 6e 69 6c 2c 20 75 73    65 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20  | f.POS.is.nil,.use.the.beginning. | 
| ba00 |  70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20    63 75 72 72 65 6e 74 20 6c 69 6e 65 2e 22 0a 20  | position.of.the.current.line.".. | 
| ba20 |  20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65    72 74 79 20 28 6f 72 20 70 6f 73 20 28 6c 69 6e  | .(get-text-property.(or.pos.(lin | 
| ba40 |  65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70 6f 73 69    74 69 6f 6e 29 29 20 27 64 65 61 64 67 72 65 70  | e-beginning-position)).'deadgrep | 
| ba60 |  2d 66 69 6c 65 6e 61 6d 65 29 29 0a 0a 28 64 65    66 75 6e 20 64 65 61 64 67 72 65 70 2d 2d 6c 69  | -filename))..(defun.deadgrep--li | 
| ba80 |  6e 65 2d 6e 75 6d 62 65 72 20 28 29 0a 20 20 22    47 65 74 20 74 68 65 20 66 69 6c 65 6e 61 6d 65  | ne-number.()..."Get.the.filename | 
| baa0 |  20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 20 61    74 20 70 6f 69 6e 74 2e 22 0a 20 20 28 67 65 74  | .of.the.result.at.point."...(get | 
| bac0 |  2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28    6c 69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70  | -text-property.(line-beginning-p | 
| bae0 |  6f 73 69 74 69 6f 6e 29 20 27 64 65 61 64 67 72    65 70 2d 6c 69 6e 65 2d 6e 75 6d 62 65 72 29 29  | osition).'deadgrep-line-number)) | 
| bb00 |  0a 0a 28 64 65 66 75 6e 20 64 65 61 64 67 72 65    70 2d 2d 76 69 73 69 74 2d 72 65 73 75 6c 74 20  | ..(defun.deadgrep--visit-result. | 
| bb20 |  28 6f 70 65 6e 2d 66 6e 29 0a 20 20 22 47 6f 74    6f 20 74 68 65 20 73 65 61 72 63 68 20 72 65 73  | (open-fn)..."Goto.the.search.res | 
| bb40 |  75 6c 74 20 61 74 20 70 6f 69 6e 74 2e 22 0a 20    20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20  | ult.at.point."...(interactive).. | 
| bb60 |  20 28 6c 65 74 2a 20 28 28 70 6f 73 20 28 6c 69    6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70 6f 73  | .(let*.((pos.(line-beginning-pos | 
| bb80 |  69 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20    20 28 66 69 6c 65 2d 6e 61 6d 65 20 28 64 65 61  | ition))..........(file-name.(dea | 
| bba0 |  64 67 72 65 70 2d 2d 66 69 6c 65 6e 61 6d 65 29    29 0a 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65  | dgrep--filename))..........(line | 
| bbc0 |  2d 6e 75 6d 62 65 72 20 28 64 65 61 64 67 72 65    70 2d 2d 6c 69 6e 65 2d 6e 75 6d 62 65 72 29 29  | -number.(deadgrep--line-number)) | 
| bbe0 |  0a 20 20 20 20 20 20 20 20 20 28 63 6f 6c 75 6d    6e 2d 6f 66 66 73 65 74 20 28 77 68 65 6e 20 6c  | ..........(column-offset.(when.l | 
| bc00 |  69 6e 65 2d 6e 75 6d 62 65 72 20 28 64 65 61 64    67 72 65 70 2d 2d 63 75 72 72 65 6e 74 2d 63 6f  | ine-number.(deadgrep--current-co | 
| bc20 |  6c 75 6d 6e 29 29 29 0a 20 20 20 20 20 20 20 20    20 28 6d 61 74 63 68 2d 70 6f 73 69 74 69 6f 6e  | lumn)))..........(match-position | 
| bc40 |  73 20 28 77 68 65 6e 20 6c 69 6e 65 2d 6e 75 6d    62 65 72 20 28 64 65 61 64 67 72 65 70 2d 2d 6d  | s.(when.line-number.(deadgrep--m | 
| bc60 |  61 74 63 68 2d 70 6f 73 69 74 69 6f 6e 73 29 29    29 29 0a 20 20 20 20 28 77 68 65 6e 20 66 69 6c  | atch-positions)))).....(when.fil | 
| bc80 |  65 2d 6e 61 6d 65 0a 20 20 20 20 20 20 28 77 68    65 6e 20 6f 76 65 72 6c 61 79 2d 61 72 72 6f 77  | e-name.......(when.overlay-arrow | 
| bca0 |  2d 70 6f 73 69 74 69 6f 6e 0a 20 20 20 20 20 20    20 20 28 73 65 74 2d 6d 61 72 6b 65 72 20 6f 76  | -position.........(set-marker.ov | 
| bcc0 |  65 72 6c 61 79 2d 61 72 72 6f 77 2d 70 6f 73 69    74 69 6f 6e 20 6e 69 6c 29 29 0a 20 20 20 20 20  | erlay-arrow-position.nil))...... | 
| bce0 |  20 3b 3b 20 53 68 6f 77 20 61 6e 20 61 72 72 6f    77 20 6e 65 78 74 20 74 6f 20 74 68 65 20 6c 61  | .;;.Show.an.arrow.next.to.the.la | 
| bd00 |  73 74 20 72 65 73 75 6c 74 20 76 69 65 77 65 64    2e 20 54 68 69 73 20 69 73 0a 20 20 20 20 20 20  | st.result.viewed..This.is....... | 
| bd20 |  3b 3b 20 63 6f 6e 73 69 73 74 65 6e 74 20 77 69    74 68 20 60 63 6f 6d 70 69 6c 61 74 69 6f 6e 2d  | ;;.consistent.with.`compilation- | 
| bd40 |  6e 65 78 74 2d 65 72 72 6f 72 2d 66 75 6e 63 74    69 6f 6e 27 20 61 6e 64 20 61 6c 73 6f 0a 20 20  | next-error-function'.and.also... | 
| bd60 |  20 20 20 20 3b 3b 20 75 73 65 66 75 6c 20 77 69    74 68 20 60 64 65 61 64 67 72 65 70 2d 76 69 73  | ....;;.useful.with.`deadgrep-vis | 
| bd80 |  69 74 2d 72 65 73 75 6c 74 2d 6f 74 68 65 72 2d    77 69 6e 64 6f 77 27 2e 0a 20 20 20 20 20 20 28  | it-result-other-window'........( | 
| bda0 |  73 65 74 71 20 6f 76 65 72 6c 61 79 2d 61 72 72    6f 77 2d 70 6f 73 69 74 69 6f 6e 20 28 63 6f 70  | setq.overlay-arrow-position.(cop | 
| bdc0 |  79 2d 6d 61 72 6b 65 72 20 70 6f 73 29 29 0a 0a    20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 6f  | y-marker.pos))........(funcall.o | 
| bde0 |  70 65 6e 2d 66 6e 20 66 69 6c 65 2d 6e 61 6d 65    29 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68  | pen-fn.file-name).......(goto-ch | 
| be00 |  61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a    0a 20 20 20 20 20 20 28 77 68 65 6e 20 6c 69 6e  | ar.(point-min))........(when.lin | 
| be20 |  65 2d 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 20    20 3b 3b 20 49 66 20 70 6f 69 6e 74 20 77 61 73  | e-number.........;;.If.point.was | 
| be40 |  20 6f 6e 20 74 68 65 20 6c 69 6e 65 20 6e 75 6d    62 65 72 20 72 61 74 68 65 72 20 74 68 61 6e 20  | .on.the.line.number.rather.than. | 
| be60 |  61 20 73 70 65 63 69 66 69 63 0a 20 20 20 20 20    20 20 20 3b 3b 20 70 6f 73 69 74 69 6f 6e 20 6f  | a.specific.........;;.position.o | 
| be80 |  6e 20 74 68 65 20 6c 69 6e 65 2c 20 67 6f 20 74    68 65 20 66 69 72 73 74 20 6d 61 74 63 68 2e 20  | n.the.line,.go.the.first.match.. | 
| bea0 |  54 68 69 73 20 69 73 20 67 65 6e 65 72 61 6c 6c    79 0a 20 20 20 20 20 20 20 20 3b 3b 20 77 68 61  | This.is.generally.........;;.wha | 
| bec0 |  74 20 75 73 65 72 73 20 77 61 6e 74 2c 20 65 73    70 65 63 69 61 6c 6c 79 20 77 68 65 6e 20 74 68  | t.users.want,.especially.when.th | 
| bee0 |  65 72 65 20 61 72 65 20 6c 6f 6e 67 20 6c 69 6e    65 73 2e 0a 20 20 20 20 20 20 20 20 28 75 6e 6c  | ere.are.long.lines..........(unl | 
| bf00 |  65 73 73 20 63 6f 6c 75 6d 6e 2d 6f 66 66 73 65    74 0a 20 20 20 20 20 20 20 20 20 20 28 69 66 2d  | ess.column-offset...........(if- | 
| bf20 |  6c 65 74 20 28 66 69 72 73 74 2d 6d 61 74 63 68    2d 70 6f 73 20 28 63 61 72 20 6d 61 74 63 68 2d  | let.(first-match-pos.(car.match- | 
| bf40 |  70 6f 73 69 74 69 6f 6e 73 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20  | positions))...............(setq. | 
| bf60 |  63 6f 6c 75 6d 6e 2d 6f 66 66 73 65 74 20 28 63    61 72 20 66 69 72 73 74 2d 6d 61 74 63 68 2d 70  | column-offset.(car.first-match-p | 
| bf80 |  6f 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 73 65 74 71 20 63 6f 6c 75 6d 6e 2d 6f 66  | os)).............(setq.column-of | 
| bfa0 |  66 73 65 74 20 30 29 29 29 0a 0a 20 20 20 20 20    20 20 20 28 2d 6c 65 74 20 5b 64 65 73 74 69 6e  | fset.0)))..........(-let.[destin | 
| bfc0 |  61 74 69 6f 6e 2d 70 6f 73 20 28 64 65 61 64 67    72 65 70 2d 2d 62 75 66 66 65 72 2d 70 6f 73 69  | ation-pos.(deadgrep--buffer-posi | 
| bfe0 |  74 69 6f 6e 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  | tion............................ | 
| c000 |  20 20 20 20 20 6c 69 6e 65 2d 6e 75 6d 62 65 72    20 63 6f 6c 75 6d 6e 2d 6f 66 66 73 65 74 29 5d  | .....line-number.column-offset)] | 
| c020 |  0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 50 75    74 20 70 6f 69 6e 74 20 6f 6e 20 74 68 65 20 70  | ...........;;.Put.point.on.the.p | 
| c040 |  6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 6d    61 74 63 68 2c 20 77 69 64 65 6e 69 6e 67 20 74  | osition.of.the.match,.widening.t | 
| c060 |  68 65 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20    62 75 66 66 65 72 20 69 66 20 6e 65 63 65 73 73  | he...........;;.buffer.if.necess | 
| c080 |  61 72 79 2e 0a 20 20 20 20 20 20 20 20 20 20 28    77 68 65 6e 20 28 6f 72 20 28 3c 20 64 65 73 74  | ary............(when.(or.(<.dest | 
| c0a0 |  69 6e 61 74 69 6f 6e 2d 70 6f 73 20 28 70 6f 69    6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 20  | ination-pos.(point-min))........ | 
| c0c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 3e 20    64 65 73 74 69 6e 61 74 69 6f 6e 2d 70 6f 73 20  | .............(>.destination-pos. | 
| c0e0 |  28 70 6f 69 6e 74 2d 6d 61 78 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 28 77 69 64 65 6e  | (point-max))).............(widen | 
| c100 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 28 67 6f    74 6f 2d 63 68 61 72 20 64 65 73 74 69 6e 61 74  | ))...........(goto-char.destinat | 
| c120 |  69 6f 6e 2d 70 6f 73 29 0a 0a 20 20 20 20 20 20    20 20 20 20 3b 3b 20 54 65 6d 70 6f 72 61 72 69  | ion-pos)............;;.Temporari | 
| c140 |  6c 79 20 68 69 67 68 6c 69 67 68 74 20 74 68 65    20 70 61 72 74 73 20 6f 66 20 74 68 65 20 6c 69  | ly.highlight.the.parts.of.the.li | 
| c160 |  6e 65 20 74 68 61 74 20 6d 61 74 63 68 65 64 0a    20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65  | ne.that.matched...........;;.the | 
| c180 |  20 73 65 61 72 63 68 20 74 65 72 6d 2e 0a 20 20    20 20 20 20 20 20 20 20 28 2d 65 61 63 68 20 6d  | .search.term............(-each.m | 
| c1a0 |  61 74 63 68 2d 70 6f 73 69 74 69 6f 6e 73 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 2d 6c 61 6d  | atch-positions.............(-lam | 
| c1c0 |  62 64 61 20 28 28 73 74 61 72 74 20 65 6e 64 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | bda.((start.end))............... | 
| c1e0 |  28 64 65 61 64 67 72 65 70 2d 2d 66 6c 61 73 68    2d 63 6f 6c 75 6d 6e 2d 6f 66 66 73 65 74 73 20  | (deadgrep--flash-column-offsets. | 
| c200 |  73 74 61 72 74 20 65 6e 64 29 29 29 29 29 29 29    29 0a 0a 28 64 65 66 75 6e 20 64 65 61 64 67 72  | start.end))))))))..(defun.deadgr | 
| c220 |  65 70 2d 76 69 73 69 74 2d 72 65 73 75 6c 74 2d    6f 74 68 65 72 2d 77 69 6e 64 6f 77 20 28 29 0a  | ep-visit-result-other-window.(). | 
| c240 |  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 61 74 20 70 6f 69  | .."Goto.the.search.result.at.poi | 
| c260 |  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 64 6f 77 2e 22 0a  | nt,.opening.in.another.window.". | 
| c280 |  20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a    20 20 28 64 65 61 64 67 72 65 70 2d 2d 76 69 73  | ..(interactive)...(deadgrep--vis | 
| c2a0 |  69 74 2d 72 65 73 75 6c 74 20 23 27 66 69 6e 64    2d 66 69 6c 65 2d 6f 74 68 65 72 2d 77 69 6e 64  | it-result.#'find-file-other-wind | 
| c2c0 |  6f 77 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 61    64 67 72 65 70 2d 76 69 73 69 74 2d 72 65 73 75  | ow))..(defun.deadgrep-visit-resu | 
| c2e0 |  6c 74 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  | lt.()..."Goto.the.search.result. | 
| c300 |  61 74 20 70 6f 69 6e 74 2e 22 0a 20 20 28 69 6e    74 65 72 61 63 74 69 76 65 29 0a 20 20 28 64 65  | at.point."...(interactive)...(de | 
| c320 |  61 64 67 72 65 70 2d 2d 76 69 73 69 74 2d 72 65    73 75 6c 74 20 23 27 66 69 6e 64 2d 66 69 6c 65  | adgrep--visit-result.#'find-file | 
| c340 |  29 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61    6c 20 64 65 61 64 67 72 65 70 2d 2d 68 69 64 64  | ))..(defvar-local.deadgrep--hidd | 
| c360 |  65 6e 2d 66 69 6c 65 73 20 6e 69 6c 0a 20 20 22    41 6e 20 61 6c 69 73 74 20 72 65 63 6f 72 64 69  | en-files.nil..."An.alist.recordi | 
| c380 |  6e 67 20 77 68 69 63 68 20 66 69 6c 65 73 20 63    75 72 72 65 6e 74 6c 79 20 68 61 76 65 20 74 68  | ng.which.files.currently.have.th | 
| c3a0 |  65 69 72 20 6c 69 6e 65 73 0a 68 69 64 64 65 6e    20 69 6e 20 74 68 69 73 20 64 65 61 64 67 72 65  | eir.lines.hidden.in.this.deadgre | 
| c3c0 |  70 20 72 65 73 75 6c 74 73 20 62 75 66 66 65 72    2e 0a 0a 4b 65 79 73 20 61 72 65 20 69 6e 74 65  | p.results.buffer...Keys.are.inte | 
| c3e0 |  72 6e 65 64 20 66 69 6c 65 6e 61 6d 65 73 2c 20    73 6f 20 74 68 65 79 20 63 6f 6d 70 61 72 65 20  | rned.filenames,.so.they.compare. | 
| c400 |  77 69 74 68 20 60 65 71 27 2e 22 29 0a 0a 28 64    65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 74 6f  | with.`eq'.")..(defun.deadgrep-to | 
| c420 |  67 67 6c 65 2d 66 69 6c 65 2d 72 65 73 75 6c 74    73 20 28 29 0a 20 20 22 53 68 6f 77 2f 68 69 64  | ggle-file-results.()..."Show/hid | 
| c440 |  65 20 74 68 65 20 72 65 73 75 6c 74 73 20 6f 66    20 74 68 65 20 66 69 6c 65 20 61 74 20 70 6f 69  | e.the.results.of.the.file.at.poi | 
| c460 |  6e 74 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74    69 76 65 29 0a 20 20 28 6c 65 74 2a 20 28 28 66  | nt."...(interactive)...(let*.((f | 
| c480 |  69 6c 65 2d 6e 61 6d 65 20 28 64 65 61 64 67 72    65 70 2d 2d 66 69 6c 65 6e 61 6d 65 29 29 0a 20  | ile-name.(deadgrep--filename)).. | 
| c4a0 |  20 20 20 20 20 20 20 20 28 6c 69 6e 65 2d 6e 75    6d 62 65 72 20 28 64 65 61 64 67 72 65 70 2d 2d  | ........(line-number.(deadgrep-- | 
| c4c0 |  6c 69 6e 65 2d 6e 75 6d 62 65 72 29 29 29 0a 20    20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 66 69  | line-number))).....(when.(and.fi | 
| c4e0 |  6c 65 2d 6e 61 6d 65 20 28 6e 6f 74 20 6c 69 6e    65 2d 6e 75 6d 62 65 72 29 29 0a 20 20 20 20 20  | le-name.(not.line-number))...... | 
| c500 |  20 3b 3b 20 57 65 27 72 65 20 6f 6e 20 61 20 66    69 6c 65 20 68 65 61 64 69 6e 67 2e 0a 20 20 20  | .;;.We're.on.a.file.heading..... | 
| c520 |  20 20 20 28 69 66 20 28 61 6c 69 73 74 2d 67 65    74 20 28 69 6e 74 65 72 6e 20 66 69 6c 65 2d 6e  | ...(if.(alist-get.(intern.file-n | 
| c540 |  61 6d 65 29 20 64 65 61 64 67 72 65 70 2d 2d 68    69 64 64 65 6e 2d 66 69 6c 65 73 29 0a 20 20 20  | ame).deadgrep--hidden-files).... | 
| c560 |  20 20 20 20 20 20 20 28 64 65 61 64 67 72 65 70    2d 2d 73 68 6f 77 29 0a 20 20 20 20 20 20 20 20  | .......(deadgrep--show)......... | 
| c580 |  28 64 65 61 64 67 72 65 70 2d 2d 68 69 64 65 29    29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 61  | (deadgrep--hide)))))..(defun.dea | 
| c5a0 |  64 67 72 65 70 2d 74 6f 67 67 6c 65 2d 61 6c 6c    2d 66 69 6c 65 2d 72 65 73 75 6c 74 73 20 28 29  | dgrep-toggle-all-file-results.() | 
| c5c0 |  0a 20 20 22 53 68 6f 77 2f 68 69 64 65 20 74 68    65 20 72 65 73 75 6c 74 73 20 6f 66 20 61 6c 6c  | ..."Show/hide.the.results.of.all | 
| c5e0 |  20 66 69 6c 65 73 2e 22 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 29 0a 20 20 28 6c 65 74 20  | .files."...(interactive)...(let. | 
| c600 |  28 28 73 68 6f 75 6c 64 2d 73 68 6f 77 20 28 63    6c 2d 73 6f 6d 65 20 23 27 63 64 72 20 64 65 61  | ((should-show.(cl-some.#'cdr.dea | 
| c620 |  64 67 72 65 70 2d 2d 68 69 64 64 65 6e 2d 66 69    6c 65 73 29 29 0a 20 20 20 20 20 20 20 20 28 73  | dgrep--hidden-files)).........(s | 
| c640 |  65 65 6e 2d 66 69 6c 65 73 20 6e 69 6c 29 29 0a    20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73  | een-files.nil)).....(save-excurs | 
| c660 |  69 6f 6e 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d    63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29  | ion.......(goto-char.(point-min) | 
| c680 |  29 0a 20 20 20 20 20 20 28 77 68 69 6c 65 20 28    6e 6f 74 20 28 65 71 20 28 70 6f 69 6e 74 29 20  | ).......(while.(not.(eq.(point). | 
| c6a0 |  28 70 6f 69 6e 74 2d 6d 61 78 29 29 29 0a 20 20    20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72  | (point-max))).........(goto-char | 
| c6c0 |  20 28 6f 72 20 28 6e 65 78 74 2d 73 69 6e 67 6c    65 2d 70 72 6f 70 65 72 74 79 2d 63 68 61 6e 67  | .(or.(next-single-property-chang | 
| c6e0 |  65 20 28 70 6f 69 6e 74 29 20 27 64 65 61 64 67    72 65 70 2d 66 69 6c 65 6e 61 6d 65 29 0a 20 20  | e.(point).'deadgrep-filename)... | 
| c700 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 70 6f 69 6e 74 2d 6d 61 78 29  | .....................(point-max) | 
| c720 |  29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e    20 28 61 6e 64 20 28 64 65 61 64 67 72 65 70 2d  | )).........(when.(and.(deadgrep- | 
| c740 |  2d 66 69 6c 65 6e 61 6d 65 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e  | -filename)....................(n | 
| c760 |  6f 74 20 28 6d 65 6d 62 65 72 20 28 64 65 61 64    67 72 65 70 2d 2d 66 69 6c 65 6e 61 6d 65 29 20  | ot.(member.(deadgrep--filename). | 
| c780 |  73 65 65 6e 2d 66 69 6c 65 73 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 64  | seen-files)))...........(push.(d | 
| c7a0 |  65 61 64 67 72 65 70 2d 2d 66 69 6c 65 6e 61 6d    65 29 20 73 65 65 6e 2d 66 69 6c 65 73 29 0a 20  | eadgrep--filename).seen-files).. | 
| c7c0 |  20 20 20 20 20 20 20 20 20 28 69 66 20 73 68 6f    75 6c 64 2d 73 68 6f 77 0a 20 20 20 20 20 20 20  | .........(if.should-show........ | 
| c7e0 |  20 20 20 20 20 20 20 28 64 65 61 64 67 72 65 70    2d 2d 73 68 6f 77 29 0a 20 20 20 20 20 20 20 20  | .......(deadgrep--show)......... | 
| c800 |  20 20 20 20 28 64 65 61 64 67 72 65 70 2d 2d 68    69 64 65 29 29 29 29 29 29 29 0a 0a 28 64 65 66  | ....(deadgrep--hide)))))))..(def | 
| c820 |  75 6e 20 64 65 61 64 67 72 65 70 2d 2d 73 68 6f    77 20 28 29 0a 20 20 28 2d 6c 65 74 2a 20 28 28  | un.deadgrep--show.()...(-let*.(( | 
| c840 |  66 69 6c 65 2d 6e 61 6d 65 20 28 64 65 61 64 67    72 65 70 2d 2d 66 69 6c 65 6e 61 6d 65 29 29 0a  | file-name.(deadgrep--filename)). | 
| c860 |  20 20 20 20 20 20 20 20 20 20 28 28 73 74 61 72    74 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 29 20 28  | ..........((start-pos.end-pos).( | 
| c880 |  61 6c 69 73 74 2d 67 65 74 20 28 69 6e 74 65 72    6e 20 66 69 6c 65 2d 6e 61 6d 65 29 20 64 65 61  | alist-get.(intern.file-name).dea | 
| c8a0 |  64 67 72 65 70 2d 2d 68 69 64 64 65 6e 2d 66 69    6c 65 73 29 29 29 0a 20 20 20 20 28 72 65 6d 6f  | dgrep--hidden-files))).....(remo | 
| c8c0 |  76 65 2d 6f 76 65 72 6c 61 79 73 20 73 74 61 72    74 2d 70 6f 73 20 65 6e 64 2d 70 6f 73 20 27 69  | ve-overlays.start-pos.end-pos.'i | 
| c8e0 |  6e 76 69 73 69 62 6c 65 20 74 29 0a 20 20 20 20    28 73 65 74 66 20 28 61 6c 69 73 74 2d 67 65 74  | nvisible.t).....(setf.(alist-get | 
| c900 |  20 28 69 6e 74 65 72 6e 20 66 69 6c 65 2d 6e 61    6d 65 29 20 64 65 61 64 67 72 65 70 2d 2d 68 69  | .(intern.file-name).deadgrep--hi | 
| c920 |  64 64 65 6e 2d 66 69 6c 65 73 29 0a 20 20 20 20    20 20 20 20 20 20 6e 69 6c 29 29 29 0a 0a 28 64  | dden-files)...........nil)))..(d | 
| c940 |  65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 2d 68    69 64 65 20 28 29 0a 20 20 22 48 69 64 65 20 74  | efun.deadgrep--hide.()..."Hide.t | 
| c960 |  68 65 20 66 69 6c 65 20 72 65 73 75 6c 74 73 20    69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65  | he.file.results.immediately.afte | 
| c980 |  72 20 70 6f 69 6e 74 2e 22 0a 20 20 28 73 61 76    65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20  | r.point."...(save-excursion..... | 
| c9a0 |  28 6c 65 74 2a 20 28 28 66 69 6c 65 2d 6e 61 6d    65 20 28 64 65 61 64 67 72 65 70 2d 2d 66 69 6c  | (let*.((file-name.(deadgrep--fil | 
| c9c0 |  65 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 28 73 74 61 72 74 2d 70 6f 73 0a 20 20  | ename))............(start-pos... | 
| c9e0 |  20 20 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 20 20 20 20 28  | ..........(progn...............( | 
| ca00 |  66 6f 72 77 61 72 64 2d 6c 69 6e 65 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 69  | forward-line)...............(poi | 
| ca20 |  6e 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 28 65 6e 64 2d 70 6f 73 0a 20 20 20 20 20 20  | nt)))............(end-pos....... | 
| ca40 |  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 77 68 69 6c  | ......(progn...............(whil | 
| ca60 |  65 20 28 61 6e 64 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72  | e.(and.......................(or | 
| ca80 |  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 29 20 27 64 65 61  | .(get-text-property.(point).'dea | 
| caa0 |  64 67 72 65 70 2d 6c 69 6e 65 2d 6e 75 6d 62 65    72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | dgrep-line-number).............. | 
| cac0 |  20 20 20 20 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  | .............(get-text-property. | 
| cae0 |  28 70 6f 69 6e 74 29 20 27 64 65 61 64 67 72 65    70 2d 73 65 70 61 72 61 74 6f 72 29 29 0a 20 20  | (point).'deadgrep-separator))... | 
| cb00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6e 6f 74 20 28 62 6f 62 70 29 29  | ....................(not.(bobp)) | 
| cb20 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 29  | ).................(forward-line) | 
| cb40 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    3b 3b 20 53 74 65 70 20 6f 76 65 72 20 74 68 65  | )...............;;.Step.over.the | 
| cb60 |  20 6e 65 77 6c 69 6e 65 2e 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 31 2b 20 28 70 6f 69  | .newline................(1+.(poi | 
| cb80 |  6e 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 28 6f 20 28 6d 61 6b 65 2d 6f 76 65 72 6c  | nt))))............(o.(make-overl | 
| cba0 |  61 79 20 73 74 61 72 74 2d 70 6f 73 20 65 6e 64    2d 70 6f 73 29 29 29 0a 20 20 20 20 20 20 28 6f  | ay.start-pos.end-pos))).......(o | 
| cbc0 |  76 65 72 6c 61 79 2d 70 75 74 20 6f 20 27 69 6e    76 69 73 69 62 6c 65 20 74 29 0a 20 20 20 20 20  | verlay-put.o.'invisible.t)...... | 
| cbe0 |  20 28 73 65 74 66 20 28 61 6c 69 73 74 2d 67 65    74 20 28 69 6e 74 65 72 6e 20 66 69 6c 65 2d 6e  | .(setf.(alist-get.(intern.file-n | 
| cc00 |  61 6d 65 29 20 64 65 61 64 67 72 65 70 2d 2d 68    69 64 64 65 6e 2d 66 69 6c 65 73 29 0a 20 20 20  | ame).deadgrep--hidden-files).... | 
| cc20 |  20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 73    74 61 72 74 2d 70 6f 73 20 65 6e 64 2d 70 6f 73  | .........(list.start-pos.end-pos | 
| cc40 |  29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65    61 64 67 72 65 70 2d 2d 69 6e 74 65 72 72 75 70  | )))))..(defun.deadgrep--interrup | 
| cc60 |  74 2d 70 72 6f 63 65 73 73 20 28 29 0a 20 20 22    47 72 61 63 65 66 75 6c 6c 79 20 73 74 6f 70 20  | t-process.()..."Gracefully.stop. | 
| cc80 |  74 68 65 20 72 67 20 70 72 6f 63 65 73 73 2c 20    73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2e 22 0a  | the.rg.process,.synchronously.". | 
| cca0 |  20 20 28 2d 77 68 65 6e 2d 6c 65 74 20 28 70 72    6f 63 20 28 67 65 74 2d 62 75 66 66 65 72 2d 70  | ..(-when-let.(proc.(get-buffer-p | 
| ccc0 |  72 6f 63 65 73 73 20 28 63 75 72 72 65 6e 74 2d    62 75 66 66 65 72 29 29 29 0a 20 20 20 20 3b 3b  | rocess.(current-buffer))).....;; | 
| cce0 |  20 45 6e 73 75 72 65 20 74 68 61 74 20 6f 75 72    20 70 72 6f 63 65 73 73 20 66 69 6c 74 65 72 20  | .Ensure.that.our.process.filter. | 
| cd00 |  69 73 20 6e 6f 74 20 63 61 6c 6c 65 64 20 61 67    61 69 6e 2e 0a 20 20 20 20 28 73 65 74 2d 70 72  | is.not.called.again......(set-pr | 
| cd20 |  6f 63 65 73 73 2d 66 69 6c 74 65 72 20 70 72 6f    63 20 23 27 69 67 6e 6f 72 65 29 0a 0a 20 20 20  | ocess-filter.proc.#'ignore)..... | 
| cd40 |  20 28 69 6e 74 65 72 72 75 70 74 2d 70 72 6f 63    65 73 73 20 70 72 6f 63 29 0a 20 20 20 20 3b 3b  | .(interrupt-process.proc).....;; | 
| cd60 |  20 57 61 69 74 20 66 6f 72 20 74 68 65 20 70 72    6f 63 65 73 73 20 74 6f 20 74 65 72 6d 69 6e 61  | .Wait.for.the.process.to.termina | 
| cd80 |  74 65 2c 20 73 6f 20 77 65 20 6b 6e 6f 77 20 74    68 61 74 0a 20 20 20 20 3b 3b 20 60 64 65 61 64  | te,.so.we.know.that.....;;.`dead | 
| cda0 |  67 72 65 70 2d 2d 70 72 6f 63 65 73 73 2d 73 65    6e 74 69 6e 65 6c 27 20 68 61 73 20 62 65 65 6e  | grep--process-sentinel'.has.been | 
| cdc0 |  20 63 61 6c 6c 65 64 2e 0a 20 20 20 20 28 77 68    69 6c 65 20 28 70 72 6f 63 65 73 73 2d 6c 69 76  | .called......(while.(process-liv | 
| cde0 |  65 2d 70 20 70 72 6f 63 29 0a 20 20 20 20 20 20    3b 3b 20 60 72 65 64 69 73 70 6c 61 79 27 20 63  | e-p.proc).......;;.`redisplay'.c | 
| ce00 |  61 6e 20 74 72 69 67 67 65 72 20 70 72 6f 63 65    73 73 20 66 69 6c 74 65 72 73 20 6f 72 20 73 65  | an.trigger.process.filters.or.se | 
| ce20 |  6e 74 69 6e 65 6c 73 2e 0a 20 20 20 20 20 20 28    72 65 64 69 73 70 6c 61 79 29 0a 20 20 20 20 20  | ntinels........(redisplay)...... | 
| ce40 |  20 28 73 6c 65 65 70 2d 66 6f 72 20 30 2e 31 29    29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 61 64  | .(sleep-for.0.1))))..(defun.dead | 
| ce60 |  67 72 65 70 2d 6b 69 6c 6c 2d 70 72 6f 63 65 73    73 20 28 29 0a 20 20 22 4b 69 6c 6c 20 74 68 65  | grep-kill-process.()..."Kill.the | 
| ce80 |  20 64 65 61 64 67 72 65 70 20 70 72 6f 63 65 73    73 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 74  | .deadgrep.process.associated.wit | 
| cea0 |  68 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75    66 66 65 72 2e 22 0a 20 20 28 69 6e 74 65 72 61  | h.the.current.buffer."...(intera | 
| cec0 |  63 74 69 76 65 29 0a 20 20 28 69 66 20 28 67 65    74 2d 62 75 66 66 65 72 2d 70 72 6f 63 65 73 73  | ctive)...(if.(get-buffer-process | 
| cee0 |  20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72    29 29 0a 20 20 20 20 20 20 28 64 65 61 64 67 72  | .(current-buffer)).......(deadgr | 
| cf00 |  65 70 2d 2d 69 6e 74 65 72 72 75 70 74 2d 70 72    6f 63 65 73 73 29 0a 20 20 20 20 28 6d 65 73 73  | ep--interrupt-process).....(mess | 
| cf20 |  61 67 65 20 22 4e 6f 20 70 72 6f 63 65 73 73 20    72 75 6e 6e 69 6e 67 2e 22 29 29 29 0a 0a 28 64  | age."No.process.running.")))..(d | 
| cf40 |  65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 2d 69    74 65 6d 2d 70 20 28 70 6f 73 29 0a 20 20 22 49  | efun.deadgrep--item-p.(pos)..."I | 
| cf60 |  73 20 74 68 65 72 65 20 73 6f 6d 65 74 68 69 6e    67 20 61 74 20 50 4f 53 20 74 68 61 74 20 77 65  | s.there.something.at.POS.that.we | 
| cf80 |  20 63 61 6e 20 69 6e 74 65 72 61 63 74 20 77 69    74 68 3f 22 0a 20 20 28 6f 72 20 28 62 75 74 74  | .can.interact.with?"...(or.(butt | 
| cfa0 |  6f 6e 2d 61 74 20 70 6f 73 29 0a 20 20 20 20 20    20 28 64 65 61 64 67 72 65 70 2d 2d 66 69 6c 65  | on-at.pos).......(deadgrep--file | 
| cfc0 |  6e 61 6d 65 20 70 6f 73 29 29 29 0a 0a 28 64 65    66 75 6e 20 64 65 61 64 67 72 65 70 2d 2d 66 69  | name.pos)))..(defun.deadgrep--fi | 
| cfe0 |  6c 65 6e 61 6d 65 2d 70 20 28 70 6f 73 29 0a 20    20 22 49 73 20 74 68 65 72 65 20 61 20 66 69 6c  | lename-p.(pos)..."Is.there.a.fil | 
| d000 |  65 6e 61 6d 65 20 61 74 20 50 4f 53 20 74 68 61    74 20 77 65 20 63 61 6e 20 69 6e 74 65 72 61 63  | ename.at.POS.that.we.can.interac | 
| d020 |  74 20 77 69 74 68 3f 22 0a 20 20 28 65 71 20 28    67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74  | t.with?"...(eq.(get-text-propert | 
| d040 |  79 20 70 6f 73 20 27 66 61 63 65 29 20 27 64 65    61 64 67 72 65 70 2d 66 69 6c 65 6e 61 6d 65 2d  | y.pos.'face).'deadgrep-filename- | 
| d060 |  66 61 63 65 29 29 0a 0a 28 64 65 66 75 6e 20 64    65 61 64 67 72 65 70 2d 2d 6d 6f 76 65 20 28 66  | face))..(defun.deadgrep--move.(f | 
| d080 |  6f 72 77 61 72 64 2d 70 29 0a 20 20 22 4d 6f 76    65 20 74 6f 20 74 68 65 20 6e 65 78 74 20 69 74  | orward-p)..."Move.to.the.next.it | 
| d0a0 |  65 6d 2e 0a 54 68 69 73 20 77 69 6c 6c 20 65 69    74 68 65 72 20 62 65 20 61 20 62 75 74 74 6f 6e  | em..This.will.either.be.a.button | 
| d0c0 |  2c 20 61 20 66 69 6c 65 6e 61 6d 65 2c 20 6f 72    20 61 20 73 65 61 72 63 68 20 72 65 73 75 6c 74  | ,.a.filename,.or.a.search.result | 
| d0e0 |  2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76    65 29 0a 20 20 28 6c 65 74 20 28 28 70 6f 73 20  | ."...(interactive)...(let.((pos. | 
| d100 |  28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 3b 3b    20 49 66 20 70 6f 69 6e 74 20 69 73 20 69 6e 69  | (point))).....;;.If.point.is.ini | 
| d120 |  74 69 61 6c 6c 79 20 6f 6e 20 61 6e 20 69 74 65    6d 2c 20 6d 6f 76 65 20 70 61 73 74 20 69 74 2e  | tially.on.an.item,.move.past.it. | 
| d140 |  0a 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64    20 28 64 65 61 64 67 72 65 70 2d 2d 69 74 65 6d  | .....(while.(and.(deadgrep--item | 
| d160 |  2d 70 20 70 6f 73 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 69 66 20 66 6f 72 77  | -p.pos).................(if.forw | 
| d180 |  61 72 64 2d 70 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 3c 20 70 6f 73  | ard-p.....................(<.pos | 
| d1a0 |  20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(point-max))................... | 
| d1c0 |  28 3e 20 70 6f 73 20 28 70 6f 69 6e 74 2d 6d 69    6e 29 29 29 29 0a 20 20 20 20 20 20 28 69 66 20  | (>.pos.(point-min)))).......(if. | 
| d1e0 |  66 6f 72 77 61 72 64 2d 70 0a 20 20 20 20 20 20    20 20 20 20 28 63 6c 2d 69 6e 63 66 20 70 6f 73  | forward-p...........(cl-incf.pos | 
| d200 |  29 0a 20 20 20 20 20 20 20 20 28 63 6c 2d 64 65    63 66 20 70 6f 73 29 29 29 0a 20 20 20 20 3b 3b  | ).........(cl-decf.pos))).....;; | 
| d220 |  20 46 69 6e 64 20 74 68 65 20 6e 65 78 74 20 69    74 65 6d 2e 0a 20 20 20 20 28 77 68 69 6c 65 20  | .Find.the.next.item......(while. | 
| d240 |  28 61 6e 64 20 28 6e 6f 74 20 28 64 65 61 64 67    72 65 70 2d 2d 69 74 65 6d 2d 70 20 70 6f 73 29  | (and.(not.(deadgrep--item-p.pos) | 
| d260 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 69 66 20 66 6f 72 77 61 72 64 2d 70 0a  | ).................(if.forward-p. | 
| d280 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 3c 20 70 6f 73 20 28 70 6f 69 6e  | ....................(<.pos.(poin | 
| d2a0 |  74 2d 6d 61 78 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 3e 20 70 6f 73  | t-max))...................(>.pos | 
| d2c0 |  20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 29 29 0a    20 20 20 20 20 20 28 69 66 20 66 6f 72 77 61 72  | .(point-min)))).......(if.forwar | 
| d2e0 |  64 2d 70 0a 20 20 20 20 20 20 20 20 20 20 28 63    6c 2d 69 6e 63 66 20 70 6f 73 29 0a 20 20 20 20  | d-p...........(cl-incf.pos)..... | 
| d300 |  20 20 20 20 28 63 6c 2d 64 65 63 66 20 70 6f 73    29 29 29 0a 20 20 20 20 3b 3b 20 52 65 67 61 72  | ....(cl-decf.pos))).....;;.Regar | 
| d320 |  64 6c 65 73 73 20 6f 66 20 64 69 72 65 63 74 69    6f 6e 2c 20 65 6e 73 75 72 65 20 70 6f 69 6e 74  | dless.of.direction,.ensure.point | 
| d340 |  20 69 73 20 61 74 20 74 68 65 20 62 65 67 69 6e    6e 69 6e 67 20 6f 66 0a 20 20 20 20 3b 3b 20 74  | .is.at.the.beginning.of.....;;.t | 
| d360 |  68 65 20 69 74 65 6d 2e 0a 20 20 20 20 28 77 68    69 6c 65 20 28 61 6e 64 20 28 69 66 20 66 6f 72  | he.item......(while.(and.(if.for | 
| d380 |  77 61 72 64 2d 70 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 3c 20 70 6f  | ward-p.....................(<.po | 
| d3a0 |  73 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | s.(point-max)).................. | 
| d3c0 |  20 28 3e 20 70 6f 73 20 28 70 6f 69 6e 74 2d 6d    69 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | .(>.pos.(point-min)))........... | 
| d3e0 |  20 20 20 20 20 20 28 64 65 61 64 67 72 65 70 2d    2d 69 74 65 6d 2d 70 20 28 31 2d 20 70 6f 73 29  | ......(deadgrep--item-p.(1-.pos) | 
| d400 |  29 29 0a 20 20 20 20 20 20 28 63 6c 2d 64 65 63    66 20 70 6f 73 29 29 0a 20 20 20 20 3b 3b 20 49  | )).......(cl-decf.pos)).....;;.I | 
| d420 |  66 20 77 65 20 72 65 61 63 68 65 64 20 61 6e 20    69 74 65 6d 20 28 77 65 20 61 72 65 6e 27 74 20  | f.we.reached.an.item.(we.aren't. | 
| d440 |  61 74 20 74 68 65 20 66 69 72 73 74 2f 6c 61 73    74 20 69 74 65 6d 29 2c 20 74 68 65 6e 0a 20 20  | at.the.first/last.item),.then... | 
| d460 |  20 20 3b 3b 20 67 6f 20 74 6f 20 69 74 2e 0a 20    20 20 20 28 77 68 65 6e 20 28 64 65 61 64 67 72  | ..;;.go.to.it......(when.(deadgr | 
| d480 |  65 70 2d 2d 69 74 65 6d 2d 70 20 70 6f 73 29 0a    20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72  | ep--item-p.pos).......(goto-char | 
| d4a0 |  20 70 6f 73 29 29 29 29 0a 0a 28 64 65 66 75 6e    20 64 65 61 64 67 72 65 70 2d 66 6f 72 77 61 72  | .pos))))..(defun.deadgrep-forwar | 
| d4c0 |  64 20 28 29 0a 20 20 22 4d 6f 76 65 20 66 6f 72    77 61 72 64 20 74 6f 20 74 68 65 20 6e 65 78 74  | d.()..."Move.forward.to.the.next | 
| d4e0 |  20 69 74 65 6d 2e 0a 54 68 69 73 20 77 69 6c 6c    20 65 69 74 68 65 72 20 62 65 20 61 20 62 75 74  | .item..This.will.either.be.a.but | 
| d500 |  74 6f 6e 2c 20 61 20 66 69 6c 65 6e 61 6d 65 2c    20 6f 72 20 61 20 73 65 61 72 63 68 20 72 65 73  | ton,.a.filename,.or.a.search.res | 
| d520 |  75 6c 74 2e 20 53 65 65 0a 61 6c 73 6f 20 60 64    65 61 64 67 72 65 70 2d 66 6f 72 77 61 72 64 2d  | ult..See.also.`deadgrep-forward- | 
| d540 |  6d 61 74 63 68 27 2e 22 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 29 0a 20 20 28 64 65 61 64  | match'."...(interactive)...(dead | 
| d560 |  67 72 65 70 2d 2d 6d 6f 76 65 20 74 29 29 0a 0a    28 64 65 66 75 6e 20 64 65 61 64 67 72 65 70 2d  | grep--move.t))..(defun.deadgrep- | 
| d580 |  62 61 63 6b 77 61 72 64 20 28 29 0a 20 20 22 4d    6f 76 65 20 62 61 63 6b 77 61 72 64 20 74 6f 20  | backward.()..."Move.backward.to. | 
| d5a0 |  74 68 65 20 70 72 65 76 69 6f 75 73 20 69 74 65    6d 2e 0a 54 68 69 73 20 77 69 6c 6c 20 65 69 74  | the.previous.item..This.will.eit | 
| d5c0 |  68 65 72 20 62 65 20 61 20 62 75 74 74 6f 6e 2c    20 61 20 66 69 6c 65 6e 61 6d 65 2c 20 6f 72 20  | her.be.a.button,.a.filename,.or. | 
| d5e0 |  61 20 73 65 61 72 63 68 20 72 65 73 75 6c 74 2e    20 53 65 65 0a 61 6c 73 6f 20 60 64 65 61 64 67  | a.search.result..See.also.`deadg | 
| d600 |  72 65 70 2d 62 61 63 6b 77 61 72 64 2d 6d 61 74    63 68 27 2e 22 0a 20 20 28 69 6e 74 65 72 61 63  | rep-backward-match'."...(interac | 
| d620 |  74 69 76 65 29 0a 20 20 28 64 65 61 64 67 72 65    70 2d 2d 6d 6f 76 65 20 6e 69 6c 29 29 0a 0a 28  | tive)...(deadgrep--move.nil))..( | 
| d640 |  64 65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 66    6f 72 77 61 72 64 2d 66 69 6c 65 6e 61 6d 65 20  | defun.deadgrep-forward-filename. | 
| d660 |  28 29 0a 20 20 22 4d 6f 76 65 20 66 6f 72 77 61    72 64 20 74 6f 20 74 68 65 20 6e 65 78 74 20 66  | ()..."Move.forward.to.the.next.f | 
| d680 |  69 6c 65 6e 61 6d 65 2e 22 0a 20 20 28 69 6e 74    65 72 61 63 74 69 76 65 29 0a 20 20 28 64 65 61  | ilename."...(interactive)...(dea | 
| d6a0 |  64 67 72 65 70 2d 2d 6d 6f 76 65 2d 6d 61 74 63    68 20 74 20 27 64 65 61 64 67 72 65 70 2d 66 69  | dgrep--move-match.t.'deadgrep-fi | 
| d6c0 |  6c 65 6e 61 6d 65 2d 66 61 63 65 29 29 0a 0a 28    64 65 66 75 6e 20 64 65 61 64 67 72 65 70 2d 62  | lename-face))..(defun.deadgrep-b | 
| d6e0 |  61 63 6b 77 61 72 64 2d 66 69 6c 65 6e 61 6d 65    20 28 29 0a 20 20 22 4d 6f 76 65 20 62 61 63 6b  | ackward-filename.()..."Move.back | 
| d700 |  77 61 72 64 20 74 6f 20 74 68 65 20 70 72 65 76    69 6f 75 73 20 66 69 6c 65 6e 61 6d 65 2e 22 0a  | ward.to.the.previous.filename.". | 
| d720 |  20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a    20 20 28 64 65 61 64 67 72 65 70 2d 2d 6d 6f 76  | ..(interactive)...(deadgrep--mov | 
| d740 |  65 2d 6d 61 74 63 68 20 6e 69 6c 20 27 64 65 61    64 67 72 65 70 2d 66 69 6c 65 6e 61 6d 65 2d 66  | e-match.nil.'deadgrep-filename-f | 
| d760 |  61 63 65 29 29 0a 0a 28 64 65 66 75 6e 20 64 65    61 64 67 72 65 70 2d 2d 6d 6f 76 65 2d 6d 61 74  | ace))..(defun.deadgrep--move-mat | 
| d780 |  63 68 20 28 66 6f 72 77 61 72 64 2d 70 20 66 61    63 65 29 0a 20 20 22 4d 6f 76 65 20 70 6f 69 6e  | ch.(forward-p.face)..."Move.poin | 
| d7a0 |  74 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69    6e 67 20 6f 66 20 74 68 65 20 6e 65 78 74 2f 70  | t.to.the.beginning.of.the.next/p | 
| d7c0 |  72 65 76 69 6f 75 73 20 6d 61 74 63 68 2e 22 0a    20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a  | revious.match."...(interactive). | 
| d7e0 |  20 20 28 6c 65 74 20 28 28 73 74 61 72 74 2d 70    6f 73 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20  | ..(let.((start-pos.(point))).... | 
| d800 |  20 3b 3b 20 4d 6f 76 65 20 6f 76 65 72 20 74 68    65 20 63 75 72 72 65 6e 74 20 6d 61 74 63 68 2c  | .;;.Move.over.the.current.match, | 
| d820 |  20 69 66 20 77 65 20 77 65 72 65 20 61 6c 72 65    61 64 79 20 6f 6e 20 6f 6e 65 2e 0a 20 20 20 20  | .if.we.were.already.on.one...... | 
| d840 |  28 77 68 69 6c 65 20 28 65 71 20 28 67 65 74 2d    74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 70  | (while.(eq.(get-text-property.(p | 
| d860 |  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 66 61 63 65  | oint).'face)................face | 
| d880 |  29 0a 20 20 20 20 20 20 28 69 66 20 66 6f 72 77    61 72 64 2d 70 20 28 66 6f 72 77 61 72 64 2d 63  | ).......(if.forward-p.(forward-c | 
| d8a0 |  68 61 72 29 20 28 62 61 63 6b 77 61 72 64 2d 63    68 61 72 29 29 29 0a 20 20 20 20 28 63 6f 6e 64  | har).(backward-char))).....(cond | 
| d8c0 |  69 74 69 6f 6e 2d 63 61 73 65 20 6e 69 6c 0a 20    20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20  | ition-case.nil.........(progn... | 
| d8e0 |  20 20 20 20 20 20 20 20 3b 3b 20 4d 6f 76 65 20    70 6f 69 6e 74 20 74 6f 20 74 68 65 20 6e 65 78  | ........;;.Move.point.to.the.nex | 
| d900 |  74 20 6d 61 74 63 68 2c 20 77 68 69 63 68 20 6d    61 79 20 62 65 20 6f 6e 20 74 68 65 20 73 61 6d  | t.match,.which.may.be.on.the.sam | 
| d920 |  65 20 6c 69 6e 65 2e 0a 20 20 20 20 20 20 20 20    20 20 28 77 68 69 6c 65 20 28 6e 6f 74 20 28 65  | e.line............(while.(not.(e | 
| d940 |  71 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 29 20 27 66 61  | q.(get-text-property.(point).'fa | 
| d960 |  63 65 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 66 61  | ce)...........................fa | 
| d980 |  63 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 69 66 20 66 6f 72 77 61 72 64 2d 70 20 28  | ce)).............(if.forward-p.( | 
| d9a0 |  66 6f 72 77 61 72 64 2d 63 68 61 72 29 20 28 62    61 63 6b 77 61 72 64 2d 63 68 61 72 29 29 29 0a  | forward-char).(backward-char))). | 
| d9c0 |  20 20 20 20 20 20 20 20 20 20 3b 3b 20 45 6e 73    75 72 65 20 70 6f 69 6e 74 20 69 73 20 61 74 20  | ..........;;.Ensure.point.is.at. | 
| d9e0 |  74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66    20 74 68 65 20 6d 61 74 63 68 2e 0a 20 20 20 20  | the.beginning.of.the.match...... | 
| da00 |  20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 66 6f    72 77 61 72 64 2d 70 0a 20 20 20 20 20 20 20 20  | ......(unless.forward-p......... | 
| da20 |  20 20 20 20 28 77 68 69 6c 65 20 28 65 71 20 28    67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74  | ....(while.(eq.(get-text-propert | 
| da40 |  79 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  | y.(point).'face)................ | 
| da60 |  20 20 20 20 20 20 20 20 66 61 63 65 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 62 61 63  | ........face)...............(bac | 
| da80 |  6b 77 61 72 64 2d 63 68 61 72 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72  | kward-char)).............(forwar | 
| daa0 |  64 2d 63 68 61 72 29 29 29 0a 20 20 20 20 20 20    3b 3b 20 44 6f 6e 27 74 20 6d 6f 76 65 20 70 6f  | d-char))).......;;.Don't.move.po | 
| dac0 |  69 6e 74 20 62 65 79 6f 6e 64 20 74 68 65 20 6c    61 73 74 20 6d 61 74 63 68 2e 20 48 6f 77 65 76  | int.beyond.the.last.match..Howev | 
| dae0 |  65 72 2c 20 69 74 27 73 20 73 74 69 6c 6c 0a 20    20 20 20 20 20 3b 3b 20 75 73 65 66 75 6c 20 74  | er,.it's.still.......;;.useful.t | 
| db00 |  6f 20 73 69 67 6e 61 6c 20 74 68 61 74 20 77 65    27 72 65 20 61 74 20 74 68 65 20 65 6e 64 2c 20  | o.signal.that.we're.at.the.end,. | 
| db20 |  73 6f 20 75 73 65 72 73 20 63 61 6e 20 75 73 65    20 74 68 69 73 0a 20 20 20 20 20 20 3b 3b 20 63  | so.users.can.use.this.......;;.c | 
| db40 |  6f 6d 6d 61 6e 64 20 77 69 74 68 20 6d 61 63 72    6f 73 20 61 6e 64 20 74 65 72 6d 69 6e 61 74 65  | ommand.with.macros.and.terminate | 
| db60 |  20 77 68 65 6e 20 69 74 27 73 20 64 6f 6e 65 2e    0a 20 20 20 20 20 20 28 62 65 67 69 6e 6e 69 6e  | .when.it's.done........(beginnin | 
| db80 |  67 2d 6f 66 2d 62 75 66 66 65 72 0a 20 20 20 20    20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 73 74  | g-of-buffer........(goto-char.st | 
| dba0 |  61 72 74 2d 70 6f 73 29 0a 20 20 20 20 20 20 20    28 73 69 67 6e 61 6c 20 27 62 65 67 69 6e 6e 69  | art-pos)........(signal.'beginni | 
| dbc0 |  6e 67 2d 6f 66 2d 62 75 66 66 65 72 20 6e 69 6c    29 29 0a 20 20 20 20 20 20 28 65 6e 64 2d 6f 66  | ng-of-buffer.nil)).......(end-of | 
| dbe0 |  2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 28    67 6f 74 6f 2d 63 68 61 72 20 73 74 61 72 74 2d  | -buffer........(goto-char.start- | 
| dc00 |  70 6f 73 29 0a 20 20 20 20 20 20 20 28 73 69 67    6e 61 6c 20 27 65 6e 64 2d 6f 66 2d 62 75 66 66  | pos)........(signal.'end-of-buff | 
| dc20 |  65 72 20 6e 69 6c 29 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 64 65 61 64 67 72 65 70 2d 66 6f 72  | er.nil)))))..(defun.deadgrep-for | 
| dc40 |  77 61 72 64 2d 6d 61 74 63 68 20 28 29 0a 20 20    22 4d 6f 76 65 20 70 6f 69 6e 74 20 66 6f 72 77  | ward-match.()..."Move.point.forw | 
| dc60 |  61 72 64 20 74 6f 20 74 68 65 20 62 65 67 69 6e    6e 69 6e 67 20 6f 66 20 6e 65 78 74 20 6d 61 74  | ard.to.the.beginning.of.next.mat | 
| dc80 |  63 68 2e 0a 4e 6f 74 65 20 74 68 61 74 20 61 20    72 65 73 75 6c 74 20 6c 69 6e 65 20 6d 61 79 20  | ch..Note.that.a.result.line.may. | 
| dca0 |  63 6f 6e 74 61 69 6e 20 6d 6f 72 65 20 74 68 61    6e 20 6f 6e 65 20 6d 61 74 63 68 2c 20 6f 72 20  | contain.more.than.one.match,.or. | 
| dcc0 |  7a 65 72 6f 0a 6d 61 74 63 68 65 73 20 28 69 66    20 74 68 65 20 72 65 73 75 6c 74 20 6c 69 6e 65  | zero.matches.(if.the.result.line | 
| dce0 |  20 68 61 73 20 62 65 65 6e 20 74 72 75 6e 63 61    74 65 64 29 2e 22 0a 20 20 28 69 6e 74 65 72 61  | .has.been.truncated)."...(intera | 
| dd00 |  63 74 69 76 65 29 0a 20 20 28 64 65 61 64 67 72    65 70 2d 2d 6d 6f 76 65 2d 6d 61 74 63 68 20 74  | ctive)...(deadgrep--move-match.t | 
| dd20 |  20 27 64 65 61 64 67 72 65 70 2d 6d 61 74 63 68    2d 66 61 63 65 29 29 0a 0a 28 64 65 66 75 6e 20  | .'deadgrep-match-face))..(defun. | 
| dd40 |  64 65 61 64 67 72 65 70 2d 62 61 63 6b 77 61 72    64 2d 6d 61 74 63 68 20 28 29 0a 20 20 22 4d 6f  | deadgrep-backward-match.()..."Mo | 
| dd60 |  76 65 20 70 6f 69 6e 74 20 62 61 63 6b 77 61 72    64 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69  | ve.point.backward.to.the.beginni | 
| dd80 |  6e 67 20 6f 66 20 70 72 65 76 69 6f 75 73 20 6d    61 74 63 68 2e 22 0a 20 20 28 69 6e 74 65 72 61  | ng.of.previous.match."...(intera | 
| dda0 |  63 74 69 76 65 29 0a 20 20 28 64 65 61 64 67 72    65 70 2d 2d 6d 6f 76 65 2d 6d 61 74 63 68 20 6e  | ctive)...(deadgrep--move-match.n | 
| ddc0 |  69 6c 20 27 64 65 61 64 67 72 65 70 2d 6d 61 74    63 68 2d 66 61 63 65 29 29 0a 0a 28 64 65 66 75  | il.'deadgrep-match-face))..(defu | 
| dde0 |  6e 20 64 65 61 64 67 72 65 70 2d 2d 73 74 61 72    74 20 28 73 65 61 72 63 68 2d 74 65 72 6d 20 73  | n.deadgrep--start.(search-term.s | 
| de00 |  65 61 72 63 68 2d 74 79 70 65 20 63 61 73 65 29    0a 20 20 22 53 74 61 72 74 20 61 20 72 69 70 67  | earch-type.case)..."Start.a.ripg | 
| de20 |  72 65 70 20 73 65 61 72 63 68 2e 22 0a 20 20 28    73 65 74 71 20 64 65 61 64 67 72 65 70 2d 2d 73  | rep.search."...(setq.deadgrep--s | 
| de40 |  70 69 6e 6e 65 72 20 28 73 70 69 6e 6e 65 72 2d    63 72 65 61 74 65 20 27 70 72 6f 67 72 65 73 73  | pinner.(spinner-create.'progress | 
| de60 |  2d 62 61 72 20 74 29 29 0a 20 20 28 73 65 74 71    20 64 65 61 64 67 72 65 70 2d 2d 72 75 6e 6e 69  | -bar.t))...(setq.deadgrep--runni | 
| de80 |  6e 67 20 74 29 0a 20 20 28 73 65 74 71 20 64 65    61 64 67 72 65 70 2d 2d 72 65 73 75 6c 74 2d 63  | ng.t)...(setq.deadgrep--result-c | 
| dea0 |  6f 75 6e 74 20 30 29 0a 20 20 28 73 70 69 6e 6e    65 72 2d 73 74 61 72 74 20 64 65 61 64 67 72 65  | ount.0)...(spinner-start.deadgre | 
| dec0 |  70 2d 2d 73 70 69 6e 6e 65 72 29 0a 20 20 28 6c    65 74 2a 20 28 28 61 72 67 73 20 28 64 65 61 64  | p--spinner)...(let*.((args.(dead | 
| dee0 |  67 72 65 70 2d 2d 61 72 67 75 6d 65 6e 74 73 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | grep--arguments................. | 
| df00 |  73 65 61 72 63 68 2d 74 65 72 6d 20 73 65 61 72    63 68 2d 74 79 70 65 20 63 61 73 65 0a 20 20 20  | search-term.search-type.case.... | 
| df20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 61    64 67 72 65 70 2d 2d 63 6f 6e 74 65 78 74 29 29  | .............deadgrep--context)) | 
| df40 |  0a 20 20 20 20 20 20 20 20 20 28 70 72 6f 63 65    73 73 0a 20 20 20 20 20 20 20 20 20 20 28 61 70  | ..........(process...........(ap | 
| df60 |  70 6c 79 20 23 27 73 74 61 72 74 2d 66 69 6c 65    2d 70 72 6f 63 65 73 73 0a 20 20 20 20 20 20 20  | ply.#'start-file-process........ | 
| df80 |  20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61    74 20 22 72 67 20 25 73 22 20 73 65 61 72 63 68  | ..........(format."rg.%s".search | 
| dfa0 |  2d 74 65 72 6d 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 63 75 72 72 65 6e 74  | -term)..................(current | 
| dfc0 |  2d 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 64 65 61 64 67 72  | -buffer)..................deadgr | 
| dfe0 |  65 70 2d 65 78 65 63 75 74 61 62 6c 65 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61  | ep-executable..................a | 
| e000 |  72 67 73 29 29 29 0a 20 20 20 20 28 73 65 74 71    20 64 65 61 64 67 72 65 70 2d 2d 64 65 62 75 67  | rgs))).....(setq.deadgrep--debug | 
| e020 |  2d 63 6f 6d 6d 61 6e 64 0a 20 20 20 20 20 20 20    20 20 20 28 66 6f 72 6d 61 74 20 22 25 73 20 25  | -command...........(format."%s.% | 
| e040 |  73 22 20 64 65 61 64 67 72 65 70 2d 65 78 65 63    75 74 61 62 6c 65 20 28 73 2d 6a 6f 69 6e 20 22  | s".deadgrep-executable.(s-join." | 
| e060 |  20 22 20 61 72 67 73 29 29 29 0a 20 20 20 20 28    73 65 74 2d 70 72 6f 63 65 73 73 2d 66 69 6c 74  | .".args))).....(set-process-filt | 
| e080 |  65 72 20 70 72 6f 63 65 73 73 20 23 27 64 65 61    64 67 72 65 70 2d 2d 70 72 6f 63 65 73 73 2d 66  | er.process.#'deadgrep--process-f | 
| e0a0 |  69 6c 74 65 72 29 0a 20 20 20 20 28 73 65 74 2d    70 72 6f 63 65 73 73 2d 73 65 6e 74 69 6e 65 6c  | ilter).....(set-process-sentinel | 
| e0c0 |  20 70 72 6f 63 65 73 73 20 23 27 64 65 61 64 67    72 65 70 2d 2d 70 72 6f 63 65 73 73 2d 73 65 6e  | .process.#'deadgrep--process-sen | 
| e0e0 |  74 69 6e 65 6c 29 29 29 0a 0a 28 64 65 66 75 6e    20 64 65 61 64 67 72 65 70 2d 2d 73 74 6f 70 2d  | tinel)))..(defun.deadgrep--stop- | 
| e100 |  61 6e 64 2d 72 65 73 65 74 20 28 29 0a 20 20 22    54 65 72 6d 69 6e 61 74 65 20 74 68 65 20 63 75  | and-reset.()..."Terminate.the.cu | 
| e120 |  72 72 65 6e 74 20 73 65 61 72 63 68 20 61 6e 64    20 72 65 73 65 74 20 61 6e 79 20 73 65 61 72 63  | rrent.search.and.reset.any.searc | 
| e140 |  68 20 73 74 61 74 65 2e 22 0a 20 20 3b 3b 20 53    74 6f 70 20 74 68 65 20 6f 6c 64 20 73 65 61 72  | h.state."...;;.Stop.the.old.sear | 
| e160 |  63 68 2c 20 73 6f 20 77 65 20 64 6f 6e 27 74 20    63 61 72 72 79 20 6f 6e 20 69 6e 73 65 72 74 69  | ch,.so.we.don't.carry.on.inserti | 
| e180 |  6e 67 20 72 65 73 75 6c 74 73 20 66 72 6f 6d 0a    20 20 3b 3b 20 74 68 65 20 6c 61 73 74 20 74 68  | ng.results.from...;;.the.last.th | 
| e1a0 |  69 6e 67 20 77 65 20 73 65 61 72 63 68 65 64 20    66 6f 72 2e 0a 20 20 28 64 65 61 64 67 72 65 70  | ing.we.searched.for....(deadgrep | 
| e1c0 |  2d 2d 69 6e 74 65 72 72 75 70 74 2d 70 72 6f 63    65 73 73 29 0a 0a 20 20 28 6c 65 74 20 28 28 69  | --interrupt-process)....(let.((i | 
| e1e0 |  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 3b 3b 20 52 65 73 65  | nhibit-read-only.t)).....;;.Rese | 
| e200 |  74 20 55 49 3a 20 72 65 6d 6f 76 65 20 72 65 73    75 6c 74 73 2c 20 72 65 73 65 74 20 69 74 65 6d  | t.UI:.remove.results,.reset.item | 
| e220 |  73 20 68 69 64 64 65 6e 20 62 79 20 54 41 42 2c    20 61 6e 64 20 61 72 72 6f 77 0a 20 20 20 20 3b  | s.hidden.by.TAB,.and.arrow.....; | 
| e240 |  3b 20 70 6f 73 69 74 69 6f 6e 2e 0a 20 20 20 20    28 65 72 61 73 65 2d 62 75 66 66 65 72 29 0a 20  | ;.position......(erase-buffer).. | 
| e260 |  20 20 20 28 73 65 74 71 20 64 65 61 64 67 72 65    70 2d 2d 68 69 64 64 65 6e 2d 66 69 6c 65 73 20  | ...(setq.deadgrep--hidden-files. | 
| e280 |  6e 69 6c 29 0a 20 20 20 20 28 77 68 65 6e 20 6f    76 65 72 6c 61 79 2d 61 72 72 6f 77 2d 70 6f 73  | nil).....(when.overlay-arrow-pos | 
| e2a0 |  69 74 69 6f 6e 0a 20 20 20 20 20 20 28 73 65 74    2d 6d 61 72 6b 65 72 20 6f 76 65 72 6c 61 79 2d  | ition.......(set-marker.overlay- | 
| e2c0 |  61 72 72 6f 77 2d 70 6f 73 69 74 69 6f 6e 20 6e    69 6c 29 29 0a 0a 20 20 20 20 3b 3b 20 52 65 73  | arrow-position.nil))......;;.Res | 
| e2e0 |  65 74 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20    73 65 61 72 63 68 20 73 74 61 74 65 2e 0a 20 20  | et.intermediate.search.state.... | 
| e300 |  20 20 28 73 65 74 71 20 64 65 61 64 67 72 65 70    2d 2d 63 75 72 72 65 6e 74 2d 66 69 6c 65 20 6e  | ..(setq.deadgrep--current-file.n | 
| e320 |  69 6c 29 0a 20 20 20 20 28 73 65 74 71 20 64 65    61 64 67 72 65 70 2d 2d 73 70 69 6e 6e 65 72 20  | il).....(setq.deadgrep--spinner. | 
| e340 |  6e 69 6c 29 0a 20 20 20 20 28 73 65 74 71 20 64    65 61 64 67 72 65 70 2d 2d 72 65 6d 61 69 6e 69  | nil).....(setq.deadgrep--remaini | 
| e360 |  6e 67 2d 6f 75 74 70 75 74 20 6e 69 6c 29 0a 20    20 20 20 28 73 65 74 71 20 64 65 61 64 67 72 65  | ng-output.nil).....(setq.deadgre | 
| e380 |  70 2d 2d 63 75 72 72 65 6e 74 2d 66 69 6c 65 20    6e 69 6c 29 0a 20 20 20 20 28 73 65 74 71 20 64  | p--current-file.nil).....(setq.d | 
| e3a0 |  65 61 64 67 72 65 70 2d 2d 64 65 62 75 67 2d 66    69 72 73 74 2d 6f 75 74 70 75 74 20 6e 69 6c 29  | eadgrep--debug-first-output.nil) | 
| e3c0 |  0a 20 20 20 20 28 73 65 74 71 20 64 65 61 64 67    72 65 70 2d 2d 69 6d 65 6e 75 2d 61 6c 69 73 74  | .....(setq.deadgrep--imenu-alist | 
| e3e0 |  20 6e 69 6c 29 29 29 0a 0a 28 64 65 66 75 6e 20    64 65 61 64 67 72 65 70 2d 72 65 73 74 61 72 74  | .nil)))..(defun.deadgrep-restart | 
| e400 |  20 28 29 0a 20 20 22 52 65 2d 72 75 6e 20 72 69    70 67 72 65 70 20 77 69 74 68 20 74 68 65 20 63  | .()..."Re-run.ripgrep.with.the.c | 
| e420 |  75 72 72 65 6e 74 20 73 65 61 72 63 68 20 73 65    74 74 69 6e 67 73 2e 22 0a 20 20 28 69 6e 74 65  | urrent.search.settings."...(inte | 
| e440 |  72 61 63 74 69 76 65 29 0a 20 20 3b 3b 20 49 66    20 77 65 20 68 61 76 65 6e 27 74 20 73 74 61 72  | ractive)...;;.If.we.haven't.star | 
| e460 |  74 65 64 20 79 65 74 2c 20 73 74 61 72 74 20 74    68 65 20 73 65 61 72 63 68 20 69 66 20 77 65 27  | ted.yet,.start.the.search.if.we' | 
| e480 |  76 65 20 62 65 65 6e 20 63 61 6c 6c 65 64 0a 20    20 3b 3b 20 62 79 20 74 68 65 20 75 73 65 72 2e  | ve.been.called...;;.by.the.user. | 
| e4a0 |  0a 20 20 28 77 68 65 6e 20 28 61 6e 64 20 64 65    61 64 67 72 65 70 2d 2d 70 6f 73 74 70 6f 6e 65  | ...(when.(and.deadgrep--postpone | 
| e4c0 |  2d 73 74 61 72 74 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 28 63 61 6c 6c 65 64 2d 69 6e 74 65  | -start..............(called-inte | 
| e4e0 |  72 61 63 74 69 76 65 6c 79 2d 70 20 27 69 6e 74    65 72 61 63 74 69 76 65 29 29 0a 20 20 20 20 28  | ractively-p.'interactive)).....( | 
| e500 |  73 65 74 71 20 64 65 61 64 67 72 65 70 2d 2d 70    6f 73 74 70 6f 6e 65 2d 73 74 61 72 74 20 6e 69  | setq.deadgrep--postpone-start.ni | 
| e520 |  6c 29 29 0a 0a 20 20 28 64 65 61 64 67 72 65 70    2d 2d 73 74 6f 70 2d 61 6e 64 2d 72 65 73 65 74  | l))....(deadgrep--stop-and-reset | 
| e540 |  29 0a 0a 20 20 28 6c 65 74 20 28 28 73 74 61 72    74 2d 70 6f 69 6e 74 20 28 70 6f 69 6e 74 29 29  | )....(let.((start-point.(point)) | 
| e560 |  0a 20 20 20 20 20 20 20 20 28 69 6e 68 69 62 69    74 2d 72 65 61 64 2d 6f 6e 6c 79 20 74 29 29 0a  | .........(inhibit-read-only.t)). | 
| e580 |  20 20 20 20 28 64 65 61 64 67 72 65 70 2d 2d 77    72 69 74 65 2d 68 65 61 64 69 6e 67 29 0a 20 20  | ....(deadgrep--write-heading)... | 
| e5a0 |  20 20 3b 3b 20 49 66 20 74 68 65 20 70 6f 69 6e    74 20 77 61 73 20 69 6e 20 74 68 65 20 68 65 61  | ..;;.If.the.point.was.in.the.hea | 
| e5c0 |  64 69 6e 67 2c 20 65 6e 73 75 72 65 20 74 68 61    74 20 77 65 20 72 65 73 74 6f 72 65 20 69 74 73  | ding,.ensure.that.we.restore.its | 
| e5e0 |  0a 20 20 20 20 3b 3b 20 70 6f 73 69 74 69 6f 6e    2e 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72  | .....;;.position......(goto-char | 
| e600 |  20 28 6d 69 6e 20 28 70 6f 69 6e 74 2d 6d 61 78    29 20 73 74 61 72 74 2d 70 6f 69 6e 74 29 29 0a  | .(min.(point-max).start-point)). | 
| e620 |  0a 20 20 20 20 28 69 66 20 64 65 61 64 67 72 65    70 2d 2d 70 6f 73 74 70 6f 6e 65 2d 73 74 61 72  | .....(if.deadgrep--postpone-star | 
| e640 |  74 0a 20 20 20 20 20 20 20 20 28 64 65 61 64 67    72 65 70 2d 2d 77 72 69 74 65 2d 70 6f 73 74 70  | t.........(deadgrep--write-postp | 
| e660 |  6f 6e 65 64 29 0a 20 20 20 20 20 20 28 64 65 61    64 67 72 65 70 2d 2d 73 74 61 72 74 0a 20 20 20  | oned).......(deadgrep--start.... | 
| e680 |  20 20 20 20 64 65 61 64 67 72 65 70 2d 2d 73 65    61 72 63 68 2d 74 65 72 6d 0a 20 20 20 20 20 20  | ....deadgrep--search-term....... | 
| e6a0 |  20 64 65 61 64 67 72 65 70 2d 2d 73 65 61 72 63    68 2d 74 79 70 65 0a 20 20 20 20 20 20 20 64 65  | .deadgrep--search-type........de | 
| e6c0 |  61 64 67 72 65 70 2d 2d 73 65 61 72 63 68 2d 63    61 73 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20  | adgrep--search-case))))..(defun. | 
| e6e0 |  64 65 61 64 67 72 65 70 2d 2d 72 65 61 64 2d 73    65 61 72 63 68 2d 74 65 72 6d 20 28 29 0a 20 20  | deadgrep--read-search-term.()... | 
| e700 |  22 52 65 61 64 20 61 20 73 65 61 72 63 68 20 74    65 72 6d 20 66 72 6f 6d 20 74 68 65 20 6d 69 6e  | "Read.a.search.term.from.the.min | 
| e720 |  69 62 75 66 66 65 72 2e 0a 49 66 20 72 65 67 69    6f 6e 20 69 73 20 61 63 74 69 76 65 2c 20 72 65  | ibuffer..If.region.is.active,.re | 
| e740 |  74 75 72 6e 20 74 68 61 74 20 69 6d 6d 65 64 69    61 74 65 6c 79 2e 20 20 4f 74 68 65 72 77 69 73  | turn.that.immediately...Otherwis | 
| e760 |  65 2c 20 70 72 6f 6d 70 74 0a 66 6f 72 20 61 20    73 74 72 69 6e 67 2c 20 6f 66 66 65 72 69 6e 67  | e,.prompt.for.a.string,.offering | 
| e780 |  20 74 68 65 20 63 75 72 72 65 6e 74 20 77 6f 72    64 20 61 73 20 61 20 64 65 66 61 75 6c 74 2e 22  | .the.current.word.as.a.default." | 
| e7a0 |  0a 20 20 28 6c 65 74 20 28 73 65 61 72 63 68 2d    74 65 72 6d 29 0a 20 20 20 20 28 69 66 20 28 75  | ...(let.(search-term).....(if.(u | 
| e7c0 |  73 65 2d 72 65 67 69 6f 6e 2d 70 29 0a 20 20 20    20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20  | se-region-p).........(progn..... | 
| e7e0 |  20 20 20 20 20 20 28 73 65 74 71 20 73 65 61 72    63 68 2d 74 65 72 6d 0a 20 20 20 20 20 20 20 20  | ......(setq.search-term......... | 
| e800 |  20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 2d    73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f  | ........(buffer-substring-no-pro | 
| e820 |  70 65 72 74 69 65 73 20 28 72 65 67 69 6f 6e 2d    62 65 67 69 6e 6e 69 6e 67 29 20 28 72 65 67 69  | perties.(region-beginning).(regi | 
| e840 |  6f 6e 2d 65 6e 64 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 28 64 65 61 63 74 69 76 61 74 65 2d  | on-end)))...........(deactivate- | 
| e860 |  6d 61 72 6b 29 29 0a 20 20 20 20 20 20 28 6c 65    74 2a 20 28 28 73 79 6d 20 28 73 79 6d 62 6f 6c  | mark)).......(let*.((sym.(symbol | 
| e880 |  2d 61 74 2d 70 6f 69 6e 74 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 28 73 79 6d 2d 6e 61  | -at-point))..............(sym-na | 
| e8a0 |  6d 65 20 28 77 68 65 6e 20 73 79 6d 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | me.(when.sym.................... | 
| e8c0 |  20 20 20 20 20 20 28 73 75 62 73 74 72 69 6e 67    2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 28  | ......(substring-no-properties.( | 
| e8e0 |  73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 73 79 6d 29    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | symbol-name.sym))))............. | 
| e900 |  20 28 70 72 6f 6d 70 74 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 64 65 61 64 67 72 65 70  | .(prompt...............(deadgrep | 
| e920 |  2d 2d 73 65 61 72 63 68 2d 70 72 6f 6d 70 74 20    73 79 6d 2d 6e 61 6d 65 29 29 29 0a 20 20 20 20  | --search-prompt.sym-name)))..... | 
| e940 |  20 20 20 20 28 73 65 74 71 20 73 65 61 72 63 68    2d 74 65 72 6d 0a 20 20 20 20 20 20 20 20 20 20  | ....(setq.search-term........... | 
| e960 |  20 20 20 20 28 72 65 61 64 2d 66 72 6f 6d 2d 6d    69 6e 69 62 75 66 66 65 72 0a 20 20 20 20 20 20  | ....(read-from-minibuffer....... | 
| e980 |  20 20 20 20 20 20 20 20 20 70 72 6f 6d 70 74 20    6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 27 64 65 61  | .........prompt.nil.nil.nil.'dea | 
| e9a0 |  64 67 72 65 70 2d 68 69 73 74 6f 72 79 20 73 79    6d 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20  | dgrep-history.sym-name))........ | 
| e9c0 |  20 28 77 68 65 6e 20 28 65 71 75 61 6c 20 73 65    61 72 63 68 2d 74 65 72 6d 20 22 22 29 0a 20 20  | .(when.(equal.search-term."")... | 
| e9e0 |  20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 65    61 72 63 68 2d 74 65 72 6d 20 73 79 6d 2d 6e 61  | ........(setq.search-term.sym-na | 
| ea00 |  6d 65 29 29 29 29 0a 20 20 20 20 28 75 6e 6c 65    73 73 20 28 65 71 75 61 6c 20 28 63 61 72 20 64  | me)))).....(unless.(equal.(car.d | 
| ea20 |  65 61 64 67 72 65 70 2d 68 69 73 74 6f 72 79 29    20 73 65 61 72 63 68 2d 74 65 72 6d 29 0a 20 20  | eadgrep-history).search-term)... | 
| ea40 |  20 20 20 20 28 70 75 73 68 20 73 65 61 72 63 68    2d 74 65 72 6d 20 64 65 61 64 67 72 65 70 2d 68  | ....(push.search-term.deadgrep-h | 
| ea60 |  69 73 74 6f 72 79 29 29 0a 20 20 20 20 73 65 61    72 63 68 2d 74 65 72 6d 29 29 0a 0a 28 64 65 66  | istory)).....search-term))..(def | 
| ea80 |  75 6e 20 64 65 61 64 67 72 65 70 2d 69 6e 63 72    65 6d 65 6e 74 61 6c 20 28 29 0a 20 20 28 69 6e  | un.deadgrep-incremental.()...(in | 
| eaa0 |  74 65 72 61 63 74 69 76 65 29 0a 20 20 28 63 61    74 63 68 20 27 62 72 65 61 6b 0a 20 20 20 20 28  | teractive)...(catch.'break.....( | 
| eac0 |  6c 65 74 20 28 28 64 65 61 64 67 72 65 70 2d 2d    69 6e 63 72 65 6d 65 6e 74 61 6c 2d 61 63 74 69  | let.((deadgrep--incremental-acti | 
| eae0 |  76 65 20 74 29 0a 20 20 20 20 20 20 20 20 20 20    28 73 65 61 72 63 68 2d 74 65 72 6d 20 28 6f 72  | ve.t)...........(search-term.(or | 
| eb00 |  20 64 65 61 64 67 72 65 70 2d 2d 73 65 61 72 63    68 2d 74 65 72 6d 20 22 22 29 29 29 0a 20 20 20  | .deadgrep--search-term.""))).... | 
| eb20 |  20 20 20 28 77 68 69 6c 65 20 74 0a 20 20 20 20    20 20 20 20 28 6c 65 74 20 28 28 6e 65 78 74 2d  | ...(while.t.........(let.((next- | 
| eb40 |  63 68 61 72 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 72 65 61 64 2d 63 68 61 72 0a 20  | char................(read-char.. | 
| eb60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b    3b 20 54 4f 44 4f 3a 20 55 73 65 20 74 68 65 20  | ...............;;.TODO:.Use.the. | 
| eb80 |  73 61 6d 65 20 70 72 6f 6d 70 74 20 66 6f 72 6d    61 74 20 61 73 20 6f 74 68 65 72 20 73 65 61 72  | same.prompt.format.as.other.sear | 
| eba0 |  63 68 20 6f 70 74 69 6f 6e 73 2e 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72  | ch.options..................(for | 
| ebc0 |  6d 61 74 20 22 25 73 20 25 73 22 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | mat."%s.%s"..................... | 
| ebe0 |  20 20 20 20 28 61 70 70 6c 79 20 23 27 70 72 6f    70 65 72 74 69 7a 65 20 22 49 6e 63 72 65 6d 65  | ....(apply.#'propertize."Increme | 
| ec00 |  6e 74 61 6c 20 53 65 61 72 63 68 20 28 52 45 54    20 77 68 65 6e 20 64 6f 6e 65 29 3a 22 20 6d 69  | ntal.Search.(RET.when.done):".mi | 
| ec20 |  6e 69 62 75 66 66 65 72 2d 70 72 6f 6d 70 74 2d    70 72 6f 70 65 72 74 69 65 73 29 0a 20 20 20 20  | nibuffer-prompt-properties)..... | 
| ec40 |  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 2d 74 65 72 6d 29  | ....................search-term) | 
| ec60 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63    6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 28  | )))...........(cond............( | 
| ec80 |  28 65 71 20 6e 65 78 74 2d 63 68 61 72 20 3f 5c    43 2d 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20  | (eq.next-char.?\C-m)............ | 
| eca0 |  20 28 74 68 72 6f 77 20 27 62 72 65 61 6b 20 6e    69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | .(throw.'break.nil))............ | 
| ecc0 |  28 28 65 71 20 6e 65 78 74 2d 63 68 61 72 20 3f    5c 43 2d 3f 29 0a 20 20 20 20 20 20 20 20 20 20  | ((eq.next-char.?\C-?)........... | 
| ece0 |  20 20 28 73 65 74 71 20 73 65 61 72 63 68 2d 74    65 72 6d 20 28 73 2d 6c 65 66 74 20 2d 31 20 73  | ..(setq.search-term.(s-left.-1.s | 
| ed00 |  65 61 72 63 68 2d 74 65 72 6d 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20  | earch-term)))............(t..... | 
| ed20 |  20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 65    61 72 63 68 2d 74 65 72 6d 20 28 63 6f 6e 63 61  | ........(setq.search-term.(conca | 
| ed40 |  74 20 73 65 61 72 63 68 2d 74 65 72 6d 20 28 6c    69 73 74 20 6e 65 78 74 2d 63 68 61 72 29 29 29  | t.search-term.(list.next-char))) | 
| ed60 |  29 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65    6e 20 28 3e 20 28 6c 65 6e 67 74 68 20 73 65 61  | ))).........(when.(>.(length.sea | 
| ed80 |  72 63 68 2d 74 65 72 6d 29 20 32 29 0a 20 20 20    20 20 20 20 20 20 20 28 73 65 74 71 20 64 65 61  | rch-term).2)...........(setq.dea | 
| eda0 |  64 67 72 65 70 2d 2d 73 65 61 72 63 68 2d 74 65    72 6d 20 73 65 61 72 63 68 2d 74 65 72 6d 29 0a  | dgrep--search-term.search-term). | 
| edc0 |  20 20 20 20 20 20 20 20 20 20 28 64 65 61 64 67    72 65 70 2d 72 65 73 74 61 72 74 29 29 29 29 29  | ..........(deadgrep-restart))))) | 
| ede0 |  29 0a 0a 0a 28 64 65 66 75 6e 20 64 65 61 64 67    72 65 70 2d 2d 6e 6f 72 6d 61 6c 69 73 65 2d 64  | )...(defun.deadgrep--normalise-d | 
| ee00 |  69 72 6e 61 6d 65 20 28 70 61 74 68 29 0a 20 20    22 45 78 70 61 6e 64 20 50 41 54 48 20 61 6e 64  | irname.(path)..."Expand.PATH.and | 
| ee20 |  20 65 6e 73 75 72 65 20 74 68 61 74 20 69 74 20    64 6f 65 73 6e 27 74 20 65 6e 64 20 77 69 74 68  | .ensure.that.it.doesn't.end.with | 
| ee40 |  20 61 20 73 6c 61 73 68 2e 0a 49 66 20 50 41 54    48 20 69 73 20 72 65 6d 6f 74 65 20 70 61 74 68  | .a.slash..If.PATH.is.remote.path | 
| ee60 |  2c 20 69 74 20 69 73 20 6e 6f 74 20 65 78 70 61    6e 64 65 64 2e 22 0a 20 20 28 64 69 72 65 63 74  | ,.it.is.not.expanded."...(direct | 
| ee80 |  6f 72 79 2d 66 69 6c 65 2d 6e 61 6d 65 20 28 69    66 20 28 66 69 6c 65 2d 72 65 6d 6f 74 65 2d 70  | ory-file-name.(if.(file-remote-p | 
| eea0 |  20 70 61 74 68 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  | .path).......................... | 
| eec0 |  20 20 70 61 74 68 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  | ..path.......................... | 
| eee0 |  28 6c 65 74 20 28 66 69 6c 65 2d 6e 61 6d 65 2d    68 61 6e 64 6c 65 72 2d 61 6c 69 73 74 29 0a 20  | (let.(file-name-handler-alist).. | 
| ef00 |  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 65 78 70 61 6e  | ..........................(expan | 
| ef20 |  64 2d 66 69 6c 65 2d 6e 61 6d 65 20 70 61 74 68    29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65  | d-file-name.path)))))..(defun.de | 
| ef40 |  61 64 67 72 65 70 2d 2d 6c 6f 6f 6b 75 70 2d 6f    76 65 72 72 69 64 65 20 28 70 61 74 68 29 0a 20  | adgrep--lookup-override.(path).. | 
| ef60 |  20 22 49 66 20 50 41 54 48 20 69 73 20 70 72 65    73 65 6e 74 20 69 6e 20 60 64 65 61 64 67 72 65  | ."If.PATH.is.present.in.`deadgre | 
| ef80 |  70 2d 70 72 6f 6a 65 63 74 2d 72 6f 6f 74 2d 6f    76 65 72 72 69 64 65 73 27 2c 0a 72 65 74 75 72  | p-project-root-overrides',.retur | 
| efa0 |  6e 20 74 68 65 20 6f 76 65 72 72 69 64 64 65 6e    20 76 61 6c 75 65 2e 0a 4f 74 68 65 72 77 69 73  | n.the.overridden.value..Otherwis | 
| efc0 |  65 2c 20 72 65 74 75 72 6e 20 50 41 54 48 20 61    73 20 69 73 2e 22 0a 20 20 28 6c 65 74 2a 20 28  | e,.return.PATH.as.is."...(let*.( | 
| efe0 |  28 6e 6f 72 6d 61 6c 69 73 65 64 2d 70 61 74 68    20 28 64 65 61 64 67 72 65 70 2d 2d 6e 6f 72 6d  | (normalised-path.(deadgrep--norm | 
| f000 |  61 6c 69 73 65 2d 64 69 72 6e 61 6d 65 20 70 61    74 68 29 29 0a 20 20 20 20 20 20 20 20 20 28 6f  | alise-dirname.path))..........(o | 
| f020 |  76 65 72 72 69 64 65 0a 20 20 20 20 20 20 20 20    20 20 28 2d 66 69 72 73 74 0a 20 20 20 20 20 20  | verride...........(-first....... | 
| f040 |  20 20 20 20 20 28 2d 6c 61 6d 62 64 61 20 28 28    6f 72 69 67 69 6e 61 6c 20 2e 20 5f 29 29 0a 20  | .....(-lambda.((original..._)).. | 
| f060 |  20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 75    61 6c 20 28 64 65 61 64 67 72 65 70 2d 2d 6e 6f  | ............(equal.(deadgrep--no | 
| f080 |  72 6d 61 6c 69 73 65 2d 64 69 72 6e 61 6d 65 20    6f 72 69 67 69 6e 61 6c 29 20 6e 6f 72 6d 61 6c  | rmalise-dirname.original).normal | 
| f0a0 |  69 73 65 64 2d 70 61 74 68 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 64 65 61 64 67 72 65 70 2d  | ised-path))............deadgrep- | 
| f0c0 |  70 72 6f 6a 65 63 74 2d 72 6f 6f 74 2d 6f 76 65    72 72 69 64 65 73 29 29 29 0a 20 20 20 20 28 77  | project-root-overrides))).....(w | 
| f0e0 |  68 65 6e 20 6f 76 65 72 72 69 64 65 0a 20 20 20    20 20 20 28 73 65 74 71 20 70 61 74 68 20 28 63  | hen.override.......(setq.path.(c | 
| f100 |  64 72 20 6f 76 65 72 72 69 64 65 29 29 0a 20 20    20 20 20 20 28 75 6e 6c 65 73 73 20 28 73 74 72  | dr.override)).......(unless.(str | 
| f120 |  69 6e 67 70 20 70 61 74 68 29 0a 20 20 20 20 20    20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22  | ingp.path).........(user-error." | 
| f140 |  42 61 64 20 6f 76 65 72 72 69 64 65 3a 20 65 78    70 65 63 74 65 64 20 61 20 70 61 74 68 20 73 74  | Bad.override:.expected.a.path.st | 
| f160 |  72 69 6e 67 2c 20 62 75 74 20 67 6f 74 3a 20 25    53 22 20 70 61 74 68 29 29 0a 20 20 20 20 20 20  | ring,.but.got:.%S".path))....... | 
| f180 |  28 73 65 74 71 20 70 61 74 68 20 28 70 72 6f 70    65 72 74 69 7a 65 20 70 61 74 68 20 27 64 65 61  | (setq.path.(propertize.path.'dea | 
| f1a0 |  64 67 72 65 70 2d 6f 76 65 72 72 69 64 64 65 6e    20 74 29 29 29 0a 20 20 20 20 70 61 74 68 29 29  | dgrep-overridden.t))).....path)) | 
| f1c0 |  0a 0a 28 64 65 66 75 6e 20 64 65 61 64 67 72 65    70 2d 2d 70 72 6f 6a 65 63 74 2d 72 6f 6f 74 20  | ..(defun.deadgrep--project-root. | 
| f1e0 |  28 29 0a 20 20 22 47 75 65 73 73 20 74 68 65 20    70 72 6f 6a 65 63 74 20 72 6f 6f 74 20 6f 66 20  | ()..."Guess.the.project.root.of. | 
| f200 |  74 68 65 20 67 69 76 65 6e 20 46 49 4c 45 2d 50    41 54 48 2e 22 0a 20 20 28 6c 65 74 20 28 28 72  | the.given.FILE-PATH."...(let.((r | 
| f220 |  6f 6f 74 20 64 65 66 61 75 6c 74 2d 64 69 72 65    63 74 6f 72 79 29 0a 20 20 20 20 20 20 20 20 28  | oot.default-directory).........( | 
| f240 |  70 72 6f 6a 65 63 74 20 28 70 72 6f 6a 65 63 74    2d 63 75 72 72 65 6e 74 29 29 29 0a 20 20 20 20  | project.(project-current)))..... | 
| f260 |  28 77 68 65 6e 20 70 72 6f 6a 65 63 74 0a 20 20    20 20 20 20 28 63 6f 6e 64 20 28 28 61 6e 64 20  | (when.project.......(cond.((and. | 
| f280 |  28 66 62 6f 75 6e 64 70 20 27 70 72 6f 6a 65 63    74 2d 72 6f 6f 74 29 0a 20 20 20 20 20 20 20 20  | (fboundp.'project-root)......... | 
| f2a0 |  20 20 20 20 20 20 20 20 20 20 28 3e 3d 20 65 6d    61 63 73 2d 6d 61 6a 6f 72 2d 76 65 72 73 69 6f  | ..........(>=.emacs-major-versio | 
| f2c0 |  6e 20 32 38 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 3b 3b 20 60 70 72 6f 6a 65 63 74 2d  | n.28))..............;;.`project- | 
| f2e0 |  72 6f 6f 74 27 20 77 61 73 20 61 64 64 65 64 20    69 6e 20 45 6d 61 63 73 20 32 38 2c 20 62 75 74  | root'.was.added.in.Emacs.28,.but | 
| f300 |  20 70 72 6f 6a 65 63 74 69 6c 65 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 3b 3b 20 64 65 66 69  | .projectile..............;;.defi | 
| f320 |  6e 65 73 20 69 74 20 75 6e 63 6f 6e 64 69 74 69    6f 6e 61 6c 6c 79 2e 0a 20 20 20 20 20 20 20 20  | nes.it.unconditionally.......... | 
| f340 |  20 20 20 20 20 28 73 65 74 71 20 72 6f 6f 74 20    28 70 72 6f 6a 65 63 74 2d 72 6f 6f 74 20 70 72  | .....(setq.root.(project-root.pr | 
| f360 |  6f 6a 65 63 74 29 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20  | oject))).............(t......... | 
| f380 |  20 20 20 20 20 3b 3b 20 4f 6c 64 65 72 20 45 6d    61 63 73 65 6e 2e 0a 20 20 20 20 20 20 20 20 20  | .....;;.Older.Emacsen........... | 
| f3a0 |  20 20 20 20 28 2d 77 68 65 6e 2d 6c 65 74 20 28    72 6f 6f 74 73 20 28 70 72 6f 6a 65 63 74 2d 72  | ....(-when-let.(roots.(project-r | 
| f3c0 |  6f 6f 74 73 20 70 72 6f 6a 65 63 74 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73  | oots.project))................(s | 
| f3e0 |  65 74 71 20 72 6f 6f 74 20 28 63 61 72 20 72 6f    6f 74 73 29 29 29 29 29 29 0a 20 20 20 20 28 77  | etq.root.(car.roots)))))).....(w | 
| f400 |  68 65 6e 20 72 6f 6f 74 0a 20 20 20 20 20 20 28    64 65 61 64 67 72 65 70 2d 2d 6c 6f 6f 6b 75 70  | hen.root.......(deadgrep--lookup | 
| f420 |  2d 6f 76 65 72 72 69 64 65 20 72 6f 6f 74 29 29    29 29 0a 0a 28 64 65 66 75 6e 20 64 65 61 64 67  | -override.root))))..(defun.deadg | 
| f440 |  72 65 70 2d 2d 77 72 69 74 65 2d 70 6f 73 74 70    6f 6e 65 64 20 28 29 0a 20 20 22 57 72 69 74 65  | rep--write-postponed.()..."Write | 
| f460 |  20 61 20 6d 65 73 73 61 67 65 20 74 6f 20 74 68    65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72  | .a.message.to.the.current.buffer | 
| f480 |  20 69 6e 66 6f 72 6d 69 6e 67 20 74 68 65 20 75    73 65 72 20 74 68 61 74 0a 64 65 61 64 67 72 65  | .informing.the.user.that.deadgre | 
| f4a0 |  70 20 69 73 20 72 65 61 64 79 20 62 75 74 20 6e    6f 74 20 79 65 74 20 73 65 61 72 63 68 69 6e 67  | p.is.ready.but.not.yet.searching | 
| f4c0 |  2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 69 6e 68    69 62 69 74 2d 72 65 61 64 2d 6f 6e 6c 79 20 74  | ."...(let*.((inhibit-read-only.t | 
| f4e0 |  29 0a 20 20 20 20 20 20 20 20 20 28 72 65 73 74    61 72 74 2d 6b 65 79 0a 20 20 20 20 20 20 20 20  | )..........(restart-key......... | 
| f500 |  20 20 28 77 68 65 72 65 2d 69 73 2d 69 6e 74 65    72 6e 61 6c 20 23 27 64 65 61 64 67 72 65 70 2d  | ..(where-is-internal.#'deadgrep- | 
| f520 |  72 65 73 74 61 72 74 20 64 65 61 64 67 72 65 70    2d 6d 6f 64 65 2d 6d 61 70 20 74 29 29 29 0a 20  | restart.deadgrep-mode-map.t))).. | 
| f540 |  20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69    6f 6e 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63  | ...(save-excursion.......(goto-c | 
| f560 |  68 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29    0a 20 20 20 20 20 20 28 69 6e 73 65 72 74 0a 20  | har.(point-max)).......(insert.. | 
| f580 |  20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 50    72 65 73 73 20 25 73 20 74 6f 20 73 74 61 72 74  | ......(format."Press.%s.to.start | 
| f5a0 |  20 74 68 65 20 73 65 61 72 63 68 2e 22 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 65  | .the.search."................(ke | 
| f5c0 |  79 2d 64 65 73 63 72 69 70 74 69 6f 6e 20 72 65    73 74 61 72 74 2d 6b 65 79 29 29 29 29 29 29 0a  | y-description.restart-key)))))). | 
| f5e0 |  0a 28 64 65 66 75 6e 20 64 65 61 64 67 72 65 70    2d 2d 6d 6f 64 65 2d 6c 69 6e 65 20 28 29 0a 20  | .(defun.deadgrep--mode-line.().. | 
| f600 |  20 28 6c 65 74 2a 20 28 28 73 20 28 69 66 20 64    65 61 64 67 72 65 70 2d 2d 72 65 73 75 6c 74 2d  | .(let*.((s.(if.deadgrep--result- | 
| f620 |  63 6f 75 6e 74 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 44  | count.................(format."D | 
| f640 |  65 61 64 67 72 65 70 3a 25 73 22 20 64 65 61 64    67 72 65 70 2d 2d 72 65 73 75 6c 74 2d 63 6f 75  | eadgrep:%s".deadgrep--result-cou | 
| f660 |  6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 22 44 65 61 64 67 72 65 70 22 29 29 0a 20  | nt)..............."Deadgrep")).. | 
| f680 |  20 20 20 20 20 20 20 20 28 73 70 69 6e 6e 65 72    2d 73 74 72 20 28 73 70 69 6e 6e 65 72 2d 70 72  | ........(spinner-str.(spinner-pr | 
| f6a0 |  69 6e 74 20 64 65 61 64 67 72 65 70 2d 2d 73 70    69 6e 6e 65 72 29 29 29 0a 20 20 20 20 28 69 66  | int.deadgrep--spinner))).....(if | 
| f6c0 |  20 73 70 69 6e 6e 65 72 2d 73 74 72 0a 20 20 20    20 20 20 20 20 28 63 6f 6e 63 61 74 20 73 20 22  | .spinner-str.........(concat.s." | 
| f6e0 |  20 22 20 73 70 69 6e 6e 65 72 2d 73 74 72 29 0a    20 20 20 20 20 20 73 29 29 29 0a 0a 28 64 65 66  | .".spinner-str).......s)))..(def | 
| f700 |  75 6e 20 64 65 61 64 67 72 65 70 2d 2d 63 72 65    61 74 65 2d 69 6d 65 6e 75 2d 69 6e 64 65 78 20  | un.deadgrep--create-imenu-index. | 
| f720 |  28 29 0a 20 20 22 43 72 65 61 74 65 20 60 69 6d    65 6e 75 27 20 69 6e 64 65 78 20 66 6f 72 20 6d  | ()..."Create.`imenu'.index.for.m | 
| f740 |  61 74 63 68 65 64 20 66 69 6c 65 73 2e 22 0a 20    20 28 77 68 65 6e 20 64 65 61 64 67 72 65 70 2d  | atched.files."...(when.deadgrep- | 
| f760 |  2d 69 6d 65 6e 75 2d 61 6c 69 73 74 0a 20 20 20    20 28 6c 69 73 74 20 28 63 6f 6e 73 20 22 46 69  | -imenu-alist.....(list.(cons."Fi | 
| f780 |  6c 65 73 22 20 28 72 65 76 65 72 73 65 20 64 65    61 64 67 72 65 70 2d 2d 69 6d 65 6e 75 2d 61 6c  | les".(reverse.deadgrep--imenu-al | 
| f7a0 |  69 73 74 29 29 29 29 29 0a 0a 3b 3b 3b 23 23 23    61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20  | ist)))))..;;;###autoload.(defun. | 
| f7c0 |  64 65 61 64 67 72 65 70 20 28 73 65 61 72 63 68    2d 74 65 72 6d 20 26 6f 70 74 69 6f 6e 61 6c 20  | deadgrep.(search-term.&optional. | 
| f7e0 |  64 69 72 65 63 74 6f 72 79 29 0a 20 20 22 53 74    61 72 74 20 61 20 72 69 70 67 72 65 70 20 73 65  | directory)..."Start.a.ripgrep.se | 
| f800 |  61 72 63 68 20 66 6f 72 20 53 45 41 52 43 48 2d    54 45 52 4d 20 69 6e 20 44 49 52 45 43 54 4f 52  | arch.for.SEARCH-TERM.in.DIRECTOR | 
| f820 |  59 2e 0a 0a 49 66 20 6e 6f 74 20 70 72 6f 76 69    64 65 64 2c 20 44 49 52 20 64 65 66 61 75 6c 74  | Y...If.not.provided,.DIR.default | 
| f840 |  73 20 74 6f 20 74 68 65 20 64 69 72 65 63 74 6f    72 79 20 61 73 20 64 65 74 65 72 6d 69 6e 65 64  | s.to.the.directory.as.determined | 
| f860 |  20 62 79 0a 60 64 65 61 64 67 72 65 70 2d 70 72    6f 6a 65 63 74 2d 72 6f 6f 74 2d 66 75 6e 63 74  | .by.`deadgrep-project-root-funct | 
| f880 |  69 6f 6e 27 2e 0a 0a 53 65 65 20 61 6c 73 6f 20    60 64 65 61 64 67 72 65 70 2d 70 72 6f 6a 65 63  | ion'...See.also.`deadgrep-projec | 
| f8a0 |  74 2d 72 6f 6f 74 2d 6f 76 65 72 72 69 64 65 73    27 2e 0a 0a 49 66 20 63 61 6c 6c 65 64 20 77 69  | t-root-overrides'...If.called.wi | 
| f8c0 |  74 68 20 61 20 70 72 65 66 69 78 20 61 72 67 75    6d 65 6e 74 2c 20 63 72 65 61 74 65 20 74 68 65  | th.a.prefix.argument,.create.the | 
| f8e0 |  20 72 65 73 75 6c 74 73 20 62 75 66 66 65 72 20    62 75 74 0a 64 6f 6e 27 74 20 61 63 74 75 61 6c  | .results.buffer.but.don't.actual | 
| f900 |  6c 79 20 73 74 61 72 74 20 74 68 65 20 73 65 61    72 63 68 2e 22 0a 20 20 28 69 6e 74 65 72 61 63  | ly.start.the.search."...(interac | 
| f920 |  74 69 76 65 20 28 6c 69 73 74 20 28 64 65 61 64    67 72 65 70 2d 2d 72 65 61 64 2d 73 65 61 72 63  | tive.(list.(deadgrep--read-searc | 
| f940 |  68 2d 74 65 72 6d 29 29 29 0a 20 20 28 6c 65 74    2a 20 28 28 64 69 72 20 28 6f 72 20 64 69 72 65  | h-term)))...(let*.((dir.(or.dire | 
| f960 |  63 74 6f 72 79 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c  | ctory...................(funcall | 
| f980 |  20 64 65 61 64 67 72 65 70 2d 70 72 6f 6a 65 63    74 2d 72 6f 6f 74 2d 66 75 6e 63 74 69 6f 6e 29  | .deadgrep-project-root-function) | 
| f9a0 |  29 29 0a 20 20 20 20 20 20 20 20 20 28 62 75 66    20 28 64 65 61 64 67 72 65 70 2d 2d 62 75 66 66  | ))..........(buf.(deadgrep--buff | 
| f9c0 |  65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 73 65 61 72 63 68 2d 74 65 72 6d 0a 20 20  | er................search-term... | 
| f9e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 72    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .............dir................ | 
| fa00 |  28 6f 72 20 64 65 61 64 67 72 65 70 2d 2d 69 6e    69 74 69 61 6c 2d 66 69 6c 65 6e 61 6d 65 0a 20  | (or.deadgrep--initial-filename.. | 
| fa20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e  | ..................(buffer-file-n | 
| fa40 |  61 6d 65 29 29 29 29 0a 20 20 20 20 20 20 20 20    20 28 6c 61 73 74 2d 72 65 73 75 6c 74 73 2d 62  | ame))))..........(last-results-b | 
| fa60 |  75 66 20 28 63 61 72 2d 73 61 66 65 20 28 64 65    61 64 67 72 65 70 2d 2d 62 75 66 66 65 72 73 29  | uf.(car-safe.(deadgrep--buffers) | 
| fa80 |  29 29 0a 20 20 20 20 20 20 20 20 20 70 72 65 76    2d 73 65 61 72 63 68 2d 74 79 70 65 0a 20 20 20  | ))..........prev-search-type.... | 
| faa0 |  20 20 20 20 20 20 70 72 65 76 2d 73 65 61 72 63    68 2d 63 61 73 65 0a 20 20 20 20 20 20 20 20 20  | ......prev-search-case.......... | 
| fac0 |  70 72 65 76 2d 73 6b 69 70 2d 69 66 2d 68 69 64    64 65 6e 0a 20 20 20 20 20 20 20 20 20 70 72 65  | prev-skip-if-hidden..........pre | 
| fae0 |  76 2d 73 6b 69 70 2d 69 66 2d 76 63 73 2d 69 67    6e 6f 72 65 29 0a 20 20 20 20 3b 3b 20 46 69 6e  | v-skip-if-vcs-ignore).....;;.Fin | 
| fb00 |  64 20 6f 75 74 20 77 68 61 74 20 73 65 61 72 63    68 20 73 65 74 74 69 6e 67 73 20 77 65 72 65 20  | d.out.what.search.settings.were. | 
| fb20 |  75 73 65 64 20 6c 61 73 74 20 74 69 6d 65 2e 0a    20 20 20 20 28 77 68 65 6e 20 6c 61 73 74 2d 72  | used.last.time......(when.last-r | 
| fb40 |  65 73 75 6c 74 73 2d 62 75 66 0a 20 20 20 20 20    20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62  | esults-buf.......(with-current-b | 
| fb60 |  75 66 66 65 72 20 6c 61 73 74 2d 72 65 73 75 6c    74 73 2d 62 75 66 0a 20 20 20 20 20 20 20 20 28  | uffer.last-results-buf.........( | 
| fb80 |  73 65 74 71 20 70 72 65 76 2d 73 65 61 72 63 68    2d 74 79 70 65 20 64 65 61 64 67 72 65 70 2d 2d  | setq.prev-search-type.deadgrep-- | 
| fba0 |  73 65 61 72 63 68 2d 74 79 70 65 29 0a 20 20 20    20 20 20 20 20 28 73 65 74 71 20 70 72 65 76 2d  | search-type).........(setq.prev- | 
| fbc0 |  73 65 61 72 63 68 2d 63 61 73 65 20 64 65 61 64    67 72 65 70 2d 2d 73 65 61 72 63 68 2d 63 61 73  | search-case.deadgrep--search-cas | 
| fbe0 |  65 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71    20 70 72 65 76 2d 73 6b 69 70 2d 69 66 2d 68 69  | e).........(setq.prev-skip-if-hi | 
| fc00 |  64 64 65 6e 20 64 65 61 64 67 72 65 70 2d 2d 73    6b 69 70 2d 69 66 2d 68 69 64 64 65 6e 29 0a 20  | dden.deadgrep--skip-if-hidden).. | 
| fc20 |  20 20 20 20 20 20 20 28 73 65 74 71 20 70 72 65    76 2d 73 6b 69 70 2d 69 66 2d 76 63 73 2d 69 67  | .......(setq.prev-skip-if-vcs-ig | 
| fc40 |  6e 6f 72 65 20 64 65 61 64 67 72 65 70 2d 2d 73    6b 69 70 2d 69 66 2d 76 63 73 2d 69 67 6e 6f 72  | nore.deadgrep--skip-if-vcs-ignor | 
| fc60 |  65 29 29 29 0a 0a 20 20 20 20 28 66 75 6e 63 61    6c 6c 20 64 65 61 64 67 72 65 70 2d 64 69 73 70  | e)))......(funcall.deadgrep-disp | 
| fc80 |  6c 61 79 2d 62 75 66 66 65 72 2d 66 75 6e 63 74    69 6f 6e 20 62 75 66 29 0a 0a 20 20 20 20 28 77  | lay-buffer-function.buf)......(w | 
| fca0 |  69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66    65 72 20 62 75 66 0a 20 20 20 20 20 20 28 73 65  | ith-current-buffer.buf.......(se | 
| fcc0 |  74 71 20 69 6d 65 6e 75 2d 63 72 65 61 74 65 2d    69 6e 64 65 78 2d 66 75 6e 63 74 69 6f 6e 20 23  | tq.imenu-create-index-function.# | 
| fce0 |  27 64 65 61 64 67 72 65 70 2d 2d 63 72 65 61 74    65 2d 69 6d 65 6e 75 2d 69 6e 64 65 78 29 0a 20  | 'deadgrep--create-imenu-index).. | 
| fd00 |  20 20 20 20 20 28 73 65 74 71 20 6e 65 78 74 2d    65 72 72 6f 72 2d 66 75 6e 63 74 69 6f 6e 20 23  | .....(setq.next-error-function.# | 
| fd20 |  27 64 65 61 64 67 72 65 70 2d 6e 65 78 74 2d 65    72 72 6f 72 29 0a 20 20 20 20 20 20 28 73 65 74  | 'deadgrep-next-error).......(set | 
| fd40 |  71 20 6e 65 78 74 2d 65 72 72 6f 72 2d 6c 61 73    74 2d 62 75 66 66 65 72 20 62 75 66 29 0a 0a 20  | q.next-error-last-buffer.buf)... | 
| fd60 |  20 20 20 20 20 3b 3b 20 49 66 20 77 65 20 68 61    76 65 20 70 72 65 76 69 6f 75 73 20 73 65 61 72  | .....;;.If.we.have.previous.sear | 
| fd80 |  63 68 20 73 65 74 74 69 6e 67 73 2c 20 61 70 70    6c 79 20 74 68 65 6d 20 74 6f 20 6f 75 72 20 6e  | ch.settings,.apply.them.to.our.n | 
| fda0 |  65 77 0a 20 20 20 20 20 20 3b 3b 20 73 65 61 72    63 68 20 72 65 73 75 6c 74 73 20 62 75 66 66 65  | ew.......;;.search.results.buffe | 
| fdc0 |  72 2e 0a 20 20 20 20 20 20 28 77 68 65 6e 20 6c    61 73 74 2d 72 65 73 75 6c 74 73 2d 62 75 66 0a  | r........(when.last-results-buf. | 
| fde0 |  20 20 20 20 20 20 20 20 28 73 65 74 71 20 64 65    61 64 67 72 65 70 2d 2d 73 65 61 72 63 68 2d 74  | ........(setq.deadgrep--search-t | 
| fe00 |  79 70 65 20 70 72 65 76 2d 73 65 61 72 63 68 2d    74 79 70 65 29 0a 20 20 20 20 20 20 20 20 28 73  | ype.prev-search-type).........(s | 
| fe20 |  65 74 71 20 64 65 61 64 67 72 65 70 2d 2d 73 65    61 72 63 68 2d 63 61 73 65 20 70 72 65 76 2d 73  | etq.deadgrep--search-case.prev-s | 
| fe40 |  65 61 72 63 68 2d 63 61 73 65 29 0a 20 20 20 20    20 20 20 20 28 73 65 74 71 20 64 65 61 64 67 72  | earch-case).........(setq.deadgr | 
| fe60 |  65 70 2d 2d 73 6b 69 70 2d 69 66 2d 68 69 64 64    65 6e 20 70 72 65 76 2d 73 6b 69 70 2d 69 66 2d  | ep--skip-if-hidden.prev-skip-if- | 
| fe80 |  68 69 64 64 65 6e 29 0a 20 20 20 20 20 20 20 20    28 73 65 74 71 20 64 65 61 64 67 72 65 70 2d 2d  | hidden).........(setq.deadgrep-- | 
| fea0 |  73 6b 69 70 2d 69 66 2d 76 63 73 2d 69 67 6e 6f    72 65 20 70 72 65 76 2d 73 6b 69 70 2d 69 66 2d  | skip-if-vcs-ignore.prev-skip-if- | 
| fec0 |  76 63 73 2d 69 67 6e 6f 72 65 29 29 0a 0a 20 20    20 20 20 20 28 64 65 61 64 67 72 65 70 2d 2d 77  | vcs-ignore))........(deadgrep--w | 
| fee0 |  72 69 74 65 2d 68 65 61 64 69 6e 67 29 0a 0a 20    20 20 20 20 20 28 69 66 20 63 75 72 72 65 6e 74  | rite-heading)........(if.current | 
| ff00 |  2d 70 72 65 66 69 78 2d 61 72 67 0a 20 20 20 20    20 20 20 20 20 20 3b 3b 20 44 6f 6e 27 74 20 73  | -prefix-arg...........;;.Don't.s | 
| ff20 |  74 61 72 74 20 74 68 65 20 73 65 61 72 63 68 2c    20 6a 75 73 74 20 63 72 65 61 74 65 20 74 68 65  | tart.the.search,.just.create.the | 
| ff40 |  20 62 75 66 66 65 72 20 61 6e 64 20 69 6e 66 6f    72 6d 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20  | .buffer.and.inform...........;;. | 
| ff60 |  74 68 65 20 75 73 65 72 20 68 6f 77 20 74 6f 20    73 74 61 72 74 20 77 68 65 6e 20 74 68 65 79 27  | the.user.how.to.start.when.they' | 
| ff80 |  72 65 20 72 65 61 64 79 2e 0a 20 20 20 20 20 20    20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20  | re.ready............(progn...... | 
| ffa0 |  20 20 20 20 20 20 20 28 73 65 74 71 20 64 65 61    64 67 72 65 70 2d 2d 70 6f 73 74 70 6f 6e 65 2d  | .......(setq.deadgrep--postpone- | 
| ffc0 |  73 74 61 72 74 20 74 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 28 64 65 61 64 67 72 65 70 2d 2d  | start.t).............(deadgrep-- | 
| ffe0 |  77 72 69 74 65 2d 70 6f 73 74 70 6f 6e 65 64 29    29 0a 20 20 20 20 20 20 20 20 3b 3b 20 53 74 61  | write-postponed)).........;;.Sta | 
| 10000 |  72 74 20 74 68 65 20 73 65 61 72 63 68 20 69 6d    6d 65 64 69 61 74 65 6c 79 2e 0a 20 20 20 20 20  | rt.the.search.immediately....... | 
| 10020 |  20 20 20 28 64 65 61 64 67 72 65 70 2d 2d 73 74    61 72 74 0a 20 20 20 20 20 20 20 20 20 73 65 61  | ...(deadgrep--start..........sea | 
| 10040 |  72 63 68 2d 74 65 72 6d 0a 20 20 20 20 20 20 20    20 20 64 65 61 64 67 72 65 70 2d 2d 73 65 61 72  | rch-term..........deadgrep--sear | 
| 10060 |  63 68 2d 74 79 70 65 0a 20 20 20 20 20 20 20 20    20 64 65 61 64 67 72 65 70 2d 2d 73 65 61 72 63  | ch-type..........deadgrep--searc | 
| 10080 |  68 2d 63 61 73 65 29 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 64 65 61 64 67 72 65 70 2d 6e 65 78  | h-case)))))..(defun.deadgrep-nex | 
| 100a0 |  74 2d 65 72 72 6f 72 20 28 61 72 67 20 72 65 73    65 74 29 0a 20 20 22 4d 6f 76 65 20 74 6f 20 74  | t-error.(arg.reset)..."Move.to.t | 
| 100c0 |  68 65 20 6e 65 78 74 20 65 72 72 6f 72 2e 0a 49    66 20 41 52 47 20 69 73 20 67 69 76 65 6e 2c 20  | he.next.error..If.ARG.is.given,. | 
| 100e0 |  6d 6f 76 65 20 62 79 20 74 68 61 74 20 6d 61 6e    79 20 65 72 72 6f 72 73 2e 0a 0a 54 68 69 73 20  | move.by.that.many.errors...This. | 
| 10100 |  69 73 20 69 6e 74 65 6e 64 65 64 20 66 6f 72 20    75 73 65 20 77 69 74 68 20 60 6e 65 78 74 2d 65  | is.intended.for.use.with.`next-e | 
| 10120 |  72 72 6f 72 2d 66 75 6e 63 74 69 6f 6e 27 2c 20    77 68 69 63 68 20 73 65 65 2e 22 0a 20 20 28 77  | rror-function',.which.see."...(w | 
| 10140 |  68 65 6e 20 72 65 73 65 74 0a 20 20 20 20 28 67    6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d  | hen.reset.....(goto-char.(point- | 
| 10160 |  6d 69 6e 29 29 29 0a 20 20 28 62 65 67 69 6e 6e    69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 28  | min)))...(beginning-of-line)...( | 
| 10180 |  6c 65 74 20 28 28 64 69 72 65 63 74 69 6f 6e 20    28 3e 20 61 72 67 20 30 29 29 29 0a 20 20 20 20  | let.((direction.(>.arg.0)))..... | 
| 101a0 |  28 73 65 74 71 20 61 72 67 20 28 61 62 73 20 61    72 67 29 29 0a 0a 20 20 20 20 28 77 68 69 6c 65  | (setq.arg.(abs.arg))......(while | 
| 101c0 |  20 28 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20    20 20 28 6e 6f 74 20 28 7a 65 72 6f 70 20 61 72  | .(and.............(not.(zerop.ar | 
| 101e0 |  67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    28 6e 6f 74 20 28 65 6f 62 70 29 29 29 0a 20 20  | g)).............(not.(eobp)))... | 
| 10200 |  20 20 20 20 28 69 66 20 64 69 72 65 63 74 69 6f    6e 0a 20 20 20 20 20 20 20 20 20 20 28 66 6f 72  | ....(if.direction...........(for | 
| 10220 |  77 61 72 64 2d 6c 69 6e 65 20 31 29 0a 20 20 20    20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 6c 69  | ward-line.1).........(forward-li | 
| 10240 |  6e 65 20 2d 31 29 29 0a 20 20 20 20 20 20 3b 3b    20 49 66 20 77 65 20 61 72 65 20 6f 6e 20 61 20  | ne.-1)).......;;.If.we.are.on.a. | 
| 10260 |  73 70 65 63 69 66 69 63 20 72 65 73 75 6c 74 20    28 6e 6f 74 20 61 20 68 65 61 64 69 6e 67 29 2c  | specific.result.(not.a.heading), | 
| 10280 |  20 77 65 20 68 61 76 65 20 61 20 6c 69 6e 65 0a    20 20 20 20 20 20 3b 3b 20 6e 75 6d 62 65 72 2e  | .we.have.a.line.......;;.number. | 
| 102a0 |  0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 67 65    74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20  | .......(when.(get-text-property. | 
| 102c0 |  28 70 6f 69 6e 74 29 20 27 64 65 61 64 67 72 65    70 2d 6c 69 6e 65 2d 6e 75 6d 62 65 72 29 0a 20  | (point).'deadgrep-line-number).. | 
| 102e0 |  20 20 20 20 20 20 20 28 63 6c 2d 64 65 63 66 20    61 72 67 29 29 29 29 0a 20 20 28 64 65 61 64 67  | .......(cl-decf.arg))))...(deadg | 
| 10300 |  72 65 70 2d 76 69 73 69 74 2d 72 65 73 75 6c 74    2d 6f 74 68 65 72 2d 77 69 6e 64 6f 77 29 29 0a  | rep-visit-result-other-window)). | 
| 10320 |  0a 28 64 65 66 75 6e 20 64 65 61 64 67 72 65 70    2d 64 65 62 75 67 20 28 29 0a 20 20 22 53 68 6f  | .(defun.deadgrep-debug.()..."Sho | 
| 10340 |  77 20 61 20 62 75 66 66 65 72 20 77 69 74 68 20    73 6f 6d 65 20 64 65 62 75 67 20 69 6e 66 6f 72  | w.a.buffer.with.some.debug.infor | 
| 10360 |  6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68 65    20 63 75 72 72 65 6e 74 20 73 65 61 72 63 68 2e  | mation.about.the.current.search. | 
| 10380 |  22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    29 0a 20 20 28 75 6e 6c 65 73 73 20 28 65 71 20  | "...(interactive)...(unless.(eq. | 
| 103a0 |  6d 61 6a 6f 72 2d 6d 6f 64 65 20 27 64 65 61 64    67 72 65 70 2d 6d 6f 64 65 29 0a 20 20 20 20 28  | major-mode.'deadgrep-mode).....( | 
| 103c0 |  75 73 65 72 2d 65 72 72 6f 72 20 22 64 65 61 64    67 72 65 70 2d 64 65 62 75 67 20 73 68 6f 75 6c  | user-error."deadgrep-debug.shoul | 
| 103e0 |  64 20 62 65 20 72 75 6e 20 69 6e 20 61 20 64 65    61 64 67 72 65 70 20 72 65 73 75 6c 74 73 20 62  | d.be.run.in.a.deadgrep.results.b | 
| 10400 |  75 66 66 65 72 22 29 29 0a 0a 20 20 28 6c 65 74    20 28 28 63 6f 6d 6d 61 6e 64 20 64 65 61 64 67  | uffer"))....(let.((command.deadg | 
| 10420 |  72 65 70 2d 2d 64 65 62 75 67 2d 63 6f 6d 6d 61    6e 64 29 0a 20 20 20 20 20 20 20 20 28 6f 75 74  | rep--debug-command).........(out | 
| 10440 |  70 75 74 20 64 65 61 64 67 72 65 70 2d 2d 64 65    62 75 67 2d 66 69 72 73 74 2d 6f 75 74 70 75 74  | put.deadgrep--debug-first-output | 
| 10460 |  29 0a 20 20 20 20 20 20 20 20 28 62 75 66 20 28    67 65 74 2d 62 75 66 66 65 72 2d 63 72 65 61 74  | ).........(buf.(get-buffer-creat | 
| 10480 |  65 20 22 2a 64 65 61 64 67 72 65 70 20 64 65 62    75 67 2a 22 29 29 0a 20 20 20 20 20 20 20 20 28  | e."*deadgrep.debug*")).........( | 
| 104a0 |  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 28 70 6f 70 2d 74  | inhibit-read-only.t)).....(pop-t | 
| 104c0 |  6f 2d 62 75 66 66 65 72 20 62 75 66 29 0a 20 20    20 20 28 65 72 61 73 65 2d 62 75 66 66 65 72 29  | o-buffer.buf).....(erase-buffer) | 
| 104e0 |  0a 20 20 20 20 28 73 70 65 63 69 61 6c 2d 6d 6f    64 65 29 0a 20 20 20 20 28 73 65 74 71 20 62 75  | .....(special-mode).....(setq.bu | 
| 10500 |  66 66 65 72 2d 72 65 61 64 2d 6f 6e 6c 79 20 74    29 0a 0a 20 20 20 20 28 69 6e 73 65 72 74 0a 20  | ffer-read-only.t)......(insert.. | 
| 10520 |  20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65 0a    20 20 20 20 20 20 22 41 62 6f 75 74 20 79 6f 75  | ....(propertize......."About.you | 
| 10540 |  72 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 3a 5c 6e    22 0a 20 20 20 20 20 20 27 66 61 63 65 20 27 64  | r.environment:\n".......'face.'d | 
| 10560 |  65 61 64 67 72 65 70 2d 66 69 6c 65 6e 61 6d 65    2d 66 61 63 65 29 0a 20 20 20 20 20 28 66 6f 72  | eadgrep-filename-face)......(for | 
| 10580 |  6d 61 74 20 22 50 6c 61 74 66 6f 72 6d 3a 20 25    73 5c 6e 22 20 73 79 73 74 65 6d 2d 74 79 70 65  | mat."Platform:.%s\n".system-type | 
| 105a0 |  29 0a 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22    45 6d 61 63 73 20 76 65 72 73 69 6f 6e 3a 20 25  | )......(format."Emacs.version:.% | 
| 105c0 |  73 5c 6e 22 20 65 6d 61 63 73 2d 76 65 72 73 69    6f 6e 29 0a 20 20 20 20 20 28 66 6f 72 6d 61 74  | s\n".emacs-version)......(format | 
| 105e0 |  20 22 43 6f 6d 6d 61 6e 64 3a 20 25 73 5c 6e 22    20 63 6f 6d 6d 61 6e 64 29 0a 20 20 20 20 20 28  | ."Command:.%s\n".command)......( | 
| 10600 |  66 6f 72 6d 61 74 20 22 64 65 66 61 75 6c 74 2d    64 69 72 65 63 74 6f 72 79 3a 20 25 53 5c 6e 22  | format."default-directory:.%S\n" | 
| 10620 |  20 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f    72 79 29 0a 20 20 20 20 20 28 66 6f 72 6d 61 74  | .default-directory)......(format | 
| 10640 |  20 22 65 78 65 63 2d 70 61 74 68 3a 20 25 53 5c    6e 22 20 65 78 65 63 2d 70 61 74 68 29 0a 20 20  | ."exec-path:.%S\n".exec-path)... | 
| 10660 |  20 20 20 28 69 66 20 28 62 6f 75 6e 64 70 20 27    74 72 61 6d 70 2d 72 65 6d 6f 74 65 2d 70 61 74  | ...(if.(boundp.'tramp-remote-pat | 
| 10680 |  68 29 0a 20 20 20 20 20 28 66 6f 72 6d 61 74 20    22 74 72 61 6d 70 2d 72 65 6d 6f 74 65 2d 70 61  | h)......(format."tramp-remote-pa | 
| 106a0 |  74 68 3a 20 25 53 5c 6e 22 20 74 72 61 6d 70 2d    72 65 6d 6f 74 65 2d 70 61 74 68 29 0a 20 20 20  | th:.%S\n".tramp-remote-path).... | 
| 106c0 |  20 20 20 20 22 22 29 0a 20 20 20 20 20 28 70 72    6f 70 65 72 74 69 7a 65 0a 20 20 20 20 20 20 22  | ...."")......(propertize......." | 
| 106e0 |  5c 6e 49 6e 69 74 69 61 6c 20 6f 75 74 70 75 74    20 66 72 6f 6d 20 72 69 70 67 72 65 70 3a 5c 6e  | \nInitial.output.from.ripgrep:\n | 
| 10700 |  22 0a 20 20 20 20 20 20 27 66 61 63 65 20 27 64    65 61 64 67 72 65 70 2d 66 69 6c 65 6e 61 6d 65  | ".......'face.'deadgrep-filename | 
| 10720 |  2d 66 61 63 65 29 0a 20 20 20 20 20 28 66 6f 72    6d 61 74 20 22 25 53 22 20 6f 75 74 70 75 74 29  | -face)......(format."%S".output) | 
| 10740 |  0a 20 20 20 20 20 28 70 72 6f 70 65 72 74 69 7a    65 0a 20 20 20 20 20 20 22 5c 6e 5c 6e 50 6c 65  | ......(propertize......."\n\nPle | 
| 10760 |  61 73 65 20 66 69 6c 65 20 62 75 67 73 20 61 74    20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e  | ase.file.bugs.at.https://github. | 
| 10780 |  63 6f 6d 2f 57 69 6c 66 72 65 64 2f 64 65 61 64    67 72 65 70 2f 69 73 73 75 65 73 2f 6e 65 77 22  | com/Wilfred/deadgrep/issues/new" | 
| 107a0 |  0a 20 20 20 20 20 20 27 66 61 63 65 20 27 64 65    61 64 67 72 65 70 2d 66 69 6c 65 6e 61 6d 65 2d  | .......'face.'deadgrep-filename- | 
| 107c0 |  66 61 63 65 29 29 29 29 0a 0a 28 64 65 66 75 6e    20 64 65 61 64 67 72 65 70 2d 6b 69 6c 6c 2d 61  | face))))..(defun.deadgrep-kill-a | 
| 107e0 |  6c 6c 2d 62 75 66 66 65 72 73 20 28 29 0a 20 20    22 4b 69 6c 6c 20 61 6c 6c 20 6f 70 65 6e 20 64  | ll-buffers.()..."Kill.all.open.d | 
| 10800 |  65 61 64 67 72 65 70 20 62 75 66 66 65 72 73 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | eadgrep.buffers."...(interactive | 
| 10820 |  29 0a 20 20 28 64 6f 6c 69 73 74 20 28 62 75 66    66 65 72 20 28 64 65 61 64 67 72 65 70 2d 2d 62  | )...(dolist.(buffer.(deadgrep--b | 
| 10840 |  75 66 66 65 72 73 29 29 0a 20 20 20 20 28 6b 69    6c 6c 2d 62 75 66 66 65 72 20 62 75 66 66 65 72  | uffers)).....(kill-buffer.buffer | 
| 10860 |  29 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 64    65 61 64 67 72 65 70 29 0a 3b 3b 3b 20 64 65 61  | )))..(provide.'deadgrep).;;;.dea | 
| 10880 |  64 67 72 65 70 2e 65 6c 20 65 6e 64 73 20 68 65    72 65 0a 0a 3b 3b 20 4c 6f 63 61 6c 20 56 61 72  | dgrep.el.ends.here..;;.Local.Var | 
| 108a0 |  69 61 62 6c 65 73 3a 0a 3b 3b 20 62 79 74 65 2d    63 6f 6d 70 69 6c 65 2d 77 61 72 6e 69 6e 67 73  | iables:.;;.byte-compile-warnings | 
| 108c0 |  3a 20 28 6e 6f 74 20 6f 62 73 6f 6c 65 74 65 29    0a 3b 3b 20 45 6e 64 3a 0a 00 00 00 00 00 00 00  | :.(not.obsolete).;;.End:........ | 
| 108e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10900 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10920 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10940 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10960 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10980 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 109a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 109c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 109e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10a00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10a20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10a40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10a60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10a80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10aa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10ac0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10ae0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10b00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10b20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10b40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10b60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10b80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10ba0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10bc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10be0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10c00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10c20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10c40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10c60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10c80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10ca0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10cc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10ce0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10d00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10d20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10d40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10d60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10d80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10da0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10dc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10de0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10e00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10e20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10e40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10e60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10e80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10ea0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10ec0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10ee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10f00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10f20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10f40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10f60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10f80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10fa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10fc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 10fe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11000 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11020 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11040 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11060 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11080 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 110a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 110c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 110e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11100 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11120 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11140 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11160 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 111a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 111c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 111e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11200 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11220 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11240 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11260 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11280 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 112a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 112c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 112e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11300 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11320 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 113a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 113c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 113e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11400 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11420 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11460 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11480 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 114a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 114c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 114e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11500 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11520 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 115a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 115c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 115e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11600 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11620 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11640 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11660 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11680 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 116a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 116c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 116e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11700 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11720 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 11780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 117a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 117c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 117e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ |