| ofs | hex dump | ascii | 
|---|
| 0000 |  69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63 74 69    6c 65 2d 32 30 32 33 30 38 31 37 2e 36 31 30 2f  | ibuffer-projectile-20230817.610/ | 
| 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 34 35 30 36 00 20 35 00 00 00  | 0000000.00000000000.014506..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 |  69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63 74 69    6c 65 2d 32 30 32 33 30 38 31 37 2e 36 31 30 2f  | ibuffer-projectile-20230817.610/ | 
| 0220 |  69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63 74 69    6c 65 2d 70 6b 67 2e 65 6c 00 00 00 00 00 00 00  | ibuffer-projectile-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 31 30 31 31 00 30 30 30 30 30 30 30 30    30 30 30 00 30 32 31 33 36 30 00 20 30 00 00 00  | 0001011.00000000000.021360..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 |  28 64 65 66 69 6e 65 2d 70 61 63 6b 61 67 65 20    22 69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63 74  | (define-package."ibuffer-project | 
| 0420 |  69 6c 65 22 20 22 32 30 32 33 30 38 31 37 2e 36    31 30 22 20 22 47 72 6f 75 70 20 69 62 75 66 66  | ile"."20230817.610"."Group.ibuff | 
| 0440 |  65 72 27 73 20 6c 69 73 74 20 62 79 20 70 72 6f    6a 65 63 74 69 6c 65 20 72 6f 6f 74 22 0a 20 20  | er's.list.by.projectile.root"... | 
| 0460 |  27 28 28 70 72 6f 6a 65 63 74 69 6c 65 20 22 30    2e 31 31 2e 30 22 29 0a 20 20 20 20 28 65 6d 61  | '((projectile."0.11.0").....(ema | 
| 0480 |  63 73 20 22 32 35 2e 31 22 29 0a 20 20 20 20 28    73 65 71 20 22 32 22 29 29 0a 20 20 3a 63 6f 6d  | cs."25.1").....(seq."2"))...:com | 
| 04a0 |  6d 69 74 20 22 37 31 30 65 63 61 63 31 35 37 38    32 37 33 62 66 33 31 64 65 62 65 35 32 38 37 30  | mit."710ecac1578273bf31debe52870 | 
| 04c0 |  66 35 38 34 34 34 37 32 65 33 34 32 38 22 20 3a    61 75 74 68 6f 72 73 0a 20 20 27 28 28 22 53 74  | f5844472e3428".:authors...'(("St | 
| 04e0 |  65 76 65 20 50 75 72 63 65 6c 6c 22 20 2e 20 22    73 74 65 76 65 40 73 61 6e 69 74 79 69 6e 63 2e  | eve.Purcell"..."steve@sanityinc. | 
| 0500 |  63 6f 6d 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61    69 6e 65 72 73 0a 20 20 27 28 28 22 53 74 65 76  | com"))...:maintainers...'(("Stev | 
| 0520 |  65 20 50 75 72 63 65 6c 6c 22 20 2e 20 22 73 74    65 76 65 40 73 61 6e 69 74 79 69 6e 63 2e 63 6f  | e.Purcell"..."steve@sanityinc.co | 
| 0540 |  6d 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e    65 72 0a 20 20 27 28 22 53 74 65 76 65 20 50 75  | m"))...:maintainer...'("Steve.Pu | 
| 0560 |  72 63 65 6c 6c 22 20 2e 20 22 73 74 65 76 65 40    73 61 6e 69 74 79 69 6e 63 2e 63 6f 6d 22 29 0a  | rcell"..."steve@sanityinc.com"). | 
| 0580 |  20 20 3a 6b 65 79 77 6f 72 64 73 0a 20 20 27 28    22 63 6f 6e 76 65 6e 69 65 6e 63 65 22 29 0a 20  | ..:keywords...'("convenience").. | 
| 05a0 |  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 70 75 72 63 65 6c  | .:url."https://github.com/purcel | 
| 05c0 |  6c 2f 69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63    74 69 6c 65 22 29 0a 3b 3b 20 4c 6f 63 61 6c 20  | l/ibuffer-projectile").;;.Local. | 
| 05e0 |  56 61 72 69 61 62 6c 65 73 3a 0a 3b 3b 20 6e 6f    2d 62 79 74 65 2d 63 6f 6d 70 69 6c 65 3a 20 74  | Variables:.;;.no-byte-compile:.t | 
| 0600 |  0a 3b 3b 20 45 6e 64 3a 0a 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .;;.End:........................ | 
| 0620 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 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 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0680 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0720 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 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 |  69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63 74 69    6c 65 2d 32 30 32 33 30 38 31 37 2e 36 31 30 2f  | ibuffer-projectile-20230817.610/ | 
| 0820 |  69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63 74 69    6c 65 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00  | ibuffer-projectile.el........... | 
| 0840 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0860 |  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 | 
| 0880 |  30 30 31 34 36 32 33 00 30 30 30 30 30 30 30 30    30 30 30 00 30 32 30 36 31 36 00 20 30 00 00 00  | 0014623.00000000000.020616..0... | 
| 08a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 08c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 08e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0900 |  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................... | 
| 0920 |  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................... | 
| 0940 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0960 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0980 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 09a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 09c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 09e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0a00 |  3b 3b 3b 20 69 62 75 66 66 65 72 2d 70 72 6f 6a    65 63 74 69 6c 65 2e 65 6c 20 2d 2d 2d 20 47 72  | ;;;.ibuffer-projectile.el.---.Gr | 
| 0a20 |  6f 75 70 20 69 62 75 66 66 65 72 27 73 20 6c 69    73 74 20 62 79 20 70 72 6f 6a 65 63 74 69 6c 65  | oup.ibuffer's.list.by.projectile | 
| 0a40 |  20 72 6f 6f 74 20 20 2d 2a 2d 20 6c 65 78 69 63    61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 20 2d 2a  | .root..-*-.lexical-binding:.t.-* | 
| 0a60 |  2d 0a 3b 3b 0a 3b 3b 20 43 6f 70 79 72 69 67 68    74 20 28 43 29 20 32 30 31 31 2d 32 30 31 34 20  | -.;;.;;.Copyright.(C).2011-2014. | 
| 0a80 |  53 74 65 76 65 20 50 75 72 63 65 6c 6c 0a 3b 3b    0a 3b 3b 20 41 75 74 68 6f 72 3a 20 53 74 65 76  | Steve.Purcell.;;.;;.Author:.Stev | 
| 0aa0 |  65 20 50 75 72 63 65 6c 6c 20 3c 73 74 65 76 65    40 73 61 6e 69 74 79 69 6e 63 2e 63 6f 6d 3e 0a  | e.Purcell.<steve@sanityinc.com>. | 
| 0ac0 |  3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 63 6f 6e    76 65 6e 69 65 6e 63 65 0a 3b 3b 20 50 61 63 6b  | ;;.Keywords:.convenience.;;.Pack | 
| 0ae0 |  61 67 65 2d 52 65 71 75 69 72 65 73 3a 20 28 28    70 72 6f 6a 65 63 74 69 6c 65 20 22 30 2e 31 31  | age-Requires:.((projectile."0.11 | 
| 0b00 |  2e 30 22 29 20 28 65 6d 61 63 73 20 22 32 35 2e    31 22 29 20 28 73 65 71 20 22 32 22 29 29 0a 3b  | .0").(emacs."25.1").(seq."2")).; | 
| 0b20 |  3b 20 55 52 4c 3a 20 68 74 74 70 73 3a 2f 2f 67    69 74 68 75 62 2e 63 6f 6d 2f 70 75 72 63 65 6c  | ;.URL:.https://github.com/purcel | 
| 0b40 |  6c 2f 69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63    74 69 6c 65 0a 3b 3b 20 50 61 63 6b 61 67 65 2d  | l/ibuffer-projectile.;;.Package- | 
| 0b60 |  56 65 72 73 69 6f 6e 3a 20 30 2e 34 0a 3b 3b 0a    3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20  | Version:.0.4.;;.;;.This.program. | 
| 0b80 |  69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65    3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74  | is.free.software;.you.can.redist | 
| 0ba0 |  72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72    20 6d 6f 64 69 66 79 0a 3b 3b 20 69 74 20 75 6e  | ribute.it.and/or.modify.;;.it.un | 
| 0bc0 |  64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66    20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c  | der.the.terms.of.the.GNU.General | 
| 0be0 |  20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20    61 73 20 70 75 62 6c 69 73 68 65 64 20 62 79 0a  | .Public.License.as.published.by. | 
| 0c00 |  3b 3b 20 74 68 65 20 46 72 65 65 20 53 6f 66 74    77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c  | ;;.the.Free.Software.Foundation, | 
| 0c20 |  20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20    33 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65  | .either.version.3.of.the.License | 
| 0c40 |  2c 20 6f 72 0a 3b 3b 20 28 61 74 20 79 6f 75 72    20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74  | ,.or.;;.(at.your.option).any.lat | 
| 0c60 |  65 72 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b    3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69  | er.version..;;.;;.This.program.i | 
| 0c80 |  73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e    20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 69  | s.distributed.in.the.hope.that.i | 
| 0ca0 |  74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c    2c 0a 3b 3b 20 62 75 74 20 57 49 54 48 4f 55 54  | t.will.be.useful,.;;.but.WITHOUT | 
| 0cc0 |  20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77    69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 20  | .ANY.WARRANTY;.without.even.the. | 
| 0ce0 |  69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79    20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 4e 54 41  | implied.warranty.of.;;.MERCHANTA | 
| 0d00 |  42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53    53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c  | BILITY.or.FITNESS.FOR.A.PARTICUL | 
| 0d20 |  41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65    20 74 68 65 0a 3b 3b 20 47 4e 55 20 47 65 6e 65  | AR.PURPOSE...See.the.;;.GNU.Gene | 
| 0d40 |  72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e    73 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61  | ral.Public.License.for.more.deta | 
| 0d60 |  69 6c 73 2e 0a 3b 3b 0a 3b 3b 20 59 6f 75 20 73    68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 69  | ils..;;.;;.You.should.have.recei | 
| 0d80 |  76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68    65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75  | ved.a.copy.of.the.GNU.General.Pu | 
| 0da0 |  62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20    61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20  | blic.License.;;.along.with.this. | 
| 0dc0 |  70 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74    2c 20 73 65 65 20 3c 68 74 74 70 3a 2f 2f 77 77  | program...If.not,.see.<http://ww | 
| 0de0 |  77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73    65 73 2f 3e 2e 0a 3b 3b 0a 3b 3b 3b 20 43 6f 6d  | w.gnu.org/licenses/>..;;.;;;.Com | 
| 0e00 |  6d 65 6e 74 61 72 79 3a 0a 3b 3b 0a 3b 3b 20 41    64 64 73 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74  | mentary:.;;.;;.Adds.functionalit | 
| 0e20 |  79 20 74 6f 20 69 62 75 66 66 65 72 20 66 6f 72    20 67 72 6f 75 70 69 6e 67 20 62 75 66 66 65 72  | y.to.ibuffer.for.grouping.buffer | 
| 0e40 |  73 20 62 79 20 74 68 65 69 72 20 70 72 6f 6a 65    63 74 69 6c 65 0a 3b 3b 20 72 6f 6f 74 20 64 69  | s.by.their.projectile.;;.root.di | 
| 0e60 |  72 65 63 74 6f 72 79 2e 0a 3b 3b 0a 3b 3b 3b 20    55 73 65 3a 0a 3b 3b 0a 3b 3b 20 54 6f 20 67 72  | rectory..;;.;;;.Use:.;;.;;.To.gr | 
| 0e80 |  6f 75 70 20 62 75 66 66 65 72 73 20 62 79 20 70    72 6f 6a 65 63 74 69 6c 65 20 72 6f 6f 74 20 64  | oup.buffers.by.projectile.root.d | 
| 0ea0 |  69 72 3a 0a 3b 3b 0a 3b 3b 20 20 20 4d 2d 78 20    69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63 74 69  | ir:.;;.;;...M-x.ibuffer-projecti | 
| 0ec0 |  6c 65 2d 73 65 74 2d 66 69 6c 74 65 72 2d 67 72    6f 75 70 73 0a 3b 3b 0a 3b 3b 20 6f 72 2c 20 6d  | le-set-filter-groups.;;.;;.or,.m | 
| 0ee0 |  61 6b 65 20 74 68 69 73 20 74 68 65 20 64 65 66    61 75 6c 74 3a 0a 3b 3b 0a 3b 3b 20 20 20 28 61  | ake.this.the.default:.;;.;;...(a | 
| 0f00 |  64 64 2d 68 6f 6f 6b 20 27 69 62 75 66 66 65 72    2d 68 6f 6f 6b 0a 3b 3b 20 20 20 20 20 28 6c 61  | dd-hook.'ibuffer-hook.;;.....(la | 
| 0f20 |  6d 62 64 61 20 28 29 0a 3b 3b 20 20 20 20 20 20    20 28 69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63  | mbda.().;;.......(ibuffer-projec | 
| 0f40 |  74 69 6c 65 2d 73 65 74 2d 66 69 6c 74 65 72 2d    67 72 6f 75 70 73 29 0a 3b 3b 20 20 20 20 20 20  | tile-set-filter-groups).;;...... | 
| 0f60 |  20 28 75 6e 6c 65 73 73 20 28 65 71 20 69 62 75    66 66 65 72 2d 73 6f 72 74 69 6e 67 2d 6d 6f 64  | .(unless.(eq.ibuffer-sorting-mod | 
| 0f80 |  65 20 27 61 6c 70 68 61 62 65 74 69 63 29 0a 3b    3b 20 20 20 20 20 20 20 20 20 28 69 62 75 66 66  | e.'alphabetic).;;.........(ibuff | 
| 0fa0 |  65 72 2d 64 6f 2d 73 6f 72 74 2d 62 79 2d 61 6c    70 68 61 62 65 74 69 63 29 29 29 29 0a 3b 3b 0a  | er-do-sort-by-alphabetic)))).;;. | 
| 0fc0 |  3b 3b 20 41 6c 74 65 72 6e 61 74 69 76 65 6c 79    2c 20 75 73 65 20 60 69 62 75 66 66 65 72 2d 70  | ;;.Alternatively,.use.`ibuffer-p | 
| 0fe0 |  72 6f 6a 65 63 74 69 6c 65 2d 67 65 6e 65 72 61    74 65 2d 66 69 6c 74 65 72 2d 67 72 6f 75 70 73  | rojectile-generate-filter-groups | 
| 1000 |  27 0a 3b 3b 20 74 6f 20 70 72 6f 67 72 61 6d 6d    61 74 69 63 61 6c 6c 79 20 6f 62 74 61 69 6e 20  | '.;;.to.programmatically.obtain. | 
| 1020 |  61 20 6c 69 73 74 20 6f 66 20 66 69 6c 74 65 72    20 67 72 6f 75 70 73 20 74 68 61 74 20 79 6f 75  | a.list.of.filter.groups.that.you | 
| 1040 |  20 63 61 6e 0a 3b 3b 20 63 6f 6d 62 69 6e 65 20    77 69 74 68 20 79 6f 75 72 20 6f 77 6e 20 63 75  | .can.;;.combine.with.your.own.cu | 
| 1060 |  73 74 6f 6d 20 67 72 6f 75 70 73 2e 0a 3b 3b 0a    3b 3b 20 54 6f 20 64 69 73 70 6c 61 79 20 66 69  | stom.groups..;;.;;.To.display.fi | 
| 1080 |  6c 65 6e 61 6d 65 73 20 72 65 6c 61 74 69 76 65    20 74 6f 20 74 68 65 20 70 72 6f 6a 65 63 74 20  | lenames.relative.to.the.project. | 
| 10a0 |  72 6f 6f 74 2c 20 75 73 65 20 70 72 6f 6a 65 63    74 2d 72 65 6c 61 74 69 76 65 2d 66 69 6c 65 0a  | root,.use.project-relative-file. | 
| 10c0 |  3b 3b 20 69 6e 20 60 69 62 75 66 66 65 72 2d 66    6f 72 6d 61 74 73 27 2c 20 65 2e 67 2e 3a 0a 3b  | ;;.in.`ibuffer-formats',.e.g.:.; | 
| 10e0 |  3b 0a 3b 3b 20 28 73 65 74 71 20 69 62 75 66 66    65 72 2d 66 6f 72 6d 61 74 73 0a 3b 3b 20 20 20  | ;.;;.(setq.ibuffer-formats.;;... | 
| 1100 |  20 20 20 20 27 28 28 6d 61 72 6b 20 6d 6f 64 69    66 69 65 64 20 72 65 61 64 2d 6f 6e 6c 79 20 22  | ....'((mark.modified.read-only." | 
| 1120 |  20 22 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6e 61 6d 65 20 31 38 20 31 38 20  | .".;;...............(name.18.18. | 
| 1140 |  3a 6c 65 66 74 20 3a 65 6c 69 64 65 29 0a 3b 3b    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22  | :left.:elide).;;..............." | 
| 1160 |  20 22 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 73 69 7a 65 20 39 20 2d 31 20 3a  | .".;;...............(size.9.-1.: | 
| 1180 |  72 69 67 68 74 29 0a 3b 3b 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 22 20 22 0a 3b 3b 20 20  | right).;;...............".".;;.. | 
| 11a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 6f    64 65 20 31 36 20 31 36 20 3a 6c 65 66 74 20 3a  | .............(mode.16.16.:left.: | 
| 11c0 |  65 6c 69 64 65 29 0a 3b 3b 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 22 20 22 0a 3b 3b 20 20  | elide).;;...............".".;;.. | 
| 11e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f    6a 65 63 74 2d 72 65 6c 61 74 69 76 65 2d 66 69  | .............project-relative-fi | 
| 1200 |  6c 65 29 29 29 0a 0a 3b 3b 3b 20 43 6f 64 65 3a    0a 0a 28 72 65 71 75 69 72 65 20 27 69 62 75 66  | le)))..;;;.Code:..(require.'ibuf | 
| 1220 |  66 65 72 29 0a 28 72 65 71 75 69 72 65 20 27 69    62 75 66 2d 65 78 74 29 0a 28 72 65 71 75 69 72  | fer).(require.'ibuf-ext).(requir | 
| 1240 |  65 20 27 70 72 6f 6a 65 63 74 69 6c 65 29 0a 28    72 65 71 75 69 72 65 20 27 73 65 71 29 0a 0a 0a  | e.'projectile).(require.'seq)... | 
| 1260 |  28 64 65 66 67 72 6f 75 70 20 69 62 75 66 66 65    72 2d 70 72 6f 6a 65 63 74 69 6c 65 20 6e 69 6c  | (defgroup.ibuffer-projectile.nil | 
| 1280 |  0a 20 20 22 47 72 6f 75 70 20 69 62 75 66 66 65    72 20 65 6e 74 72 69 65 73 20 61 63 63 6f 72 64  | ..."Group.ibuffer.entries.accord | 
| 12a0 |  69 6e 67 20 74 6f 20 74 68 65 69 72 20 70 72 6f    6a 65 63 74 69 6c 65 20 72 6f 6f 74 20 64 69 72  | ing.to.their.projectile.root.dir | 
| 12c0 |  65 63 74 6f 72 79 2e 22 0a 20 20 3a 70 72 65 66    69 78 20 22 69 62 75 66 66 65 72 2d 70 72 6f 6a  | ectory."...:prefix."ibuffer-proj | 
| 12e0 |  65 63 74 69 6c 65 2d 22 0a 20 20 3a 67 72 6f 75    70 20 27 63 6f 6e 76 65 6e 69 65 6e 63 65 29 0a  | ectile-"...:group.'convenience). | 
| 1300 |  0a 28 64 65 66 63 75 73 74 6f 6d 20 69 62 75 66    66 65 72 2d 70 72 6f 6a 65 63 74 69 6c 65 2d 73  | .(defcustom.ibuffer-projectile-s | 
| 1320 |  6b 69 70 2d 69 66 2d 72 65 6d 6f 74 65 20 74 0a    20 20 22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 64  | kip-if-remote.t..."If.non-nil,.d | 
| 1340 |  6f 6e 27 74 20 71 75 65 72 79 20 74 68 65 20 73    74 61 74 75 73 20 6f 66 20 72 65 6d 6f 74 65 20  | on't.query.the.status.of.remote. | 
| 1360 |  66 69 6c 65 73 2e 22 0a 20 20 3a 74 79 70 65 20    27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 67 72 6f 75  | files."...:type.'boolean...:grou | 
| 1380 |  70 20 27 69 62 75 66 66 65 72 2d 70 72 6f 6a 65    63 74 69 6c 65 29 0a 0a 28 64 65 66 63 75 73 74  | p.'ibuffer-projectile)..(defcust | 
| 13a0 |  6f 6d 20 69 62 75 66 66 65 72 2d 70 72 6f 6a 65    63 74 69 6c 65 2d 69 6e 63 6c 75 64 65 2d 66 75  | om.ibuffer-projectile-include-fu | 
| 13c0 |  6e 63 74 69 6f 6e 20 27 69 64 65 6e 74 69 74 79    0a 20 20 22 41 20 66 75 6e 63 74 69 6f 6e 20 77  | nction.'identity..."A.function.w | 
| 13e0 |  68 69 63 68 20 74 65 6c 6c 73 20 77 68 65 74 68    65 72 20 61 20 67 69 76 65 6e 20 66 69 6c 65 20  | hich.tells.whether.a.given.file. | 
| 1400 |  73 68 6f 75 6c 64 20 62 65 20 67 72 6f 75 70 65    64 2e 0a 0a 54 68 65 20 66 75 6e 63 74 69 6f 6e  | should.be.grouped...The.function | 
| 1420 |  20 69 73 20 70 61 73 73 65 64 20 61 20 66 69 6c    65 6e 61 6d 65 2c 20 61 6e 64 20 73 68 6f 75 6c  | .is.passed.a.filename,.and.shoul | 
| 1440 |  64 20 72 65 74 75 72 6e 20 6e 6f 6e 2d 6e 69 6c    20 69 66 20 74 68 65 20 66 69 6c 65 0a 69 73 20  | d.return.non-nil.if.the.file.is. | 
| 1460 |  74 6f 20 62 65 20 67 72 6f 75 70 65 64 2e 0a 0a    54 68 69 73 20 6f 70 74 69 6f 6e 20 63 61 6e 20  | to.be.grouped...This.option.can. | 
| 1480 |  62 65 20 75 73 65 64 20 74 6f 20 65 78 63 6c 75    64 65 20 63 65 72 74 61 69 6e 20 66 69 6c 65 73  | be.used.to.exclude.certain.files | 
| 14a0 |  20 66 72 6f 6d 20 74 68 65 20 67 72 6f 75 70 69    6e 67 20 6d 65 63 68 61 6e 69 73 6d 2e 22 0a 20  | .from.the.grouping.mechanism.".. | 
| 14c0 |  20 3a 74 79 70 65 20 27 66 75 6e 63 74 69 6f 6e    0a 20 20 3a 67 72 6f 75 70 20 27 69 62 75 66 66  | .:type.'function...:group.'ibuff | 
| 14e0 |  65 72 2d 70 72 6f 6a 65 63 74 69 6c 65 29 0a 0a    28 64 65 66 63 75 73 74 6f 6d 20 69 62 75 66 66  | er-projectile)..(defcustom.ibuff | 
| 1500 |  65 72 2d 70 72 6f 6a 65 63 74 69 6c 65 2d 70 72    65 66 69 78 20 22 50 72 6f 6a 65 63 74 69 6c 65  | er-projectile-prefix."Projectile | 
| 1520 |  3a 22 0a 20 20 22 50 72 65 66 69 78 20 73 74 72    69 6e 67 20 66 6f 72 20 67 65 6e 65 72 61 74 65  | :"..."Prefix.string.for.generate | 
| 1540 |  64 20 66 69 6c 74 65 72 20 67 72 6f 75 70 73 2e    22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e  | d.filter.groups."...:type.'strin | 
| 1560 |  67 0a 20 20 3a 67 72 6f 75 70 20 27 69 62 75 66    66 65 72 2d 70 72 6f 6a 65 63 74 69 6c 65 29 0a  | g...:group.'ibuffer-projectile). | 
| 1580 |  0a 28 64 65 66 63 75 73 74 6f 6d 20 69 62 75 66    66 65 72 2d 70 72 6f 6a 65 63 74 69 6c 65 2d 67  | .(defcustom.ibuffer-projectile-g | 
| 15a0 |  72 6f 75 70 2d 6e 61 6d 65 2d 66 75 6e 63 74 69    6f 6e 20 27 69 62 75 66 66 65 72 2d 70 72 6f 6a  | roup-name-function.'ibuffer-proj | 
| 15c0 |  65 63 74 69 6c 65 2d 64 65 66 61 75 6c 74 2d 67    72 6f 75 70 2d 6e 61 6d 65 0a 20 20 22 46 75 6e  | ectile-default-group-name..."Fun | 
| 15e0 |  63 74 69 6f 6e 20 75 73 65 64 20 74 6f 20 70 72    6f 64 75 63 65 20 74 68 65 20 6e 61 6d 65 20 66  | ction.used.to.produce.the.name.f | 
| 1600 |  6f 72 20 61 20 67 72 6f 75 70 2e 0a 54 68 65 20    66 75 6e 63 74 69 6f 6e 20 69 73 20 70 61 73 73  | or.a.group..The.function.is.pass | 
| 1620 |  65 64 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 73    3a 20 74 68 65 20 70 72 6f 6a 65 63 74 69 6c 65  | ed.two.arguments:.the.projectile | 
| 1640 |  20 70 72 6f 6a 65 63 74 0a 6e 61 6d 65 2c 20 61    6e 64 20 74 68 65 20 72 6f 6f 74 20 64 69 72 65  | .project.name,.and.the.root.dire | 
| 1660 |  63 74 6f 72 79 20 70 61 74 68 2e 22 0a 20 20 3a    74 79 70 65 20 27 66 75 6e 63 74 69 6f 6e 0a 20  | ctory.path."...:type.'function.. | 
| 1680 |  20 3a 67 72 6f 75 70 20 27 69 62 75 66 66 65 72    2d 70 72 6f 6a 65 63 74 69 6c 65 29 0a 0a 28 64  | .:group.'ibuffer-projectile)..(d | 
| 16a0 |  65 66 75 6e 20 69 62 75 66 66 65 72 2d 70 72 6f    6a 65 63 74 69 6c 65 2d 64 65 66 61 75 6c 74 2d  | efun.ibuffer-projectile-default- | 
| 16c0 |  67 72 6f 75 70 2d 6e 61 6d 65 20 28 70 72 6f 6a    65 63 74 2d 6e 61 6d 65 20 72 6f 6f 74 2d 64 69  | group-name.(project-name.root-di | 
| 16e0 |  72 29 0a 20 20 22 50 72 6f 64 75 63 65 20 61 6e    20 69 62 75 66 66 65 72 20 67 72 6f 75 70 20 6e  | r)..."Produce.an.ibuffer.group.n | 
| 1700 |  61 6d 65 20 73 74 72 69 6e 67 20 66 6f 72 20 50    52 4f 4a 45 43 54 2d 4e 41 4d 45 20 61 6e 64 20  | ame.string.for.PROJECT-NAME.and. | 
| 1720 |  52 4f 4f 54 2d 44 49 52 2e 22 0a 20 20 28 66 6f    72 6d 61 74 20 22 25 73 25 73 22 20 69 62 75 66  | ROOT-DIR."...(format."%s%s".ibuf | 
| 1740 |  66 65 72 2d 70 72 6f 6a 65 63 74 69 6c 65 2d 70    72 65 66 69 78 20 70 72 6f 6a 65 63 74 2d 6e 61  | fer-projectile-prefix.project-na | 
| 1760 |  6d 65 29 29 0a 0a 28 64 65 66 75 6e 20 69 62 75    66 66 65 72 2d 70 72 6f 6a 65 63 74 69 6c 65 2d  | me))..(defun.ibuffer-projectile- | 
| 1780 |  2d 69 6e 63 6c 75 64 65 2d 66 69 6c 65 2d 70 20    28 66 69 6c 65 29 0a 20 20 22 52 65 74 75 72 6e  | -include-file-p.(file)..."Return | 
| 17a0 |  20 74 20 69 66 66 20 46 49 4c 45 20 73 68 6f 75    6c 64 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69  | .t.iff.FILE.should.be.included.i | 
| 17c0 |  6e 20 69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63    74 69 6c 65 27 73 20 66 69 6c 74 65 72 69 6e 67  | n.ibuffer-projectile's.filtering | 
| 17e0 |  2e 22 0a 20 20 28 61 6e 64 20 66 69 6c 65 0a 20    20 20 20 20 20 20 28 6f 72 20 28 6e 75 6c 6c 20  | ."...(and.file........(or.(null. | 
| 1800 |  69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63 74 69    6c 65 2d 73 6b 69 70 2d 69 66 2d 72 65 6d 6f 74  | ibuffer-projectile-skip-if-remot | 
| 1820 |  65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6e    6f 74 20 28 66 69 6c 65 2d 72 65 6d 6f 74 65 2d  | e)............(not.(file-remote- | 
| 1840 |  70 20 66 69 6c 65 29 29 29 0a 20 20 20 20 20 20    20 28 66 75 6e 63 61 6c 6c 20 69 62 75 66 66 65  | p.file)))........(funcall.ibuffe | 
| 1860 |  72 2d 70 72 6f 6a 65 63 74 69 6c 65 2d 69 6e 63    6c 75 64 65 2d 66 75 6e 63 74 69 6f 6e 20 66 69  | r-projectile-include-function.fi | 
| 1880 |  6c 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 69 62    75 66 66 65 72 2d 70 72 6f 6a 65 63 74 69 6c 65  | le)))..(defun.ibuffer-projectile | 
| 18a0 |  2d 72 6f 6f 74 20 28 62 75 66 29 0a 20 20 22 52    65 74 75 72 6e 20 61 20 63 6f 6e 73 20 63 65 6c  | -root.(buf)..."Return.a.cons.cel | 
| 18c0 |  6c 20 28 70 72 6f 6a 65 63 74 2d 6e 61 6d 65 20    2e 20 72 6f 6f 74 2d 64 69 72 29 20 66 6f 72 20  | l.(project-name...root-dir).for. | 
| 18e0 |  42 55 46 2e 0a 49 66 20 74 68 65 20 66 69 6c 65    20 69 73 20 6e 6f 74 20 69 6e 20 61 20 70 72 6f  | BUF..If.the.file.is.not.in.a.pro | 
| 1900 |  6a 65 63 74 2c 20 74 68 65 6e 20 6e 69 6c 20 69    73 20 72 65 74 75 72 6e 65 64 20 69 6e 73 74 65  | ject,.then.nil.is.returned.inste | 
| 1920 |  61 64 2e 22 0a 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  | ad."...(with-current-buffer.buf. | 
| 1940 |  20 20 20 20 28 6c 65 74 20 28 28 66 69 6c 65 2d    6e 61 6d 65 20 28 69 62 75 66 66 65 72 2d 62 75  | ....(let.((file-name.(ibuffer-bu | 
| 1960 |  66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 29    0a 20 20 20 20 20 20 20 20 20 20 28 72 6f 6f 74  | ffer-file-name))...........(root | 
| 1980 |  20 28 69 67 6e 6f 72 65 2d 65 72 72 6f 72 73 20    28 70 72 6f 6a 65 63 74 69 6c 65 2d 70 72 6f 6a  | .(ignore-errors.(projectile-proj | 
| 19a0 |  65 63 74 2d 72 6f 6f 74 29 29 29 29 0a 20 20 20    20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 66 69  | ect-root)))).......(when.(and.fi | 
| 19c0 |  6c 65 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 72 6f 6f 74 0a 20 20  | le-name..................root... | 
| 19e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63 74 69  | ...............(ibuffer-projecti | 
| 1a00 |  6c 65 2d 2d 69 6e 63 6c 75 64 65 2d 66 69 6c 65    2d 70 20 66 69 6c 65 2d 6e 61 6d 65 29 29 0a 20  | le--include-file-p.file-name)).. | 
| 1a20 |  20 20 20 20 20 20 20 28 63 6f 6e 73 20 28 70 72    6f 6a 65 63 74 69 6c 65 2d 70 72 6f 6a 65 63 74  | .......(cons.(projectile-project | 
| 1a40 |  2d 6e 61 6d 65 29 20 72 6f 6f 74 29 29 29 29 29    0a 0a 28 64 65 66 69 6e 65 2d 69 62 75 66 66 65  | -name).root)))))..(define-ibuffe | 
| 1a60 |  72 2d 66 69 6c 74 65 72 20 70 72 6f 6a 65 63 74    69 6c 65 2d 72 6f 6f 74 0a 20 20 20 20 22 54 6f  | r-filter.projectile-root....."To | 
| 1a80 |  67 67 6c 65 20 63 75 72 72 65 6e 74 20 76 69 65    77 20 74 6f 20 62 75 66 66 65 72 73 20 77 69 74  | ggle.current.view.to.buffers.wit | 
| 1aa0 |  68 20 70 72 6f 6a 65 63 74 69 6c 65 20 72 6f 6f    74 20 64 69 72 20 51 55 41 4c 49 46 49 45 52 2e  | h.projectile.root.dir.QUALIFIER. | 
| 1ac0 |  22 0a 20 20 28 3a 64 65 73 63 72 69 70 74 69 6f    6e 20 22 70 72 6f 6a 65 63 74 69 6c 65 20 72 6f  | "...(:description."projectile.ro | 
| 1ae0 |  6f 74 20 64 69 72 22 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 3a 72 65 61 64 65 72 20  | ot.dir".................:reader. | 
| 1b00 |  28 72 65 61 64 2d 72 65 67 65 78 70 20 22 46 69    6c 74 65 72 20 62 79 20 70 72 6f 6a 65 63 74 69  | (read-regexp."Filter.by.projecti | 
| 1b20 |  6c 65 20 72 6f 6f 74 20 64 69 72 20 28 72 65 67    65 78 70 29 3a 20 22 29 29 0a 20 20 28 77 68 65  | le.root.dir.(regexp):."))...(whe | 
| 1b40 |  6e 2d 6c 65 74 20 28 28 69 74 20 28 69 62 75 66    66 65 72 2d 70 72 6f 6a 65 63 74 69 6c 65 2d 72  | n-let.((it.(ibuffer-projectile-r | 
| 1b60 |  6f 6f 74 20 62 75 66 29 29 29 0a 20 20 20 20 28    69 66 20 28 73 74 72 69 6e 67 70 20 71 75 61 6c  | oot.buf))).....(if.(stringp.qual | 
| 1b80 |  69 66 69 65 72 29 0a 20 20 20 20 20 20 20 20 28    6f 72 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68  | ifier).........(or.(string-match | 
| 1ba0 |  2d 70 20 71 75 61 6c 69 66 69 65 72 20 28 63 61    72 20 69 74 29 29 0a 20 20 20 20 20 20 20 20 20  | -p.qualifier.(car.it)).......... | 
| 1bc0 |  20 20 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68    2d 70 20 71 75 61 6c 69 66 69 65 72 20 28 63 64  | ...(string-match-p.qualifier.(cd | 
| 1be0 |  72 2d 73 61 66 65 20 69 74 29 29 29 0a 20 20 20    20 20 20 28 65 71 75 61 6c 20 71 75 61 6c 69 66  | r-safe.it))).......(equal.qualif | 
| 1c00 |  69 65 72 20 69 74 29 29 29 29 0a 0a 3b 3b 3b 23    23 23 61 75 74 6f 6c 6f 61 64 20 28 61 75 74 6f  | ier.it))))..;;;###autoload.(auto | 
| 1c20 |  6c 6f 61 64 20 27 69 62 75 66 66 65 72 2d 6d 61    6b 65 2d 63 6f 6c 75 6d 6e 2d 70 72 6f 6a 65 63  | load.'ibuffer-make-column-projec | 
| 1c40 |  74 2d 6e 61 6d 65 20 22 69 62 75 66 66 65 72 2d    70 72 6f 6a 65 63 74 69 6c 65 22 29 0a 28 64 65  | t-name."ibuffer-projectile").(de | 
| 1c60 |  66 69 6e 65 2d 69 62 75 66 66 65 72 2d 63 6f 6c    75 6d 6e 20 70 72 6f 6a 65 63 74 2d 6e 61 6d 65  | fine-ibuffer-column.project-name | 
| 1c80 |  0a 20 20 28 3a 6e 61 6d 65 20 22 50 72 6f 6a 65    63 74 22 29 0a 20 20 28 70 72 6f 6a 65 63 74 69  | ...(:name."Project")...(projecti | 
| 1ca0 |  6c 65 2d 70 72 6f 6a 65 63 74 2d 6e 61 6d 65 29    29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61  | le-project-name))..;;;###autoloa | 
| 1cc0 |  64 20 28 61 75 74 6f 6c 6f 61 64 20 27 69 62 75    66 66 65 72 2d 64 6f 2d 73 6f 72 74 2d 62 79 2d  | d.(autoload.'ibuffer-do-sort-by- | 
| 1ce0 |  70 72 6f 6a 65 63 74 2d 6e 61 6d 65 20 22 69 62    75 66 66 65 72 2d 70 72 6f 6a 65 63 74 69 6c 65  | project-name."ibuffer-projectile | 
| 1d00 |  22 29 0a 28 64 65 66 69 6e 65 2d 69 62 75 66 66    65 72 2d 73 6f 72 74 65 72 20 70 72 6f 6a 65 63  | ").(define-ibuffer-sorter.projec | 
| 1d20 |  74 2d 6e 61 6d 65 0a 20 20 22 53 6f 72 74 20 74    68 65 20 62 75 66 66 65 72 73 20 62 79 20 74 68  | t-name..."Sort.the.buffers.by.th | 
| 1d40 |  65 69 72 20 70 72 6f 6a 65 63 74 20 6e 61 6d 65    2e 22 0a 20 20 28 3a 64 65 73 63 72 69 70 74 69  | eir.project.name."...(:descripti | 
| 1d60 |  6f 6e 20 22 70 72 6f 6a 65 63 74 22 29 0a 20 20    28 6c 65 74 20 28 28 70 72 6f 6a 65 63 74 31 20  | on."project")...(let.((project1. | 
| 1d80 |  28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75    66 66 65 72 20 28 63 61 72 20 61 29 0a 20 20 20  | (with-current-buffer.(car.a).... | 
| 1da0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 70 72 6f 6a 65 63 74 69 6c 65 2d 70 72 6f  | .................(projectile-pro | 
| 1dc0 |  6a 65 63 74 2d 6e 61 6d 65 29 29 29 0a 20 20 20    20 20 20 20 20 28 70 72 6f 6a 65 63 74 32 20 28  | ject-name))).........(project2.( | 
| 1de0 |  77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66    66 65 72 20 28 63 61 72 20 62 29 0a 20 20 20 20  | with-current-buffer.(car.b)..... | 
| 1e00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 70 72 6f 6a 65 63 74 69 6c 65 2d 70 72 6f 6a  | ................(projectile-proj | 
| 1e20 |  65 63 74 2d 6e 61 6d 65 29 29 29 29 0a 20 20 20    20 28 69 66 20 28 61 6e 64 20 70 72 6f 6a 65 63  | ect-name)))).....(if.(and.projec | 
| 1e40 |  74 31 20 70 72 6f 6a 65 63 74 32 29 0a 20 20 20    20 20 20 20 20 28 73 74 72 69 6e 67 2d 6c 65 73  | t1.project2).........(string-les | 
| 1e60 |  73 70 20 70 72 6f 6a 65 63 74 31 20 70 72 6f 6a    65 63 74 32 29 0a 20 20 20 20 20 20 28 6e 6f 74  | sp.project1.project2).......(not | 
| 1e80 |  20 28 6e 75 6c 6c 20 70 72 6f 6a 65 63 74 31 29    29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f  | .(null.project1)))))..;;;###auto | 
| 1ea0 |  6c 6f 61 64 20 28 61 75 74 6f 6c 6f 61 64 20 27    69 62 75 66 66 65 72 2d 6d 61 6b 65 2d 63 6f 6c  | load.(autoload.'ibuffer-make-col | 
| 1ec0 |  75 6d 6e 2d 70 72 6f 6a 65 63 74 2d 72 65 6c 61    74 69 76 65 2d 66 69 6c 65 20 22 69 62 75 66 66  | umn-project-relative-file."ibuff | 
| 1ee0 |  65 72 2d 70 72 6f 6a 65 63 74 69 6c 65 22 29 0a    28 64 65 66 69 6e 65 2d 69 62 75 66 66 65 72 2d  | er-projectile").(define-ibuffer- | 
| 1f00 |  63 6f 6c 75 6d 6e 20 70 72 6f 6a 65 63 74 2d 72    65 6c 61 74 69 76 65 2d 66 69 6c 65 0a 20 20 28  | column.project-relative-file...( | 
| 1f20 |  3a 6e 61 6d 65 20 22 46 69 6c 65 6e 61 6d 65 22    29 0a 20 20 28 77 68 65 6e 20 62 75 66 66 65 72  | :name."Filename")...(when.buffer | 
| 1f40 |  2d 66 69 6c 65 2d 6e 61 6d 65 0a 20 20 20 20 28    6c 65 74 20 28 28 72 6f 6f 74 20 28 63 64 72 20  | -file-name.....(let.((root.(cdr. | 
| 1f60 |  28 69 62 75 66 66 65 72 2d 70 72 6f 6a 65 63 74    69 6c 65 2d 72 6f 6f 74 20 62 75 66 66 65 72 29  | (ibuffer-projectile-root.buffer) | 
| 1f80 |  29 29 29 0a 20 20 20 20 20 20 28 69 66 20 72 6f    6f 74 0a 20 20 20 20 20 20 20 20 20 20 28 66 69  | ))).......(if.root...........(fi | 
| 1fa0 |  6c 65 2d 72 65 6c 61 74 69 76 65 2d 6e 61 6d 65    20 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d  | le-relative-name.buffer-file-nam | 
| 1fc0 |  65 20 72 6f 6f 74 29 0a 20 20 20 20 20 20 20 20    28 61 62 62 72 65 76 69 61 74 65 2d 66 69 6c 65  | e.root).........(abbreviate-file | 
| 1fe0 |  2d 6e 61 6d 65 20 62 75 66 66 65 72 2d 66 69 6c    65 2d 6e 61 6d 65 29 29 29 29 29 0a 0a 3b 3b 3b  | -name.buffer-file-name)))))..;;; | 
| 2000 |  23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66    75 6e 20 69 62 75 66 66 65 72 2d 70 72 6f 6a 65  | ###autoload.(defun.ibuffer-proje | 
| 2020 |  63 74 69 6c 65 2d 67 65 6e 65 72 61 74 65 2d 66    69 6c 74 65 72 2d 67 72 6f 75 70 73 20 28 29 0a  | ctile-generate-filter-groups.(). | 
| 2040 |  20 20 22 43 72 65 61 74 65 20 61 20 73 65 74 20    6f 66 20 69 62 75 66 66 65 72 20 66 69 6c 74 65  | .."Create.a.set.of.ibuffer.filte | 
| 2060 |  72 20 67 72 6f 75 70 73 20 62 61 73 65 64 20 6f    6e 20 74 68 65 20 70 72 6f 6a 65 63 74 69 6c 65  | r.groups.based.on.the.projectile | 
| 2080 |  20 72 6f 6f 74 20 64 69 72 73 20 6f 66 20 62 75    66 66 65 72 73 2e 22 0a 20 20 28 6c 65 74 20 28  | .root.dirs.of.buffers."...(let.( | 
| 20a0 |  28 72 6f 6f 74 73 20 28 73 65 71 2d 75 6e 69 71    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | (roots.(seq-uniq................ | 
| 20c0 |  20 28 64 65 6c 71 20 6e 69 6c 20 28 6d 61 70 63    61 72 20 27 69 62 75 66 66 65 72 2d 70 72 6f 6a  | .(delq.nil.(mapcar.'ibuffer-proj | 
| 20e0 |  65 63 74 69 6c 65 2d 72 6f 6f 74 20 28 62 75 66    66 65 72 2d 6c 69 73 74 29 29 29 29 29 29 0a 20  | ectile-root.(buffer-list)))))).. | 
| 2100 |  20 20 20 28 6d 61 70 63 61 72 20 28 6c 61 6d 62    64 61 20 28 72 6f 6f 74 29 0a 20 20 20 20 20 20  | ...(mapcar.(lambda.(root)....... | 
| 2120 |  20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 28 66    75 6e 63 61 6c 6c 20 69 62 75 66 66 65 72 2d 70  | ........(cons.(funcall.ibuffer-p | 
| 2140 |  72 6f 6a 65 63 74 69 6c 65 2d 67 72 6f 75 70 2d    6e 61 6d 65 2d 66 75 6e 63 74 69 6f 6e 20 28 63  | rojectile-group-name-function.(c | 
| 2160 |  61 72 20 72 6f 6f 74 29 20 28 63 64 72 20 72 6f    6f 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ar.root).(cdr.root))............ | 
| 2180 |  20 20 20 20 20 20 20 20 20 60 28 28 70 72 6f 6a    65 63 74 69 6c 65 2d 72 6f 6f 74 20 2e 20 2c 72  | .........`((projectile-root...,r | 
| 21a0 |  6f 6f 74 29 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 72 6f 6f 74 73 29 29 29 0a 0a 3b 3b  | oot)))).............roots)))..;; | 
| 21c0 |  3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65    66 75 6e 20 69 62 75 66 66 65 72 2d 70 72 6f 6a  | ;###autoload.(defun.ibuffer-proj | 
| 21e0 |  65 63 74 69 6c 65 2d 73 65 74 2d 66 69 6c 74 65    72 2d 67 72 6f 75 70 73 20 28 29 0a 20 20 22 53  | ectile-set-filter-groups.()..."S | 
| 2200 |  65 74 20 74 68 65 20 63 75 72 72 65 6e 74 20 66    69 6c 74 65 72 20 67 72 6f 75 70 73 20 74 6f 20  | et.the.current.filter.groups.to. | 
| 2220 |  66 69 6c 74 65 72 20 62 79 20 70 72 6f 6a 65 63    74 69 6c 65 20 72 6f 6f 74 20 64 69 72 2e 22 0a  | filter.by.projectile.root.dir.". | 
| 2240 |  20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a    20 20 28 73 65 74 71 20 69 62 75 66 66 65 72 2d  | ..(interactive)...(setq.ibuffer- | 
| 2260 |  66 69 6c 74 65 72 2d 67 72 6f 75 70 73 20 28 69    62 75 66 66 65 72 2d 70 72 6f 6a 65 63 74 69 6c  | filter-groups.(ibuffer-projectil | 
| 2280 |  65 2d 67 65 6e 65 72 61 74 65 2d 66 69 6c 74 65    72 2d 67 72 6f 75 70 73 29 29 0a 20 20 28 6d 65  | e-generate-filter-groups))...(me | 
| 22a0 |  73 73 61 67 65 20 22 69 62 75 66 66 65 72 2d 70    72 6f 6a 65 63 74 69 6c 65 3a 20 67 72 6f 75 70  | ssage."ibuffer-projectile:.group | 
| 22c0 |  73 20 73 65 74 22 29 0a 20 20 28 77 68 65 6e 2d    6c 65 74 20 28 28 69 62 75 66 20 28 67 65 74 2d  | s.set")...(when-let.((ibuf.(get- | 
| 22e0 |  62 75 66 66 65 72 20 22 2a 49 62 75 66 66 65 72    2a 22 29 29 29 0a 20 20 20 20 28 77 69 74 68 2d  | buffer."*Ibuffer*"))).....(with- | 
| 2300 |  63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 69    62 75 66 0a 20 20 20 20 20 20 28 70 6f 70 2d 74  | current-buffer.ibuf.......(pop-t | 
| 2320 |  6f 2d 62 75 66 66 65 72 20 69 62 75 66 29 0a 20    20 20 20 20 20 28 69 62 75 66 66 65 72 2d 75 70  | o-buffer.ibuf).......(ibuffer-up | 
| 2340 |  64 61 74 65 20 6e 69 6c 20 74 29 29 29 29 0a 0a    0a 28 70 72 6f 76 69 64 65 20 27 69 62 75 66 66  | date.nil.t))))...(provide.'ibuff | 
| 2360 |  65 72 2d 70 72 6f 6a 65 63 74 69 6c 65 29 0a 3b    3b 3b 20 69 62 75 66 66 65 72 2d 70 72 6f 6a 65  | er-projectile).;;;.ibuffer-proje | 
| 2380 |  63 74 69 6c 65 2e 65 6c 20 65 6e 64 73 20 68 65    72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00  | ctile.el.ends.here.............. | 
| 23a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 23c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 23e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2400 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2420 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2460 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2480 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2500 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2520 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 25a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 25c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 25e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2600 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2620 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2640 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2660 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2680 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 26a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 26c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 26e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2700 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2720 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 27a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 27c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 27e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ |